:root{--field:var(--surf);--role-body:400 14px/1.4 var(--font);--role-secondary:400 13px/1.4 var(--font);--role-current:500 var(--role-row-size,14px)/1.4 var(--font);--role-control:500 14px/1.4 var(--font);--role-section:500 14px/1.4 var(--font);--role-page-title:600 18px/1.25 var(--font);--role-badge-number:500 12px/1.4 var(--font);--role-secondary-ink:var(--ink3);--role-section-ink:var(--ink3);--role-tracking:0;--role-title-tracking:-.01em;--role-body-weight:400;--role-secondary-weight:400;--role-current-weight:500;--role-control-weight:500;--role-section-weight:500;--role-page-title-weight:600;--role-badge-number-weight:500;--role-row-11:11px;--role-row-12:12px;--role-row-13:13px;--role-row-14:14px;--role-row-15:15px;--role-row-16:16px;--role-row-17:17px;--role-row-18:18px;--role-row-19:19px;--role-row-20:20px;--role-row-21:21px;--role-row-22:22px;--role-row-23:23px;--role-row-24:24px;--role-badge-numerals:tabular-nums;--background:var(--bg);--surface:var(--surf);--surface-raised:var(--surf2);--ink-soft:var(--ink2);--ink-muted:var(--glyph);--ink-faint:var(--ink4);--rule-strong:var(--rule2);--panel-raised:var(--lift);--radius-tile:2px;--iris:var(--acc);--iris-soft:var(--acc2);--attention:var(--att);--settled:var(--ok);--top-bar-content-height:var(--topbar);--top-bar-height:calc(var(--top-bar-content-height) + env(safe-area-inset-top))}*{box-sizing:border-box}html:where(:not(:has(>body.app))){min-width:320px;max-width:100%;overflow-x:clip;background:var(--background);color-scheme:dark;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}html:has(.cal){scrollbar-gutter:auto}html:has(.cal),html:has(.cal) body{overscroll-behavior:none}.cal :is(.body2,.rbody,.col,.epanel,.bmscroll,.libwall,.iscroll,.comments-scroll){overscroll-behavior:contain}.cal :is(.studio-image,.jt,.card-lift,.card-lift-picture,.graphics-library-poster){overscroll-behavior:auto}body:where(:not(.app)){min-height:100dvh;max-width:100%;margin:0;overflow-x:clip;overscroll-behavior-x:none;background:var(--background);color:var(--ink-soft);font-family:var(--font-switzer),"Helvetica Neue",Arial,sans-serif;font-size:var(--role-row-14);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility}button:where(:not(body.app *)),input:where(:not(body.app *)),textarea:where(:not(body.app *)){font:inherit}a:where(:not(body.app *)),button:where(:not(body.app *)){-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:where(:not(body.app *)){border:0}a,button:not(:disabled){cursor:pointer}a:focus-visible:where(:not(body.app *)),button:focus-visible:where(:not(body.app *)){outline:1px solid var(--ink2);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(--selection);color:inherit}.cal,.cal *{-webkit-user-select:none;user-select:none}.cal [contenteditable],.cal [contenteditable] *,.cal [data-selectable],.cal [data-selectable] *,.cal code,.cal input,.cal pre,.cal select,.cal textarea{-webkit-user-select:text;user-select:text}.cal img{-webkit-user-drag:none}.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(--r9);background:var(--ink);color:var(--background);font-size:var(--role-row-12);font-weight:var(--role-current-weight);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:grid;grid-template-columns:minmax(0,1fr) 700px minmax(0,1fr);column-gap:16px;height:var(--top-bar-height);align-items:center;padding:env(safe-area-inset-top) max(18px,env(safe-area-inset-right),calc((100% - 1404px) / 2)) 0 max(18px,env(safe-area-inset-left),calc((100% - 1404px) / 2));background:color-mix(in srgb,var(--panel) 96%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}@media (max-width:1199px){.top-bar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}}.top-place{gap:10px}.top-place,.top-stage{display:flex;min-width:0;align-items:center}.top-stage{justify-content:center}.top-title{min-width:0;overflow:hidden;color:var(--ink);font-size:var(--role-row-13);font-weight:var(--role-current-weight);line-height:1.3;text-align:center;text-overflow:ellipsis;white-space:nowrap}.top-actions{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:12px}.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{display:flex;align-items:center}.filter-tabs{gap:2px}.filter-button,.icon-control{display:inline-flex;width:36px;align-items:center;justify-content:center;gap:7px;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{width:auto;color:var(--ink)}.filter-label{font-size:var(--role-row-13);font-weight:var(--role-current-weight);white-space:nowrap}.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}.studio-tooltip{position:fixed;z-index:1000;width:max-content;max-width:calc(100dvw - 16px);padding:7px 10px;border-radius:var(--r9);background:var(--lift);box-shadow:var(--shadow-menu);color:var(--ink);font:var(--role-current);font-size:var(--role-row-13);line-height:1.2;white-space:nowrap;pointer-events:none;transform:translateX(-50%)}.search-control{height:34px;justify-content:flex-end;border:1px solid transparent;border-radius:var(--r9);color:var(--ink-muted);transition:border-color .16s ease,background .16s ease}.search-control.is-open{width:222px;gap:8px;padding-left:10px;background:var(--field)}.search-control input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:var(--role-row-12)}.search-control input::placeholder{color:var(--ink-faint)}.search-control input::-webkit-search-cancel-button{display:none}.account-control{position:relative}.avatar-button{display:grid;width:30px;place-items:center;background:transparent;transition:transform .15s cubic-bezier(.22,1,.36,1)}.avatar-disc{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:var(--iris);color:var(--background);font-weight:var(--role-current-weight)}.account-menu,.avatar-disc{font-size:var(--role-row-12)}.account-menu{display:grid;gap:12px;padding:13px;color:var(--ink-soft);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-weight:var(--role-badge-number-weight)}.account-identity span,.account-identity strong{overflow:hidden;font-size:var(--role-row-12);text-overflow:ellipsis;white-space:nowrap}.account-identity span,.account-logout{color:var(--ink-muted)}.account-logout{justify-self:start;padding:0;background:transparent;font-size:var(--role-row-12);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:var(--role-row-20);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.2}.library-view-title span{color:var(--ink-muted);font-size:var(--role-row-12)}.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(--r9);background:transparent;color:var(--ink-soft);font-size:var(--role-row-12);font-weight:var(--role-current-weight);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-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(--r9);background:transparent;color:var(--ink-soft);font-size:var(--role-row-12);font-weight:var(--role-current-weight);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)}.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(--r9);background:var(--surface-raised)}.liked-folder-rename input{min-width:72px;max-width:220px;height:30px;padding:0 8px;border:0;background:transparent;color:var(--ink);font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.liked-folder-rename input:focus{outline:none}.liked-folder-rename-error{margin:6px 0 0;color:var(--danger);font-size:var(--role-row-12)}.liked-folder-chip:not(.is-all)>span{max-width:30ch}.liked-folder-chip small{color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);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:var(--role-row-12);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(--r13);background:var(--panel);color:var(--ink-soft);box-shadow:var(--shadow-menu)}.liked-folder-dialog::backdrop{background:var(--scrim)}.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:var(--role-row-15);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking)}.liked-folder-dialog header button{display:grid;width:34px;height:34px;place-items:center;padding:0;border-radius:var(--r9);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:var(--role-row-13);line-height:1.5}.liked-folder-dialog>form>p strong{color:var(--ink);font-weight:var(--role-current-weight)}.liked-folder-dialog label{display:grid;gap:7px}.liked-folder-dialog label>span{color:var(--ink-muted);font-size:var(--role-row-12)}.liked-folder-dialog input{width:100%;height:44px;padding:0 12px;border:1px solid transparent;border-radius:var(--r9);outline:0;background:var(--field);color:var(--ink);font-size:var(--role-row-16);transition:border-color .14s ease}.liked-folder-dialog .liked-folder-dialog-error{color:var(--danger);font-size:var(--role-row-12)}.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(--r9);background:transparent;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.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:var(--role-row-12)!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(--r9);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:var(--role-row-12);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:var(--role-row-12)}.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:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.2}.search-state p{max-width:44ch;margin:0;color:var(--ink-soft);font-size:var(--role-row-14);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:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.15}.liked-empty-state p{max-width:46ch;margin:0 auto;color:var(--ink-soft);font-size:var(--role-row-14);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(--r9);background:transparent;color:var(--ink-muted);font-size:var(--role-row-12);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:var(--role-row-13);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-weight:var(--role-current-weight);line-height:1.4}.scene-wait-label,.scene-wait-timing{font-size:var(--role-row-12);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scene-wait-timing{flex:none;color:var(--ink-muted);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)}@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);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(--ink2);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 (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}.studio-image.is-waiting .studio-image-el{transition:opacity .32s var(--ease)}.studio-image.is-loaded .studio-image-el{opacity:1}.studio-image-standin{width:100%;height:100%;object-fit:cover}.studio-image-skeleton,.studio-image-standin{position:absolute;inset:0;pointer-events:none}.studio-image-skeleton{z-index:1}.studio-image-error{position:absolute;z-index:1;inset:0;padding:8px;border-radius:inherit}.image-actions{position:absolute;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(--r9);background:color-mix(in srgb,var(--background) 84%,transparent);opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .18s cubic-bezier(.22,1,.36,1)}.add-to-board{position:relative;display:flex}.add-to-board-picker{display:grid;max-height:min(360px,calc(100vh - 36px));overflow-y:auto;padding:5px;border-radius:var(--r9);background:var(--surface);box-shadow:var(--shadow-menu)}.add-to-board-picker button{display:grid;gap:2px;padding:8px;border:0;border-radius:calc(var(--r9) - 2px);background:transparent;color:var(--ink);font:inherit;text-align:left}.add-to-board-picker button:focus-visible,.add-to-board-picker button:hover{background:var(--surface-raised)}.add-to-board-picker p,.add-to-board-picker small{color:var(--ink-muted);font-size:var(--role-row-12)}.upload-cell-board{position:absolute;right:8px;bottom:8px;justify-content:center;width:30px;height:30px;border:1px solid var(--rule-strong);border-radius:var(--r9);background:color-mix(in srgb,var(--background) 84%,transparent)}.execution-board-card,.upload-cell-board{display:inline-flex;align-items:center;color:var(--ink)}.execution-board-card{gap:8px;margin:0 0 18px;padding:11px 13px;border-radius:var(--r13);background:var(--surface);font-size:var(--role-row-13);font-weight:var(--role-current-weight);text-decoration:none}.execution-board-card:focus-visible,.execution-board-card:hover{background:var(--surface-raised)}.image-folder-menu{opacity:0;transform:translateY(-3px);transition:opacity .15s ease,transform .18s cubic-bezier(.22,1,.36,1)}.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(--ink2);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{display:grid;gap:9px;padding:11px;border:1px solid var(--rule-strong);border-radius:var(--r9);background:var(--panel);box-shadow:var(--shadow-menu);animation:menu-in .14s cubic-bezier(.22,1,.36,1) both}.image-folder-popover>strong{color:var(--ink-soft);font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.image-folder-popover>p{margin:0;color:var(--ink-muted);font-size:var(--role-row-12);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(--r9);color:var(--ink-muted);font-size:var(--role-row-12);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:var(--r6);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.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)}@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:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.12}.welcome-intro>p{max-width:480px;margin:11px auto 0;color:var(--ink-soft);font-size:var(--role-row-14);line-height:1.5}.welcome-intro>.welcome-note{margin-top:2px;color:var(--ink-muted);font-size:var(--role-row-13)}.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(--r9);background:transparent;color:var(--ink-soft);font-size:var(--role-row-12);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 transparent;border-radius:var(--r13);background:var(--field);transition:border-color .16s ease,background .16s ease}.prompt-dock.is-dragging-references{border-color:color-mix(in srgb,var(--ink2) 70%,var(--rule-strong))}.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(--ink2) 62%,transparent);border-radius:var(--r9);background:color-mix(in srgb,var(--surf) 94%,transparent);color:var(--ink);content:"Drop images here";font-size:var(--role-row-13);font-weight:var(--role-current-weight);pointer-events:none}.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:var(--role-row-15);font-weight:var(--role-body-weight);line-height:1.45}.prompt-dock textarea::placeholder{color:var(--ink3);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(--r9);object-fit:cover}.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:color-mix(in srgb,var(--bg) 88%,transparent);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:color-mix(in srgb,var(--float) 95%,transparent)}.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,.reference-trigger-wrap{display:inline-flex}.reference-trigger{width:44px;height:44px;align-items:center;justify-content:center;padding:0;border-radius:var(--r9);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(--ink2) 62%,transparent);outline-offset:-4px}.reference-trigger:disabled{cursor:default;color:var(--ink-faint)}.aspect-picker{position:relative;height:34px}.aspect-picker-trigger{display:inline-flex;height:34px;align-items:center;gap:7px;padding:0 8px;border-radius:var(--r9);background:transparent;color:var(--ink-muted);font-size:var(--role-row-13);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(--ink2) 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{padding:6px;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(--r9);background:transparent;color:var(--ink-soft);font-size:var(--role-row-15);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]{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)}@media (max-width:760px){.aspect-picker,.aspect-picker-trigger{height:44px}.aspect-picker-option{min-height:48px}}@keyframes aspect-menu-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.prompt-hint,.prompt-limit{color:var(--ink-muted);font-size:var(--role-row-13);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prompt-limit-ring{width:18px;height:18px;flex:none;margin-inline:5px;transform:rotate(-90deg)}.prompt-limit-ring circle{fill:none;stroke-width:2}.prompt-limit-track{stroke:var(--ink-muted);opacity:.28}.prompt-limit-fill{stroke:var(--ink-muted);transition:stroke-dasharray .15s ease}.prompt-hint.is-last{color:var(--ink)}.prompt-note{margin:8px 2px 0;color:var(--ink-muted);font-size:var(--role-row-12);line-height:1.45;text-wrap:pretty}.prompt-actions{display:flex;align-items:center;gap:4px}.compact-submit{flex:none}@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{display:flex;flex-direction:column;gap:8px;position:fixed;z-index:115;left:var(--toast-stage-centre,50%);bottom:26px;width:max-content;max-width:min(520px,calc(100dvw - 40px));margin:0;padding:0;list-style:none;transform:translateX(-50%)}@media (min-width:851px){body:has(.static-stage) .toast-stack{left:var(--static-stage-centre,50%)}body:has(.static-v4.has-strip) .toast-stack{bottom:124px}body:has(.ed) .toast-stack{bottom:16px}}.toast{display:flex;min-height:44px;align-items:center;gap:12px;padding:7px 10px 7px 14px;border:0;border-radius:var(--r13);color:var(--ink);font-size:var(--role-row-13);animation:toast-in .24s var(--ease) both}.toast-wait{position:relative}.toast-mark{width:16px;height:16px;flex:none;color:var(--state-ok)}.toast-message{min-width:0;flex:1 1;line-height:1.4;text-wrap:balance}.toast-action{padding:7px 9px;border:0;color:var(--ink2);cursor:pointer}.toast-action:focus-visible,.toast-action:hover{color:var(--ink)}.toast-dismiss{display:inline-flex;width:34px;flex:none;align-items:center;justify-content:center;padding:0;border:0;color:var(--ink-muted);transition:background-color .14s ease,color .14s ease}.toast-dismiss:hover{color:var(--ink)}.toast-dismiss:active{transform:scale(.94)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation-name:toast-fade}}.toast.is-leaving{position:absolute;left:50%;bottom:0;width:max-content;max-width:min(520px,calc(100dvw - 40px));translate:-50% 0;pointer-events:none;animation:none}@keyframes toast-fade{0%{opacity:0}to{opacity:1}}.destructive-confirm{width:min(440px,calc(100dvw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:32px;border:1px solid var(--rule);border-radius:var(--r13);background:var(--lift);box-shadow:var(--shadow-menu);color:var(--ink);text-align:center}.destructive-confirm::backdrop{background:var(--scrim)}.destructive-confirm-mark{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 22px;border-radius:50%;background:var(--state-danger-bg);color:var(--state-danger)}.destructive-confirm-mark:has(.destructive-confirm-picture){width:54px;height:96px;border-radius:var(--r9);overflow:hidden;background:var(--lift)}.destructive-confirm-picture{display:block;width:100%;height:100%;object-fit:cover}.destructive-confirm h2{margin:0;font:var(--role-current);font-size:var(--role-row-22);line-height:1.25;text-wrap:balance}.destructive-confirm p{margin:14px 0 28px;color:var(--ink2);font:var(--role-body);font-size:var(--role-row-15);line-height:1.5;text-wrap:pretty}.destructive-confirm-actions{display:flex;gap:10px}.destructive-confirm-actions button{flex:1 1;min-height:44px;border:0;border-radius:var(--r9);font:var(--role-control);line-height:1.2;cursor:pointer}.destructive-confirm-act,.destructive-confirm-cancel{color:var(--ink)}.destructive-confirm-actions button:focus-visible{outline:var(--ring-outline);outline-offset:2px}.destructive-confirm:focus,.destructive-confirm:focus-visible{outline:none}@media (max-width:600px){.destructive-confirm{padding:24px}.destructive-confirm-actions{flex-direction:column}}.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-workspace.is-solo{grid-template-columns:minmax(0,1fr)}.viewer-workspace.is-solo .viewer-image{width:min(calc((100dvh - 72px) * var(--viewer-aspect)),calc(100dvw - 144px))}.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:var(--void)}.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);animation:viewer-media-in .26s cubic-bezier(.22,1,.36,1) both}.viewer-image[data-aspect-ratio="4:5"]{--viewer-aspect:1.25}.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:var(--role-row-12)}.viewer-media-error{position:absolute;z-index:2;inset:50% 18px auto;margin:0;color:var(--ink-muted);font-size:var(--role-row-12);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(--r9);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-radius:var(--r13);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:var(--role-row-15);font-weight:var(--role-current-weight);letter-spacing:var(--role-title-tracking)}.shot-editor-form{padding:12px 14px max(16px,env(safe-area-inset-bottom))}.shot-composer{display:grid;width:100%;padding:6px;border:1px solid transparent;border-radius:var(--r13);background:var(--field);transition:border-color .15s ease,background .15s ease}.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:var(--role-row-13);line-height:1.45}.shot-composer textarea::placeholder{color:var(--ink3)}.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:var(--role-row-12)}.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:var(--role-row-12);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:var(--role-row-12);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(--r9);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)}.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:var(--role-row-12);font-weight:var(--role-current-weight)}.version-history>header>span{color:var(--ink-muted);font-size:var(--role-row-12)}.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(--r9);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(--r9);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:var(--r6);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:var(--role-row-12);font-weight:var(--role-current-weight)}.version-status{color:var(--ink-muted);font-size:var(--role-row-12)}.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:var(--role-row-12);line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.route-error{display:flex;min-height:100dvh;background:var(--background);color:var(--ink)}.refusal-bare{position:relative}.refusal-mark{position:absolute;top:29px;left:32px;width:50px;height:auto;fill:var(--ink)}.access-page{position:relative;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:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.05;text-wrap:balance}.access-page p{margin:13px 0 24px;color:var(--ink-muted);font-size:var(--role-row-14);text-wrap:balance}.access-head{position:absolute;top:14px;left:14px}.access-back{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r9);color:var(--ink3)}.access-back:hover{background:var(--surface);color:var(--ink)}.people-invite{display:grid;max-width:460px;gap:7px}.people-invite label{color:var(--ink-muted);font-size:var(--role-row-12)}.people-invite input,.people-invite select{min-height:40px;padding:9px 11px;border:1px solid transparent;border-radius:var(--r9);background:var(--field);color:var(--ink);font-size:var(--role-row-14)}.people-invite>button{min-height:40px;margin-top:9px;border-radius:var(--r9);background:var(--ink);color:var(--background);font-size:var(--role-row-13)}.people-invite>button:disabled{opacity:.52}.people-invite-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:13px}.people-invite-link button{min-height:40px;padding:0 13px;border-radius:var(--r9);background:var(--surface);color:var(--ink);font-size:var(--role-row-12)}.people-invite-link p{grid-column:1/-1;margin:0;color:var(--ink-muted);font-size:var(--role-row-12)}.people-withdraw{border:1px solid var(--rule);color:inherit;padding:4px 10px;cursor:pointer}.people-withdraw:disabled{opacity:.5;cursor:default}.people-invite-error{min-height:15px;margin:0;color:var(--danger);font-size:var(--role-row-12)}.operator-table-wrap{overflow-x:auto;overscroll-behavior-y:auto;border:1px solid var(--rule);border-radius:var(--r9)}.operator-table-wrap table{width:100%;border-collapse:collapse;background:var(--panel);font-size:var(--role-row-12)}.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:var(--role-current-weight)}.operator-table-wrap td{color:var(--ink-soft)}.operator-table-wrap tbody tr:last-child td{border-bottom:0}@media (max-height:500px) and (max-width:900px),(max-width:700px){.top-bar{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"place actions" "stage stage";padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}.top-bar:has(.top-stage:not(:empty)){height:auto;grid-template-rows:var(--top-bar-content-height) auto;padding-bottom:7px}.top-bar:has(.top-stage .storyboard-title),.top-bar:has(.top-stage .top-title){height:var(--top-bar-height);grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);grid-template-rows:minmax(0,1fr);grid-template-areas:"place stage actions";padding-bottom:0}.top-place{grid-area:place}.top-actions{grid-area:actions}.top-stage{grid-area:stage;justify-content:safe center;overflow-x:auto;scrollbar-width:none}.brand-lockup,.brand-mark{width:50px}.top-actions{gap:5px}.avatar-button,.filter-button,.icon-control{width:44px}.avatar-button{background:transparent}.search-control.is-open{position:absolute;z-index:4;top:6px;right:56px;left:104px;width:auto;height:44px;background:var(--field)}.search-control input{font-size:var(--role-row-16)}.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{max-height:calc(100dvh - 16px)}.image-folder-options label{min-height:44px;font-size:var(--role-row-12)}.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:var(--role-row-24)}.welcome-intro>p{padding:0 8px;font-size:var(--role-row-13)}.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:var(--role-row-16)}.toast-stack{bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100dvw - 40px);max-width:none}.toast.is-leaving{max-width:none;width:100%}body:has(.composer-position.is-docked) .toast-stack{bottom:calc(104px + env(safe-area-inset-bottom))}body:has(.ed.is-phone) .toast-stack{z-index:90;bottom:calc(190px + env(safe-area-inset-bottom))}body:has(.ed.is-phone .edtlp:has(.mbar)) .toast-stack{bottom:calc(224px + env(safe-area-inset-bottom))}body:has(.ed.is-phone .film-shot-sheet) .toast-stack{bottom:calc(190px + min(340px, 100dvh - 300px) + env(safe-area-inset-bottom))}body:has(.boardstage) .toast-stack{bottom:calc(130px + env(safe-area-inset-bottom))}body:has(.static-stage.is-headline-focus) .toast-stack{top:auto;bottom:calc(220px + env(safe-area-inset-bottom))}body:has(.toast-stack) .body2{padding-bottom:var(--active-toast-height,0)}body:has(.toast-stack) .ed.is-phone .edupper{padding-bottom:var(--active-toast-height,0)}.viewer-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px}.viewer-workspace.is-solo{grid-template-columns:minmax(0,1fr)}.viewer-stage{grid-template-columns:48px minmax(0,1fr) 48px}.viewer-image{width:min(calc((100dvh - 42px) * var(--viewer-aspect)),calc(100dvw - 396px))}.viewer-workspace.is-solo .viewer-image{width:min(calc((100dvh - 42px) * var(--viewer-aspect)),calc(100dvw - 112px))}.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:var(--role-row-16)}.version-history>header{min-height:40px;padding:0 14px}.version-history ol{padding:0 6px 10px}}@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)}}@media (max-width:700px){.viewer-workspace{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) clamp(258px,38dvh,292px)}.viewer-workspace.is-solo{grid-template-rows:minmax(0,1fr)}.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-workspace.is-solo .viewer-image{width:min(calc(100dvw - 90px),calc((100dvh - 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;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(--r13)}.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 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:var(--role-row-12)}.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(--r13);background:var(--panel-raised);color:var(--ink-muted);font-size:var(--role-row-14);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(--ink);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(--r9);background:var(--panel)}.sizes-file-name{flex:1 1;overflow:hidden;color:var(--ink-soft);font-size:var(--role-row-13);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(--r9);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(--r9);background:var(--iris);color:var(--panel);font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.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:var(--role-row-13);font-weight:var(--role-current-weight);text-overflow:ellipsis;white-space:nowrap}.extension-sheet-title span{color:var(--ink-muted);font-size:var(--role-row-12)}.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:5"],.extension-source-tile[data-aspect-ratio="4:5"]{--tile-aspect:4/5;--image-aspect:4/5}.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(--ink);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:var(--r6);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)}.pending-edit-copy{overflow:hidden;color:var(--ink-muted);font-size:var(--role-row-13);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(--r13);background:var(--panel-raised);box-shadow:var(--shadow-menu);color:var(--ink)}.delete-dialog:focus,.delete-dialog:focus-visible{outline:none}.delete-dialog::backdrop{background:var(--scrim)}.delete-panel{display:grid;gap:12px;padding:18px}.delete-panel h2{margin:0;font-size:var(--role-row-15);font-weight:var(--role-current-weight)}.delete-panel p{margin:0;color:var(--ink-soft);font-size:var(--role-row-13);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(--r9);font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.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:var(--panel)}.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(--r9);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)}.viewer-size-thumb:active:not(:disabled){transform:scale(.94)}.viewer-size-thumb:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.viewer-size-thumb.is-current{border-color:var(--ink)}.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:var(--role-row-12)}@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:var(--r6);background:var(--plate);color:var(--ink-soft);font-size:var(--role-row-12);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(--ink2) 45%,transparent);background:transparent;color:var(--ink);font-size:var(--role-row-14);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);field-sizing:content}.compose-group-rename input:focus{outline:none;border-bottom-color:var(--ink2)}.compose-group-rename-button{display:inline-flex;flex:none;align-items:center;justify-content:center;padding:5px;margin-left:-5px;border-radius:var(--r9);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:var(--role-row-14);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);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:var(--role-row-12);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)}.compose-band-source-chip{position:absolute;left:6px;bottom:6px;z-index:2;padding:2px 6px;border-radius:3px;background:var(--plate);color:var(--ink-soft);font-size:var(--role-row-12);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);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:var(--r6);background:var(--plate);color:var(--ink-soft);font-size:var(--role-row-12);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:var(--role-row-12)}.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:var(--role-row-13);font-weight:var(--role-current-weight)}.board-failed-reference{color:var(--ink-muted);font-size:var(--role-row-12);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(--r9);background:var(--surface-raised);color:var(--ink-soft);font-size:var(--role-row-12);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}.shot-stepper{flex:none;padding:0 2px}.shot-stepper,.shot-stepper button{display:inline-flex;height:44px;align-items:center;border-radius:var(--r9)}.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:var(--role-row-12);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:var(--role-current-weight);letter-spacing:var(--role-tracking);line-height:1.15}.compose-empty p{max-width:58ch;margin:0 auto;color:var(--ink-soft);font-size:var(--role-row-14);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:var(--role-row-12);letter-spacing:var(--role-tracking);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:var(--role-row-12);font-weight:var(--role-current-weight);content:counter(compose-step)}.extension-format-tile.extension-format-dead{border-style:dashed}.extension-sheet-failure{margin:0;color:var(--ink-soft);font-size:var(--role-row-13)}.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)}.campaign-door{display:grid;width:36px;height:36px;place-items:center;border-radius:var(--r9);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{display:flex;min-width:0;align-items:center}.campaign-trail:before{width:1px;height:16px;flex:none;margin:0 18px 0 8px;background:var(--rule);content:""}.campaign-trail ol{display:flex;min-width:0;flex-wrap:wrap;align-items:center;column-gap:5px;row-gap:4px;padding:0;margin:0;list-style:none}.campaign-trail li{min-width:0;overflow:hidden;font-size:var(--role-row-13);font-weight:var(--role-current-weight);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.campaign-trail-step{display:grid;flex-shrink:0;place-items:center;color:var(--ink-faint)}.campaign-trail-here{flex-basis:100%;font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.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-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:var(--r13);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:var(--role-row-14);font-weight:var(--role-current-weight);line-height:1.2}.campaign-card-count{font-weight:var(--role-badge-number-weight);line-height:1.45}.campaign-card-count,.campaign-card-status{color:var(--ink-muted);font-size:var(--role-row-12)}.campaign-card-status{flex-shrink:0;padding-top:3px;font-weight:var(--role-current-weight);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:var(--r9);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:var(--surface)}.campaign-card-frame-label{overflow:hidden;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);line-height:1.3;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:var(--role-row-20);letter-spacing:var(--role-tracking);line-height:1.2}.upload-board-header h1,.upload-zone{font-weight:var(--role-current-weight)}.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(--r13);background:var(--panel-raised);color:var(--ink-muted);font-size:var(--role-row-14);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}.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)}.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:var(--plate);color:var(--ink);font-size:var(--role-row-12);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);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:var(--role-row-20);font-weight:var(--role-current-weight);line-height:1.2;letter-spacing:var(--role-tracking);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:var(--role-row-12);font-weight:var(--role-current-weight);line-height:1;letter-spacing:var(--role-tracking);text-transform:uppercase;color:var(--ink-muted)}.cast-spread-item dd{margin:0;font-size:var(--role-row-13);font-weight:var(--role-current-weight);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(--r9)}.cast-sheet-table{width:100%;border-collapse:collapse;background:var(--panel);font-size:var(--role-row-12);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:var(--role-row-12);font-weight:var(--role-current-weight);line-height:1;letter-spacing:var(--role-tracking);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:var(--role-row-14);font-weight:var(--role-current-weight);color:var(--ink);white-space:nowrap}.cast-column-number{width:1%;color:var(--ink-faint);font-size:var(--role-row-12)}.cast-column-action{width:1%}.cast-cell-phrase{min-width:15ch;max-width:34ch}.cast-figure{font-size:var(--role-row-13);color:var(--ink)}.cast-figure,.cast-note{display:block;font-weight:var(--role-current-weight)}.cast-note{margin-top:2px;font-size:var(--role-row-12);line-height:1.35;color:var(--ink-muted)}.cast-sheet-table tbody tr.is-rerolled .cast-column-number{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(--r9);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(--ink) 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-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(--r9);background:var(--ink);color:var(--background);font-family:inherit;font-size:var(--role-row-14);font-weight:var(--role-current-weight);cursor:pointer;transition:background .14s ease}.cast-birth-all:hover:not(:disabled){background:var(--white)}.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:var(--role-row-12);font-weight:var(--role-current-weight);color:var(--iris-soft);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.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);overflow:hidden}.cast-frame img{display:block;width:100%;height:100%;object-fit:cover}.cast-frame.is-dressed .cast-frame-dressed{position:absolute;inset:0;z-index:1;opacity:1;transition:opacity .14s ease}.cast-frame.is-dressed:hover .cast-frame-dressed,.cast-member:focus-within .cast-frame.is-dressed .cast-frame-dressed{opacity:0}.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(--r9);background:var(--plate);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-badge-number-weight);line-height:1;letter-spacing:var(--role-tracking);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:var(--role-row-14);font-weight:var(--role-current-weight);text-align:left;cursor:text}.cast-name-input,.cast-name:hover{box-shadow:inset 0 -1px 0 var(--ink2)}.cast-name-input{width:100%;padding:0;border:none;border-radius:0;background:transparent;color:var(--ink);font-family:inherit;font-size:var(--role-row-14);font-weight:var(--role-current-weight)}.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(--r9);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(--ink) 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:var(--role-row-15);font-weight:var(--role-current-weight);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(--r9);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:var(--role-row-12);font-weight:var(--role-current-weight);color:var(--ink-faint)}.cast-lineage li.is-original .cast-lineage-step{color:var(--iris-soft)}.cast-lineage-execution{font-size:var(--role-row-12);font-weight:var(--role-current-weight);color:var(--ink-soft)}.cast-lineage-wardrobe{grid-column:2;font-size:var(--role-row-12);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);color:var(--ink);font-size:var(--role-row-14);font-weight:var(--role-current-weight);cursor:pointer}.cast-rewardrobe-target:hover{background:var(--surf2-hover)}.cast-notice{margin:0;color:var(--ink-soft);font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.execution-sections{display:flex;gap:5px}.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:var(--role-row-13);font-weight:var(--role-current-weight);text-decoration:none}.execution-section:hover{color:var(--ink);background:var(--surface)}.execution-section[aria-current=page]{color:var(--ink);background:var(--surface-raised)}.execution-canvas{width:min(1280px,calc(100% - 40px));margin:0 auto;padding:30px 0 96px}@media (max-width:700px){.execution-section{flex:none;padding:0 8px}.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(--r9);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:var(--role-row-15)}.cast-column-number{position:absolute;top:13px;right:13px}.cast-sheet-table tbody tr.is-rerolled .cast-column-number{box-shadow:none;font-weight:var(--role-current-weight)}.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:var(--background)}.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}}.prompt-dock[data-shaking]{animation:cal-shake .32s}@media (prefers-reduced-motion:reduce){.prompt-dock[data-shaking]{animation:none}}.tuner-page{flex:1 1;min-height:0;overflow-y:auto;padding:0 var(--gutter) 90px}.tuner-col{width:100%;max-width:960px;margin:0 auto;padding-top:26px}.tuner-row{background:var(--lift);border-radius:var(--r13);margin-bottom:8px}.tuner-row-head{display:grid;grid-template-columns:14px minmax(0,1fr) 200px 76px 158px;align-items:center;align-content:center;gap:6px 14px;width:100%;min-height:68px;padding:11px 18px;text-align:left;border-radius:var(--r13);background:none;border:0;color:inherit;font:inherit;cursor:pointer;transition:background var(--fast) var(--ease)}.tuner-row-head:hover{background:var(--lift-hover)}.tuner-row-head.is-look{grid-template-columns:14px minmax(0,1fr) 118px 200px 76px 158px}.tuner-row-head.is-static{cursor:default}.tuner-row-head.is-static:hover{background:transparent}.tuner-meta{display:contents}.tuner-row.is-open>.tuner-row-head:hover{background:transparent}.tuner-caret{width:14px;height:14px;display:grid;place-items:center;color:var(--ink4);transition:transform var(--fast) var(--ease)}.tuner-row-head[aria-expanded=true] .tuner-caret{transform:rotate(90deg)}.tuner-kind{font:var(--role-current);font-size:var(--role-row-13);color:var(--ink)}.tuner-bind,.tuner-kind,.tuner-model,.tuner-quality{line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-bind,.tuner-model,.tuner-quality{font:var(--role-secondary);color:var(--ink3)}.tuner-model,.tuner-price{color:var(--ink2)}.tuner-price{font:var(--role-current);font-size:var(--role-row-13);line-height:1;white-space:nowrap;text-align:right}.tuner-price em{font-style:normal;font-weight:inherit;color:inherit;font-size:inherit;margin-left:5px}.tuner-fall{grid-row:2;grid-column:3/-1;font:var(--role-secondary);line-height:1.3;color:var(--ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-section-head{font:var(--role-section);color:var(--ink);margin:28px 0 10px 18px}.tuner-open{padding:0 18px 18px}.tuner-open.is-refused{animation:tuner-shake .32s var(--ease)}@keyframes tuner-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-4px)}40%{transform:translateX(4px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}.tuner-field{margin-top:15px}.tuner-label{font:var(--role-secondary);color:var(--ink3);display:block;margin-bottom:9px}.tuner-label-row{display:flex;align-items:center;height:20px;margin-bottom:9px}.tuner-label-row .tuner-label{margin:0}.tuner-spacer{flex:1 1;min-width:0}.tuner-chips{display:flex;gap:7px;flex-wrap:wrap}.tuner-chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 11px;border:0;border-radius:var(--r6);background:var(--surf);white-space:nowrap;color:var(--ink2);cursor:pointer;transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.tuner-chip b,.tuner-chip i{font:var(--role-current);font-size:var(--role-row-13);line-height:1;color:inherit;font-style:normal}.tuner-chip svg{color:var(--glyph);margin-left:-2px}.tuner-chip:hover{background:var(--surf-hover);color:var(--ink)}.tuner-chip.is-on{color:var(--ink)}.tuner-chip.is-unbuilt{color:var(--ink4)}.tuner-chip.is-unbuilt b{text-decoration:line-through;text-decoration-thickness:1px;text-underline-offset:2px}.tuner-tabs{display:flex;align-items:center;gap:20px;margin-bottom:11px}.tuner-tabs button{height:30px;padding:6px 0 5px;border:0;background:none;font:var(--role-secondary);line-height:1;color:var(--ink3);cursor:pointer;transition:color var(--fast) var(--ease)}.tuner-tabs button:hover{color:var(--ink2)}.tuner-tabs button[aria-pressed=true]{color:var(--ink);font-weight:var(--role-control-weight)}.tuner-well{background:var(--stage);border-radius:var(--r9);padding:13px 15px;display:flex;flex-direction:column;gap:11px}.tuner-block{display:flex;gap:12px}.tuner-block-number{font:var(--role-badge-number);line-height:1.55;color:var(--ink4);width:9px;flex:none}.tuner-block-text{font:var(--role-body);color:var(--ink2);text-wrap:pretty;min-width:0;margin:0;white-space:pre-wrap}.tuner-slot{color:var(--ink);font-weight:var(--role-current-weight)}.tuner-block-field{display:block;flex:1 1;min-width:0;overflow:hidden;resize:none;border:0;padding:0;background:none;font:var(--role-body);color:var(--ink);caret-color:var(--acc2);white-space:pre-wrap}.tuner-block .tuner-block-field{field-sizing:content}.tuner-block-field:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--r6)}.tuner-well.is-refused{animation:tuner-shake .32s var(--ease)}.tuner-foot{display:flex;align-items:center;gap:12px;margin-top:12px}.tuner-version-line{font:var(--role-secondary);font-size:var(--role-row-12);line-height:1;color:var(--ink3);white-space:nowrap}.tuner-history{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.tuner-history-row{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 2px}.tuner-history-version{font:var(--role-secondary);font-size:var(--role-row-12);line-height:1;color:var(--ink3);white-space:nowrap}.tuner-history-row:first-child .tuner-history-version{color:var(--ink2)}.tuner-history-meta,.tuner-history-note{font:var(--role-secondary);font-size:var(--role-row-12);line-height:1.4;color:var(--ink4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tuner-history-note{min-width:0}.tuner-history-serving{font:var(--role-secondary);font-size:var(--role-row-12);line-height:1;color:var(--ink3);white-space:nowrap}.tuner-name-field input,.tuner-note-field{height:34px;border:0;border-radius:var(--r6);background:var(--field);padding:0 11px;font:var(--role-current);font-size:var(--role-row-13);line-height:1;color:var(--ink);caret-color:var(--acc2)}.tuner-note-field{width:220px;flex:none}.tuner-note-field::placeholder{color:var(--ink4)}.tuner-name-field input:focus,.tuner-note-field:focus{outline:none}.tuner-name-field{display:inline-flex;align-items:center;min-width:0;margin-left:-10px}.tuner-name-field input{width:100%;height:32px;font-weight:var(--role-current-weight)}.tuner-quiet{display:inline-flex;align-items:center;padding:0 13px;border:0;color:var(--ink2);white-space:nowrap;cursor:pointer;transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.tuner-quiet:hover:not(:disabled){color:var(--ink)}.tuner-primary{display:inline-flex;align-items:center;padding:0 14px;border:0;color:var(--void);white-space:nowrap;cursor:pointer;transition:background var(--fast) var(--ease)}.tuner-glyph:disabled,.tuner-primary:disabled,.tuner-quiet:disabled{opacity:.5;cursor:default}.tuner-glyph{width:34px;border:0;display:grid;place-items:center;color:var(--glyph);cursor:pointer;transition:color var(--fast) var(--ease),background var(--fast) var(--ease)}.tuner-glyph:hover:not(:disabled){color:var(--ink)}.tuner-label-row .tuner-glyph{width:28px;margin:-4px -6px -4px 0}.tuner-add{margin:4px 0 0 4px}.tuner-outfit-add,.tuner-outfit-row{display:flex;align-items:center;gap:14px;min-height:44px;padding:6px 18px}.tuner-outfit-row:first-of-type{border-top:1px solid var(--rule)}.tuner-outfit-name{flex:none;width:220px;font:var(--role-current);color:var(--ink)}.tuner-outfit-name,.tuner-outfit-phrase{line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tuner-outfit-phrase{flex:1 1;min-width:0}.tuner-outfit-modesty,.tuner-outfit-phrase{font:var(--role-secondary);color:var(--ink3)}.tuner-outfit-modesty{flex:none;font-size:var(--role-row-12);line-height:1;border-radius:var(--r6);padding:5px 8px}.tuner-outfit-add{border-top:1px solid var(--rule)}.tuner-outfit-add input{height:32px;border:0;border-radius:var(--r9);background:var(--field);padding:0 11px;font:var(--role-secondary);line-height:1;color:var(--ink)}.tuner-outfit-add input:focus{outline:none}.tuner-outfit-add input:first-child{flex:none;width:220px}.tuner-outfit-add input:nth-child(2){flex:1 1;min-width:0}@media (max-width:720px){.tuner-outfit-add input:first-child,.tuner-outfit-name{width:132px}}.tuner-account{position:relative}.tuner-menu{padding:8px}.tuner-menu-item{display:flex;align-items:center;gap:11px;width:100%;height:44px;padding:0 11px;border:0;border-radius:var(--r9);background:none;color:var(--ink2);font:var(--role-current);font-size:var(--role-row-13);line-height:1;text-align:left;text-decoration:none;cursor:pointer;transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.tuner-menu-item svg{color:var(--glyph);flex:none}.tuner-menu-item:hover{background:var(--float-hover)}.tuner-menu-item.is-on{color:var(--ink)}.tuner-menu-tick{margin-left:auto;color:var(--ink);display:grid;place-items:center}.tuner-menu-gap{display:block;height:8px}@media (prefers-reduced-motion:reduce){.tuner-open.is-refused,.tuner-well.is-refused{animation:none}}@media (max-width:760px){.tuner-page{padding:0 16px 20px}.tuner-col{padding-top:16px}.tuner-row-head,.tuner-row-head.is-look{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;height:auto;min-height:64px;padding:12px 14px}.tuner-row-head .tuner-kind,.tuner-row-head .tuner-name-field{flex:1 1;min-width:0}.tuner-meta{display:flex;align-items:baseline;gap:6px;flex-basis:100%;min-width:0;order:3;margin-left:26px;font:var(--role-secondary);font-size:var(--role-row-12);line-height:1.35;color:var(--ink3)}.tuner-meta>*{font:inherit;color:inherit}.tuner-meta>.tuner-quality:empty{display:none}.tuner-meta>*+:before{content:"\00b7";margin-right:6px;color:var(--ink4)}.tuner-fall{flex-basis:100%;order:4;min-width:0;margin-left:26px;font:var(--role-current);font-size:var(--role-row-13);line-height:1.35;white-space:normal;overflow:visible;text-wrap:pretty}.tuner-section-head{margin:24px 0 10px 14px}.tuner-open{padding:0 14px 14px}.tuner-chip{height:36px}.tuner-well{max-height:190px;overflow-y:auto;padding:12px 13px}.tuner-foot{flex-wrap:wrap;gap:9px}.tuner-note-field{width:100%}.tuner-primary,.tuner-quiet{flex:1 1;justify-content:center}.tuner-glyph{width:44px}}.cast-doors{display:flex;align-items:center;gap:4px;margin-bottom:26px}.cast-door{padding:7px 12px;border-radius:var(--r9);color:var(--ink-muted);font-size:var(--role-row-13);font-weight:var(--role-current-weight);text-decoration:none}.cast-door:hover{background:var(--surface);color:var(--ink)}.cast-door.is-current{background:var(--selected-bg);color:var(--selected-ink)}.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:var(--role-row-12);font-weight:var(--role-current-weight);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(--r9);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);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(--selected-bg);color:var(--selected-ink)}.cast-facet-option[aria-pressed=true]:hover{background:var(--lift2-hover)}.cast-facet-count{color:var(--ink-muted);font-size:var(--role-row-12);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cast-facet-option[aria-pressed=true] .cast-facet-count{color:var(--ink2)}.cast-library-empty,.cast-notice{margin:0;color:var(--ink-muted);font-size:var(--role-row-13)}.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(auto-fill,minmax(0,calc((100% - 18px) / 7)));gap:3px;margin:2px 0 0;padding:0;list-style:none}.cast-rack-slot{position:relative;aspect-ratio:3/4;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,.cast-rack-slot.is-new{border:1px dashed var(--rule-strong)}.cast-rack-slot.is-new button{display:grid;place-items:center;width:100%;height:100%;padding:0;border:none;background:transparent;color:var(--ink-muted);cursor:pointer}.cast-rack-slot.is-new button:hover:not(:disabled){color:var(--ink)}.cast-rack-slot.is-birth,.cast-rack-slot.is-ready{background:var(--surface)}.cast-rack-slot.is-drifted{box-shadow:inset 0 0 0 1.5px var(--state-att-border)}.cast-library-identity{display:grid;gap:2px}.cast-library-name{margin:0;color:var(--ink);font-size:var(--role-row-15);font-weight:var(--role-current-weight);letter-spacing:var(--role-title-tracking)}.cast-library-meta,.cast-library-state,.cast-library-where{margin:0;font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.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(--r9);background:var(--iris);color:var(--white);font-size:var(--role-row-13);font-weight:var(--role-current-weight);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(--r9);background:transparent;color:var(--ink-muted);cursor:pointer}.cast-library-more:hover{background:var(--surface);color:var(--ink)}.cast-library-menu{display:grid;gap:2px;padding:5px;border:1px solid var(--rule-strong);border-radius:var(--r9);background:var(--panel);box-shadow:var(--shadow-menu)}.cast-library-menu button{display:flex;align-items:center;gap:7px;width:100%;padding:9px 10px;border:none;border-radius:var(--r6);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);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:var(--role-row-12);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(--r9);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);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}}.cast-size{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--rule);border-radius:var(--r9);background:var(--background)}.cast-size button{width:34px;height:34px;border:none;border-radius:var(--r6);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-15);font-weight:var(--role-current-weight);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:var(--role-row-15);font-weight:var(--role-current-weight);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:var(--role-row-12);font-weight:var(--role-current-weight);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:var(--plate);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(--r9);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.cast-dress,.cast-member-restore:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-dress{display:inline-flex;gap:5px;align-items:center;height:30px;padding:0 9px;border:1px solid var(--rule-strong);border-radius:var(--r9);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.cast-dress:hover:not(:disabled){border-color:var(--ink2)}.cast-dress:disabled{opacity:.5;cursor:default}.cast-dress-all{display:inline-flex;gap:7px;align-items:center;justify-self:start;height:34px;padding:0 13px;border:1px solid var(--rule-strong);border-radius:var(--r9);background:var(--surface);color:var(--ink);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);cursor:pointer}.cast-dress-all:hover:not(:disabled){border-color:var(--ink2)}.cast-dress-all:disabled{opacity:.5;cursor:default}.cast-member-owed{margin-left:auto;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);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 transparent;border-radius:var(--r9);background:var(--field);color:var(--ink);font-family:inherit;font-size:var(--role-row-13)}.cast-outfit-change input:focus{outline:none}.cast-outfit-change button{min-height:38px;padding:0 16px;border:none;border-radius:var(--r9);background:var(--iris);color:var(--white);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);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(--ink)}.cast-candidate-name{font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.cast-candidate[aria-pressed=true] .cast-candidate-name{color:var(--ink)}.cast-need{display:flex;flex-wrap:wrap;align-items:flex-start;gap:13px 26px;padding-bottom:17px;border-bottom:1px solid var(--rule)}.cast-need-climate,.cast-need-count{display:flex;align-items:center;gap:11px}.cast-need-roles{display:flex;flex-wrap:wrap;align-items:center;gap:8px 11px;flex:1 1 320px}.cast-climate-chips{display:flex;align-items:center;gap:6px}.cast-climate-chip{padding:5px 12px;border:1px solid var(--rule);border-radius:999px;background:transparent;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.cast-climate-chip:hover:not(:disabled){color:var(--ink)}.cast-climate-chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--background)}.cast-climate-chip:disabled{cursor:default;opacity:.5}.cast-need-label{display:inline-flex;align-items:baseline;gap:7px;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);text-transform:uppercase}.cast-role-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none}.cast-role-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 6px 4px 10px;border:1px solid var(--rule);border-radius:999px;color:var(--ink);font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.cast-role-chip button{display:grid;place-items:center;width:17px;height:17px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--ink-faint);cursor:pointer}.cast-role-chip button:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-role-add input{width:130px;padding:5px 10px;border:1px dashed var(--rule);border-radius:999px;background:transparent;color:var(--ink);font-family:inherit;font-size:var(--role-row-12)}.cast-role-add input:focus{border-style:solid;outline:none}.cast-role-seed{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--rule);border-radius:var(--r9);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.cast-role-seed:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-role-seed:disabled{cursor:default;opacity:.45}.cast-role-proposal{display:flex;flex-wrap:wrap;align-items:center;gap:11px;flex-basis:100%;padding:11px 13px;border:1px solid var(--rule);border-radius:var(--r9);background:var(--surface)}.cast-role-proposal p{margin:0;flex:1 1 220px;color:var(--ink);font-size:var(--role-row-13)}.cast-role-proposal button{padding:5px 11px;border:1px solid var(--rule);border-radius:var(--r9);background:var(--background);color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.cast-role-proposal button:first-of-type{color:var(--ink)}.cast-ways{display:grid;gap:34px}.cast-way{display:grid;gap:13px}.cast-way-title{margin:0;color:var(--ink);font-size:var(--role-row-15);font-weight:var(--role-current-weight);letter-spacing:var(--role-title-tracking)}details.cast-way>summary{cursor:pointer}.cast-way-note{margin:0;color:var(--ink-muted);font-size:var(--role-row-13)}.cast-way .cast-empty{place-items:start;min-height:0;grid-auto-flow:column;justify-content:start;align-items:center;gap:11px}.cast-way .cast-library-grid{max-height:58dvh;overflow-y:auto}.cast-one{display:grid;gap:17px;max-width:760px}.cast-one-group{display:grid;gap:7px;margin:0;padding:0;border:none}.cast-one-group>legend{padding:0}.cast-one-chips{display:flex;flex-wrap:wrap;gap:6px}.cast-one-search{width:120px;padding:5px 10px;border:1px solid var(--rule);border-radius:999px;background:transparent;color:var(--ink);font-family:inherit;font-size:var(--role-row-12)}.cast-one-field{display:grid;gap:7px;max-width:320px}.cast-one-field input{padding:8px 11px;border:1px solid transparent;border-radius:var(--r9);background:var(--field);color:var(--ink);font-family:inherit;font-size:var(--role-row-13)}.cast-one .cast-birth-all{justify-self:start}.cast-role{margin:0;color:var(--ink-muted);font-size:var(--role-row-12)}.cast-draft-more{display:flex;flex-wrap:wrap;align-items:center;gap:11px;padding-top:17px;border-top:1px solid var(--rule)}.cast-draft-more-act{display:inline-flex;align-items:center;min-height:38px;padding:0 16px;border:1px solid var(--rule);border-radius:var(--r9);background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);cursor:pointer}.cast-draft-more-act:hover:not(:disabled){background:var(--surface);color:var(--ink)}.cast-draft-more-act:disabled{cursor:default;opacity:.45}@media (max-width:700px){.cast-draft-more .cast-cost{flex-basis:100%}}.library-canvas{display:grid;width:100%;max-width:calc(1404px + 2 * max(18px, env(safe-area-inset-left)));padding:22px max(18px,env(safe-area-inset-left)) 64px;margin:0 auto;gap:24px;grid-template-columns:264px minmax(0,1fr);align-items:start}.library-rail{position:sticky;top:calc(var(--top-bar-height) + 16px);max-height:calc(100dvh - var(--top-bar-height) - 32px);overflow-y:auto;scrollbar-gutter:stable}.folder-rail{display:flex;flex-direction:column;gap:2px}.folder-branch{display:contents}.folder-children{display:flex;flex-direction:column;gap:2px;padding:2px 0 6px 12px;list-style:none;border-left:1px solid var(--rule);margin:0 0 0 8px}.folder-row{display:grid;min-width:0;gap:3px;padding:8px 10px;border-radius:var(--r9);background:transparent;color:var(--ink-soft);text-decoration:none;transition:background .15s ease,color .15s ease}.folder-row.is-current,.folder-row:hover{background:var(--surface);color:var(--ink)}.folder-name{min-width:0;overflow:hidden;font-size:var(--role-row-13);text-overflow:ellipsis;white-space:nowrap}.folder-line,.folder-name,.folder-row.is-child .folder-name{font-weight:var(--role-current-weight)}.folder-line{overflow:hidden;color:var(--ink-muted);font-size:var(--role-row-12);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.library-wall{position:relative;display:grid;gap:18px;align-content:start;min-width:0}.library-wall.is-refused{animation:cal-shake .32s ease}.library-facets{display:flex;flex-wrap:wrap;gap:5px}.library-empty{padding:34px 0;margin:0;color:var(--ink-muted);font-size:var(--role-row-13)}.library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px 12px;padding:0;margin:0;list-style:none}.library-tile{position:relative;display:flex;min-width:0;flex-direction:column;gap:6px}.library-tile>.add-to-board{position:absolute;z-index:3;right:7px;bottom:30px}.library-board-action{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--rule-strong);border-radius:var(--r9);background:color-mix(in srgb,var(--background) 84%,transparent);color:var(--ink);opacity:0;transition:opacity .15s ease}.library-tile:focus-within .library-board-action,.library-tile:hover .library-board-action{opacity:1}.library-open{display:flex;min-width:0;flex-direction:column;padding:0;border:0;margin:0;background:none;color:inherit;font:inherit;gap:6px;text-align:left}.library-frame,.library-open{border-radius:var(--radius-tile)}.library-frame{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:var(--surface)}.library-name{min-width:0;overflow:hidden;color:var(--ink-muted);line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.library-chip,.library-name{font-size:var(--role-row-12)}.library-chip{position:absolute;z-index:2;top:6px;left:6px;padding:3px 6px;border-radius:var(--r6);background:var(--plate);color:color-mix(in srgb,var(--white) 88%,transparent);font-weight:var(--role-current-weight);line-height:1}.library-drop-cell{min-width:0;gap:6px}.library-drop,.library-drop-cell{display:flex;flex-direction:column}.library-drop{width:100%;aspect-ratio:1/1;align-items:center;justify-content:center;gap:8px;border:1.5px dashed var(--rule-strong);border-radius:var(--radius-tile);background:var(--panel-raised);color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);transition:border-color .15s ease,background .15s ease,color .15s ease,transform .07s ease}.library-drop:hover{border-color:var(--ink2);background:var(--surface);color:var(--ink)}.library-drop:active{transform:translateY(.5px)}.library-tile.is-pending .library-frame{border:1px dashed var(--rule-strong);box-shadow:none}.library-progress-track{position:absolute;z-index:2;bottom:0;left:0;width:100%;height:3px;overflow:hidden;background:var(--surface-raised)}.library-progress{display:block;width:100%;height:100%;background:var(--iris);transform-origin:0 50%;transition:transform .15s ease}.library-drop-veil{position:absolute;z-index:20;inset:-8px;display:flex;flex-direction:column;justify-content:center;gap:10px;border:1.5px dashed var(--ink2);border-radius:var(--r13);background:color-mix(in srgb,var(--iris) 9%,transparent);color:var(--iris-soft);font-size:var(--role-row-13);pointer-events:none}.library-drop-veil,.library-upload{align-items:center;font-weight:var(--role-current-weight)}.library-upload{display:inline-flex;gap:7px;padding:8px 13px;border:1px solid var(--rule);border-radius:var(--r9);background:var(--surface);color:var(--ink-soft);font-size:var(--role-row-12);transition:background .15s ease,border-color .15s ease,color .15s ease,transform .07s ease}.library-upload:hover{background:var(--surface-raised);color:var(--ink)}.library-upload:active{transform:translateY(.5px)}.library-trail{min-width:0;overflow:hidden}.library-trail ol{display:flex;min-width:0;align-items:center;gap:8px;padding:0;margin:0;list-style:none}.library-trail li{min-width:0;overflow:hidden;color:var(--ink-muted);font-size:var(--role-row-13);font-weight:var(--role-current-weight);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.library-trail a{color:var(--ink-muted);text-decoration:none}.library-trail [aria-current=page],.library-trail a:hover{color:var(--ink)}@media (max-width:900px){.library-canvas{grid-template-columns:minmax(0,1fr);gap:18px}.library-rail{position:static;max-height:42dvh;overflow-y:auto;padding-right:4px}.library-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.cast-with-rail{display:grid;gap:24px;grid-template-columns:264px minmax(0,1fr);align-items:start}.cast-with-rail-body{display:grid;gap:26px;min-width:0;align-content:start}@media (max-width:900px){.cast-with-rail{grid-template-columns:minmax(0,1fr);gap:18px}}.fitting{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:var(--r13);background:var(--panel-raised)}.fitting-chips{display:flex;flex-wrap:wrap;gap:6px}.fitting-chip{min-height:36px;padding:0 14px;border:0;border-radius:999px;background:var(--surface);color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);cursor:pointer}.fitting-chip:hover:not(:disabled){color:var(--ink);background:var(--surface-raised)}.fitting-chip[aria-pressed=true]{background:var(--ink);color:var(--background);box-shadow:none}.fitting-chip:disabled{opacity:.5;cursor:default}.fitting-field{min-height:44px;padding:0 14px;border:0;border-radius:var(--r9);background:var(--field);color:var(--ink);font-family:inherit;font-size:var(--role-row-15)}.fitting-field:focus{outline:none}.fitting-request{display:flex;flex-direction:column;gap:6px}.fitting-request-label{color:var(--ink-muted);font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.fitting-field[aria-invalid=true]{box-shadow:inset 0 0 0 2px var(--ink2)}.fitting-sentence{margin:0;padding:12px 14px;color:var(--ink);font-size:var(--role-row-15);line-height:1.5}.fitting-aside,.fitting-notice,.fitting-refusal{margin:0;color:var(--ink-muted);font-size:var(--role-row-13);font-weight:var(--role-current-weight)}.fitting-refusal{color:var(--ink);font-size:var(--role-row-15)}.fitting-run{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.fitting-go{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;border:0;border-radius:var(--r9);background:var(--ink);color:var(--background);font-family:inherit;font-size:var(--role-row-15);font-weight:var(--role-current-weight);cursor:pointer}.fitting-go:disabled{background:var(--surface);color:var(--ink-faint);cursor:default}.fitting-options{display:flex;align-items:flex-start;gap:16px;overflow-x:auto}.fitting-master{flex:none;width:96px;margin:0;display:flex;flex-direction:column;gap:6px}.fitting-master img{width:96px;height:auto;border-radius:var(--radius-tile);object-fit:cover}.fitting-master figcaption{color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight)}.fitting-hangers{display:flex;gap:12px;margin:0;padding:0;list-style:none}.fitting-hanger{display:flex;flex-direction:column;gap:6px;width:180px}.fitting-hanger[data-verdict=passed]{opacity:.5}.fitting-frame{display:block;aspect-ratio:3/4;border-radius:var(--radius-tile);background:var(--surface);overflow:hidden}.fitting-frame img{width:100%;height:100%;object-fit:cover}.fitting-hanger-name{color:var(--ink);font-size:var(--role-row-14)}.fitting-hanger-name,.fitting-verdict{font-weight:var(--role-current-weight)}.fitting-verdict{display:inline-flex;align-items:center;gap:5px;color:var(--ink-muted);font-size:var(--role-row-12)}.fitting-acts{display:flex;flex-wrap:wrap;gap:6px}.fitting-again,.fitting-keep,.fitting-pass{min-height:34px;padding:0 12px;border:0;border-radius:999px;background:var(--surface);color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.fitting-keep{background:var(--ink);color:var(--background)}.fitting-again:disabled,.fitting-keep:disabled,.fitting-pass:disabled{opacity:.5;cursor:default}.fitting-note{display:flex;gap:6px}.fitting-note input{flex:1 1;min-width:0;padding:0 10px;background:var(--field);color:var(--ink);font-size:var(--role-row-13)}.fitting-note button,.fitting-note input{min-height:34px;border:0;border-radius:var(--r9);font-family:inherit}.fitting-note button{padding:0 12px;background:var(--ink);color:var(--background);font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.person{width:min(1080px,calc(100% - 40px));margin:0 auto;padding:30px 0 96px;gap:24px}.person,.person-head{display:flex;flex-direction:column}.person-head{gap:6px}.person-back{align-self:flex-start;color:var(--ink-muted);font-size:var(--role-row-13);font-weight:var(--role-current-weight);text-decoration:none}.person-back:hover,.person-name{color:var(--ink)}.person-name{margin:0;font-size:32px;font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking)}.person-body{display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px}.person-master{flex:none;width:260px;margin:0;display:flex;flex-direction:column;gap:8px}.person-master img{width:260px;height:auto;border-radius:var(--r13);object-fit:cover}.person-master-waiting{display:block;width:260px;aspect-ratio:3/4;border-radius:var(--r13);background:var(--surface)}.person-master figcaption{color:var(--ink-muted);font-size:var(--role-row-13);line-height:1.4}.person-wardrobe{display:flex;flex-wrap:wrap;gap:6px;margin:0;color:var(--ink-muted);font-size:var(--role-row-12);line-height:1.4}.person-wardrobe-label{font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);text-transform:uppercase}.person-facts{flex:1 1;min-width:240px;gap:16px}.person-fact,.person-facts{display:flex;flex-direction:column}.person-fact{align-items:flex-start;gap:6px}.person-fact-label{color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);letter-spacing:var(--role-tracking);text-transform:uppercase}.person-notes{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;padding:0;list-style:none;width:100%}.person-note{min-height:32px;padding:0 12px;border:0;border-radius:999px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);cursor:pointer}.person-note.is-empty{background:transparent;color:var(--ink-faint)}.person-note-input{min-height:32px;padding:0 12px;border:0;border-radius:999px;background:var(--field);box-shadow:inset 0 0 0 1.5px var(--ink);color:var(--ink);font-family:inherit;font-size:var(--role-row-13)}.person-new-fitting{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;min-height:44px;padding:0 20px;border:0;border-radius:var(--r9);background:var(--ink);color:var(--background);font-family:inherit;font-size:var(--role-row-15);font-weight:var(--role-current-weight);cursor:pointer}.person-new-fitting:disabled{background:var(--surface);color:var(--ink-faint);cursor:default}.person-anchor{gap:8px}.person-anchor-frame{width:72px;height:auto;border-radius:var(--r9);object-fit:cover}.person-anchor-moment{margin:0;color:var(--ink);font-size:var(--role-row-14)}.person-anchor-state{margin:0;color:var(--ink-faint);font-size:var(--role-row-13)}.person-anchor-menu{display:flex;flex-direction:column;gap:4px}.person-anchor-menu select{min-height:40px;max-width:100%;padding:0 10px;border:1px solid var(--rule);border-radius:var(--r9);background:var(--background);color:var(--ink);font-family:inherit;font-size:var(--role-row-14)}.person-anchor-approve,.person-anchor-make{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;padding:0 20px;border:0;border-radius:var(--r9);background:var(--ink);color:var(--background);font-family:inherit;font-size:var(--role-row-15);font-weight:var(--role-current-weight);cursor:pointer}.person-anchor-approve:disabled,.person-anchor-make:disabled{background:var(--surface);color:var(--ink-faint);cursor:default}.person-section-title{margin:0 0 10px;color:var(--ink);font-size:var(--role-row-17);font-weight:var(--role-current-weight)}.person-empty,.person-notice{margin:0;color:var(--ink-muted);font-size:var(--role-row-14)}.person-cards{display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;list-style:none}.person-card{display:flex;flex-direction:column;gap:6px;width:180px}.person-card.is-passed{opacity:.6}.person-card-frame{display:block;aspect-ratio:3/4;border-radius:var(--radius-tile);background:var(--surface);overflow:hidden}.person-card-frame.is-drifted{box-shadow:inset 0 0 0 2px var(--danger)}.person-card-frame img{width:100%;height:100%;object-fit:cover}.person-card-name{border:0;background:transparent;padding:0;color:var(--ink);font-family:inherit;font-size:var(--role-row-14);font-weight:var(--role-current-weight);text-align:left;cursor:pointer}.person-card-name.is-static{cursor:default}.person-card-rename{min-height:30px;padding:0 8px;border:0;border-radius:var(--r9);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--ink);color:var(--ink);font-family:inherit;font-size:var(--role-row-14);font-weight:var(--role-current-weight)}.person-card-line{color:var(--ink-muted);font-size:var(--role-row-12)}.person-card-acts{display:flex;flex-wrap:wrap;gap:6px}.person-card-pass,.person-card-restore,.person-card-star{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 10px;border:0;border-radius:999px;background:var(--surface);color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-12);font-weight:var(--role-current-weight);cursor:pointer}.person-card-star[aria-pressed=true]{background:var(--ink);color:var(--background)}.person-card-pass:disabled,.person-card-restore:disabled,.person-card-star:disabled{opacity:.6;cursor:default}.person-passed-toggle{min-height:40px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);font-family:inherit;font-size:var(--role-row-13);font-weight:var(--role-current-weight);cursor:pointer}.person-passed{display:flex;flex-direction:column;align-items:flex-start;gap:12px}@media (max-width:700px){.person{width:calc(100% - 24px);padding:18px 0 64px}.person-master,.person-master img,.person-master-waiting{width:100%}.fitting-hanger,.person-card{width:calc(50% - 7px)}.fitting-hangers{flex-wrap:wrap}}.library-person{display:inline-flex;align-items:center;gap:5px;color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);text-decoration:none}.library-person:hover{color:var(--ink)}.cast-person-door{color:var(--ink-muted);font-size:var(--role-row-12);font-weight:var(--role-current-weight);text-decoration:none}.cast-person-door:hover{color:var(--ink)}.look-picker{position:relative;height:34px}.look-trigger{display:inline-flex;height:34px;align-items:center;gap:6px;padding:0 8px;border:0;border-radius:var(--r9);background:transparent;color:var(--ink2);font:var(--role-current);font-size:var(--role-row-13);line-height:1;cursor:pointer;transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.look-trigger svg{flex:none;color:var(--glyph)}.look-value{max-width:172px;overflow:hidden;color:var(--ink);font-weight:var(--role-current-weight);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.look-value-word{display:none}.look-trigger:hover:not(:disabled){background:var(--lift-hover)}.look-trigger[aria-expanded=true]{background:var(--lift-press)}.look-trigger:focus-visible{outline:none;box-shadow:var(--ring-quiet)}.look-trigger:disabled{cursor:default;opacity:.55}.look-caret{margin-left:-1px;color:var(--glyph);transition:transform var(--fast) var(--ease)}.look-trigger[aria-expanded=true] .look-caret{transform:rotate(180deg)}.look-menu{padding:6px}.look-row{display:flex;width:100%;min-height:40px;align-items:center;gap:10px;padding:2px 10px;border:0;border-radius:var(--r9);background:none;color:var(--ink2);text-align:left;cursor:pointer;transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.look-row:focus-visible,.look-row:hover{background:var(--float-hover);outline:none}.look-row.is-on{color:var(--ink)}.look-name{flex:1 1;min-width:0;overflow:hidden;font:var(--role-current);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.look-row.is-on .look-name{font-weight:var(--role-current-weight)}.look-tick{flex:none;color:var(--ink2)}@media (max-width:700px){.look-picker,.look-trigger{height:44px}.look-row{min-height:48px}.prompt-footer:has(.look-picker){flex-wrap:wrap;justify-content:flex-start;column-gap:2px;row-gap:0}.prompt-footer:has(.look-picker) .prompt-meta{display:contents}.prompt-footer:has(.look-picker) .prompt-actions{margin-left:auto}.prompt-footer:has(.look-picker) .look-picker{order:-1;flex-basis:100%}.prompt-footer:has(.look-picker) .look-value{max-width:calc(100vw - 140px)}}@media (prefers-reduced-motion:reduce){.cast-frame-waiting,.fitting-frame-waiting,.person-card-waiting{animation:none;opacity:.72}}