:root{--background:#0b0b0f;--panel:#131319;--surface:#1a1a22;--surface-raised:#22222c;--ink:#ece7d8;--ink-soft:#bcb5a7;--ink-muted:#8a857a;--ink-faint:#565248;--rule:#26252e;--rule-strong:#34333d;--panel-raised:#19191f;--radius-tile:2px;--radius-control:8px;--radius-card:14px;--iris:#7f77d6;--iris-soft:#9a92e6;--danger:#d58b83;--attention:#f0b429;--settled:#3ecf8e;--stage:#08080b;--top-bar-content-height:56px;--top-bar-height:calc(var(--top-bar-content-height) + env(safe-area-inset-top))}*{box-sizing:border-box}html{min-width:320px;color-scheme:dark;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}body,html{max-width:100%;overflow-x:clip;background:var(--background)}body{min-height:100dvh;margin:0;overscroll-behavior-x:none;color:var(--ink-soft);font-family:var(--font-switzer),"Helvetica Neue",Arial,sans-serif;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility}button,input,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{border:0}a,button:not(:disabled){cursor:pointer}a:focus-visible,button:focus-visible{outline:1px solid var(--iris-soft);outline-offset:3px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}::selection{background:var(--iris);color:var(--background)}.studio-shell{min-height:100dvh;overflow-x:clip;background:var(--background)}.skip-link{position:fixed;z-index:100;top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));padding:9px 12px;border-radius:var(--radius-control);background:var(--ink);color:var(--background);font-size:12px;font-weight:600;text-decoration:none;transform:translateY(calc(-100% - max(8px, env(safe-area-inset-top))));transition:transform .12s ease}.skip-link:focus-visible{outline-color:var(--background);outline-offset:-3px;transform:translateY(0)}.top-bar{position:sticky;z-index:30;top:0;display:flex;height:var(--top-bar-height);align-items:center;justify-content:space-between;padding:env(safe-area-inset-top) max(22px,env(safe-area-inset-right)) 0 max(22px,env(safe-area-inset-left));border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--panel) 96%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand-lockup{display:inline-flex;width:54px;height:18px;align-items:center;color:var(--ink);text-decoration:none}.brand-mark{display:block;width:54px;height:16px;fill:currentColor}.account-control,.filter-tabs,.search-control,.top-actions{display:flex;align-items:center}.top-actions{gap:12px}.filter-tabs{gap:2px}.filter-button,.icon-control{display:grid;width:36px;height:36px;place-items:center;padding:0;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);transition:color .15s ease,background .15s ease,transform .15s cubic-bezier(.22,1,.36,1)}.filter-button:hover,.icon-control:hover{color:var(--ink)}.filter-button.is-active{background:var(--surface-raised);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule-strong)}.icon-control{width:36px}.avatar-button:active,.filter-button:active,.icon-control:active{transform:scale(.94)}.icon-control:disabled{cursor:default;opacity:.34;transform:none}.tooltip-control{position:relative}.tooltip-control:after{position:absolute;z-index:80;top:calc(100% + 8px);left:50%;padding:5px 7px;border:1px solid var(--rule-strong);border-radius:6px;background:var(--surface-raised);color:var(--ink);content:attr(data-tooltip);font-size:10px;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%,-3px);transition:opacity .12s ease,transform .12s ease}.tooltip-control:focus-visible:after,.tooltip-control:hover:after{opacity:1;transform:translate(-50%)}.search-control{height:34px;justify-content:flex-end;border:1px solid transparent;border-radius:var(--radius-control);color:var(--ink-muted);transition:border-color .16s ease,background .16s ease}.search-control.is-open{width:222px;gap:8px;padding-left:10px;border-color:var(--rule-strong);background:var(--surface)}.search-control.is-open:focus-within{border-color:var(--iris)}.search-control input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.search-control input::placeholder{color:var(--ink-faint)}.search-control input::-webkit-search-cancel-button{display:none}.account-control{position:relative}.avatar-button{place-items:center;padding:0;background:transparent;transition:transform .15s cubic-bezier(.22,1,.36,1)}.avatar-button,.avatar-disc{display:grid;width:30px;height:30px}.avatar-disc{place-items:center;border-radius:50%;background:var(--iris);color:var(--background);font-size:10px;font-weight:600}.account-menu{position:absolute;top:39px;right:0;display:grid;width:164px;gap:12px;padding:13px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--panel);color:var(--ink-soft);font-size:12px;box-shadow:0 16px 38px -18px rgb(0 0 0/72%);animation:menu-in .14s cubic-bezier(.22,1,.36,1) both}.account-identity{display:grid;min-width:0;gap:2px}.account-identity strong{color:var(--ink);font-size:12px;font-weight:500}.account-identity span,.account-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-identity span{color:var(--ink-muted);font-size:10px}.account-logout{justify-self:start;padding:0;background:transparent;color:var(--ink-muted);font-size:11px;text-decoration:none;transition:color .12s ease}.account-logout:hover{color:var(--ink)}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.library-canvas{position:relative;display:flex;flex-direction:column;min-height:calc(100dvh - var(--top-bar-height));background:var(--background)}.generation-library{width:100%;margin:0;padding:32px 12px 220px}.library-view-header{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:24px;margin:0 0 12px}.library-view-title{display:flex;min-width:0;align-items:baseline;gap:10px}.library-view-title h1{margin:0;color:var(--ink);font-size:20px;font-weight:600;letter-spacing:-.025em;line-height:1.2}.library-view-title span{color:var(--ink-muted);font-size:12px}.liked-download-action{display:inline-flex;min-height:36px;flex:none;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-size:12px;font-weight:500;transition:border-color .14s ease,background .14s ease,color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.liked-download-action:hover:not(:disabled){border-color:var(--ink-muted);background:var(--surface);color:var(--ink)}.liked-download-action:active:not(:disabled){transform:scale(.97)}.liked-download-action:disabled{cursor:default;opacity:.38}.liked-folder-bar{display:flex;width:100%;min-height:38px;align-items:center;gap:10px;margin:0 0 30px}.liked-folder-rail{display:flex;min-width:0;flex:1 1;align-items:center;gap:2px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.liked-folder-rail::-webkit-scrollbar{display:none}.liked-folder-rail[data-overflow=end]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}.liked-folder-rail[data-overflow=start]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(270deg,#000 calc(100% - 40px),transparent)}.liked-folder-rail[data-overflow=both]{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}.liked-folder-actions button,.liked-folder-chip{display:inline-flex;min-height:32px;flex:none;align-items:center;justify-content:center;gap:8px;padding:0 10px;border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-size:12px;font-weight:500;white-space:nowrap;transition:background .14s ease,color .14s ease,box-shadow .14s ease,border-color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.liked-folder-actions button:hover,.liked-folder-chip:hover{background:var(--surface);color:var(--ink)}.liked-folder-actions button:active,.liked-folder-chip:active{transform:scale(.96)}.liked-folder-chip.is-active{background:var(--surface-raised);color:var(--ink);box-shadow:inset 0 0 0 1px var(--rule-strong)}.liked-folder-chip>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.liked-folder-rename{display:inline-flex;min-height:32px;flex:none;align-items:center;gap:6px;padding:0 2px 0 0;border-radius:var(--radius-control);background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--iris-soft)}.liked-folder-rename input{min-width:72px;max-width:220px;height:30px;padding:0 8px;border:0;background:transparent;color:var(--ink);font-size:12px;font-weight:500}.liked-folder-rename input:focus{outline:none}.liked-folder-rename .submit-spinner{color:var(--ink-muted)}.liked-folder-rename-error{margin:6px 0 0;color:var(--danger);font-size:12px}.liked-folder-chip:not(.is-all)>span{max-width:30ch}.liked-folder-chip small{color:var(--ink-muted);font-size:11px;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.liked-folder-chip.is-active small,.liked-folder-chip:hover small{color:var(--ink-soft)}.liked-folder-chip.is-all:has(+.liked-folder-chip){position:relative;margin-right:9px}.liked-folder-chip.is-all:has(+.liked-folder-chip):after{position:absolute;top:50%;right:-5px;width:1px;height:15px;background:var(--rule-strong);content:"";transform:translateY(-50%)}.liked-folder-hint{min-width:0;margin:0;padding:0 4px;overflow:hidden;color:var(--ink-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.liked-folder-actions{display:flex;flex:none;align-items:center;gap:4px;padding-left:10px;border-left:1px solid var(--rule)}.liked-folder-manage{display:flex;align-items:center;gap:2px}.liked-folder-manage[data-available=no]{visibility:hidden}.liked-folder-manage button{width:32px;padding:0}.liked-folder-actions .liked-folder-create{border:1px solid var(--rule-strong)}.liked-folder-actions .liked-folder-create:hover{border-color:var(--ink-faint)}.liked-folder-dialog{width:min(360px,calc(100dvw - 24px));padding:0;border:1px solid var(--rule-strong);border-radius:var(--radius-card);background:var(--panel);color:var(--ink-soft);box-shadow:0 28px 72px -28px rgb(0 0 0/88%)}.liked-folder-dialog::backdrop{background:rgb(5 5 8/72%)}.liked-folder-dialog form{display:grid;gap:18px;padding:18px}.liked-folder-dialog footer,.liked-folder-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}.liked-folder-dialog h2,.liked-folder-dialog p{margin:0}.liked-folder-dialog h2{color:var(--ink);font-size:15px;font-weight:600;letter-spacing:-.02em}.liked-folder-dialog header button{display:grid;width:34px;height:34px;place-items:center;padding:0;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted)}.liked-folder-dialog header button:hover{background:var(--surface);color:var(--ink)}.liked-folder-dialog>form>p{color:var(--ink-soft);font-size:13px;line-height:1.5}.liked-folder-dialog>form>p strong{color:var(--ink);font-weight:500}.liked-folder-dialog label{display:grid;gap:7px}.liked-folder-dialog label>span{color:var(--ink-muted);font-size:11px}.liked-folder-dialog input{width:100%;height:44px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);outline:0;background:var(--surface);color:var(--ink);font-size:16px;transition:border-color .14s ease}.liked-folder-dialog input:focus{border-color:var(--iris-soft)}.liked-folder-dialog .liked-folder-dialog-error{color:var(--danger);font-size:11px}.liked-folder-dialog footer{justify-content:flex-end}.liked-folder-dialog footer button{display:inline-flex;min-width:74px;height:38px;align-items:center;justify-content:center;gap:7px;padding:0 12px;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);font-size:12px;font-weight:500}.liked-folder-dialog footer button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.liked-folder-dialog footer button.is-primary{background:var(--ink);color:var(--background)}.liked-folder-dialog footer button.is-danger{background:color-mix(in srgb,var(--danger) 16%,var(--surface));color:var(--danger)}.liked-folder-dialog button:disabled{cursor:default;opacity:.42}.like-folder-dialog:focus,.like-folder-dialog:focus-visible{outline:none}.like-folder-dialog{width:min(400px,calc(100dvw - 24px))}.like-folder-dialog form{max-height:min(640px,calc(100dvh - 32px));gap:14px;overflow:hidden}.like-folder-loading{display:flex;min-height:112px;align-items:center;justify-content:center;gap:8px;color:var(--ink-muted)!important;font-size:12px!important}.like-folder-choices{display:grid;min-width:0;max-height:min(312px,42dvh);gap:2px;margin:0;padding:0;overflow-y:auto;border:0;scrollbar-width:thin}.liked-folder-dialog .like-folder-choices label{display:grid;min-width:0;min-height:44px;grid-template-columns:16px minmax(0,1fr) auto 14px;align-items:center;gap:9px;padding:0 10px;border-radius:var(--radius-control);color:var(--ink-muted);cursor:pointer;transition:background .14s ease,color .14s ease}.liked-folder-dialog .like-folder-choices label.is-selected,.liked-folder-dialog .like-folder-choices label:has(input:focus-visible),.liked-folder-dialog .like-folder-choices label:hover{background:var(--surface);color:var(--ink-soft)}.liked-folder-dialog .like-folder-choices input{position:absolute;width:1px;height:1px;padding:0;opacity:0}.liked-folder-dialog .like-folder-choices label>span{min-width:0;overflow:hidden;color:inherit;text-overflow:ellipsis;white-space:nowrap}.like-folder-choices small{color:var(--ink-faint);font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.like-folder-choices label>svg:last-child{grid-column:4;color:var(--iris-soft)}.liked-folder-dialog .like-folder-name{gap:7px}.search-summary{gap:12px}.search-summary-count{display:inline-flex;min-width:0;align-items:center;gap:8px;color:var(--ink-muted);font-size:12px}.search-summary-count>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:64px 16px 72px;color:var(--ink-muted);text-align:center}.search-state h2{max-width:30ch;margin:0;color:var(--ink);font-size:clamp(19px,2.2vw,23px);font-weight:500;letter-spacing:-.025em;line-height:1.2}.search-state p{max-width:44ch;margin:0;color:var(--ink-soft);font-size:13.5px;line-height:1.55}.search-state button{margin-top:6px}.liked-empty-state{position:absolute;inset:71px 12px 200px;display:grid;grid-template-rows:1fr auto 1fr;gap:10px;text-align:center;pointer-events:none}.liked-empty-state button{pointer-events:auto}.liked-empty-state h2{grid-row:2}.liked-empty-state p{grid-row:3;align-self:start}.liked-empty-state h2,.liked-empty-state p{margin:0}.liked-empty-state h2{margin:0;color:var(--ink);font-size:clamp(22px,2.8vw,28px);font-weight:500;letter-spacing:-.025em;line-height:1.15}.liked-empty-state p{max-width:46ch;margin:0 auto;color:var(--ink-soft);font-size:13.5px;line-height:1.55}.batch-more{display:inline-flex;min-width:68px;height:34px;flex:none;align-items:center;justify-content:center;gap:5px;padding:0 10px;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);font-size:12px;transition:background .15s ease,color .15s ease,transform .15s cubic-bezier(.22,1,.36,1),opacity .15s ease}.batch-more:hover:not(:disabled){background:var(--surface);color:var(--ink)}.batch-more:active:not(:disabled){transform:scale(.96)}.batch-more:disabled{cursor:default;opacity:.4}.scene-wait{display:grid;gap:7px;margin:0 0 11px}.scene-wait-prompt{max-width:58ch;margin:0;color:var(--ink-soft);font-size:13px;line-height:1.45;text-wrap:pretty}.scene-wait-status{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.scene-wait-label{margin:0;color:var(--iris-soft);font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.4}.scene-wait-timing{flex:none;color:var(--ink-muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.35}.scene-wait-track{position:relative;overflow:hidden;height:2px;border-radius:999px;background:var(--rule)}.scene-wait-fill{position:absolute;inset:0 auto 0 0;width:var(--scene-progress,0);border-radius:inherit;background:var(--iris-soft);transition:width .42s cubic-bezier(.22,1,.36,1)}.scene-wait-track:not([data-determinate]) .scene-wait-fill{width:26%;animation:scene-wait-sweep 1.9s linear infinite}@keyframes scene-wait-sweep{0%{transform:translateX(-105%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.scene-wait-track:not([data-determinate]) .scene-wait-fill{width:100%;background:color-mix(in srgb,var(--iris-soft) 30%,transparent);transform:none}}.generation-frame,.image-tile{position:relative;min-width:0;overflow:hidden;aspect-ratio:var(--image-aspect);border-radius:var(--radius-tile);background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule);scroll-snap-align:start}.image-open{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;overflow:hidden;border-radius:inherit;background:var(--surface);color:inherit}.image-open:focus-visible{outline:1px solid var(--iris-soft);outline-offset:-3px}.image-open img{object-fit:cover;opacity:0;transform:scale(1.012);transition:opacity .18s ease,transform .42s cubic-bezier(.22,1,.36,1),filter .18s ease}.image-open img.is-loaded{opacity:1}@media (hover:hover) and (pointer:fine){.image-tile:hover .image-open img.is-loaded{filter:brightness(1.04);transform:scale(1.035)}}@media (min-width:701px) and (max-width:1280px){.image-tile .image-actions{right:4px;bottom:4px;gap:2px;padding:2px}.image-tile .image-action{position:relative;width:22px;height:22px}.image-tile .image-action svg{width:13px;height:13px}.image-tile .image-action-extend{display:none}.image-tile .image-action:after{content:"";position:absolute;inset:-5px}}.image-placeholder{position:absolute;z-index:1;inset:0;background:var(--surface);opacity:1;transition:opacity .15s ease;pointer-events:none}.image-placeholder.is-hidden{opacity:0}.studio-image{position:relative;display:block;overflow:hidden;width:100%;background:var(--surface)}.studio-image.studio-image-fill{position:absolute;inset:0;height:100%;aspect-ratio:auto!important}.studio-image-el{display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .18s ease}.studio-image.is-loaded .studio-image-el{opacity:1}.studio-image-skeleton{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,var(--surface-raised),var(--surface) 58%);overflow:hidden;pointer-events:none}.studio-image-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0,color-mix(in srgb,var(--surface-raised) 70%,transparent) 45%,transparent 90%);transform:translateX(-105%);animation:studio-image-shimmer 1.9s linear infinite}@keyframes studio-image-shimmer{0%{transform:translateX(-105%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.studio-image-skeleton:after{animation:none;transform:none;background:none}}.studio-image-error{position:absolute;z-index:1;inset:0;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--rule);color:var(--ink-muted);font-size:12px;letter-spacing:.01em;text-align:center}.image-actions{z-index:2;right:8px;bottom:8px;display:flex;flex-wrap:nowrap;gap:3px;padding:3px;border:1px solid color-mix(in srgb,var(--rule-strong) 80%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,var(--background) 84%,transparent);transform:translateY(4px)}.image-actions,.image-folder-menu{position:absolute;opacity:0;transition:opacity .15s ease,transform .18s cubic-bezier(.22,1,.36,1)}.image-folder-menu{z-index:5;top:8px;left:8px;transform:translateY(-3px)}.tile-heart{position:absolute;z-index:3;top:6px;right:6px;display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--background) 62%,transparent);color:var(--ink-soft);transition:color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.tile-heart:hover{color:var(--ink)}.tile-heart:focus-visible{outline:1px solid var(--iris-soft);outline-offset:1px}.tile-heart:active{transform:scale(.88)}.tile-heart.is-liked{color:var(--iris-soft)}.tile-heart.is-liked svg{animation:like-pop .26s cubic-bezier(.22,1,.36,1)}.image-folder-menu.has-membership,.image-folder-menu[open],.image-tile:focus-within .image-folder-menu,.image-tile:hover .image-folder-menu{opacity:1;transform:translateY(0)}.image-folder-menu>summary{list-style:none;border:1px solid color-mix(in srgb,var(--rule-strong) 80%,transparent);background:color-mix(in srgb,var(--background) 84%,transparent)}.image-folder-menu>summary::-webkit-details-marker{display:none}.image-folder-menu>summary.has-folders{color:var(--iris-soft)}.image-folder-popover{position:absolute;z-index:70;top:calc(100% + 7px);right:0;display:grid;width:220px;gap:9px;padding:11px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--panel);box-shadow:0 18px 42px -20px rgb(0 0 0/88%);animation:menu-in .14s cubic-bezier(.22,1,.36,1) both}.image-folder-popover>strong{color:var(--ink-soft);font-size:11px;font-weight:600}.image-folder-popover>p{margin:0;color:var(--ink-muted);font-size:11px;line-height:1.4}.image-folder-options{display:grid;max-height:220px;gap:2px;overflow-y:auto}.image-folder-options label{display:grid;min-height:34px;grid-template-columns:1fr 14px;align-items:center;gap:8px;padding:0 8px;border-radius:var(--radius-control);color:var(--ink-muted);font-size:11px;cursor:pointer;transition:background .12s ease,color .12s ease}.image-folder-options label:has(input:focus-visible),.image-folder-options label:hover{background:var(--surface);color:var(--ink-soft)}.image-folder-options input{position:absolute;width:1px;height:1px;opacity:0}.image-folder-options svg{color:var(--iris-soft)}.image-tile:focus-within .image-actions,.image-tile:hover .image-actions{opacity:1;transform:translateY(0)}.image-action{display:grid;width:30px;height:30px;place-items:center;padding:0;border-radius:5px;background:transparent;color:var(--ink-soft);text-decoration:none;transition:background .14s ease,color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.image-action:hover{background:var(--surface-raised);color:var(--ink)}.image-action:active{transform:scale(.9)}.viewer-actions .is-liked{color:var(--iris-soft)}.viewer-actions .is-liked svg{animation:like-pop .26s cubic-bezier(.22,1,.36,1)}.generation-frame{isolation:isolate;border:1px solid color-mix(in srgb,var(--rule-strong) 62%,transparent);background:var(--surface)}.generation-frame:before{position:absolute;inset:0;background:linear-gradient(180deg,var(--surface-raised),var(--surface) 58%);content:""}.generation-frame-spinner{position:absolute;z-index:1;top:50%;left:50%;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--rule-strong) 82%,transparent);border-radius:50%;transform:translate(-50%,-50%)}.generation-frame-spinner:after,.generation-frame-spinner:before{position:absolute;border-radius:50%;content:""}.generation-frame-spinner:before{inset:-1px;border-left:2px solid transparent;border-bottom:2px solid transparent;border-top:2px solid transparent;border-top-color:var(--iris-soft);border-right:2px solid transparent;border-right-color:color-mix(in srgb,var(--iris-soft) 34%,transparent);animation:frame-spin .9s linear infinite}.generation-frame-spinner:after{inset:8px;border:1.5px solid transparent;border-bottom:1.5px solid var(--ink-soft);animation:frame-spin-reverse 1.35s linear infinite}.generation-frame:nth-child(2) .generation-frame-spinner:before{animation-delay:-.18s}.generation-frame:nth-child(2) .generation-frame-spinner:after{animation-delay:-.27s}.generation-frame:nth-child(3) .generation-frame-spinner:before{animation-delay:-.36s}.generation-frame:nth-child(3) .generation-frame-spinner:after,.generation-frame:nth-child(4) .generation-frame-spinner:before{animation-delay:-.54s}.generation-frame:nth-child(4) .generation-frame-spinner:after{animation-delay:-.81s}.generation-frame:nth-child(5) .generation-frame-spinner:before{animation-delay:-.72s}.generation-frame:nth-child(5) .generation-frame-spinner:after{animation-delay:-1.08s}.generation-frame.is-pending{border-color:color-mix(in srgb,var(--rule-strong) 40%,transparent)}.generation-frame.is-dead{border-style:dashed;border-color:var(--rule-strong)}.generation-frame.is-dead:before{background:none}@keyframes frame-spin{to{transform:rotate(1turn)}}@keyframes frame-spin-reverse{to{transform:rotate(-1turn)}}@keyframes like-pop{0%{transform:scale(.75)}65%{transform:scale(1.18)}to{transform:scale(1)}}.library-sentinel{width:100%;height:1px}.composer-position{z-index:24;width:min(640px,calc(100dvw - 32px))}.composer-position.is-docked{position:fixed;right:0;bottom:max(12px,env(safe-area-inset-bottom));left:0;margin:auto}.composer-position.is-centred{position:fixed;top:calc(50% + (var(--top-bar-height) / 2));left:50%;transform:translate(-50%,-50%);transition:top .26s cubic-bezier(.22,1,.36,1),transform .26s cubic-bezier(.22,1,.36,1)}.welcome-intro{margin:0 auto 22px;text-align:center;animation:welcome-in .42s cubic-bezier(.22,1,.36,1)}.welcome-intro h2{margin:0;color:var(--ink);font-size:clamp(24px,3.2vw,32px);font-weight:500;letter-spacing:-.025em;line-height:1.12}.welcome-intro>p{max-width:480px;margin:11px auto 0;color:var(--ink-soft);font-size:14px;line-height:1.5}.welcome-intro>.welcome-note{margin-top:2px;color:var(--ink-muted);font-size:13px}.welcome-examples{display:flex;justify-content:center;gap:8px;margin-top:18px}.welcome-examples button{min-height:40px;padding:9px 12px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-size:12px;line-height:1.35;transition:border-color .14s ease,background .14s ease,color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.welcome-examples button:hover:not(:disabled){border-color:var(--rule-strong);background:var(--panel);color:var(--ink);transform:translateY(-1px)}.welcome-examples button:active:not(:disabled){transform:translateY(0) scale(.98)}.welcome-examples button:disabled{opacity:.55}.prompt-dock{position:relative;display:grid;grid-template-columns:1fr;width:100%;gap:0;padding:7px;border:1px solid color-mix(in srgb,var(--rule-strong) 74%,transparent);border-radius:var(--radius-card);background:var(--panel-raised);box-shadow:0 18px 54px -26px rgb(0 0 0/82%);transition:border-color .16s ease,background .16s ease,box-shadow .18s ease}.prompt-dock.is-dragging-references{border-color:color-mix(in srgb,var(--iris-soft) 70%,var(--rule-strong));box-shadow:0 20px 60px -28px rgb(0 0 0/88%),0 0 0 3px rgb(127 119 214/10%)}.prompt-dock.is-dragging-references:after{position:absolute;z-index:4;inset:7px;display:grid;place-items:center;border:1px dashed color-mix(in srgb,var(--iris-soft) 62%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,#19191f 94%,transparent);color:var(--ink);content:"Drop images here";font-size:13px;font-weight:500;pointer-events:none}.prompt-dock:focus-within{border-color:color-mix(in srgb,var(--ink-muted) 58%,var(--rule-strong));background:var(--surface-raised);box-shadow:0 20px 60px -28px rgb(0 0 0/88%)}.prompt-dock textarea{width:100%;min-height:44px;max-height:132px;resize:none;overflow-y:auto;border:0;outline:none;padding:10px 13px 3px;background:transparent;color:var(--ink);font-size:15px;font-weight:400;line-height:1.45}.prompt-dock textarea::placeholder{color:#77736a;opacity:1}.prompt-dock textarea:read-only{color:var(--ink-soft)}.reference-strip{display:flex;min-height:52px;align-items:center;gap:7px;padding:5px 12px 3px}.reference-thumb{position:relative;width:48px;height:48px;flex:0 0 48px}.reference-thumb img{display:block;width:48px;height:48px;border-radius:var(--radius-control);object-fit:cover;box-shadow:0 0 0 1px color-mix(in srgb,var(--ink-muted) 35%,transparent)}.reference-thumb button{position:absolute;top:-10px;right:-10px;width:44px;height:44px;padding:0;border-radius:50%;background:transparent;color:var(--ink-soft);transition:transform .14s cubic-bezier(.22,1,.36,1)}.reference-thumb button:before{position:absolute;top:5px;right:5px;width:18px;height:18px;border-radius:50%;background:rgba(11,11,15,.88);box-shadow:inset 0 0 0 1px rgb(255 255 255/14%),0 2px 8px rgb(0 0 0/40%);content:"";transition:background .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.reference-thumb button svg{position:absolute;top:9px;right:9px;z-index:1;width:10px;height:10px}.reference-thumb button:hover:not(:disabled){transform:scale(1.06)}.reference-thumb button:hover:not(:disabled):before{background:rgba(30,30,38,.95)}.reference-thumb button:active:not(:disabled){transform:scale(.92)}.reference-thumb button:disabled{cursor:default;opacity:.55}.prompt-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prompt-footer{min-height:44px;justify-content:space-between;gap:12px;padding:0 0 0 13px}.prompt-footer,.prompt-meta{display:flex;align-items:center}.prompt-meta{min-width:0;gap:2px}.reference-trigger{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);transition:background .14s ease,color .14s ease}.reference-trigger:hover:not(:disabled){background:color-mix(in srgb,var(--surface-raised) 72%,transparent);color:var(--ink)}.reference-trigger:focus-visible{outline:1px solid color-mix(in srgb,var(--iris-soft) 62%,transparent);outline-offset:-4px}.reference-trigger:disabled{cursor:default;color:var(--ink-faint)}.aspect-picker{position:relative;height:44px}.aspect-picker-trigger{display:inline-flex;height:44px;align-items:center;gap:7px;padding:0 8px;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;transition:background .14s ease,color .14s ease}.aspect-picker-trigger:hover:not(:disabled),.aspect-picker-trigger[aria-expanded=true]{background:color-mix(in srgb,var(--surface-raised) 72%,transparent);color:var(--ink)}.aspect-picker-trigger:focus-visible{outline:1px solid color-mix(in srgb,var(--iris-soft) 62%,transparent);outline-offset:-4px}.aspect-picker-trigger:disabled{cursor:default;opacity:.55}.aspect-option-shape,.aspect-trigger-shape{display:grid;flex:none;place-items:center}.aspect-trigger-shape{width:17px;height:17px}.aspect-option-shape>span,.aspect-trigger-shape>span{display:block;border:1.5px solid;border-radius:3px}.aspect-trigger-chevron{margin-left:-2px;transition:transform .16s cubic-bezier(.22,1,.36,1)}.aspect-picker-trigger[aria-expanded=true] .aspect-trigger-chevron{transform:rotate(180deg)}.aspect-picker-menu{position:absolute;z-index:12;bottom:calc(100% + 6px);left:0;width:max-content;padding:6px;border:1px solid color-mix(in srgb,var(--rule-strong) 76%,transparent);border-radius:var(--radius-card);background:var(--surface-raised);box-shadow:0 22px 56px -22px rgb(0 0 0/90%);animation:aspect-menu-in .16s cubic-bezier(.22,1,.36,1) both;overscroll-behavior:contain}.aspect-picker-options{display:grid;gap:2px}.aspect-picker-option{position:relative;display:grid;min-height:40px;grid-template-columns:34px max-content 18px;column-gap:7px;align-items:center;padding:0 8px 0 4px;border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;text-align:left;transition:background .13s ease,color .13s ease}.aspect-picker-option:focus-visible,.aspect-picker-option:hover{background:color-mix(in srgb,var(--surface-raised) 78%,transparent);color:var(--ink);outline:none}.aspect-picker-option[aria-selected=true]{background:var(--rule-strong);color:var(--ink)}.aspect-option-shape{width:28px;height:26px;color:var(--ink-muted)}.aspect-picker-option[aria-selected=true] .aspect-option-shape{color:var(--ink)}.aspect-option-check{justify-self:end;color:var(--ink-soft)}@keyframes aspect-menu-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.prompt-hint{color:var(--ink-muted);font-size:11px;line-height:1}.prompt-actions{display:flex;align-items:center;gap:4px}.compact-submit{position:relative;display:inline-flex;width:44px;height:44px;flex:0 0 44px;align-items:center;justify-content:center;padding:0;border-radius:50%;background:transparent;color:#111016;transition:transform .15s cubic-bezier(.22,1,.36,1)}.compact-submit:before{position:absolute;inset:5px;border-radius:50%;background:var(--ink);content:"";transition:background .15s ease,transform .15s cubic-bezier(.22,1,.36,1),opacity .15s ease}.compact-submit>span,.compact-submit>svg{position:relative;z-index:1}.compact-submit:hover:not(:disabled):before{background:#fffdf5;transform:scale(1.06)}.compact-submit:active:not(:disabled){transform:scale(.92)}.compact-submit:disabled{cursor:default;color:var(--ink-faint)}.compact-submit:disabled:before{background:var(--surface-raised);opacity:.68}.submit-spinner{animation:spinner .8s linear infinite}@keyframes spinner{to{transform:rotate(1turn)}}@keyframes welcome-in{0%{opacity:.2;clip-path:inset(12% 0 0);filter:blur(7px);transform:translateY(10px)}to{opacity:1;clip-path:inset(0);filter:blur(0);transform:translateY(0)}}.toast-stack{position:fixed;z-index:60;right:24px;bottom:105px;display:flex;width:min(340px,calc(100dvw - 48px));flex-direction:column;gap:7px;margin:0;padding:0;list-style:none}.toast{display:flex;min-height:44px;align-items:center;gap:4px;padding:6px 6px 6px 13px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--panel);box-shadow:0 16px 38px -18px rgb(0 0 0/72%);color:var(--ink-soft);font-size:12px}.toast-message{min-width:0;flex:1 1;line-height:1.4}.toast-dismiss{display:inline-flex;width:44px;height:44px;flex:none;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);transition:background-color .14s ease,color .14s ease}.toast-dismiss:hover{background:var(--surface);color:var(--ink)}.toast-dismiss:active{transform:scale(.94)}.image-viewer:focus,.image-viewer:focus-visible{outline:none}.image-viewer{width:100dvw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden;overscroll-behavior:contain;border:0;background:var(--background);color:var(--ink)}.image-viewer[open]{display:block}.image-viewer::backdrop{background:var(--background)}.viewer-workspace{display:grid;width:100%;height:100%;grid-template-columns:minmax(0,1fr) 360px;overflow:hidden}.viewer-stage{position:relative;display:grid;min-width:0;min-height:0;grid-template-columns:64px minmax(0,1fr) 64px;place-items:center;overflow:hidden;touch-action:pan-x;background:#07070a}.viewer-image{--viewer-aspect:0.5625;position:relative;width:min(calc((100dvh - 72px) * var(--viewer-aspect)),calc(100dvw - 504px));aspect-ratio:var(--viewer-aspect);grid-column:2;overflow:hidden;border-radius:3px;background:var(--surface);box-shadow:0 28px 72px -38px rgb(0 0 0/90%);animation:viewer-media-in .26s cubic-bezier(.22,1,.36,1) both}.viewer-image[data-aspect-ratio="4:3"]{--viewer-aspect:1.333333}.viewer-image[data-aspect-ratio="1:1"]{--viewer-aspect:1}.viewer-image[data-aspect-ratio="16:9"]{--viewer-aspect:1.777778}.viewer-image img{object-fit:cover}@keyframes viewer-media-in{0%{opacity:.5;filter:blur(3px);transform:scale(.988)}to{opacity:1;filter:blur(0);transform:scale(1)}}.viewer-image-generating{position:absolute;z-index:2;inset:0;display:grid;place-items:center;align-content:center;gap:14px;background:color-mix(in srgb,var(--background) 52%,transparent)}.viewer-image-generating p{margin:0;color:var(--ink-soft);font-size:12px}.viewer-media-error{position:absolute;z-index:2;inset:50% 18px auto;margin:0;color:var(--ink-muted);font-size:12px;line-height:1.4;text-align:center;transform:translateY(-50%)}.viewer-actions a,.viewer-actions button,.viewer-back,.viewer-next,.viewer-previous{display:grid;place-items:center;border-radius:var(--radius-control);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--ink-soft);transition:background .14s ease,color .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.viewer-actions a:hover,.viewer-actions button:hover,.viewer-back:hover,.viewer-next:hover,.viewer-previous:hover{color:var(--ink);background:var(--surface-raised)}.viewer-actions a:active,.viewer-actions button:active,.viewer-back:active,.viewer-next:active,.viewer-previous:active{transform:scale(.92)}.viewer-actions .viewer-delete:hover{background:color-mix(in srgb,var(--danger) 14%,var(--surface));color:var(--danger)}.viewer-next:disabled,.viewer-previous:disabled{cursor:default;opacity:.24}.viewer-back{position:absolute;z-index:3;top:max(14px,env(safe-area-inset-top));left:14px;width:36px;height:36px}.viewer-next,.viewer-previous{width:40px;height:40px}.viewer-previous{grid-column:1}.viewer-next{grid-column:3}.viewer-actions{position:absolute;z-index:2;bottom:max(14px,env(safe-area-inset-bottom));left:50%;display:flex;gap:7px;transform:translateX(-50%)}.viewer-actions a,.viewer-actions button{width:40px;height:40px;padding:0;text-decoration:none}.shot-editor{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border-left:1px solid var(--rule);background:var(--panel);animation:editor-rail-in .28s cubic-bezier(.22,1,.36,1) both}@keyframes editor-rail-in{0%{opacity:.65;clip-path:inset(0 0 0 22%);transform:translateX(20px)}to{opacity:1;clip-path:inset(0);transform:translateX(0)}}.shot-editor-header{display:flex;align-items:flex-start;padding:17px 18px 12px}.shot-editor-header h2{margin:0;color:var(--ink);font-size:15px;font-weight:600;letter-spacing:-.01em}.shot-editor-form{padding:12px 14px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--rule)}.shot-composer{display:grid;width:100%;padding:6px;border:1px solid color-mix(in srgb,var(--rule-strong) 78%,transparent);border-radius:var(--radius-card);background:var(--surface);transition:border-color .15s ease,background .15s ease}.shot-composer:focus-within{border-color:color-mix(in srgb,var(--ink-muted) 58%,var(--rule-strong));background:var(--surface-raised)}.shot-composer textarea{width:100%;min-height:68px;max-height:132px;padding:9px 10px 4px;resize:none;overflow-y:auto;border:0;outline:none;background:transparent;color:var(--ink);font-size:13px;line-height:1.45}.shot-composer textarea::placeholder{color:#77736a}.shot-composer textarea:disabled{color:var(--ink-soft)}.shot-composer-footer{display:flex;min-height:44px;align-items:center;justify-content:space-between;padding-left:10px}.shot-composer-footer>span{color:var(--ink-muted);font-size:10px}.shot-composer-footer .compact-submit{margin-left:auto}.shot-editor-error{display:grid;gap:7px;margin:9px 5px 0;color:var(--ink-muted);font-size:11px;line-height:1.4}.shot-editor-error p{margin:0;text-wrap:pretty}.shot-editor-error>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.shot-editor-error span{font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.shot-editor-error button{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--radius-control);color:var(--ink-soft)}.shot-editor-error button:hover{background:var(--surface-raised);color:var(--ink)}.version-history{display:grid;min-height:0;grid-template-rows:auto minmax(0,1fr);border-top:1px solid var(--rule)}.version-history>header{display:flex;min-height:45px;align-items:center;justify-content:space-between;padding:0 18px}.version-history h3{margin:0;color:var(--ink-soft);font-size:11px;font-weight:500}.version-history>header>span{color:var(--ink-muted);font-size:10px}.version-history ol{min-height:0;margin:0;padding:0 8px 14px;overflow-y:auto;list-style:none}.version-history li+li{margin-top:2px}.version-history li{position:relative}.version-history li[data-deletable=true]>button:not(.version-delete):not(.version-delete){padding-right:34px}.version-delete{position:absolute;z-index:1;top:50%;right:8px;display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:var(--radius-control);background:color-mix(in srgb,var(--background) 72%,transparent);color:var(--ink-muted);opacity:0;transform:translateY(-50%);transition:opacity .14s ease,color .14s ease}.version-delete:focus-visible,.version-history li:hover .version-delete{opacity:1}.version-delete:hover:not(:disabled){color:var(--danger)}.version-delete:disabled{cursor:default}@media (hover:none),(pointer:coarse){.version-delete{opacity:1}}.version-history li>button:not(.version-delete){display:grid;width:100%;min-height:70px;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:6px 9px;border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);text-align:left;transition:background .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.version-history li>button:not(.version-delete):hover:not(:disabled){background:var(--surface)}.version-history li>button:not(.version-delete):active:not(:disabled){transform:scale(.985)}.version-history li>button:not(.version-delete).is-active{background:var(--surface)}.version-history li>button:not(.version-delete):disabled:not(.is-active){cursor:default}.version-thumb{position:relative;display:grid;width:42px;height:58px;place-items:center;overflow:hidden;border-radius:4px;background:var(--surface-raised);color:var(--ink-muted)}.version-thumb img{object-fit:cover}.version-copy,.version-meta{display:flex;min-width:0}.version-copy{flex-direction:column;gap:4px}.version-meta{align-items:baseline;justify-content:space-between;gap:8px}.version-meta strong{color:var(--ink);font-size:11px;font-weight:500}.version-status{color:var(--ink-muted);font-size:9px}.version-status.status-persisting,.version-status.status-processing,.version-status.status-queued,.version-status.status-rewriting{color:var(--iris-soft)}.version-status.status-failed{color:var(--danger)}.version-prompt{display:-webkit-box;overflow:hidden;color:var(--ink-muted);font-size:10px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.route-error{display:grid;min-height:100vh;place-content:center;gap:14px;background:var(--background);color:var(--ink);text-align:center}.route-error p{margin:0;font-size:14px}.route-error a,.route-error button{justify-self:center;padding:8px 12px;border-radius:var(--radius-control);background:var(--surface);color:var(--ink-soft);text-decoration:none}.access-page{display:grid;min-height:100dvh;place-content:center;justify-items:start;padding:28px;background:var(--background)}.access-logo{width:62px;height:auto;margin-bottom:34px;fill:var(--ink)}.access-page h1{max-width:430px;margin:0;color:var(--ink);font-size:clamp(26px,4vw,42px);font-weight:500;letter-spacing:-.035em;line-height:1.05}.access-page p{margin:13px 0 24px;color:var(--ink-muted);font-size:14px}.access-page a{min-height:40px;padding:10px 13px;border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-size:12px;text-decoration:none}.login-page{display:grid;min-height:100dvh;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:var(--background)}.login-panel{display:grid;width:min(100%,382px);gap:28px}.login-logo{width:62px;height:auto;fill:var(--ink)}.login-form{display:grid;gap:9px}.login-input-shell{display:grid;grid-template-columns:minmax(0,1fr) 44px;min-height:60px;align-items:center;gap:8px;padding:7px;border:1px solid var(--rule-strong);border-radius:var(--radius-card);background:var(--panel);transition:border-color .15s ease,box-shadow .15s ease}.login-input-shell:focus-within{border-color:color-mix(in srgb,var(--iris) 72%,var(--rule-strong));box-shadow:0 0 0 3px color-mix(in srgb,var(--iris) 12%,transparent)}.login-input-shell input{width:100%;min-width:0;padding:10px 11px;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px}.login-input-shell input::placeholder{color:var(--ink-faint)}.login-input-shell button{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--ink);color:var(--background);transition:transform .14s cubic-bezier(.22,1,.36,1),opacity .14s ease}.login-input-shell button:active{transform:scale(.94)}.login-input-shell button:disabled{opacity:.52}.login-error{min-height:17px;margin:0 12px;color:var(--danger);font-size:11px}.operator-page{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:44px 0 96px}.operator-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:1px solid var(--rule)}.operator-header span{color:var(--ink-muted);font-size:11px}.operator-header h1{margin:7px 0 0;color:var(--ink);font-size:23px;font-weight:500;letter-spacing:-.025em}.operator-header a{padding:8px 10px;border-radius:var(--radius-control);background:var(--surface);color:var(--ink-soft);font-size:12px;text-decoration:none}.operator-summary{padding:26px 0;border-bottom:1px solid var(--rule)}.operator-summary dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0}.operator-summary dl>div{padding:14px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--panel)}.operator-summary dt{color:var(--ink-muted);font-size:11px}.operator-summary dd{margin:8px 0 0;color:var(--ink);font-size:18px;font-weight:500}.operator-section{padding:30px 0 8px}.operator-section h2{margin:0 0 13px;color:var(--ink-soft);font-size:13px;font-weight:500}.operator-table-wrap{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--radius-control)}.operator-table-wrap table{width:100%;border-collapse:collapse;background:var(--panel);font-size:11px}.operator-table-wrap td,.operator-table-wrap th{padding:11px 13px;border-bottom:1px solid var(--rule);text-align:left;white-space:nowrap}.operator-table-wrap th{color:var(--ink-muted);font-weight:500}.operator-table-wrap td{color:var(--ink-soft)}.operator-table-wrap tbody tr:last-child td{border-bottom:0}.operator-diagnostic{min-width:260px;max-width:520px;white-space:normal!important}.operator-diagnostic strong{display:block;color:var(--ink-soft);font-weight:500}.operator-diagnostic details{margin-top:5px;color:var(--ink-muted)}.operator-diagnostic summary{cursor:pointer}.operator-diagnostic p{margin:7px 0 0;overflow-wrap:anywhere;line-height:1.45}.operator-empty{margin:0;color:var(--ink-muted);font-size:12px}.operator-header nav{display:flex;gap:8px}.spend-total{padding:30px 0;border-bottom:1px solid var(--rule)}.spend-total>strong{display:block;color:var(--ink);font-size:52px;font-weight:400;letter-spacing:-.03em;line-height:1}.spend-total dl{display:flex;gap:34px;margin:20px 0 0}.spend-total dt{color:var(--ink-muted);font-size:11px}.spend-total dd{margin:5px 0 0;color:var(--ink-soft);font-size:15px}.spend-campaign{padding:26px 0;border-bottom:1px solid var(--rule)}.spend-campaign>header{display:flex;align-items:baseline;gap:12px}.spend-campaign h2{margin:0;color:var(--ink);font-size:17px;font-weight:500;letter-spacing:-.015em}.spend-campaign>header span{color:var(--ink-muted);font-size:11px}.spend-campaign>header strong{margin-left:auto;color:var(--ink);font-size:20px;font-weight:400}.spend-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 0}.spend-figures>div{padding:14px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--panel)}.spend-figures dt{color:var(--ink-muted);font-size:11px}.spend-figures dd{margin:8px 0 0}.spend-figures dd b{color:var(--ink);font-size:20px;font-weight:400}.spend-figures dd>span{display:block;margin-top:7px;color:var(--ink-muted);font-size:11px}.spend-meter{height:4px;margin-top:11px;overflow:hidden;border-radius:2px;background:var(--surface)}.spend-meter span{display:block;height:100%;background:var(--iris)}.spend-incomplete{margin:14px 0 0;color:var(--ink-muted);font-size:12px}.spend-campaign .operator-table-wrap{margin-top:16px}@media (max-width:700px){.spend-total>strong{font-size:38px}.spend-figures{grid-template-columns:minmax(0,1fr)}}@media (max-height:500px) and (max-width:900px),(max-width:700px){.top-bar{padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}.brand-lockup,.brand-mark{width:50px}.top-actions{gap:5px}.avatar-button,.filter-button,.icon-control{width:44px;height:44px}.avatar-button{background:transparent}.account-menu{top:49px}.search-control.is-open{position:absolute;z-index:4;top:6px;right:56px;left:104px;width:auto;height:44px;background:var(--surface)}.search-control input{font-size:16px}.top-actions:has(.search-control.is-open) .filter-tabs{visibility:hidden}.generation-library{padding:25px 0 190px}.library-view-header{min-height:44px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));margin-bottom:8px}.liked-download-action{min-height:44px}.liked-folder-bar{min-height:44px;gap:8px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));margin-bottom:24px}.liked-folder-actions button,.liked-folder-chip{min-height:44px}.liked-folder-chip:not(.is-all)>span{max-width:20ch}.liked-folder-manage button{width:44px}.liked-folder-manage[data-available=no]{display:none}.liked-folder-actions{gap:2px;padding-left:8px}.liked-folder-actions .liked-folder-create{width:44px;padding:0}.liked-folder-create span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.batch-more{min-width:72px;height:44px;padding:0 9px}.shot-editor-error button{min-height:44px}.image-action{width:44px;height:44px}.image-folder-menu{top:8px;left:8px;opacity:1}.studio-shell.is-liked-view .image-folder-menu{transform:none;transition:opacity .15s ease}.image-folder-menu>summary{width:44px;height:44px}.image-folder-popover{position:fixed;top:auto;right:max(12px,env(safe-area-inset-right));bottom:calc(max(10px, env(safe-area-inset-bottom)) + 104px);left:max(12px,env(safe-area-inset-left));width:auto}.image-folder-options label{min-height:44px;font-size:12px}.board-failed,.scene-wait{padding-right:max(12px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left))}.scene-wait-status{flex-wrap:wrap;gap:2px 12px}.board-failed{flex-wrap:wrap;gap:11px}.board-failed-actions{width:100%}.board-failed button{flex:1 1}.composer-position{width:auto;max-width:none}.composer-position,.composer-position.is-docked{right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left))}.composer-position.is-docked{bottom:max(10px,env(safe-area-inset-bottom));margin:0}.composer-position.is-centred{right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));transform:translateY(-50%)}.prompt-dock{padding:6px}.welcome-intro{margin-bottom:17px}.welcome-intro h2{font-size:24px}.welcome-intro>p{padding:0 8px;font-size:13px}.welcome-examples{gap:6px;margin-top:14px}.welcome-examples button{min-width:0;flex:1 1;padding:8px 9px}.prompt-dock textarea{min-height:42px;max-height:min(116px,max(56px,calc(100dvh - 340px)));padding:10px 11px 5px;font-size:16px}.toast-stack{right:max(12px,env(safe-area-inset-right));bottom:104px;left:max(12px,env(safe-area-inset-left));width:auto}.viewer-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px}.viewer-stage{grid-template-columns:48px minmax(0,1fr) 48px}.viewer-image{width:min(calc((100dvh - 42px) * var(--viewer-aspect)),calc(100dvw - 396px))}.viewer-actions a,.viewer-actions button,.viewer-back,.viewer-next,.viewer-previous{width:44px;height:44px}.shot-editor-header{padding:12px 14px 9px}.shot-editor-form{padding:10px 10px max(11px,env(safe-area-inset-bottom))}.shot-composer textarea{min-height:56px;font-size:16px}.version-history>header{min-height:40px;padding:0 14px}.version-history ol{padding:0 6px 10px}.operator-page{width:min(100% - 24px,1120px);padding-top:26px}.operator-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-height:500px) and (min-width:701px) and (max-width:900px){.composer-position,.composer-position.is-centred,.composer-position.is-docked{right:auto;left:50%;width:min(640px,calc(100dvw - 32px))}.composer-position.is-centred{transform:translate(-50%,-50%)}.composer-position.is-docked{transform:translateX(-50%)}}@media (hover:none),(pointer:coarse){.image-actions{opacity:1;transform:translateY(0)}.tooltip-control:after{display:none}}@media (max-width:700px){.viewer-workspace{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) clamp(258px,38dvh,292px)}.viewer-stage{grid-template-columns:46px minmax(0,1fr) 46px}.viewer-image{width:min(calc(100dvw - 90px),calc((100dvh - clamp(258px, 38dvh, 292px) - 26px) * var(--viewer-aspect)))}.viewer-back{top:max(8px,env(safe-area-inset-top));left:8px}.viewer-actions{bottom:8px}.shot-editor{grid-template-rows:auto minmax(0,1fr) auto;border-top:1px solid var(--rule);border-left:0;animation-name:editor-sheet-in}.shot-editor-header{padding:10px 13px 7px}.shot-editor-form{padding:8px 8px max(8px,env(safe-area-inset-bottom))}.shot-composer{border-radius:var(--radius-card)}.shot-composer textarea{min-height:42px;max-height:78px;padding-top:7px}.version-history{grid-template-rows:34px minmax(0,1fr)}.version-history>header{min-height:34px}.version-history ol{display:flex;gap:5px;padding:0 8px 8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none}.version-history ol::-webkit-scrollbar{display:none}.version-history ol[data-overflow=end]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}.version-history ol[data-overflow=start]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(270deg,#000 calc(100% - 40px),transparent)}.version-history ol[data-overflow=both]{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}.version-history li{flex:0 0 166px;scroll-snap-align:start}.version-history li+li{margin-top:0}.version-history li>button:not(.version-delete){min-height:64px;grid-template-columns:36px minmax(0,1fr);gap:8px;padding:4px 7px}.version-thumb{width:36px;height:50px}}@keyframes editor-sheet-in{0%{opacity:.65;clip-path:inset(20% 0 0);transform:translateY(18px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}@media (max-width:380px){.top-actions{gap:2px}.welcome-examples{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sizes-dropzone{position:fixed;z-index:24;right:0;bottom:max(12px,env(safe-area-inset-bottom));left:0;display:grid;gap:10px;width:min(640px,calc(100dvw - 32px));margin:0 auto}@media (max-width:700px){.sizes-dropzone{right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));width:auto;margin:0}}.liked-count{color:var(--ink-muted);font-size:12px}.sizes-drop-target{display:flex;height:104px;align-items:center;justify-content:center;gap:12px;padding:0 18px;border:1px solid color-mix(in srgb,var(--rule-strong) 74%,transparent);border-radius:var(--radius-card);background:var(--panel-raised);box-shadow:0 18px 54px -26px rgb(0 0 0/82%);color:var(--ink-muted);font-size:13.5px;transition:border-color .14s ease,background .14s ease,color .14s ease}.sizes-drop-target.is-dragging,.sizes-drop-target:hover:not(:disabled){border-color:var(--iris);background:var(--surface-raised);color:var(--ink-soft)}.sizes-file-row{display:flex;min-height:44px;align-items:center;gap:8px;padding:4px 6px 4px 12px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--panel)}.sizes-file-name{flex:1 1;overflow:hidden;color:var(--ink-soft);font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.sizes-file-remove{display:inline-flex;width:32px;height:32px;flex:none;align-items:center;justify-content:center;border:none;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted)}.sizes-file-remove:hover:not(:disabled){background:var(--surface-raised);color:var(--ink-soft)}.sizes-extend-button{display:inline-flex;height:36px;flex:none;align-items:center;gap:6px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-control);background:var(--iris);color:#12101f;font-size:12.5px;font-weight:500}.sizes-extend-button:hover:not(:disabled){background:var(--iris-soft)}.sizes-extend-button:disabled{opacity:.55}.extension-sheet-actions{display:inline-flex;align-items:center;gap:6px}.extension-sheet{--tile-aspect:9/16;--image-aspect:9/16;margin:0 auto 26px;width:100%;content-visibility:auto;contain-intrinsic-size:auto 420px}.extension-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.extension-sheet-heading{display:inline-flex;min-width:0;align-items:center;gap:2px;margin:0}.extension-sheet-heading .compose-group-rename-button{opacity:0}.extension-sheet-header:hover .extension-sheet-heading .compose-group-rename-button,.extension-sheet-heading .compose-group-rename-button:focus-visible{opacity:1}.extension-sheet-title{display:grid;gap:2px;min-width:0}.extension-sheet-title h2{overflow:hidden;margin:0;color:var(--ink);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.extension-sheet-title span{color:var(--ink-muted);font-size:11px}.extension-sheet-grid{display:grid;gap:7px}.extension-format-tile,.extension-source-tile{position:relative;aspect-ratio:var(--tile-aspect);min-width:0;overflow:hidden;border-radius:var(--radius-tile)}.extension-format-tile[data-aspect-ratio=original],.extension-source-tile[data-aspect-ratio=original]{--tile-aspect:3/4}.extension-format-tile[data-aspect-ratio="9:16"],.extension-source-tile[data-aspect-ratio="9:16"]{--tile-aspect:9/16;--image-aspect:9/16}.extension-format-tile[data-aspect-ratio="4:3"],.extension-source-tile[data-aspect-ratio="4:3"]{--tile-aspect:4/3;--image-aspect:4/3}.extension-format-tile[data-aspect-ratio="1:1"],.extension-source-tile[data-aspect-ratio="1:1"]{--tile-aspect:1/1;--image-aspect:1/1}.extension-format-tile[data-aspect-ratio="16:9"],.extension-source-tile[data-aspect-ratio="16:9"]{--tile-aspect:16/9;--image-aspect:16/9}.extension-source-tile{margin:0;border:1px solid var(--rule-strong);background:var(--surface)}.extension-source-image{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer}.extension-source-image:focus-visible,.extension-source-image:hover{outline:2px solid var(--iris);outline-offset:-2px}.extension-format-tile .image-tile{height:100%;aspect-ratio:var(--image-aspect)}.extension-format-tile .image-actions,.extension-source-tile .image-actions{position:absolute;right:5px;bottom:5px;z-index:2;display:flex;height:auto;max-width:calc(100% - 10px);flex-wrap:nowrap;justify-content:flex-end;gap:2px;padding:2px;border:1px solid color-mix(in srgb,var(--rule-strong) 80%,transparent);border-radius:6px;background:color-mix(in srgb,var(--background) 84%,transparent)}.extension-format-tile .image-action,.extension-source-tile .image-action{width:28px;height:28px}.extension-source-tile:focus-within .image-actions,.extension-source-tile:hover .image-actions{opacity:1;transform:translateY(0)}.extension-format-tile .ratio-badge,.extension-source-tile .ratio-badge{top:5px;bottom:auto;left:5px}@media (max-width:700px){.extension-source-tile .image-action-character,.extension-source-tile .image-action-edit{display:none}.extension-format-tile .image-action,.extension-source-tile .image-action{width:24px;height:24px}.extension-format-tile .image-actions,.extension-source-tile .image-actions{gap:1px;padding:1px}}.extension-download-inline{margin-left:auto;align-self:center}.extension-format-pending{display:grid;place-content:center;justify-items:center;gap:8px;border:1px solid var(--rule);background:var(--surface)}.extension-format-pending .generation-frame-spinner,.pending-edit-row .generation-frame-spinner{position:relative;top:auto;left:auto;transform:none}.ratio-badge{position:absolute;bottom:6px;left:6px;z-index:3;padding:2px 5px;border-radius:var(--radius-tile);background:rgba(11,11,15,.78);color:var(--ink-soft);font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}@media (max-width:700px){.extension-sheet-grid{gap:5px}.extension-sheet-header{flex-wrap:wrap}.sizes-extend-button,.sizes-pick-button{height:44px}}.pending-edit-row{display:flex;align-items:center;gap:12px;width:100%;margin:0 0 14px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--panel)}.pending-edit-row .generation-frame-spinner{flex:none}.pending-edit-copy{overflow:hidden;color:var(--ink-muted);font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.batch-heading-actions{display:inline-flex;align-items:center;gap:6px}.batch-delete{color:var(--ink-muted)}.batch-delete:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.delete-dialog{width:min(420px,calc(100dvw - 32px));padding:0;border:1px solid var(--rule-strong);border-radius:var(--radius-card);background:var(--panel-raised);box-shadow:0 24px 64px -24px rgb(0 0 0/85%);color:var(--ink)}.delete-dialog:focus,.delete-dialog:focus-visible{outline:none}.delete-dialog::backdrop{background:rgb(0 0 0/62%)}.delete-panel{display:grid;gap:12px;padding:18px}.delete-panel h2{margin:0;font-size:15px;font-weight:600}.delete-panel p{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.5}.delete-error{color:var(--danger)!important}.delete-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.delete-cancel,.delete-confirm{display:inline-flex;min-height:38px;align-items:center;padding:0 14px;border-radius:var(--radius-control);font-size:12.5px;font-weight:500}.delete-cancel{border:1px solid var(--rule-strong);background:transparent;color:var(--ink-soft)}.delete-cancel:hover:not(:disabled){background:var(--surface)}.delete-confirm{border:1px solid transparent;background:var(--danger);color:#241312}.delete-confirm:hover:not(:disabled){filter:brightness(1.08)}.delete-cancel:disabled,.delete-confirm:disabled{opacity:.55}.viewer-sizes-nav{position:absolute;z-index:2;bottom:max(64px,calc(env(safe-area-inset-bottom) + 56px));left:50%;display:flex;gap:8px;padding:7px;transform:translateX(-50%);border:1px solid var(--rule);border-radius:var(--radius-control);background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.viewer-size-thumb{position:relative;height:64px;width:calc(64px * var(--thumb-aspect, 1));overflow:hidden;border:1px solid var(--rule-strong);border-radius:var(--radius-tile);background:var(--surface);padding:0;transition:border-color .14s ease,filter .14s ease,transform .14s cubic-bezier(.22,1,.36,1)}.viewer-size-thumb img{width:100%;height:100%;object-fit:cover}.viewer-size-thumb:hover:not(.is-current):not(:disabled){border-color:var(--ink-faint);filter:brightness(1.12)}.viewer-size-thumb:active:not(:disabled){transform:scale(.94)}.viewer-size-thumb:focus-visible{outline:2px solid var(--iris);outline-offset:2px}.viewer-size-thumb.is-current{border-color:var(--iris)}.viewer-size-thumb.is-current img{filter:brightness(1.06)}.viewer-size-thumb .ratio-badge{bottom:3px;left:3px;padding:1.5px 4px;font-size:9px}@media (max-width:820px){.viewer-size-thumb{height:52px;width:calc(52px * var(--thumb-aspect, 1))}}.compose-slow-note{position:absolute;right:8px;bottom:8px;left:8px;padding:5px 8px;border-radius:6px;background:rgba(11,11,15,.78);color:var(--ink-soft);font-size:11.5px;line-height:1.4;text-align:center}.compose-groups{display:grid;gap:22px;width:100%;margin:0;align-content:start}.compose-character-group{display:grid;gap:7px}.compose-group-header{display:flex;align-items:center;gap:9px;min-width:0}.compose-group-rename{display:inline-flex;min-width:0;flex:none;align-items:baseline;gap:6px}.compose-group-rename input{min-width:5ch;max-width:min(42ch,46vw);padding:0 0 1px;border:0;border-bottom:1px solid color-mix(in srgb,var(--iris-soft) 45%,transparent);background:transparent;color:var(--ink);font-size:13.5px;font-weight:590;letter-spacing:.1px;field-sizing:content}.compose-group-rename input:focus{outline:none;border-bottom-color:var(--iris-soft)}.compose-group-rename .submit-spinner{color:var(--ink-muted)}.compose-group-rename-button{display:inline-flex;flex:none;align-items:center;justify-content:center;padding:5px;margin-left:-5px;border-radius:var(--radius-control);color:var(--ink-muted);opacity:0;transition:opacity .14s ease,color .14s ease}.compose-group-header:hover .compose-group-rename-button,.compose-group-rename-button:focus-visible{opacity:1}.compose-group-rename-button:hover:not(:disabled){color:var(--ink)}@media (hover:none),(pointer:coarse){.compose-group-rename-button{opacity:1}}.compose-group-name{min-width:0;overflow:hidden;color:var(--ink);font-size:13.5px;font-weight:590;letter-spacing:.1px;text-overflow:ellipsis;white-space:nowrap}.compose-group-actions{gap:6px;margin-left:auto}.compose-group-actions,.compose-group-new{display:inline-flex;align-items:center;flex:0 0 auto}.compose-group-new{gap:5px;padding:6px 11px;border:1px solid var(--rule-strong);border-radius:999px;background:transparent;color:var(--ink-soft);font-size:12px;transition:background .14s ease,color .14s ease,border-color .14s ease}.compose-group-new:hover:not(:disabled){background:color-mix(in srgb,var(--surface-raised) 72%,transparent);border-color:var(--ink-muted);color:var(--ink)}.compose-group-new:disabled{opacity:.45;cursor:not-allowed}.compose-band{display:flex;gap:7px;height:280px;min-width:0}.compose-band-source{position:relative;flex:0 0 auto;height:100%;margin:0;overflow:hidden;border-radius:var(--radius-tile);box-shadow:inset 0 0 0 1px var(--rule-strong)}.compose-band-source-chip{position:absolute;left:6px;bottom:6px;z-index:2;padding:2px 6px;border-radius:3px;background:rgba(11,11,15,.78);color:var(--ink-soft);font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.compose-band-scroll{display:flex;gap:7px;flex:1 1;min-width:0;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent;padding-bottom:2px}.compose-band-tile{position:relative;flex:0 0 auto;height:100%;min-width:0;overflow:hidden;border-radius:var(--radius-tile);scroll-snap-align:start;background:var(--surface)}.compose-band-tile .image-tile{position:absolute;inset:0;aspect-ratio:auto;overflow:hidden;background:var(--surface)}.compose-band-tile .image-open{position:absolute;inset:0;height:100%;aspect-ratio:auto}.compose-band-tile .image-actions{right:4px;bottom:4px;height:auto;flex-wrap:nowrap;justify-content:flex-end;gap:3px;padding:3px}@media (hover:hover) and (pointer:fine){.compose-band-tile .image-actions{opacity:0;transform:translateY(4px)}.compose-band-tile:focus-within .image-actions,.compose-band-tile:hover .image-actions{opacity:1;transform:none}}.compose-band-tile .image-action{position:relative;width:22px;height:22px}.compose-band-tile .image-action svg{width:13px;height:13px}.compose-band-tile .image-action:after{content:"";position:absolute;inset:-6px}.compose-band-tile.compose-failed-tile{border:1px dashed var(--rule-strong)}.compose-band-tile.compose-failed-tile img{opacity:.35;filter:grayscale(.6)}.compose-failed-caption{position:absolute;inset:auto 6px 6px;padding:3px 6px;border-radius:4px;background:rgba(11,11,15,.82);color:var(--ink-soft);font-size:10.5px;text-align:center}.compose-band-tile.extension-format-pending{display:grid;place-content:center;border:1px solid var(--rule);background:var(--surface)}.compose-character-group.is-expanded .compose-band{display:block;height:auto}.compose-justified-row{display:flex;gap:7px;align-items:flex-start;margin-bottom:7px}.compose-justified-row:last-child{margin-bottom:0}.compose-justified-item{position:relative;flex:0 0 auto;min-width:0;overflow:hidden;border-radius:var(--radius-tile)}.compose-justified-item .compose-band-source,.compose-justified-item .compose-band-tile{position:relative;inset:auto;width:100%;height:auto;margin:0}.compose-justified-item .compose-band-tile .image-open,.compose-justified-item .compose-band-tile .image-tile{position:absolute;inset:0;aspect-ratio:auto}.board-justified .compose-justified-row{gap:7px;margin-bottom:7px}.board-justified .compose-justified-item>.generation-frame,.board-justified .compose-justified-item>.image-tile{width:100%;aspect-ratio:var(--image-aspect,1);overflow:hidden;background:var(--surface)}.board-justified .image-open{position:absolute;inset:0;height:100%;aspect-ratio:auto}.board-justified .image-actions{position:absolute;right:4px;bottom:4px;height:auto;flex-wrap:nowrap;justify-content:flex-end;gap:3px;padding:3px}.board-justified .image-action{width:22px;height:22px}.board-justified .image-action svg{width:13px;height:13px}@media (hover:hover) and (pointer:fine){.board-justified .image-actions{opacity:0;transform:translateY(4px)}.board-justified .image-tile:focus-within .image-actions,.board-justified .image-tile:hover .image-actions{opacity:1;transform:none}}@media (max-width:700px){.board-justified .image-actions{right:6px;bottom:6px;gap:3px;padding:3px}.board-justified .image-action{width:44px;height:44px}.board-justified .image-action svg{width:17px;height:17px}.board-justified .tile-heart{top:6px;right:6px;width:44px;height:44px}.board-justified .tile-heart svg{width:17px;height:17px}.board-justified .image-action-character,.board-justified .image-action-delete,.board-justified .image-action-extend,.board-justified .image-action-regenerate{display:none}}.board-sections{display:grid;min-width:0}.scene-block{min-width:0;margin:0 0 26px}.scene-block:not(:first-child){margin-top:19px}.board-failed{display:flex;width:100%;min-height:44px;align-items:center;justify-content:space-between;gap:18px;margin:11px 0 0;color:var(--ink-muted);font-size:12px}.board-failed-copy{display:grid;min-width:0;gap:2px}.board-failed p{display:flex;min-width:0;flex-wrap:wrap;gap:4px 8px;margin:0;line-height:1.45}.board-failed strong{color:var(--ink-soft);font-size:13px;font-weight:500}.board-failed-reference{color:var(--ink-muted);font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.35}.board-failed-actions{display:inline-flex;flex:none;align-items:center;gap:8px}.board-failed button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--surface-raised);color:var(--ink-soft);font-size:12px;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.board-failed button.is-secondary{background:transparent}.board-failed button:hover:not(:disabled){border-color:var(--ink-muted);background:var(--surface);color:var(--ink)}.board-failed button:active:not(:disabled){transform:scale(.98)}.board-failed button:disabled{cursor:default;opacity:.62}.dock-toggle{display:inline-flex;height:44px;flex:none;align-items:center;gap:8px;padding:0 10px;border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);font-size:11px;line-height:1;white-space:nowrap;transition:background .14s ease,color .14s ease}.dock-toggle:hover:not(:disabled){background:color-mix(in srgb,var(--surface-raised) 72%,transparent);color:var(--ink)}.dock-toggle:disabled{cursor:default;opacity:.5}.dock-toggle[aria-checked=true]{color:var(--ink)}.dock-toggle-track{position:relative;display:inline-block;width:28px;height:16px;flex:none;overflow:hidden;border-radius:999px;background:var(--rule-strong);transition:background .16s ease}.dock-toggle-knob{position:absolute;z-index:1;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--ink);transition:transform .16s cubic-bezier(.22,1,.36,1)}.dock-toggle[aria-checked=true] .dock-toggle-track{background:var(--iris)}.dock-toggle[aria-checked=true] .dock-toggle-knob{transform:translateX(12px)}.shot-stepper{flex:none;padding:0 2px}.shot-stepper,.shot-stepper button{display:inline-flex;height:44px;align-items:center;border-radius:var(--radius-control)}.shot-stepper button{width:28px;justify-content:center;background:transparent;color:var(--ink-muted);transition:background .14s ease,color .14s ease}.shot-stepper button:hover:not(:disabled){background:color-mix(in srgb,var(--surface-raised) 72%,transparent);color:var(--ink)}.shot-stepper button:disabled{cursor:default;opacity:.4}.shot-stepper-count{min-width:16px;color:var(--ink-soft);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;text-align:center}@media (max-width:700px){.compose-group-header{flex-wrap:wrap}.compose-group-actions{margin-left:0}.compose-justified-row{gap:5px;margin-bottom:5px}.compose-character-group.is-expanded .compose-band-source,.compose-character-group.is-expanded .compose-band-tile{height:auto}.compose-band{height:150px}.prompt-dock textarea{min-height:64px}.compose-band-tile .image-action{width:24px;height:24px}.compose-band-tile .image-action-edit,.compose-band-tile .image-action-extend{display:none}.compose-group-new{min-height:36px}}.compose-empty{position:absolute;inset:71px 12px 200px;display:grid;grid-template-rows:1fr auto 1fr;gap:12px;text-align:center;pointer-events:none}.compose-empty button{pointer-events:auto}.compose-empty h2{grid-row:2}.compose-empty .compose-empty-body{grid-row:3;display:grid;align-self:start;justify-items:center;gap:12px}.compose-empty h2{margin:0;color:var(--ink);font-size:clamp(22px,2.8vw,28px);font-weight:500;letter-spacing:-.025em;line-height:1.15}.compose-empty p{max-width:58ch;margin:0 auto;color:var(--ink-soft);font-size:13.5px;line-height:1.55}.compose-empty-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;margin:14px 0 0;padding:0;list-style:none;counter-reset:compose-step}.compose-empty-steps li{display:flex;align-items:center;gap:7px;color:var(--ink-muted);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;counter-increment:compose-step}.compose-empty-steps li:before{display:inline-grid;place-content:center;width:19px;height:19px;border:1px solid var(--rule-strong);border-radius:999px;color:var(--ink-soft);font-size:10px;font-weight:600;content:counter(compose-step)}.extension-format-tile.extension-format-dead{border-style:dashed}.extension-sheet-failure{margin:0;color:var(--ink-soft);font-size:12.5px}.compose-group-delete{color:var(--ink-muted)}.compose-group-delete:hover:not(:disabled){border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.top-place{display:flex;align-items:center;gap:10px}.campaign-door{display:grid;width:36px;height:36px;place-items:center;border-radius:var(--radius-control);color:var(--ink-muted);text-decoration:none;transition:color .15s ease,background .15s ease}.campaign-door:hover{background:var(--surface);color:var(--ink)}.campaign-trail{min-width:0;flex:1 1}.campaign-trail ol{display:flex;min-width:0;align-items:center;gap:6px;padding:0 0 0 18px;margin:0;list-style:none}.campaign-trail ol:before{width:1px;height:16px;flex:none;margin-right:18px;background:var(--rule);content:""}.campaign-trail li{min-width:0;overflow:hidden;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.campaign-trail-step{display:grid;flex-shrink:0;place-items:center;color:var(--ink-faint)}.campaign-trail a{color:var(--ink-muted);text-decoration:none}.campaign-trail [aria-current=page],.campaign-trail a:hover{color:var(--ink)}.campaign-canvas{width:100%;max-width:calc(768px + 2 * max(22px, env(safe-area-inset-left)));padding:28px max(22px,env(safe-area-inset-left)) 64px;margin:0 auto}.campaign-empty{padding:40px 0;margin:0;color:var(--ink-muted);font-size:13px}.campaign-canvas-head{width:min(240px,100%);padding-bottom:22px}.campaign-canvas-head .credit-meter{margin-top:0}.campaign-cards{gap:13px;padding:0;margin:0;list-style:none}.campaign-card,.campaign-cards{display:flex;flex-direction:column}.campaign-card{gap:11px;padding:16px;border:1px solid var(--rule);border-radius:12px;background:var(--panel);color:var(--ink);text-decoration:none;transition:background .15s ease,border-color .15s ease,transform .07s ease}.campaign-card:hover{border-color:var(--rule-strong);background:var(--surface)}.campaign-card:active{transform:translateY(.5px)}.campaign-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.campaign-card-title{display:flex;min-width:0;flex-direction:column;gap:7px}.campaign-card-name{min-width:0;color:var(--ink);font-size:14px;font-weight:600;line-height:1.2}.campaign-card-count{color:var(--ink-muted);font-size:11px;font-weight:400;line-height:1.45}.campaign-card-status{flex-shrink:0;padding-top:3px;color:var(--ink-muted);font-size:9px;font-weight:600;line-height:1;white-space:nowrap}.campaign-card-status.is-delivered{color:var(--settled)}.campaign-card-frames{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.campaign-card-frame{display:flex;min-width:0;flex-direction:column;gap:6px}.campaign-card-well{position:relative;display:block;overflow:hidden;aspect-ratio:4/5;border-radius:8px;background:var(--stage)}.campaign-card-well img{display:block;width:100%;height:100%;object-fit:cover}.campaign-card-well.is-empty{border:1.5px dashed var(--rule-strong);background:radial-gradient(115% 80% at calc(34% + var(--seat, 0) * 11%) 18%,var(--rule-strong) 0,var(--surface-raised) 42%,var(--surface) 100%)}.campaign-card-frame-label{overflow:hidden;color:var(--ink-muted);font-size:9px;font-weight:600;line-height:1;white-space:nowrap;text-overflow:ellipsis}.campaign-card .credit-meter{width:min(240px,100%);margin-top:0}@media (max-width:560px){.campaign-card-frames{grid-template-columns:repeat(2,1fr)}}.upload-board{width:100%;margin:0;padding:32px 12px max(22px,env(safe-area-inset-bottom))}.upload-board-header{display:flex;min-height:44px;align-items:center;margin:0 0 12px}.upload-board-header h1{margin:0;color:var(--ink);font-size:20px;font-weight:600;letter-spacing:-.025em;line-height:1.2}.upload-zone{display:flex;width:100%;min-height:168px;flex-direction:column;align-items:center;justify-content:center;gap:11px;padding:26px 18px;border:1.5px dashed var(--rule-strong);border-radius:var(--radius-card);background:var(--panel-raised);color:var(--ink-muted);font-size:14px;font-weight:500;transition:border-color .14s ease,background-color .14s ease,color .14s ease}.upload-zone.is-dragging,.upload-zone:hover{border-color:var(--ink-muted);background:var(--surface);color:var(--ink)}.upload-zone.is-dragging{border-style:solid;box-shadow:0 0 0 3px color-mix(in srgb,var(--iris) 12%,transparent)}.upload-zone:active{transform:scale(.98)}.upload-zone.is-refused{border-color:var(--danger);animation:cal-shake .32s ease}@keyframes cal-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}55%{transform:translateX(4px)}80%{transform:translateX(-2px)}}.upload-grid{display:grid;margin:7px 0 0;padding:0;gap:7px;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));list-style:none}.upload-cell{position:relative;overflow:hidden;aspect-ratio:1/1;border-radius:var(--radius-tile);background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule)}.upload-cell img{display:block;width:100%;height:100%;object-fit:cover}.upload-cell.is-pending{border:1px dashed var(--rule-strong);box-shadow:none}.upload-cell-origin{position:absolute;top:6px;left:6px;padding:2px 5px;border-radius:var(--radius-tile);background:rgba(11,11,15,.78);color:var(--ink);font-size:9px;font-weight:600;letter-spacing:.08em;line-height:1;text-transform:uppercase}@media (max-width:700px){.upload-zone{min-height:148px}.upload-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}}.cast-page{width:min(1280px,calc(100% - 40px));margin:0 auto;padding:44px 0 96px}.cast-surface{display:grid;gap:26px}.cast-empty{display:grid;place-items:center;min-height:40dvh}.cast-sheet{display:grid;gap:13px}.cast-sheet-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:13px}.cast-sheet-title,.cast-wall-title{margin:0;font-size:20px;font-weight:600;line-height:1.2;letter-spacing:-.025em;color:var(--ink)}.cast-spread{display:flex;flex-wrap:wrap;gap:2px 17px;margin:0}.cast-spread-item{display:flex;align-items:baseline;gap:5px}.cast-spread-item dt{font-size:9px;font-weight:600;line-height:1;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.cast-spread-item dd{margin:0;font-size:12.5px;font-weight:500;color:var(--ink-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-sheet-table-wrap{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--radius-control)}.cast-sheet-table{width:100%;border-collapse:collapse;background:var(--panel);font-size:11.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-sheet-table td,.cast-sheet-table th{padding:11px 13px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}.cast-sheet-table thead th{font-size:9px;font-weight:600;line-height:1;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.cast-sheet-table tbody td{color:var(--ink-soft)}.cast-sheet-table tbody tr:last-child td,.cast-sheet-table tbody tr:last-child th{border-bottom:none}.cast-cell-name{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap}.cast-column-number{width:1%;color:var(--ink-faint);font-size:10.5px}.cast-column-action{width:1%}.cast-cell-phrase{min-width:15ch;max-width:34ch}.cast-figure{font-size:13px;color:var(--ink)}.cast-figure,.cast-note{display:block;font-weight:500}.cast-note{margin-top:2px;font-size:10px;line-height:1.35;color:var(--ink-muted)}.cast-sheet-table tbody tr.is-rerolled .cast-column-number{box-shadow:inset 2px 0 0 var(--iris);color:var(--iris-soft)}.cast-reroll{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.cast-reroll:hover:not(:disabled){border-color:color-mix(in srgb,var(--iris) 55%,transparent);background:var(--surface);color:var(--iris-soft)}.cast-reroll:active:not(:disabled){transform:scale(.94)}.cast-reroll:disabled{cursor:default;opacity:.4}.cast-reroll .is-spinning{animation:cast-spin .62s linear infinite}@keyframes cast-spin{to{transform:rotate(1turn)}}.cast-sheet-actions{display:flex;justify-content:flex-end}.cast-birth-all{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 22px;border:none;border-radius:var(--radius-control);background:var(--ink);color:var(--background);font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .14s ease}.cast-birth-all:hover:not(:disabled){background:#fff8e8}.cast-birth-all:active:not(:disabled){transform:scale(.98)}.cast-birth-all:disabled{cursor:default;opacity:.45}.cast-pending{display:flex;align-items:center;gap:9px;margin:0;font-size:12px;font-weight:500;color:var(--iris-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-pending-spinner{width:13px;height:13px;border:1.5px solid color-mix(in srgb,var(--iris-soft) 30%,transparent);border-top-color:var(--iris-soft);border-radius:50%;animation:cast-spin .72s linear infinite}.cast-wall{display:grid;gap:13px}.cast-wall-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:17px 7px;margin:0;padding:0;list-style:none}.cast-member{display:grid;gap:7px;align-content:start}.cast-frame{position:relative;aspect-ratio:3/4;border-radius:var(--radius-tile);background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule);overflow:hidden}.cast-frame img{display:block;width:100%;height:100%;object-fit:cover}.cast-frame-waiting{position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent 0 9px,color-mix(in srgb,var(--rule) 60%,transparent) 9px 10px)}.cast-lineage-badge,.cast-twin-badge{position:absolute;top:5px;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:none;border-radius:var(--radius-control);background:rgba(11,11,15,.78);font-family:inherit;font-size:9px;font-weight:600;line-height:1;letter-spacing:.08em;text-transform:uppercase;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-twin-badge{left:5px;color:var(--danger)}.cast-lineage-badge{right:5px;color:var(--iris-soft);cursor:pointer}.cast-name{padding:0;border:none;background:transparent;color:var(--ink);font-family:inherit;font-size:13.5px;font-weight:600;text-align:left;cursor:text}.cast-name:hover{box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--iris-soft) 45%,transparent)}.cast-name-input{width:100%;padding:0;border:none;border-radius:0;background:transparent;box-shadow:inset 0 -1px 0 var(--iris-soft);color:var(--ink);font-family:inherit;font-size:13.5px;font-weight:600}.cast-name-input:focus{outline:none}.cast-member-actions{display:flex;gap:5px;opacity:0;transition:opacity .14s ease}.cast-member:focus-within .cast-member-actions,.cast-member:hover .cast-member-actions{opacity:1}.cast-action{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);cursor:pointer;transition:color .14s ease,border-color .14s ease,background .14s ease}.cast-action:hover:not(:disabled){border-color:color-mix(in srgb,var(--iris) 55%,transparent);background:var(--surface);color:var(--iris-soft)}.cast-action:disabled{cursor:default;opacity:.4}.cast-lineage-panel{display:grid;gap:5px;max-width:46ch;margin-top:9px}.cast-lineage-title{margin:0;font-size:15px;font-weight:600;line-height:1.35;color:var(--ink)}.cast-lineage{display:grid;gap:5px;margin:2px 0 0;padding:9px 11px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--panel);list-style:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-lineage li{display:grid;grid-template-columns:16px 1fr;gap:2px 7px}.cast-lineage-step{grid-row:span 2;font-size:10px;font-weight:600;color:var(--ink-faint)}.cast-lineage li.is-original .cast-lineage-step{color:var(--iris-soft)}.cast-lineage-execution{font-size:11px;font-weight:500;color:var(--ink-soft)}.cast-lineage-wardrobe{grid-column:2;font-size:10px;line-height:1.35;color:var(--ink-muted)}.cast-section{display:grid;gap:22px}.cast-rewardrobe{display:flex;flex-wrap:wrap;gap:9px}.cast-rewardrobe-target{min-height:44px;padding:0 20px;border:0;border-radius:999px;background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--rule-strong);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.cast-rewardrobe-target:hover{box-shadow:inset 0 0 0 1px var(--iris-soft)}.cast-notice{margin:0;color:var(--ink-soft);font-size:13px;font-weight:500}.execution-sections{display:flex;gap:5px;margin-left:auto}.execution-section{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 15px;border-radius:999px;color:var(--ink-muted);font-size:13px;font-weight:600;text-decoration:none}.execution-section:hover{color:var(--ink);background:var(--surface)}.execution-section[aria-current=page]{color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px var(--rule-strong)}.execution-canvas{width:min(1280px,calc(100% - 40px));margin:0 auto;padding:30px 0 96px}@media (max-width:700px){.top-bar:has(.execution-sections){height:auto;flex-wrap:wrap;padding-bottom:7px}.execution-sections{width:100%;margin:5px 0 0;overflow-x:auto;scrollbar-width:none}.execution-section{flex:none;padding:0 13px}.execution-canvas{width:calc(100% - 24px);padding:18px 0 64px}.cast-page{width:calc(100% - 24px);padding:22px 0 64px}.cast-sheet-table-wrap{overflow-x:visible;border:none;border-radius:0}.cast-sheet-table,.cast-sheet-table tbody,.cast-sheet-table tr{display:block;width:100%;min-width:0}.cast-sheet-table thead{display:none}.cast-sheet-table tbody tr{position:relative;margin-bottom:7px;padding:11px 13px 13px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--panel)}.cast-sheet-table tbody td,.cast-sheet-table tbody th{display:block;padding:0;border:none;min-width:0;max-width:none}.cast-cell-name{white-space:normal}.cast-sheet-table tbody td:not(:empty){margin-top:5px}.cast-cell-name{font-size:15px}.cast-column-number{position:absolute;top:13px;right:13px}.cast-sheet-table tbody tr.is-rerolled .cast-column-number{box-shadow:none;font-weight:600}.cast-column-action{position:static;width:auto;margin-top:11px}.cast-reroll{width:100%;height:44px}.cast-figure,.cast-note{display:inline}.cast-note{margin-left:5px}.cast-sheet-actions{position:sticky;bottom:0;padding:9px 0 max(9px,env(safe-area-inset-bottom));background:linear-gradient(to top,var(--background) 62%,transparent)}.cast-birth-all{width:100%;justify-content:center;min-height:48px}.cast-wall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cast-member-actions{opacity:1}}@media (prefers-reduced-motion:reduce){.cast-pending-spinner,.cast-reroll .is-spinning{animation:none}}.credit-meter{margin-top:11px}.credit-meter-track{height:4px;overflow:hidden;border-radius:2px;background:var(--surface-raised)}.credit-meter-track>span{display:block;height:100%;background:var(--iris);transition:width .15s ease}.credit-meter[data-level=critical] .credit-meter-track>span,.credit-meter[data-level=low] .credit-meter-track>span{background:var(--ink)}.credit-meter[data-level=exhausted] .credit-meter-track>span{background:var(--ink-faint)}.credit-meter-figure{display:block;margin-top:7px;color:var(--ink-muted);font-size:11px;font-weight:500}.credit-meter[data-level=critical] .credit-meter-figure,.credit-meter[data-level=exhausted] .credit-meter-figure{color:var(--ink)}.credit-top-up{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid var(--rule)}.credit-top-up label{display:block;min-width:0}.credit-top-up label>span{display:block;margin-bottom:6px;color:var(--ink-muted);font-size:11px}.credit-top-up input{width:100%;height:38px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.credit-top-up input:focus-visible{outline:none;border-color:var(--iris)}.credit-top-up button{height:38px;padding:0 20px;border:0;border-radius:var(--radius-control);background:var(--iris);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.credit-top-up button:disabled{background:var(--surface);color:var(--ink-muted);cursor:default}.credit-top-up[data-shaking],.prompt-dock[data-shaking]{animation:cal-shake .32s}@media (prefers-reduced-motion:reduce){.credit-top-up[data-shaking],.prompt-dock[data-shaking]{animation:none}}@media (max-width:700px){.credit-top-up{grid-template-columns:96px minmax(0,1fr)}.credit-top-up button{grid-column:1/-1}}.tuner-page{width:100%;max-width:768px;margin:0 auto;padding:30px 40px 90px;display:flex;flex-direction:column;gap:30px}.tuner-page.is-recipe{max-width:none;padding:0;gap:0;height:100vh;overflow:hidden}.tuner-head h1{margin:0;font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}.tuner-head p{margin:6px 0 0;font-size:11px;font-weight:500;color:var(--ink-faint)}.tuner-section h2{margin:0;font-size:12px;font-weight:600;color:var(--ink-muted)}.tuner-note{margin:6px 0 12px;font-size:11px;line-height:1.4;font-weight:500;color:var(--ink-faint);max-width:min(62ch,100%)}.tuner-list{background:var(--panel);border:1px solid var(--rule);border-radius:12px;overflow:hidden}.tuner-group+.tuner-group{border-top:1px solid var(--rule)}.tuner-group-label{display:block;padding:12px 16px 6px;font-size:9px;font-weight:600;color:var(--ink-faint)}.tuner-row{width:100%;display:flex;align-items:center;gap:10px;padding:12px 16px;background:transparent;border:0;border-top:1px solid var(--rule);cursor:pointer;text-align:left;color:inherit;font:inherit;transition:background .15s ease}.tuner-group-label+.tuner-row,.tuner-group>.tuner-row:first-of-type{border-top:0}.tuner-row:hover{background:var(--surface)}.tuner-row.is-static{cursor:default;border-top:1px solid var(--rule)}.tuner-row.is-static:hover{background:transparent}.tuner-row-name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;flex-shrink:0}.tuner-row-summary{flex:1 1;min-width:0;text-align:right;font-size:11px;font-weight:500;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-row svg{flex-shrink:0;color:var(--ink-faint)}.tuner-badge{flex-shrink:0;font-size:9px;font-weight:600;color:var(--iris-soft);background:rgba(124,58,237,.13);border:1px solid rgba(124,58,237,.3);border-radius:6px;padding:3px 6px}.tuner-badge.is-quiet{color:var(--ink-faint);background:transparent;border-color:var(--rule-strong)}.tuner-open{padding:0 16px 18px}.tuner-open.is-refused{animation:cal-shake .32s}.tuner-label{display:block;font-size:9px;font-weight:600;color:var(--ink-faint);margin:4px 0 8px}.tuner-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tuner-card{display:block;width:100%;text-align:left;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:14px 15px;cursor:pointer;color:inherit;font:inherit;transition:border-color .15s ease}.tuner-card:hover:not(.is-selected){border-color:var(--rule-strong)}.tuner-card.is-selected{border-color:var(--iris-soft);box-shadow:0 0 0 1px var(--iris-soft);cursor:default}.tuner-card:disabled{cursor:default;opacity:.55}.tuner-card-head{display:flex;align-items:center;gap:8px}.tuner-card-name{flex:1 1;min-width:0;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-tick{width:16px;height:16px;flex-shrink:0;border-radius:50%;background:var(--iris-soft);display:grid;place-items:center}.tuner-card-price{display:block;margin-top:8px;font-size:12px;font-weight:500;color:var(--ink-muted)}.tuner-card-marks{display:flex;gap:9px;margin-top:9px;min-height:11px;align-items:center}.tuner-card-marks em{font-style:normal;font-size:9px;font-weight:600;color:var(--ink-faint)}.tuner-card-marks em.is-default{color:var(--attention)}.tuner-card-note{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:8px;font-size:11px;line-height:1.45;font-weight:500;color:var(--ink-faint)}.tuner-cards .tuner-card{display:flex;flex-direction:column}.tuner-rungs{list-style:none;margin:0;padding:0;border:1px solid var(--rule);border-radius:8px;overflow:hidden}.tuner-rungs li{display:flex;align-items:center;gap:10px;padding:9px 12px}.tuner-rungs li+li{border-top:1px solid var(--rule)}.tuner-rung-index{width:16px;font-size:11px;font-weight:500;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tuner-rung-name{flex:1 1;min-width:0;font-size:12px;font-weight:500;color:var(--ink-soft)}.tuner-rung-actions{display:inline-flex;gap:6px;flex-shrink:0;opacity:0;transition:opacity .12s ease}.tuner-rung-actions:focus-within,.tuner-rungs li:hover .tuner-rung-actions{opacity:1}.tuner-rung-actions button{background:transparent;border:1px solid var(--rule-strong);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;color:var(--ink-muted);cursor:pointer}.tuner-rung-actions button:hover{background:var(--surface);color:var(--ink)}.tuner-secondary{margin-top:14px;background:transparent;border:1px solid var(--rule-strong);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;color:var(--ink-soft);cursor:pointer}.tuner-secondary:hover{background:var(--surface)}.tuner-changes{list-style:none;margin:16px 0 0;padding:0}.tuner-changes li{display:flex;align-items:center;gap:7px;padding:8px 0;font-size:11px;font-weight:500;color:var(--ink-soft);border-top:1px solid var(--rule)}.tuner-arrow,.tuner-change-by{color:var(--ink-faint)}.tuner-change-by{margin-left:auto}.tuner-bar{display:flex;gap:11px;padding:0 20px;height:52px;border-bottom:1px solid var(--rule);background:var(--panel)}.tuner-back,.tuner-bar{align-items:center;flex-shrink:0}.tuner-back{display:inline-flex;gap:7px;background:transparent;border:0;padding:7px 9px;border-radius:8px;cursor:pointer;color:var(--ink-muted);font-size:13px;font-weight:600}.tuner-back:hover{background:var(--surface);color:var(--ink)}.tuner-bar-rule{width:1px;height:18px;background:var(--rule-strong);flex-shrink:0}.tuner-bar-name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap}.tuner-bar-meta{font-size:9px;font-weight:600;color:var(--ink-faint)}.tuner-bar-spacer{flex:1 1}.tuner-bar-sha{font-size:11px;font-weight:500;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.tuner-primary{display:inline-flex;align-items:center;border:0;padding:8px 15px;border-radius:8px;flex-shrink:0;background:var(--iris-soft);color:#fff;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer}.tuner-primary:hover:not(:disabled){background:#8a81dd}.tuner-primary:disabled{background:var(--surface-raised);color:var(--ink-muted);cursor:default}.tuner-body{flex:1 1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;width:100%;max-width:1040px;margin:0 auto;padding:20px 40px 24px}.tuner-editor-column{display:flex;flex-direction:column;gap:12px;min-height:0}.tuner-ruling{margin:0;border:1px solid rgba(240,180,41,.22);background:rgba(240,180,41,.07);border-radius:8px;padding:10px 12px;font-size:11px;line-height:1.5;font-weight:500;color:var(--attention)}.tuner-ruling.is-quiet{border-color:var(--rule-strong);background:transparent;color:var(--ink-faint)}.tuner-editor{flex:1 1;min-height:0;width:100%;resize:none;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:16px 18px;font-family:inherit;font-size:12px;line-height:1.6;font-weight:500;color:var(--ink-soft);outline:none}.tuner-editor:focus{border-color:var(--iris-soft)}.tuner-editor.is-refused{animation:cal-shake .32s;border-color:var(--attention)}.tuner-editor[readonly]{color:var(--ink-faint)}.tuner-note-field{flex-shrink:0;background:var(--background);border:1px solid var(--rule);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:12px;font-weight:500;color:var(--ink);outline:none}.tuner-note-field:focus{border-color:var(--iris-soft)}.tuner-rail{background:var(--panel);border:1px solid var(--rule);border-radius:12px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.tuner-rail-head{padding:13px 16px;border-bottom:1px solid var(--rule);display:flex;align-items:center;gap:9px;flex-shrink:0;font-size:12px;font-weight:600;color:var(--ink-muted)}.tuner-rail-meta{margin-left:auto;font-size:11px;font-weight:500;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-rail-body{overflow-y:auto;min-height:0}.tuner-version{padding:14px 16px;display:flex;flex-direction:column;gap:5px}.tuner-version+.tuner-version{border-top:1px solid var(--rule)}.tuner-version-head{display:flex;align-items:baseline;gap:8px}.tuner-version-name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-version-sha{margin-left:auto;font-size:11px;font-weight:500;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.tuner-version-by,.tuner-version-note{font-size:11px;line-height:1.45;font-weight:500;color:var(--ink-faint)}.tuner-version-note{color:var(--ink-muted)}.tuner-version-state{margin-top:3px;font-size:11px;font-weight:600;color:var(--settled)}.tuner-revert{margin-top:5px;align-self:flex-start;background:transparent;border:1px solid var(--rule-strong);border-radius:6px;padding:5px 9px;font-size:11px;font-weight:600;color:var(--ink-muted);cursor:pointer}.tuner-revert:hover{background:var(--surface);color:var(--ink)}.tuner-version.is-shipped{border-top:1px solid var(--rule);background:var(--panel-raised)}@media (prefers-reduced-motion:reduce){.tuner-editor.is-refused,.tuner-open.is-refused{animation:none}}@media (max-width:900px){.tuner-page{padding:24px 20px 72px}.tuner-body{grid-template-columns:minmax(0,1fr);padding:16px 20px 24px;overflow-y:auto}.tuner-page.is-recipe{height:auto;overflow:visible}.tuner-editor{min-height:320px}.tuner-cards{grid-template-columns:minmax(0,1fr)}.tuner-bar{gap:8px;padding:0 12px}.tuner-bar-sha{display:none}.tuner-rung-actions{opacity:1}.tuner-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;row-gap:3px}.tuner-row-name{white-space:normal}.tuner-row-summary{grid-column:1;text-align:left;white-space:normal}.tuner-badge,.tuner-row svg{grid-column:2;grid-row:1}.tuner-row .tuner-badge{justify-self:end}}.cast-doors{display:flex;align-items:center;gap:4px;margin-bottom:26px}.cast-door{padding:7px 12px;border-radius:var(--radius-control);color:var(--ink-muted);font-size:13px;font-weight:600;text-decoration:none}.cast-door:hover{background:var(--surface);color:var(--ink)}.cast-door.is-current{background:var(--iris);color:#fff}.cast-library{display:grid;gap:26px}.cast-library-filters{display:flex;flex-wrap:wrap;gap:17px 26px}.cast-facet{display:grid;gap:7px;align-content:start;min-width:0}.cast-facet-label{font-size:12px;font-weight:600;color:var(--ink-muted)}.cast-facet-options{display:flex;flex-wrap:wrap;gap:5px}.cast-facet-option{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.cast-facet-option:hover{background:var(--surface);color:var(--ink)}.cast-facet-option[aria-pressed=true]{border-color:transparent;background:var(--iris);color:#fff}.cast-facet-option[aria-pressed=true]:hover{background:var(--iris-soft)}.cast-facet-count{color:var(--ink-muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-facet-option[aria-pressed=true] .cast-facet-count{color:color-mix(in srgb,#fff 72%,transparent)}.cast-library-empty,.cast-notice{margin:0;color:var(--ink-muted);font-size:13px}.cast-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:26px 17px;margin:0;padding:0;list-style:none}.cast-library-card{position:relative;display:grid;gap:7px;align-content:start}.cast-library-card.is-past .cast-frame,.cast-library-card.is-past .cast-rack{opacity:.5}.cast-library-card .cast-frame{aspect-ratio:3/4}.cast-rack{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:2px 0 0;padding:0;list-style:none}.cast-rack-slot{position:relative;aspect-ratio:1/1;border-radius:var(--radius-tile);overflow:hidden}.cast-rack-slot img{display:block;width:100%;height:100%;object-fit:cover}.cast-rack-slot.is-absent{border:1px dashed var(--rule-strong)}.cast-rack-slot.is-waiting{background:var(--surface);animation:cal-pulse 1.1s ease-in-out infinite}.cast-rack-slot.is-birth,.cast-rack-slot.is-ready{background:var(--surface);box-shadow:inset 0 0 0 1px var(--rule)}.cast-rack-slot.is-drifted{box-shadow:inset 0 0 0 1px var(--attention)}.cast-library-identity{display:grid;gap:2px}.cast-library-name{margin:0;color:var(--ink);font-size:15px;font-weight:600;letter-spacing:-.01em}.cast-library-meta,.cast-library-state,.cast-library-where{margin:0;font-size:11px;font-weight:500}.cast-library-meta{color:var(--ink-soft)}.cast-library-state,.cast-library-where{color:var(--ink-muted)}.cast-library-actions{display:flex;align-items:center;gap:5px}.cast-library-open{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:var(--radius-control);background:var(--iris);color:#fff;font-size:13px;font-weight:600;text-decoration:none}.cast-library-open:hover{background:var(--iris-soft)}.cast-library-more{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--ink-muted);cursor:pointer}.cast-library-more:hover{background:var(--surface);color:var(--ink)}.cast-library-menu{position:absolute;top:100%;right:0;z-index:20;display:grid;gap:2px;min-width:232px;padding:5px;border:1px solid var(--rule-strong);border-radius:var(--radius-control);background:var(--panel);box-shadow:0 24px 60px -16px rgba(0,0,0,.7)}.cast-library-menu button{display:flex;align-items:center;gap:7px;width:100%;padding:9px 10px;border:none;border-radius:6px;background:transparent;color:var(--ink-soft);font-family:inherit;font-size:12px;font-weight:500;text-align:left;cursor:pointer}.cast-library-menu button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-library-menu button:disabled{color:var(--ink-faint);cursor:default}.cast-library-price{margin-left:auto;color:var(--ink-muted);font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-library-more-page{justify-self:start;min-height:38px;padding:0 16px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.cast-library-more-page:hover{background:var(--surface);color:var(--ink)}@media (max-width:700px){.cast-library-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:17px 7px}.cast-library-menu{left:0;right:auto;min-width:0;width:100%}}.cast-size{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--background)}.cast-size button{width:34px;height:34px;border:none;border-radius:6px;background:transparent;color:var(--ink-soft);font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}.cast-size button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-size button:disabled{color:var(--ink-faint);cursor:default}.cast-size output{min-width:34px;color:var(--ink);font-size:15px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.cast-empty{gap:17px}.cast-cost{margin:0;color:var(--ink-muted);font-size:12px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-member-remove{position:absolute;top:5px;left:5px;display:grid;place-items:center;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:rgba(11,11,15,.78);color:var(--ink-muted);cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease}.cast-member-remove:focus-visible,.cast-member:hover .cast-member-remove{opacity:1}.cast-member-remove:hover{color:var(--danger)}.cast-member-restore{min-height:28px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--radius-control);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer}.cast-member-restore:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-member-owed{margin-left:auto;color:var(--ink-muted);font-size:11px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-member .cast-rack-slot button{display:block;width:100%;height:100%;padding:0;border:none;background:transparent;cursor:pointer}.cast-member .cast-rack-slot button:disabled{cursor:default}.cast-member .cast-rack-slot img{display:block;width:100%;height:100%;object-fit:cover}.cast-outfit-change{display:flex;gap:5px;max-width:560px}.cast-outfit-change input{flex:1 1;min-height:38px;padding:0 12px;border:1px solid var(--rule);border-radius:var(--radius-control);background:var(--background);color:var(--ink);font-family:inherit;font-size:13px}.cast-outfit-change input:focus{border-color:var(--iris);outline:none}.cast-outfit-change button{min-height:38px;padding:0 16px;border:none;border-radius:var(--radius-control);background:var(--iris);color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.cast-outfit-change button:hover:not(:disabled){background:var(--iris-soft)}.cast-outfit-change button:disabled{background:var(--surface-raised);color:var(--ink-muted);cursor:default}.cast-candidates{display:grid;gap:13px;justify-items:start}.cast-candidates .cast-wall-grid{width:100%}.cast-candidate{display:grid;gap:7px;width:100%;padding:0;border:none;background:transparent;color:var(--ink-soft);font-family:inherit;text-align:left;cursor:pointer}.cast-candidate .cast-frame{display:block;aspect-ratio:3/4;opacity:.62;transition:opacity .15s ease,box-shadow .15s ease}.cast-candidate:hover .cast-frame{opacity:.85}.cast-candidate[aria-pressed=true] .cast-frame{opacity:1;box-shadow:inset 0 0 0 2px var(--iris)}.cast-candidate-name{font-size:13px;font-weight:600}.cast-candidate[aria-pressed=true] .cast-candidate-name{color:var(--ink)}