@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700&family=Rajdhani:wght@600;700&family=Space+Grotesk:wght@500;700&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--ink:#122335;--body:#3c4c5c;--muted:#566475;--bg:#faf8f4;--surface:#fff;--surface-2:#f2eee7;--line:#e5e0d8;--line-strong:#dad3c8;--accent:#ffa524;--accent-hover:#f59200;--on-accent:#122335;--link:#9a5b02;--link-hover:#7a4703;--ok:#0f766e;--danger:#a6322a;--danger-solid:#a6322a;--danger-solid-hover:#8c241e;--danger-line:#e8cfc9;--notice-bg:#fbebd2;--notice-line:#f2ddbb;--bubble:#122335;--on-bubble:#f2efe9;--track:#ede8df;--shadow-rgb:18 35 53;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--display:"Space Grotesk", "Segoe UI", sans-serif;--sans:"IBM Plex Sans", "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;font:16px/1.5 var(--sans);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--ink:#f1ece3;--body:#cfc8bc;--muted:#9ba7b6;--bg:#0e1620;--surface:#152131;--surface-2:#1b2a3c;--line:#263446;--line-strong:#33445a;--accent:#ffa524;--accent-hover:#ffb84d;--on-accent:#122335;--link:#ffb85c;--link-hover:#ffd08a;--ok:#4fc9b9;--danger:#ff8a80;--danger-line:#5b2b2a;--notice-bg:#33260f;--notice-line:#54401a;--bubble:#24374e;--on-bubble:#f2efe9;--track:#263446;--shadow-rgb:0 0 0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}.theme-toggle{border:1px solid var(--line,#e5e0d8);width:38px;height:38px;color:var(--muted,#566475);cursor:pointer;background:0 0;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,border-color .15s;display:inline-flex}.theme-toggle:hover{color:var(--ink,#122335);background:color-mix(in srgb, currentColor 8%, transparent)}.theme-toggle:focus-visible{outline:3px solid color-mix(in srgb, var(--accent,#ffa524) 70%, transparent);outline-offset:2px}@media (prefers-reduced-motion:no-preference){body,.app,.topbar,.rail{transition:background-color .2s,border-color .2s,color .2s}}body{background:var(--bg);min-height:100svh;margin:0}#root{min-height:100svh}.pb-chat-parked{display:none!important}a{color:var(--link)}a:hover{color:var(--link-hover)}.landing .theme-slot{display:inline-flex}html.landing-active,html.landing-active body,html.landing-active #root{height:auto;min-height:100svh;overflow:auto}.landing-boot{background:#f8f6f2;min-height:100svh}:root[data-theme=dark] .landing-boot{background:#0e1620}.landing{--bg:#f8f6f2;--panel:#f3f1ed;--card:#fff;--ink:#1b2433;--muted:#5b6472;--line:#e7e3dc;--orange:#f59e0b;--orange-deep:#d68a3a;--orange-ink:#8a4b08;--badge:#fbe6c4;--green:#3f7a5a;--header-bg:#fff;--eyebrow-bg:#f7ebd8;--eyebrow-ink:#9a5a14;--activate-from:#fff4de;--activate-to:#fbe6c4;--activate-line:#f1d5a3;--activate-ink:#5a4526;--tick-green-bg:#e4e9e4;--dot-off:#9aa39a;--flow-link:#d8d2c6;--flow-node-line:#e0b36b;--flow-coord-fill:#fff4de;--flow-pip:#c9c2b2;--flow-track:#e8e3d8;--flow-lapi:#8b97a8;--flow-api-line:#475569;--flow-api-fill:#f4f6f8;--flow-teal:#0e8f8f;--flow-web-line:#b9c4c4;--flow-web-fill:#f3f7f7;--flow-green:#2f9e6b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] .landing{--bg:#0e1620;--panel:#131e2c;--card:#162234;--ink:#f1ece3;--muted:#a3aebb;--line:#263446;--orange:#f59e0b;--orange-deep:#d68a3a;--orange-ink:#ffc46b;--badge:#3a2a10;--green:#5fcf9d;--header-bg:#111b29;--eyebrow-bg:#33260f;--eyebrow-ink:#ffc46b;--activate-from:#2e2210;--activate-to:#3a2a12;--activate-line:#5a4220;--activate-ink:#e8d9bd;--tick-green-bg:#1d3a30;--dot-off:#5d6a7a;--flow-link:#3a4a60;--flow-node-line:#b98a3a;--flow-coord-fill:#33260f;--flow-pip:#4a5a70;--flow-track:#26354a;--flow-lapi:#6f7f94;--flow-api-line:#8aa0b8;--flow-api-fill:#1a2738;--flow-teal:#2cb5b5;--flow-web-line:#3f5a5a;--flow-web-fill:#162a2a;--flow-green:#3fbf86;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.landing,.landing *{box-sizing:border-box}.landing{background:var(--bg);color:var(--ink);flex-direction:column;min-height:100vh;margin:0;font-family:IBM Plex Sans,system-ui,sans-serif;line-height:1.5;display:flex}.landing h1,.landing h2,.landing h3,.landing .brand{font-family:Outfit,system-ui,sans-serif}.landing header{background:var(--header-bg);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 32px;display:flex}.landing .brand-wrap{align-items:center;gap:14px;display:flex}.landing .brand{letter-spacing:-.5px;font-size:30px;font-weight:700}.landing .brand b{color:var(--orange);font-weight:700}.landing .logo-img{width:auto;height:48px;display:block}.landing nav{align-items:center;gap:12px;display:flex}.landing .btn{cursor:pointer;border:1px solid #0000;border-radius:14px;padding:12px 26px;font:600 17px Outfit,system-ui,sans-serif;text-decoration:none;transition:transform 80ms,box-shadow .15s,background .15s;display:inline-block}.landing .btn:hover{transform:translateY(-1px)}.landing .btn:focus-visible{outline:3px solid color-mix(in srgb, var(--ink) 35%, transparent);outline-offset:2px}.landing .btn-ghost{background:var(--card);border-color:var(--line);color:var(--ink)}.landing .btn-ghost:hover{box-shadow:0 2px 8px #0000000f}.landing .btn-primary{background:var(--orange);color:#3b2300}.landing .btn-primary:hover{background:#ffab1f;box-shadow:0 4px 14px #f59e0b55}.landing .btn-lg{border-radius:16px;padding:16px 38px;font-size:20px}.landing main{flex:1}.landing .hero{text-align:center;max-width:880px;margin:0 auto;padding:64px 24px 32px}.landing .eyebrow{background:var(--eyebrow-bg);color:var(--eyebrow-ink);border-radius:8px;margin-bottom:20px;padding:5px 12px;font:500 13px IBM Plex Mono,monospace;display:inline-block}.landing h1{letter-spacing:-1px;margin:0 0 20px;font-size:clamp(38px,6vw,64px);line-height:1.08}.landing .tagline{color:var(--ink);max-width:700px;margin:0 auto 10px;font:700 clamp(20px,3vw,26px) Outfit,system-ui,sans-serif}.landing .lede{color:var(--muted);max-width:640px;margin:0 auto 32px;font-size:20px}.landing .cta{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.landing .invite-note{color:var(--muted);margin-top:16px;font-size:14px}.landing .mascot{max-width:420px;margin:0 auto 28px}.landing .mascot img{width:100%;height:auto;display:block}.landing .gpu-hero{filter:drop-shadow(0 14px 18px #1b243326);width:min(420px,78%);height:auto;margin:0 auto 20px;display:block}.landing .hero-video{aspect-ratio:1296/744;background:#0b1220;border-radius:16px;width:min(640px,100%);height:auto;margin:0 auto 20px;display:block}.landing .gpu-mini{width:120px;height:auto;margin:0 0 12px;display:block}.landing .fan-spin{transform-box:fill-box;transform-origin:50%;animation:1.2s linear infinite fan-spin}@keyframes fan-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.landing .fan-spin{animation:none}}.landing .grid-intro{max-width:880px;margin:24px auto 0;padding:0 24px}.landing .activate{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:24px;padding:36px 32px}.landing .activate h2{margin:0 0 10px;font-size:clamp(26px,4vw,36px);line-height:1.15}.landing .activate p{max-width:640px;color:var(--muted);margin:0 auto;font-size:18px}.landing .realtime{text-align:center;max-width:760px;margin:56px auto 0}.landing .realtime h2{margin:0 0 12px;font-size:30px}.landing .realtime p{color:var(--muted);margin:0;font-size:18px}.landing .challenge{text-align:center;max-width:1040px;margin:48px auto 0;padding:0 24px}.landing .challenge h2{margin:0 0 22px;font-size:30px}.landing .challenge .cards{text-align:left;grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.landing .challenge .tick.amber{background:var(--badge);color:var(--orange-ink)}.landing .about{text-align:center;max-width:780px;margin:64px auto 0;padding:0 24px}.landing .about h2{margin:0 0 16px;font-size:32px}.landing .about p{color:var(--muted);text-align:left;margin:0 0 14px;font-size:17px;line-height:1.7}.landing .points{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1040px;margin:40px auto 0;padding:0 24px;display:grid}.landing .point{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px}.landing .point .tick{background:var(--tick-green-bg);width:32px;height:32px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:14px;font-weight:700;display:grid}.landing .point h3{margin:0 0 6px;font-size:20px}.landing .point p{color:var(--muted);margin:0;font-size:15.5px}.landing .features{text-align:center;max-width:880px;margin:64px auto 0;padding:0 24px}.landing .features h2{margin:0 0 24px;font-size:32px}.landing .feature-list{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:20px;gap:18px;margin:0;padding:28px 32px;list-style:none;display:grid}.landing .feature-list li{grid-template-columns:28px 1fr;align-items:start;gap:14px;display:grid}.landing .feature-list li:before{content:"✓";background:var(--badge);width:28px;height:28px;color:var(--orange-ink);border-radius:50%;place-items:center;margin-top:1px;font-size:14px;font-weight:700;display:grid}.landing .feature-list strong{font-family:Outfit,system-ui,sans-serif;font-size:18px;display:block}.landing .feature-list span{color:var(--muted);font-size:15.5px}.landing .how{text-align:center;max-width:880px;margin:64px auto 0;padding:0 24px}.landing .how h2{margin:0 0 24px;font-size:32px}.landing .steps{text-align:left;counter-reset:s;grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.landing .step{background:var(--panel);counter-increment:s;border-radius:16px;padding:20px}.landing .step:before{content:counter(s);background:var(--orange);color:#3b2300;border-radius:50%;place-items:center;width:28px;height:28px;margin-bottom:10px;font:700 15px Outfit,sans-serif;display:inline-grid}.landing .step h3{margin:0 0 4px;font-size:18px}.landing .step p{color:var(--muted);margin:0;font-size:15px}.landing .how-note{text-align:left;max-width:680px;color:var(--muted);margin:28px auto 0;font-size:16.5px;line-height:1.65}.landing .pipelines{text-align:left;flex-direction:column;gap:28px;max-width:1040px;margin:72px auto 0;padding:0 24px;display:flex}.landing .pipelines h2{letter-spacing:-.6px;margin:10px 0 12px;font-size:clamp(28px,4vw,40px);line-height:1.1}.landing .pipelines-lead{color:var(--muted);margin:0;font-size:17.5px;line-height:1.65}.landing .pipeline-steps{grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.landing .pipeline-steps li{background:var(--card);border:1px solid var(--line);border-radius:16px;grid-template-columns:40px 1fr;align-items:start;gap:12px;padding:14px 16px;display:grid}.landing .pipe-no{background:var(--badge);width:40px;height:40px;color:var(--orange-ink);border-radius:12px;place-items:center;font:700 15px Outfit,system-ui,sans-serif;display:grid}.landing .pipeline-steps h3{margin:2px 0 4px;font-size:18px}.landing .pipeline-steps p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.landing .pipelines-stage{min-width:0}.landing .hex-banner{color:#f8f1e6;isolation:isolate;background:radial-gradient(at 62% 48%,#57351d 0%,#211710 42%,#100d0b 76%);border:1px solid #e8be7744;border-radius:22px;grid-template-columns:minmax(0,1.22fr) minmax(220px,.88fr);align-items:center;gap:4px;width:100%;padding:32px 10px 28px 32px;font-family:Space Grotesk,system-ui,sans-serif;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #1b140c22}.landing .hex-banner:before{content:"";z-index:-1;opacity:.22;pointer-events:none;background-image:linear-gradient(30deg,#0000 48%,#e8b967 49% 50%,#0000 51%),linear-gradient(150deg,#0000 48%,#e8b967 49% 50%,#0000 51%);background-size:72px 124px;position:absolute;inset:-12%;-webkit-mask-image:radial-gradient(at 58%,#000 10%,#0000 72%);mask-image:radial-gradient(at 58%,#000 10%,#0000 72%)}.landing .hex-banner p{margin:0}.landing .hex-banner-kicker{color:#efbd70;text-transform:uppercase;letter-spacing:.24em;align-items:center;gap:13px;font-size:12px;font-weight:700;display:flex}.landing .hex-banner-kicker:before{content:"";background:#efbd70;width:38px;height:1px;box-shadow:0 0 10px #efbd70}.landing .hex-banner-title{letter-spacing:-.035em;text-transform:uppercase;color:#f8f1e6;margin:18px 0 14px;font-family:Rajdhani,Outfit,sans-serif;font-size:clamp(72px,8vw,108px);font-weight:700;line-height:.82}.landing .hex-banner-title span{display:block}.landing .hex-banner-title .game{color:#efbd70;text-shadow:0 0 28px #df985766}.landing .hex-banner-sub{color:#d7cbb9;max-width:28rem;font-size:clamp(16px,1.5vw,19px);line-height:1.55}.landing .hex-banner-status{text-transform:uppercase;letter-spacing:.17em;color:#f4d8ad;background:#2c2017aa;border:1px solid #cf965c88;align-items:center;gap:12px;margin-top:22px;padding:12px 16px;font-size:12px;display:inline-flex}.landing .hex-banner-pulse{background:#ffc56a;border-radius:50%;width:8px;height:8px;animation:1.8s infinite hex-banner-pulse;box-shadow:0 0 14px #ffb854}@keyframes hex-banner-pulse{50%{opacity:.35;box-shadow:0 0 3px #ffb854}}.landing .hex-banner-art{aspect-ratio:.9;justify-self:center;place-items:center;width:min(100%,460px);display:grid;position:relative}.landing .hex-banner-orbit,.landing .hex-banner-orbit-two{pointer-events:none;border:1px solid #ecc47e55;border-radius:50%;width:112%;height:74%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-27deg)}.landing .hex-banner-orbit-two{border-color:#7fd5df38;width:116%;height:60%;transform:translate(-50%,-50%)rotate(38deg)}.landing .hex-banner-frame{place-items:center;width:86%;height:90%;display:grid;position:relative}.landing .hex-banner-frame:before{content:"";clip-path:polygon(25% 2%,75% 2%,98% 50%,75% 98%,25% 98%,2% 50%);filter:drop-shadow(0 0 18px #d1844977);background:linear-gradient(140deg,#f2ca83,#9e5431 42%,#e8b86d 72%,#563325);position:absolute;inset:0}.landing .hex-banner-frame:after{content:"";clip-path:polygon(25% 2%,75% 2%,98% 50%,75% 98%,25% 98%,2% 50%);background:linear-gradient(145deg,#10100f,#292019);position:absolute;inset:4%}.landing .hex-banner-frame video{z-index:1;object-fit:cover;object-position:center 32%;clip-path:polygon(25% 0,75% 0,100% 28%,100% 74%,75% 100%,25% 100%,0 74%,0 28%);filter:saturate(.94)contrast(1.04);background:#1a1410;width:78%;height:84%;position:relative}.landing .hex-banner-corner{z-index:2;color:#efc87e;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;font-size:11px;position:absolute}.landing .hex-banner-corner-top{top:8%;right:0}.landing .hex-banner-corner-bottom{color:#9ed8df;bottom:12%;left:0;transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.landing .hex-banner-pulse{animation:none}}@media (width<=860px){.landing .pipelines{gap:24px}.landing .pipeline-steps{grid-template-columns:1fr}.landing .hex-banner{text-align:center;grid-template-columns:1fr;padding:22px 16px 26px}.landing .hex-banner-art{grid-row:1;width:min(78vw,340px);margin:0 auto 8px}.landing .hex-banner-kicker{justify-content:center}.landing .hex-banner-kicker:before{width:24px}.landing .hex-banner-title{margin:12px 0 10px;font-size:clamp(64px,18vw,92px)}.landing .hex-banner-sub{margin:0 auto}.landing .hex-banner-status{margin-top:16px}}.landing .flow{background:var(--card);border:1px solid var(--line);border-radius:22px;max-width:760px;margin:32px auto 0;padding:20px 12px 14px}.landing .flow svg{width:100%;height:auto;display:block}.landing .flow figcaption{text-align:center;color:var(--muted);margin-top:6px;font-size:14px}.landing .flow .link{fill:none;stroke:var(--flow-link);stroke-width:2px;stroke-dasharray:5 6}.landing .flow .node rect,.landing .flow .node circle{fill:var(--card);stroke:var(--flow-node-line);stroke-width:2.5px}.landing .flow .coord circle{fill:var(--flow-coord-fill);stroke:#f59e0b}.landing .flow .pulse{fill:none;stroke:#f59e0b;stroke-width:2px;opacity:.5;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite pulse}@keyframes pulse{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}.landing .flow .ring{fill:none;stroke:#f59e0b;stroke-width:3px;stroke-dasharray:8 6}.landing .flow text{text-anchor:middle;font-family:Outfit,system-ui,sans-serif}.landing .flow .t1{fill:var(--ink);font-size:20px;font-weight:700}.landing .flow .t2,.landing .flow .t3{fill:var(--muted);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px}.landing .flow .t1.s{font-size:17px}.landing .flow .pip{fill:none;stroke:var(--flow-pip);stroke-width:1.6px}.landing .flow .ringg{fill:none;stroke:var(--flow-green);stroke-width:3px;stroke-dasharray:8 6}.landing .flow .track{fill:var(--flow-track)}.landing .flow .bl{fill:#fff;font-size:13px;font-weight:700}.landing .flow .off{fill:#fff;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;font-weight:600}.landing .flow .t1.s2{font-size:15px}.landing .flow .t2.s3{font-size:12px}.landing .flow .t2.b{fill:var(--ink);font-weight:600}.landing .flow .lapi{stroke:var(--flow-lapi)}.landing .flow .api rect{stroke:var(--flow-api-line);fill:var(--flow-api-fill)}.landing .flow .srv rect{stroke:var(--flow-teal)}.landing .flow .web rect{stroke:var(--flow-web-line);fill:var(--flow-web-fill)}.landing .flow .ringt{fill:none;stroke:var(--flow-teal);stroke-width:3px;stroke-dasharray:8 6}.landing .flow .t2.kc{fill:var(--green);font-size:12px;font-weight:600}.landing .flow .t1.sm{font-size:17px}.landing .flow .t2.sm{font-size:13px}.landing .flow .cap{fill:var(--ink);font-size:19px;font-weight:600}.landing .flow .earn-mark{fill:#3b2300;font-size:11px;font-weight:700}.landing .flow .earn-sign{fill:#3b2300;font-size:8px;font-weight:700}.landing .flow .earn-num{fill:var(--ink);font-size:13px;font-weight:700}@media (prefers-reduced-motion:reduce){.landing .flow .pulse{opacity:0;animation:none}}.landing .final{max-width:880px;margin:64px auto;padding:0 24px}.landing .final-card{background:var(--card);border:1px solid var(--line);text-align:center;border-radius:24px;padding:40px 24px}.landing .final-card h2{margin:0 0 8px;font-size:30px}.landing .final-card p{color:var(--muted);margin:0 0 24px}.landing footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:18px 32px;font-size:14px;display:flex}.landing .live{align-items:center;gap:8px;display:inline-flex}.landing .dot{background:var(--dot-off);border-radius:50%;width:9px;height:9px}.landing .dot.on{background:var(--green)}@media (width<=760px){.landing header{padding:12px 16px}.landing .brand{font-size:24px}.landing nav .btn{padding:10px 16px;font-size:15px}.landing .points,.landing .steps,.landing .challenge .cards{grid-template-columns:1fr}.landing .hero{padding-top:40px}.landing footer{padding:16px}}.nav-account{border-top:1px solid var(--line);background:var(--surface-2);z-index:2;flex-shrink:0;margin-top:auto;padding-top:8px}.nav-account-btn{width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:6px 8px;font-size:14px;font-weight:600;display:flex}.nav-account-btn:hover,.nav-account-btn[aria-expanded=true]{background:var(--surface)}.nav-account-btn:focus-visible{outline:2px solid var(--link);outline-offset:2px}.nav-account-avatar{background:var(--accent);width:28px;height:28px;color:var(--on-accent);border-radius:999px;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.nav-account-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.account-menu{z-index:70;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 12px 32px rgb(var(--shadow-rgb) / 18%);border-radius:12px;flex-direction:column;padding:6px;display:flex;position:fixed}.account-menu [role=menuitem]{font:inherit;text-align:left;min-height:40px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:14px;font-weight:600}.account-menu [role=menuitem]:hover,.account-menu [role=menuitem]:focus-visible{background:var(--surface-2);outline:none}.settings-layer{z-index:90;place-items:center;display:grid;position:fixed;inset:0}.settings-backdrop{background:color-mix(in srgb, var(--ink) 42%, transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.settings-dialog{z-index:1;border:1px solid var(--line);background:var(--surface);width:80vw;min-width:0;height:80vh;min-height:0;box-shadow:0 24px 64px rgb(var(--shadow-rgb) / 22%);border-radius:16px;display:flex;position:relative;overflow:hidden}.settings-nav{background:var(--surface-2);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:4px;width:232px;padding:16px 12px;display:flex;overflow-y:auto}.settings-kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:4px 12px 8px;font-size:12px;font-weight:700}.settings-nav button{width:100%;min-height:40px;color:var(--body);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:0 12px;font-size:14px;font-weight:600}.settings-nav button:hover{color:var(--ink);background:color-mix(in srgb, var(--surface) 70%, transparent)}.settings-nav button[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:inset 3px 0 0 var(--accent);font-weight:700}.settings-nav button:focus-visible{outline:2px solid var(--link);outline-offset:2px}.settings-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.settings-main-bar{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 12px 24px;display:flex}.settings-main-bar h2{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.35rem;font-weight:700}.settings-close{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.settings-close:hover{color:var(--ink);background:var(--surface-2)}.settings-close:focus-visible{outline:2px solid var(--link);outline-offset:2px}.settings-body{flex:1;min-height:0;padding:24px;overflow-y:auto}.settings-body p{max-width:40rem;color:var(--body);margin:0;font-size:14px;line-height:1.5}@media (width<=52rem){.settings-dialog{flex-direction:column}.settings-nav{border-right:0;border-bottom:1px solid var(--line);flex-flow:row;align-items:center;gap:4px;width:100%;padding:10px;overflow-x:auto}.settings-kicker{flex-shrink:0;margin:0 8px 0 4px}.settings-nav button{white-space:nowrap;width:auto}.settings-nav button[aria-current=page]{box-shadow:inset 0 -3px 0 var(--accent)}}.confirm-layer{z-index:80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.confirm-backdrop{background:color-mix(in srgb, var(--ink) 36%, transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.confirm-bubble{z-index:1;border:1px solid var(--line);background:var(--surface);width:min(100%,26rem);box-shadow:0 18px 48px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:18px;flex-direction:column;gap:12px;padding:22px 22px 18px;display:flex;position:relative}.confirm-bubble h2{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.35rem;font-weight:700}.confirm-body{color:var(--body);margin:0;font-size:14px;line-height:1.45}.confirm-body p{margin:0 0 8px}.confirm-body p:last-child{margin-bottom:0}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}html,body,#root{height:100svh;overflow:hidden}.app{background:var(--bg);flex-direction:column;height:100svh;display:flex;overflow:hidden}.topbar{background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;height:68px;padding:0 20px 0 24px;display:flex}.logo{width:auto;height:34px;display:block}.topbar.portal-topbar{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;display:grid}.portal-brand,.portal-account{align-items:center;gap:12px;min-width:0;display:flex}.portal-account{justify-self:end}.surface-switch{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex}.surface-switch a{min-height:36px;color:var(--body);white-space:nowrap;border-radius:999px;align-items:center;padding:0 16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.surface-switch a:hover{color:var(--ink)}.surface-switch a[aria-current=page]{background:var(--accent);color:var(--on-accent)}.surface-switch a[aria-current=page]:hover{color:var(--on-accent)}.surface-switch a:focus-visible{outline:2px solid var(--link);outline-offset:2px}.spacer{flex-grow:1}.btn{font:inherit;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink);border-radius:10px;padding:0 18px;font-size:14px;font-weight:600}.btn:hover:not(:disabled){border-color:var(--muted)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.btn-primary:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover)}.btn-quiet{background:var(--surface)}.btn-link{align-items:center;text-decoration:none;display:inline-flex}.btn-link:hover{text-decoration:none}.btn-primary.btn-link,.btn-primary.btn-link:hover{color:var(--on-accent)}.btn-quiet.btn-link,.btn-quiet.btn-link:hover{color:var(--ink)}.account-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:14rem;font-size:14px;font-weight:600;overflow:hidden}.btn-danger{color:var(--danger);border-color:var(--danger-line);background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.btn-stop{border-color:var(--danger-solid);background:var(--danger-solid);color:#fff;justify-content:center;align-items:center;width:38px;min-width:38px;padding:0;display:inline-flex}.btn-stop:hover:not(:disabled){border-color:var(--danger-solid-hover);background:var(--danger-solid-hover);color:#fff}.stop-mark{background:currentColor;border-radius:2px;flex-shrink:0;width:11px;height:11px}.btn-danger:hover:not(:disabled){border-color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, var(--surface))}.btn:focus-visible{outline:2px solid var(--link);outline-offset:2px}.notice{background:var(--notice-bg);border-bottom:1px solid var(--notice-line);flex-shrink:0;align-items:center;gap:16px;padding:12px 24px;display:flex}.notice p{color:var(--body);flex-grow:1;margin:0;font-size:13px;line-height:1.5}.notice .btn{min-height:36px;padding:0 14px;font-size:13px}.body{flex:1;min-height:0;display:flex}.rail{background:var(--surface-2);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:12px;width:268px;min-height:0;padding:18px 16px 12px;display:flex;overflow:hidden}.rail-scroll{flex-direction:column;flex:1;gap:14px;min-height:0;display:flex;overflow:hidden auto}.rail-toggle{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:44px;color:var(--ink);font:inherit;cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;display:flex}.rail-toggle:hover{border-color:var(--muted)}.rail-toggle:focus-visible{outline:2px solid var(--link);outline-offset:2px}.rail-toggle .icon{flex-shrink:0}.rail-toggle-label{color:var(--ink);flex-shrink:0;font-size:12px;font-weight:600}.rail-toggle-active{min-width:0;color:var(--body);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.rail-chevron{width:16px;height:16px;color:var(--muted);flex-shrink:0;transition:transform .28s}.rail-expanded .rail-chevron{transform:rotate(180deg)}.rail-drop{grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.2,.8,.2,1);display:grid}.rail-drop-open{grid-template-rows:1fr}.rail-drop-clip{min-height:0;overflow:hidden}.rail-drop-clip>.rail-panel{opacity:0;transition:opacity .28s,transform .38s cubic-bezier(.2,.8,.2,1);transform:translateY(-10px)}.rail-drop-open>.rail-drop-clip>.rail-panel{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.rail-chevron,.rail-drop,.rail-drop-clip>.rail-panel{transition:none}}.card{background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;flex-direction:column;gap:11px;padding:14px;display:flex}.card-title{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:12px;font-weight:600;display:flex}.icon{width:16px;height:16px;color:var(--ok);flex-shrink:0}.meter{background:var(--track);border-radius:999px;height:6px;overflow:hidden}.meter span{background:var(--ok);height:100%;transition:width .2s;display:block}.micro{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.card-actions{gap:7px;display:flex}.card-actions .btn{flex-grow:1;min-height:36px;padding:0 10px;font-size:12px}.btn-block{width:100%}.btn-tiny{min-height:32px;padding:0 10px;font-size:11px}.chat-list{flex-direction:column;gap:8px;max-height:min(42vh,22rem);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.chat-row{border:1px solid var(--line);background:var(--surface-2);border-radius:10px;flex-direction:column;gap:6px;padding:8px;display:flex}.chat-row-active{border-color:var(--accent);background:var(--notice-bg)}.chat-select{font:inherit;text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;width:100%;min-height:36px;padding:4px 2px}.chat-select:disabled{opacity:.55;cursor:not-allowed}.chat-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.chat-row-actions{gap:6px;display:flex}.chat-row-actions .btn{flex:1}.chat-rename input{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;min-height:36px;padding:8px 10px;font-size:13px;font-weight:600}.chat-rename input:focus{outline:2px solid var(--link);outline-offset:1px}.chat-sections{flex-direction:column;gap:10px;max-height:min(42vh,22rem);display:flex;overflow-y:auto}.chat-section{flex-direction:column;gap:4px;display:flex}.chat-section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;padding:0 2px;font-size:11px;font-weight:600}.chat-list-compact{gap:2px;max-height:none;overflow:visible}.chat-row-compact{background:0 0;border-color:#0000;border-radius:8px;flex-direction:row;align-items:center;gap:2px;padding:0 2px 0 0}.chat-row-compact:hover,.chat-row-compact:focus-within{background:var(--surface-2)}.chat-row-compact.chat-row-active{border-color:var(--accent);background:var(--notice-bg)}.chat-row-compact.chat-row-renaming{padding:2px}.chat-row-compact .chat-rename{flex:1;min-width:0}.chat-row-compact .chat-rename input{min-height:30px;padding:4px 8px}.chat-row-compact .chat-select{border-radius:8px;flex:1;min-width:0;min-height:32px;padding:6px 8px}.chat-row-compact .chat-select:focus-visible{outline:2px solid var(--link);outline-offset:-2px}.chat-row-compact .chat-title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:block;overflow:hidden}.chat-row-compact.chat-row-active .chat-title{font-weight:600}.chat-more{width:28px;height:28px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.chat-row-compact:hover .chat-more,.chat-row-compact:focus-within .chat-more,.chat-more-open{opacity:1}.chat-more:hover,.chat-more-open{background:var(--line);color:var(--ink)}.chat-more:focus-visible{opacity:1;outline:2px solid var(--link);outline-offset:-2px}.chat-more:disabled{cursor:not-allowed;opacity:0}@media (hover:none){.chat-more:not(:disabled){opacity:1}}.chat-menu{z-index:50;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / 14%);border-radius:10px;flex-direction:column;padding:4px;display:flex;position:fixed}.chat-menu [role=menuitem]{font:inherit;text-align:left;min-height:32px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 10px;font-size:13px}.chat-menu [role=menuitem]:hover,.chat-menu [role=menuitem]:focus-visible{background:var(--surface-2);outline:none}.chat-menu .chat-menu-danger{color:var(--danger)}.warn{color:var(--link-hover);background:var(--notice-bg);border:1px solid var(--notice-line);border-radius:8px;margin:0;padding:8px 10px;font-size:12px;line-height:1.45}.chat{flex-direction:column;flex:1;min-width:0;min-height:0;padding:0 40px 22px;display:flex}.stream{overscroll-behavior:contain;flex:auto;min-height:0;padding:28px 0 20px;overflow-y:auto}.hero{text-align:center;max-width:40rem;margin:0 auto;padding:6vh 0 2rem}.hero h1{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 10px;font-size:clamp(2rem,4vw,2.6rem);font-weight:700;line-height:1.1}.hero-mascot{object-fit:contain;width:min(100%,26rem);max-width:100%;height:auto;margin:1.1rem auto 1.25rem;animation:.55s ease-out both hero-mascot-in;display:block}@media (prefers-reduced-motion:reduce){.hero-mascot{animation:none}}@keyframes hero-mascot-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero p{color:var(--body);margin:0;font-size:1rem;line-height:1.55}.thread{flex-direction:column;gap:20px;max-width:44rem;margin:0 auto;padding:0;list-style:none;display:flex}.msg{min-width:0;max-width:85%}.msg-stack{flex-direction:column;gap:6px;min-width:0;max-width:100%;display:flex}.msg .role{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.msg-body{word-break:break-word;min-width:0;max-width:100%;margin:0;line-height:1.6}.msg-body>:first-child{margin-top:0}.msg-body p{white-space:pre-wrap;margin-bottom:0;margin-left:0;margin-right:0}.msg-body .msg-source{color:var(--muted);font-size:.82em}.msg-body .msg-source-link{white-space:nowrap}.msg-body .msg-source-btn{border:1px solid var(--accent);background:var(--accent);height:18px;min-height:0;color:var(--on-accent);vertical-align:middle;border-radius:6px;align-items:center;gap:3px;margin-left:2px;padding:0 6px;font-size:10px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.msg-body .msg-source-btn:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:var(--on-accent)}.msg-body .msg-source-btn:focus-visible{outline:2px solid var(--link);outline-offset:2px}.msg-body .msg-source-glyph{flex-shrink:0;width:10px;height:10px;display:block}.msg-body .msg-math{font-variant-numeric:tabular-nums}.msg-body strong{font-weight:600}.msg-body a.msg-link{overflow-wrap:anywhere}.msg-user .msg-body a.msg-link{color:var(--accent)}.msg-user .msg-body a.msg-link:hover{color:var(--accent-hover)}.msg-body>*+*{margin-top:.9em}.msg-body .msg-table-wrap{border:1px solid var(--line);border-radius:8px;max-width:100%;overflow-x:auto}.msg-body .msg-table{border-collapse:collapse;width:100%;font-size:.92em;line-height:1.45}.msg-body .msg-table th,.msg-body .msg-table td{vertical-align:top;text-align:start;word-break:normal;overflow-wrap:break-word;padding:7px 10px}.msg-body .msg-table th{background:var(--surface-2);font-weight:600}.msg-body .msg-table tr+tr th,.msg-body .msg-table tr+tr td{border-top:1px solid var(--line)}.msg-body .msg-table .msg-align-center{text-align:center}.msg-body .msg-table .msg-align-right{text-align:right;font-variant-numeric:tabular-nums}.msg-user .msg-body .msg-table-wrap{border-color:#ffffff38}.msg-user .msg-body .msg-table th{color:inherit;background:#ffffff14}.msg-user .msg-body .msg-table tr+tr th,.msg-user .msg-body .msg-table tr+tr td{border-top-color:#ffffff2e}.msg-body .msg-rule{border:0;border-top:1px solid var(--line);height:0;margin-bottom:0;margin-left:0;margin-right:0}.msg-user .msg-body .msg-rule{border-top-color:#ffffff38}.msg-body .msg-code{max-width:100%;font-family:var(--mono);white-space:pre;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;margin-bottom:0;margin-left:0;margin-right:0;padding:10px 12px;font-size:.88em;line-height:1.45;overflow-x:auto}.msg-user .msg-body .msg-code{color:inherit;background:#ffffff14;border-color:#ffffff2e}.msg-body .msg-heading{font-family:var(--display);letter-spacing:-.02em;margin-bottom:0;margin-left:0;margin-right:0;font-weight:600;line-height:1.3}.msg-body .msg-heading-1{font-size:1.2em}.msg-body .msg-heading-2{font-size:1.12em}.msg-body .msg-heading-3{font-size:1.06em}.msg-body .msg-heading-4,.msg-body .msg-heading-5,.msg-body .msg-heading-6{font-size:1em}.msg-body .msg-list{margin-bottom:0;margin-left:0;margin-right:0;padding-left:1.5em;list-style-position:outside}.msg-body ul.msg-list{list-style-type:disc}.msg-body ol.msg-list{counter-reset:list-item;list-style-type:decimal}.msg-body .msg-list li{white-space:pre-wrap;margin:.2em 0;display:list-item}.msg-user{align-self:flex-end}.msg-user .msg-stack{align-items:flex-end}.msg-user .msg-body{background:var(--bubble);color:var(--on-bubble);border-radius:16px 16px 4px;padding:14px 18px}.msg-assistant .msg-body{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:16px 20px}.msg-searching{min-width:15ch;color:var(--muted);margin:0;font-weight:600;animation:1.1s ease-in-out infinite searching-pulse}@keyframes searching-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.msg-searching{animation:none}}.msg-summary .msg-body{background:var(--surface-2);color:var(--body);border-style:dashed;font-size:.94em}.composer{background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;flex-shrink:0;align-items:flex-end;gap:10px;width:100%;max-width:44rem;margin:0 auto;padding:7px 8px 7px 16px;display:flex}.composer:focus-within{border-bottom-color:var(--link);box-shadow:0 2px 0 0 var(--link)}.composer textarea{resize:none;min-width:0;height:38px;max-height:148px;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:9px 0;line-height:1.4;overflow-y:auto}.composer textarea:focus,.composer textarea:focus-visible{box-shadow:none;outline:none}.composer textarea:disabled{opacity:.6}.composer .btn{flex-shrink:0;min-height:38px;padding:0 16px}.composer .btn-stop{width:38px;min-width:38px;padding:0}.composer-note{width:100%;max-width:44rem;color:var(--body);margin:10px auto 0;font-size:.9rem}.composer .pill{flex-shrink:0;margin-bottom:8px}.pill{color:var(--body);border:1px solid var(--line);border-radius:999px;align-items:center;gap:7px;padding:6px 11px;font-size:12px;display:inline-flex}.dot{background:var(--muted);border-radius:999px;width:7px;height:7px}.dot-live{background:var(--ok)}.footnote{width:100%;max-width:44rem;color:var(--muted);text-align:center;margin:8px auto 0;font-size:11px}@media (height<=40rem){.chat>.footnote{display:none}}.error{width:100%;max-width:44rem;color:var(--danger);margin:10px auto 0;font-size:.9rem}.arcade{flex-direction:column;flex:1;gap:12px;min-width:0;min-height:0;padding:18px 24px 22px;display:flex}.arcade-bar{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.arcade-bar .btn{flex-shrink:0}.arcade-title{font-family:var(--display);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:1.4rem;font-weight:700}.game-shot{object-fit:contain;object-position:center top;border:1px solid var(--line-strong);background:var(--bubble);border-radius:12px;flex:1;width:100%;min-height:0;display:block}.arcade-empty{text-align:center;max-width:32rem;margin:10vh auto 0}.arcade-empty h1{font-family:var(--display);color:var(--ink);margin:0 0 8px}.coming-soon{flex:1;min-width:0;min-height:0;padding:0;display:flex}.coming-soon-frame{background:#100d0b;border:0;flex:1;width:100%;min-height:0}.body{position:relative}.side-drawer{z-index:20;pointer-events:none;width:min(18rem,85vw);transition:transform .32s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;bottom:0;right:0;transform:translate(100%)}.side-drawer-open{transform:translate(0)}.side-drawer-panel{background:var(--surface-2);border-left:1px solid var(--line);height:100%;box-shadow:-12px 0 32px color-mix(in srgb, var(--ink) 0%, transparent);pointer-events:auto;padding:18px 16px;transition:box-shadow .32s;overflow-y:auto}.side-drawer-open .side-drawer-panel{box-shadow:-12px 0 32px color-mix(in srgb, var(--ink) 10%, transparent)}.side-drawer-tab{border:1px solid var(--line-strong);background:var(--surface);width:22px;height:64px;color:var(--muted);cursor:pointer;pointer-events:auto;box-shadow:-2px 0 8px color-mix(in srgb, var(--ink) 6%, transparent);border-right:0;border-radius:10px 0 0 10px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.side-drawer-tab:hover{color:var(--ink);background:var(--surface-2)}.side-drawer-tab:focus-visible{outline:2px solid var(--link);outline-offset:2px}.side-drawer-tab svg{transition:transform .32s}.side-drawer-open .side-drawer-tab svg{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.side-drawer,.side-drawer-panel,.side-drawer-tab svg{transition:none}}.nodes{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.node{border-bottom:1px solid var(--line);padding:.35rem 0}.node-id{font-family:var(--mono);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0 0 .2rem;font-size:.82rem;font-weight:500;overflow:hidden}.facts{grid-template-columns:auto 1fr;align-items:baseline;gap:.08rem .55rem;margin:0;display:grid}.facts dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;font-size:.58rem}.facts dd{color:var(--ink);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.78rem;overflow:hidden}.facts dd.model{font-size:.72rem}.facts dd.status-available{color:var(--ok)}.facts dd.status-offline{color:var(--danger)}@media (width<=52rem){html,body,#root,.app{height:100svh;overflow:hidden}.composer .pill{display:none}.body{flex-direction:column;min-height:0}.rail{border-right:0;border-bottom:1px solid var(--line);flex-shrink:0;gap:10px;width:100%;max-height:min(42svh,22rem);padding:10px 12px;overflow:hidden}.rail-scroll{overscroll-behavior:contain;overflow:hidden auto}.chat{min-height:0;padding:0 16px calc(12px + env(safe-area-inset-bottom,0px));flex:1}.arcade{padding:10px 12px calc(12px + env(safe-area-inset-bottom,0px))}.arcade-bar{flex-direction:column;align-items:flex-start}.stream{padding-bottom:24px}.composer{z-index:2;background:var(--surface);position:sticky;bottom:0}.topbar{gap:8px;padding:0 12px 0 16px}.topbar.portal-topbar{grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:68px;padding-top:8px;padding-bottom:8px}.topbar.portal-topbar .surface-switch{grid-column:1/-1;justify-self:start;max-width:100%}.topbar.portal-topbar .surface-switch a,.btn{padding:0 12px}.msg{max-width:100%}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.msg-tools{gap:8px;margin-top:2px;display:flex}.train-btn{appearance:none;font:inherit;letter-spacing:.04em;color:var(--muted);cursor:pointer;opacity:.7;background:0 0;border:0;padding:2px 4px;font-size:11px}.train-btn:hover:not(:disabled),.train-btn:focus-visible{opacity:1;text-decoration:underline}.train-btn:disabled{cursor:default}.train-note{flex-direction:column;gap:4px;margin-top:12px;font-size:13px;display:flex}.train-note textarea{resize:vertical;width:100%;font:inherit}.train-error{color:var(--danger,#b3261e);margin:8px 0 0;font-size:13px}.nodes-scroll{flex:1;min-width:0;min-height:0;overflow-y:auto}.nodes-page{flex-direction:column;gap:18px;max-width:1120px;margin:0 auto;padding:28px 28px 48px;display:flex}.nodes-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.account-gate{align-items:flex-start;max-width:36rem}.nodes-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:12px;font-weight:600}.nodes-heading h1{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:2px 0 0;font-size:2.4rem;font-weight:700;line-height:1.05}.nodes-sample{color:var(--muted);margin:6px 0 0;font-size:13px}.nodes-updated{color:var(--muted);flex-shrink:0;align-items:center;gap:12px;font-size:14px;display:flex}.nodes-updated .btn{min-height:40px}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px 14px}.stat-label{color:var(--muted);margin:0;font-size:13px}.stat-value{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;margin:8px 0 4px;font-size:2rem;font-weight:700;line-height:1}.stat-of{color:var(--muted);font-size:1.15rem;font-weight:500}.stat-sub{color:var(--ok);margin:0;font-size:12px;line-height:1.35}.stat-sub-muted{color:var(--muted)}.stat-sub-warn{color:var(--link)}.nodes-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.nodes-search{border:1px solid var(--line-strong);background:var(--surface);min-width:16rem;max-width:22rem;min-height:44px;color:var(--muted);border-radius:10px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.nodes-search:focus-within{border-color:var(--link);outline:2px solid var(--link);outline-offset:1px}.nodes-search-icon{flex-shrink:0;width:16px;height:16px}.nodes-search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:14px}.nodes-select{font:inherit;border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:14px;font-weight:600}.nodes-select:focus-visible{outline:2px solid var(--link);outline-offset:2px}.nodes-count{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.nodes-toolbar-actions{align-items:center;gap:14px;margin-left:auto;display:flex}.nodes-text{font:inherit;color:var(--link);cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;font-weight:600}.nodes-text:hover{color:var(--link-hover)}.nodes-text:focus-visible{outline:2px solid var(--link);outline-offset:2px}.nodes-text-danger,.nodes-text-danger:hover:not(:disabled){color:var(--danger)}.nodes-text:disabled{opacity:.55;cursor:not-allowed}.peer-row-actions{white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.peer-row-actions .btn{flex:none;min-width:4.75rem}.peer-row-actions-empty{color:var(--muted);font-size:14px}.nodes-register{background:var(--notice-bg);border:1px solid var(--notice-line);color:var(--body);border-radius:12px;margin:0;padding:12px 14px;font-size:14px}.peer-wrap{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow-x:auto}.peer-table{border-collapse:collapse;width:100%;min-width:760px}.peer-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:14px 16px;font-size:11px;font-weight:600}.peer-table td{border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink);padding:14px 16px;font-size:14px}.peer-table tr:last-child td{border-bottom:0}.peer-cell{align-items:center;gap:10px;display:flex}.peer-dot{background:var(--muted);border-radius:999px;flex-shrink:0;width:8px;height:8px}.peer-dot-available{background:var(--ok)}.peer-dot-busy{background:var(--accent)}.peer-dot-quarantined{background:var(--danger)}a.peer-nick{color:var(--ink);font-weight:600;text-decoration:none;display:block}a.peer-nick:hover{color:var(--link)}.peer-meta{font-family:var(--mono);color:var(--muted);margin-top:2px;font-size:12px;display:block}.status-pill{background:var(--surface-2);min-height:26px;color:var(--muted);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.status-pill-available{background:color-mix(in srgb, var(--ok) 14%, var(--surface));color:var(--ok)}.status-pill-busy{background:var(--notice-bg);color:var(--link-hover)}.status-pill-quarantined{background:color-mix(in srgb, var(--danger) 12%, var(--surface));color:var(--danger)}.status-pill-disabled,.status-pill-paused{background:color-mix(in srgb, var(--muted) 16%, var(--surface));color:var(--muted)}.peer-dot-disabled,.peer-dot-paused{background:var(--muted)}.peer-model,.peer-jobs,.peer-seen{font-variant-numeric:tabular-nums;color:var(--body)}.rel{align-items:center;gap:8px;display:inline-flex}.rel-track{background:var(--surface-2);border-radius:999px;width:72px;height:6px;overflow:hidden}.rel-fill{border-radius:inherit;height:100%;display:block}.rel-fill-ok{background:var(--ok)}.rel-fill-warn{background:var(--accent)}.rel-fill-bad{background:var(--danger)}.rel-pct{font-variant-numeric:tabular-nums;min-width:2.6rem;font-weight:600}.rel-trend{color:var(--muted);font-size:13px}.rel-trend-up{color:var(--ok)}.rel-trend-down{color:var(--danger)}.peer-empty{text-align:center;color:var(--muted);padding:28px 16px}.nodes-footnote{color:var(--muted);margin:0;font-size:13px}@media (width<=68rem){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=52rem){.nodes-page{padding:20px 16px 36px}.nodes-heading{flex-direction:column;align-items:flex-start}.nodes-heading h1{font-size:2rem}.stat-grid{grid-template-columns:1fr}.nodes-toolbar-actions{justify-content:space-between;width:100%;margin-left:0}.peer-row-actions{gap:6px}.peer-row-actions .btn{min-width:0;min-height:34px;padding:0 10px;font-size:12px}.peer-table{min-width:640px}}.rewards-table{min-width:0}.rewards-table th:not(:first-child),.rewards-table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.support-form{flex-direction:column;gap:14px;max-width:40rem;display:flex}.support-form label{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.support-form input,.support-form textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-weight:400}.support-form textarea{resize:vertical;min-height:160px}.support-form input:focus-visible,.support-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.support-form-actions{gap:10px;display:flex}.detail-frame{background:var(--bg);flex:1;min-height:0;display:flex}.detail-nav{background:var(--surface-2);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:12px;width:220px;min-height:0;padding:18px 12px 12px;display:flex;overflow:hidden}.detail-nav-scroll{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow:hidden auto}.detail-nav-links{flex-direction:column;gap:4px;display:flex}.detail-nav-links button,.detail-nav-links a{width:100%;min-height:40px;color:var(--body);font:inherit;text-align:left;box-sizing:border-box;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;padding:0 12px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.detail-nav-links button:hover,.detail-nav-links a:hover{color:var(--ink);background:color-mix(in srgb, var(--surface) 70%, transparent)}.detail-nav-links button[aria-current=page],.detail-nav-links a[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:inset 3px 0 0 var(--accent);font-weight:700}.detail-nav-links button:focus-visible,.detail-nav-links a:focus-visible{outline:2px solid var(--link);outline-offset:2px}.detail-nav-extra{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding-top:12px;display:flex}.detail-nav-extra button{width:100%;min-height:40px;color:var(--body);font:inherit;text-align:left;box-sizing:border-box;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;padding:0 12px;font-size:14px;font-weight:600;display:flex}.detail-nav-extra button:hover{color:var(--ink);background:color-mix(in srgb, var(--surface) 70%, transparent)}.detail-nav-extra button[aria-current=page]{background:var(--surface);color:var(--ink);box-shadow:inset 3px 0 0 var(--accent)}.detail-nav-extra button:focus-visible{outline:2px solid var(--link);outline-offset:2px}.detail-nav-foot{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:auto;padding:12px 12px 4px;display:flex}.detail-nav-foot p{color:var(--muted);justify-content:space-between;gap:8px;margin:0;font-size:12px;display:flex}.detail-nav-foot p span:last-child{font-family:var(--mono);color:var(--body)}.detail-scroll{flex:1;min-width:0;overflow:hidden auto}.detail-page{flex-direction:column;gap:18px;max-width:1080px;margin:0 auto;padding:28px 28px 48px;display:flex}.detail-heading{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.detail-heading>div:first-child{flex:1;min-width:0}.detail-heading h1{font-family:var(--display);letter-spacing:-.03em;color:var(--ink);margin:2px 0 0;font-size:2.4rem;font-weight:700;line-height:1.05}.nodes-kicker a{color:var(--link);text-decoration:none}.nodes-kicker a:hover{color:var(--link-hover)}.detail-actions{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:flex-start;gap:10px;min-width:0;max-width:100%;display:flex}.detail-download{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.detail-download .nodes-sample{max-width:16rem;margin:0}.detail-actions .btn{white-space:nowrap;min-height:40px}.detail-status{color:var(--ink);align-items:center;gap:8px;margin:0 8px 0 0;font-size:14px;font-weight:600;display:inline-flex}.peer-dot-offline{background:var(--muted)}.detail-figure{font-size:1.7rem}@media (width>=68.01rem){.detail-page .stat-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.detail-split{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.detail-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 18px 18px}.detail-card h2{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);margin:0 0 14px;font-size:1.15rem;font-weight:700}.metric-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.metric{align-items:center;gap:14px;display:flex}.metric-ring{flex-shrink:0;width:72px;height:72px}.ring-track,.ring-value{fill:none;stroke-width:6px}.ring-track{stroke:var(--surface-2)}.ring-value{stroke-linecap:round}.ring-ok{stroke:var(--ok)}.ring-warn{stroke:var(--accent)}.ring-bad{stroke:var(--danger)}.ring-label{fill:var(--ink);text-anchor:middle;dominant-baseline:middle;font-size:12px;font-weight:700;font-family:var(--sans)}.ring-label-tight{font-size:9px}.metric-name{color:var(--ink);font-weight:600;display:block}.metric-detail{color:var(--muted);margin-top:2px;font-size:13px;display:block}.chart-layout{grid-template-columns:auto minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.chart-y{min-height:160px;font-family:var(--mono);color:var(--muted);flex-direction:column;justify-content:space-between;font-size:11px;display:flex}.detail-chart svg{width:100%;height:180px;display:block}.chart-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:3 4}.chart-area{fill:color-mix(in srgb, var(--accent) 28%, var(--surface))}.chart-line{fill:none;stroke:var(--link);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.chart-x{font-family:var(--mono);color:var(--muted);justify-content:space-between;margin:8px 0 0 48px;font-size:11px;display:flex}.node-model .nodes-sample{margin-top:0}.node-model h2{overflow-wrap:anywhere}.model-row{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:14px;display:flex}.model-field{flex-direction:column;gap:6px;min-width:min(100%,18rem);display:flex}.model-field .nodes-select{width:100%}.model-row .btn{white-space:nowrap;min-height:44px}.node-model .model-row~.nodes-sample{margin-top:10px}.detail-list{margin:0;padding:0;list-style:none}.detail-list li{border-top:1px solid var(--line);color:var(--body);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.detail-list li:first-child{border-top:0;padding-top:0}.detail-list strong{color:var(--ink)}@media (width<=68rem){.detail-split{grid-template-columns:1fr}}@media (width<=52rem){.detail-frame{flex-direction:column}.detail-nav{border-right:0;border-bottom:1px solid var(--line);gap:8px;width:100%;padding:8px 8px 10px;overflow:visible}.detail-nav-scroll{flex:none;overflow:visible}.detail-nav-links{flex-direction:row;overflow-x:auto}.detail-nav-links button,.detail-nav-links a{white-space:nowrap;width:auto}.detail-nav-links button[aria-current=page],.detail-nav-links a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--accent)}.detail-nav-extra{flex-direction:row;padding-top:8px;overflow-x:auto}.detail-nav-extra button{white-space:nowrap;width:auto}.detail-nav-extra button[aria-current=page]{box-shadow:inset 0 -3px 0 var(--accent)}.detail-nav-foot{display:none}.detail-page{padding:20px 16px 36px}.detail-heading{flex-direction:column;align-items:flex-start}.detail-heading h1{font-size:2rem}.detail-actions{flex-wrap:wrap;width:100%}.detail-actions .btn{min-height:36px;padding:0 12px;font-size:13px}.detail-status{width:100%;margin:0 0 4px}}
