:root{--bg:#0a0e1a;--panel:#111728db;--border:#96aadc29;--text:#e7ecf8;--text-soft:#c6cfe4;--muted:#94a1bf;--accent:#6ea8ff;--accent-strong:#4d8df7;--danger:#ff8080;--success:#5ee0a0;--surface:#0d1324;--surface-raised:#141b2e;--surface-sheet:#0d1222;--fill-faint:#96aadc12;--hover:#96aadc1a;--fill:#96aadc1f;--hover-strong:#96aadc2e;--line:#96aadc66;--tint:#6ea8ff2e;--tint-faint:#6ea8ff1a;--input:#05081099;--backdrop:#0508108c;--gate:#0a0e1ab8;--shadow:#00000059;--shadow-soft:#0000004d;--fold-shadow:#00000080;--control-hover:#242f4eeb;--card:#111728b3;--glow:#1a2440;--glow-edge:#0d1324;--chip:#080c18cc;--chip-hover:#1e2842f2;--chip-ring:#e7ecf8b3;--chip-text:#e7ecf8;--veil:#0a0e1a8c;--pending:saturate(.5) brightness(.55);--failed:grayscale(1) brightness(.45);--overlay:#0d122299;--overlay-ring:#ffffff40;--overlay-text:#fff;--overlay-shadow:#00000073;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--runway:0px;--runway-below:0px;color-scheme:dark}:root[data-theme=light]{--bg:#fff;--panel:#ffffffe0;--border:#1e2d5024;--text:#18213a;--text-soft:#3d4866;--muted:#5d6987;--accent:#2a62cf;--accent-strong:#2f6fe0;--danger:#c8373a;--success:#069c64;--surface:#f2f4f8;--surface-raised:#fff;--surface-sheet:#f7f8fb;--fill-faint:#1e2d500a;--hover:#1e2d500f;--fill:#1e2d5014;--hover-strong:#1e2d501c;--line:#1e2d504d;--tint:#2f6fe01f;--tint-faint:#2f6fe012;--input:#fff;--backdrop:#141c3059;--gate:#eef1f6cc;--shadow:#141e3c24;--shadow-soft:#141e3c1f;--fold-shadow:#141e3c1f;--control-hover:#ecf0f7f5;--card:#fffc;--glow:#eef2fa;--glow-edge:#fff;--chip:#ffffffe6;--chip-hover:#fff;--chip-ring:#1e2d504d;--chip-text:#18213a;--veil:#fff9;--pending:saturate(.5) contrast(.6) brightness(1.2);--failed:grayscale(1) contrast(.5) brightness(1.15);--overlay:#ffffffbf;--overlay-ring:#1e2d5024;--overlay-text:#18213a;--overlay-shadow:#141e3c2e;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{touch-action:pan-x pan-y}body{background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}@media (width<=760px){html.runway{--runway:64px;--runway-below:120px;--safe-top:calc(env(safe-area-inset-top,0px) + var(--runway));overscroll-behavior:none;height:auto;overflow-y:scroll}html.runway body{height:auto;overflow:visible}html.runway #root{height:calc(100dvh + var(--runway))}html.runway :is(.gate,.overlay-backdrop,.spec-editor){top:calc(-1 * var(--runway))}html.runway .app.scene-only .stage{margin-bottom:calc(-1 * var(--runway-below))}html.runway .sidebar{transition:transform .35s cubic-bezier(.38,.7,.125,1)}html.runway .app{transition:--sheet-open .35s cubic-bezier(.38,.7,.125,1)}html.runway.keyboard .sidebar{transform:translateY(calc(-1 * var(--keyboard,0px)))}html.runway.keyboard .sidebar:after{content:"";height:var(--keyboard,0px);background:var(--surface-sheet);position:absolute;top:100%;left:0;right:0}}h1,h2,h3,h4,p{margin:0}button,textarea,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}code{background:var(--fill);border-radius:4px;padding:1px 5px;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.muted{color:var(--muted)}.app{--covered:calc(376px + var(--safe-left));--sheet:0px;height:100%;display:flex}@property --sheet-open{syntax:"<length>";inherits:true;initial-value:0}.sidebar{z-index:160;top:calc(16px + var(--safe-top));bottom:calc(16px + var(--safe-bottom));left:calc(16px + var(--safe-left));flex-direction:column;gap:12px;width:360px;padding:16px;display:flex}@media (width>760px){.sidebar{position:absolute}.sidebar.stand-in-sheet{display:none}}@media (width<=760px){.sidebar.stand-in-float{display:none}}.sheet-fold{display:contents}.sidebar-header{align-items:center;gap:8px;display:flex}.account{align-items:center;gap:8px;font-size:13px;display:flex}.account span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.link{color:var(--accent);background:0 0;border:0;padding:0}.link:hover{text-decoration:underline}.account-menu{margin-left:auto;display:flex;position:relative}.avatar{border:1px solid var(--border);background:var(--tint);border-radius:50%;place-items:center;width:30px;height:30px;padding:0;font-size:13px;font-weight:600;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.avatar[aria-expanded=true]{border-color:var(--accent)}.account-popover{z-index:220;background:var(--surface-raised);overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:6px;width:max-content;max-width:min(280px,100vw - 20px);padding:12px 14px;font-size:13px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.account-popover .button,.account-theme{margin-top:4px}.sidebar-sign-in{margin-left:auto;font-size:13px}.sheet-handle{touch-action:none;background:0 0;border:0;flex:none;height:22px;margin:0 -10px;padding:0}.sheet-handle:before{content:"";background:var(--line);border-radius:2px;width:38px;height:4px;margin:0 auto;display:block}.gate{z-index:300;padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(24px + var(--safe-left));background:var(--gate);backdrop-filter:blur(8px);place-items:center;display:grid;position:fixed;inset:0}.gate-card{text-align:center;flex-direction:column;gap:14px;width:min(380px,100%);padding:28px;display:flex;position:relative}.gate-card .logo{width:min(100%,280px)}.gate-card h1{letter-spacing:-.01em;font-size:18px;font-weight:600}.gate-card form{flex-direction:column;gap:10px;display:flex}.gate-or{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.gate-or:before,.gate-or:after{content:"";border-top:1px solid var(--border);flex:1}.gate-links{justify-content:space-between;font-size:13px;display:flex}.gate-terms{font-size:12px}.gate-terms a{color:inherit}.gate-close{position:absolute;top:12px;right:12px}textarea,input{border:1px solid var(--border);background:var(--input);resize:none;border-radius:10px;outline:none;width:100%;padding:10px 12px}textarea:focus,input:focus{border-color:var(--accent)}.thread{flex-direction:column;flex:1;gap:12px;min-height:0;margin:0 -8px;padding:4px 8px 16px;display:flex;overflow-y:auto}.thread-empty{flex-direction:column;gap:10px;margin:auto 0;padding:0 6px;display:flex}.shared-note{gap:16px}.shared-note section{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.shared-note section+section{border-top:1px solid var(--border);padding-top:16px}.shared-kind{font-size:12px}.shared-note h3{font-size:17px;font-weight:600;line-height:1.3}.shared-note h4{font-size:14px;font-weight:600}.shared-note .button{margin-top:6px}.how{counter-reset:step;gap:16px;list-style:none}.how>li{counter-increment:step;grid-template-columns:24px 1fr;column-gap:12px;display:grid}.how>li:before{content:counter(step);border:1px solid var(--border);background:var(--tint-faint);width:24px;height:24px;color:var(--accent);border-radius:50%;grid-row:1/span 3;place-items:center;font-size:12px;font-weight:600;display:grid}.how>li>*{grid-column:2}.how strong{font-weight:600;line-height:24px}.how .chips{gap:6px;margin-top:8px}.how .chip{color:var(--text);padding:4px 11px;font-size:13px}.asks{flex-direction:column;align-items:flex-start;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.asks li{border:1px solid var(--border);background:var(--fill-faint);color:var(--text);border-radius:12px 12px 12px 4px;padding:5px 11px;font-size:13px}.message{overflow-wrap:anywhere}.message.user{background:var(--tint);white-space:pre-wrap;border-radius:14px 14px 4px;align-self:flex-end;max-width:88%;padding:8px 12px}.message.agent{flex-direction:column;gap:8px;display:flex}.message.agent p{white-space:pre-wrap}.message.working{flex-direction:row;align-items:center;gap:8px}.message.from-version{align-self:center;font-size:12px}.tool{border:1px solid var(--border);background:var(--fill-faint);color:var(--text-soft);border-radius:10px;gap:8px;padding:7px 10px;font-size:13px;display:flex}.tool-mark{text-align:center;width:16px;color:var(--success);flex:none}.tool.failed .tool-mark{color:var(--danger)}.tool-mark .building-mark{margin-top:2px}.thinking{font-size:12.5px;line-height:1.45}.thinking.live{align-items:flex-start;gap:8px;font-style:italic;display:flex}.thinking.live .building-mark{margin-top:1px}details.thinking summary{cursor:pointer;color:var(--muted)}details.thinking p{color:var(--muted);white-space:pre-wrap;margin-top:4px}.tool ul{color:var(--muted);margin:4px 0 0;padding-left:16px}.composer{border:1px solid var(--border);background:var(--input);cursor:text;border-radius:10px;flex:none;align-items:flex-end;display:flex}.composer:focus-within{border-color:var(--accent)}.composer textarea{background:0 0;border:0;border-radius:0;flex:1;min-width:0;padding:10px 4px 10px 12px}.composer .icon-button{width:32px;height:32px;margin:6px;font-size:18px}.composer .icon-button svg{stroke-width:2px}.composer .icon-button.primary{background:var(--accent-strong);color:#fff;border-color:#0000}.composer .icon-button.primary:hover:not(:disabled){background:var(--accent)}.composer.compact{border-radius:20px}.composer.compact textarea{max-height:116px;padding:8px 4px 8px 14px;font-size:16px;line-height:22px}.composer.compact textarea::placeholder{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.composer.compact .icon-button{margin:3px}.session-list{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.session-list li{align-items:center;gap:6px;padding-right:6px;display:flex}.session-list li:first-child{border-top-left-radius:10px;border-top-right-radius:10px}.session-list li:last-child{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.session-list li:hover,.session-list li.current{background:var(--hover)}.session-open{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;min-width:0;padding:8px 10px;font-size:12px;display:flex}.session-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.session-list li.current .session-title{color:var(--accent)}.session-list-empty{flex:1}.button{border:1px solid var(--border);background:var(--hover);border-radius:10px;padding:8px 14px;font-weight:600}.button:hover:not(:disabled){background:var(--hover-strong)}.button.small{border-radius:8px;padding:4px 10px;font-size:13px}.button.active{border-color:var(--accent);color:var(--accent)}.button.primary{background:var(--accent-strong);color:#fff;border-color:#0000}.button.primary:hover:not(:disabled){background:var(--accent)}.icon-button{border:1px solid var(--border);background:var(--hover);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;padding:0;font-size:20px;line-height:1;display:inline-grid}.icon-button:hover:not(:disabled){background:var(--hover-strong)}.icon-button.small{width:26px;height:26px;font-size:16px}.icon-button.flat{background:0 0;border:none;width:32px;height:32px;font-size:28px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:0 0;border-radius:999px;padding:5px 12px}.chip:hover{background:var(--fill)}.chip.active{border-color:var(--accent);color:var(--accent)}.notice{border:1px solid var(--border);background:var(--fill-faint);color:var(--muted);overflow-wrap:anywhere;border-radius:10px;padding:10px 12px;font-size:13px}.notice.error{color:var(--danger);background:#ff808014;border-color:#ff808066}.notice ul{margin:6px 0 0;padding-left:18px}.stage{background:radial-gradient(ellipse at calc(50% + var(--covered) / 2) 38%, #1a2440 0%, #0d1324 55%, var(--bg) 100%);flex:1;grid-template:minmax(0,1fr)/minmax(0,1fr);min-width:0;display:grid}.stage>*{grid-area:1/1}:root[data-theme=light] .stage{background:#fff}.panel{border:1px solid var(--border);background:var(--panel);backdrop-filter:blur(14px);box-shadow:0 12px 40px var(--shadow);border-radius:24px}.stage-top{z-index:100;margin:calc(16px + var(--safe-top)) calc(16px + var(--safe-right)) 0 calc(var(--covered) + 16px);max-height:calc(100% - 258px - var(--safe-top) - var(--safe-bottom));pointer-events:none;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(300px,auto);align-self:start;gap:12px 20px;display:grid}.stage-top>*{pointer-events:auto}.spec-toggle{background:var(--panel);backdrop-filter:blur(14px)}.node-card{grid-area:2/2;place-self:start end;width:300px;min-height:0;max-height:100%;padding:14px 16px;overflow-y:auto}.node-card header,.spec-editor header{align-items:center;gap:10px;display:flex}.node-card h3,.spec-editor h3{flex:1;font-size:15px}.node-card p{color:var(--text-soft);margin-top:8px}.swatch{border-radius:50%;flex:none;width:12px;height:12px}.node-card ul{border-top:1px solid var(--border);margin:10px 0 0;padding:8px 0 0;list-style:none}.node-card li button{text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:3px 6px}.node-card li button:hover{background:var(--fill)}.direction{width:20px;color:var(--muted);display:inline-block}.spec-editor{width:440px;padding:calc(18px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) 16px;border-left:1px solid var(--border);background:var(--surface-sheet);flex-direction:column;flex:none;gap:10px;display:flex}.spec-editor textarea{resize:none;white-space:pre;tab-size:2;flex:1;min-height:0;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.spec-editor .notice{max-height:140px;overflow-y:auto}.spec-editor footer{gap:8px;display:flex}.spec-editor .spec-guide{color:var(--accent);font-size:13px;text-decoration:none}.spec-editor .spec-guide:hover{text-decoration:underline}.versions{flex-direction:column;flex:none;gap:6px;font-size:13px;display:flex}.versions h4{font-size:13px}.version-list{max-height:136px;margin:0;padding:0;list-style:none;overflow-y:auto}.version{text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;gap:10px;width:100%;padding:6px 10px;display:flex}.version .muted{font-size:12px}.version:hover:not(:disabled),.version[aria-current=true]{background:var(--hover)}.version[aria-current=true]{color:var(--accent)}.stepbar{--free:calc(100% - var(--covered) - var(--safe-right));--width:min(640px, calc(var(--free) - 92px));z-index:100;margin:0 0 calc(20px + var(--safe-bottom)) calc(var(--covered) + min(calc(var(--free) / 2 - var(--width) / 2), calc(var(--free) - 76px - var(--width))));width:var(--width);grid-area:1/1;place-self:end start;align-items:center;gap:14px;padding:14px 16px;display:flex;position:relative}.fine-print{color:#94a1bf8c;text-align:center;text-shadow:0 1px 3px #050810cc;pointer-events:none;font-size:11px;line-height:1.3;position:absolute;bottom:calc(100% + 14px);left:0;right:0}:root[data-theme=light] .fine-print{color:#4a5672bf;text-shadow:none}.stepbar-body{text-align:center;flex:1;min-width:0}.stepbar h2{letter-spacing:-.01em;font-size:17px}.stepbar p{color:var(--text-soft);margin-top:8px}.stepbar-text{transition:transform .2s,opacity .2s}.stepbar-text.pulled{transition:none}.icon-button.on{border-color:var(--accent);color:var(--accent)}.stage-bottom{display:contents}.view-controls{z-index:101;margin:0 calc(16px + var(--safe-right)) calc(20px + var(--safe-bottom)) 0;flex-direction:column;grid-area:1/1;place-self:end;gap:10px;display:flex}.view-controls .icon-button{background:var(--panel);backdrop-filter:blur(14px);width:44px;height:44px;box-shadow:0 6px 20px var(--shadow-soft);place-items:center;display:grid;position:relative}.view-controls .icon-button:hover{background:var(--control-hover)}.view-controls .building.wait{stroke-width:3.6px;width:16.5px}.view-controls .tip{border:1px solid var(--border);background:var(--surface-raised);box-shadow:0 6px 20px var(--shadow-soft);color:var(--text);white-space:nowrap;opacity:0;pointer-events:none;border-radius:8px;padding:4px 10px;font-size:13px;line-height:1.5;transition:opacity .12s;position:absolute;top:50%;right:calc(100% + 10px);transform:translateY(-50%)}.view-controls .icon-button:hover .tip,.view-controls .icon-button:focus-visible .tip{opacity:1}.stepbar .narration-error{color:var(--danger);overflow-wrap:anywhere;margin-top:6px;font-size:12px}.step-dots{justify-content:center;gap:4px;margin-top:8px;display:flex}.step-dots button{background:0 0;border:0;width:18px;height:14px;padding:0}.step-dots button:before{content:"";background:var(--line);border-radius:50%;width:8px;height:8px;margin:auto;transition:background .2s,transform .2s;display:block}.step-dots button.current:before{background:var(--accent);transform:scale(1.3)}.welcome{margin:0 0 var(--sheet) var(--covered);padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) 24px;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.welcome>:not(.logo){animation:.7s cubic-bezier(.2,.7,.2,1) both rise}.landing.settled .welcome>:not(.logo){animation:none}.at-session :is(.landing,.stand-in){visibility:hidden}.welcome>:nth-child(2){animation-delay:.1s}.welcome>:nth-child(3){animation-delay:.25s}.welcome>:nth-child(4){animation-delay:.4s}.welcome>:nth-child(5){animation-delay:.55s}.welcome .hero{letter-spacing:-.02em;max-width:640px;margin-top:6px;font-size:clamp(24px,3vw,38px);font-weight:600;line-height:1.15}.welcome p{max-width:460px;font-size:15px}.missing-mark{margin-bottom:18px}.missing-action{margin-top:18px}.welcome .missing-next{margin-top:26px;font-size:13px}.missing-action+.missing-next{margin-top:8px}.missing-next a{color:inherit;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.missing-next a:hover{color:var(--text);text-decoration-color:currentColor}.landing{margin:0 0 var(--sheet) var(--covered);scrollbar-width:thin;flex-direction:column;display:flex;overflow-y:auto}.landing .welcome{flex:none;min-height:max(300px,100% - 380px);margin:0}.gallery{width:min(1080px,100%);padding:0 calc(24px + var(--safe-right)) calc(32px + var(--safe-bottom)) 24px;opacity:0;flex:none;margin:0 auto}.gallery.shown{opacity:1;animation:.7s cubic-bezier(.2,.7,.2,1) both rise}.gallery h2{color:var(--muted);text-align:center;margin-bottom:12px;font-size:13px;font-weight:500}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(min(210px,50% - 6px),1fr));gap:12px;display:grid}.gallery-card{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:14px;text-decoration:none;transition:border-color .2s;display:block;overflow:hidden}.gallery-card:hover,.gallery-card:focus-visible{border-color:var(--line)}.gallery-card img,.gallery-card .gallery-picture{aspect-ratio:3/2;object-fit:cover;background-color:var(--surface);width:100%;display:block}.gallery-title{text-overflow:ellipsis;white-space:nowrap;padding:8px 12px 9px;font-size:13px;display:block;overflow:hidden}.landing-footer{padding:0 calc(24px + var(--safe-right)) calc(16px + var(--safe-bottom)) 24px;color:var(--muted);flex-wrap:wrap;flex:none;justify-content:center;gap:4px 18px;margin-top:auto;font-size:12px;display:flex}.landing-footer a{color:var(--muted);text-decoration:none}.landing-footer a:hover{color:var(--text);text-decoration:underline}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.logo{height:auto;color:var(--text);flex:none;align-self:center;display:block;overflow:visible}.welcome .logo{width:clamp(280px,39vw,432px);max-width:100%;margin-bottom:clamp(12px,1.6vw,20px)}.logo-mark{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round}.logo-word{fill:currentColor}.logo-dots{fill:var(--accent)}.logo-tld{fill:var(--muted)}.building.wait.viewer-wait{margin:0 0 var(--sheet) calc(50% + var(--covered) / 2);place-self:center start;transform:translate(-50%)}@property --t{syntax:"<number>";inherits:true;initial-value:0}.building{animation:5.2s linear infinite build}.building svg{width:100%;height:100%;opacity:clamp(0, (.98 - var(--t)) / .06, 1);display:block;overflow:visible}.building:is(.badge,.large){z-index:100;margin:calc(16px + var(--safe-top)) 0 0 calc(50% + var(--covered) / 2);place-self:start;transform:translate(-50%)}.building.badge{border-radius:50%;width:60px;height:60px;padding:6px}.building.large{margin-top:0;margin-bottom:calc(8vh + var(--sheet));width:min(150px, calc((100% - var(--covered)) * .4));align-self:center}.building:is(.badge,.large) svg{animation:5s ease-in-out infinite float}.building.wait{flex:none;width:30px;display:block}.building.large svg{stroke-width:.75px}.building:is(.large,.figure) svg{filter:drop-shadow(0 0 14px #6ea8ff40)}.building.figure{flex:none;width:96px;display:block}.building.figure svg{stroke-width:1.15px}.building .piece{--p:clamp(0, (var(--t) - var(--at)) / var(--for), 1);--e:calc(var(--p) * var(--p) * (3 - 2 * var(--p)))}.building .draw{--d:clamp(0, (var(--e) - var(--from,0)) / var(--share,1), 1);fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc((1 - var(--d)) * 1px);opacity:clamp(0, var(--d) * 40, 1)}.building .lid{transform:translateY(calc((1 - var(--e)) * var(--lift)))}@keyframes build{to{--t:1}}@keyframes float{50%{transform:translateY(-2.5%)}}.building-mark{flex:none;width:16px;height:16px;display:block;overflow:visible}.building-mark path{fill:none;stroke:var(--accent);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:2.6s ease-in-out infinite trace}@keyframes trace{0%{stroke-dashoffset:1px;opacity:0}6%{opacity:1}45%,62%{stroke-dashoffset:0}94%{opacity:1}to{stroke-dashoffset:-1px;opacity:0}}@media (prefers-reduced-motion:reduce){.building{--t:.8;animation:none}.building.wait svg{animation:1.6s ease-in-out infinite alternate breathe}.building svg,.building-mark path,.welcome>*,.gallery.shown{animation:none}}@keyframes breathe{0%{opacity:.4}}.shimmer{background-color:var(--fill);background-image:linear-gradient(100deg, transparent 40%, var(--hover-strong) 50%, transparent 60%);background-size:300% 100%;animation:1.6s linear infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.shimmer{animation:none}}.account-waiting{border-radius:50%;flex:none;width:30px;height:30px;margin-left:auto}.conversation-waiting{flex-direction:column;gap:10px;display:flex}.conversation-waiting .said{border-radius:14px 14px 4px;align-self:flex-end;width:62%;height:36px}.conversation-waiting .line{border-radius:6px;height:12px}.conversation-waiting .short{width:48%}.shots-canvas{pointer-events:none;position:fixed;top:0;left:-10000px}.stage-buttons{grid-area:1/2;justify-self:end;align-items:center;gap:8px;display:flex}.scene-only-toggle{background:var(--panel);backdrop-filter:blur(14px);font-size:18px}.app.scene-only{--covered:var(--safe-left);--sheet:0px}.app.scene-only .sidebar,.app.scene-only .spec-editor,.app.scene-only .stage-top>:not(.stage-buttons),.app.scene-only .stage-buttons>:not(.scene-only-toggle),.app.scene-only .stage-bottom,.app.scene-only .building:is(.badge,.large){display:none}.app.scene-only .scene-only-toggle{opacity:.4;transition:opacity .15s}.app.scene-only .scene-only-toggle:hover,.app.scene-only .scene-only-toggle:focus-visible{opacity:1}.share-menu{display:flex;position:relative}.share-popover{z-index:220;background:var(--surface-raised);flex-direction:column;gap:14px;width:min(440px,100vw - 20px);padding:14px 16px;font-size:13px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.stage-top:has(.share-popover){z-index:110}.share-dialog{background:var(--surface-raised);flex-direction:column;gap:14px;width:min(440px,100%);max-height:100%;padding:14px 16px 16px;font-size:13px;display:flex;overflow-y:auto}.share-dialog-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.share-dialog-head h3{margin:0;font-size:15px}.share-switch{cursor:pointer;align-items:center;gap:8px;display:flex}.share-switch input{width:auto;accent-color:var(--accent-strong);margin:0}.share-link{gap:8px;display:flex}.share-link input{border-radius:8px;min-width:0;padding:4px 8px}.share-link .button{flex:none}.share-embed{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding-top:16px;display:flex}.share-embed-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.share-embed-options{flex-wrap:wrap;gap:8px 16px;display:flex}.share-embed-options label{cursor:pointer;align-items:center;gap:6px;display:flex}.share-embed-options input{width:auto;accent-color:var(--accent-strong);margin:0}.share-embed-step{align-items:center;gap:8px;display:flex}.share-embed-step select{border:1px solid var(--border);background:var(--input);min-width:0;color:inherit;font:inherit;border-radius:8px;outline:none;flex:1;padding:4px 8px}.share-embed-step select:focus{border-color:var(--accent)}.share-embed-code{border:1px solid var(--border);background:var(--input);border-radius:8px;padding:6px 8px}.share-embed-code:focus-within{border-color:var(--accent)}.share-embed-code textarea{word-break:break-all;background:0 0;border:0;border-radius:0;padding:0;font:11.5px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.share-embed .button{align-self:flex-end}.embed,.lost{--covered:0px;--sheet:0px;height:100%;display:flex}.embed-wait{place-self:center}.embed a.chip{color:inherit;text-decoration:none}.embed-open{background:var(--panel);backdrop-filter:blur(14px);color:inherit;grid-area:1/1;justify-self:start;align-items:center;gap:6px;text-decoration:none;display:flex}.embed-hint{z-index:90;border:1px solid var(--overlay-ring);background:var(--overlay);backdrop-filter:blur(8px);box-shadow:0 8px 28px var(--overlay-shadow);color:var(--overlay-text);pointer-events:none;user-select:none;border-radius:999px;place-self:center;padding:8px 16px;font-weight:600}.embed-done{background:var(--panel);backdrop-filter:blur(14px)}@media (width>760px){.embed.no-controls .stepbar{--width:min(640px, calc(var(--free) - 32px));margin-left:calc(var(--covered) + var(--free) / 2 - var(--width) / 2)}}.render-tray{border-radius:12px;flex-direction:column;grid-area:1/1/-1/2;place-self:start;gap:8px;min-width:0;max-width:100%;padding:4px;display:flex}.render-tray.open{padding:4px 6px 8px}.render-tray-toggle{background:0 0;border:0;border-radius:8px;align-self:flex-start;align-items:center;gap:8px;padding:5px 10px 5px 8px;font-size:13px;font-weight:600;display:flex}.render-tray-toggle:hover{background:var(--hover)}.render-tray-chevron{fill:none;width:12px;height:12px;stroke:var(--muted);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s}.render-tray.open .render-tray-chevron{transform:rotate(90deg)}.render-tray-count{background:var(--fill);min-width:20px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:1px 6px;font-size:11.5px}.render-tray .notice{margin:0 4px}.render-strip{scrollbar-width:thin;gap:10px;padding:2px 6px 4px;display:flex;overflow-x:auto}.render-add{width:84px;height:84px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex:none;place-items:center;padding:0;font-size:26px;display:grid}.render-add:hover:not(:disabled){background:var(--hover);color:var(--accent)}.render-card{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:9px;flex:none;height:84px;transition:border-color .15s,opacity .15s,box-shadow .15s;position:relative;overflow:hidden}.render-card:hover,.render-card:focus-visible{border-color:var(--line);outline:none}.render-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.render-card img{object-fit:cover;width:auto;height:100%;transition:filter .3s;display:block}.render-card.queued img,.render-card.rendering img{filter:var(--pending)}.render-card.failed img{filter:var(--failed)}.render-card.rendering:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 30%,#6ea8ff38 50%,#0000 70%) 0 0/250% 100%;animation:1.8s ease-in-out infinite sheen;position:absolute;inset:0}@keyframes sheen{0%{background-position:120% 0}to{background-position:-20% 0}}.render-card-status{background:var(--chip);color:var(--chip-text);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:600;display:flex;position:absolute;bottom:6px;left:6px}.render-card.failed .render-card-status{color:var(--danger)}.render-card-actions{opacity:0;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:5px;right:5px}.render-card:hover .render-card-actions,.render-card:focus-within .render-card-actions{opacity:1}.render-card-action{border:1px solid var(--border);background:var(--chip);min-width:24px;height:24px;color:var(--chip-text);border-radius:999px;place-items:center;padding:0;font-size:13px;line-height:1;text-decoration:none;display:grid}.render-card-action:hover{background:var(--chip-hover)}.render-card.dragging{opacity:.35}.render-card.drop-before{box-shadow:-6px 0 0 -1px var(--accent)}.render-card.drop-after{box-shadow:6px 0 0 -1px var(--accent)}.render-backdrop{z-index:150;padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(var(--covered) + 24px);background:var(--backdrop);backdrop-filter:blur(3px);place-items:center;display:grid;container-type:size}.render-dialog{--height:min(100cqh, 880px);width:min(1100px,100%);height:var(--height);flex-direction:column;gap:12px;max-width:100%;max-height:100%;padding:14px 16px 16px;display:flex;overflow:auto}.render-dialog header{align-items:center;gap:12px;display:flex}.render-dialog:focus{outline:none}.render-dialog header>.icon-button{margin-left:auto}.render-dialog-nav{font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin-left:auto;font-size:12.5px;display:flex}.render-dialog header>.render-dialog-nav+.icon-button{margin-left:4px}.chips.compact{flex-wrap:nowrap;gap:6px}.chips.compact .chip{padding:3px 11px;font-size:12.5px}.render-dialog-note{max-width:72ch;margin:-4px 0 0;font-size:13px;line-height:1.5}.render-dialog-image{flex:none;align-self:center;max-width:100%;position:relative}.render-dialog-image img{background:var(--surface);cursor:zoom-in;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:max(160px,100cqh - 335px);display:block}.render-full{padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);touch-action:none;user-select:none;background:#000;position:absolute;inset:0;overflow:hidden}.render-full.zoomed{cursor:grab}.render-full.zoomed:active{cursor:grabbing}.render-full-room{width:100%;height:100%}.render-full img{object-fit:contain;transform-origin:50%;will-change:transform;-webkit-user-drag:none;width:100%;height:100%;display:block}.render-full-close{top:calc(12px + var(--safe-top));right:calc(12px + var(--safe-right));backdrop-filter:blur(8px);color:#fff;background:#0d1222b3;border-color:#ffffff40;position:absolute}.render-full-close:hover:not(:disabled){background:#283454d9}.render-dialog header,.render-dialog footer,.render-dialog-note{flex:none}.render-dialog-text{background:var(--surface);width:min(900px,80vw);max-width:100%;max-height:max(160px,100cqh - 335px);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;flex:none;margin:0;padding:12px 14px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.render-dialog.with-side{--side:320px;--height:min(100cqh, 880px);width:min(1360px,100%);height:var(--height);flex-direction:row;align-items:stretch;gap:20px;max-width:100%;padding:16px;overflow:hidden}.render-dialog-main{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.render-dialog-view{background:var(--surface);border-radius:12px;flex:1;grid-template:minmax(0,1fr)/minmax(0,1fr);min-height:160px;display:grid;overflow:hidden}.render-dialog-view>*{place-self:stretch stretch}.render-dialog-view .render-dialog-image img{object-fit:contain;border-radius:0;width:100%;max-width:none;height:100%;max-height:none}.render-dialog-view .render-dialog-loading,.render-dialog-view .render-dialog-text{aspect-ratio:auto;background:0 0;width:auto;max-height:none}.render-dialog.with-side .render-dialog-view{min-height:0}.render-dialog-side{width:var(--side);flex-direction:column;flex:none;gap:14px;min-height:0;display:flex}.render-dialog-side header h3{margin:0;font-size:15px}.render-dialog-settings{scrollbar-width:thin;flex-direction:column;flex:1;gap:18px;min-height:0;display:flex;overflow:auto}@media (width<=760px){.render-dialog.with-side{flex-direction:column;gap:14px;width:100%;height:auto;overflow:auto}.render-dialog.with-side .render-dialog-view{flex:none;grid-template:auto/minmax(0,1fr)}.render-dialog.with-side .render-dialog-side{display:contents}.render-dialog.with-side .render-dialog-side>header{order:-1}.render-dialog.with-side .render-dialog-settings{flex:none;overflow:visible}.render-dialog.with-side .render-dialog-side>footer{border-top:1px solid var(--border);background:var(--panel);backdrop-filter:blur(14px);margin:0 -16px -16px;padding:12px 16px 16px;position:sticky;bottom:-16px}.render-dialog.with-side .render-dialog-view .render-dialog-image img,.render-dialog.with-side .render-dialog-view .render-dialog-text{max-height:45cqh}.render-dialog.with-side .render-dialog-loading{aspect-ratio:16/9}}.render-setting{flex-direction:column;flex:none;gap:8px;display:flex}.render-setting h4{margin:0;font-size:13px}.render-setting p{margin:0;font-size:12.5px;line-height:1.45}.style-tiles{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;display:grid}.style-tile{border:1px solid var(--border);min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;padding:0;font-size:12.5px;display:flex;overflow:hidden}.style-tile img{aspect-ratio:16/9;object-fit:cover;background:var(--surface);width:100%;display:block}.style-tile span{justify-content:space-between;align-items:baseline;gap:6px;padding:5px 9px 6px;display:flex}.style-tile small{color:var(--muted);font-size:10.5px}.style-tile:hover:not(:disabled){background:var(--fill)}.style-tile.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);color:var(--accent)}.style-tile:disabled{cursor:default}.render-references{flex-direction:column;flex:none;gap:6px;display:flex}.render-references header{align-items:center;gap:8px;display:flex}.render-references h4{margin:0;font-size:13px}.render-references p{margin:0;font-size:12.5px;line-height:1.45}.render-reference-row{scrollbar-width:thin;align-items:stretch;gap:8px;padding:2px 0;display:flex;overflow-x:auto}.render-reference{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex:none;height:72px;margin:0;position:relative;overflow:hidden}.render-reference img{object-fit:cover;width:auto;height:100%;display:block}.render-reference-remove{border:1px solid var(--border);background:var(--chip);width:20px;height:20px;color:var(--chip-text);border-radius:999px;place-items:center;padding:0;font-size:12px;line-height:1;display:grid;position:absolute;top:4px;right:4px}.render-reference-remove:hover{color:#fff;background:#c94a4a;border-color:#0000}.render-reference-add{border:1px dashed var(--line);width:84px;height:72px;color:var(--muted);background:0 0;border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;font-size:12.5px;font-weight:600;display:flex}.render-reference-add span{font-size:18px;font-weight:400;line-height:1}.render-reference-add:hover{border-color:var(--accent);color:var(--accent)}.render-dialog-loading{aspect-ratio:16/10;background:var(--surface);border-radius:10px;justify-content:center;align-items:center;gap:10px;width:min(760px,70vw);max-width:100%;font-size:14px;display:flex}.render-dialog-veil{background:var(--veil);color:var(--chip-text);border-radius:10px;justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex;position:absolute;inset:0}.render-dialog footer{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.render-dialog footer a.button{text-decoration:none}.render-dialog footer a.button:not(.primary){color:var(--text)}.render-dialog-error{flex-basis:100%;font-size:13px}.render-info{display:inline-flex;position:relative}.render-info-note{z-index:1;background:var(--surface-raised);border-radius:12px;width:max-content;max-width:min(280px,100vw - 60px);padding:8px 12px;font-size:13px;position:absolute;bottom:calc(100% + 8px);right:0}.spacer{flex:1}.play-overlay{z-index:90;margin:0 0 var(--sheet) var(--covered);border:1px solid var(--overlay-ring);background:var(--overlay);backdrop-filter:blur(8px);width:88px;height:88px;box-shadow:0 12px 40px var(--overlay-shadow);color:var(--overlay-text);border-radius:50%;place-self:center;place-items:center;padding:0 0 0 6px;transition:background .15s,transform .15s;display:grid}.play-overlay svg{width:40px;height:40px}.play-overlay:hover{background:var(--accent-strong);color:#fff;transform:scale(1.05)}@keyframes backdrop-in{0%{opacity:0}}@keyframes backdrop-out{to{opacity:0}}@keyframes dialog-in{0%{opacity:0;translate:0 10px;scale:.98}}@keyframes dialog-out{to{opacity:0;translate:0 6px;scale:.98}}:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog]){animation:.18s ease-out both backdrop-in}:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog])>*{animation:.24s cubic-bezier(.2,.8,.2,1) both dialog-in}:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog])[data-leaving]{animation:.16s ease-in both backdrop-out}:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog])[data-leaving]>*{animation:.16s ease-in both dialog-out}@media (prefers-reduced-motion:reduce){:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog]),:is(.overlay-backdrop,.render-backdrop,.gate[role=dialog])>*{animation:none}}@keyframes pop-in{0%{opacity:0;translate:0 var(--pop-from);scale:.95}}@keyframes pop-out{to{opacity:0;translate:0 calc(var(--pop-from) / 2);scale:.97}}.pop-up{--pop-from:-6px;transform-origin:100% 0;animation:.2s cubic-bezier(.2,.8,.2,1) both pop-in}.pop-up.render-info-note{--pop-from:6px;transform-origin:100% 100%}.pop-up[data-leaving]{animation:.14s ease-in both pop-out}@media (prefers-reduced-motion:reduce){.pop-up{animation:none}}.overlay-backdrop{z-index:300;padding:calc(16px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left));background:var(--backdrop);backdrop-filter:blur(2px);place-items:center;display:grid;position:fixed;inset:0}.confirm-dialog{flex-direction:column;gap:10px;width:min(380px,100%);padding:18px 18px 16px;display:flex}.confirm-dialog h3,.pick-dialog h3{margin:0;font-size:15px}.confirm-dialog p,.pick-dialog p{margin:0;font-size:13px;line-height:1.5}.confirm-dialog footer,.pick-dialog footer{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.pick-dialog{flex-direction:column;gap:10px;width:min(720px,100%);max-height:100%;padding:18px 18px 16px;display:flex}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;min-height:0;padding:2px;display:grid;overflow-y:auto}.pick-tile{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:0;position:relative;overflow:hidden}.pick-tile img{object-fit:cover;width:100%;display:block}.pick-tile:hover:not(:disabled),.pick-tile:focus-visible{border-color:var(--line)}.pick-tile.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pick-tile:disabled{opacity:.4}.pick-check{border:1.5px solid var(--chip-ring);background:var(--chip);width:22px;height:22px;color:var(--chip-text);border-radius:999px;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;top:7px;right:7px}.pick-tile.on .pick-check{background:var(--accent-strong);color:#fff;border-color:#0000}.button.danger{color:#fff;background:#c94a4a;border-color:#0000}.button.danger:hover:not(:disabled){background:#d95c5c}.danger{color:var(--danger)}.viewer{grid-template:minmax(0,1fr)/minmax(0,1fr);min-width:0;min-height:0;display:grid}.viewer>*{grid-area:1/1;min-width:0;min-height:0}.view-debug{z-index:1000;color:#ff6b6b;white-space:pre;pointer-events:none;background:linear-gradient(red,red) 50%/2px 28px no-repeat,linear-gradient(red,red) 50%/28px 2px no-repeat;border:2px solid red;align-items:flex-end;padding:4px 6px;font:10px/1.35 ui-monospace,Menlo,monospace;display:flex}.labels{z-index:1;isolation:isolate;pointer-events:none;grid-template:minmax(0,1fr)/minmax(0,1fr);transition:opacity .2s;display:grid;overflow:hidden}.labels.off{opacity:0}.label{visibility:hidden;opacity:0;grid-area:1/1;place-self:start;transition:opacity .2s;transform:translate(0)}.viewer.dark{--caption:#080c189e;--caption-ring:transparent;--caption-text:#e7ecf8;--caption-link:#c6cfe4}.viewer.light{--caption:#ffffffdb;--caption-ring:#0d13241f;--caption-text:#18213a;--caption-link:#4a5672}.node-label,.link-label{background:var(--caption);box-shadow:0 0 0 1px var(--caption-ring);color:var(--caption-text);white-space:nowrap;user-select:none;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;position:absolute}.link-label{color:var(--caption-link);font-style:italic;font-weight:400}.node-label.above{transform:translate(-50%,calc(-100% - 6px))}.centered{transform:translate(-50%,-50%)}.node-label.active{box-shadow:none;color:#fff;background:#4d8df7}.library{flex-direction:column;gap:12px;height:calc(100vh - 110px);min-height:420px;display:flex}.library-header{align-items:center;gap:12px;display:flex}.library-header h2{letter-spacing:-.01em;flex:1;font-size:19px}.library-body{flex:1;gap:16px;min-height:0;display:flex}.library-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));align-content:start;gap:10px;min-width:0;padding-right:4px;display:grid;overflow-y:auto}.model-card{background:var(--fill-faint);text-align:center;border:1px solid #0000;border-radius:12px;flex-direction:column;gap:4px;padding:6px;font-size:12.5px;display:flex;position:relative}.model-card:hover{background:var(--fill)}.model-card.selected{border-color:var(--accent)}.model-thumb{aspect-ratio:1;background:radial-gradient(circle at 50% 45%,#6ea8ff24,#0000 70%);border-radius:8px;display:block}.model-thumb img{width:100%;height:100%;display:block}.model-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-any{background:var(--tint);color:var(--accent);border-radius:999px;padding:0 6px;font-size:11px;font-weight:600;line-height:18px;position:absolute;top:8px;left:8px}.model-flag{width:18px;height:18px;color:var(--danger);background:#ff808033;border-radius:50%;font-size:12px;font-weight:600;line-height:18px;position:absolute;top:8px;right:8px}.model-detail{flex-direction:column;flex:none;align-self:flex-start;gap:8px;width:320px;max-height:100%;padding:14px 16px;display:flex;overflow-y:auto}.model-detail h3{font-size:16px}.model-view{aspect-ratio:1;background:var(--surface);border-radius:10px;flex:none;overflow:hidden}.model-facts{grid-template-columns:auto 1fr;gap:4px 12px;margin:4px 0 0;font-size:12.5px;display:grid}.model-facts dt{color:var(--muted)}.model-facts dd{overflow-wrap:anywhere;margin:0}@media (width<=760px){.app{--covered:var(--safe-left);--sheet-base:calc(149px + var(--safe-bottom));--sheet-open:max(0px, min(70dvh, 100dvh - var(--keyboard,0px)) - var(--sheet-base));--sheet:var(--sheet-open);--sheet-peek:24px;flex-direction:column}.app.sheet-shut{--sheet:0px}.library-body{flex-direction:column}.model-detail{width:auto}.sidebar{width:auto;margin-top:calc(-1 * var(--sheet));padding:0 calc(10px + var(--safe-right)) calc(10px + var(--safe-bottom)) calc(10px + var(--safe-left));background:var(--surface-sheet);backdrop-filter:none;box-shadow:none;border-width:1px 0 0;border-radius:16px 16px 0 0;flex:none;order:1;gap:0}@supports (-webkit-touch-callout:none){.app:not(.scene-only):after{content:"";background:var(--surface-sheet);flex:none;order:2;height:160px;margin-bottom:-160px}}.sheet-fold{height:calc(var(--sheet-peek) + var(--sheet));flex-direction:column;flex:none;gap:8px;margin-top:8px;display:flex;position:relative;overflow-y:clip}.sheet-fold:after{content:"";right:calc(-10px - var(--safe-right));bottom:0;left:calc(-10px - var(--safe-left));background:linear-gradient(to top, var(--fold-shadow), transparent);pointer-events:none;height:16px;position:absolute}.app.sheet-shut .sheet-fold>*{overflow:hidden}.account-popover{top:auto;bottom:calc(100% + 8px)}.sidebar>.composer{margin-top:8px}.sidebar-header{touch-action:none;user-select:none;margin-top:4px}.thread-empty{gap:6px;font-size:13px}.shared-note{gap:8px}.shared-note section{gap:4px}.shared-note section+section{padding-top:8px}.shared-note h3{font-size:15px}.shared-note h4{display:none}.shared-note .button{margin-top:4px}.how{gap:10px}.asks{display:none}input{font-size:16px}.stage{min-height:0}.stage-bottom{z-index:100;margin:0 calc(10px + var(--safe-right)) 10px calc(10px + var(--safe-left));pointer-events:none;flex-direction:column;align-self:end;align-items:flex-end;gap:8px;display:flex}.stage-bottom>*{pointer-events:auto}.view-controls{gap:6px;margin:0}.view-controls .icon-button{width:36px;height:36px}.view-controls .icon-button svg{width:17px;height:17px}.view-controls .tip{display:none}.stage-top{margin:calc(10px + var(--safe-top)) calc(10px + var(--safe-right)) 0 calc(10px + var(--safe-left));max-height:calc(100% - max(226px, var(--sheet) + 10px) - var(--safe-top));grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.stage-buttons{grid-area:1/2}.spec-toggle{padding:6px 12px;font-size:13px}.node-card{grid-area:2/1/auto/-1;justify-self:start;width:min(300px,100% - 44px);max-height:100%}.stepbar{touch-action:pan-y;align-self:stretch;width:auto;margin:0;padding:10px 14px}.fine-print{padding:0 44px;font-size:10.5px;bottom:calc(100% + 10px)}.stepbar>.icon-button{display:none}.stepbar-body{overflow:hidden}.stepbar h2{font-size:15.5px}.stepbar p{margin-top:6px;font-size:13.5px;line-height:1.4}.step-dots{margin-top:6px}.stepbar-text.from-right{animation:.22s ease-out step-from-right}.stepbar-text.from-left{animation:.22s ease-out step-from-left}.spec-editor{z-index:200;width:auto;padding-left:calc(16px + var(--safe-left));border-left:0;position:fixed;inset:0}.render-tray{z-index:1;grid-area:1/1}.render-tray.open{grid-column:1/-1;justify-self:stretch}.app:not(.scene-only) .stage-top:has(.render-tray.open) .stage-buttons{visibility:hidden}.render-backdrop{padding:calc(12px + var(--safe-top)) calc(12px + var(--safe-right)) calc(12px + var(--sheet)) calc(12px + var(--safe-left))}}@keyframes step-from-right{0%{opacity:0;transform:translate(28px)}}@keyframes step-from-left{0%{opacity:0;transform:translate(-28px)}}@media (prefers-reduced-motion:reduce){.render-card.rendering:after{animation:none}.stepbar-text{transition:none;animation:none!important}}.admin{--near:#fab219;height:100%;padding:calc(24px + var(--safe-top)) max(calc(24px + var(--safe-right)), calc((100% - 1120px) / 2)) calc(48px + var(--safe-bottom)) max(calc(24px + var(--safe-left)), calc((100% - 1120px) / 2));background:radial-gradient(ellipse at 50% 0%, var(--glow) 0%, var(--glow-edge) 45%, var(--bg) 100%);overflow-y:auto}.admin-header{align-items:baseline;gap:14px;margin-bottom:18px;display:flex}.admin-header h1{letter-spacing:-.01em;font-size:22px}.admin-header .account{gap:14px;margin-left:auto}.admin-views{gap:8px;display:flex}.admin-header .account span{color:var(--muted);flex:none}.admin a.link{text-decoration:none}.admin a.link:hover{text-decoration:underline}.admin-wait{place-items:center;padding:80px;display:grid}.admin-body{flex-direction:column;gap:16px;display:flex}.admin-body.stale{opacity:.55}.admin-filters{gap:8px;display:flex}.tiles{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;display:grid}.tile{flex-direction:column;gap:4px;padding:16px 18px;display:flex}.tile-label{font-size:12.5px}.tile-value{letter-spacing:-.02em;font-size:26px;font-weight:600;line-height:1.15}.tile-note{font-size:12px}.tile.hero{grid-column:span 2;gap:8px}.tile.hero .tile-value{font-size:48px}.meter{--state:var(--accent);background:color-mix(in srgb, var(--state) 18%, transparent);border-radius:4px;height:8px;overflow:hidden}.meter.near{--state:var(--near)}.meter.reached{--state:var(--danger)}.meter-fill{background:var(--state);border-radius:0 4px 4px 0;height:100%}.admin-section{min-width:0;padding:16px 18px 18px;overflow-x:auto}.admin-section h2{margin-bottom:10px;font-size:15px}.admin-note{margin-top:12px;font-size:12.5px}.admin-section-head{align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.admin-section-head h2{margin-bottom:0}.admin-section-head .button{margin-left:auto}.admin-more{margin-top:12px}.admin-views a{color:inherit;text-decoration:none}.admin a.user-link:hover code{text-decoration:underline}.user-head{align-items:center;gap:14px;margin-bottom:16px;display:flex}.user-head h2{overflow-wrap:anywhere;margin-bottom:2px;font-size:18px}.user-line{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.user-photo{background:var(--fill);border-radius:50%;flex:none;place-items:center;width:48px;height:48px;font-size:20px;font-weight:600;display:grid;overflow:hidden}.user-photo img{object-fit:cover;width:100%;height:100%}.user-tag{--state:var(--accent);border:1px solid color-mix(in srgb, var(--state) 45%, transparent);color:var(--state);border-radius:999px;padding:1px 7px;font-size:11.5px}.user-tag.danger{--state:var(--danger)}.user-facts{grid-template-columns:max-content 1fr;gap:8px 20px;font-size:13.5px;display:grid}.user-facts dt{color:var(--muted)}.user-facts dd{overflow-wrap:anywhere;min-width:0}.usage-table .project-title{text-overflow:ellipsis;width:40%;max-width:0;overflow:hidden}.usage-table .feature-toggle{vertical-align:middle;width:22px;height:22px;margin:-2px 0 -2px 8px;font-size:14px}.usage-table .moment{font-variant-numeric:tabular-nums}.usage-table{border-collapse:collapse;width:100%}.usage-table th{border-bottom:1px solid var(--border);color:var(--muted);text-align:left;white-space:nowrap;padding:6px 12px 8px;font-size:12px;font-weight:500}.usage-table td{border-bottom:1px solid var(--fill-faint);white-space:nowrap;padding:7px 12px}.usage-table tr:last-child td{border-bottom:0}.usage-table tbody tr:hover{background:var(--fill-faint)}.usage-table tr.current{background:var(--tint-faint)}.usage-table .number{font-variant-numeric:tabular-nums;text-align:right}.usage-table .spent{grid-template-columns:76px minmax(120px,1fr);align-items:center;gap:12px;display:grid}.usage-table .spent-column{width:46%}.usage-table .quota{justify-content:flex-end;align-items:center;gap:10px;display:flex}.usage-table .quota .number{margin-right:auto;padding-right:4px}.usage-table .quota .link{font-size:13px}.bar-track{height:8px;display:block}.bar{background:var(--accent);border-radius:0 4px 4px 0;min-width:0;height:100%;display:block}.flag{--state:var(--near);border:1px solid color-mix(in srgb, var(--state) 45%, transparent);color:var(--state);border-radius:999px;margin-left:10px;padding:1px 7px;font-size:11.5px}.flag.reached{--state:var(--danger)}@media (width<=1000px){.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.tile.hero{grid-column:1/-1}}@media (width<=760px){.admin{padding:calc(16px + var(--safe-top)) calc(16px + var(--safe-right)) calc(40px + var(--safe-bottom)) calc(16px + var(--safe-left))}.admin-header{flex-wrap:wrap;gap:6px 14px}.admin-header .account{width:100%;margin-left:0}.user-facts{grid-template-columns:1fr;gap:2px 0}.user-facts dd{margin-bottom:8px}}.legal{height:100%;padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(72px + var(--safe-bottom)) calc(24px + var(--safe-left));background:radial-gradient(ellipse at 50% 0%, var(--glow) 0%, var(--glow-edge) 45%, var(--bg) 100%);overflow-y:auto}.legal-header,.legal-content{max-width:760px;margin:0 auto}.legal-header{flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:44px;display:flex}.legal-header nav{gap:18px;margin-left:auto;font-size:13px;display:flex}.legal a{color:var(--accent);text-decoration:none}.legal a:hover{text-decoration:underline}.legal a.legal-home{color:var(--text);text-decoration:none}.legal-home .logo{width:220px}.legal-content{font-size:15px;line-height:1.7}.legal-content h1{letter-spacing:-.02em;font-size:clamp(28px,4vw,40px);font-weight:600;line-height:1.15}.legal-date{margin:8px 0 36px}.legal-content h2{border-top:1px solid var(--border);letter-spacing:-.01em;margin:40px 0 14px;padding-top:22px;font-size:20px;font-weight:600}.legal-content h3{margin:24px 0 10px;font-size:15px;font-weight:600}.legal-content p,.legal-content ul{margin:0 0 16px}.legal-content ul{padding-left:24px}.legal-content li{margin-bottom:8px}.legal-content li:last-child{margin-bottom:0}.legal-highlight{border:1px solid var(--border);background:var(--tint-faint);border-radius:12px;margin:22px 0;padding:14px 18px}.legal-highlight p{margin:0}@media (width<=760px){.legal{padding:calc(16px + var(--safe-top)) calc(18px + var(--safe-right)) calc(56px + var(--safe-bottom)) calc(18px + var(--safe-left))}.legal-header{margin-bottom:32px}.legal-content h2{font-size:18px}}.spec-lede{color:var(--text-soft);margin:12px 0 28px;font-size:17px}.spec-contents ol{columns:2;column-gap:32px;margin:0;padding-left:22px;font-size:14px}.spec-contents li{break-inside:avoid;margin-bottom:4px}.legal-content :is(h2,h3)[id]{scroll-margin-top:calc(16px + var(--safe-top))}.spec-fields{margin:0 0 20px}.spec-fields dt{border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding-top:10px;display:flex}.spec-fields dt:first-child{border-top:0;padding-top:0}.spec-fields dt .muted{font-size:13px}.spec-fields dd{color:var(--text-soft);margin:4px 0 12px}.spec-json{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:0 0 20px;padding:14px 16px;font:12.5px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto}.spec-json code{font:inherit;white-space:pre;background:0 0;padding:0}.spec-example summary{color:var(--accent);cursor:pointer;margin-bottom:14px}@media (width<=560px){.spec-contents ol{columns:1}}.spec-models dt{margin-top:18px;font-weight:600}.spec-models dt:first-child{margin-top:0}.spec-models dd{flex-wrap:wrap;gap:6px;margin:6px 0 0;display:flex}.spec-models code{white-space:nowrap}.spec-example-figure{margin:0 0 24px}.scene-example{border:1px solid var(--border);background:radial-gradient(at 50% 38%,#1a2440 0%,#0d1324 70%);border-radius:12px;grid-template:minmax(0,1fr)/minmax(0,1fr);height:clamp(260px,48vw,380px);margin-bottom:10px;display:grid;overflow:hidden}:root[data-theme=light] .scene-example{background:#fff}.scene-example>*{grid-area:1/1}.scene-example-done{z-index:90;place-self:start end;margin:10px}
