/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-md:calc(var(--radius) * .8);--radius-lg:var(--radius);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.resize{resize:both}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.paused{animation-play-state:paused}.running{animation-play-state:running}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.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{--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(78.7% .158 158);--primary-foreground:oklch(14.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(78.7% .158 158);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(78.7% .158 158);--primary-foreground:oklch(14.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(78.7% .158 158);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}:root{--bg:var(--background);--fg:var(--foreground);--panel:var(--card);--panel-2:var(--popover);--accent:var(--primary);--accent-fg:var(--primary-foreground);--muted:var(--muted-foreground);--error:var(--destructive);--drop-border:var(--border);--drop-active:var(--primary)}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--background);color:var(--foreground);color-scheme:dark}.auth-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:var(--background)}.auth-card{width:100%;max-width:380px;padding:2rem 1.75rem 1.75rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;display:flex;flex-direction:column;align-items:center}.auth-brand{height:44px;width:auto;margin-bottom:.75rem}.auth-title{margin:0 0 .4rem;font-size:1.3rem;font-weight:600}.auth-subtitle{margin:0 0 1.25rem;font-size:.92rem;color:var(--muted-foreground);line-height:1.5}.auth-google{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;width:100%;padding:.7rem 1rem;background:var(--primary);color:var(--primary-foreground);border:none;border-radius:var(--radius-md);font-size:.95rem;font-weight:600;cursor:pointer;transition:filter .12s}.auth-google:hover:not(:disabled){filter:brightness(1.05)}.auth-google:disabled{opacity:.65;cursor:progress}.auth-google svg{background:#fff;border-radius:999px;padding:2px}.auth-error{margin:.75rem 0 0;padding:.5rem .75rem;background:color-mix(in oklch,var(--destructive) 18%,transparent);border:1px solid color-mix(in oklch,var(--destructive) 40%,transparent);border-radius:var(--radius-md);color:var(--destructive);font-size:.85rem}.auth-fineprint{margin:1rem 0 0;font-size:.78rem;color:var(--muted-foreground);line-height:1.5}.auth-fineprint a{color:var(--primary);text-decoration:none}.auth-fineprint a:hover{text-decoration:underline}.auth-signout{margin-top:1rem;background:transparent;border:1px solid var(--border);color:var(--foreground);padding:.45rem .9rem;border-radius:var(--radius-md);font-size:.85rem;cursor:pointer}.auth-signout:hover{border-color:color-mix(in oklch,var(--foreground) 30%,transparent)}.auth-splash{flex-direction:row;gap:.6rem;padding:1.25rem 1.5rem;width:auto}.auth-spinner{width:16px;height:16px;border-radius:50%;border:2px solid color-mix(in oklch,var(--foreground) 25%,transparent);border-top-color:var(--primary);animation:auth-spin .9s linear infinite}.auth-splash-label{font-size:.88rem;color:var(--muted-foreground)}@keyframes auth-spin{to{transform:rotate(360deg)}}.user-menu{position:relative;margin-left:.5rem}.user-menu-trigger{background:transparent;border:1px solid transparent;padding:0;border-radius:999px;cursor:pointer;display:block;line-height:0}.user-menu-trigger:hover{border-color:var(--border)}.user-menu-avatar{display:block;width:28px;height:28px;border-radius:999px;object-fit:cover}.user-menu-initials{background:var(--primary);color:var(--primary-foreground);display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;letter-spacing:.02em}.user-menu-dropdown{position:absolute;top:calc(100% + .4rem);right:0;min-width:200px;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 12px 28px #0006;padding:.4rem;z-index:1000}.user-menu-email{padding:.45rem .6rem .55rem;font-size:.78rem;color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-bottom:.3rem;word-break:break-all}.user-menu-signout{width:100%;text-align:left;padding:.45rem .6rem;background:transparent;border:none;color:var(--foreground);font-size:.88rem;border-radius:calc(var(--radius-md) - 2px);cursor:pointer}.user-menu-signout:hover{background:var(--accent);color:var(--accent-foreground)}.app-layout{display:grid;grid-template-columns:220px 1fr 340px;grid-template-rows:auto 1fr;grid-template-areas:"topbar topbar topbar" "slots  editor history";height:100vh;min-height:600px;gap:0;background:var(--panel)}.app-layout>.topbar{grid-area:topbar}.app-layout>.slot-rail{grid-area:slots;border-right:1px solid var(--border)}.app-layout>.editor-pane{grid-area:editor;min-width:0}.app-layout>.history-rail{grid-area:history;border-left:1px solid var(--border);min-width:0}@media(max-width:1100px){.app-layout{grid-template-columns:180px 1fr 280px}}@media(max-width:900px){.app-layout{grid-template-columns:1fr;grid-template-areas:"topbar" "editor" "slots" "history";height:auto}.app-layout>.slot-rail{border-right:none;border-top:1px solid var(--border)}.app-layout>.history-rail{border-left:none;border-top:1px solid var(--border)}}.app{max-width:1100px;margin:0 auto;padding:2rem 2rem 6rem}.muted{color:var(--muted)}code{background:var(--panel-2);padding:.1em .4em;border-radius:4px;font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}button{font:inherit;border-radius:6px;cursor:pointer;padding:.5rem 1rem;border:1px solid var(--border);background:var(--panel);color:inherit;transition:background .12s,border-color .12s}button:hover:not(:disabled){border-color:#3a4049}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}button.primary:hover:not(:disabled){background:#4f7ee0}button.ghost{background:transparent}.error{color:var(--error);margin:0}.empty{color:var(--muted);font-style:italic}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.toolbar-left h1{margin:0 0 .15rem;font-size:1.4rem;letter-spacing:-.02em}.toolbar-left .project-name{margin:0;font-size:.9rem;color:var(--muted);display:flex;align-items:center;gap:.5rem}.badge{background:var(--panel-2);border:1px solid var(--border);color:var(--muted);font-size:.7rem;padding:.05rem .4rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.badge-warn{border-color:#d8b56b66;color:#d8b56b}.open-in-tab{font:inherit;text-decoration:none;padding:.5rem 1rem;border:1px solid rgba(216,181,107,.4);border-radius:6px;background:transparent;color:#d8b56b;cursor:pointer;white-space:nowrap;transition:background .12s}.open-in-tab:hover{background:#d8b56b14}.toolbar-right{display:flex;gap:.5rem}.toolbar-error{flex-basis:100%}.stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;font-size:.9rem;color:var(--muted)}.stats strong{color:#e6e8eb;font-weight:600}.slots{display:grid;gap:1rem}.slot{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem 1.25rem;transition:border-color .12s,background .12s}.slot.slot-empty{border-style:dashed;border-color:var(--drop-border);background:transparent}.slot.slot-over{border-color:var(--drop-active);background:#5b8def0f}.slot>header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.75rem}.slot h3{margin:0;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.slot h3 .prefix{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;background:var(--panel-2);padding:.1rem .5rem;border-radius:4px;color:var(--accent)}.slot .count{color:var(--muted);font-size:.85rem}.slot-new-btn{font-size:.75rem;padding:.2rem .55rem;margin-left:.5rem}.clip.clip-empty{border-style:dashed;opacity:.85}.clip-thumb-empty{display:grid;place-items:center;font-size:1.4rem;color:var(--muted)}.clip-empty-hint{display:block;font-size:.7rem;margin-top:.15rem}.clip-reveal{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:.95rem;padding:0 .35rem}.clip-reveal:hover{color:var(--accent)}.dropzone-hint{text-align:center;padding:1.5rem 0;pointer-events:none}.dropzone-hint p{margin:0}.dropzone-hint p+p{margin-top:.25rem;font-size:.85rem}.clips{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:.6rem}.clip{background:var(--panel-2);border:1px solid transparent;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;font-size:.85rem;min-width:0;position:relative;transition:border-color .12s}.clip:hover{border-color:var(--border)}.clip-thumb{position:relative;aspect-ratio:16 / 9;background:#0f1216;overflow:hidden}.clip-thumb img{width:100%;height:100%;object-fit:cover;display:block}.clip-thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,transparent 25%,rgba(255,255,255,.02) 25%,rgba(255,255,255,.02) 50%,transparent 50%,transparent 75%,rgba(255,255,255,.02) 75%) 0 / 12px 12px}.clip-meta{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;min-width:0}.clip-index{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--accent);font-size:.72rem;flex-shrink:0}.clip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.clip-remove{position:absolute;top:.35rem;right:.35rem;border:none;background:#0b0d10b3;color:#e6e8eb;font-size:1rem;line-height:1;width:22px;height:22px;border-radius:50%;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s}.clip:hover .clip-remove{opacity:1}.clip-remove:hover{background:var(--error);color:#0b0d10}.editor{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.editor-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.editor-header h2{margin:0;font-size:1.05rem;font-weight:600}.editor-hint{font-size:.85rem}.editor-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.editor-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:.85rem .95rem;display:flex;flex-direction:column;gap:.65rem;transition:border-color .12s,background .12s}.editor-card-over{border-color:var(--drop-active);background:#5b8def0f}.editor-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.editor-card-header h3{margin:0;font-size:.95rem;font-weight:600}.editor-card-clear{font-size:.8rem;padding:.25rem .6rem}.editor-card-empty{background:var(--panel-2);border:1px dashed var(--drop-border);border-radius:8px;padding:1.4rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.25rem;color:inherit;font-size:.9rem;cursor:pointer}.editor-card-empty:hover{border-color:#3a4049}.editor-card-empty .muted{font-size:.8rem}.editor-card-filename{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;color:#cfe0ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-card-hint{margin:0;font-size:.78rem}.editor-slider{display:grid;grid-template-columns:3rem 1fr 4rem;align-items:center;gap:.55rem;font-size:.82rem}.editor-slider input[type=range]{accent-color:var(--accent)}.editor-slider-val{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--accent);text-align:right}.overlay-preview{background:linear-gradient(45deg,#1a1d22 25%,transparent 25%,transparent 75%,#1a1d22 75%) 0 0 / 12px 12px,linear-gradient(45deg,#1a1d22 25%,#0f1216 25%,#0f1216 75%,#1a1d22 75%) 6px 6px / 12px 12px;background-color:#0f1216;border-radius:6px;border:1px solid var(--border);aspect-ratio:4 / 1;display:flex;align-items:center;justify-content:center;overflow:hidden}.overlay-preview img{max-width:80%;max-height:80%;object-fit:contain}.overlay-preview-placeholder{font-size:.78rem;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.overlay-positions{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;max-width:9rem}.pos-cell{font-size:.95rem;padding:.35rem 0;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.pos-cell:hover{border-color:#3a4049}.pos-cell.on{background:#5b8def26;border-color:var(--accent);color:var(--accent)}.caption-input{font:inherit;font-size:.9rem;background:var(--panel-2);color:inherit;border:1px solid var(--border);border-radius:6px;padding:.5rem .6rem;resize:vertical;min-height:2.4rem}.caption-input:focus{outline:none;border-color:var(--accent)}.caption-style-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.caption-color{display:flex;align-items:center;gap:.35rem;font-size:.78rem}.caption-color input[type=color]{width:28px;height:24px;border:1px solid var(--border);border-radius:4px;background:var(--panel-2);cursor:pointer;padding:0}.caption-align{display:flex;gap:.2rem;margin-left:auto}.align-btn{font-size:.95rem;padding:.25rem .55rem;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;color:var(--muted);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.align-btn.on{background:#5b8def26;border-color:var(--accent);color:var(--accent)}.transition-kinds{display:flex;gap:.4rem;flex-wrap:wrap}.trans-kind{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.3rem .85rem;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.trans-kind:not(:disabled):hover{border-color:#3a4049}.trans-kind.on{background:#5b8def26;border-color:var(--accent);color:var(--accent)}.trans-kind-soon{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;background:var(--panel);color:var(--muted);padding:.05rem .35rem;border-radius:4px}.generate-panel{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.generate-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.count-input{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.count-input input{font:inherit;width:5rem;padding:.4rem .6rem;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;color:inherit;text-align:right}.count-input input:focus{outline:none;border-color:var(--accent)}.generate-hint{font-size:.85rem;margin:.6rem 0 0}.generate-hint-warn{color:#d8b56b}.generated-list{margin-top:1.5rem}.generated-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.generated-header h2{margin:0;font-size:1.05rem;font-weight:600}.combo-rows{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.combo-row{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.5rem}.combo-row-main{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.combo-row-editing{border-color:var(--accent);background:#5b8def0a}.combo-custom-badge{margin-left:.4rem;color:var(--accent);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.85em}.combo-edit-btn{font-size:.85rem;padding:.35rem .75rem}.combo-edit-btn.on{border-color:var(--accent);color:var(--accent)}.combo-thumbs{display:flex;gap:.25rem;flex-wrap:wrap}.combo-thumb{position:relative;width:80px;aspect-ratio:16 / 9;background:#0f1216;border-radius:4px;overflow:hidden;flex-shrink:0}.combo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.combo-thumb-blank{width:100%;height:100%;background:linear-gradient(135deg,#0f1216 25%,#14171c 25%,#14171c 50%,#0f1216 50%) 0 / 8px 8px}.combo-thumb-prefix{position:absolute;bottom:2px;left:2px;background:#0b0d10d9;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.65rem;padding:.05rem .3rem;border-radius:2px}.combo-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--muted);background:transparent;padding:0;-webkit-user-select:all;user-select:all;flex:1;min-width:0}.render-btn{font-size:.85rem;padding:.35rem .75rem}.render-progress{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.4rem .75rem;font-size:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--accent);min-width:110px;text-align:center;overflow:hidden}.render-progress span{position:relative;z-index:1}.render-progress-bar{position:absolute;inset:0 auto 0 0;background:#5b8def26;transition:width .1s linear}.render-error{display:flex;gap:.5rem;align-items:center;font-size:.8rem;color:var(--error)}.render-done{display:flex;gap:.5rem;align-items:center;font-size:.8rem;color:var(--muted);max-width:320px}.render-done-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#9bcc8d}.render-targets{display:flex;align-items:center;gap:.75rem;margin-top:1rem;flex-wrap:wrap}.render-targets-label{font-size:.85rem}.render-targets-chips{display:flex;gap:.4rem;flex-wrap:wrap}.target-chip{display:inline-flex;align-items:center;gap:.4rem;font:inherit;font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--panel);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.25rem .7rem;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.target-chip:hover{border-color:#3a4049}.target-chip.on{background:#5b8def1f;border-color:var(--accent);color:#cfe0ff}.target-chip.source{border-style:dashed}.target-chip-source-badge{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--panel-2);padding:.05rem .35rem;border-radius:4px}.render-jobs{display:flex;gap:.3rem;flex-wrap:wrap;flex-shrink:0}.render-chip{position:relative;display:inline-flex;align-items:center;font-size:.72rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:.25rem .55rem;border-radius:4px;border:1px solid var(--border);background:var(--panel);color:var(--muted);white-space:nowrap;overflow:hidden;min-width:80px;justify-content:center}.render-chip.idle{opacity:.7}.render-chip.rendering{background:var(--panel-2);border-color:var(--accent);color:var(--accent)}.render-chip-bar{position:absolute;inset:0 auto 0 0;background:#5b8def33;z-index:0;transition:width .1s linear}.render-chip-label{position:relative;z-index:1}.render-chip.done{border-color:#9bcc8d80;color:#9bcc8d;background:#9bcc8d0f}.render-chip.error{border-color:#f4a89b99;color:var(--error);background:#f4a89b0f}.batch-controls{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.batch-controls.running{background:var(--panel);border:1px solid var(--accent);border-radius:8px;padding:.5rem .75rem}.batch-controls.running.paused{border-color:#d8b56b}.batch-controls.running.paused .batch-progress-bar{background:#d8b56b33}.batch-controls.running.paused .batch-progress-label{color:#d8b56b}.combo-editor{border-top:1px dashed var(--border);padding-top:.75rem;display:flex;flex-direction:column;gap:.65rem}.combo-editor-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.combo-editor-strip{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted)}.combo-editor-slot{display:inline-flex;align-items:center;gap:.4rem}.combo-editor-slot-prefix{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--panel);border:1px solid var(--border);color:var(--accent);padding:.05rem .45rem;border-radius:4px;font-size:.7rem}.combo-editor-sep{color:var(--muted);opacity:.5}.combo-editor-reset{font-size:.78rem;padding:.25rem .6rem}.combo-editor-track{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.55rem .7rem;display:flex;flex-direction:column;gap:.45rem}.combo-editor-track-header{display:flex;align-items:center;justify-content:space-between}.combo-editor-track-header h4{margin:0;font-size:.85rem;font-weight:600}.combo-editor-add{font-size:.78rem;padding:.25rem .6rem;background:transparent;border:1px dashed var(--drop-border);color:var(--muted);border-radius:4px;cursor:pointer}.combo-editor-add:hover{border-color:var(--accent);color:var(--accent)}.combo-editor-empty{font-size:.8rem;margin:0}.combo-editor-clip-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.3rem}.combo-editor-clip{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;overflow:hidden}.combo-editor-clip.open{border-color:var(--accent)}.combo-editor-clip-summary{display:flex;align-items:center;gap:.6rem;width:100%;padding:.4rem .6rem;background:transparent;border:none;cursor:pointer;color:inherit;text-align:left;font-size:.85rem}.combo-editor-clip-summary:hover{background:#5b8def0d}.combo-editor-clip-thumb{width:28px;height:28px;border-radius:4px;background:#0f1216;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.combo-editor-clip-thumb img{width:100%;height:100%;object-fit:contain}.combo-editor-clip-thumb-blank{width:14px;height:14px;background:var(--border);border-radius:3px}.combo-editor-clip-icon{width:28px;height:28px;border-radius:4px;background:var(--panel);border:1px solid var(--border);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.combo-editor-clip-name{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:#cfe0ff;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combo-editor-clip-time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;white-space:nowrap}.combo-editor-clip-meta{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;min-width:36px;text-align:right}.combo-editor-clip-fields{padding:.55rem .7rem .7rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.55rem}.combo-editor-clip-fields .overlay-positions{max-width:9rem}.combo-editor-times{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.combo-editor-time{display:flex;align-items:center;gap:.3rem;font-size:.8rem}.combo-editor-time input{font:inherit;width:4.5rem;padding:.25rem .4rem;background:var(--panel);border:1px solid var(--border);border-radius:4px;color:inherit;text-align:right}.combo-editor-time input:focus{outline:none;border-color:var(--accent)}.combo-editor-time-clear{font-size:.85rem;width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center}.combo-editor-clip-actions{display:flex;justify-content:flex-end}.library{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}.library-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.75rem;gap:.5rem;flex-wrap:wrap}.library-header h2{margin:0;font-size:1.05rem;font-weight:600}.library-hint,.library-empty-hint{font-size:.9rem;margin:0 0 1rem}.permission-cta{background:#d8b56b14;border:1px solid rgba(216,181,107,.3);color:var(--fg);border-radius:8px;padding:.7rem .85rem;margin:0 0 .85rem;font-size:.88rem;line-height:1.5;display:grid;gap:.55rem}.permission-cta strong{color:#d8b56b}.permission-cta-btn{justify-self:start;font-size:.85rem}.topbar-grant{font-size:.85rem}.library-list{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.library-row{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:.75rem .9rem}.library-row-header{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.5rem}.library-combo-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem;color:#e6e8eb;-webkit-user-select:all;user-select:all}.library-row-meta{font-size:.8rem}.library-row-delete{margin-left:auto;font-size:.8rem;padding:.3rem .7rem}.fav-toggle{font-size:1.05rem;line-height:1;width:28px;height:28px;border-radius:6px;border:1px solid var(--border);background:var(--panel-2);color:var(--muted);padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.fav-toggle:hover{border-color:#d8b56b}.fav-toggle.on{color:#f0c674;border-color:#d8b56b80;background:#d8b56b14}.library-files{list-style:none;padding:0;margin:0;display:grid;gap:.3rem}.library-file{display:flex;align-items:center;gap:.6rem;font-size:.85rem;background:var(--panel-2);border-radius:6px;padding:.4rem .6rem}.library-file-aspect{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--accent);font-size:.78rem;min-width:70px}.library-file-size{font-size:.78rem;flex:1}.library-file-actions{display:flex;gap:.3rem}.library-file-btn{font-size:.78rem;padding:.25rem .6rem}.library-file-delete{width:28px;padding:.25rem 0;font-size:1rem;line-height:1}.library-file-delete:hover{color:var(--error);border-color:var(--error)}.batch-hint{font-size:.85rem}.batch-progress{position:relative;flex:1;min-width:200px;background:var(--panel-2);border-radius:4px;overflow:hidden;height:28px;display:flex;align-items:center;justify-content:center}.batch-progress-bar{position:absolute;inset:0 auto 0 0;background:#5b8def40;transition:width .2s ease-out;z-index:0}.batch-progress-label{position:relative;z-index:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:var(--accent)}.topbar{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap}.topbar-brand{display:flex;align-items:center;gap:.5rem}.topbar-brand-mark{height:36px;width:auto;object-fit:contain;display:block}.topbar-brand-name{font-weight:600;font-size:.95rem;letter-spacing:-.01em}.topbar-help{width:20px;height:20px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--muted);font-family:Times New Roman,Georgia,serif;font-style:italic;font-weight:700;font-size:.78rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin-left:.25rem;transition:color .12s,border-color .12s,background .12s}.topbar-help:hover{color:var(--accent-fg);border-color:var(--accent);background:var(--accent)}.guide-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.guide-modal{background:var(--panel);color:var(--fg);border:1px solid var(--border);border-radius:10px;width:min(560px,100%);max-height:calc(100vh - 3rem);display:flex;flex-direction:column;box-shadow:0 20px 50px #00000073}.guide-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.85rem 1rem;border-bottom:1px solid var(--border)}.guide-header h2{margin:0;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.6rem}.guide-step-num{font-size:.72rem;font-weight:600;color:var(--muted);background:#ffffff0f;padding:.15em .55em;border-radius:999px;letter-spacing:.04em}.guide-close{font-size:1.2rem;line-height:1;width:26px;height:26px;display:flex;align-items:center;justify-content:center;padding:0}.guide-body{padding:1.2rem 1.4rem;overflow-y:auto;font-size:.9rem;line-height:1.55;min-height:180px}.guide-demo{background:var(--bg);border:1px dashed var(--border);border-radius:8px;padding:1.4rem 1rem;margin-bottom:1rem;display:flex;align-items:center;justify-content:center}.guide-demo-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.guide-demo-tight{gap:.35rem}.guide-demo button:disabled,.guide-demo .target-chip{opacity:1;cursor:default}.guide-mock-slot{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--panel);border:1px solid var(--border);border-radius:6px;min-width:200px}.guide-mock-prefix{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;background:var(--accent);color:var(--accent-fg);font-size:.72rem;font-weight:700}.guide-mock-hint{font-size:.8rem}.guide-mock-input{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:.25rem .5rem;background:var(--panel);border:1px solid var(--border);border-radius:4px;font-variant-numeric:tabular-nums;font-size:.85rem}.guide-mock-input.wide{justify-content:flex-start;min-width:180px;font-variant-numeric:normal}.guide-demo-naming{display:flex;flex-direction:column;gap:.45rem;width:100%;max-width:380px}.guide-demo-naming-row{display:flex;align-items:center;gap:.6rem}.guide-demo-naming-row>span:first-child{width:56px;font-size:.8rem}.guide-demo-naming-preview{margin-top:.4rem;padding-top:.4rem;border-top:1px dashed var(--border);font-size:.78rem;color:var(--muted);word-break:break-all}.guide-demo-naming-preview code{background:#ffffff0f;padding:.05em .35em;border-radius:3px;font-size:.95em;color:var(--fg)}.guide-text{margin:0}.guide-text code{background:#ffffff0f;padding:.05em .35em;border-radius:3px;font-size:.85em}.guide-text kbd{background:#ffffff14;border:1px solid var(--border);border-radius:3px;padding:0 .4em;font-size:.82em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.guide-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-top:1px solid var(--border)}.guide-dots{display:flex;gap:.4rem}.guide-dot{width:8px;height:8px;border-radius:50%;background:var(--border);border:none;cursor:pointer;padding:0;transition:background .12s,transform .12s}.guide-dot:hover{background:var(--muted)}.guide-dot.on{background:var(--accent);transform:scale(1.15)}.guide-nav{display:flex;gap:.5rem}.topbar-folder{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.topbar-project-name{font-size:.85rem;color:var(--muted);max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-spacer{flex:1}.topbar-targets{display:flex;gap:.3rem;flex-wrap:wrap}.topbar-targets .target-chip{font-size:.72rem;padding:.2rem .55rem}.topbar-assets{display:flex;gap:.3rem}.topbar-btn{font-size:.82rem;padding:.35rem .75rem}.topbar-asset-btn{background:var(--panel-2);border:1px solid var(--border);color:#cfe0ff;font-weight:500}.topbar-asset-btn:hover:not(:disabled){border-color:var(--accent)}.topbar-error{color:var(--error);cursor:help;font-weight:700}.topbar-fsa-warn{font-size:.78rem}.topbar-normalize{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;border-radius:999px;background:var(--panel-2);border:1px solid var(--border);color:#cfe0ff;font-size:.8rem;white-space:nowrap;cursor:help}.topbar-normalize-spinner{width:.8rem;height:.8rem;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:topbar-normalize-spin .8s linear infinite}@keyframes topbar-normalize-spin{to{transform:rotate(360deg)}}.topbar-normalize-label{max-width:28rem;overflow:hidden;text-overflow:ellipsis}.slot-rail{background:var(--panel);overflow-y:auto;padding:.6rem}.slot-rail-tiles{display:flex;flex-direction:column;gap:.5rem}.slot-tile{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:.5rem .6rem;display:flex;flex-direction:column;gap:.4rem;transition:border-color .12s,background .12s}.slot-tile.slot-tile-empty{border-style:dashed;background:transparent}.slot-tile.slot-tile-over{border-color:var(--drop-active);background:#5b8def0f}.slot-tile-head{display:flex;align-items:center;gap:.4rem;font-size:.85rem}.slot-tile-prefix{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;background:var(--panel);border:1px solid var(--border);color:var(--accent);padding:.05rem .4rem;border-radius:4px;flex-shrink:0}.slot-tile-name{font-weight:600;text-transform:capitalize;flex:1;min-width:0}.slot-tile-count{font-size:.78rem}.slot-tile-hint{margin:0;text-align:center;font-size:.78rem;padding:.6rem 0}.slot-tile-clips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:.3rem}.slot-clip-chip{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:.2rem;display:flex;flex-direction:column;align-items:stretch;gap:.15rem;position:relative;transition:border-color .12s}.slot-clip-chip:hover{border-color:#3a4049}.slot-clip-chip.on{border-color:var(--accent);background:#5b8def14}.slot-clip-chip-thumb{aspect-ratio:16 / 9;background:#0f1216;border-radius:3px;overflow:hidden}.slot-clip-chip-thumb img{width:100%;height:100%;object-fit:cover;display:block}.slot-clip-chip-blank{width:100%;height:100%;background:linear-gradient(135deg,#0f1216 25%,#14171c 25%,#14171c 50%,#0f1216 50%) 0 / 8px 8px}.slot-clip-chip-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.65rem;color:var(--muted);text-align:center}.slot-clip-chip.on .slot-clip-chip-label{color:var(--accent)}.slot-clip-chip-remove{position:absolute;top:1px;right:1px;background:#0b0d10b3;color:#e6e8eb;border:none;font-size:.85rem;line-height:1;width:16px;height:16px;border-radius:50%;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s}.slot-clip-chip:hover .slot-clip-chip-remove{opacity:1}.slot-clip-chip-remove:hover{background:var(--error);color:#0b0d10}.slot-clip-chip-empty{border-style:dashed;opacity:.85}.slot-clip-chip-blank-empty{background:transparent;display:grid;place-items:center;font-size:1.2rem;color:var(--muted)}.slot-clip-chip-reveal{position:absolute;top:1px;right:19px;background:#0b0d10b3;color:#e6e8eb;border:none;font-size:.75rem;line-height:1;width:16px;height:16px;border-radius:50%;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s}.slot-clip-chip:hover .slot-clip-chip-reveal{opacity:1}.slot-clip-chip-reveal:hover{background:var(--accent);color:#0b0d10}.slot-tile-new{background:transparent;border:1px dashed var(--border);color:var(--muted);border-radius:6px;padding:.25rem .5rem;font-size:.72rem;cursor:pointer;align-self:flex-start;transition:border-color .12s,color .12s}.slot-tile-new:hover{border-color:var(--accent);color:var(--accent)}.slot-tile-new-input{background:var(--panel);border:1px solid var(--accent);color:#e6e8eb;border-radius:6px;padding:.25rem .5rem;font-size:.78rem;outline:none;width:100%;box-sizing:border-box}.slot-tile-loose{background:#eea74214;border:1px solid rgba(238,167,66,.45);border-radius:6px;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.35rem;font-size:.72rem;line-height:1.3}.slot-tile-loose-text strong{color:#ffce82}.slot-tile-loose-btn{align-self:flex-start;background:transparent;border:1px solid rgba(238,167,66,.6);color:#ffce82;border-radius:4px;padding:.2rem .55rem;font-size:.7rem;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;transition:background .12s,color .12s}.slot-tile-loose-btn:hover{background:#eea7422e;color:#ffe1ad}.editor-pane{display:flex;flex-direction:column;background:#0d1015;overflow:hidden}.editor-pane-empty{align-items:center;justify-content:center}.editor-pane-empty-hint{margin:1rem 1.5rem;text-align:center;font-size:.9rem}.preview-aspect-picker{display:flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap}.preview-aspect-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;margin-right:.25rem}.preview-aspect-chip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;background:var(--panel-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.2rem .6rem;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.preview-aspect-chip:hover{border-color:#3a4049}.preview-aspect-chip.on{background:#5b8def29;border-color:var(--accent);color:#cfe0ff}.preview-canvas{background:#000;border-bottom:1px solid var(--border);flex:1 1 auto;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;position:relative}.preview-canvas-empty{background:linear-gradient(135deg,#0f1216 25%,#14171c 25%,#14171c 50%,#0f1216 50%) 0 / 16px 16px}.preview-canvas-label{font-size:.85rem}.preview-canvas-strip{display:flex;gap:.4rem;width:100%;max-width:720px;height:60%}.preview-canvas-slot{position:relative;flex:1;background:#0f1216;border:1px solid var(--border);border-radius:4px;overflow:hidden}.preview-canvas-slot img{width:100%;height:100%;object-fit:cover;display:block}.preview-canvas-blank{width:100%;height:100%;background:linear-gradient(135deg,#0f1216 25%,#14171c 25%,#14171c 50%,#0f1216 50%) 0 / 12px 12px}.preview-canvas-prefix{position:absolute;bottom:4px;left:4px;background:#0b0d10d9;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.65rem;padding:.05rem .35rem;border-radius:2px}.preview-canvas-overlay-label{font-size:.75rem}.editor-pane-timeline{background:var(--panel);border-top:1px solid var(--border);padding:.75rem 1rem;overflow-y:auto;flex:0 1 50%;min-height:200px}.editor-pane-timeline .combo-editor{border-top:none;padding-top:0}.combo-strip{background:var(--panel);padding:.6rem 1rem .85rem;display:flex;flex-direction:column;gap:.55rem;overflow:hidden}.combo-strip-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.combo-strip-header h2{margin:0;font-size:.95rem;font-weight:600}.combo-strip-gen{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.combo-strip-remaining{font-size:.78rem}.combo-strip-batch-stack{display:flex;flex-direction:column;gap:.5rem;margin-left:auto;width:100%}.combo-strip-batch{display:flex;align-items:center;gap:.5rem;margin-left:auto}.output-naming{border:1px solid var(--border);border-radius:6px;background:var(--bg);font-size:.85rem}.output-naming-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .6rem;background:transparent;border:none;text-align:left;cursor:pointer;color:var(--fg);font-size:.85rem}.output-naming-toggle:hover{background:#ffffff08}.output-naming-preview{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.output-naming-chev{font-size:.7rem;color:var(--muted)}.output-naming-body{display:flex;flex-direction:column;gap:.5rem;padding:.5rem .6rem .6rem;border-top:1px solid var(--border)}.output-naming-row{display:flex;align-items:center;gap:.5rem}.output-naming-row>span{width:60px;font-size:.78rem}.output-naming-row>input{flex:1;padding:.3rem .5rem;background:var(--panel);border:1px solid var(--border);border-radius:4px;color:var(--fg);font-size:.85rem}.output-naming-toggle-row{display:flex;align-items:center;gap:.5rem;font-size:.82rem;cursor:pointer}.output-naming-help{margin:.2rem 0 0;font-size:.75rem;line-height:1.4}.output-naming-help code{background:#ffffff0f;padding:0 .3em;border-radius:3px;font-size:.9em}.combo-strip-batch.running{background:#5b8def0f;border:1px solid var(--accent);border-radius:6px;padding:.25rem .6rem}.combo-strip-batch.running.paused{border-color:#d8b56b}.combo-strip-batch.running.paused .batch-progress-label{color:#d8b56b}.combo-strip-empty{margin:0;font-size:.85rem}.combo-strip-list{list-style:none;margin:0;padding:0 0 .25rem;display:flex;gap:.5rem;overflow-x:auto}.combo-card{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:.4rem .5rem;display:flex;align-items:center;gap:.5rem;flex-shrink:0;transition:border-color .12s,background .12s}.combo-card.on{border-color:var(--accent);background:#5b8def14}.combo-card.customized{border-style:solid;border-color:#5b8def80}.combo-card-body{background:transparent;border:none;padding:0;cursor:pointer;color:inherit;display:flex;align-items:center;gap:.5rem;text-align:left}.combo-card-thumbs{display:flex;gap:.15rem}.combo-card-thumb{position:relative;width:38px;aspect-ratio:16 / 9;background:#0f1216;border-radius:3px;overflow:hidden;flex-shrink:0}.combo-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.combo-card-thumb-blank{width:100%;height:100%;background:linear-gradient(135deg,#0f1216 25%,#14171c 25%,#14171c 50%,#0f1216 50%) 0 / 6px 6px}.combo-card-prefix{position:absolute;bottom:1px;left:1px;background:#0b0d10d9;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.55rem;padding:0 .2rem;border-radius:2px}.combo-card-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;color:var(--muted);background:transparent;padding:0;display:flex;align-items:center;gap:.25rem}.combo-card-jobs{display:flex;gap:.15rem}.render-dot{width:8px;height:8px;border-radius:50%;background:var(--border);display:inline-block}.render-dot.rendering{background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--p, 0%),rgba(91,141,239,.2) var(--p, 0%))}.render-dot.done{background:#9bcc8d}.render-dot.error{background:var(--error)}.combo-card-render{font-size:.85rem;padding:.25rem .5rem;min-width:32px}.combo-card-fav{border:none;background:transparent;color:var(--muted);font-size:1.05rem;line-height:1;padding:.25rem .4rem;cursor:pointer;border-radius:4px;transition:color .12s ease,background .12s ease}.combo-card-fav:hover{color:var(--fg);background:#ffffff0d}.combo-card-fav.on{color:#f57}.combo-card.saved{border-color:#ff55774d}.history-rail{background:var(--panel);overflow-y:auto;padding:.6rem .75rem}.history-rail .library{margin-top:0;padding-top:0;border-top:none}.history-rail .library-header{margin-bottom:.6rem}.history-rail .library-row{padding:.5rem .6rem}.history-rail .library-list{gap:.4rem}.tl{display:flex;flex-direction:column;gap:.6rem;font-size:.78rem}.tl-grid{display:grid;grid-template-columns:92px 1fr;gap:0;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;overflow:hidden;-webkit-user-select:none;user-select:none}.tl-layers{display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--border)}.tl-layer-spacer{height:22px;border-bottom:1px solid var(--border);background:var(--panel-2)}.tl-layer{height:32px;padding:0 .6rem;display:flex;align-items:center;font-size:.74rem;color:var(--muted);border-bottom:1px solid var(--border);font-weight:500}.tl-layer:last-child{border-bottom:none}.tl-layer-video{color:#cfe0ff}.tl-layer-bgm{color:#d8b56b}.tl-layer-overlay{color:#9bcc8d}.tl-layer-caption{color:#f4a89b}.tl-tracks{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent 24px,rgba(255,255,255,.015) 24px,rgba(255,255,255,.015) 48px),var(--panel-2)}.tl-snap-guide{position:absolute;top:0;bottom:0;width:0;border-left:1px dashed #5fe3ff;pointer-events:none;z-index:5}.tl-ruler{position:relative;height:22px;border-bottom:1px solid var(--border);background:var(--panel-2)}.tl-tick{position:absolute;top:4px;font-size:.65rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);transform:translate(-50%);white-space:nowrap}.tl-tick:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:1px;height:4px;background:var(--border)}.tl-slot-boundary{position:absolute;top:0;bottom:0;width:1px;background:#5b8def80;pointer-events:none}.tl-lane{position:relative;height:32px;border-bottom:1px solid var(--border);overflow:hidden}.tl-lane:last-child{border-bottom:none}.tl-lane-empty{display:flex;align-items:center;padding-left:.6rem;font-size:.72rem;color:var(--muted)}.tl-lane-hint{position:absolute;left:.6rem;top:50%;transform:translateY(-50%);font-size:.7rem;pointer-events:none}.tl-lane:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tl-video-block{position:absolute;top:4px;bottom:4px;background:linear-gradient(180deg,#5b8def66,#5b8def2e);border:1px solid rgba(91,141,239,.7);border-radius:3px;display:flex;align-items:center;justify-content:space-between;padding:0 .4rem;color:#cfe0ff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;overflow:hidden;white-space:nowrap}.tl-video-block.probing{border-style:dashed;opacity:.7}.tl-video-prefix{font-weight:700}.tl-video-dur{color:var(--muted);font-size:.65rem}.tl-bgm-bar{position:absolute;top:6px;bottom:6px;background:linear-gradient(180deg,#d8b56b59,#d8b56b26);border:1px solid rgba(216,181,107,.7);border-radius:3px;display:flex;align-items:center;padding:0 .4rem;color:#f0c674;font-size:.7rem;overflow:hidden;white-space:nowrap}.tl-bgm-label{text-overflow:ellipsis;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tl-clip{position:absolute;top:4px;bottom:4px;border-radius:4px;border:1px solid;display:flex;align-items:center;padding:0 .6rem;font-size:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;cursor:grab;white-space:nowrap;overflow:hidden;transition:filter .12s;touch-action:none}.tl-clip:hover{filter:brightness(1.15)}.tl-clip.dragging{cursor:grabbing;filter:brightness(1.25);z-index:2}.tl-clip.on{outline:2px solid var(--accent);outline-offset:-1px;z-index:3}.tl-clip-overlay{background:linear-gradient(180deg,#9bcc8d59,#9bcc8d2e);border-color:#9bcc8d99;color:#cce8c0}.tl-clip-caption{background:linear-gradient(180deg,#f4a89b52,#f4a89b26);border-color:#f4a89b99;color:#f9c8be}.tl-clip-audio{background:linear-gradient(180deg,#96bbf559,#96bbf52e);border-color:#96bbf599;color:#cfe1fb}.tl-layer-audio{color:#cfe1fb}.audio-loop-toggle{display:flex;align-items:center;gap:.5rem;font-size:.85rem;margin-top:.4rem}.audio-loop-toggle input{margin:0}.tl-clip-label{flex:1;text-overflow:ellipsis;overflow:hidden}.tl-clip-handle{position:absolute;top:0;bottom:0;width:6px;cursor:ew-resize;background:transparent;z-index:1}.tl-clip-handle:before{content:"";position:absolute;top:6px;right:1px;bottom:6px;left:1px;background:#fff6;border-radius:1px;opacity:0;transition:opacity .12s}.tl-clip:hover .tl-clip-handle:before,.tl-clip.on .tl-clip-handle:before{opacity:1}.tl-clip-handle-l{left:0}.tl-clip-handle-r{right:0}.tl-props{background:var(--panel);border:1px solid var(--border);border-radius:6px}.tl-props-header{display:flex;align-items:center;gap:.5rem;padding:.45rem .7rem;border-bottom:1px solid var(--border)}.tl-props-title{font-weight:600;font-size:.85rem}.tl-props-subtitle{font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-props-close{font-size:1rem;width:26px;height:26px;padding:0;display:flex;align-items:center;justify-content:center}.tl-props-body{padding:.6rem .7rem;display:flex;flex-direction:column;gap:.55rem}.props-preview{background:linear-gradient(45deg,#1a1d22 25%,transparent 25%,transparent 75%,#1a1d22 75%) 0 0 / 12px 12px,linear-gradient(45deg,#1a1d22 25%,#0f1216 25%,#0f1216 75%,#1a1d22 75%) 6px 6px / 12px 12px;background-color:#0f1216;border:1px solid var(--border);border-radius:4px;aspect-ratio:4 / 1;display:flex;align-items:center;justify-content:center}.props-preview img{max-width:70%;max-height:80%;object-fit:contain}.history-rail{display:flex;flex-direction:column;padding:0;overflow:hidden}.rail-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--panel);flex-shrink:0}.rail-tab{flex:1;padding:.55rem .6rem;background:transparent;border:none;border-radius:0;color:var(--muted);font-size:.82rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.35rem;border-bottom:2px solid transparent}.rail-tab.on{color:#cfe0ff;border-bottom-color:var(--accent);background:#5b8def0f}.rail-tab:hover:not(.on){color:#cfd2d7}.rail-tab-count{background:var(--panel-2);border:1px solid var(--border);font-size:.65rem;padding:.05rem .4rem;border-radius:999px;color:var(--muted);font-weight:600}.rail-tab.on .rail-tab-count{border-color:var(--accent);color:var(--accent)}.rail-body{flex:1;overflow-y:auto;padding:.55rem .6rem}.rail-body .library{margin-top:0;padding-top:0;border-top:none}.combo-strip-rail{padding:0;border-top:none}.combo-strip-rail .combo-strip-header{flex-direction:column;align-items:stretch;gap:.5rem}.combo-strip-rail .combo-strip-batch{margin-left:0}.combo-strip-rail .combo-strip-list-rail{flex-direction:column;gap:.4rem;overflow-x:visible;padding-bottom:0}.combo-strip-rail .combo-card{width:100%;flex-shrink:1;align-items:stretch}.combo-strip-rail .combo-card-body{flex:1;min-width:0}.combo-strip-rail .combo-card-thumbs{flex-wrap:wrap;flex:0 0 auto}.combo-strip-rail .combo-card-id{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combo-strip-rail .combo-card-render{flex-shrink:0;align-self:center}.tl-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-bottom:.4rem}.tl-header-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tl-header-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:#cfe0ff;background:var(--panel);border:1px solid var(--border);padding:.18rem .5rem;border-radius:4px}.tl-header-stats{font-size:.78rem}.badge-custom{background:#5b8def1f;border-color:#5b8def80;color:var(--accent)}.tl-header-actions{display:flex;align-items:center;gap:.4rem}.tl-header-broadcast{font-size:.82rem;padding:.35rem .85rem}.preview{flex:1 1 auto;display:flex;flex-direction:column;background:#000;border-bottom:1px solid var(--border);min-height:240px;overflow:hidden}.preview-stage{flex:1 1 auto;position:relative;display:flex;align-items:center;justify-content:center;background:#000;min-height:0}.preview-hidden-video{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.preview-canvas-el{max-width:100%;max-height:100%;height:100%;width:auto;background:#000;display:block}.preview-transport{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--panel);border-top:1px solid var(--border);flex-shrink:0}.preview-play{width:36px;height:30px;padding:0;font-size:1rem;display:flex;align-items:center;justify-content:center;background:var(--panel-2)}.preview-play:hover:not(:disabled){background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.preview-scrub-wrap{flex:1;position:relative;display:flex;align-items:center;height:30px}.preview-scrub{width:100%;margin:0;position:relative;z-index:2;accent-color:var(--accent)}.preview-scrub-overlay{position:absolute;top:9px;right:0;bottom:9px;left:0;pointer-events:none;z-index:1}.preview-scrub-slot{position:absolute;top:0;bottom:0;background:#5b8def26;border-left:1px solid rgba(91,141,239,.5)}.preview-scrub-slot:first-child{border-left:none}.preview-time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;white-space:nowrap;min-width:9ch;text-align:right}
