@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:oklch(38% .008 265) var(--surface-sunken);--surface-canvas:oklch(17% .008 265);--surface-sunken:oklch(19% .008 265);--surface-panel:oklch(21.5% .008 265);--surface-raised:oklch(25.5% .008 265);--surface-popover:oklch(30% .008 265);--surface-input:oklch(15.5% .008 265);--surface-code:oklch(14% .008 265);--surface-track-prop:oklch(20% .008 265);--wash-hover:oklch(100% 0 0/.045);--wash-active:oklch(100% 0 0/.07);--surface-raised-hover:oklch(28.5% .008 265);--surface-raised-active:oklch(30% .008 265);--accent:oklch(68% .15 250);--accent-strong:oklch(55% .17 255);--accent-strong-hover:oklch(60% .17 255);--accent-strong-active:oklch(63% .17 255);--accent-tint:color-mix(in oklab, var(--accent) 14%, transparent);--edge:oklch(100% 0 0/.06);--edge-strong:oklch(100% 0 0/.12);--edge-faint:oklch(100% 0 0/.04);--edge-row:oklch(18.5% .008 265);--bg-app:var(--surface-canvas);--bg-panel:var(--surface-panel);--bg-panel-darker:var(--surface-sunken);--bg-header:var(--surface-raised);--bg-input:var(--surface-input);--bg-hover:var(--wash-hover);--bg-active:var(--wash-active);--bg-selected:color-mix(in oklab, var(--accent) 13%, var(--surface-panel));--bg-row:oklch(22.5% .008 265);--bg-row-alt:oklch(24.5% .008 265);--bg-track:oklch(27% .008 265);--border:var(--edge);--border-light:var(--edge-strong);--text:oklch(86% .005 265);--text-dim:oklch(68% .008 265);--text-bright:oklch(96% .003 265);--text-disabled:oklch(40% .008 265);--danger:#e5484d;--success:#3ea968;--success-bright:#7fd4a3;--warning:#e2c26a;--hot-text:oklch(75% .13 250);--cti:oklch(72% .14 235);--keyframe:#f5d431;--keyframe-linear-fill:#d9d9d9;--keyframe-linear-border:#666;--selection-outline:var(--accent);--selection-outline-strong:oklch(97% 0 0);--label-head-tint:#8a6f3b;--work-area-fill:oklch(62% .03 250/.35);--work-area-fill-hover:oklch(62% .03 250/.55);--work-area-handle:oklch(72% .05 250);--panel-radius:8px;--radius-control:5px;--radius-popover:10px;--gutter:6px;--layout-left-w:290px;--layout-right-w:332px;--layout-ai-w:320px;--layout-timeline-h:300px;--text-11:11px;--text-12:12px;--text-13:13px;--text-15:15px;--text-20:20px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--focus-ring:var(--accent);--shadow-popover:0 8px 24px #0000008c;--ui-scale:1;--z-menubar:200;--z-flyout:400;--z-pickwhip:1000;--z-modal:1000;--z-menu:1010;--z-submenu:1030;--z-popover:1050;--z-toast:1100;--z-tooltip:1150;--z-export-gate:1200;--dur-fast:80ms;--dur-reveal:.12s;--dur-overlay:.2s;--ease-out:cubic-bezier(.2, 0, 0, 1);--font-ui:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;font-size:12px}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-reveal:0s;--dur-overlay:0s}}*{box-sizing:border-box;-webkit-user-select:none;user-select:none}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{background:var(--bg-app);color:var(--text);font-family:var(--font-ui);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;font-size:12px}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px}input,textarea,[contenteditable=true],.toast-message{-webkit-user-select:text;user-select:text}button{background:var(--bg-header);color:var(--text);border:1px solid var(--border-light);border-radius:var(--radius-control);cursor:pointer;padding:3px 10px;font-family:inherit;font-size:12px}button:hover{background:var(--surface-raised-hover)}button:active{background:var(--surface-raised-active)}button.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}button.primary:hover{background:var(--accent-strong-hover);border-color:var(--accent-strong-hover)}button.primary:active{background:var(--accent-strong-active);border-color:var(--accent-strong-active)}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}button.danger:hover{background:color-mix(in oklab, var(--danger) 85%, white 15%);border-color:color-mix(in oklab, var(--danger) 85%, white 15%)}button.danger:active{background:color-mix(in oklab, var(--danger) 75%, white 25%);border-color:color-mix(in oklab, var(--danger) 75%, white 25%)}button:disabled,button.icon-btn:disabled{opacity:.45;cursor:default;pointer-events:none}button.icon-btn{color:var(--text-dim);background:0 0;border:none;padding:2px 6px}button.icon-btn:hover{color:var(--text-bright);background:var(--bg-hover)}button.icon-btn.on{color:var(--text-bright)}.brush-grid{grid-template-columns:repeat(6,1fr);gap:4px;padding:6px;display:grid}.brush-thumb{border:1px solid var(--border-light);background:var(--bg-input);justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.brush-thumb.on{border-color:var(--accent);background:var(--bg-active)}.brush-thumb span{background:var(--text-bright);border-radius:50%;display:block}.paint-swatches{width:44px;height:34px;position:relative}.paint-swatch-bg,.paint-swatch-fg{position:absolute}.paint-swatch-bg{bottom:0;right:0}.paint-swatch-fg{box-shadow:0 0 0 2px var(--bg-panel);z-index:1;top:0;left:0}.paint-swatch-swap{border:1px solid var(--border-light);background:var(--bg-input);border-radius:50%;width:14px;height:14px;padding:0;font-size:9px;line-height:1;position:absolute;top:-2px;right:-2px}.vu-bar{flex-direction:column;gap:1px;width:8px;display:flex}.vu-seg{background:var(--bg-input);opacity:.35;border-radius:1px;height:4px;display:block}.vu-seg.on{opacity:1}.vu-seg.green.on{background:#4caf50}.vu-seg.yellow.on{background:#e0c341}.vu-seg.red.on{background:#c0392b}input[type=text],input[type=number],input:not([type]),textarea,select{background:var(--bg-input);color:var(--text-bright);border:1px solid var(--border-light);border-radius:var(--radius-control);outline:none;padding:2px 5px;font-family:inherit;font-size:12px}input:focus,textarea:focus,select:focus{border-color:var(--accent)}select{appearance:none;white-space:nowrap;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath d='M1.5 3l2.5 2.5L6.5 3' fill='none' stroke='%23a4a6ad' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 4px center;background-repeat:no-repeat;flex-shrink:0;padding-right:16px;overflow:hidden}input[type=color]{border:1px solid var(--border-light);cursor:pointer;background:0 0;width:22px;height:16px;padding:0}input[type=range],input[type=checkbox],input[type=radio]{accent-color:var(--accent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-panel-darker)}::-webkit-scrollbar-thumb{border:2px solid var(--bg-panel-darker);background:oklch(38% .008 265);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:oklch(45% .008 265)}::-webkit-scrollbar-corner{background:var(--bg-panel-darker)}.app{flex-direction:column;width:100%;height:100%;display:flex}.app-main{background:var(--bg-app);flex-direction:column;flex:1;gap:4px;min-height:0;padding:4px;display:flex}.app-top{flex:1;gap:4px;min-height:0;display:flex}.app-bottom{height:var(--layout-timeline-h,300px);flex:none;min-width:0;min-height:140px;display:flex}.panel{background:var(--bg-panel);border-radius:var(--panel-radius);border:1px solid var(--border);zoom:var(--ui-scale);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.panel-tabs{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);scrollbar-width:thin;flex:none;display:flex;overflow:auto hidden}.panel-tabs::-webkit-scrollbar{height:4px}.panel-tabs::-webkit-scrollbar-thumb{background:var(--edge-strong);border-radius:2px}.panel-tab{color:var(--text-dim);cursor:pointer;border-right:1px solid var(--border);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:5px 10px;font-size:11px;display:flex}.panel-tab.active{background:var(--bg-panel);color:var(--text-bright)}.panel-tab .close-x{color:var(--text-dim);font-size:10px}.panel-tab .close-x:hover{color:var(--text-bright)}.panel-tab .tab-lock{cursor:pointer;font-size:10px}.panel-body{flex:1;min-height:0;position:relative;overflow:auto}.panel.panel-focused{outline:1px solid var(--focus-ring);outline-offset:-1px}.rp-info-panel{flex:none;height:auto}.rp-tabbed-panel{min-height:220px}.preview-transport{position:relative}.preview-settings-btn{position:absolute;right:0}.preview-settings-btn.on{background:var(--wash-active);color:var(--text-bright)}.panel.panel-focused>.panel-tabs{background:var(--surface-raised)}.viewer-focus-wrap{flex:1;min-width:0;display:flex;position:relative}.viewer-focus-wrap.panel-focused,.app-bottom.panel-focused{outline:1px solid var(--focus-ring);outline-offset:-1px;border-radius:var(--panel-radius)}.splitter{z-index:5;flex:none;align-self:stretch;position:relative}.splitter-v{width:var(--gutter);margin:0 calc(var(--gutter) * -1);cursor:col-resize}.splitter-h{height:var(--gutter);margin:calc(var(--gutter) * -1) 0;cursor:row-resize}.splitter-flush{margin:0}.splitter:before{content:"";position:absolute}.splitter-v:before{inset:0 -2px}.splitter-h:before{inset:-2px 0}.splitter-flush:before{inset:0}.splitter:after{content:"";background:oklch(100% 0 0/.22);border-radius:2px;transition:background .12s,height .12s,width .12s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.splitter-v:after{width:2px;height:30px}.splitter-h:after{width:30px;height:2px}.splitter:hover:after,.splitter.dragging:after{background:var(--accent)}.splitter-v:hover:after,.splitter-v.dragging:after{height:100%}.splitter-h:hover:after,.splitter-h.dragging:after{width:100%}body.resizing-col,body.resizing-col *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.resizing-row,body.resizing-row *{cursor:row-resize!important;-webkit-user-select:none!important;user-select:none!important}.panel-tabs-wrap{flex-wrap:wrap;overflow-x:visible}.menubar{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);height:26px;z-index:var(--z-menubar);flex:none;align-items:center;padding:0 6px;display:flex;position:relative}.menubar .logo{color:var(--accent);letter-spacing:.5px;padding:0 10px 0 4px;font-size:12px;font-weight:700}.menu-item{position:relative}.menu-item>.menu-title{cursor:default;color:var(--text);border-radius:var(--radius-control);white-space:nowrap;padding:5px 9px;font-size:12px}.menu-item{flex:none}.menu-item.open>.menu-title,.menu-item>.menu-title:hover{background:var(--bg-hover);color:var(--text-bright)}.ai-hero-btn{color:#fff;border-radius:var(--radius-control);cursor:pointer;white-space:nowrap;background:var(--accent);border:none;flex:none;align-items:center;gap:5px;height:21px;margin-left:8px;padding:0 10px;font-size:12px;font-weight:600;transition:filter .12s,background .12s;display:inline-flex}.ai-hero-btn:hover{filter:brightness(1.08)}.ai-hero-btn:active{filter:brightness(.95)}.ai-hero-btn.active{background:color-mix(in srgb, var(--accent) 84%, #000);box-shadow:inset 0 0 0 1px #ffffff38}.ai-hero-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ai-hero-spark{opacity:.95;flex:none}.ai-hero-spark path{fill:currentColor}.ai-msg-actions{opacity:0;gap:2px;margin-top:3px;transition:opacity .1s;display:flex}.ai-msg:hover .ai-msg-actions,.ai-msg:focus-within .ai-msg-actions{opacity:1}.ai-msg-action{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:2px 6px;font-size:10px;line-height:1}.ai-msg-action:hover{color:var(--text-bright);background:var(--bg-hover)}.ai-msg-action:disabled{opacity:.4;cursor:default}@media (hover:none){.ai-msg-actions{opacity:1}}.ai-settings-gear{width:22px;height:22px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ai-settings-gear:hover{color:var(--text-bright);background:var(--bg-hover)}.ai-settings-gear svg{flex:none}.ai-settings-gear:disabled{opacity:.3;cursor:default}.ai-settings-gear:disabled:hover{color:var(--text-dim);background:0 0}.menu-dropdown{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);min-width:230px;box-shadow:var(--shadow-popover);z-index:var(--z-menu);zoom:var(--ui-scale);padding:4px 0;position:absolute;top:100%;left:0}.menu-entry{color:var(--text);cursor:default;white-space:nowrap;justify-content:space-between;gap:24px;padding:4px 14px;font-size:12px;display:flex}.menu-entry:hover:not(.disabled),.menu-entry.focused:not(.disabled){background:var(--accent-strong);color:#fff}.menu-entry.disabled{color:var(--text-disabled)}.menu-entry .shortcut{color:var(--text-dim);font-size:11px;font-family:var(--font-mono)}.menu-entry:hover:not(.disabled) .shortcut,.menu-entry.focused:not(.disabled) .shortcut{color:var(--text-bright)}.menu-separator{background:var(--border-light);height:1px;margin:4px 8px}.menu-entry.has-submenu{padding-right:20px}.menu-entry .submenu-arrow{opacity:.65;pointer-events:none;font-size:9px;position:absolute;right:6px}.menu-entry:hover:not(.disabled) .submenu-arrow,.menu-entry.focused:not(.disabled) .submenu-arrow{opacity:1;color:#fff}.menu-entry-main{align-items:center;gap:6px;min-width:0;display:flex}.menu-entry .menu-check{flex-shrink:0;width:14px;display:inline-block}.menu-submenu{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);min-width:220px;box-shadow:var(--shadow-popover);z-index:var(--z-submenu);padding:4px 0;position:absolute;top:-4px;left:100%}.toolbar{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:2px;height:30px;padding:2px 8px;display:flex}.tool-btn{width:28px;height:24px;color:var(--text-dim);border-radius:var(--radius-control);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:13px;display:flex}.tool-btn:hover{background:var(--bg-hover);color:var(--text-bright)}.tool-btn.active{background:var(--accent-strong);color:#fff}.toolbar-sep{background:var(--border-light);width:1px;height:18px;margin:0 6px}.toolbar .proj-name{color:var(--text-dim);margin-left:auto;font-size:11px}.tool-options-bar{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);height:26px;color:var(--text-dim);flex:none;align-items:center;gap:10px;padding:0 10px;font-size:11px;display:flex}.tool-options-bar label{white-space:nowrap;align-items:center;gap:4px;display:flex}.tool-options-bar input[type=color]{width:16px;height:14px}.tool-options-bar input[type=number]{width:44px}.tool-options-bar input:disabled,.tool-options-bar select:disabled,.tool-options-bar button:disabled{opacity:.45;cursor:not-allowed}.fill-rule-group button{border:1px solid var(--border-light);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:2px;padding:2px 5px;font-size:11px}.fill-rule-group button.active{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong)}.flyout-corner{box-sizing:border-box;cursor:pointer;justify-content:flex-end;align-items:flex-end;width:13px;height:12px;padding:0 2px 2px 0;display:flex;position:absolute;bottom:0;right:0}.flyout-corner:after{content:"";border-left:4px solid #0000;border-bottom:4px solid var(--text-dim);width:0;height:0;display:block}.flyout-corner:hover:after{border-bottom-color:var(--text-bright)}.tool-btn{position:relative}.tool-flyout{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);box-shadow:var(--shadow-popover);z-index:var(--z-flyout);flex-direction:column;gap:1px;padding:2px;display:flex;position:absolute;top:100%;left:0}.tool-flyout .tool-btn{justify-content:flex-start;gap:8px;width:auto;min-width:170px;padding:0 8px}.flyout-label{font-size:11px}.project-preview{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:10px;height:110px;padding:8px;display:flex}.project-preview .thumb{border:1px solid var(--border-light);background:#000;flex:none;justify-content:center;align-items:center;width:130px;height:90px;display:flex;overflow:hidden}.project-preview .thumb img,.project-preview .thumb video{max-width:100%;max-height:100%}.project-preview .meta{color:var(--text-dim);font-size:11px;line-height:1.5;overflow:hidden}.project-preview .meta .name{color:var(--text-bright)}.project-list-header,.project-item{grid-template-columns:20px 1fr 44px 70px 56px 64px 70px 72px 120px;align-items:center;gap:6px;min-width:760px;padding:2px 8px;font-size:11px;display:grid}.project-list-header{color:var(--text-dim);border-bottom:1px solid var(--border);background:var(--bg-header);z-index:1;position:sticky;top:0}.project-header-cell{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-header-cell:hover{color:var(--text-bright)}.project-item{cursor:default;color:var(--text)}.project-item:hover{background:var(--bg-hover)}.project-item.selected{color:#fff;background:var(--accent-strong)!important}.project-item .p-icon{text-align:center;font-size:12px}.project-item .p-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-item .p-name-edit{width:100%;padding:1px 4px;font-size:11px}.project-item .p-col,.project-item .p-type,.project-item .p-dur{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.project-item.selected .p-col,.project-item.selected .p-type,.project-item.selected .p-dur{color:var(--text-bright)}.project-label-cell{align-items:center;gap:4px;display:inline-flex}.project-label-swatch{border:1px solid var(--border-light);border-radius:2px;flex:none;width:8px;height:8px}.project-item.project-folder{cursor:pointer;font-weight:600}.project-item.project-folder.drop-target{outline:2px dashed var(--accent);outline-offset:-2px}.proxy-badge{color:var(--accent);font-size:11px;font-weight:400}.project-item.selected .proxy-badge{color:var(--text-bright)}.rq-status{font-weight:600}.rq-status--queued{color:var(--text-dim)}.rq-status--rendering{color:var(--accent)}.rq-status--done{color:#4caf50}.rq-status--failed{color:#c0392b}.rq-status--stopped{color:#e0c341}.project-item.selected .rq-status--queued{color:var(--text-dim)}.project-item.selected .rq-status--rendering{color:#fff}.project-item.selected .rq-status--done{color:#4caf50}.project-item.selected .rq-status--failed{color:#c0392b}.project-item.selected .rq-status--stopped{color:#e0c341}.rq-detail{border-bottom:1px solid var(--border);padding:4px 6px 8px 24px}.rq-log{background:var(--bg-input);border:1px solid var(--border-light);border-radius:2px;max-height:90px;margin:0 0 0 24px;padding:4px 6px;font-size:10px;overflow-y:auto}.rq-log-line{color:var(--text-dim);white-space:nowrap}.rq-log-time{color:var(--text-dim);opacity:.7;margin-right:4px}.project-footer{border-top:1px solid var(--border);background:var(--bg-header);scrollbar-width:thin;scrollbar-color:var(--edge-strong) transparent;flex:none;gap:4px;padding:4px 6px;display:flex;overflow:auto hidden}.project-footer::-webkit-scrollbar{height:4px}.project-footer::-webkit-scrollbar-track{background:0 0}.project-footer::-webkit-scrollbar-thumb{background:var(--edge-strong);border-radius:2px}.project-footer>*{white-space:nowrap;flex:none}.project-search-row{border-top:1px solid var(--border);background:var(--bg-header);flex:none;align-items:center;gap:4px;padding:3px 6px;display:flex}.project-search-row input[type=text]{flex:1}.drop-hint{text-align:center;color:var(--text-dim);padding:24px 16px;font-size:11px;line-height:1.6}.viewport{zoom:1;flex-direction:column;flex:1;min-width:0;display:flex}.viewport-canvas-wrap{background:#101010;flex:1;min-height:0;position:relative;overflow:hidden}.viewport-canvas-wrap canvas.main{position:absolute}.viewport-canvas-wrap canvas.gpu-swapchain{pointer-events:none;display:none;position:absolute}.viewport-snapshot{pointer-events:none;opacity:1;position:absolute}.viewport-overlay{pointer-events:none;position:absolute;inset:0}.fast-preview-badge{border:1px solid var(--border-light);color:var(--accent);pointer-events:none;background:#141414d9;border-radius:4px;padding:3px 8px;font-size:11px;position:absolute;top:8px;right:8px}.preview-build{border:1px solid var(--border-light);color:var(--text-bright);pointer-events:none;background:#141414d9;border-radius:6px;flex-direction:column;align-items:center;gap:5px;padding:8px 14px;font-size:11px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.preview-build-bar{background:var(--bg-input);border-radius:2px;width:160px;height:4px;overflow:hidden}.preview-build-bar>div{background:var(--accent);height:100%;transition:width var(--dur-fast) linear}.viewport-tabbar{background:var(--bg-panel-darker);border-bottom:1px solid var(--border);flex:none;align-items:stretch;min-width:0;display:flex}.viewport-tabbar .panel-tabs{background:0 0;border-bottom:none;flex:1;min-width:0}.perf-hud{font-family:var(--font-mono,ui-monospace, monospace);color:var(--text-dim);white-space:nowrap;border-left:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:0 8px;font-size:10px;line-height:1.5;display:flex}.perf-hud-stat{cursor:help}.perf-hud-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0 0 0 2px;font-size:12px;line-height:1}.perf-hud-close:hover{color:var(--text-bright)}.perf-hud-collapsed{border:none;border-left:1px solid var(--border);width:26px;color:var(--text-dim);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.perf-hud-collapsed:hover{color:var(--text-bright)}.viewport-statusbar{background:var(--bg-header);border-top:1px solid var(--border);color:var(--text-dim);scrollbar-width:thin;scrollbar-color:var(--edge-strong) transparent;flex-wrap:nowrap;flex:none;align-items:center;gap:10px;padding:3px 10px;font-size:11px;display:flex;overflow:auto hidden}.viewport-statusbar::-webkit-scrollbar{height:4px}.viewport-statusbar::-webkit-scrollbar-track{background:0 0}.viewport-statusbar::-webkit-scrollbar-thumb{background:var(--edge-strong);border-radius:2px}.viewport-statusbar>*{white-space:nowrap;flex:none}.viewport-statusbar select{background-color:var(--bg-header);color:var(--text);border:none;font-size:11px}.viewport-statusbar .zoom-input{background:var(--bg-header);color:var(--text);border:none;width:108px;font-family:inherit;font-size:11px}.viewport-statusbar .zoom-input:hover,.viewport-statusbar .zoom-input:focus{background:var(--surface-raised-hover);outline:none}.hot-text{color:var(--hot-text);cursor:ew-resize;white-space:nowrap;font-variant-numeric:tabular-nums}.hot-text:hover{text-decoration:underline}.hot-text.disabled{color:var(--text-dim);cursor:default;opacity:.5;pointer-events:none}.hot-text.disabled:hover{text-decoration:none}.hot-text input{background:var(--bg-input);border:1px solid var(--accent);width:64px;color:var(--text-bright);padding:0 3px;font-size:11px}.info-block{color:var(--text-dim);padding:8px 10px;font-size:11px;line-height:1.7}.info-block b{color:var(--text);font-weight:500}.preview-controls{flex-direction:column;gap:6px;padding:8px 10px;display:flex}.preview-transport{justify-content:center;align-items:center;gap:4px;display:flex}.preview-transport button{justify-content:center;align-items:center;width:30px;height:26px;padding:0;font-size:12px;display:flex}.preview-row{align-items:center;gap:6px;font-size:11px;display:flex}.preview-row label{color:var(--text-dim);flex:none;width:60px}.preview-row select{flex:1;min-width:0}.fxp-search{border-bottom:1px solid var(--border);padding:6px}.fxp-search input{width:100%}.fxp-category{color:var(--text-dim);background:var(--bg-header);cursor:default;padding:4px 8px;font-size:11px}.fxp-item{cursor:default;padding:3px 8px 3px 22px;font-size:12px}.fxp-item:hover{background:var(--bg-hover)}.fxp-item--effect:before{content:"ƒx ";color:var(--accent);font-size:10px}.fxp-item--preset:before{content:"✦ ";color:var(--text-dim);font-size:10px}.ec-header{color:var(--text-dim);border-bottom:1px solid var(--border);background:var(--bg-header);padding:5px 10px;font-size:11px}.ec-effect{border-bottom:1px solid var(--border)}.ec-effect-title{background:var(--bg-row-alt);color:var(--text-bright);align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:flex}.ec-effect-title .fx-badge{color:var(--accent);font-size:11px;font-style:italic;font-weight:600}.ec-effect-title .del-fx{margin-left:auto}.ec-param{grid-template-columns:22px minmax(90px,130px) 1fr;align-items:center;gap:4px;padding:2px 8px 2px 16px;font-size:12px;display:grid}.ec-param .pname{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ec-param:hover{background:var(--bg-hover)}.curve-editor{background:var(--bg-panel-darker);padding:8px 10px 12px 16px}.curve-tabs{gap:2px;margin-bottom:6px;display:flex}.curve-tab{background:var(--bg-input);border:1px solid var(--border-light);cursor:pointer;opacity:.6;border-bottom:none;padding:2px 10px;font-size:11px}.curve-tab.active{opacity:1;background:var(--bg-hover)}.curve-canvas{background:var(--bg-input);border:1px solid var(--border-light);touch-action:none}.curve-grid{stroke:var(--border-light);stroke-width:1px}.curve-diagonal{stroke:var(--border-light);stroke-width:1px;stroke-dasharray:3 3}.curve-path{fill:none;stroke-width:1.5px}.curve-point{cursor:pointer;stroke:var(--bg-input);stroke-width:1.5px}.curve-point:hover{r:5.5}.stopwatch{cursor:pointer;width:16px;height:16px;color:var(--text-dim);border-radius:2px;flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.stopwatch:hover{color:var(--text-bright)}.stopwatch.on{color:var(--hot-text)}.char-panel{flex-direction:column;gap:6px;padding:8px;font-size:11px;display:flex}.char-row{align-items:center;gap:6px;display:flex}.char-row label{color:var(--text-dim);flex:none;width:52px}.char-panel textarea{resize:vertical;-webkit-user-select:text;user-select:text;min-height:54px}.eg-panel{flex-direction:column;gap:6px;padding:8px;font-size:11px;display:flex}.eg-row{align-items:center;gap:6px;display:flex}.eg-label{flex:none;width:90px}.eg-control{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.eg-control input[type=text],.eg-control input:not([type]){width:100%}.eg-actions{flex:none;gap:2px;display:flex}.eg-actions button{padding:0 4px;font-size:11px}.ta-panel{flex-direction:column;gap:10px;padding:8px;font-size:11px;display:flex}.ta-animator{border:1px solid var(--edge-strong);border-radius:3px;flex-direction:column;gap:4px;padding:6px;display:flex}.ta-driven,.ta-selectors{border-left:2px solid var(--edge-strong);flex-direction:column;gap:4px;padding-left:4px;display:flex}.ta-selector-row{flex-wrap:wrap;row-gap:4px}.ta-selector-type{width:40px;color:var(--accent);text-transform:uppercase;flex:none;font-size:11px}.ta-selector-row select{font-size:11px}.ta-selector-row .expr-input{width:100%;height:32px}.timeline{zoom:1;flex-direction:column;flex:1;min-width:0;display:flex}.timeline-toolbar{background:var(--bg-header);border-bottom:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--edge-strong) transparent;flex:none;align-items:center;gap:10px;height:30px;padding:3px 8px;display:flex;overflow:auto hidden}.timeline-toolbar::-webkit-scrollbar{height:4px}.timeline-toolbar::-webkit-scrollbar-track{background:0 0}.timeline-toolbar::-webkit-scrollbar-thumb{background:var(--edge-strong);border-radius:2px}.timeline-toolbar>*{white-space:nowrap;flex:none}.timeline-toolbar input.mini{flex:0 150px;min-width:70px}.timeline-toolbar .icon-btn{align-items:center;gap:5px;height:22px;padding:0 7px;display:inline-flex}.timeline-toolbar .icon-btn svg{flex:none}.timeline-toolbar .tl-chip.on{background:var(--wash-active);color:var(--text-bright)}.tl-frame-counter{color:var(--text-dim);font-variant-numeric:tabular-nums}.tl-frame-number{text-align:right;display:inline-block}.timecode-display{color:var(--hot-text);cursor:ew-resize;font-variant-numeric:tabular-nums;font-size:15px;font-weight:600;font-family:var(--font-mono)}.timecode-display input{width:110px;font-family:inherit;font-size:13px}.timeline-main{flex:1;min-height:0;display:flex}.tl-left{width:var(--layout-tl-left-w,max-content);border-right:1px solid var(--border);flex-direction:column;flex:none;min-width:360px;max-width:72%;display:flex}.tl-right{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.tl-left-header{background:var(--bg-header);border-bottom:1px solid var(--border);height:26px;color:var(--text-dim);flex:none;align-items:center;gap:0;padding-left:0;font-size:11px;display:flex}.tl-switch-head{width:18px;height:24px;color:var(--text-dim);cursor:default;flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tl-switch-head:hover{color:var(--text-bright);background:var(--bg-hover)}.tl-switch-head.label-head{color:var(--label-head-tint)}.tl-resizable-head{white-space:nowrap;cursor:default;flex:none;align-items:center;height:24px;display:inline-flex;position:relative;overflow:hidden}.tl-resizable-head:hover{color:var(--text-bright);background:var(--bg-hover)}.col-resizer{cursor:ew-resize;width:5px;height:100%;position:absolute;top:0;right:0}.col-resizer:hover{background:var(--accent-tint)}.tl-rows{scrollbar-width:none;flex:1;overflow:hidden auto}.tl-rows::-webkit-scrollbar{display:none}.tl-rows-right{background:var(--bg-panel-darker);flex:1;position:relative;overflow:auto}.tl-row{border-bottom:1px solid var(--edge-row);background:var(--bg-row);white-space:nowrap;align-items:center;height:24px;font-size:12px;display:flex}.tl-row.selected{background:color-mix(in oklab, var(--accent) 13%, var(--bg-row))}.tl-row.prop-row{background:var(--bg-panel-darker)}.tl-row.prop-row.selected{background:color-mix(in oklab, var(--accent) 13%, var(--bg-panel-darker))}.tl-row .twirl{text-align:center;cursor:pointer;width:16px;color:var(--text-dim);flex:none;font-size:8px}.tl-row .switch{cursor:pointer;width:18px;height:24px;color:var(--text-dim);flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tl-row .switch.on{color:var(--text)}.tl-row .switch:hover{color:var(--text-bright)}.tl-row .label-chip{cursor:pointer;border-radius:2px;flex:none;width:10px;height:10px;margin:0 4px}.tl-row .idx{width:18px;color:var(--text-dim);text-align:right;flex:none;margin-right:4px;font-size:11px}.tl-row .lname{text-overflow:ellipsis;color:var(--text-bright);cursor:default;flex:1;min-width:60px;overflow:hidden}.tl-row .lname input{width:90%}.tl-row select.mini{background-color:var(--bg-row);color:var(--text-dim);border:none;flex:none;width:74px;font-size:11px}.tl-row select.mini:hover{color:var(--text);background-color:var(--bg-hover)}.parent-cell{flex:none;align-items:center;width:76px;display:inline-flex}.parent-cell select.mini{width:56px}.matte-cell{flex:none;align-items:center;gap:2px;width:130px;display:inline-flex}.parent-pickwhip{width:18px;height:24px;color:var(--text-dim);cursor:crosshair;font-size:12px;font-family:var(--font-mono);justify-content:center;align-items:center;display:inline-flex}.parent-pickwhip:hover{color:var(--accent);background:var(--bg-hover)}.parent-pickwhip-overlay{pointer-events:none;z-index:var(--z-pickwhip);position:fixed;inset:0}.parent-pickwhip-overlay line{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:4 3}.prop-row .pname{color:var(--text);text-overflow:ellipsis;flex:none;width:104px;overflow:hidden}.prop-row .pvals{flex:1;align-items:center;gap:2px;display:flex;overflow:hidden}.kf-nav{flex:none;justify-content:center;align-items:center;width:44px;display:flex}.kf-nav button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:8px}.kf-nav button:hover{color:var(--hot-text)}.kf-nav .kf-add{font-size:9px}.kf-nav .kf-add.has-kf{color:var(--keyframe)}.tl-ruler{background:var(--bg-header);border-bottom:1px solid var(--border);cursor:pointer;flex:none;height:26px;position:relative;overflow:hidden}.tl-ruler .tick{background:var(--text-disabled);width:1px;position:absolute;bottom:0}.tl-ruler .tick-label{color:var(--text-dim);font-size:11px;position:absolute;top:2px;transform:translate(3px)}.work-area{background:var(--work-area-fill);border-left:4px solid var(--work-area-handle);border-right:4px solid var(--work-area-handle);cursor:grab;height:7px;position:absolute;top:0}.work-area:hover{background:var(--work-area-fill-hover)}.tl-cache-bar{pointer-events:none;background:0 0;height:3px;position:absolute;bottom:0}.tl-cache-bar-fill{background:var(--success);height:100%}.cache-status-dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.tl-track-row{border-bottom:1px solid var(--edge-row);height:24px;position:relative}.tl-track-row.prop{background:var(--surface-track-prop)}.layer-bar{cursor:grab;border:1px solid #00000080;border-radius:2px;align-items:center;height:17px;display:flex;position:absolute;top:3px;overflow:hidden}.layer-bar.selected{outline:1px solid var(--selection-outline-strong)}.layer-bar .trim{cursor:ew-resize;opacity:0;width:6px;transition:opacity var(--dur-fast);position:absolute;top:1px;bottom:1px}.layer-bar:hover .trim,.layer-bar.selected .trim{opacity:1}.layer-bar .trim.l{border-top:2px solid #ffffffd9;border-bottom:2px solid #ffffffd9;border-left:2px solid #ffffffd9;left:0}.layer-bar .trim.r{border-top:2px solid #ffffffd9;border-bottom:2px solid #ffffffd9;border-right:2px solid #ffffffd9;right:0}.layer-bar .waveform{pointer-events:none;position:absolute;inset:0}.kf-diamond{background:var(--keyframe-linear-fill);border:1px solid var(--keyframe-linear-border);cursor:pointer;z-index:2;width:9px;height:9px;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(45deg)}.kf-diamond:after{content:"";position:absolute;inset:-3px}.kf-diamond.selected{background:var(--keyframe);border-color:var(--selection-outline-strong)}.kf-diamond.auto-bezier{border-radius:50%}.kf-diamond.bezier{clip-path:polygon(0% 0%,100% 0%,0% 100%,100% 100%);border-radius:0}.cti-line{background:var(--cti);pointer-events:none;z-index:10;width:1px;position:absolute;top:0;bottom:0}.cti-line:before{content:"";cursor:ew-resize;pointer-events:auto;width:9px;position:absolute;top:0;bottom:0;left:-4px}.cti-head{background:var(--cti);clip-path:polygon(0 0,100% 0,100% 55%,50% 100%,0 55%);cursor:ew-resize;z-index:11;width:14px;height:14px;position:absolute;top:0;transform:translate(-7px)}.tl-bottombar{background:var(--bg-header);border-top:1px solid var(--border);height:24px;color:var(--text-dim);flex:none;align-items:center;gap:8px;padding:0 8px;font-size:11px;display:flex}.modal-backdrop{z-index:var(--z-modal);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);box-shadow:var(--shadow-popover);zoom:var(--ui-scale);min-width:440px;max-width:580px}.modal-title{color:var(--text-bright);border-bottom:1px solid var(--border-light);background:var(--bg-header);border-radius:var(--radius-popover) var(--radius-popover) 0 0;padding:10px 16px;font-size:13px}.modal-body{flex-direction:column;gap:10px;padding:16px;display:flex}.modal-row{align-items:center;gap:8px;display:flex}.modal-row label{width:130px;color:var(--text-dim);text-align:right;flex:none;font-size:12px}.modal-row input[type=text],.modal-row input[type=number],.modal-row select{flex:1}.modal-footer{border-top:1px solid var(--border-light);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.progress-bar{background:var(--bg-input);border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-bar>div{background:var(--accent);height:100%;transition:width var(--dur-overlay)}.toast-host{z-index:var(--z-toast);zoom:var(--ui-scale);flex-direction:column-reverse;gap:8px;max-width:380px;display:flex;position:fixed;bottom:16px;right:16px}.toast{background:var(--surface-popover);border:1px solid var(--border-light);border-left:3px solid var(--text-dim);border-radius:var(--radius-control);box-shadow:var(--shadow-popover);color:var(--text-bright);animation:toast-in var(--dur-overlay) ease-out;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;display:flex}.toast-error{border-left-color:var(--danger)}.toast-success{border-left-color:var(--success)}.toast-info{border-left-color:var(--accent)}.toast-message{white-space:pre-wrap;flex:1;line-height:1.5}.toast-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex:none;padding:0 2px}.toast-close:hover{color:var(--text-bright);background:0 0}.toast-action{background:var(--accent-strong);color:#fff;border-radius:var(--radius-control);cursor:pointer;border:none;flex:none;padding:3px 9px;font-size:11px;font-weight:500}.toast-action:hover{background:var(--accent-strong-hover)}.toast-action:active{background:var(--accent-strong-active)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.shortcuts-modal{min-width:640px;max-width:760px}.shortcuts-body{grid-template-columns:1fr 1fr;gap:16px;max-height:60vh;display:grid;overflow-y:auto}.shortcut-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);margin-bottom:6px;font-size:11px;font-weight:600}.shortcut-line{flex-wrap:wrap;gap:4px 10px;margin-bottom:4px;display:flex}.shortcut-pair{align-items:baseline;gap:6px;display:inline-flex}.shortcut-pair kbd{color:var(--text-bright);background:var(--bg-input);border:1px solid var(--border-light);border-radius:3px;padding:1px 5px;font-family:inherit;font-size:11px}.shortcut-action{color:var(--text-dim);font-size:11px}.tooltip-pop{background:var(--surface-popover);color:var(--text-bright);font-family:var(--font-ui);border-radius:var(--radius-control);max-width:320px;box-shadow:var(--shadow-popover);pointer-events:none;z-index:var(--z-tooltip);animation:tooltip-pop-in var(--dur-reveal) var(--ease-out);align-items:baseline;gap:6px;padding:3px 7px;font-size:11px;line-height:1.4;display:flex;position:fixed}.tooltip-pop-key{color:var(--text-bright);background:var(--bg-input);border:1px solid var(--border-light);border-radius:3px;flex:none;padding:0 4px;font-family:inherit;font-size:10px}@keyframes tooltip-pop-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.checker{background-color:#383838;background-image:linear-gradient(45deg,#2a2a2a 25%,#0000 25%),linear-gradient(-45deg,#2a2a2a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#2a2a2a 75%),linear-gradient(-45deg,#0000 75%,#2a2a2a 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.empty-viewport{color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;inset:0}.stopwatch.expr{color:#d66}.tl-row.prop-selected .pname{color:var(--hot-text)}.expr-row{padding-top:4px;background:var(--surface-code)!important;align-items:flex-start!important}.expr-input{height:36px;font-family:var(--font-mono);background:var(--surface-code);color:var(--text);border:1px solid var(--edge-strong);resize:none;-webkit-user-select:text;user-select:text;flex:1;margin-right:6px;font-size:11px}.expr-input:focus{border-color:var(--accent)}.expr-error{color:var(--warning);cursor:help;margin-right:6px;font-size:12px}.expr-input-wrap{flex:1;align-items:stretch;gap:4px;margin-right:6px;display:flex}.pick-whip-handle{width:16px;color:var(--text-dim);cursor:crosshair;-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-size:13px;display:flex}.pick-whip-handle:hover{color:var(--accent)}.expr-input-cm{background:var(--surface-code);border:1px solid var(--edge-strong);flex:1;height:36px;margin-right:0;overflow-y:auto}.expr-input-cm:focus-within{border-color:var(--accent)}.expr-input-cm .cm-editor{height:100%;font-family:var(--font-mono);font-size:11px}.expr-input-cm .cm-content,.expr-input-cm .cm-gutters{color:var(--text);background:0 0}.expr-input-cm .cm-scroller{overflow:auto}.tl-marker{background:var(--success);clip-path:polygon(0 0,100% 0,100% 55%,50% 100%,0 55%);cursor:grab;z-index:9;width:10px;height:11px;position:absolute;top:14px;transform:translate(-5px)}.tl-marker-label{color:var(--success-bright);white-space:nowrap;pointer-events:none;font-size:11px;position:absolute;top:-2px;left:12px}.tl-marker-edit{z-index:10;width:100px;padding:0 3px;font-size:11px;position:absolute;top:-3px;left:12px}.tl-marker.layer-marker{z-index:6;background:#e0c34a;width:8px;height:9px;top:2px;transform:translate(-4px)}.tl-marker.layer-marker .tl-marker-edit{top:-10px}.kf-diamond.hold{clip-path:polygon(0 0,100% 0,100% 100%);border-radius:0}.kf-marquee{border:1px solid var(--accent);background:color-mix(in oklab, var(--accent) 12%, transparent);pointer-events:none;z-index:5;position:absolute}.drop-line{background:var(--accent);pointer-events:none;z-index:5;height:2px;position:absolute;left:0;right:0}.text-edit-overlay{appearance:none;color:#0000;caret-color:var(--text-bright);font-kerning:none;font-variant-ligatures:none;resize:none;-webkit-user-select:text;user-select:text;background:0 0;border:none;border-radius:0;outline:none;margin:0;padding:0;position:absolute;overflow:hidden}.text-edit-overlay::selection{color:#0000;background:color-mix(in srgb, var(--accent) 45%, transparent)}.mb-dropdown{max-height:calc(100vh - 34px);overflow-y:auto}.mb-submenu{zoom:var(--ui-scale);max-height:calc(100vh - 16px);overflow-y:auto}.menu-separator.mb-separator{background:var(--edge)}.menu-entry-label{flex:1}.menu-check svg,.submenu-arrow svg{display:block}@keyframes mb-popover-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.mb-dropdown,.mb-submenu{animation:mb-popover-in var(--dur-reveal) var(--ease-out);transform-origin:0 0}.ae-logo-mark-wrap{align-items:center;padding:0 8px 0 4px;display:flex}.ae-logo-badge{fill:none;stroke:var(--edge-strong)}.ae-logo-text{font-family:var(--font-ui);fill:var(--accent);font-size:8px;font-weight:700}.menubar-status-group{align-items:center;gap:var(--space-5);font-size:var(--text-11);flex-shrink:1;min-width:0;margin-left:auto;display:flex}.menubar-status-chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-control);background:var(--surface-raised);min-width:0;color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;padding:2px 8px;display:inline-flex;overflow:hidden}.menubar-status-dot{background:var(--text-disabled);border-radius:50%;flex:none;width:6px;height:6px}.menubar-status-chip.mb-status-ok .menubar-status-dot{background:var(--success)}.menubar-status-chip.mb-status-busy .menubar-status-dot{background:var(--accent)}.menubar-status-chip.mb-status-warn{color:var(--warning)}.menubar-status-chip.mb-status-warn .menubar-status-dot{background:var(--warning)}.menubar-backend-chip{border-radius:var(--radius-control);font:600 var(--text-10,10px)/1 var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;cursor:default;border:1px solid #0000;flex:none;padding:2px 7px}.menubar-backend-chip.mb-backend-cpu{background:var(--surface-raised);color:var(--text-disabled)}.menubar-backend-chip.mb-backend-gpu{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.menubar-project-name{color:var(--text-bright);cursor:text;border-radius:var(--radius-control);text-overflow:ellipsis;white-space:nowrap;max-width:240px;padding:2px 6px;overflow:hidden}.menubar-project-name:hover{background:var(--wash-hover)}.menubar-rename-input{font-size:var(--text-11);background:var(--bg-input);width:200px;color:var(--text);border:1px solid var(--accent);border-radius:var(--radius-control);outline:none;padding:2px 6px}.toolbar{gap:4px;padding:4px 8px}.toolbar-sep{margin:0 8px}.tool-options-bar{gap:8px;padding:0 8px}.tool-btn:hover{color:var(--text)}.tool-btn.active .flyout-corner:after{border-bottom-color:#ffffffd9}.tool-btn.active .flyout-corner:hover:after{border-bottom-color:#fff}@keyframes tool-flyout-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.tool-flyout{animation:tool-flyout-in var(--dur-reveal) var(--ease-out)}.fill-rule-group button{border-radius:var(--radius-control)}.tool-flyout .tool-btn.dim{color:var(--text-disabled)}.tool-flyout .tool-btn.dim:hover{background:var(--wash-hover);color:var(--text-dim)}.snapping-control{align-items:center;gap:2px;display:inline-flex}.snap-options-btn{width:16px;height:16px;color:var(--text-dim);border-radius:var(--radius-control);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.snap-options-btn:hover{background:var(--wash-hover);color:var(--text-bright)}.snap-options-caret{display:inline-flex;transform:rotate(90deg)}.project-item .p-icon{justify-content:center;align-items:center;display:flex}.project-item{--pp-footage:oklch(72% .1 200)}.p-icon-image,.p-icon-video{color:var(--pp-footage)}.p-icon-audio{color:var(--success)}.p-icon-comp{color:var(--accent)}.p-icon-folder{align-items:center;gap:3px;display:inline-flex}.project-item.selected .p-icon-image,.project-item.selected .p-icon-video,.project-item.selected .p-icon-audio,.project-item.selected .p-icon-comp{color:var(--text-bright)}.project-item .twirl{color:var(--text-dim);transition:transform var(--dur-reveal) var(--ease-out);display:inline-flex}.project-item .twirl.twirl-open{transform:rotate(90deg)}.proxy-badge{align-items:center;gap:2px;display:inline-flex}.proxy-badge-icon{flex:none}.project-preview .thumb.checker{background-color:#383838;background-image:linear-gradient(45deg,#2a2a2a 25%,#0000 25%),linear-gradient(-45deg,#2a2a2a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#2a2a2a 75%),linear-gradient(-45deg,#0000 75%,#2a2a2a 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.thumb-type-icon{color:var(--text-dim);justify-content:center;align-items:center;display:flex}.thumb-empty-label{font-size:var(--text-11);color:var(--text-dim)}.project-item .p-col,.project-item .p-dur,.project-preview .meta{font-variant-numeric:tabular-nums}.project-item .p-dur{text-align:right}.project-label-swatch-none{background:0 0}.project-header-cell{align-items:center;gap:3px;display:flex;overflow:visible}.phc-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.phc-sort-icon{color:var(--text-bright);flex:none;display:inline-flex}.phc-sort-icon.phc-sort-asc{transform:rotate(-90deg)}.phc-sort-icon.phc-sort-desc{transform:rotate(90deg)}.project-item.active-comp{box-shadow:inset 2px 0 0 var(--accent);font-weight:600}.project-footer .icon-btn.on{background:var(--wash-active);color:var(--text-bright)}.project-footer .icon-btn{align-items:center;gap:5px;min-height:24px;display:inline-flex}.project-list-header,.project-item{min-height:20px}.project-item .p-name-edit{box-sizing:border-box;height:16px;padding:0 4px}.project-search-row{padding:4px 6px}.drop-hint kbd{font-family:inherit;font-size:var(--text-11);color:var(--text-bright);background:var(--bg-input);border:1px solid var(--border-light);border-radius:3px;padding:1px 5px}.info-grid{grid-template-columns:max-content 1fr max-content 1fr;gap:2px 8px;margin-top:4px;line-height:1.5;display:grid}.info-sample-strip{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;margin-bottom:6px;padding-bottom:6px;line-height:1.5;display:flex}.info-sample-row{align-items:center;gap:6px;min-height:14px;display:flex}.info-swatch{border:1px solid var(--border-light);background:0 0;flex:none;width:12px;height:12px}.info-label{color:var(--text-dim)}.info-value{color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.fxp-search{align-items:center;display:flex;position:relative}.fxp-search-icon{color:var(--text-dim);pointer-events:none;position:absolute;left:8px}.fxp-search input{padding-left:24px}.fxp-item--effect:before,.fxp-item--preset:before{width:14px;display:inline-block}.rp-mini{height:20px;padding:1px 4px;font-size:11px}select.rp-mini{text-overflow:ellipsis;white-space:nowrap;max-width:108px;padding-right:16px;overflow:hidden}.link-text{color:var(--hot-text);cursor:pointer;font-variant-numeric:tabular-nums}.link-text:hover{text-decoration:underline}.rq-header,.rq-item{align-items:center;gap:6px;padding:2px 8px;font-size:11px;display:grid}.rq-header{color:var(--text-dim);border-bottom:1px solid var(--border);background:var(--bg-header)}.rq-item{cursor:default;color:var(--text);border-bottom:1px solid var(--edge-row)}.rq-item:hover{background:var(--bg-hover)}.rq-item.selected{background:var(--bg-selected)}.rq-item .p-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rq-item .p-col{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rq-progress{align-items:center;gap:6px;width:100%;display:inline-flex}.rq-progress .progress-bar{flex:1}.rq-progress-pct{text-align:right;font-variant-numeric:tabular-nums;min-width:3ch;color:var(--text)}.rp-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text)}.char-panel .char-row label{white-space:nowrap;text-overflow:ellipsis;width:76px;overflow:hidden}.char-panel .char-row label.inline{white-space:nowrap;flex:none;width:auto}.char-panel .char-row.wrap{flex-wrap:wrap;row-gap:4px}.char-divider{width:var(--space-4);flex:none;display:inline-block}.ta-inline-label{width:auto;color:var(--text-dim);white-space:nowrap;flex:none;font-size:11px}.rp-chevron-up{transform:rotate(-90deg)}.rp-chevron-down{transform:rotate(90deg)}.para-num-row{min-height:24px}.para-num-tag{color:var(--text-dim);font-size:var(--text-11);flex:none}.para-num-row .hot-text{min-width:32px}.char-panel .align-row{grid-template-columns:52px repeat(3,minmax(0,1fr));align-items:stretch;gap:6px;display:grid}.char-panel .align-row label{width:auto}.char-panel .align-row button{white-space:nowrap;text-overflow:ellipsis;min-width:0;height:24px;padding:2px 4px;font-size:11px;overflow:hidden}.para-align-row{gap:2px;display:flex}.para-align-btn{border-radius:var(--radius-control);flex:1;justify-content:center;align-items:center;height:24px;padding:0;display:inline-flex}.para-align-btn.on{background:var(--accent-strong);color:#fff}.para-align-btn.on:hover{background:var(--accent-strong-hover);color:#fff}.eg-btn-row{flex-wrap:wrap}.eg-btn-row button{white-space:nowrap;flex:none;height:24px;padding:2px 8px;font-size:11px}.effect-controls-panel{--expression:#d66}.effect-controls-panel .ec-param{min-height:22px}.effect-controls-panel .pvals{align-items:center;gap:2px;display:flex}.ec-layer-name{color:var(--text)}.ec-effect-title .switch{border-radius:var(--radius-control);flex:none;justify-content:center;align-items:center;width:18px;height:22px;display:inline-flex}.ec-effect-title .switch:hover{background:var(--wash-hover)}.ec-effect-title .switch.off{opacity:.75;text-decoration:line-through}.effect-controls-panel .icon-btn{min-width:22px;min-height:22px}.ec-effect-title .del-fx{gap:2px}.effect-controls-panel .stopwatch{width:22px;height:22px}.effect-controls-panel .stopwatch.expr{color:var(--expression)}.ec-chevron-up,.ec-chevron-down{display:inline-flex}.ec-chevron-up{transform:rotate(-90deg)}.ec-chevron-down{transform:rotate(90deg)}.ec-effect{background:var(--surface-raised);border-radius:var(--panel-radius);border-bottom:none;margin:4px 6px;overflow:hidden}.ec-effect+.ec-effect{margin-top:8px}.hot-text-edit{background:var(--bg-input);border:1px solid var(--accent);min-width:3ch;color:var(--text-bright);font-variant-numeric:tabular-nums;padding:0 3px;font-family:inherit;font-size:11px}:root{--graph-x:#e25b5b;--graph-y:#7bd47b;--graph-z:#6a9de8;--graph-w:#e2c26a;--graph-grid-major:oklch(100% 0 0/.08)}.graph-cti-line{background:var(--cti);pointer-events:none;z-index:4;width:1px;position:absolute;top:0;bottom:0}.graph-hover-chip{pointer-events:none;font-family:var(--font-mono);font-variant-numeric:tabular-nums;background:var(--surface-popover);color:var(--text-bright);border-radius:var(--radius-control);box-shadow:var(--shadow-popover);white-space:nowrap;z-index:5;padding:2px 6px;font-size:11px;position:absolute}.graph-mode-toggle{background:var(--surface-raised);color:var(--text-dim);border-color:var(--border-light);padding:2px 8px;font-size:11px;line-height:1.4}.graph-mode-toggle:hover{background:var(--surface-raised-hover);color:var(--text-bright)}.graph-mode-toggle:active{background:var(--surface-raised-active)}.curve-editor .curve-tabs{margin-bottom:0}.curve-editor .curve-tab{opacity:1;color:var(--text-dim);border-top-left-radius:var(--radius-control);border-top-right-radius:var(--radius-control);border-bottom:2px solid #0000;align-items:center;gap:5px;display:inline-flex}.curve-editor .curve-tab-swatch{background:var(--tab-color);border-radius:50%;flex:none;width:6px;height:6px}.curve-editor .curve-tab.active{background:var(--surface-raised);color:var(--text-bright);border-bottom-color:var(--tab-color)}.curve-editor .curve-grid{stroke:var(--edge-faint);shape-rendering:crispedges}.curve-editor .curve-point{cursor:grab}.menu-entry.ctxmenu-entry:hover:not(.disabled):not(.focused){color:var(--text);background:0 0}.menu-entry.ctxmenu-entry:hover:not(.disabled):not(.focused) .shortcut{color:var(--text-dim)}.menu-entry.ctxmenu-entry:hover:not(.disabled):not(.focused) .submenu-arrow{opacity:.65;color:inherit}.menu-entry.danger:not(.disabled){color:var(--danger)}.menu-entry.danger.focused:not(.disabled){background:var(--danger);color:#fff}.menu-entry.danger.focused:not(.disabled) .shortcut,.menu-entry.danger.focused:not(.disabled) .submenu-arrow{color:#fff;opacity:1}.ctxmenu-level{scrollbar-width:thin;scrollbar-color:var(--edge-strong) transparent;animation:ctxmenu-fade-in var(--dur-reveal) var(--ease-out)}.ctxmenu-level::-webkit-scrollbar{width:6px}.ctxmenu-level::-webkit-scrollbar-track{background:0 0}.ctxmenu-level::-webkit-scrollbar-thumb{background:var(--edge-strong);border:none;border-radius:3px}@keyframes ctxmenu-fade-in{0%{opacity:0}to{opacity:1}}.ae-checker{background-color:#383838;background-image:linear-gradient(45deg,#2a2a2a 25%,#0000 25%),linear-gradient(-45deg,#2a2a2a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#2a2a2a 75%),linear-gradient(-45deg,#0000 75%,#2a2a2a 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px}.ae-color-swatch,.ae-gradient-swatch{border:1px solid var(--border-light);border-radius:var(--radius-control);cursor:pointer;padding:0;position:relative;overflow:hidden}.ae-color-swatch{width:22px;height:16px}.ae-gradient-swatch{width:60px;height:16px}.ae-color-swatch:hover,.ae-gradient-swatch:hover{border-color:var(--text-dim)}.ae-color-swatch-fill{position:absolute;inset:0}.ae-popover-surface{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);box-shadow:var(--shadow-popover);padding:var(--space-5);z-index:var(--z-popover);animation:ae-popover-in var(--dur-reveal) var(--ease-out)}@keyframes ae-popover-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ae-popover-surface{animation:none}}.ae-sv{border-radius:var(--radius-control);cursor:crosshair;touch-action:none;width:100%;height:120px;position:relative}.ae-sv-thumb{pointer-events:none;border:2px solid #fff;border-radius:50%;width:10px;height:10px;margin-top:-5px;margin-left:-5px;position:absolute;box-shadow:0 0 2px #000c}.ae-slider-track{width:100%;height:12px;margin-top:var(--space-4);border-radius:var(--radius-control);cursor:ew-resize;touch-action:none;position:relative}.ae-slider-thumb{pointer-events:none;background:#fff;border:1px solid #0009;border-radius:3px;width:8px;height:14px;margin-top:-7px;position:absolute;top:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #fff6}.ae-tab-row{gap:var(--space-2);margin-top:var(--space-4);display:flex}.ae-tab-btn{padding:var(--space-2) 0;color:var(--text-dim);border:1px solid var(--border-light);border-radius:var(--radius-control);cursor:pointer;font-size:var(--text-11);background:0 0;flex:1}.ae-tab-btn:hover:not(.active){background:var(--wash-hover);color:var(--text-bright)}.ae-tab-btn.active{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}.ae-icon-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-control);color:var(--text-dim);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.ae-icon-btn:hover{color:var(--text-bright);background:var(--wash-hover)}.ae-field-row{gap:var(--space-2);display:flex}.ae-field-label{font-size:var(--text-11);color:var(--text-dim);letter-spacing:.01em;flex-direction:column;flex:1;gap:2px;display:flex}input.ae-field{width:100%;font-size:var(--text-11);padding:3px 6px}input.ae-field-hex{font-family:var(--font-mono)}input.ae-field-num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.ae-field-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input.ae-field-num{-moz-appearance:textfield}.ae-recents{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light);flex-wrap:wrap;display:flex}.ae-recent-swatch{box-sizing:border-box;border:1px solid var(--border-light);border-radius:var(--radius-control);cursor:pointer;background-clip:content-box;width:22px;height:22px;padding:3px}.ae-recent-swatch:hover{border-color:var(--text-dim)}.ae-recent-swatch.current{outline:2px solid var(--accent);outline-offset:1px}.ae-grad-bar{border-radius:var(--radius-control);cursor:crosshair;width:100%;height:20px;position:relative}.ae-grad-stop-hit{cursor:ew-resize;touch-action:none;justify-content:center;align-items:center;width:16px;height:16px;margin-left:-8px;display:flex;position:absolute;bottom:-12px}.ae-grad-stop-hit.selected{z-index:2}.ae-grad-stop-diamond{background:var(--text-dim);width:8px;height:8px;transition:transform var(--dur-fast) var(--ease-out);border:1px solid #fff;border-radius:1px;transform:rotate(45deg)}.ae-grad-stop-hit:hover .ae-grad-stop-diamond{transform:rotate(45deg)scale(1.2)}.ae-grad-stop-hit.selected .ae-grad-stop-diamond{background:var(--accent-strong);transform:rotate(45deg)scale(1.15);box-shadow:inset 0 0 0 1px #ffffff80}.ae-grad-stop-hit.selected:hover .ae-grad-stop-diamond{transform:rotate(45deg)scale(1.3)}.ae-grad-stop-ghost{border:1px dashed var(--text-dim);opacity:.6;pointer-events:none;width:10px;height:10px;margin-left:-5px;position:absolute;bottom:-8px;transform:rotate(45deg)}.expr-input-wrap textarea.expr-input{margin-right:0}.expr-input-wrap .expr-input-cm{overflow-y:hidden}.expr-input-wrap .cm-scroller::-webkit-scrollbar{width:6px;height:6px}.trk-param{grid-template-columns:minmax(90px,130px) 1fr;align-items:center;gap:4px;padding:2px 8px 2px 16px;font-size:12px;display:grid}.trk-param .pname{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trk-param:hover{background:var(--bg-hover)}.trk-button-row{flex-wrap:wrap;gap:4px;padding:4px 8px;display:flex}.trk-button-row button{flex:auto}.trk-button-row .trk-disabled-wrap{flex:auto;display:flex}.trk-button-row .trk-disabled-wrap button{flex:auto;width:100%}.trk-num{width:64px}.trk-num-sm{width:56px}.trk-reset-row{padding:var(--space-1) var(--space-4)}.trk-actions{padding:var(--space-4) var(--space-4)}.trk-actions-analyze{width:100%}.trk-actions-secondary{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.trk-progress{height:3px;margin-top:var(--space-2);background:var(--surface-sunken);border-radius:2px;overflow:hidden}.trk-progress-fill{background:var(--accent-strong);height:100%;transition:width var(--dur-fast) var(--ease-out)}.trk-status{font-size:var(--text-11);color:var(--text-dim);border-left:2px solid #0000;align-items:flex-start;gap:6px;padding:8px 10px;line-height:1.7;display:flex}.trk-status-icon{flex:none;margin-top:2px}.trk-status--success{border-left-color:var(--success)}.trk-status--success .trk-status-icon{color:var(--success)}.trk-status--warning{border-left-color:var(--warning)}.trk-status--warning .trk-status-icon{color:var(--warning)}.trk-status--danger{border-left-color:var(--danger)}.trk-status--danger .trk-status-icon{color:var(--danger)}.trk-hint kbd{font-family:inherit;font-size:var(--text-11);color:var(--text-bright);background:var(--bg-input);border:1px solid var(--border-light);border-radius:3px;padding:1px 5px}.landing,.landing *,.dash,.dash *,.shared-view,.shared-view *{-webkit-user-select:text;user-select:text}.app-main{gap:var(--gutter);padding:var(--gutter)}.app-top{gap:var(--gutter)}.app-tab-btn{border:none;border-right:1px solid var(--border);font:inherit;color:inherit;text-align:left;background:0 0;border-radius:0}.app-tab-btn:not(.active):hover{background:var(--wash-hover);color:var(--text)}.app-tab-static{cursor:default}.tour-highlight{border:2px solid var(--accent);border-radius:var(--panel-radius);pointer-events:none;z-index:600;transition:left var(--dur-overlay) var(--ease-out), top var(--dur-overlay) var(--ease-out), width var(--dur-overlay) var(--ease-out), height var(--dur-overlay) var(--ease-out);position:fixed;box-shadow:0 0 0 4000px #00000059}@media (prefers-reduced-motion:reduce){.tour-highlight{transition:none}}.tour-callout{background:var(--surface-popover);border-radius:var(--radius-popover);width:280px;box-shadow:var(--shadow-popover);z-index:601;transition:opacity var(--dur-reveal) var(--ease-out);padding:14px;position:fixed}.tour-callout-title{color:var(--text-bright);margin-bottom:6px;font-size:13px;font-weight:600}.tour-callout-body{color:var(--text);margin-bottom:12px;font-size:12px;line-height:1.5}.tour-callout-footer{align-items:center;gap:8px;display:flex}.tour-skip{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.tour-skip:hover{color:var(--text-bright);background:0 0}.tour-dots{flex:1;justify-content:center;gap:4px;display:flex}.tour-dot{background:var(--edge-strong);border-radius:50%;width:5px;height:5px}.tour-dot.active{background:var(--accent)}.tour-next{background:var(--accent-strong);color:#fff;border-radius:var(--radius-control);cursor:pointer;border:none;padding:4px 12px;font-size:11px;font-weight:500}.tour-next:hover{background:var(--accent-strong-hover)}.tagparts-backdrop{z-index:var(--z-modal);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.tagparts-panel{background:var(--bg-panel);border:1px solid var(--border-light);zoom:var(--ui-scale);border-radius:8px;flex-direction:column;width:92vw;height:90vh;display:flex;box-shadow:0 12px 48px #00000080}.tagparts-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.tagparts-sub{color:var(--text-dim);font-weight:400}.tagparts-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 8px;font-size:15px}.tagparts-close:hover{background:var(--bg-hover);color:var(--text-bright)}.tagparts-hint{color:var(--text-dim);border-bottom:1px solid var(--border);padding:8px 16px;font-size:12px}.tagparts-empty{text-align:center;color:var(--text-dim);padding:40px}.tagparts-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:12px;padding:16px;display:grid;overflow-y:auto}.tagpart-tile{border:1px solid var(--border);background:var(--bg-panel-darker);border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.tagpart-tile:hover{border-color:var(--accent)}.tagpart-tile--group{border-left:2px solid var(--accent);background:var(--bg-panel)}.tagpart-tile--selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.tagpart-tile-head{align-items:center;gap:6px;min-height:14px;display:flex}.tagpart-select{cursor:pointer;flex:none;margin:0}.tagpart-context{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.tagpart-thumb{height:110px;color:var(--text-dim);background-color:#2a2a2a;background-image:linear-gradient(45deg,#333 25%,#0000 25%),linear-gradient(-45deg,#333 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#333 75%),linear-gradient(-45deg,#0000 75%,#333 75%);background-position:0 0,0 7px,7px -7px,-7px 0;background-size:14px 14px;border-radius:4px;justify-content:center;align-items:center;font-size:11px;display:flex;overflow:hidden}.tagpart-thumb-inner{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.tagpart-canvas{object-fit:contain;max-width:100%;max-height:110px}.tagpart-rawname,.tagpart-tags{box-sizing:border-box;background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text-bright);border-radius:4px;padding:4px 6px;font-size:11px}.tagpart-rawname{background:0 0;border-color:#0000;padding:4px 2px;font-weight:500}.tagpart-rawname:hover{background:var(--bg-input);border-color:var(--border)}.tagpart-rawname:focus,.tagpart-tags:focus{border-color:var(--accent);background:var(--bg-input);outline:none}.tagparts-batchbar{border-bottom:1px solid var(--border);background:var(--bg-panel-darker);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;display:flex}.tagparts-batchcount{color:var(--text-bright);white-space:nowrap;font-size:12px;font-weight:500}.tagparts-batchlabel{background:var(--bg-input);border:1px solid var(--border);color:var(--text-bright);border-radius:4px;flex:0 260px;padding:5px 8px;font-size:12px}.tagparts-batchlabel:focus{border-color:var(--accent);outline:none}.tagparts-batchgo{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:5px 12px;font-size:12px;font-weight:500}.tagparts-batchgo:disabled{opacity:.5;cursor:default}.tagparts-batchgo:not(:disabled):hover{background:var(--accent-strong-hover)}.tagparts-batchclear{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:4px;padding:5px 10px;font-size:12px}.tagparts-batchclear:hover{color:var(--text-bright);border-color:var(--text-dim)}.tagparts-batchpreview{color:var(--text-dim);flex-basis:100%;font-size:11px}.app-loading{justify-content:center;align-items:center;gap:var(--space-4);height:100vh;color:var(--text-dim);font:500 var(--text-15)/1 var(--font-ui);background:var(--surface-canvas);display:flex}.app-loading-spinner{border:2px solid var(--edge-strong);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite app-loading-spin}@media (prefers-reduced-motion:reduce){.app-loading-spinner{border-top-color:var(--accent);opacity:.7;animation:none}}@keyframes app-loading-spin{to{transform:rotate(360deg)}}.landing-logo{font:600 var(--text-20)/1 var(--font-ui);color:var(--text-bright);letter-spacing:.2px}.landing-logo-dot{color:var(--accent)}.landing{background:var(--surface-canvas);height:100%;color:var(--text);flex-direction:column;display:flex}.landing-scroll{background:radial-gradient(1100px 540px at 50% -8%, color-mix(in oklab, var(--accent) 13%, var(--surface-canvas)) 0%, var(--surface-canvas) 58%, var(--surface-canvas) 100%);flex:1;min-height:0;overflow-y:auto}.landing-nav{z-index:10;background:color-mix(in oklab, var(--surface-canvas) 82%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--edge-faint);justify-content:space-between;align-items:center;padding:14px 28px;display:flex;position:sticky;top:0}.landing-main{box-sizing:border-box;width:100%;max-width:1120px;margin:0 auto;padding:0 24px}.landing-eyebrow{font:600 var(--text-12)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;display:block}.landing-hero{flex-direction:column;gap:36px;padding:64px 0 0;display:flex}.landing-hero-copy{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.landing-hero-visual{flex-direction:column;align-items:center;display:flex;container-type:inline-size}.landing-hero h1{font:650 clamp(30px, 4.6vw, 54px)/1.06 var(--font-ui);letter-spacing:-.02em;background:linear-gradient(180deg, var(--text-bright), var(--text-dim));color:#0000;-webkit-background-clip:text;background-clip:text;max-width:17ch;margin:0}.landing-sub{max-width:62ch;color:var(--text-dim);font:400 16px/1.65 var(--font-ui);margin:0}.landing-cta-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:4px;display:flex}.landing-micro{color:var(--text-dim);opacity:.75;font:400 var(--text-12)/1.5 var(--font-ui);margin:0}.landing-error{color:var(--danger);font-size:var(--text-13);margin:0}.landing-demo-caption{font:400 var(--text-12)/1.4 var(--font-ui);color:var(--text-dim);margin:14px 0 0}@media (width>=900px){.landing-hero{grid-template-columns:1fr 1.3fr;align-items:center;gap:24px 56px;padding:84px 0 0;display:grid}.landing-hero-copy{text-align:left;align-items:flex-start}.landing-hero-copy .landing-cta-row{justify-content:flex-start}.landing-hero h1{max-width:12ch}.landing-hero-visual .demo-frame{margin-top:0}}.demo-frame{background:var(--surface-panel);border:1px solid var(--edge-strong);border-radius:var(--panel-radius);text-align:left;width:100%;max-width:920px;margin-top:36px;overflow:hidden;box-shadow:0 24px 80px #00000080}.demo-titlebar{background:var(--surface-raised);border-bottom:1px solid var(--edge);align-items:center;gap:14px;padding:9px 14px;display:flex}.demo-tab{font:500 var(--text-12)/1 var(--font-ui);color:var(--text-bright)}.demo-comp-meta{font:400 var(--text-11)/1 var(--font-mono);color:var(--text-dim)}.demo-live{font:500 var(--text-11)/1 var(--font-mono);color:var(--success-bright);align-items:center;gap:6px;margin-left:auto;display:inline-flex}.demo-live-dot{background:var(--success);width:6px;height:6px;animation:demo-pulse 2s var(--ease-out) infinite;border-radius:50%}@keyframes demo-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.demo-live-dot{animation:none}}.demo-viewport{background:var(--surface-code)}.demo-canvas{aspect-ratio:16/9;width:100%;display:block}.demo-timeline{border-top:1px solid var(--edge);background:var(--surface-sunken);grid-template-columns:208px 1fr;display:grid}.demo-timeline,.demo-timeline *{-webkit-user-select:none;user-select:none}.demo-names{border-right:1px solid var(--edge);flex-direction:column;display:flex}.demo-timecode{box-sizing:border-box;height:30px;font:500 var(--text-12)/1 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--cti);border-bottom:1px solid var(--edge);padding:9px 10px}.demo-row-name{box-sizing:border-box;height:26px;font:400 var(--text-11)/1 var(--font-mono);color:var(--text-bright);border-bottom:1px solid var(--edge-row);white-space:nowrap;align-items:center;gap:7px;padding:0 10px;display:flex;overflow:hidden}.demo-row-name b{font-weight:600}.demo-row-detail{color:var(--text-dim);text-overflow:ellipsis;overflow:hidden}.demo-chip{border-radius:2px;flex:none;width:8px;height:8px}.demo-track{--demo-gut:10px;cursor:ew-resize;touch-action:none;background-image:repeating-linear-gradient(to right, var(--edge-faint) 0, var(--edge-faint) 1px, transparent 1px, transparent calc(100% / 6));background-repeat:no-repeat;background-position-x:var(--demo-gut);background-size:calc(100% - 2 * var(--demo-gut)) 100%;position:relative}.demo-ruler{box-sizing:border-box;border-bottom:1px solid var(--edge);height:30px;position:relative}.demo-tick{font:400 10px/1 var(--font-mono);color:var(--text-dim);padding-left:4px;position:absolute;top:10px}.demo-lane{box-sizing:border-box;border-bottom:1px solid var(--edge-row);height:26px;position:relative}.demo-bar{border:1px solid #0000;border-radius:4px;justify-content:flex-end;align-items:center;padding-right:6px;display:flex;position:absolute;top:5px;bottom:5px}.demo-fx{font:600 italic 9px/1 var(--font-mono);color:var(--text-bright);opacity:.8}.demo-key{background:var(--keyframe);border-radius:1px;width:7px;height:7px;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 0 1px #0006}.demo-playhead{pointer-events:none;z-index:2;width:0;position:absolute;top:0;bottom:0;left:0}.demo-playhead:before{content:"";background:var(--cti);width:1.5px;position:absolute;top:0;bottom:0;left:-.75px}.demo-playhead-cap{background:var(--cti);clip-path:polygon(0 0,100% 0,100% 55%,50% 100%,0 55%);width:10px;height:12px;position:absolute;top:0;left:-5px}@media (width<=720px){.demo-timeline{grid-template-columns:118px 1fr}.demo-row-detail,.demo-comp-meta{display:none}.demo-tab{white-space:nowrap}}@container (width<=680px){.demo-timeline{grid-template-columns:118px 1fr}.demo-row-detail,.demo-comp-meta{display:none}.demo-tab{white-space:nowrap}}.landing-section{margin-top:96px}.landing-section h2{font:650 clamp(22px, 3vw, 32px)/1.15 var(--font-ui);letter-spacing:-.015em;color:var(--text-bright);margin:0 0 12px}.landing-section-sub{max-width:72ch;color:var(--text-dim);font:400 15px/1.7 var(--font-ui);margin:0 0 28px}.landing-grid{gap:14px;display:grid}.landing-grid-3{grid-template-columns:repeat(3,1fr)}.landing-grid-2{grid-template-columns:repeat(2,1fr)}@media (width<=900px){.landing-grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.landing-grid-3,.landing-grid-2{grid-template-columns:1fr}}.landing-card{background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--panel-radius);padding:18px}.landing-card h3{font:600 var(--text-15)/1.3 var(--font-ui);color:var(--text-bright);margin:0 0 8px}.landing-card p{font:400 var(--text-13)/1.6 var(--font-ui);color:var(--text-dim);margin:0}.landing-aside{max-width:78ch;font:400 var(--text-13)/1.6 var(--font-ui);color:var(--text-dim);opacity:.85;margin:20px 0 0}.landing-emph{max-width:70ch;font:500 var(--text-15)/1.55 var(--font-ui);color:var(--text-bright);margin:18px 0 0}.landing-subhead{font:600 var(--text-15)/1.2 var(--font-ui);color:var(--text);letter-spacing:.01em;margin:28px 0 14px}.showcase-row{grid-template-columns:1.35fr 1fr;align-items:center;gap:28px;margin-top:40px;display:grid}.showcase-row-flip{grid-template-columns:1fr 1.35fr}.showcase-row-flip .showcase-canvas{order:2}.showcase-row-flip .showcase-copy{order:1}.showcase-canvas{aspect-ratio:16/9;background:var(--surface-code);border:1px solid var(--edge-strong);border-radius:var(--panel-radius);width:100%;display:block}.showcase-copy h3{font:600 17px/1.3 var(--font-ui);color:var(--text-bright);margin:0 0 8px}.showcase-copy p{font:400 var(--text-13)/1.6 var(--font-ui);color:var(--text-dim);margin:0 0 10px}.showcase-chips{font-family:var(--font-mono);font-size:var(--text-11);letter-spacing:.02em;opacity:.85}@media (width<=900px){.showcase-row,.showcase-row-flip{grid-template-columns:1fr;gap:14px}.showcase-row-flip .showcase-canvas{order:1}.showcase-row-flip .showcase-copy{order:2}}.scrub-section{margin-top:96px;position:relative}.scrub-sticky{flex-direction:column;gap:6px;display:flex;position:sticky;top:56px}.scrub-copy h2{font:650 clamp(22px, 3vw, 32px)/1.15 var(--font-ui);letter-spacing:-.015em;color:var(--text-bright);margin:0 0 10px}.scrub-frame{background:var(--surface-code);border:1px solid var(--edge-strong);border-radius:var(--panel-radius);width:100%;max-width:min(100%,177.778vh - 533.333px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 24px 80px #00000080}.scrub-canvas{aspect-ratio:16/9;width:100%;display:block}.scrub-meter{background:color-mix(in oklab, var(--surface-sunken) 78%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--edge);align-items:center;gap:12px;padding:10px 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.scrub-timecode{font:500 var(--text-12)/1 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--cti)}.scrub-bar-track{background:var(--wash-active);border-radius:2px;flex:1;height:3px;overflow:hidden}.scrub-bar{background:var(--cti);width:0%;height:100%}.scrub-hint{font:400 var(--text-11)/1 var(--font-mono);color:var(--text-dim)}.ai-demo-row{grid-template-columns:1.15fr .85fr;align-items:stretch;gap:20px;margin-bottom:22px;display:grid}@media (width<=900px){.ai-demo-row{grid-template-columns:1fr}}.ai-demo-transcript{box-sizing:border-box;height:100%;min-height:0;margin-bottom:0}.ai-demo-canvas-wrap{background:var(--surface-code);border:1px solid var(--edge-strong);border-radius:var(--panel-radius);justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.ai-demo-canvas{object-fit:contain;width:100%;height:100%;display:block}.landing-transcript{background:var(--surface-code);border:1px solid var(--edge);border-radius:var(--panel-radius);margin-bottom:22px;padding:16px 18px;overflow-x:auto}.landing-transcript-user{font:500 var(--text-13)/1.5 var(--font-ui);color:var(--text-bright);margin:0 0 12px}.landing-transcript-log{font:400 var(--text-11)/1.75 var(--font-mono);color:var(--text-dim);margin:0}.ai-typed{display:inline-block}.ai-cursor{vertical-align:-.15em;background:var(--accent);opacity:0;width:2px;height:.95em;margin-left:1px;display:inline-block}.ai-cursor.is-typing{opacity:1;animation:.9s step-end infinite ai-cursor-blink}@keyframes ai-cursor-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.ai-cursor{display:none}}.ai-line{white-space:pre;opacity:0;transition:opacity var(--dur-overlay) var(--ease-out), transform var(--dur-overlay) var(--ease-out);transform:translateY(3px)}.ai-line.is-visible{opacity:1;transform:none}.landing-cta-band{text-align:center;background:color-mix(in oklab, var(--accent) 7%, var(--surface-panel));border:1px solid var(--edge);border-radius:var(--panel-radius);flex-direction:column;align-items:center;gap:16px;margin-top:96px;padding:44px 24px;display:flex}.landing-cta-band h2{font:650 clamp(20px, 2.6vw, 28px)/1.2 var(--font-ui);color:var(--text-bright);margin:0}.landing-footer{box-sizing:border-box;border-top:1px solid var(--edge);flex-direction:column;gap:10px;width:100%;max-width:1120px;margin:88px auto 0;padding:28px 24px 44px;display:flex}.landing-footer p{max-width:86ch;font:400 var(--text-11)/1.7 var(--font-mono);color:var(--text-dim);opacity:.8;margin:0}.landing-logo-footer{font-size:var(--text-13);opacity:.9}.landing-footer-links{flex-wrap:wrap;gap:16px;display:flex}.landing-footer-links a{color:var(--text-dim);font:400 var(--text-11)/1 var(--font-mono);text-underline-offset:2px;text-decoration:underline}.landing-footer-links a:hover{color:var(--text)}.legal-main{max-width:760px;padding:48px 24px 24px}.legal-title{font:650 clamp(26px, 4vw, 38px)/1.15 var(--font-ui);letter-spacing:-.015em;color:var(--text-bright);margin:0 0 6px}.legal-updated{color:var(--text-dim);font:400 var(--text-12)/1 var(--font-mono);margin:0 0 36px}.legal-content h2{font:600 17px/1.25 var(--font-ui);color:var(--text-bright);margin:40px 0 12px}.legal-content h2:first-child{margin-top:0}.legal-content p{color:var(--text);font:400 15px/1.7 var(--font-ui);margin:0 0 14px}.legal-content ul{color:var(--text);font:400 15px/1.7 var(--font-ui);margin:0 0 14px;padding-left:22px}.legal-content li{margin-bottom:6px}.legal-content a{color:var(--accent)}.legal-content strong{color:var(--text-bright);font-weight:600}.legal-back{color:var(--text-dim);font:500 var(--text-13)/1 var(--font-ui);text-decoration:none}.legal-back:hover{color:var(--text)}.account-section{background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--panel-radius);margin:0 0 24px;padding:24px}.account-section h2{font:600 17px/1.25 var(--font-ui);color:var(--text-bright);margin:0 0 16px}.account-section p{color:var(--text);font:400 15px/1.6 var(--font-ui);margin:0 0 12px}.account-section p:last-child{margin-bottom:0}.account-profile{align-items:center;gap:14px;display:flex}.account-avatar{object-fit:cover;border-radius:50%;flex:none;width:48px;height:48px}.account-name{font:600 var(--text-15)/1.3 var(--font-ui);color:var(--text-bright);margin:0}.account-email{font:400 var(--text-13)/1.3 var(--font-ui);color:var(--text-dim);margin:2px 0 0}.account-cancel-btn{color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-control);font:500 var(--text-13)/1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;padding:9px 16px}.account-cancel-btn:hover{background:color-mix(in oklab, var(--danger) 12%, transparent)}.account-cancel-btn:disabled{opacity:.6;cursor:default}.account-links{color:var(--text-dim);font:400 var(--text-12)/1 var(--font-mono)}.account-links a{color:var(--text-dim)}.account-links a:hover{color:var(--text)}.btn-primary-cta{background:var(--accent-strong);color:#fff;border-radius:var(--radius-control);font:500 var(--text-15)/1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:none;padding:13px 22px}.btn-primary-cta:hover{background:var(--accent-strong-hover);transform:translateY(-1px)}.btn-primary-cta:active{background:var(--accent-strong-active);transform:translateY(0)}.btn-google{color:#1f2328;border-radius:var(--radius-control);font:500 var(--text-15)/1 var(--font-ui);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-reveal) var(--ease-out);background:#fff;border:none;align-items:center;gap:10px;padding:12px 20px;display:inline-flex;box-shadow:0 2px 14px #00000059}.btn-google:hover{transform:translateY(-1px);box-shadow:0 6px 20px #00000073}.btn-google-sm{font-size:var(--text-13);box-shadow:none;padding:8px 14px}.dash{background:var(--surface-canvas);height:100%;color:var(--text);flex-direction:column;display:flex}.dash-nav{border-bottom:1px solid var(--edge);flex:none;justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.dash-nav-right{align-items:center;gap:14px;display:flex}.dash-user{color:var(--text-dim);font:400 var(--text-13)/1 var(--font-ui)}.dash-signout{color:var(--text);border:1px solid var(--edge-strong);border-radius:var(--radius-control);font:500 var(--text-13)/1 var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0;padding:7px 12px}.dash-signout:hover{border-color:var(--edge-strong);background:var(--wash-hover)}.dash-main{flex:1;min-height:0;overflow-y:auto}.dash-body{max-width:1200px;margin:0 auto;padding:32px 28px 64px}.dash-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.dash-head-titles{min-width:0}.dash-head h1{font:600 var(--text-20)/1.1 var(--font-ui);margin:0}.dash-sub{color:var(--text-dim);font:400 var(--text-13)/1.3 var(--font-ui);margin:6px 0 0}.dash-muted{color:var(--text-dim)}.dash-empty{text-align:center;color:var(--text-dim);flex-direction:column;align-items:center;gap:16px;padding:72px 0;display:flex}.dash-empty-art{background:var(--surface-panel);border:1px solid var(--edge);width:64px;height:64px;color:var(--text-dim);border-radius:16px;place-items:center;display:grid}.dash-empty-copy{flex-direction:column;gap:4px;display:flex}.dash-empty-title{color:var(--text-bright);font:600 var(--text-15)/1.2 var(--font-ui);margin:0}.dash-empty-hint{color:var(--text-dim);font:400 var(--text-13)/1.4 var(--font-ui);max-width:340px;margin:0 auto}.subscribe-screen{background:var(--surface-canvas);box-sizing:border-box;justify-content:center;align-items:center;height:100vh;padding:24px;display:flex}.subscribe-card{text-align:center;background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--radius-popover);flex-direction:column;align-items:center;gap:8px;width:100%;max-width:380px;padding:40px 32px 32px;display:flex}.subscribe-eyebrow{color:var(--text-dim);font:600 var(--text-11)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0}.subscribe-title{color:var(--text-bright);font:600 var(--text-20)/1.25 var(--font-ui);margin:4px 0 0}.subscribe-sub{color:var(--text-dim);font:400 var(--text-13)/1.55 var(--font-ui);margin:12px 0 0}.subscribe-sub strong{color:var(--text-bright);font-weight:600}.subscribe-price{color:var(--text-bright);font:700 40px/1 var(--font-ui);margin:14px 0 0}.subscribe-price-period{font:500 var(--text-15)/1 var(--font-ui);color:var(--text-dim)}.subscribe-features{color:var(--text);font:400 var(--text-13)/1.4 var(--font-ui);flex-direction:column;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.subscribe-features li{align-items:center;gap:8px;display:flex}.subscribe-features li:before{content:"✓";color:var(--accent);font-weight:600}.subscribe-error{color:var(--danger);font:500 var(--text-13)/1.4 var(--font-ui);margin:16px 0 0}.subscribe-btn{box-sizing:border-box;justify-content:center;align-items:center;width:100%;margin-top:24px;text-decoration:none;display:inline-flex}.subscribe-btn:disabled{opacity:.6;cursor:default;transform:none}.subscribe-foot{color:var(--text-dim);font:400 var(--text-11)/1.4 var(--font-ui);margin:12px 0 0}.subscribe-signout{color:var(--text-dim);font:500 var(--text-13)/1 var(--font-ui);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-top:20px;text-decoration:underline}.subscribe-signout:hover{color:var(--text)}.dash-new{background:var(--accent-strong);color:#fff;border-radius:var(--radius-control);font:500 var(--text-13)/1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);border:none;padding:10px 16px}.dash-new:hover{background:var(--accent-strong-hover)}.dash-new:active{background:var(--accent-strong-active)}.dash-head-actions{align-items:center;gap:8px;display:flex}.dash-new-template{color:var(--text);border:1px solid var(--border-light);border-radius:var(--radius-control);font:500 var(--text-13)/1 var(--font-ui);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;align-items:center;gap:4px;padding:9px 14px;display:flex}.dash-new-template:hover{background:var(--wash-hover);border-color:var(--edge-strong)}.dash-new-template-chevron{opacity:.7;transform:rotate(90deg)}.dash-template-popover{background:var(--surface-popover);border:1px solid var(--border-light);border-radius:var(--radius-popover);width:300px;box-shadow:var(--shadow-popover);flex-direction:column;gap:2px;padding:6px;display:flex}.dash-template-item{border-radius:var(--radius-control);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:10px;padding:8px;display:flex}.dash-template-item:hover{background:var(--wash-hover)}.dash-template-swatch{border-radius:var(--radius-control);border:1px solid var(--edge-strong);flex:none;width:32px;height:32px}.dash-template-text{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-template-name{font:500 var(--text-12)/1.2 var(--font-ui);color:var(--text-bright)}.dash-template-desc{font:400 var(--text-11)/1.3 var(--font-ui);color:var(--text-dim)}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;display:grid}.proj-card{text-align:left;background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--panel-radius);cursor:pointer;color:inherit;transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);padding:0;position:relative;overflow:hidden}.proj-card:hover,.proj-card:focus-visible{border-color:var(--accent);transform:translateY(-2px)}.proj-card:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.proj-thumb{aspect-ratio:16/9;background:var(--surface-canvas);justify-content:center;align-items:center;display:flex;overflow:hidden}.proj-thumb img{object-fit:cover;width:100%;height:100%;display:block}.proj-thumb-ph{color:var(--text-dim);font:600 34px/1 var(--font-ui);opacity:.6}.proj-meta{flex-direction:column;gap:4px;padding:10px 12px;display:flex}.proj-name{font:500 var(--text-13)/1.2 var(--font-ui);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.proj-time{font:400 var(--text-12)/1 var(--font-ui);color:var(--text-dim);align-items:center;gap:4px;display:inline-flex}.proj-time svg{opacity:.75;flex:none}.proj-pin,.proj-act{border-radius:var(--radius-control);width:26px;height:26px;color:inherit;cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;place-items:center;padding:0;display:grid}.proj-pin.is-pinned svg{fill:currentColor}.proj-card>.proj-pin{color:#fff;opacity:0;background:#0000008c;position:absolute;top:6px;left:6px}.proj-card-actions{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);gap:4px;display:flex;position:absolute;top:6px;right:6px}.proj-card-actions .proj-act{color:#fff;background:#0000008c}.proj-card:hover .proj-pin,.proj-card:focus-within .proj-pin,.proj-card:hover .proj-card-actions,.proj-card:focus-within .proj-card-actions{opacity:1}.proj-card>.proj-pin.is-pinned{opacity:1;color:var(--accent)}.proj-card-actions .proj-act:hover,.proj-card>.proj-pin:hover{background:#000000c7}.proj-card-actions .proj-act-danger:hover{background:var(--danger)}.proj-pin:focus-visible,.proj-act:focus-visible{opacity:1;outline:2px solid var(--focus-ring);outline-offset:1px}.proj-act:disabled{opacity:.45;cursor:default}.dash-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.dash-search{flex:260px;align-items:center;min-width:200px;max-width:440px;display:flex;position:relative}.dash-search-icon{color:var(--text-dim);pointer-events:none;position:absolute;left:10px}.dash-search .dash-search-input{background:var(--surface-input);width:100%;color:var(--text-bright);border:1px solid var(--border-light);border-radius:var(--radius-control);font:400 var(--text-13)/1 var(--font-ui);padding:8px 32px}.dash-search .dash-search-input:focus{border-color:var(--accent)}.dash-search .dash-search-input::placeholder{color:var(--text-dim)}.dash-search-clear{border-radius:var(--radius-control);width:20px;height:20px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid;position:absolute;right:7px}.dash-search-clear:hover{color:var(--text-bright);background:var(--wash-hover)}.dash-search-kbd{pointer-events:none;color:var(--text-dim);font:500 11px/1 var(--font-ui);border:1px solid var(--edge-strong);background:var(--surface-canvas);border-radius:4px;padding:3px 5px;position:absolute;right:8px}.dash-search:focus-within .dash-search-kbd{display:none}.dash-search:has(.dash-search-clear) .dash-search-kbd{display:none}.dash-toolbar-right{flex:none;align-items:center;gap:10px;display:flex}.dash-sort{align-items:center;gap:6px;display:flex}.dash-sort-label{color:var(--text-dim);font:400 var(--text-12)/1 var(--font-ui)}.dash-sort select{font:500 var(--text-12)/1 var(--font-ui);background-position:right 6px center;padding:7px 22px 7px 9px}.dash-view{border:1px solid var(--border-light);border-radius:var(--radius-control);display:inline-flex;overflow:hidden}.dash-view-btn{width:34px;height:30px;color:var(--text-dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:0;place-items:center;padding:0;display:grid}.dash-view-btn+.dash-view-btn{border-left:1px solid var(--border-light)}.dash-view-btn:hover{background:var(--wash-hover);color:var(--text)}.dash-view-btn.is-active{background:var(--accent-tint);color:var(--text-bright)}.dash-view-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.dash-collection{flex-direction:column;gap:28px;display:flex}.dash-group{flex-direction:column;gap:14px;display:flex}.dash-group-head{font:600 var(--text-12)/1 var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:8px;margin:0;display:flex}.dash-group-star{color:var(--accent)}.dash-group-star svg{fill:currentColor}.dash-group-count{background:var(--surface-panel);border:1px solid var(--edge);min-width:18px;height:18px;color:var(--text-dim);font:600 10px/1 var(--font-ui);letter-spacing:0;border-radius:9px;place-items:center;padding:0 5px;display:inline-grid}.dash-list{background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--panel-radius);flex-direction:column;display:flex;overflow:hidden}.proj-row{cursor:pointer;border-bottom:1px solid var(--edge);transition:background var(--dur-fast) var(--ease-out);align-items:center;gap:12px;padding:8px 10px;display:flex;position:relative}.proj-row:last-child{border-bottom:none}.proj-row:hover{background:var(--wash-hover)}.proj-row:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.proj-row .proj-thumb{aspect-ratio:auto;border-radius:4px;flex:none;width:48px;height:27px}.proj-row .proj-thumb-ph{font-size:12px}.proj-row-name{min-width:0;font:500 var(--text-13)/1.2 var(--font-ui);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.proj-row-time{color:var(--text-dim);font:400 var(--text-12)/1 var(--font-ui);white-space:nowrap;flex:none}.proj-row-actions{flex:none;align-items:center;gap:2px;display:flex}.proj-row .proj-pin,.proj-row .proj-act{color:var(--text-dim);opacity:0}.proj-row:hover .proj-pin,.proj-row:focus-within .proj-pin,.proj-row:hover .proj-act,.proj-row:focus-within .proj-act{opacity:1}.proj-row .proj-pin.is-pinned{opacity:1;color:var(--accent)}.proj-row .proj-pin:hover,.proj-row .proj-act:hover{background:var(--wash-hover);color:var(--text-bright)}.proj-row .proj-act-danger:hover{background:var(--danger);color:#fff}.proj-card-skeleton{aspect-ratio:220/170;background:var(--surface-panel);border:1px solid var(--edge);border-radius:var(--panel-radius);position:relative;overflow:hidden}.proj-card-skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--wash-hover), transparent);animation:1.4s ease-in-out infinite proj-skeleton-sheen;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.proj-card-skeleton:after{background:var(--wash-hover);animation:none}}@keyframes proj-skeleton-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}.export-paywall-overlay{z-index:var(--z-export-gate);position:fixed;inset:0}.export-paywall-close{border:1px solid var(--edge-strong);border-radius:var(--radius-control);width:32px;height:32px;color:var(--text-dim);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;place-items:center;font-size:20px;line-height:1;display:grid;position:fixed;top:16px;right:20px}.export-paywall-close:hover{background:var(--wash-hover);color:var(--text-bright)}
