/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-semibold:600;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-md:.375rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-tnn-surface:var(--tnn-color-surface);--color-tnn-surface-raised:var(--tnn-color-surface-raised);--color-tnn-surface-sunken:var(--tnn-color-surface-sunken);--color-tnn-border:var(--tnn-color-border);--color-tnn-border-strong:var(--tnn-color-border-strong);--color-tnn-text:var(--tnn-color-text);--color-tnn-text-muted:var(--tnn-color-text-muted);--color-tnn-text-faint:var(--tnn-color-text-faint);--color-tnn-on-accent:var(--tnn-color-text-on-accent);--color-tnn-accent:var(--tnn-color-accent);--color-tnn-accent-faint:var(--tnn-color-accent-faint);--color-tnn-accent-text:var(--tnn-color-accent-text);--font-sans-tnn:var(--tnn-font-sans);--font-mono-tnn:var(--tnn-font-mono);--radius-tnn-card:var(--tnn-radius-lg);--radius-tnn-input:var(--tnn-radius-md)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:0}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-14{margin-top:calc(var(--spacing) * 14)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-\[4\/3\]{aspect-ratio:4/3}.h-16{height:calc(var(--spacing) * 16)}.h-auto{height:auto}.h-full{height:100%}.min-h-\[88dvh\]{min-height:88dvh}.min-h-\[100dvh\]{min-height:100dvh}.w-\[264px\]{width:264px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[42ch\]{max-width:42ch}.max-w-\[46ch\]{max-width:46ch}.max-w-\[55ch\]{max-width:55ch}.max-w-\[60ch\]{max-width:60ch}.max-w-\[240px\]{max-width:240px}.max-w-\[320px\]{max-width:320px}.max-w-\[460px\]{max-width:460px}.max-w-\[480px\]{max-width:480px}.max-w-\[640px\]{max-width:640px}.max-w-\[720px\]{max-width:720px}.max-w-\[960px\]{max-width:960px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1400px\]{max-width:1400px}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.rounded-tnn-card{border-radius:var(--radius-tnn-card)}.rounded-tnn-input{border-radius:var(--radius-tnn-input)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-tnn-accent{border-color:var(--color-tnn-accent)}.border-tnn-border{border-color:var(--color-tnn-border)}.border-tnn-border-strong{border-color:var(--color-tnn-border-strong)}.bg-tnn-accent-faint{background-color:var(--color-tnn-accent-faint)}.bg-tnn-surface{background-color:var(--color-tnn-surface)}.bg-tnn-surface-raised{background-color:var(--color-tnn-surface-raised)}.bg-tnn-surface-sunken{background-color:var(--color-tnn-surface-sunken)}.bg-tnn-surface\/85{background-color:var(--color-tnn-surface)}@supports (color:color-mix(in lab, red, red)){.bg-tnn-surface\/85{background-color:color-mix(in oklab, var(--color-tnn-surface) 85%, transparent)}}.object-cover{object-fit:cover}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.\!px-0{padding-inline:0!important}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-24{padding-block:calc(var(--spacing) * 24)}.text-center{text-align:center}.text-left{text-align:left}.font-mono-tnn{font-family:var(--font-mono-tnn)}.font-sans-tnn{font-family:var(--font-sans-tnn)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.text-tnn-accent{color:var(--color-tnn-accent)}.text-tnn-accent-text{color:var(--color-tnn-accent-text)}.text-tnn-text{color:var(--color-tnn-text)}.text-tnn-text-faint{color:var(--color-tnn-text-faint)}.text-tnn-text-muted{color:var(--color-tnn-text-muted)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.selection\:bg-tnn-accent ::selection{background-color:var(--color-tnn-accent)}.selection\:bg-tnn-accent::selection{background-color:var(--color-tnn-accent)}.selection\:text-tnn-on-accent ::selection{color:var(--color-tnn-on-accent)}.selection\:text-tnn-on-accent::selection{color:var(--color-tnn-on-accent)}.placeholder\:text-tnn-text-faint::placeholder{color:var(--color-tnn-text-faint)}@media (hover:hover){.hover\:text-tnn-text:hover{color:var(--color-tnn-text)}}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-\[backdrop-filter\]\:bg-tnn-surface\/70{background-color:var(--color-tnn-surface)}@supports (color:color-mix(in lab, red, red)){.supports-\[backdrop-filter\]\:bg-tnn-surface\/70{background-color:color-mix(in oklab, var(--color-tnn-surface) 70%, transparent)}}}@media (min-width:40rem){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}}@media (min-width:48rem){.md\:block{display:block}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:p-5{padding:calc(var(--spacing) * 5)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:px-10{padding-inline:calc(var(--spacing) * 10)}.md\:py-28{padding-block:calc(var(--spacing) * 28)}.md\:py-32{padding-block:calc(var(--spacing) * 32)}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (min-width:64rem){.lg\:order-1{order:1}.lg\:order-2{order:2}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:ml-auto{margin-left:auto}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:gap-16{gap:calc(var(--spacing) * 16)}.lg\:py-24{padding-block:calc(var(--spacing) * 24)}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.tnn img,img.tnn-outlined{outline-offset:-1px;outline:1px solid #0000001a}@media (prefers-color-scheme:dark){.tnn img,img.tnn-outlined{outline-color:#ffffff1a}}:where(.tnn) h1,:where(.tnn) h2,:where(.tnn) h3,:where(.tnn) h4,:where(.tnn) h5,:where(.tnn) h6,.tnn-text-balance{text-wrap:balance}.tnn-text-pretty{text-wrap:pretty}.tnn-tabular-nums{font-variant-numeric:tabular-nums}:root{--tnn-density:1;--tnn-space-1:.25rem;--tnn-space-2:.5rem;--tnn-space-3:.75rem;--tnn-space-4:1rem;--tnn-space-5:1.25rem;--tnn-space-6:1.5rem;--tnn-space-8:2rem;--tnn-space-10:2.5rem;--tnn-space-12:3rem;--tnn-space-16:4rem;--tnn-radius-none:0;--tnn-radius-sm:.1rem;--tnn-radius-md:.25rem;--tnn-radius-lg:.375rem;--tnn-radius-xl:.5rem;--tnn-radius-pill:9999px;--tnn-font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--tnn-font-mono:ui-monospace, SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--tnn-text-xs:.75rem;--tnn-text-sm:.8125rem;--tnn-text-base:.9375rem;--tnn-text-lg:1.0625rem;--tnn-text-xl:1.25rem;--tnn-text-2xl:1.5rem;--tnn-text-3xl:1.875rem;--tnn-text-4xl:2.25rem;--tnn-leading-tight:1.2;--tnn-leading-normal:1.45;--tnn-leading-relaxed:1.65;--tnn-font-weight-regular:400;--tnn-font-weight-medium:500;--tnn-font-weight-semibold:600;--tnn-font-weight-bold:700;--tnn-tracking-tight:-.01em;--tnn-tracking-normal:0;--tnn-tracking-wide:.04em;--tnn-shadow-sm:0 1px 2px 0 #0000000a;--tnn-shadow-md:0 2px 4px -1px #0000000f, 0 4px 8px -2px #0000000a;--tnn-shadow-lg:0 8px 16px -4px #00000014, 0 4px 8px -2px #0000000a;--tnn-shadow-overlay:0 16px 48px -8px #0000003d;--tnn-glow-sm:0 0 0 0 transparent;--tnn-glow-md:0 0 0 0 transparent;--tnn-glow-lg:0 0 0 0 transparent;--tnn-glass-blur:0px;--tnn-glass-opacity:1;--tnn-glass-saturate:1;--tnn-transition-fast:.12s cubic-bezier(.4, 0, .2, 1);--tnn-transition-base:.18s cubic-bezier(.4, 0, .2, 1);--tnn-transition-slow:.28s cubic-bezier(.4, 0, .2, 1);--tnn-easing-enter:cubic-bezier(.22, .61, .36, 1);--tnn-easing-exit:cubic-bezier(.55, .06, .68, .19);--tnn-easing-bounce:cubic-bezier(.34, 1.56, .64, 1);--tnn-focus-ring-width:2px;--tnn-focus-ring-offset:2px;--tnn-z-dropdown:100;--tnn-z-overlay:1000;--tnn-z-tooltip:1010}.tnn-density-compact{--tnn-density:.82}.tnn-density-comfortable{--tnn-density:1.18}@media (prefers-reduced-motion:reduce){:root{--tnn-transition-fast:0s;--tnn-transition-base:0s;--tnn-transition-slow:0s}}:root{--tnn-seed-accent-h:314;--tnn-seed-accent-c:.2;--tnn-seed-neutral-h:240;--tnn-seed-neutral-c:.012;--tnn-color-surface:oklch(99% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(100% 0 0);--tnn-color-surface-sunken:oklch(96.5% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(100% 0 0);--tnn-color-border:oklch(92% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(82% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(22% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(48% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(68% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-on-accent:oklch(99% 0 0);--tnn-color-accent:oklch(58% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(52% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(46% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(95% calc(var(--tnn-seed-accent-c) * .35) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(42% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success:oklch(60% .13 150);--tnn-color-warning:oklch(72% .15 75);--tnn-color-danger:oklch(58% .2 25);--tnn-color-info:oklch(60% .13 230);--tnn-color-success-faint:oklch(95% .05 150);--tnn-color-warning-faint:oklch(96% .06 75);--tnn-color-danger-faint:oklch(95% .05 25);--tnn-color-info-faint:oklch(95% .05 230);--tnn-color-success-text:oklch(38% .12 150);--tnn-color-warning-text:oklch(42% .13 75);--tnn-color-danger-text:oklch(42% .18 25);--tnn-color-info-text:oklch(40% .12 230);--tnn-color-focus-ring:oklch(64% .18 var(--tnn-seed-accent-h));--tnn-color-glow-faint:oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .18);--tnn-color-glow-soft:oklch(70% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .25);--tnn-color-glow-strong:oklch(64% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .35);--tnn-chart-1:oklch(62% .19 250);--tnn-chart-2:oklch(65% .16 145);--tnn-chart-3:oklch(75% .15 75);--tnn-chart-4:oklch(62% .2 25);--tnn-chart-5:oklch(60% .2 300);--tnn-chart-6:oklch(70% .13 195);--tnn-chart-7:oklch(70% .16 0);--tnn-chart-8:oklch(60% .13 175);--tnn-font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}[data-theme=default-light]{--tnn-seed-accent-h:35;--tnn-seed-accent-c:.16;--tnn-seed-neutral-h:240;--tnn-seed-neutral-c:.012;--tnn-color-surface:oklch(99% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(100% 0 0);--tnn-color-surface-sunken:oklch(96.5% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(100% 0 0);--tnn-color-border:oklch(92% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(82% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(22% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(48% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(68% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-on-accent:oklch(99% 0 0);--tnn-color-accent:oklch(58% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(52% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(46% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(95% calc(var(--tnn-seed-accent-c) * .35) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(42% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success:oklch(60% .13 150);--tnn-color-warning:oklch(72% .15 75);--tnn-color-danger:oklch(58% .2 25);--tnn-color-info:oklch(60% .13 230);--tnn-color-success-faint:oklch(95% .05 150);--tnn-color-warning-faint:oklch(96% .06 75);--tnn-color-danger-faint:oklch(95% .05 25);--tnn-color-info-faint:oklch(95% .05 230);--tnn-color-success-text:oklch(38% .12 150);--tnn-color-warning-text:oklch(42% .13 75);--tnn-color-danger-text:oklch(42% .18 25);--tnn-color-info-text:oklch(40% .12 230);--tnn-color-focus-ring:oklch(64% .18 var(--tnn-seed-accent-h));--tnn-glow-sm:0 0 0 1px oklch(85% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .12), 0 2px 8px -2px oklch(60% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .16);--tnn-glow-md:0 0 0 1px oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .15), 0 4px 16px -4px oklch(58% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .22);--tnn-glow-lg:0 0 0 1px oklch(75% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .18), 0 8px 32px -4px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .28);--tnn-glass-blur:12px;--tnn-glass-opacity:.72;--tnn-glass-saturate:1.8}[data-theme=default-dark]{--tnn-seed-accent-h:35;--tnn-seed-accent-c:.16;--tnn-seed-neutral-h:30;--tnn-seed-neutral-c:.015;--tnn-color-surface:oklch(15% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(19% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-sunken:oklch(12% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(23% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border:oklch(27% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(40% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(96% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(70% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(50% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-accent:oklch(68% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(74% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(30% calc(var(--tnn-seed-accent-c) * .7) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success:oklch(70% .14 150);--tnn-color-warning:oklch(78% .16 75);--tnn-color-danger:oklch(68% .19 25);--tnn-color-info:oklch(70% .14 230);--tnn-color-success-faint:oklch(26% .05 150);--tnn-color-warning-faint:oklch(28% .06 75);--tnn-color-danger-faint:oklch(28% .06 25);--tnn-color-info-faint:oklch(26% .05 230);--tnn-color-success-text:oklch(82% .13 150);--tnn-color-warning-text:oklch(85% .14 75);--tnn-color-danger-text:oklch(80% .15 25);--tnn-color-info-text:oklch(82% .13 230);--tnn-color-focus-ring:oklch(72% .18 var(--tnn-seed-accent-h));--tnn-shadow-sm:0 1px 2px 0 #0006;--tnn-shadow-md:0 2px 4px -1px #00000073, 0 4px 8px -2px #00000059;--tnn-shadow-lg:0 8px 16px -4px #0000008c, 0 4px 8px -2px #0006;--tnn-shadow-overlay:0 16px 48px -8px #000000b3;--tnn-glow-sm:0 0 0 1px oklch(75% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .16), 0 2px 12px -2px oklch(68% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .27);--tnn-glow-md:0 0 0 1px oklch(70% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .2), 0 4px 20px -4px oklch(65% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .32);--tnn-glow-lg:0 0 0 1px oklch(65% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .24), 0 8px 40px -4px oklch(62% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .38);--tnn-glass-blur:16px;--tnn-glass-opacity:.58;--tnn-glass-saturate:2}@media (prefers-color-scheme:dark){[data-theme=default-system]{--tnn-seed-accent-h:314;--tnn-seed-accent-c:.2;--tnn-seed-neutral-h:240;--tnn-seed-neutral-c:.012;--tnn-color-surface:oklch(14% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(18.5% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-sunken:oklch(11% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(22% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border:oklch(26% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(38% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(96% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(68% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(48% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-accent:oklch(66% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(72% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(78% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(28% calc(var(--tnn-seed-accent-c) * .7) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(78% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success-faint:oklch(26% .05 150);--tnn-color-warning-faint:oklch(28% .06 75);--tnn-color-danger-faint:oklch(28% .06 25);--tnn-color-info-faint:oklch(26% .05 230);--tnn-glow-sm:0 0 0 1px oklch(75% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .16), 0 2px 12px -2px oklch(68% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .27);--tnn-glow-md:0 0 0 1px oklch(70% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .2), 0 4px 20px -4px oklch(65% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .32);--tnn-glow-lg:0 0 0 1px oklch(65% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .24), 0 8px 40px -4px oklch(62% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .38);--tnn-glass-blur:16px;--tnn-glass-opacity:.58;--tnn-glass-saturate:2}}[data-theme=ocean]{--tnn-seed-accent-h:220;--tnn-seed-accent-c:.18;--tnn-seed-neutral-h:220;--tnn-seed-neutral-c:.02;--tnn-color-surface:oklch(13% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(17% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-sunken:oklch(10% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(21% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border:oklch(25% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(38% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(96% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(68% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(48% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-accent:oklch(66% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(72% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(78% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(28% calc(var(--tnn-seed-accent-c) * .7) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(78% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-focus-ring:oklch(72% .2 var(--tnn-seed-accent-h))}[data-theme=ember]{--tnn-seed-accent-h:35;--tnn-seed-accent-c:.16;--tnn-seed-neutral-h:30;--tnn-seed-neutral-c:.015;--tnn-color-surface:oklch(15% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(19% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-sunken:oklch(12% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(23% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border:oklch(27% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(40% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(96% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(70% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(50% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-accent:oklch(68% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(74% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(30% calc(var(--tnn-seed-accent-c) * .7) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(80% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-focus-ring:oklch(74% .18 var(--tnn-seed-accent-h));--tnn-radius-md:.25rem;--tnn-radius-lg:.375rem}[data-theme=paper]{--tnn-seed-accent-h:25;--tnn-seed-accent-c:.14;--tnn-seed-neutral-h:60;--tnn-seed-neutral-c:.01;--tnn-color-surface:oklch(98% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(100% 0 0);--tnn-color-surface-sunken:oklch(95.5% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(100% 0 0);--tnn-color-border:oklch(90% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(78% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(22% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(46% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(64% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-accent:oklch(52% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(46% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(40% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(94% calc(var(--tnn-seed-accent-c) * .35) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(38% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-focus-ring:oklch(60% .18 var(--tnn-seed-accent-h))}.tnn-overlay-container{pointer-events:none;width:100vw;height:100dvh;z-index:var(--tnn-z-overlay);position:fixed;inset:0}.tnn-overlay-container *{pointer-events:auto}.tnn-dialog-overlay{-webkit-backdrop-filter:blur(4px);animation:tnn-dialog-overlay-in .18s var(--tnn-easing-enter) both;background:oklch(0% 0 0/.55);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes tnn-dialog-overlay-in{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}}.tnn-dialog{background:var(--tnn-color-surface-overlay);color:var(--tnn-color-text);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-lg);box-shadow:var(--tnn-shadow-overlay), var(--tnn-glow-lg);max-width:90vw;max-height:90vh;animation:tnn-dialog-in .22s var(--tnn-easing-enter) both;flex-direction:column;display:flex}@keyframes tnn-dialog-in{0%{opacity:0;transform:translateY(16px)scale(.97)}}.tnn-dialog-header{padding:calc(var(--tnn-space-4) * var(--tnn-density));border-bottom:1px solid var(--tnn-color-border);font-weight:var(--tnn-font-weight-semibold);text-wrap:balance;justify-content:space-between;align-items:center;display:flex}.tnn-dialog-content{padding:calc(var(--tnn-space-4) * var(--tnn-density));text-wrap:pretty;overflow:auto}.tnn-window{background:var(--tnn-color-surface-overlay);color:var(--tnn-color-text);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-lg);box-shadow:var(--tnn-shadow-overlay), var(--tnn-glow-sm);flex-direction:column;min-width:200px;max-width:90vw;min-height:100px;max-height:90vh;display:flex;position:absolute}.tnn-window-centered{top:50%;left:50%;translate:-50% -50%}.tnn-window-header{touch-action:none;-webkit-user-select:none;user-select:none;padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));background:var(--tnn-color-surface-sunken);border-top-left-radius:var(--tnn-radius-lg);border-top-right-radius:var(--tnn-radius-lg);border-bottom:1px solid var(--tnn-color-border);cursor:move;font-weight:var(--tnn-font-weight-medium);font-size:var(--tnn-text-sm);justify-content:space-between;align-items:center;display:flex}.tnn-window-content{padding:calc(var(--tnn-space-4) * var(--tnn-density));flex-grow:1;min-height:0;overflow:auto}.tnn-window-resizable{resize:both;overflow:hidden}.tnn-notifications-container{bottom:var(--tnn-space-4);right:var(--tnn-space-4);gap:var(--tnn-space-2);z-index:calc(var(--tnn-z-overlay) + 1);flex-direction:column;display:flex;position:fixed}.tnn-notification{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));border-radius:var(--tnn-radius-md);box-shadow:var(--tnn-shadow-md);justify-content:space-between;align-items:center;gap:var(--tnn-space-3);min-width:260px;font-size:var(--tnn-text-sm);animation:tnn-notification-in .28s var(--tnn-easing-enter) both;border:1px solid #0000;display:flex}@keyframes tnn-notification-in{0%{opacity:0;transform:translate(16px)translateY(8px)}}.tnn-notification-info{background:var(--tnn-color-info-faint);color:var(--tnn-color-info-text);border-color:var(--tnn-color-info)}.tnn-notification-success{background:var(--tnn-color-success-faint);color:var(--tnn-color-success-text);border-color:var(--tnn-color-success)}.tnn-notification-warning{background:var(--tnn-color-warning-faint);color:var(--tnn-color-warning-text);border-color:var(--tnn-color-warning)}.tnn-notification-error{background:var(--tnn-color-danger-faint);color:var(--tnn-color-danger-text);border-color:var(--tnn-color-danger)}.tnn-button{padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));border-radius:var(--tnn-radius-md);font:inherit;font-weight:var(--tnn-font-weight-medium);font-size:var(--tnn-text-sm);line-height:var(--tnn-leading-tight);transition-property:transform,background-color,color,border-color,box-shadow;transition-duration:var(--tnn-transition-fast);cursor:pointer;justify-content:center;align-items:center;gap:var(--tnn-space-2);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;min-width:2.25rem;min-height:2.25rem;transition-timing-function:ease-out;display:inline-flex}.tnn-button:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset);box-shadow:var(--tnn-glow-sm)}.tnn-button:active:not(.tnn-button-disabled){transform:translateY(1px)}.tnn-button-disabled{opacity:.5;cursor:not-allowed}.tnn-button-loading{opacity:.8;cursor:wait}.tnn-button-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;flex:none;width:.875em;height:.875em;animation:.8s linear infinite tnn-spin}@media (prefers-reduced-motion:reduce){.tnn-button-spinner{animation-duration:0s}}.tnn-button-primary{background:var(--tnn-color-accent);color:var(--tnn-color-text-on-accent)}.tnn-button-primary:hover:not(.tnn-button-disabled){background:var(--tnn-color-accent-hover)}.tnn-button-primary:active:not(.tnn-button-disabled){background:var(--tnn-color-accent-active)}.tnn-button-secondary{background:var(--tnn-color-surface-raised);color:var(--tnn-color-text);border-color:var(--tnn-color-border-strong)}.tnn-button-secondary:hover:not(.tnn-button-disabled){background:var(--tnn-color-surface-sunken);border-color:var(--tnn-color-text-muted);box-shadow:var(--tnn-shadow-md)}.tnn-button-danger{background:var(--tnn-color-danger);color:var(--tnn-color-text-on-accent);box-shadow:0 2px 8px -2px oklch(58% .2 25/.28)}.tnn-button-danger:hover:not(.tnn-button-disabled){filter:brightness(.92);box-shadow:0 2px 12px -2px oklch(58% .2 25/.35)}.tnn-button-ghost{color:var(--tnn-color-text-muted);background:0 0}.tnn-button-ghost:hover:not(.tnn-button-disabled){background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-button-link{color:var(--tnn-color-accent-text);background:0 0;border-radius:0;min-width:0;min-height:0;padding-left:0;padding-right:0}.tnn-button-link:hover:not(.tnn-button-disabled){text-decoration:underline}.tnn-size-compact.tnn-button{padding:calc(var(--tnn-space-1) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density));font-size:var(--tnn-text-xs);min-height:1.75rem}.tnn-size-comfortable.tnn-button{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-6) * var(--tnn-density));font-size:var(--tnn-text-base);min-height:2.75rem}.tnn-button-group{display:inline-flex}.tnn-button-group .tnn-button{border-radius:0}.tnn-button-group .tnn-button:first-child{border-top-left-radius:var(--tnn-radius-md);border-bottom-left-radius:var(--tnn-radius-md)}.tnn-button-group .tnn-button:last-child{border-top-right-radius:var(--tnn-radius-md);border-bottom-right-radius:var(--tnn-radius-md)}.tnn-button-group .tnn-button+.tnn-button{margin-left:-1px}.tnn-button-group .tnn-button:focus-visible{z-index:1;position:relative}.tnn-card{background:var(--tnn-color-surface-raised);color:var(--tnn-color-text);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-lg);box-shadow:var(--tnn-shadow-sm);transition-property:transform,box-shadow,border-color;transition-duration:var(--tnn-transition-base);flex-direction:column;transition-timing-function:ease-out;display:flex;overflow:hidden}.tnn-card:hover{box-shadow:var(--tnn-shadow-lg);border-color:var(--tnn-color-border-strong)}.tnn-card-media{line-height:0}.tnn-card-media img{object-fit:cover;width:100%;display:block}.tnn-card-header{padding:calc(var(--tnn-space-4) * var(--tnn-density));border-bottom:1px solid var(--tnn-color-border)}.tnn-card-title{font-size:var(--tnn-text-base);line-height:1.5;font-weight:var(--tnn-font-weight-semibold);letter-spacing:var(--tnn-tracking-tight);text-wrap:balance;margin:0}.tnn-card-body{padding:calc(var(--tnn-space-4) * var(--tnn-density));text-wrap:pretty;flex:auto}.tnn-card-footer{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));border-top:1px solid var(--tnn-color-border);background:var(--tnn-color-surface-sunken);font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted)}.tnn-form-group{margin-bottom:var(--tnn-space-4)}.tnn-form-group label,.tnn-radio-group-label{margin-bottom:var(--tnn-space-1);font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-medium);color:var(--tnn-color-text);text-wrap:pretty;display:block}.tnn-input,.tnn-totp-input{width:100%;padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density));border:1px solid var(--tnn-color-border-strong);border-radius:var(--tnn-radius-md);background:var(--tnn-color-surface-raised);color:var(--tnn-color-text);font:inherit;font-size:var(--tnn-text-sm);transition-property:border-color,box-shadow;transition-duration:var(--tnn-transition-fast);transition-timing-function:ease-out}.tnn-totp-input{width:calc(var(--tnn-space-10) * var(--tnn-density));aspect-ratio:1;text-align:center;padding:0}.tnn-input::placeholder,.tnn-totp-input::placeholder{color:var(--tnn-color-text-faint)}.tnn-input:focus,.tnn-input:focus-visible,.tnn-totp-input:focus,.tnn-totp-input:focus-visible{border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm);outline:none}.tnn-input:disabled,.tnn-totp-input:disabled{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text-faint);cursor:not-allowed;opacity:.65}.tnn-input-color{min-height:2.25rem;padding:0 3px}.tnn-textarea{resize:vertical;min-height:calc(var(--tnn-space-12) * 2)}.tnn-totp-container{gap:var(--tnn-space-2);text-align:center;justify-content:center;align-items:center;width:fit-content;display:flex}.tnn-totp-separator{width:calc(var(--tnn-space-4) * var(--tnn-density));font-size:var(--tnn-text-3xl);color:var(--tnn-color-text);line-height:1}.tnn-size-compact.tnn-input{padding:calc(var(--tnn-space-1) * var(--tnn-density)) calc(var(--tnn-space-2) * var(--tnn-density));font-size:var(--tnn-text-xs)}.tnn-size-comfortable.tnn-input{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));font-size:var(--tnn-text-base)}.tnn-checkbox-group,.tnn-toggle-group{align-items:center;gap:var(--tnn-space-2);display:flex}.tnn-checkbox-group label,.tnn-toggle-group label{margin-bottom:0}.tnn-checkbox-group .tnn-checkbox{align-items:center;gap:var(--tnn-space-2);cursor:pointer;font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-regular);color:var(--tnn-color-text);min-width:2.25rem;min-height:2.25rem;margin-bottom:0;display:inline-flex;position:relative}.tnn-checkbox input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.tnn-checkbox-mark{border:1px solid var(--tnn-color-border-strong);border-radius:var(--tnn-radius-sm);background:var(--tnn-color-surface-raised);width:1.125rem;height:1.125rem;transition-property:background,border-color,box-shadow;transition-duration:var(--tnn-transition-fast);flex:none;justify-content:center;align-items:center;transition-timing-function:ease-out;display:flex}.tnn-checkbox input:checked+.tnn-checkbox-mark,.tnn-checkbox-mark-mixed{background:var(--tnn-color-accent);border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-checkbox input:focus-visible+.tnn-checkbox-mark{box-shadow:var(--tnn-glow-sm)}.tnn-checkbox input:disabled~.tnn-checkbox-mark{background:var(--tnn-color-surface-sunken);border-color:var(--tnn-color-border);cursor:not-allowed;opacity:.5}.tnn-checkbox input:disabled~*{color:var(--tnn-color-text-faint)}.tnn-checkbox-mark svg{width:.75rem;height:.75rem;color:var(--tnn-color-text-on-accent);opacity:0;transition-property:opacity,transform;transition-duration:var(--tnn-transition-fast);transition-timing-function:var(--tnn-easing-enter);display:block;transform:scale(.6)}.tnn-checkbox input:checked+.tnn-checkbox-mark svg,.tnn-checkbox-mark-mixed svg{opacity:1;transform:scale(1)}.tnn-checkbox input:disabled~.tnn-checkbox-mark svg{color:var(--tnn-color-text-faint)}.tnn-checkbox-text{flex-direction:column;display:flex}.tnn-checkbox-description{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-muted)}.tnn-checkbox input:disabled~.tnn-checkbox-text .tnn-checkbox-description{color:var(--tnn-color-text-faint)}.tnn-toggle{background:var(--tnn-color-border-strong);border-radius:var(--tnn-radius-pill);cursor:pointer;width:2.75rem;height:1.5rem;transition-property:background,box-shadow;transition-duration:var(--tnn-transition-base);flex:none;min-height:1.5rem;transition-timing-function:ease-out;position:relative}.tnn-toggle-on{background:var(--tnn-color-accent);box-shadow:0 0 8px oklch(60% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .3)}.tnn-toggle-disabled{opacity:.45;cursor:not-allowed}.tnn-toggle-handle{background:var(--tnn-color-surface-raised);width:1.25rem;height:1.25rem;transition:transform var(--tnn-transition-base);box-shadow:var(--tnn-shadow-sm);border-radius:50%;position:absolute;top:.125rem;left:.125rem}.tnn-toggle-on .tnn-toggle-handle{box-shadow:var(--tnn-shadow-md);transform:translate(1.25rem)}.tnn-radio-options{gap:var(--tnn-space-1);flex-direction:column;display:flex}.tnn-radio-options-horizontal{gap:var(--tnn-space-4);flex-flow:wrap}.tnn-radio-group .tnn-radio-option{align-items:center;gap:var(--tnn-space-2);cursor:pointer;font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-regular);color:var(--tnn-color-text);min-width:2.25rem;min-height:2.25rem;margin-bottom:0;display:inline-flex;position:relative}.tnn-radio-text{flex-direction:column;display:flex}.tnn-radio-description{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-muted)}.tnn-radio-option input[type=radio]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.tnn-radio-mark{border:1px solid var(--tnn-color-border-strong);background:var(--tnn-color-surface-raised);width:1.125rem;height:1.125rem;transition-property:border-color,box-shadow;transition-duration:var(--tnn-transition-fast);border-radius:50%;flex:none;justify-content:center;align-items:center;transition-timing-function:ease-out;display:flex}.tnn-radio-mark:after{content:"";background:var(--tnn-color-accent);opacity:0;width:.5rem;height:.5rem;transition-property:opacity,transform;transition-duration:var(--tnn-transition-fast);transition-timing-function:var(--tnn-easing-enter);border-radius:50%;transform:scale(.4)}.tnn-radio-option input:checked+.tnn-radio-mark{border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-radio-option input:checked+.tnn-radio-mark:after{opacity:1;transform:scale(1)}.tnn-radio-option input:focus-visible+.tnn-radio-mark{box-shadow:var(--tnn-glow-sm)}.tnn-radio-option input:disabled~.tnn-radio-mark{background:var(--tnn-color-surface-sunken);border-color:var(--tnn-color-border);cursor:not-allowed;opacity:.5}.tnn-radio-option input:disabled~*,.tnn-radio-option input:disabled~.tnn-radio-text .tnn-radio-description{color:var(--tnn-color-text-faint)}.tnn-spinner-container{align-items:center;gap:var(--tnn-space-2);display:inline-flex}.tnn-spinner{border:3px solid var(--tnn-color-border);border-top-color:var(--tnn-color-accent);box-shadow:0 0 8px oklch(60% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .2);border-radius:50%;animation:.8s linear infinite tnn-spin}.tnn-spinner-text{font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);text-wrap:pretty}@keyframes tnn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tnn-spinner{animation-duration:0s}}.tnn-progress-container{width:100%}.tnn-progress-label{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-muted);margin-bottom:var(--tnn-space-1);font-variant-numeric:tabular-nums}.tnn-progress-track{background:var(--tnn-color-surface-sunken);border-radius:var(--tnn-radius-pill);width:100%;overflow:hidden;box-shadow:inset 0 1px 3px #00000014}.tnn-progress-bar{background:var(--tnn-color-accent);height:100%;transition-property:width;transition-duration:var(--tnn-transition-slow);box-shadow:0 0 10px -2px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .4);transition-timing-function:ease-out}.tnn-skeleton{background:var(--tnn-color-surface-sunken);border-radius:var(--tnn-radius-sm);width:100%;height:1em}.tnn-skeleton-animated{animation:1.6s ease-in-out infinite tnn-skeleton-pulse}@keyframes tnn-skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.tnn-skeleton-animated{animation:none}}.tnn-tree-root,.tnn-tree-sublist{padding-left:var(--tnn-space-6);margin:0;list-style:none}.tnn-tree-root{padding-left:0}.tnn-tree-node-content{padding:calc(var(--tnn-space-1) * var(--tnn-density)) calc(var(--tnn-space-2) * var(--tnn-density));cursor:pointer;border-radius:var(--tnn-radius-sm);font-size:var(--tnn-text-sm);color:var(--tnn-color-text);min-height:2.25rem;transition-property:background,color;transition-duration:var(--tnn-transition-fast);align-items:center;transition-timing-function:ease-out;display:flex}.tnn-tree-node-content:hover{background:var(--tnn-color-surface-sunken)}.tnn-tree-node-selected>.tnn-tree-node-content{background:var(--tnn-color-accent-faint);color:var(--tnn-color-accent-text)}.tnn-tree-toggle{width:1.25rem;color:var(--tnn-color-text-muted);transition-property:transform;transition-duration:var(--tnn-transition-fast);justify-content:center;align-items:center;transition-timing-function:ease-out;display:inline-flex}.tnn-nav-list,.tnn-nav-sublist{margin:0;padding:0;list-style:none}.tnn-nav-sublist{padding-left:var(--tnn-space-4)}.tnn-nav-link,.tnn-nav-label{padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density));color:var(--tnn-color-text-muted);border-radius:var(--tnn-radius-sm);cursor:pointer;font-size:var(--tnn-text-sm);min-height:2.5rem;transition-property:background,color,box-shadow;transition-duration:var(--tnn-transition-fast);align-items:center;text-decoration:none;transition-timing-function:ease-out;display:flex}.tnn-nav-link:hover,.tnn-nav-label:hover{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-nav-active{background:var(--tnn-color-accent-faint);color:var(--tnn-color-accent-text);font-weight:var(--tnn-font-weight-semibold);box-shadow:inset 3px 0 0 var(--tnn-color-accent)}.tnn-nav-icon{margin-right:var(--tnn-space-3);display:inline-flex}.tnn-nav-arrow{color:var(--tnn-color-text-faint);margin-left:auto}.tnn-tooltip-wrapper{display:inline-block;position:relative}.tnn-tooltip{background:var(--tnn-color-surface-overlay);color:var(--tnn-color-text);padding:var(--tnn-space-1) var(--tnn-space-2);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);font-size:var(--tnn-text-xs);white-space:nowrap;box-shadow:var(--tnn-shadow-md);z-index:var(--tnn-z-tooltip);pointer-events:none;animation:tnn-tooltip-in .15s var(--tnn-easing-enter) both;position:absolute}@keyframes tnn-tooltip-in{0%{opacity:0}}.tnn-tooltip-top{bottom:100%;left:50%;transform:translate(-50%)translateY(-.5rem)}.tnn-tooltip-bottom{top:100%;left:50%;transform:translate(-50%)translateY(.5rem)}.tnn-tooltip-left{top:50%;right:100%;transform:translateY(-50%)translate(-.5rem)}.tnn-tooltip-right{top:50%;left:100%;transform:translateY(-50%)translate(.5rem)}.tnn-tabs{flex-direction:column;display:flex}.tnn-tabs-header{gap:var(--tnn-space-1);border-bottom:1px solid var(--tnn-color-border);display:flex}.tnn-tab-item{padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));cursor:pointer;color:var(--tnn-color-text-muted);font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-medium);transition-property:color,border-color,background;transition-duration:var(--tnn-transition-fast);border-radius:var(--tnn-radius-sm) var(--tnn-radius-sm) 0 0;border-bottom:2px solid #0000;min-height:2.5rem;margin-bottom:-1px;transition-timing-function:ease-out}.tnn-tab-item:hover{color:var(--tnn-color-text);background:var(--tnn-color-surface-sunken)}.tnn-tab-active{color:var(--tnn-color-accent-text);border-bottom-color:var(--tnn-color-accent);background:var(--tnn-color-accent-faint)}.tnn-tabs-content{padding-top:var(--tnn-space-4)}.tnn-datagrid-container{border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);background:var(--tnn-color-surface-raised);box-shadow:var(--tnn-shadow-sm);overflow:auto}.tnn-datagrid{border-collapse:collapse;width:100%;font-size:var(--tnn-text-sm);color:var(--tnn-color-text)}.tnn-datagrid thead{background:var(--tnn-color-surface-sunken)}.tnn-datagrid th{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));text-align:left;font-weight:var(--tnn-font-weight-semibold);font-size:var(--tnn-text-xs);text-transform:uppercase;letter-spacing:var(--tnn-tracking-wide);color:var(--tnn-color-text-muted);border-bottom:1px solid var(--tnn-color-border);white-space:nowrap}.tnn-datagrid tbody tr{border-bottom:1px solid var(--tnn-color-border)}.tnn-datagrid tbody tr:last-child{border-bottom:0}.tnn-datagrid td{padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));vertical-align:middle}.tnn-datagrid td,.tnn-datagrid th{min-width:0}.tnn-datagrid-header-cell{width:100%;min-width:0}.tnn-datagrid-header-cell span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block}.tnn-datagrid-filter{box-sizing:border-box;width:100%;min-width:0;max-width:100%;display:block}.tnn-datagrid tbody tr{transition-property:background,box-shadow;transition-duration:var(--tnn-transition-fast);cursor:pointer;transition-timing-function:ease-out}.tnn-datagrid tbody tr:hover{background:var(--tnn-color-surface-sunken);box-shadow:inset 3px 0 0 var(--tnn-color-accent)}.tnn-row-selected,.tnn-datagrid tbody tr.tnn-row-selected:hover{background:var(--tnn-color-accent-faint);color:var(--tnn-color-accent-text);box-shadow:inset 3px 0 0 var(--tnn-color-accent)}.tnn-datagrid tbody{transition:opacity var(--tnn-transition-fast) ease-out}.tnn-datagrid-loading tbody{opacity:.45;pointer-events:none}.tnn-datagrid td.tnn-col-numeric,.tnn-datagrid th.tnn-col-numeric{font-family:var(--tnn-font-mono);font-variant-numeric:tabular-nums;text-align:right}.tnn-datagrid-dense th,.tnn-datagrid-dense td{padding:calc(var(--tnn-space-1) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density))}.tnn-datagrid-editable{table-layout:fixed}.tnn-datagrid-editable th.tnn-datagrid-actions{width:11rem}.tnn-datagrid-editable td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tnn-datagrid td .tnn-form-group{margin-bottom:0}.tnn-datagrid td .tnn-input{box-sizing:border-box;height:1.75rem;padding-top:0;padding-bottom:0}.tnn-datagrid-header-cell{gap:var(--tnn-space-1);flex-direction:column;display:flex}.tnn-datagrid-filter{padding:var(--tnn-space-1) var(--tnn-space-2);font-size:var(--tnn-text-xs);font-weight:var(--tnn-font-weight-regular);text-transform:none;letter-spacing:normal;color:var(--tnn-color-text);background:var(--tnn-color-surface-raised);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm)}.tnn-datagrid-filter:focus{border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm);outline:none}.tnn-datagrid-pagination{justify-content:flex-end;align-items:center;gap:var(--tnn-space-3);padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-4) * var(--tnn-density));font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);font-variant-numeric:tabular-nums;border-top:1px solid var(--tnn-color-border);display:flex}.tnn-datagrid tbody tr.tnn-datagrid-load-more{cursor:default}.tnn-datagrid tbody tr.tnn-datagrid-load-more:hover{box-shadow:none;background:0 0}.tnn-datagrid-load-more td{text-align:center}.tnn-icon{flex:none}.tnn-card-grid{grid-template-columns:repeat(auto-fill, minmax(var(--tnn-card-grid-min-width,240px), 1fr));gap:var(--tnn-space-4);display:grid}.tnn-card-grid-item{min-width:0}.tnn-card-grid-skeleton{border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-lg);background:var(--tnn-color-surface-raised);box-shadow:var(--tnn-shadow-sm);height:100%;overflow:hidden}.tnn-card-grid-skeleton-header{padding:calc(var(--tnn-space-4) * var(--tnn-density));border-bottom:1px solid var(--tnn-color-border)}.tnn-card-grid-skeleton-body{padding:calc(var(--tnn-space-4) * var(--tnn-density));gap:var(--tnn-space-1);flex-direction:column;display:flex}.tnn-wizard{gap:var(--tnn-space-6);flex-direction:column;display:flex}.tnn-wizard-steps{justify-content:center;align-items:center;gap:0;display:flex}.tnn-wizard-step-indicator{align-items:center;gap:var(--tnn-space-2);cursor:default;display:flex}.tnn-wizard-step-circle{width:2rem;height:2rem;font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-semibold);border:2px solid var(--tnn-color-border-strong);color:var(--tnn-color-text-muted);background:var(--tnn-color-surface-sunken);transition-property:background,border-color,color,box-shadow;transition-duration:var(--tnn-transition-fast);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition-timing-function:ease-out;display:flex}.tnn-wizard-step-active .tnn-wizard-step-circle{background:var(--tnn-color-accent);border-color:var(--tnn-color-accent);color:var(--tnn-color-text-on-accent);box-shadow:var(--tnn-glow-sm)}.tnn-wizard-step-completed .tnn-wizard-step-circle{background:var(--tnn-color-accent-faint);border-color:var(--tnn-color-accent);color:var(--tnn-color-accent-text)}.tnn-wizard-step-label{font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);white-space:nowrap}.tnn-wizard-step-active .tnn-wizard-step-label{color:var(--tnn-color-text);font-weight:var(--tnn-font-weight-semibold)}.tnn-wizard-step-completed .tnn-wizard-step-label{color:var(--tnn-color-accent-text)}.tnn-wizard-step-connector{background:var(--tnn-color-border-strong);width:2rem;height:2px;margin:0 var(--tnn-space-1);flex-shrink:0}.tnn-wizard-step-completed+.tnn-wizard-step-connector,.tnn-wizard-step-active+.tnn-wizard-step-connector{background:var(--tnn-color-accent)}.tnn-wizard-content{min-height:200px}.tnn-wizard-actions{padding-top:var(--tnn-space-4);border-top:1px solid var(--tnn-color-border);justify-content:space-between;align-items:center;display:flex}.tnn-slider-group{--tnn-slider-ratio:.5;--tnn-slider-ratio-low:0;--tnn-slider-ratio-high:1;--tnn-slider-thumb-size:1.25rem}.tnn-slider-header{margin-bottom:var(--tnn-space-2);justify-content:space-between;align-items:baseline;display:flex}.tnn-slider-header label{font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-medium);color:var(--tnn-color-text);margin:0}.tnn-slider-value{font-size:var(--tnn-text-xs);font-family:var(--tnn-font-mono);color:var(--tnn-color-accent-text);font-variant-numeric:tabular-nums}.tnn-slider{touch-action:none;align-items:center;width:100%;height:1.75rem;display:flex;position:relative}.tnn-slider-disabled{opacity:.45;cursor:not-allowed}.tnn-slider-track{background:var(--tnn-color-surface-sunken);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-pill);width:100%;height:.375rem;position:relative;overflow:visible;box-shadow:inset 0 1px 3px #0000000f}.tnn-slider-fill{width:calc(var(--tnn-slider-ratio) * 100%);background:var(--tnn-color-accent);border-radius:var(--tnn-radius-pill);box-shadow:0 0 10px -2px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .4);transition:width var(--tnn-transition-fast) var(--tnn-easing-enter);position:absolute;inset:0 auto 0 0}.tnn-slider-range .tnn-slider-fill{left:calc(var(--tnn-slider-ratio-low) * 100%);width:calc((var(--tnn-slider-ratio-high) - var(--tnn-slider-ratio-low)) * 100%);transition:left var(--tnn-transition-fast) var(--tnn-easing-enter), width var(--tnn-transition-fast) var(--tnn-easing-enter)}.tnn-slider-ticks{padding:0 calc(var(--tnn-slider-thumb-size) / 2 - 1px);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0}.tnn-slider-tick{background:var(--tnn-color-border-strong);opacity:.5;border-radius:1px;width:2px;height:6px}.tnn-slider-tick-active{background:var(--tnn-color-text-on-accent);opacity:.7}.tnn-slider-thumb{top:50%;left:calc(var(--tnn-slider-thumb-size) / 2 + (100% - var(--tnn-slider-thumb-size)) * var(--tnn-slider-thumb-ratio,var(--tnn-slider-ratio)));width:var(--tnn-slider-thumb-size);height:var(--tnn-slider-thumb-size);background:var(--tnn-color-surface-raised);border:2px solid var(--tnn-color-accent);cursor:grab;box-shadow:var(--tnn-shadow-sm), 0 0 8px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .3);transition:box-shadow var(--tnn-transition-fast);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.tnn-slider-thumb-low{--tnn-slider-thumb-ratio:var(--tnn-slider-ratio-low)}.tnn-slider-thumb-high{--tnn-slider-thumb-ratio:var(--tnn-slider-ratio-high)}.tnn-slider-thumb:hover{box-shadow:var(--tnn-shadow-md), var(--tnn-glow-sm), 0 0 0 3px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .15)}.tnn-slider-thumb:active,.tnn-slider-thumb.tnn-slider-thumb-active{cursor:grabbing;box-shadow:var(--tnn-shadow-md), var(--tnn-glow-md), 0 0 0 4px oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .25)}.tnn-slider-dragging{cursor:grabbing}.tnn-slider-thumb:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset)}.tnn-slider-bubble{background:var(--tnn-color-surface-overlay);color:var(--tnn-color-text);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);font-size:var(--tnn-text-xs);font-family:var(--tnn-font-mono);font-variant-numeric:tabular-nums;box-shadow:var(--tnn-shadow-sm);opacity:0;pointer-events:none;white-space:nowrap;transition:opacity var(--tnn-transition-fast);padding:.125rem .375rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.tnn-slider-thumb:hover .tnn-slider-bubble,.tnn-slider-thumb-active .tnn-slider-bubble{opacity:1}.tnn-dropdown{position:relative}.tnn-dropdown-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:var(--tnn-space-2);padding-right:calc(var(--tnn-space-3) * var(--tnn-density));display:flex}.tnn-dropdown-trigger:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset);border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-dropdown-trigger-open{border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-dropdown-disabled{opacity:.55;cursor:not-allowed}.tnn-dropdown-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tnn-dropdown-placeholder{color:var(--tnn-color-text-faint)}.tnn-dropdown-chevron{color:var(--tnn-color-text-faint);transition:transform var(--tnn-transition-fast);flex-shrink:0;align-items:center;display:inline-flex}.tnn-dropdown-trigger-open .tnn-dropdown-chevron{color:var(--tnn-color-accent-text);transform:rotate(180deg)}.tnn-dropdown-menu{background:var(--tnn-color-surface-overlay);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);min-width:100%;max-height:320px;box-shadow:var(--tnn-shadow-overlay);padding:var(--tnn-space-1);z-index:var(--tnn-z-dropdown);animation:tnn-dropdown-in .14s var(--tnn-easing-enter) both;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.tnn-dropdown-up .tnn-dropdown-menu{top:auto;bottom:calc(100% + 4px)}@keyframes tnn-dropdown-in{0%{opacity:0;transform:translateY(-4px)}}.tnn-dropdown-menu-closing{animation:tnn-dropdown-out .12s var(--tnn-easing-exit) both}@keyframes tnn-dropdown-out{to{opacity:0;transform:translateY(-4px)}}.tnn-dropdown-option{align-items:center;gap:var(--tnn-space-2);padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density));border-radius:var(--tnn-radius-sm);cursor:pointer;font-size:var(--tnn-text-sm);color:var(--tnn-color-text);transition:background var(--tnn-transition-fast);display:flex}.tnn-dropdown-option:hover,.tnn-dropdown-option-active{background:var(--tnn-color-surface-sunken)}.tnn-dropdown-option-selected{background:var(--tnn-color-accent-faint);color:var(--tnn-color-accent-text);font-weight:var(--tnn-font-weight-medium)}.tnn-dropdown-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tnn-dropdown-check{color:var(--tnn-color-accent);flex-shrink:0;display:inline-flex}.tnn-dropdown-empty{padding:var(--tnn-space-3);font-size:var(--tnn-text-sm);color:var(--tnn-color-text-faint);text-align:center}.tnn-colorpicker{width:100%;display:inline-block;position:relative}.tnn-colorpicker-inline{width:auto}.tnn-colorpicker-disabled{opacity:.55;cursor:not-allowed}.tnn-colorpicker-trigger{cursor:pointer;align-items:center;gap:var(--tnn-space-2);padding-right:calc(var(--tnn-space-3) * var(--tnn-density));display:flex}.tnn-colorpicker-trigger:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset);border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-colorpicker-trigger-open{border-color:var(--tnn-color-accent);box-shadow:var(--tnn-glow-sm)}.tnn-colorpicker-swatch{border-radius:var(--tnn-radius-sm);border:1px solid var(--tnn-color-border);flex-shrink:0;width:1.25rem;height:1.25rem;display:inline-block;overflow:hidden}.tnn-colorpicker-swatch-color{width:100%;height:100%;display:block}.tnn-colorpicker-hex{text-align:center;font-family:var(--tnn-font-mono);font-size:var(--tnn-text-sm);text-transform:uppercase;flex:1}.tnn-colorpicker-trigger .tnn-dropdown-chevron{justify-content:center;width:1.25rem}.tnn-colorpicker-popover{z-index:var(--tnn-z-dropdown);animation:tnn-colorpicker-in .14s var(--tnn-easing-enter) both;position:absolute;top:calc(100% + 6px);left:0}@keyframes tnn-colorpicker-in{0%{opacity:0;transform:translateY(-4px)}}.tnn-colorpicker-panel-closing{animation:tnn-colorpicker-out .12s var(--tnn-easing-exit) both}@keyframes tnn-colorpicker-out{to{opacity:0;transform:translateY(-4px)}}.tnn-colorpicker-panel{background:var(--tnn-color-surface-overlay);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);width:240px;box-shadow:var(--tnn-shadow-overlay);padding:var(--tnn-space-3);gap:var(--tnn-space-3);flex-direction:column;display:flex}.tnn-colorpicker-sv{border-radius:var(--tnn-radius-sm);border:1px solid var(--tnn-color-border);background:linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, var(--tnn-cp-hue-color,red));cursor:crosshair;touch-action:none;width:100%;height:140px;position:relative}.tnn-colorpicker-sv-thumb{left:var(--tnn-cp-x,0);top:var(--tnn-cp-y,0);pointer-events:none;border:2px solid #fff;border-radius:50%;width:.875rem;height:.875rem;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d,0 1px 4px #0000004d}.tnn-colorpicker-controls{gap:var(--tnn-space-2);align-items:stretch;display:flex}.tnn-colorpicker-rails{gap:var(--tnn-space-2);flex-direction:column;flex:1;justify-content:center;display:flex}.tnn-colorpicker-rail{border-radius:var(--tnn-radius-pill);cursor:pointer;touch-action:none;height:.625rem;position:relative}.tnn-colorpicker-hue{background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.tnn-colorpicker-alpha{background:linear-gradient(to right, transparent, var(--tnn-cp-rgb,#000)), repeating-conic-gradient(#ccc 0% 25%, #fff 0% 50%) 0 0 / 8px 8px}.tnn-colorpicker-rail-thumb{top:50%;left:var(--tnn-cp-pos,0);background:var(--tnn-color-surface-raised);border:1px solid var(--tnn-color-border-strong);border-radius:var(--tnn-radius-sm);width:.75rem;height:1rem;box-shadow:var(--tnn-shadow-sm);pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.tnn-colorpicker-eyedropper{background:var(--tnn-color-surface);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);width:1.75rem;color:var(--tnn-color-text-muted);cursor:pointer;transition:background var(--tnn-transition-fast), color var(--tnn-transition-fast);justify-content:center;align-self:stretch;align-items:center;display:inline-flex}.tnn-colorpicker-eyedropper:hover{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-colorpicker-fields{gap:var(--tnn-space-2);align-items:center;display:flex}.tnn-colorpicker-input{text-transform:uppercase;font-family:var(--tnn-font-mono);flex:1}.tnn-colorpicker-alpha-value{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-muted);font-family:var(--tnn-font-mono);white-space:nowrap}.tnn-colorpicker-swatches{gap:var(--tnn-space-1);grid-template-columns:repeat(8,1fr);display:grid}.tnn-colorpicker-preset{aspect-ratio:1;border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);cursor:pointer;transition:transform var(--tnn-transition-fast), box-shadow var(--tnn-transition-fast);padding:0}.tnn-colorpicker-preset:hover{box-shadow:var(--tnn-shadow-sm);transform:scale(1.12)}.tnn-colorpicker-preset-active{box-shadow:0 0 0 2px var(--tnn-color-surface-overlay), 0 0 0 4px var(--tnn-color-accent)}.tnn-actionmenu-host{display:inline-block;position:relative}.tnn-actionmenu-target{display:contents}.tnn-actionmenu-trigger{color:var(--tnn-color-text-muted);border-radius:var(--tnn-radius-sm);padding:var(--tnn-space-1) var(--tnn-space-2);cursor:pointer;transition:background var(--tnn-transition-fast), color var(--tnn-transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;min-width:2rem;min-height:2rem;display:inline-flex}.tnn-actionmenu-trigger:hover{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-actionmenu-trigger:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset)}.tnn-actionmenu-trigger-open{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-actionmenu{background:var(--tnn-color-surface-overlay);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);min-width:12rem;box-shadow:var(--tnn-shadow-overlay);padding:var(--tnn-space-1);z-index:var(--tnn-z-dropdown);animation:tnn-actionmenu-in .12s var(--tnn-easing-enter) both;position:fixed}@keyframes tnn-actionmenu-in{0%{opacity:0;transform:scale(.96)}}.tnn-actionmenu-closing{animation:tnn-actionmenu-out .1s var(--tnn-easing-exit) both}@keyframes tnn-actionmenu-out{to{opacity:0;transform:scale(.96)}}.tnn-actionmenu-item{align-items:center;gap:var(--tnn-space-2);text-align:left;border-radius:var(--tnn-radius-sm);width:100%;padding:calc(var(--tnn-space-2) * var(--tnn-density)) calc(var(--tnn-space-3) * var(--tnn-density));font:inherit;font-size:var(--tnn-text-sm);color:var(--tnn-color-text);cursor:pointer;transition:background var(--tnn-transition-fast);background:0 0;border:none;display:flex}.tnn-actionmenu-item:hover:not(:disabled){background:var(--tnn-color-surface-sunken)}.tnn-actionmenu-item:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:-2px}.tnn-actionmenu-item:disabled{opacity:.45;cursor:not-allowed}.tnn-actionmenu-item-danger{color:var(--tnn-color-danger-text)}.tnn-actionmenu-item-danger:hover:not(:disabled){background:var(--tnn-color-danger-faint)}.tnn-actionmenu-icon{color:var(--tnn-color-text-muted);flex-shrink:0;display:inline-flex}.tnn-actionmenu-label{flex:1}.tnn-actionmenu-shortcut{font-family:var(--tnn-font-mono);font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);padding:0 var(--tnn-space-1);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);background:var(--tnn-color-surface)}.tnn-actionmenu-separator{background:var(--tnn-color-border);height:1px;margin:var(--tnn-space-1) 0}.tnn-chart{gap:var(--tnn-space-2);width:100%;color:var(--tnn-color-text);flex-direction:column;display:flex}.tnn-chart-canvas{width:100%;position:relative}.tnn-chart-canvas svg{width:100%;height:auto;display:block;overflow:visible}.tnn-chart-gridline{stroke:var(--tnn-color-border);stroke-width:1px;stroke-dasharray:2 3;opacity:.6}.tnn-chart-bar{transform-box:fill-box;transform-origin:bottom;animation:tnn-chart-bar-grow .48s var(--tnn-easing-enter) both;transition:opacity var(--tnn-transition-fast)}@keyframes tnn-chart-bar-grow{0%{transform:scaleY(0)}}.tnn-chart-bar-hover{opacity:.85}.tnn-chart-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;animation:tnn-chart-line-draw .6s var(--tnn-easing-enter) both}@keyframes tnn-chart-line-draw{0%{stroke-dashoffset:1px}}.tnn-chart-area{animation:tnn-chart-area-in .6s var(--tnn-easing-enter) both}@keyframes tnn-chart-area-in{0%{opacity:0}}.tnn-chart-crosshair{stroke:var(--tnn-color-border-strong);stroke-width:1px;stroke-dasharray:3 3}.tnn-chart-dot{fill:var(--tnn-color-surface-overlay);stroke-width:2px;animation:tnn-chart-dot-in .2s var(--tnn-easing-enter) both}@keyframes tnn-chart-dot-in{0%{opacity:0;transform:scale(0)}}.tnn-chart-hotspots{display:flex;position:absolute;top:0;bottom:0}.tnn-chart-hotspots-grouped{display:flex}.tnn-chart-hotspot{cursor:default;flex:1;height:100%}.tnn-chart-ylabels{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.tnn-chart-ylabels>span{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono);font-variant-numeric:tabular-nums;padding-right:var(--tnn-space-1);position:absolute;left:0;transform:translateY(-50%)}.tnn-chart-xlabels{padding:var(--tnn-space-1) 0;gap:var(--tnn-space-1);display:flex}.tnn-chart-xlabels-centered{justify-content:space-around}.tnn-chart-xlabels>span{text-align:center;font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tnn-chart-xlabels-centered>span{flex:none}.tnn-chart-xlabel-hidden{opacity:0}.tnn-chart-legend{gap:var(--tnn-space-3);padding-top:var(--tnn-space-1);flex-wrap:wrap;display:flex}.tnn-chart-legend-item{align-items:center;gap:var(--tnn-space-2);font-size:var(--tnn-text-xs);color:var(--tnn-color-text-muted);display:inline-flex}.tnn-chart-swatch{border-radius:var(--tnn-radius-sm);flex-shrink:0;width:.75rem;height:.75rem;display:inline-block}.tnn-chart-tooltip{transform:translateX(var(--tnn-tooltip-shift,0));background:var(--tnn-color-surface-overlay);color:var(--tnn-color-text);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-sm);box-shadow:var(--tnn-shadow-md);padding:var(--tnn-space-2) var(--tnn-space-3);font-size:var(--tnn-text-xs);pointer-events:none;z-index:var(--tnn-z-tooltip);animation:tnn-chart-tooltip-in .12s var(--tnn-easing-enter) both;white-space:nowrap;position:absolute}@keyframes tnn-chart-tooltip-in{0%{opacity:0}}.tnn-chart-tooltip-title{font-weight:var(--tnn-font-weight-semibold);margin-bottom:var(--tnn-space-1);color:var(--tnn-color-text)}.tnn-chart-tooltip-row{align-items:center;gap:var(--tnn-space-2);color:var(--tnn-color-text-muted);display:flex}.tnn-chart-tooltip-name{flex:1}.tnn-chart-tooltip-value{font-family:var(--tnn-font-mono);font-variant-numeric:tabular-nums;color:var(--tnn-color-text)}.tnn-donut{align-items:center;gap:var(--tnn-space-6);flex-flow:wrap}.tnn-donut-canvas{min-width:0;position:relative}.tnn-donut-canvas svg{max-width:100%;height:auto;display:block}.tnn-donut-segment{transition:opacity var(--tnn-transition-fast), stroke-width var(--tnn-transition-fast);animation:tnn-donut-segment-in .6s var(--tnn-easing-enter) both}@keyframes tnn-donut-segment-in{0%{stroke-dashoffset:100px}}.tnn-donut-segment-active{stroke-width:calc(var(--tnn-donut-thickness,22px) + 4px)}.tnn-donut-segment-dim{opacity:.35}.tnn-donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tnn-donut-value{font-size:var(--tnn-text-2xl);font-weight:var(--tnn-font-weight-bold);color:var(--tnn-color-text);font-variant-numeric:tabular-nums}.tnn-donut-caption{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);text-transform:uppercase;letter-spacing:var(--tnn-tracking-wide)}.tnn-donut-legend{gap:var(--tnn-space-1);flex-direction:column;min-width:160px;max-width:260px;display:flex}.tnn-donut-legend-item{align-items:center;gap:var(--tnn-space-2);padding:var(--tnn-space-1) var(--tnn-space-2);border-radius:var(--tnn-radius-sm);font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);transition:background var(--tnn-transition-fast);display:flex}.tnn-donut-legend-item-active{background:var(--tnn-color-surface-sunken);color:var(--tnn-color-text)}.tnn-donut-legend-label{flex:1}.tnn-donut-legend-value{font-family:var(--tnn-font-mono);font-variant-numeric:tabular-nums}.tnn-donut-legend-percent{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono);text-align:right;width:3.5rem}.tnn-sparkline{max-width:100%;height:auto;display:block;overflow:visible}.tnn-sparkline-line{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;animation:tnn-chart-line-draw .48s var(--tnn-easing-enter) both}.tnn-sparkline-area{animation:tnn-chart-area-in .48s var(--tnn-easing-enter) both}.tnn-sparkline-dot{animation:tnn-chart-dot-in .2s var(--tnn-easing-enter) both}.tnn-gauge{align-items:center;gap:var(--tnn-space-2);flex-direction:column;display:flex}.tnn-gauge-canvas{position:relative}.tnn-gauge-canvas svg{max-width:100%;height:auto;display:block;overflow:visible}.tnn-gauge-track{fill:none;stroke:var(--tnn-color-surface-sunken);stroke-linecap:round}.tnn-gauge-fill{fill:none;stroke-linecap:round;transition:stroke-dasharray var(--tnn-transition-slow) var(--tnn-easing-enter);filter:drop-shadow(0 0 6px oklch(60% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .35))}.tnn-gauge-center{pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.tnn-gauge-value{font-size:var(--tnn-text-3xl);font-weight:var(--tnn-font-weight-bold);color:var(--tnn-color-text);font-variant-numeric:tabular-nums;line-height:1}.tnn-gauge-unit{font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);margin-left:2px}.tnn-gauge-caption{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);text-transform:uppercase;letter-spacing:var(--tnn-tracking-wide);margin-top:var(--tnn-space-1)}.tnn-gauge-scale{width:100%;font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono);justify-content:space-between;display:flex}.tnn-timeline{margin:0;padding:0;list-style:none;position:relative}.tnn-timeline:before{content:"";background:var(--tnn-color-border);width:2px;position:absolute;top:.5rem;bottom:.5rem;left:.75rem}.tnn-timeline-item{padding-left:2.5rem;padding-bottom:var(--tnn-space-4);animation:tnn-timeline-in .32s var(--tnn-easing-enter) both;position:relative}.tnn-timeline-item:last-child{padding-bottom:0}@keyframes tnn-timeline-in{0%{opacity:0;transform:translate(-8px)}}.tnn-timeline-marker{background:var(--tnn-color-surface-raised);border:2px solid var(--tnn-color-border-strong);width:1.5rem;height:1.5rem;color:var(--tnn-color-text-muted);z-index:1;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:.25rem;left:0}.tnn-timeline-marker-accent{border-color:var(--tnn-color-accent);color:var(--tnn-color-accent-text);background:var(--tnn-color-accent-faint)}.tnn-timeline-marker-success{border-color:var(--tnn-color-success);color:var(--tnn-color-success-text);background:var(--tnn-color-success-faint)}.tnn-timeline-marker-warning{border-color:var(--tnn-color-warning);color:var(--tnn-color-warning-text);background:var(--tnn-color-warning-faint)}.tnn-timeline-marker-danger{border-color:var(--tnn-color-danger);color:var(--tnn-color-danger-text);background:var(--tnn-color-danger-faint)}.tnn-timeline-marker-info{border-color:var(--tnn-color-info);color:var(--tnn-color-info-text);background:var(--tnn-color-info-faint)}.tnn-timeline-content{padding-top:.125rem}.tnn-timeline-heading{align-items:baseline;gap:var(--tnn-space-2);flex-wrap:wrap;display:flex}.tnn-timeline-title{font-size:var(--tnn-text-sm);font-weight:var(--tnn-font-weight-semibold);color:var(--tnn-color-text)}.tnn-timeline-time{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono)}.tnn-timeline-description{font-size:var(--tnn-text-sm);color:var(--tnn-color-text-muted);margin-top:var(--tnn-space-1);text-wrap:pretty}.tnn-barcode{align-items:center;gap:var(--tnn-space-2);color:var(--tnn-color-text);flex-direction:column;display:inline-flex}.tnn-barcode-framed{padding:var(--tnn-space-3) var(--tnn-space-4);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);background:var(--tnn-color-surface-raised)}.tnn-barcode svg{display:block}.tnn-barcode-text{font-family:var(--tnn-font-mono);font-size:var(--tnn-text-xs);letter-spacing:.1em;color:var(--tnn-color-text-muted)}.tnn-barcode-error,.tnn-qrcode-error{align-items:center;gap:var(--tnn-space-2);padding:var(--tnn-space-2) var(--tnn-space-3);border:1px solid var(--tnn-color-danger);border-radius:var(--tnn-radius-sm);color:var(--tnn-color-danger-text);background:var(--tnn-color-danger-faint);font-size:var(--tnn-text-sm);display:inline-flex}.tnn-qrcode{align-items:center;gap:var(--tnn-space-2);color:var(--tnn-color-text);flex-direction:column;display:inline-flex}.tnn-qrcode-framed{padding:var(--tnn-space-3);border:1px solid var(--tnn-color-border);border-radius:var(--tnn-radius-md);background:var(--tnn-color-surface-raised)}.tnn-qrcode svg{display:block}.tnn-qrcode-label{font-size:var(--tnn-text-xs);color:var(--tnn-color-text-faint);font-family:var(--tnn-font-mono);word-break:break-all;text-align:center;max-width:100%}*{scrollbar-width:thin;scrollbar-color:var(--tnn-color-border-strong) transparent}@supports not (scrollbar-color:auto){::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--tnn-color-border-strong);background-clip:content-box;border:2px solid #0000;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background-color:var(--tnn-color-text-faint)}::-webkit-scrollbar-corner{background:0 0}}#blazor-error-ui{color:var(--tnn-color-text);background:var(--tnn-color-danger);box-sizing:border-box;z-index:1000;width:100%;padding:.6rem 1.25rem .7rem;display:none;position:fixed;bottom:0;left:0;box-shadow:0 -1px 2px #0003}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;top:.5rem;right:.75rem}.components-reconnect-first-attempt-visible,.components-reconnect-repeated-attempt-visible,.components-reconnect-failed-visible,.components-pause-visible,.components-resume-failed-visible,.components-rejoining-animation{display:none}#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible,#components-reconnect-modal.components-reconnect-show .components-rejoining-animation,#components-reconnect-modal.components-reconnect-paused .components-pause-visible,#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible,#components-reconnect-modal.components-reconnect-retrying,#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible,#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation,#components-reconnect-modal.components-reconnect-failed,#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible{display:block}#components-reconnect-modal{opacity:0;width:20rem;transition:display .5s allow-discrete, overlay .5s allow-discrete;background-color:#fff;border:0;border-radius:.5rem;margin:20vh auto;padding:2rem;animation:.5s both components-reconnect-modal-fadeOutOpacity;box-shadow:0 3px 6px 2px #0000004d}#components-reconnect-modal[open]{animation-name:components-reconnect-modal-slideUp,components-reconnect-modal-fadeInOpacity;animation-duration:1.5s,.5s;animation-timing-function:cubic-bezier(.05,.89,.25,1.02),ease-in-out;animation-iteration-count:1,1;animation-direction:normal,normal;animation-play-state:running,running;animation-delay:.3s,.3s;animation-fill-mode:both;animation-timeline:auto,auto}#components-reconnect-modal::backdrop{opacity:1;background-color:#0006;animation:.5s ease-in-out components-reconnect-modal-fadeInOpacity}@keyframes components-reconnect-modal-slideUp{0%{transform:translateY(30px)scale(.95)}to{transform:translateY(0)}}@keyframes components-reconnect-modal-fadeInOpacity{0%{opacity:0}to{opacity:1}}@keyframes components-reconnect-modal-fadeOutOpacity{0%{opacity:1}to{opacity:0}}.components-reconnect-container{flex-direction:column;align-items:center;gap:1rem;display:flex}#components-reconnect-modal p{text-align:center;margin:0}#components-reconnect-modal button{color:#fff;background-color:#6b9ed2;border:0;border-radius:4px;padding:4px 24px}#components-reconnect-modal button:hover{background-color:#3b6ea2}#components-reconnect-modal button:active{background-color:#6b9ed2}.components-rejoining-animation{width:80px;height:80px;position:relative}.components-rejoining-animation div{opacity:1;border:3px solid #0087ff;border-radius:50%;animation:1.5s cubic-bezier(0,.2,.8,1) infinite components-rejoining-animation;position:absolute}.components-rejoining-animation div:nth-child(2){animation-delay:-.5s}@keyframes components-rejoining-animation{0%{opacity:0;width:0;height:0;top:40px;left:40px}4.9%{opacity:0;width:0;height:0;top:40px;left:40px}5%{opacity:1;width:0;height:0;top:40px;left:40px}to{opacity:0;width:80px;height:80px;top:0;left:0}}[data-theme=pictureframe]{--tnn-seed-accent-h:24;--tnn-seed-accent-c:.155;--tnn-seed-neutral-h:28;--tnn-seed-neutral-c:.01;--tnn-color-surface:oklch(14% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(18% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-sunken:oklch(11% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(22% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border:oklch(26% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(38% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(95% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(70% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(50% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-on-accent:oklch(98% .005 28);--tnn-color-accent:oklch(64% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(70% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(76% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(26% calc(var(--tnn-seed-accent-c) * .7) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(76% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success:oklch(70% .14 150);--tnn-color-warning:oklch(78% .16 75);--tnn-color-danger:oklch(68% .19 25);--tnn-color-info:oklch(70% .14 230);--tnn-color-success-faint:oklch(26% .05 150);--tnn-color-warning-faint:oklch(28% .06 75);--tnn-color-danger-faint:oklch(28% .06 25);--tnn-color-info-faint:oklch(26% .05 230);--tnn-color-success-text:oklch(82% .13 150);--tnn-color-warning-text:oklch(85% .14 75);--tnn-color-danger-text:oklch(80% .15 25);--tnn-color-info-text:oklch(82% .13 230);--tnn-color-focus-ring:oklch(72% .18 var(--tnn-seed-accent-h));--tnn-shadow-sm:0 1px 2px 0 #00000073;--tnn-shadow-md:0 2px 4px -1px #00000080, 0 6px 12px -4px #00000061;--tnn-shadow-lg:0 12px 28px -8px #0000009e, 0 4px 10px -2px #0000006b;--tnn-shadow-overlay:0 24px 56px -12px #000000b8;--tnn-glow-sm:0 0 0 1px oklch(75% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .16), 0 2px 12px -2px oklch(68% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .27);--tnn-radius-sm:.125rem;--tnn-radius-md:.25rem;--tnn-radius-lg:.375rem;--tnn-radius-xl:.5rem;--tnn-density:1}[data-theme=pictureframe-light]{--tnn-seed-accent-h:24;--tnn-seed-accent-c:.155;--tnn-seed-neutral-h:28;--tnn-seed-neutral-c:.01;--tnn-color-surface:oklch(98.5% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-raised:oklch(100% 0 0);--tnn-color-surface-sunken:oklch(96% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-surface-overlay:oklch(100% 0 0);--tnn-color-border:oklch(90% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-border-strong:oklch(80% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text:oklch(22% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-muted:oklch(46% calc(var(--tnn-seed-neutral-c) * 2) var(--tnn-seed-neutral-h));--tnn-color-text-faint:oklch(66% var(--tnn-seed-neutral-c) var(--tnn-seed-neutral-h));--tnn-color-text-on-accent:oklch(99% 0 0);--tnn-color-accent:oklch(55% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-hover:oklch(49% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-active:oklch(43% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-accent-faint:oklch(94% calc(var(--tnn-seed-accent-c) * .35) var(--tnn-seed-accent-h));--tnn-color-accent-text:oklch(42% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h));--tnn-color-success:oklch(60% .13 150);--tnn-color-warning:oklch(72% .15 75);--tnn-color-danger:oklch(58% .2 25);--tnn-color-info:oklch(60% .13 230);--tnn-color-success-faint:oklch(95% .05 150);--tnn-color-warning-faint:oklch(96% .06 75);--tnn-color-danger-faint:oklch(95% .05 25);--tnn-color-info-faint:oklch(95% .05 230);--tnn-color-success-text:oklch(38% .12 150);--tnn-color-warning-text:oklch(42% .13 75);--tnn-color-danger-text:oklch(42% .18 25);--tnn-color-info-text:oklch(40% .12 230);--tnn-color-focus-ring:oklch(62% .18 var(--tnn-seed-accent-h));--tnn-shadow-sm:0 1px 2px 0 #0000000a;--tnn-shadow-md:0 2px 4px -1px #0000000f, 0 4px 8px -2px #0000000a;--tnn-shadow-lg:0 8px 16px -4px #00000014, 0 4px 8px -2px #0000000a;--tnn-shadow-overlay:0 16px 48px -8px #0000003d;--tnn-glow-sm:0 0 0 1px oklch(85% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .12), 0 2px 8px -2px oklch(60% var(--tnn-seed-accent-c) var(--tnn-seed-accent-h) / .16);--tnn-radius-sm:.125rem;--tnn-radius-md:.25rem;--tnn-radius-lg:.375rem;--tnn-radius-xl:.5rem;--tnn-density:1}.pf-frame{background:var(--tnn-color-surface-raised);border:1px solid var(--tnn-color-border-strong);border-radius:var(--tnn-radius-lg);box-shadow:var(--tnn-shadow-lg);padding:clamp(.5rem,2.5vw,1.5rem)}.pf-frame-screen{border-radius:var(--tnn-radius-sm);outline:1px solid var(--tnn-color-border);outline-offset:-1px;background:oklch(8% 0 0);overflow:hidden}.pf-link-quiet{color:var(--tnn-color-text-muted);transition:color var(--tnn-transition-fast) ease-out}.pf-link-quiet:hover{color:var(--tnn-color-text)}.pf-cta-primary{align-items:center;gap:var(--tnn-space-2);padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-6) * var(--tnn-density));background:var(--tnn-color-accent);color:var(--tnn-color-text-on-accent);border-radius:var(--tnn-radius-md);font-weight:var(--tnn-font-weight-semibold);font-size:var(--tnn-text-base);line-height:var(--tnn-leading-tight);white-space:nowrap;transition:background var(--tnn-transition-fast) ease-out, transform var(--tnn-transition-fast) ease-out, box-shadow var(--tnn-transition-fast) ease-out;box-shadow:var(--tnn-glow-sm);display:inline-flex}.pf-cta-primary:hover{background:var(--tnn-color-accent-hover);transform:translateY(-1px)}.pf-cta-primary:active{background:var(--tnn-color-accent-active);transform:translateY(0)}.pf-cta-primary:focus-visible{outline:var(--tnn-focus-ring-width) solid var(--tnn-color-focus-ring);outline-offset:var(--tnn-focus-ring-offset)}.pf-cta-secondary{align-items:center;gap:var(--tnn-space-2);padding:calc(var(--tnn-space-3) * var(--tnn-density)) calc(var(--tnn-space-6) * var(--tnn-density));color:var(--tnn-color-text);border:1px solid var(--tnn-color-border-strong);border-radius:var(--tnn-radius-md);font-weight:var(--tnn-font-weight-medium);font-size:var(--tnn-text-base);line-height:var(--tnn-leading-tight);white-space:nowrap;transition:border-color var(--tnn-transition-fast) ease-out, color var(--tnn-transition-fast) ease-out, background var(--tnn-transition-fast) ease-out;background:0 0;display:inline-flex}.pf-cta-secondary:hover{border-color:var(--tnn-color-text-muted);background:var(--tnn-color-surface-sunken)}.pf-rise{animation:pf-rise .52s var(--tnn-easing-enter) both}@keyframes pf-rise{0%{opacity:0;transform:translateY(12px)}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}