@font-face{font-family:Onest;src:url(/fonts/Onest-Regular.woff2) format("woff2");font-weight:100 400;font-style:normal;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Onest;src:url(/fonts/Onest-SemiBold.woff2) format("woff2");font-weight:600 900;font-style:normal;font-display:swap}:root{--tvo-font-sans:"DM Sans",system-ui,sans-serif;--tvo-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.tvo-ds,.tvo-factory{--tvo-font-sans:"Onest",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--tvo-font-mono:var(--tvo-font-sans);font-family:var(--tvo-font-sans)}.tvo-factory .font-mono{font-variant-numeric:tabular-nums}.tvo-ds table,.tvo-factory table,.tvo-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.tvo-ds,.tvo-factory{--tvo-glass-a:0.78;--tvo-glass-strong-a:0.88;--tvo-glass-edge-a:0.06;--tvo-glow-1-a:0.0;--tvo-glow-2-a:0.0;--tvo-scrim-a:0.36;--tvo-canvas:255 255 255;--tvo-surface-soft:247 247 244;--tvo-surface-raised:255 255 255;--tvo-surface-strong:237 237 234;--tvo-control-border:147 146 143;--tvo-ink:32 31 29;--tvo-body:62 61 59;--tvo-subtle:111 111 108;--tvo-accent-strong:6 112 138;--tvo-accent-soft:226 244 250;--tvo-on-accent:255 255 255;--tvo-brand-deep:6 94 113;--tvo-brand-deepest:5 64 77;--tvo-amber:190 123 34;--tvo-amber-text:133 84 18;--tvo-amber-soft:253 237 219;--tvo-success-bg:228 249 233;--tvo-success-fg:0 116 57;--tvo-success-border:172 220 184;--tvo-warning-bg:252 241 220;--tvo-warning-fg:123 90 2;--tvo-warning-border:228 203 154;--tvo-danger-bg:255 238 236;--tvo-danger-fg:168 46 41;--tvo-danger-border:248 189 181;--tvo-info-bg:226 244 250;--tvo-info-fg:6 112 138;--tvo-info-border:170 214 229;--tvo-neutral-bg:237 237 234;--tvo-neutral-fg:72 72 69;--tvo-neutral-border:210 209 206;--tvo-danger-solid:182 50 45;--tvo-area-proto:125 86 184;--tvo-area-proto-text:109 76 158;--tvo-area-proto-soft:244 240 254;--tvo-area-model:217 114 48;--tvo-area-model-text:152 69 0;--tvo-area-model-soft:254 239 231;--tvo-area-cast:98 142 237;--tvo-area-cast-text:57 92 169;--tvo-area-cast-soft:236 243 255;--tvo-area-finish:68 100 1;--tvo-area-finish-text:75 109 0;--tvo-area-finish-soft:237 247 225;--tvo-area-paint:172 66 120;--tvo-area-paint-text:149 60 104;--tvo-area-paint-soft:254 237 244;--tvo-chart-1:6 131 163;--tvo-chart-2:190 123 34;--tvo-chart-3:114 74 171;--tvo-chart-4:41 104 24;--tvo-chart-5:186 78 132;--tvo-chart-6:147 146 142;--tvo-chart-grid:232 232 229;--tvo-glass:255 255 255;--tvo-glass-strong:255 255 255;--tvo-glass-edge:0 0 0;--tvo-glass-fallback:255 255 255;--tvo-glow-1:6 131 163;--tvo-glow-2:190 123 34;--tvo-scrim:15 15 15;--tvo-focus-ring:6 131 163;--tvo-elev-1:0 1px 2px rgba(16,32,38,.06);--tvo-elev-2:0 2px 6px rgba(16,32,38,.06),0 8px 24px rgba(16,32,38,.06);--tvo-elev-3:0 4px 12px rgba(16,32,38,.1),0 16px 40px rgba(16,32,38,.1);--tvo-elev-4:0 8px 24px rgba(16,32,38,.14),0 32px 64px rgba(16,32,38,.16)}.dark .tvo-ds,.dark .tvo-factory,.dark.tvo-ds{--tvo-glass-a:0.78;--tvo-glass-strong-a:0.88;--tvo-glass-edge-a:0.07;--tvo-glow-1-a:0.0;--tvo-glow-2-a:0.0;--tvo-scrim-a:0.60;--tvo-canvas:10 33 39;--tvo-surface-soft:15 41 47;--tvo-surface-raised:21 48 54;--tvo-surface-strong:31 55 61;--tvo-control-border:97 118 123;--tvo-ink:233 240 242;--tvo-body:201 211 214;--tvo-subtle:134 149 153;--tvo-accent-strong:76 186 220;--tvo-accent-soft:14 51 61;--tvo-on-accent:4 38 46;--tvo-brand-deep:6 94 113;--tvo-brand-deepest:5 64 77;--tvo-amber:227 162 87;--tvo-amber-text:239 184 124;--tvo-amber-soft:58 39 17;--tvo-success-bg:25 50 32;--tvo-success-fg:146 215 164;--tvo-success-border:51 87 61;--tvo-warning-bg:54 41 14;--tvo-warning-fg:227 191 118;--tvo-warning-border:93 74 36;--tvo-danger-bg:63 34 31;--tvo-danger-fg:254 171 161;--tvo-danger-border:106 64 59;--tvo-info-bg:14 51 61;--tvo-info-fg:76 186 220;--tvo-info-border:43 84 96;--tvo-neutral-bg:31 55 61;--tvo-neutral-fg:182 192 194;--tvo-neutral-border:65 80 84;--tvo-danger-solid:182 50 45;--tvo-area-proto:171 139 227;--tvo-area-proto-text:206 182 252;--tvo-area-proto-soft:47 38 62;--tvo-area-model:255 174 129;--tvo-area-model-text:249 177 137;--tvo-area-model-soft:61 36 22;--tvo-area-cast:167 196 254;--tvo-area-cast-text:167 196 254;--tvo-area-cast-soft:32 43 66;--tvo-area-finish:111 148 54;--tvo-area-finish-text:177 209 138;--tvo-area-finish-soft:37 48 22;--tvo-area-paint:219 122 167;--tvo-area-paint-text:247 169 203;--tvo-area-paint-soft:60 34 46;--tvo-chart-1:85 171 201;--tvo-chart-2:233 169 96;--tvo-chart-3:184 150 243;--tvo-chart-4:88 145 76;--tvo-chart-5:228 127 173;--tvo-chart-6:110 114 116;--tvo-chart-grid:32 55 60;--tvo-glass:10 33 39;--tvo-glass-strong:21 48 54;--tvo-glass-edge:255 255 255;--tvo-glass-fallback:21 48 54;--tvo-glow-1:6 131 163;--tvo-glow-2:190 123 34;--tvo-scrim:0 0 0;--tvo-focus-ring:61 173 207;--tvo-elev-1:0 1px 2px rgba(0,0,0,.3);--tvo-elev-2:0 2px 6px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.3);--tvo-elev-3:0 4px 12px rgba(0,0,0,.4),0 16px 40px rgba(0,0,0,.4);--tvo-elev-4:0 8px 24px rgba(0,0,0,.5),0 32px 64px rgba(0,0,0,.5)}.tvo-factory{--tvo-muted-ds:105 105 102;--tvo-hairline-ds:232 232 229;--tvo-chat-out:4 88 108}.dark .tvo-factory{--tvo-muted-ds:153 168 171;--tvo-hairline-ds:32 55 60;--tvo-chat-out:12 86 104}.tvo-ds{--tvo-surface:255 255 255;--tvo-hairline:232 232 229;--tvo-muted:105 105 102;--tvo-accent:6 131 163;--tvo-accent-hover:6 94 113;--tvo-primary:6 112 138}.dark .tvo-ds,.dark.tvo-ds{--tvo-surface:10 33 39;--tvo-hairline:32 55 60;--tvo-muted:153 168 171;--tvo-accent:61 173 207;--tvo-accent-hover:120 203 231;--tvo-primary:61 173 207}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.dark .tvo-ds,.dark .tvo-factory,.dark.tvo-ds,.tvo-ds,.tvo-factory{--tvo-glass-a:1;--tvo-glass-strong-a:1}}@media (prefers-reduced-transparency:reduce){.dark .tvo-ds,.dark .tvo-factory,.dark.tvo-ds,.tvo-ds,.tvo-factory{--tvo-glass-a:1;--tvo-glass-strong-a:1}}@media (prefers-reduced-motion:reduce){.tvo-ds,.tvo-ds *{transition-duration:0ms!important;animation-duration:0ms!important;animation-iteration-count:1!important}}.tvo-ds{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-xs:2px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-full:9999px;--control-sm:32px;--control-md:36px;--control-lg:44px;--row-compact:36px;--row-comfort:44px;--sidebar-w:256px;--sidebar-w-collapsed:72px;--tabbar-h:64px;--content-max:1600px;--glass-blur:20px;--glass-blur-strong:24px;--glass-saturate:160%;--dur-fast:150ms;--dur-base:200ms;--dur-slow:250ms;--font-sans:var(--tvo-font-sans)}.tvo-ds,.tvo-ds *{box-sizing:border-box}.tvo-ds{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:400;color:rgb(var(--tvo-ink));-webkit-font-smoothing:antialiased;--ease:cubic-bezier(0.2,0,0,1)}.tvo-ds table,.tvo-kpi__value,.tvo-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.tvo-muted{color:rgb(var(--tvo-muted))}.tvo-ico{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.tvo-ico--20{width:20px;height:20px}.tvo-ico--24{width:24px;height:24px}@media (prefers-reduced-motion:reduce){.tvo-ds *{transition:none!important;animation:none!important}}.tvo-canvas{background:rgb(var(--tvo-canvas));color:rgb(var(--tvo-ink))}.tvo-glass{background:rgb(var(--tvo-glass)/var(--tvo-glass-a));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:0 0 0 1px rgb(var(--tvo-glass-edge)/var(--tvo-glass-edge-a))}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.tvo-glass,.tvo-menu,.tvo-modal,.tvo-sheet,.tvo-table thead th,.tvo-toast{background:rgb(var(--tvo-glass-fallback))!important}}@media (prefers-reduced-transparency:reduce){.tvo-glass,.tvo-menu,.tvo-modal,.tvo-sheet,.tvo-table thead th,.tvo-toast{background:rgb(var(--tvo-glass-fallback))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}.tvo-ds :focus-visible,.tvo-ds:focus-visible{outline:2px solid rgb(var(--tvo-focus-ring));outline-offset:2px}.tvo-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-md);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font:inherit;font-weight:500;font-size:14px;line-height:20px;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.tvo-btn--primary{background:rgb(var(--tvo-primary));color:rgb(var(--tvo-on-accent))}.tvo-btn--primary:hover{background:rgb(var(--tvo-accent-hover))}.tvo-btn--primary:active{background:rgb(var(--tvo-brand-deepest))}.dark .tvo-btn--primary:active{background:rgb(var(--tvo-accent))}.tvo-btn--ink{background:rgb(var(--tvo-ink));color:rgb(var(--tvo-surface))}.tvo-btn--ink:hover{background:rgb(var(--tvo-body))}.tvo-btn--secondary{background:rgb(var(--tvo-surface));color:rgb(var(--tvo-ink));border-color:color-mix(in oklab,rgb(var(--tvo-control-border)) 45%,transparent)}.tvo-btn--secondary:hover{background:rgb(var(--tvo-surface-soft));border-color:color-mix(in oklab,rgb(var(--tvo-control-border)) 65%,transparent)}.tvo-btn--secondary:active{background:rgb(var(--tvo-surface-strong))}.tvo-btn--ghost{background:transparent;color:rgb(var(--tvo-accent-strong))}.tvo-btn--ghost:active,.tvo-btn--ghost:hover{background:rgb(var(--tvo-surface-strong))}.tvo-btn--danger{background:rgb(var(--tvo-danger-solid));color:#fff}.tvo-btn--danger:hover{box-shadow:inset 0 0 0 999px rgba(0,0,0,.1)}.tvo-btn--danger-ghost{background:transparent;color:rgb(var(--tvo-danger-fg))}.tvo-btn--danger-ghost:hover{background:rgb(var(--tvo-danger-bg))}.tvo-btn--sm{height:var(--control-sm);padding:0 var(--space-3);font-size:13px}.tvo-btn--lg{height:var(--control-lg);padding:0 var(--space-5)}.tvo-btn--block{width:100%}.tvo-btn--icon{width:var(--control-md);padding:0}.tvo-btn--icon.tvo-btn--sm{width:var(--control-sm)}.tvo-btn--icon.tvo-btn--lg{width:var(--control-lg)}.tvo-btn:disabled,.tvo-btn[aria-disabled=true]{background:rgb(var(--tvo-surface-strong));color:rgb(var(--tvo-subtle));border-color:transparent;cursor:not-allowed;box-shadow:none}.tvo-btn.is-loading{color:transparent;position:relative;pointer-events:none}.tvo-btn.is-loading:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;border:2px solid;border-color:rgb(var(--tvo-on-accent)) rgb(var(--tvo-on-accent)) transparent transparent;animation:tvo-spin .7s linear infinite}.tvo-btn--secondary.is-loading:after{border-color:rgb(var(--tvo-ink)) rgb(var(--tvo-ink)) transparent transparent}@keyframes tvo-spin{to{transform:rotate(1turn)}}.tvo-btngroup{display:inline-flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.tvo-field{display:flex;flex-direction:column;gap:6px;min-width:0}.tvo-field__label{font-size:13px;line-height:18px;font-weight:500;color:rgb(var(--tvo-body))}.tvo-field__label .req{color:rgb(var(--tvo-danger-fg))}.tvo-field__hint{font-size:12px;line-height:16px;color:rgb(var(--tvo-muted))}.tvo-field__error{font-size:12px;line-height:16px;color:rgb(var(--tvo-danger-fg));display:flex;gap:4px;align-items:center}.tvo-input{height:var(--control-md);width:100%;padding:0 var(--space-3);background:rgb(var(--tvo-surface));color:rgb(var(--tvo-ink));border:1px solid rgb(var(--tvo-control-border));border-radius:var(--radius-sm);font:inherit;font-size:14px;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.tvo-input::-moz-placeholder{color:rgb(var(--tvo-subtle))}.tvo-input::placeholder{color:rgb(var(--tvo-subtle))}.tvo-input:hover{border-color:rgb(var(--tvo-muted))}.tvo-input.is-focus,.tvo-input:focus{outline:none;border-color:rgb(var(--tvo-accent));box-shadow:0 0 0 3px rgb(var(--tvo-accent-soft))}.tvo-input.is-invalid{border-color:rgb(var(--tvo-danger-fg))}.tvo-input.is-invalid:focus{box-shadow:0 0 0 3px rgb(var(--tvo-danger-bg))}.tvo-input:disabled{background:rgb(var(--tvo-surface-soft));color:rgb(var(--tvo-subtle));border-color:rgb(var(--tvo-hairline));cursor:not-allowed}.tvo-input--num{text-align:right;font-variant-numeric:tabular-nums}.tvo-inputwrap{position:relative;display:flex;align-items:center}.tvo-inputwrap>.tvo-ico{position:absolute;left:10px;color:rgb(var(--tvo-muted));pointer-events:none}.tvo-inputwrap>.tvo-input{padding-left:34px}.tvo-inputwrap>.tvo-suffix{position:absolute;right:10px;color:rgb(var(--tvo-muted));font-size:13px;pointer-events:none}.tvo-inputwrap:has(>.tvo-suffix)>.tvo-input{padding-right:32px}.tvo-inputwrap--select>.tvo-input{padding-left:var(--space-3);padding-right:32px;text-align:left;cursor:pointer;display:flex;align-items:center}.tvo-inputwrap--select>.tvo-ico{left:auto;right:10px}.tvo-kbd{font-size:11px;line-height:16px;padding:0 5px;border-radius:4px;border:1px solid rgb(var(--tvo-hairline));color:rgb(var(--tvo-muted));background:rgb(var(--tvo-surface-soft))}.tvo-check{width:16px;height:16px;border-radius:var(--radius-xs);border:1px solid rgb(var(--tvo-control-border));background:rgb(var(--tvo-surface));display:inline-grid;place-items:center;flex:none;color:rgb(var(--tvo-on-accent))}.tvo-check.is-mixed,.tvo-check.is-on{background:rgb(var(--tvo-accent-strong));border-color:rgb(var(--tvo-accent-strong))}.tvo-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.tvo-chip{display:inline-flex;align-items:center;gap:6px;height:var(--control-sm);padding:0 var(--space-3);border-radius:var(--radius-sm);border:1px solid transparent;background:rgb(var(--tvo-surface-soft));font:inherit;font-size:13px;font-weight:500;color:rgb(var(--tvo-body));cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.tvo-chip:hover{background:rgb(var(--tvo-surface-strong))}.tvo-chip.is-selected{background:rgb(var(--tvo-ink));color:rgb(var(--tvo-canvas))}.tvo-chip--danger{color:rgb(var(--tvo-danger-fg))}.tvo-chip--danger.is-selected{background:rgb(var(--tvo-danger-solid));color:#fff}.tvo-chip .tvo-chip__n{color:rgb(var(--tvo-muted));font-weight:400;font-variant-numeric:tabular-nums}.tvo-chip.is-selected .tvo-chip__n{color:inherit}.tvo-seg{display:inline-flex;padding:2px;gap:2px;border-radius:var(--radius-md);background:rgb(var(--tvo-surface-soft))}.tvo-seg__btn{height:calc(var(--control-sm) - 4px);padding:0 var(--space-3);border:0;border-radius:8px;background:transparent;color:rgb(var(--tvo-body));font:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease)}.tvo-seg__btn.is-active,.tvo-seg__btn:hover{color:rgb(var(--tvo-ink))}.tvo-seg__btn.is-active{background:rgb(var(--tvo-surface-raised));box-shadow:0 1px 2px rgba(0,0,0,.08)}.dark .tvo-seg__btn.is-active{background:rgb(var(--tvo-surface-strong))}.tvo-tabs{display:flex;gap:var(--space-6);border-bottom:1px solid rgb(var(--tvo-hairline));overflow-x:auto;scrollbar-width:none}.tvo-tab{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0;border:0;background:none;color:rgb(var(--tvo-muted));font:inherit;font-weight:500;cursor:pointer;white-space:nowrap;position:relative;transition:color var(--dur-fast) var(--ease)}.tvo-tab.is-active,.tvo-tab:hover{color:rgb(var(--tvo-ink))}.tvo-tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:rgb(var(--tvo-ink))}.tvo-tab:disabled{color:rgb(var(--tvo-subtle));cursor:not-allowed}.tvo-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-full);background:rgb(var(--tvo-surface-strong));color:rgb(var(--tvo-body));font-size:12px;line-height:16px;font-weight:500;font-variant-numeric:tabular-nums}.tvo-count--accent{background:rgb(var(--tvo-accent-strong));color:rgb(var(--tvo-on-accent))}.tvo-count--danger{color:#fff}.tvo-count--danger,.tvo-count--dot{background:rgb(var(--tvo-danger-solid))}.tvo-count--dot{min-width:8px;width:8px;height:8px;padding:0}.tvo-pill{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-sm);border:0;font-size:12px;line-height:16px;font-weight:500;white-space:nowrap}.tvo-pill .tvo-ico{width:12px;height:12px;stroke-width:2.25}.tvo-pill--success{background:rgb(var(--tvo-success-bg));color:rgb(var(--tvo-success-fg));border-color:rgb(var(--tvo-success-border))}.tvo-pill--warning{background:rgb(var(--tvo-warning-bg));color:rgb(var(--tvo-warning-fg));border-color:rgb(var(--tvo-warning-border))}.tvo-pill--danger{background:rgb(var(--tvo-danger-bg));color:rgb(var(--tvo-danger-fg));border-color:rgb(var(--tvo-danger-border))}.tvo-pill--info{background:rgb(var(--tvo-info-bg));color:rgb(var(--tvo-info-fg));border-color:rgb(var(--tvo-info-border))}.tvo-pill--neutral{background:rgb(var(--tvo-neutral-bg));color:rgb(var(--tvo-neutral-fg));border-color:rgb(var(--tvo-neutral-border))}.tvo-area{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;white-space:nowrap}.tvo-area:before{content:"";width:8px;height:8px;border-radius:2px;background:currentColor}.tvo-area--proto{background:rgb(var(--tvo-area-proto-soft));color:rgb(var(--tvo-area-proto-text))}.tvo-area--model{background:rgb(var(--tvo-area-model-soft));color:rgb(var(--tvo-area-model-text))}.tvo-area--cast{background:rgb(var(--tvo-area-cast-soft));color:rgb(var(--tvo-area-cast-text))}.tvo-area--finish{background:rgb(var(--tvo-area-finish-soft));color:rgb(var(--tvo-area-finish-text))}.tvo-area--paint{background:rgb(var(--tvo-area-paint-soft));color:rgb(var(--tvo-area-paint-text))}.tvo-area--proto:before{background:rgb(var(--tvo-area-proto));border-radius:50%}.tvo-area--model:before{background:rgb(var(--tvo-area-model))}.tvo-area--cast:before{background:rgb(var(--tvo-area-cast));transform:rotate(45deg) scale(.85)}.tvo-area--finish:before{background:rgb(var(--tvo-area-finish));clip-path:polygon(50% 0,100% 100%,0 100%)}.tvo-area--paint:before{background:rgb(var(--tvo-area-paint));border-radius:50% 50% 2px 2px}.tvo-card{background:rgb(var(--tvo-surface-soft));border:0;border-radius:var(--radius-md)}.tvo-card__head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.tvo-card__head--flush{border-bottom:0;padding-bottom:0}.tvo-card__title{font-size:16px;line-height:24px;font-weight:600;margin:0}.tvo-card__meta{color:rgb(var(--tvo-muted));font-size:13px}.tvo-card__body{padding:var(--space-4) var(--space-5)}.tvo-card--interactive{cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.tvo-card--interactive:hover{background:rgb(var(--tvo-surface-strong))}.tvo-card.is-selected{box-shadow:0 0 0 2px rgb(var(--tvo-accent))}.tvo-spacer{flex:1}.tvo-kpi{background:rgb(var(--tvo-surface-soft));border:0;border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:4px;min-width:0}.tvo-kpi__label{font-size:13px;line-height:18px;color:rgb(var(--tvo-muted));display:flex;align-items:center;gap:6px}.tvo-kpi__value{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.02em;white-space:nowrap}.tvo-kpi__value small{font-size:14px;font-weight:500;color:rgb(var(--tvo-muted));margin-left:2px}.tvo-kpi__sub{line-height:16px;color:rgb(var(--tvo-muted));display:flex;gap:8px;flex-wrap:wrap}.tvo-delta,.tvo-kpi__sub{font-size:12px;align-items:center}.tvo-delta{display:inline-flex;gap:2px;font-weight:500;font-variant-numeric:tabular-nums}.tvo-delta--up{color:rgb(var(--tvo-success-fg))}.tvo-delta--down,.tvo-kpi--danger .tvo-kpi__value{color:rgb(var(--tvo-danger-fg))}.tvo-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.tvo-signature{border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);color:var(--sig-ink);background:rgb(var(--tvo-accent-soft));position:relative;overflow:hidden;--sig-ink:rgb(var(--tvo-brand-deepest));--sig-muted:color-mix(in oklab,rgb(var(--tvo-brand-deepest)) 72%,rgb(var(--tvo-accent-soft)))}.tvo-signature__eyebrow{font-size:12px;line-height:16px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--sig-muted);display:flex;gap:8px;align-items:center}.tvo-signature__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-6);margin-top:var(--space-4)}.tvo-signature__value{font-size:40px;line-height:46px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.03em;white-space:nowrap}.tvo-signature__value small{font-size:18px;font-weight:500}.tvo-signature__value--amber{color:rgb(var(--tvo-amber-text))}.tvo-signature__label{font-size:13px;color:var(--sig-muted)}.tvo-signature__foot{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid color-mix(in oklab,rgb(var(--tvo-brand-deepest)) 14%,transparent);display:flex;gap:8px;align-items:center;font-size:13px;color:var(--sig-ink)}.tvo-signature__live{position:absolute;top:var(--space-5);right:var(--space-6);display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--radius-full);background:rgb(var(--tvo-surface));font-size:12px;font-weight:500}.tvo-signature__live:before{content:"";width:6px;height:6px;border-radius:50%;background:rgb(var(--tvo-success-fg))}.dark .tvo-signature{--sig-ink:rgb(var(--tvo-ink));--sig-muted:rgb(var(--tvo-muted))}.dark .tvo-signature__foot{border-top-color:rgb(var(--tvo-hairline))}.tvo-signals{background:rgb(var(--tvo-surface-soft));border:0;border-radius:var(--radius-md);overflow:hidden}.tvo-signal{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);min-height:60px;cursor:pointer;transition:background-color var(--dur-fast) var(--ease)}.tvo-signal+.tvo-signal{border-top:1px solid rgb(var(--tvo-canvas))}.tvo-signal:hover{background:rgb(var(--tvo-surface-strong))}.tvo-signal__icon{width:36px;height:36px;border-radius:var(--radius-sm);display:grid;place-items:center;flex:none;background:rgb(var(--tvo-surface));color:rgb(var(--tvo-neutral-fg))}.tvo-signal--danger .tvo-signal__icon{color:rgb(var(--tvo-danger-fg))}.tvo-signal--warning .tvo-signal__icon{color:rgb(var(--tvo-warning-fg))}.tvo-signal--info .tvo-signal__icon{color:rgb(var(--tvo-info-fg))}.tvo-signal--accent .tvo-signal__icon{color:rgb(var(--tvo-accent-strong))}.tvo-signal__main{flex:1;min-width:0}.tvo-signal__title{font-weight:500}.tvo-signal__sub,.tvo-signal__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-signal__sub{font-size:13px;line-height:18px;color:rgb(var(--tvo-muted))}.tvo-signal__sub b{color:rgb(var(--tvo-ink));font-weight:500;font-variant-numeric:tabular-nums}.tvo-signal__chev{color:rgb(var(--tvo-muted))}.tvo-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-size:14px}.tvo-banner.tvo-banner{border-color:transparent}.tvo-banner--info{background:rgb(var(--tvo-info-bg));border-color:rgb(var(--tvo-info-border));color:rgb(var(--tvo-info-fg))}.tvo-banner--success{background:rgb(var(--tvo-success-bg));border-color:rgb(var(--tvo-success-border));color:rgb(var(--tvo-success-fg))}.tvo-banner--warning{background:rgb(var(--tvo-warning-bg));border-color:rgb(var(--tvo-warning-border));color:rgb(var(--tvo-warning-fg))}.tvo-banner--danger{background:rgb(var(--tvo-danger-bg));border-color:rgb(var(--tvo-danger-border));color:rgb(var(--tvo-danger-fg))}.tvo-banner--accent{background:rgb(var(--tvo-accent-soft));border-color:rgb(var(--tvo-accent));color:rgb(var(--tvo-accent-strong))}.tvo-banner__text{flex:1;min-width:0}.tvo-banner__text b{font-weight:500}.tvo-tablecard{background:rgb(var(--tvo-surface));border:0;border-radius:0;overflow:clip}.tvo-toolbar{display:flex;align-items:center;gap:var(--space-2);padding:0 0 var(--space-3);flex-wrap:wrap}.tvo-toolbar__summary{color:rgb(var(--tvo-muted));font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.tvo-toolbar__summary b{color:rgb(var(--tvo-ink));font-weight:500}.tvo-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:14px}.tvo-table td,.tvo-table th{padding:0 var(--space-3);height:var(--row-comfort);text-align:left;vertical-align:middle;border-bottom:1px solid rgb(var(--tvo-hairline));overflow:hidden}.tvo-table td:first-child,.tvo-table th:first-child{padding-left:var(--space-2)}.tvo-table td:last-child,.tvo-table th:last-child{padding-right:var(--space-2)}.tvo-table thead th{position:sticky;top:0;z-index:2;height:36px;background:rgb(var(--tvo-glass)/var(--tvo-glass-a));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));font-size:13px;line-height:18px;font-weight:400;color:rgb(var(--tvo-muted));white-space:nowrap;text-overflow:ellipsis}.tvo-table thead th.is-sorted{color:rgb(var(--tvo-ink))}.tvo-table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tvo-table .act{width:48px;text-align:right;padding-left:0}.tvo-table .chk{width:40px;padding-right:0}.tvo-table .exp{width:32px;padding-right:0;color:rgb(var(--tvo-muted))}.tvo-table tbody tr{transition:background-color var(--dur-fast) var(--ease)}.tvo-table tbody tr:hover td{background:rgb(var(--tvo-surface-soft))}.tvo-table tbody tr.is-selected td{background:rgb(var(--tvo-accent-soft))}.tvo-table tbody tr.is-attn td:first-child{box-shadow:inset 3px 0 0 rgb(var(--tvo-danger-fg))}.tvo-table tbody tr.is-open td{border-bottom-color:transparent;background:rgb(var(--tvo-surface-soft))}.tvo-table .detail td{background:rgb(var(--tvo-surface-soft));height:auto;padding-top:0;padding-bottom:var(--space-4)}.tvo-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-3) var(--space-6);padding:var(--space-3) var(--space-4);background:rgb(var(--tvo-surface));border:0;border-radius:var(--radius-sm)}.tvo-detail dt{font-size:12px;color:rgb(var(--tvo-muted))}.tvo-detail dd{margin:0;font-size:14px}.tvo-cell2{display:flex;flex-direction:column;min-width:0;line-height:18px}.tvo-cell2>:first-child{color:rgb(var(--tvo-ink))}.tvo-cell2>:first-child,.tvo-cell2>:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-cell2>:last-child{font-size:12px;line-height:16px;color:rgb(var(--tvo-muted))}.tvo-cell2.num{align-items:flex-end}.tvo-clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:18px;white-space:normal}.tvo-table tbody td:has(.tvo-cell2),.tvo-table tbody td:has(.tvo-clamp2){height:56px}.tvo-table tfoot td{position:sticky;bottom:0;background:rgb(var(--tvo-surface-soft));font-weight:600;border-bottom:0}.tvo-table .sticky-col{position:sticky;left:0;z-index:1;background:rgb(var(--tvo-surface));box-shadow:1px 0 0 rgb(var(--tvo-hairline))}.tvo-table--compact td,.tvo-table--compact th{height:var(--row-compact)}.tvo-table--compact tbody td:has(.tvo-cell2){height:44px}.tvo-dash{color:rgb(var(--tvo-subtle))}.tvo-table .tvo-check{vertical-align:middle}.tvo-rowact{display:inline-flex;gap:2px;opacity:0;transition:opacity var(--dur-fast) var(--ease)}.tvo-table tbody tr:focus-within .tvo-rowact,.tvo-table tbody tr:hover .tvo-rowact{opacity:1}@media (any-pointer:coarse),(hover:none){.tvo-rowact{opacity:1}}.tvo-table .tvo-skel{height:12px}.tvo-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);padding:var(--space-12) var(--space-6)}.tvo-empty__icon{width:48px;height:48px;border-radius:var(--radius-md);background:rgb(var(--tvo-surface-strong));border:0;display:grid;place-items:center;color:rgb(var(--tvo-muted));margin-bottom:var(--space-2)}.tvo-empty__title{font-size:16px;line-height:24px;font-weight:600}.tvo-empty__text{color:rgb(var(--tvo-muted));max-width:420px}.tvo-empty .tvo-btngroup{margin-top:var(--space-3)}.tvo-skel{display:block;border-radius:var(--radius-xs);background:linear-gradient(90deg,rgb(var(--tvo-surface-strong)) 0,rgb(var(--tvo-surface-soft)) 50%,rgb(var(--tvo-surface-strong)) 100%);background-size:200% 100%;animation:tvo-shimmer 1.4s linear infinite}@keyframes tvo-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.tvo-menu{min-width:200px;padding:4px;border-radius:var(--radius-md);background:rgb(var(--tvo-glass-strong)/var(--tvo-glass-strong-a));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:inset 0 0 0 1px rgb(var(--tvo-glass-edge)/var(--tvo-glass-edge-a)),0 0 0 1px rgb(var(--tvo-hairline)),var(--tvo-elev-3)}.tvo-menu__item{display:flex;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:rgb(var(--tvo-ink));cursor:pointer;font-size:14px}.tvo-menu__item.is-hover,.tvo-menu__item:hover{background:rgb(var(--tvo-accent-soft))}.tvo-menu__item .tvo-ico{color:rgb(var(--tvo-muted))}.tvo-menu__item--danger,.tvo-menu__item--danger .tvo-ico{color:rgb(var(--tvo-danger-fg))}.tvo-menu__item--danger:hover{background:rgb(var(--tvo-danger-bg))}.tvo-menu__sep{height:1px;background:rgb(var(--tvo-hairline));margin:4px 0}.tvo-menu__kbd{margin-left:auto}.tvo-tip{display:inline-block;max-width:280px;padding:6px 10px;border-radius:var(--radius-sm);background:rgb(var(--tvo-ink));color:rgb(var(--tvo-surface));font-size:12px;line-height:16px;box-shadow:var(--tvo-elev-3)}.tvo-toast{display:flex;align-items:flex-start;gap:var(--space-3);width:360px;max-width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:rgb(var(--tvo-glass-strong)/var(--tvo-glass-strong-a));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));box-shadow:inset 0 0 0 1px rgb(var(--tvo-glass-edge)/var(--tvo-glass-edge-a)),0 0 0 1px rgb(var(--tvo-hairline)),var(--tvo-elev-3)}.tvo-toast__icon{margin-top:2px}.tvo-toast--success .tvo-toast__icon{color:rgb(var(--tvo-success-fg))}.tvo-toast--danger .tvo-toast__icon{color:rgb(var(--tvo-danger-fg))}.tvo-toast--info .tvo-toast__icon{color:rgb(var(--tvo-info-fg))}.tvo-toast__title{font-weight:500}.tvo-toast__text{font-size:13px;line-height:18px;color:rgb(var(--tvo-muted))}.tvo-toast__main{flex:1;min-width:0}.tvo-scrim{background:rgb(var(--tvo-scrim)/var(--tvo-scrim-a))}.tvo-modal{width:560px;max-width:calc(100% - 32px);border-radius:var(--radius-lg);background:rgb(var(--tvo-glass-strong)/var(--tvo-glass-strong-a));-webkit-backdrop-filter:blur(var(--glass-blur-strong)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur-strong)) saturate(var(--glass-saturate));box-shadow:inset 0 0 0 1px rgb(var(--tvo-glass-edge)/var(--tvo-glass-edge-a)),var(--tvo-elev-4);overflow:hidden}.tvo-modal__head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-5) var(--space-6) var(--space-3)}.tvo-modal__title{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.01em;margin:0}.tvo-modal__sub{color:rgb(var(--tvo-muted));font-size:13px}.tvo-modal__body{padding:var(--space-3) var(--space-6) var(--space-5);display:grid;gap:var(--space-4)}.tvo-modal__body .tvo-form-surface{background:rgb(var(--tvo-surface));border:0;border-radius:var(--radius-md);padding:var(--space-4);display:grid;gap:var(--space-4)}.tvo-modal__foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:0 var(--space-6) var(--space-5)}.tvo-sheet{width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:rgb(var(--tvo-glass-strong)/var(--tvo-glass-strong-a));-webkit-backdrop-filter:blur(var(--glass-blur-strong)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur-strong)) saturate(var(--glass-saturate));box-shadow:inset 0 1px 0 rgb(var(--tvo-glass-edge)/var(--tvo-glass-edge-a)),var(--tvo-elev-4);padding:8px var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom))}.tvo-sheet__grip{width:36px;height:4px;border-radius:2px;background:rgb(var(--tvo-control-border));margin:0 auto var(--space-3)}.tvo-sheet__title{font-size:16px;font-weight:500;margin:0 0 var(--space-3)}.tvo-sidebar{overflow:hidden;width:var(--sidebar-w);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border-radius:0;background:rgb(var(--tvo-surface-soft));transition:width var(--dur-slow) var(--ease)}.tvo-sidebar__brand{display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-2)}.tvo-sidebar__brand img{height:32px;width:auto}.tvo-nav{display:flex;flex-direction:column;gap:2px;min-height:0;overflow-y:auto;scrollbar-width:thin}.tvo-sidebar--collapsed .tvo-nav{align-items:center}.tvo-nav__group{margin-top:var(--space-2);height:24px;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--tvo-info-fg))}.tvo-nav__group,.tvo-nav__item{padding:0 var(--space-3);display:flex;align-items:center}.tvo-nav__item{flex:none;gap:var(--space-3);height:32px;border-radius:var(--radius-sm);color:rgb(var(--tvo-body));cursor:pointer;white-space:nowrap;overflow:hidden;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.tvo-nav__item .tvo-ico{width:18px;height:18px;color:rgb(var(--tvo-muted))}.tvo-nav__item.is-active,.tvo-nav__item:hover{background:rgb(var(--tvo-surface-strong));color:rgb(var(--tvo-ink))}.tvo-nav__item.is-active{font-weight:500}.tvo-nav__item.is-active .tvo-ico{color:rgb(var(--tvo-ink))}.tvo-nav__item .tvo-count{margin-left:auto}.tvo-sidebar--collapsed{width:var(--sidebar-w-collapsed);align-items:center}.tvo-sidebar--collapsed .tvo-nav__item{width:44px;justify-content:center;padding:0;position:relative}.tvo-sidebar--collapsed .tvo-contour__name,.tvo-sidebar--collapsed .tvo-nav__group,.tvo-sidebar--collapsed .tvo-nav__item span{display:none}.tvo-sidebar--collapsed .tvo-nav__item .tvo-count{position:absolute;top:4px;right:4px;min-width:8px;width:8px;height:8px;padding:0;font-size:0}.tvo-sidebar--collapsed .tvo-nav__sep{width:24px;height:1px;background:rgb(var(--tvo-hairline));margin:4px auto}.tvo-nav__sep{height:1px;background:rgb(var(--tvo-hairline));margin:4px var(--space-2)}.tvo-contour{display:flex;gap:2px;padding:2px;border-radius:var(--radius-md);background:rgb(var(--tvo-surface-strong))}.dark .tvo-contour__btn.is-active{background:rgb(var(--tvo-surface-soft))}.tvo-contour__btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;height:32px;border:0;border-radius:8px;background:transparent;color:rgb(var(--tvo-body));font:inherit;font-size:13px;font-weight:500;cursor:pointer}.tvo-contour__btn:hover{color:rgb(var(--tvo-ink))}.tvo-contour__btn.is-active{background:rgb(var(--tvo-surface-raised));color:rgb(var(--tvo-ink));box-shadow:0 1px 2px rgba(0,0,0,.08)}.tvo-contour__btn.is-active .tvo-ico{color:rgb(var(--tvo-accent))}.tvo-sidebar:not(.tvo-sidebar--collapsed) .tvo-contour__btn .tvo-ico{display:none}.tvo-sidebar--collapsed .tvo-contour{flex-direction:column}.tvo-sidebar--collapsed .tvo-contour__btn{width:40px;flex:none}.tvo-user{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md)}.tvo-user__name{font-weight:500;font-size:13px;line-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-user__role{font-size:12px;line-height:16px;color:rgb(var(--tvo-muted))}.tvo-avatar{width:32px;height:32px;border-radius:var(--radius-full);display:inline-grid;place-items:center;flex:none;background:rgb(var(--tvo-accent-soft));color:rgb(var(--tvo-accent-strong));font-size:12px;font-weight:600;letter-spacing:.02em;position:relative}.tvo-avatar--sm{width:24px;height:24px;font-size:10px}.tvo-avatar--lg{width:40px;height:40px;font-size:14px}.tvo-avatar--neutral{background:rgb(var(--tvo-neutral-bg));color:rgb(var(--tvo-neutral-fg));box-shadow:inset 0 0 0 1px rgb(var(--tvo-neutral-border))}.tvo-avatar--amber{background:rgb(var(--tvo-amber-soft));color:rgb(var(--tvo-amber-text))}.tvo-avatar.is-online:after{content:"";position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:rgb(var(--tvo-success-fg));box-shadow:0 0 0 2px rgb(var(--tvo-surface))}.tvo-avatars{display:inline-flex}.tvo-avatars .tvo-avatar{box-shadow:0 0 0 2px rgb(var(--tvo-surface))}.tvo-avatars .tvo-avatar+.tvo-avatar{margin-left:-6px}.tvo-tabbar{display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-radius:0}.tvo-tabbar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:44px;color:rgb(var(--tvo-muted));font-size:11px;line-height:14px;font-weight:500;position:relative}.tvo-tabbar__item .tvo-ico{width:22px;height:22px}.tvo-tabbar__item.is-active{color:rgb(var(--tvo-accent-strong))}.tvo-tabbar__item .tvo-count{position:absolute;top:6px;left:calc(50% + 6px);height:16px;min-width:16px;font-size:10px;padding:0 4px}.tvo-pagehead{display:flex;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}.tvo-pagehead__text{flex:1;min-width:240px}.tvo-pagehead__title{font-size:32px;line-height:40px;font-weight:600;margin:0;letter-spacing:-.02em}.tvo-pagehead__sub{color:rgb(var(--tvo-muted));font-size:14px;margin:2px 0 0}.tvo-load{display:grid;gap:6px}.tvo-load__head{display:flex;align-items:baseline;gap:var(--space-2)}.tvo-load__name{font-weight:500}.tvo-load__pct{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums}.tvo-load__track{height:8px;border-radius:var(--radius-xs);background:rgb(var(--tvo-surface-strong));position:relative;overflow:hidden}.tvo-load__fill{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-xs)}.tvo-load__over{position:absolute;inset:0 0 0 auto;background:repeating-linear-gradient(135deg,rgb(var(--tvo-danger-fg)) 0 4px,transparent 4px 7px)}.tvo-load__meta{display:flex;gap:var(--space-3);font-size:12px;color:rgb(var(--tvo-muted));font-variant-numeric:tabular-nums}.tvo-load.is-over .tvo-load__pct{color:rgb(var(--tvo-danger-fg))}.tvo-load--proto .tvo-load__fill{background:rgb(var(--tvo-area-proto))}.tvo-load--model .tvo-load__fill{background:rgb(var(--tvo-area-model))}.tvo-load--cast .tvo-load__fill{background:rgb(var(--tvo-area-cast))}.tvo-load--finish .tvo-load__fill{background:rgb(var(--tvo-area-finish))}.tvo-load--paint .tvo-load__fill{background:rgb(var(--tvo-area-paint))}.tvo-rowcard{display:grid;grid-template-columns:1fr auto;gap:4px var(--space-3);padding:var(--space-3) var(--space-4);background:rgb(var(--tvo-surface-soft));border-bottom:1px solid rgb(var(--tvo-canvas));min-height:64px}.tvo-rowcard__title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-rowcard__sum{font-weight:500;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tvo-rowcard__meta{font-size:13px;line-height:18px;color:rgb(var(--tvo-muted));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-rowcard__status{justify-self:end}.tvo-list{border:0;border-radius:var(--radius-md);overflow:hidden}.tvo-list .tvo-rowcard:last-child{border-bottom:0}.tvo-h2{margin:0;font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.01em}.tvo-spark{display:block;width:100%;height:28px;margin-top:6px}.tvo-spark path{fill:none;stroke:rgb(var(--tvo-chart-1));stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.tvo-spark--down path{stroke:rgb(var(--tvo-danger-fg))}.sidebar-nav.sidebar-tvo{width:var(--sidebar-w);height:100vh;top:0;margin:0;border-radius:0;box-shadow:none;background:rgb(var(--tvo-surface-soft));padding:var(--space-3);gap:var(--space-3);transition:width var(--dur-slow) var(--ease)}.sidebar-nav.sidebar-tvo[data-collapsed]{width:var(--sidebar-w-collapsed)}.sidebar-tvo .sidebar-logo{padding:0 var(--space-2);height:40px;flex:none}.sidebar-tvo .sidebar-logo-full{height:32px;filter:none}.sidebar-tvo .sidebar-logo-icon{height:28px;filter:none}.sidebar-tvo .tvo-logo-text{display:none;font-size:16px;line-height:24px;font-weight:600;color:rgb(var(--tvo-ink));margin-right:auto}.dark .sidebar-tvo .sidebar-logo-full,.dark .sidebar-tvo .sidebar-logo-icon{display:none!important}.dark .sidebar-tvo .tvo-logo-text{display:block}.sidebar-tvo .sidebar-toggle{color:rgb(var(--tvo-muted));border-radius:var(--radius-sm);padding:6px}.sidebar-tvo .sidebar-toggle:hover{background:rgb(var(--tvo-surface-strong));color:rgb(var(--tvo-ink))}.sidebar-nav.sidebar-tvo[data-collapsed] .sidebar-logo{flex-direction:column;gap:var(--space-2);height:auto}.sidebar-contours-tvo{flex:none}.sidebar-tvo .tvo-contour__btn{text-decoration:none}.sidebar-tvo:not([data-collapsed]) .tvo-contour__btn .tvo-ico{display:none}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour{flex-direction:column;align-items:center}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour__btn{width:40px;flex:none}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour__name{display:none}.sidebar-tvo .sidebar-links{padding:0;gap:0;scrollbar-width:thin}.sidebar-tvo .sidebar-section{gap:2px}.sidebar-tvo .sidebar-subheader{padding:var(--space-2) var(--space-3) 2px;font-size:11px;font-weight:500;letter-spacing:.06em;color:rgb(var(--tvo-info-fg))}.sidebar-tvo .tvo-nav__item{text-decoration:none;font-size:14px;line-height:20px}.sidebar-tvo .tvo-nav__label{overflow:hidden;text-overflow:ellipsis}.sidebar-tvo .tvo-nav__item .tvo-count{margin-left:auto}.sidebar-nav.sidebar-tvo[data-collapsed] .sidebar-links,.sidebar-nav.sidebar-tvo[data-collapsed] .sidebar-section{align-items:center}.sidebar-nav.sidebar-tvo[data-collapsed] .sidebar-subheader,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__group,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__label{display:none}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__item{width:44px;justify-content:center;padding:0;position:relative}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__item .tvo-count{position:absolute;top:4px;right:4px;min-width:8px;width:8px;height:8px;padding:0;font-size:0}.sidebar-nav.sidebar-tvo[data-collapsed] .sidebar-section+.sidebar-section,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__group+.sidebar-section-items{border-top:1px solid rgb(var(--tvo-hairline));padding-top:4px;margin-top:4px}.sidebar-tvo .tvo-user{flex:none;margin-top:auto}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-user{flex-direction:column;padding:var(--space-2) 0}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-user__text{display:none}@media (max-width:767px){.sidebar-nav.sidebar-tvo{padding-top:var(--space-4)}.sidebar-nav.sidebar-tvo .tvo-nav__item{height:44px}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__item{width:auto;justify-content:flex-start;padding:0 var(--space-3)}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour__name,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__group,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-nav__label,.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-user__text{display:revert}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour{flex-direction:row}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-contour__btn{width:auto;flex:1}.sidebar-nav.sidebar-tvo[data-collapsed] .tvo-user{flex-direction:row}}.tvo-factory.tvo-shell,body.factory-native-shell.tvo-factory{background-color:rgb(var(--tvo-canvas))}@media (max-width:767px){.tvo-ds .tvo-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px}.tvo-ds .tvo-chips::-webkit-scrollbar{display:none}.tvo-ds .tvo-chip{flex:none}}.tvo-ds .home-todo{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.tvo-ds .home-todo__row{display:grid;grid-template-columns:84px 36px minmax(0,1fr) auto 124px;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);min-height:64px;background:rgb(var(--tvo-canvas))}.tvo-ds .home-todo__row:first-child{border-radius:var(--radius-md) var(--radius-md) 0 0}.tvo-ds .home-todo__row:last-child{border-radius:0 0 var(--radius-md) var(--radius-md)}.tvo-ds .home-todo__row:only-child{border-radius:var(--radius-md)}.tvo-ds .home-todo__row+.home-todo__row{border-top:1px solid rgb(var(--tvo-surface-soft))}.tvo-ds .home-todo__tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:16px;font-weight:500;white-space:nowrap}.tvo-ds .home-todo__tag i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.tvo-ds .home-todo__icon{width:36px;height:36px;border-radius:var(--radius-sm);display:grid;place-items:center;background:rgb(var(--tvo-surface-soft))}.tvo-ds .home-todo__main{min-width:0;display:flex;flex-direction:column;gap:2px}.tvo-ds .home-todo__title{display:flex;align-items:center;gap:var(--space-2);font-weight:500;color:rgb(var(--tvo-ink));min-width:0}.tvo-ds .home-todo__title>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-ds .home-todo__title>.tvo-count{flex:none}.tvo-ds .home-todo__sub{font-size:13px;line-height:18px;color:rgb(var(--tvo-muted));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvo-ds .home-todo__sum{min-width:72px;font-weight:500;text-align:right;white-space:nowrap;color:rgb(var(--tvo-ink))}.tvo-ds .home-todo__act .tvo-btn{text-decoration:none}@media (max-width:767px){.tvo-ds .home-todo__row{grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"icon tag sum" "icon main main" "act act act";row-gap:var(--space-2)}.tvo-ds .home-todo__icon{grid-area:icon;align-self:start}.tvo-ds .home-todo__tag{grid-area:tag}.tvo-ds .home-todo__sum{grid-area:sum}.tvo-ds .home-todo__main{grid-area:main}.tvo-ds .home-todo__act{grid-area:act}.tvo-ds .home-todo__act .tvo-btn{height:var(--control-lg)}.tvo-ds .home-todo__sub,.tvo-ds .home-todo__title>span:first-child{white-space:normal}}.tvo-ds .home-kpi{display:flex;align-items:baseline;gap:6px}.tvo-ds .home-kpi__v{font-size:28px;line-height:34px;font-weight:600;letter-spacing:-.02em;color:rgb(var(--tvo-ink))}.tvo-ds .home-kpi__u{font-size:14px;font-weight:500;color:rgb(var(--tvo-muted))}.tvo-ds .home-kpi__l{font-size:13px;line-height:18px;color:rgb(var(--tvo-body))}.tvo-ds .home-kpi__s{font-size:12px;line-height:16px;color:rgb(var(--tvo-muted));margin-top:2px}.tvo-ds.tvo-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:var(--space-4) var(--space-2)}.tvo-ds .tvo-metrics__col{display:flex;flex-direction:column;gap:6px;padding:var(--space-1) var(--space-4);min-width:0;text-decoration:none;color:inherit;border-radius:var(--radius-sm);transition:background-color var(--dur-fast) var(--ease)}.tvo-ds .tvo-metrics__col+.tvo-metrics__col{box-shadow:-1px 0 0 rgb(var(--tvo-hairline))}.tvo-ds .tvo-metrics__col:is(a,button):hover{background:rgb(var(--tvo-surface-strong))}.tvo-ds .tvo-metrics__h{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:13px;color:rgb(var(--tvo-body))}.tvo-ds .tvo-metrics__chip{font-size:11px;line-height:16px;padding:0 6px;border-radius:var(--radius-full);background:rgb(var(--tvo-surface-strong));color:rgb(var(--tvo-muted));white-space:nowrap}.tvo-ds .tvo-metrics__v{font-size:24px;line-height:32px;font-weight:600;letter-spacing:-.02em;color:rgb(var(--tvo-ink));white-space:nowrap}.tvo-ds .tvo-metrics__v.text-tvo-danger-fg{color:rgb(var(--tvo-danger-fg))}.tvo-ds .tvo-metrics__v small{font-size:13px;font-weight:500;color:rgb(var(--tvo-muted));letter-spacing:0}.tvo-ds .tvo-metrics__d{display:inline-flex;align-items:center;gap:4px;font-size:12px;line-height:16px;font-weight:500;white-space:nowrap}.tvo-ds .tvo-metrics__spark{height:24px;margin:2px 0 0}.tvo-ds .tvo-metrics__s{font-size:12px;line-height:16px;color:rgb(var(--tvo-muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tvo-ds .tvo-metrics-foot{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-6);border-top:1px solid rgb(var(--tvo-hairline));font-size:13px;color:rgb(var(--tvo-muted));font-variant-numeric:tabular-nums}.tvo-ds .tvo-metrics-foot b{font-weight:500;color:rgb(var(--tvo-ink))}.tvo-ds .tvo-metrics-foot .tvo-inputwrap--select .tvo-input{height:28px;font-size:13px;padding-left:8px}.tvo-ds .tvo-metrics__empty{font-size:13px;color:rgb(var(--tvo-muted));padding:6px 0}@media (max-width:767px){.tvo-ds.tvo-metrics{grid-template-columns:1fr 1fr;row-gap:var(--space-4)}.tvo-ds .tvo-metrics__col+.tvo-metrics__col{box-shadow:none}}.tvo-ds .home-stages{display:flex;gap:3px}.tvo-ds .home-stages__col{flex-basis:0;min-width:96px;display:flex;flex-direction:column;gap:2px;text-decoration:none;color:inherit}.tvo-ds .home-stages__col:hover .home-stages__l{color:rgb(var(--tvo-ink))}.tvo-ds .home-stages__seg{height:10px;margin-bottom:var(--space-2)}.tvo-ds .home-stages__col:first-child .home-stages__seg{border-radius:var(--radius-xs) 0 0 var(--radius-xs)}.tvo-ds .home-stages__col:last-child .home-stages__seg{border-radius:0 var(--radius-xs) var(--radius-xs) 0}@media (max-width:767px){.tvo-ds .home-stages{flex-wrap:wrap;row-gap:var(--space-3)}.tvo-ds .home-stages__col{min-width:calc(50% - 2px)}}.tvo-ds .home-stages__l{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:rgb(var(--tvo-muted))}.tvo-ds .home-stages__l i{width:8px;height:8px;border-radius:2px;flex:none}.tvo-ds .home-stages__n{font-weight:600;color:rgb(var(--tvo-ink))}.tvo-ds.home-pulse{background:rgb(var(--tvo-accent-soft));--sig-ink:rgb(var(--tvo-brand-deepest));--sig-muted:color-mix(in oklab,rgb(var(--tvo-brand-deepest)) 72%,rgb(var(--tvo-accent-soft)))}.dark .tvo-ds.home-pulse{--sig-ink:rgb(var(--tvo-ink));--sig-muted:rgb(var(--tvo-muted))}.tvo-ds.home-pulse .home-kpi__v,.tvo-ds.home-pulse .tvo-card__title{color:var(--sig-ink)}.tvo-ds.home-pulse .home-kpi__s,.tvo-ds.home-pulse .home-kpi__u,.tvo-ds.home-pulse .tvo-card__title .text-tvo-muted{color:var(--sig-muted)}.tvo-ds.home-pulse .home-kpi__l{color:var(--sig-ink)}.tvo-ds.home-pulse .home-pulse__amber{color:rgb(var(--tvo-amber-text))}.tvo-ds.home-pulse .tvo-skel{background:color-mix(in oklab,rgb(var(--tvo-brand-deepest)) 10%,transparent);animation:none}.tvo-factory :is(.card,.card-hover,.card-flat,.card-flat-hover){border-radius:14px}.tvo-factory .card-muted{border-radius:10px}.tvo-factory :is(.btn-primary,.btn-secondary,.btn-danger,.btn-ghost,.input-field){border-radius:10px}.tvo-ds .tvo-chatrow{position:relative}.tvo-ds .tvo-chatrow:after{content:"";position:absolute;left:60px;right:8px;bottom:0;height:1px;background:rgb(var(--tvo-control-border)/.5)}.tvo-ds .tvo-chatlist>:last-child .tvo-chatrow:after,.tvo-ds .tvo-chatrow:is(:hover,.is-active):after{display:none}.tvo-ds .tvo-chatrow.is-active{background:rgb(var(--tvo-accent-soft))}.tvo-ds [data-collapsed]>.tvo-chatlist>:first-child .tvo-chatrow{background:rgb(var(--tvo-surface));box-shadow:inset 0 0 0 1px rgb(var(--tvo-border-dark))}.tvo-ds [data-collapsed]>.tvo-chatlist>:first-child .tvo-chatrow:after{display:none}.tvo-factory .chat-bubble-in{background-color:rgb(var(--tvo-surface-strong));border-color:transparent}.tvo-factory .chat-day-chip{background-color:rgb(var(--tvo-surface-raised)/.92);color:rgb(var(--tvo-muted-ds));box-shadow:0 0 0 1px rgb(var(--tvo-hairline-ds)),0 1px 2px rgba(0,0,0,.04)}.home-todo-toggle{display:none}@media (max-width:767px){.home-todo-panel{height:auto}.home-todo-panel .home-todo-desktop-head{display:none}.home-todo-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:16px;text-align:left;color:rgb(var(--tvo-ink))}.home-todo-toggle__title{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:600}.home-todo-toggle__summary{margin-left:auto;font-size:14px;color:rgb(var(--tvo-body))}.home-todo-beacon{width:8px;height:8px;border-radius:50%;background:rgb(var(--tvo-accent-strong));box-shadow:0 0 0 4px rgb(var(--tvo-accent-strong)/.1)}.home-todo-toggle__chevron{flex-shrink:0;transition:transform .18s ease}.home-todo-panel--open .home-todo-toggle__chevron{transform:rotate(180deg)}.home-todo-panel:not(.home-todo-panel--open) .home-todo-content{display:none}.factory-glass-bar{position:fixed;z-index:40;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid rgb(var(--tvo-glass-edge)/.14);border-radius:28px;background:rgb(var(--tvo-glass-strong)/.78);box-shadow:var(--tvo-elev-3),inset 0 1px 0 rgb(var(--tvo-glass)/.65);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);transition:transform .2s ease,opacity .2s ease}.factory-glass-bar__items{display:flex;align-items:stretch;gap:2px;height:64px;padding:5px}.factory-glass-tab{display:flex;position:relative;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:23px;transition:background-color .18s ease}.factory-glass-tab--active{background:rgb(var(--tvo-accent-strong)/.1)}.factory-glass-bar--hidden{transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)));opacity:0;pointer-events:none}body.factory-native-shell main{padding-bottom:calc(100px + env(safe-area-inset-bottom))!important}body.factory-native-shell .cast-nc-fab{bottom:calc(100px + env(safe-area-inset-bottom))!important}}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.factory-glass-bar{background:rgb(var(--tvo-glass-fallback))}}@media (prefers-reduced-transparency:reduce){.factory-glass-bar{background:rgb(var(--tvo-glass-fallback));-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-reduced-motion:reduce){.factory-glass-bar,.factory-glass-tab,.home-todo-toggle__chevron{transition:none}}@media (max-width:767px){.cx-home .cx-feedback-panel .cx-attn-h{align-items:flex-start;gap:12px}.cx-home .cx-feedback-panel .cx-ah-note{display:block;margin-top:4px;font-size:12px;font-weight:400}.cx-home .cx-feedback-panel .cx-ah-more{min-height:44px;display:inline-flex;align-items:center}.cx-home .cx-feedback-panel .cx-fb-list{padding:8px 16px 16px;gap:0}.cx-home .cx-fb-list .cx-ccard.cx-fb{flex-direction:column;align-items:stretch;gap:16px;background:transparent;padding:12px 0 0;border-radius:0;box-shadow:none}.cx-home .cx-fb-list .cx-ccard.cx-fb+.cx-fb{margin-top:20px;padding-top:20px;border-top:1px solid var(--cx-hair)}.cx-home .cx-fb .cx-fb-badges{gap:8px}.cx-home .cx-fb .cx-fb-title{flex:1 0 100%;margin-top:4px;font-size:16px;line-height:1.4;white-space:normal;overflow:visible;overflow-wrap:anywhere}.cx-home .cx-fb .cx-fb-desc{display:block;margin-top:8px;font-size:14px;line-height:1.5;overflow:visible;overflow-wrap:anywhere;white-space:pre-line;-webkit-line-clamp:unset}.cx-home .cx-fb .cx-fb-meta{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:12px;font-size:12px;line-height:1.5}.cx-home .cx-fb .cx-fb-bx{min-height:44px;font-size:14px}.cx-home .cx-fb .cx-fb-acts{width:100%;gap:8px}.cx-home .cx-fb .cx-fb-acts-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.cx-home .cx-fb .cx-fb-acts .cx-abtn{min-height:44px;width:100%;font-size:14px}}.tvo-mobile-select-all{padding:4px 16px;font-size:14px;border-bottom:1px solid rgb(var(--tvo-hairline))}.tvo-rowcard--selectable{grid-template-columns:44px minmax(0,1fr) auto;-moz-column-gap:8px;column-gap:8px;padding-left:8px}.tvo-rowcard--selectable .tvo-rowcard__select{grid-column:1;grid-row:1/3;align-self:center}.tvo-rowcard--selectable .tvo-rowcard__meta,.tvo-rowcard--selectable .tvo-rowcard__title{grid-column:2}.tvo-rowcard--selectable .tvo-rowcard__status,.tvo-rowcard--selectable .tvo-rowcard__sum{grid-column:3}.tvo-rowcard--selectable.is-selected{background:rgb(var(--tvo-accent-soft))}