@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#0b100e;--panel:#141b17;--ink:#edf5e9;--muted:#a4b5a6;--line:#2c3a30;--acid:#c4f586;--pink:#e8a4bc;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--body:'DM Sans',sans-serif;--display:'Space Grotesk',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}:focus-visible{outline:2px solid var(--pink);outline-offset:5px}.topbar{max-width:1280px;margin:auto;padding:28px 44px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font:700 18px var(--mono);letter-spacing:-.5px}.wordmark span{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}.source{font-size:13px;color:var(--acid);display:flex;gap:16px}.source:hover{text-decoration:underline}.layout{max-width:1280px;margin:auto;padding:46px 44px 42px;display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:64px}.eyebrow{font:10px var(--mono);letter-spacing:2px;margin:0 0 25px;color:var(--muted);display:flex;align-items:center;gap:9px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--acid)}h1{font:600 clamp(52px,5.9vw,76px)/.97 var(--display);letter-spacing:-5px;margin:0}h1 em{font-style:normal;color:var(--acid)}.tagline{font:500 23px/1.22 var(--display);letter-spacing:-.6px;margin:27px 0 15px}.description{max-width:285px;color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 28px}.scope{border:1px solid #3d4a35;border-radius:9px;padding:15px;background:#10170f;box-shadow:4px 4px 0 #080c09}.scope-top{display:flex;justify-content:space-between;align-items:center;font:8px var(--mono);letter-spacing:.5px;color:var(--muted);gap:10px}.scope-top span:last-child{color:var(--acid);white-space:nowrap}canvas{display:block;width:100%;height:92px;margin:8px 0;background:repeating-linear-gradient(0deg,transparent,transparent 22px,#1c2a1d 23px),repeating-linear-gradient(90deg,transparent,transparent 22px,#1c2a1d 23px)}.scope label{font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.scope input{width:100%;accent-color:var(--acid);margin:10px 0 4px;cursor:pointer;height:20px}.scope p{font:9px var(--mono);color:#8c9d8e;margin:2px 0}.topics{display:flex;gap:6px;flex-wrap:wrap;margin-top:24px}.topics span{font:10px var(--mono);padding:6px 9px;border:1px solid var(--line);border-radius:5px;color:#b3c2b3}.lab-notes{margin-top:22px;color:var(--muted);font-size:12px;line-height:1.7}.lab-notes summary{cursor:pointer;font-size:12px;color:var(--ink);width:fit-content}.lab-notes p{margin:12px 0}.chat{display:flex;min-width:0;flex-direction:column;border:1px solid #3b4a3c;border-radius:16px;background:var(--panel);box-shadow:0 12px 50px #0002;align-self:start;overflow:hidden}.chat-header{display:flex;align-items:center;gap:13px;padding:22px 25px;border-bottom:1px solid var(--line)}.avatar{width:42px;height:42px;background:var(--acid);color:var(--bg);border-radius:12px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;transform:rotate(-5deg)}.avatar span{font:700 33px var(--display);margin-top:-3px}.avatar i{position:absolute;width:22px;height:6px;border-top:2px solid var(--bg);top:14px;left:10px;transform:rotate(5deg)}.chat-identity h2{font:600 16px var(--display);margin:0}.chat-identity p{font:10px var(--mono);color:var(--muted);margin:6px 0 0}.text-button{margin-left:auto;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);padding:7px 9px;font-size:11px;white-space:nowrap}.text-button:hover{border-color:var(--acid);color:var(--acid)}.chat-body{height:345px;min-height:245px;overflow:auto;overscroll-behavior:contain;padding:27px 26px 12px;scrollbar-width:thin;scrollbar-color:#465544 transparent}.message{margin:0 0 22px;max-width:95%}.message .speaker{font:9px var(--mono);letter-spacing:1px;text-transform:uppercase;color:var(--acid);margin-bottom:9px}.message .bubble{font-size:14px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.message.user{margin-left:auto;background:#273227;border:1px solid #3d4b39;border-radius:12px 12px 2px 12px;padding:13px 17px;max-width:88%}.message.user .speaker{color:#c3d0bd}.message.user .bubble{font-size:13px}.message.error .speaker{color:var(--pink)}.message .note-title{font-size:11px;color:var(--muted);padding-bottom:10px}.message.welcome .bubble{font-size:18px;line-height:1.6;letter-spacing:-.2px;max-width:480px}.message.welcome .bubble small{display:block;font-size:13px;color:var(--muted);margin-top:12px;letter-spacing:0}.suggestions{padding:0 26px 24px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.suggestions button{display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;background:#19231b;border:1px solid #354431;color:var(--ink);border-radius:8px;padding:12px 13px;font-size:12px;transition:background .15s,border-color .15s}.suggestions button span{color:var(--acid)}.suggestions button:hover{background:#263522;border-color:#7e9c65}.composer{margin:0 22px;display:flex;align-items:center;background:#0c120e;border:1px solid #516345;border-radius:12px;padding:12px 13px 12px 16px;gap:10px}.composer:focus-within{border-color:var(--acid)}textarea{width:100%;resize:none;min-height:44px;max-height:130px;border:0;outline:0!important;color:var(--ink);background:transparent;line-height:1.6;font-size:14px}textarea::placeholder{color:#869582}.composer button{border:0;background:var(--acid);color:#15200e;border-radius:9px;min-width:38px;height:38px;font-size:23px;align-self:flex-end}.composer button:hover{background:#d6ffab}.composer-note{display:flex;justify-content:space-between;gap:10px;padding:9px 25px 0;color:#91a08e;font:9px var(--mono)}.mode-disclosure{color:#aab79f;text-align:center;font-size:10px;margin:14px 20px 18px}.mode-disclosure.connected{color:var(--acid)}footer{max-width:1280px;margin:auto;border-top:1px solid var(--line);padding:23px 44px 30px;display:flex;gap:20px;justify-content:space-between;font:10px var(--mono);color:#93a08f}footer a:hover{color:var(--acid)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-100px;left:15px;z-index:99;background:var(--acid);color:var(--bg);padding:12px}.skip:focus{top:10px}
@media(min-width:1400px){.layout{padding-top:60px;padding-bottom:60px}.chat-body{height:390px}}
@media(max-width:960px){.layout{gap:30px;padding:35px 25px;grid-template-columns:250px minmax(0,1fr)}.topbar{padding:22px 25px}.suggestions{grid-template-columns:1fr}.chat-body{height:310px}h1{font-size:61px}.chat-header{padding:18px}.composer-note{font-size:8px}}
@media(max-width:680px){.topbar{padding:20px}.wordmark span{display:none}.layout{grid-template-columns:1fr;padding:30px 18px;gap:26px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.eyebrow{grid-column:1/-1;margin-bottom:20px;font-size:9px}h1{font-size:57px;letter-spacing:-3px;grid-row:2/4}.tagline{font-size:21px;margin:0 0 12px;align-self:end}.description{font-size:12px;margin:0;line-height:1.6}.scope{display:none}.topics{grid-column:1/-1;margin-top:23px}.lab-notes{grid-column:1/-1;margin-top:17px}.chat-body{height:320px;padding:22px 20px 8px}.suggestions{padding:0 18px 20px;grid-template-columns:1fr 1fr;gap:8px}.suggestions button{font-size:11px;padding:11px}.composer{margin:0 15px}.composer-note{padding-inline:18px}.chat-header{padding:17px 18px}.chat-identity h2{font-size:15px}.chat-identity p{font-size:9px}.message.welcome .bubble{font-size:17px}footer{padding:20px;flex-direction:column;gap:10px}.message{max-width:100%}.message .bubble{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.bubble pre{white-space:pre;overflow:auto;max-width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:#0b100e;font:12px/1.6 var(--mono)}.note-sources{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.note-sources a{font-size:11px;color:var(--acid);border-bottom:1px solid var(--line)}.note-sources a:hover{text-decoration:underline}

nav[aria-label="Site navigation"] { display:flex; flex-wrap:wrap; gap:10px 20px; padding:16px 0; border-bottom:1px solid #344b40; }

