:root{
  color-scheme:dark;
  --bg:#090b0e;
  --panel:#11151a;
  --panel2:#151a20;
  --line:#2b323b;
  --text:#f3f5f7;
  --muted:#9aa5b2;
  --soft:#c9d0d8;
  --accent:#ffffff;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{min-height:100vh}
button,textarea{font:inherit}
.shell{min-height:100vh;display:flex;flex-direction:column}
.topbar{min-height:92px;padding:22px clamp(22px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(9,11,14,.92)}
.eyebrow,.intro-kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#9fb0c3}
.brand{font-size:22px;font-weight:750;margin-top:4px}
.status{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:11px;letter-spacing:.08em;color:var(--soft)}
.dot{width:7px;height:7px;border-radius:50%;background:#d5dae0;box-shadow:0 0 0 4px rgba(213,218,224,.08)}
.layout{flex:1;width:min(1280px,100%);margin:0 auto;padding:clamp(22px,4vw,58px);display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:clamp(24px,4vw,56px)}
.intro{padding:28px 0;align-self:start;position:sticky;top:120px}
.intro h1{font-size:clamp(42px,6vw,72px);line-height:.95;margin:18px 0 24px;letter-spacing:-.045em}
.intro p{font-size:16px;line-height:1.65;color:var(--soft);margin:0;max-width:34ch}
.capabilities{margin:32px 0 26px;border-top:1px solid var(--line)}
.capabilities div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.capabilities strong{color:var(--text);font-weight:600}
.capabilities strong.muted{color:var(--muted)}
.secondary{border:1px solid var(--line);background:transparent;color:var(--text);border-radius:10px;padding:11px 14px;cursor:pointer}
.secondary:hover{background:var(--panel2)}
.chat-panel{min-height:620px;height:calc(100vh - 210px);display:flex;flex-direction:column;border:1px solid var(--line);border-radius:22px;background:var(--panel);overflow:hidden}
.messages{flex:1;overflow:auto;padding:clamp(20px,4vw,42px);display:flex;flex-direction:column;gap:18px;scroll-behavior:smooth}
.message{max-width:min(78%,680px);padding:14px 16px;border-radius:16px;line-height:1.55;font-size:15px;white-space:pre-wrap;word-wrap:break-word}
.message.assistant{align-self:flex-start;background:var(--panel2);border:1px solid var(--line);color:var(--soft);border-top-left-radius:5px}
.message.user{align-self:flex-end;background:#f3f5f7;color:#11151a;border-top-right-radius:5px}
.typing{padding:0 clamp(20px,4vw,42px) 14px;color:var(--muted);font-size:13px}
.composer{display:flex;gap:12px;padding:18px;border-top:1px solid var(--line);background:#0d1014}
textarea{flex:1;resize:none;max-height:160px;min-height:48px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:#151a20;color:var(--text);outline:none}
textarea:focus{border-color:#566271}
#send{min-width:92px;border:0;border-radius:13px;background:var(--accent);color:#0b0d10;font-weight:700;padding:0 18px;cursor:pointer}
#send:disabled{opacity:.45;cursor:default}
.footnote{padding:0 18px 16px;background:#0d1014;color:#717c88;font-size:11px;text-align:center}
@media(max-width:820px){
  .topbar{min-height:76px;padding:17px 18px}
  .layout{display:flex;flex-direction:column;padding:18px;gap:18px}
  .intro{position:static;padding:12px 2px}
  .intro h1{font-size:44px;margin:12px 0 18px}
  .intro p{max-width:none}
  .capabilities{display:none}
  .chat-panel{height:calc(100vh - 330px);min-height:480px;border-radius:18px}
  .message{max-width:88%}
  .status{padding:8px 10px}
}
