:root{color-scheme:dark;--bg:#09101d;--panel:#101b2e;--line:rgba(195,211,237,.15);--muted:#aab6c9;--text:#f6f8ff;--accent:#7bb5ff;--blue:#317bff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% -15%,#263e67 0,transparent 40%),var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}a:focus-visible,button:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.topbar{max-width:1240px;margin:auto;padding:17px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand img{width:180px;max-width:38vw;height:42px;object-fit:contain;object-position:left}.topbar nav{display:flex;flex-wrap:wrap;gap:22px;font-size:14px;font-weight:600}.topbar nav a:hover,.next-panel a:hover{color:var(--accent)}.layout{max-width:1190px;margin:auto;padding:48px 24px 75px}.intro{max-width:750px;margin-bottom:30px}.eyebrow{display:inline-block;color:#9ac3ff;font-size:12px;letter-spacing:.14em;font-weight:800}.intro h1{font-size:clamp(35px,5vw,57px);line-height:1.07;letter-spacing:-.045em;margin:12px 0 16px}.intro>p{font-size:18px;color:#c5d0e1;margin:0 0 20px}.intro-meta{display:flex;flex-wrap:wrap;gap:9px}.intro-meta span{font-size:12px;font-weight:700;border:1px solid rgba(143,181,244,.25);padding:6px 11px;border-radius:40px;background:#192942}.workspace{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(280px,1fr);gap:21px;align-items:start}.chat-panel,.goals-panel,.next-panel,.privacy-panel,.gate{border:1px solid var(--line);background:rgba(17,28,45,.9);border-radius:20px}.chat-panel{padding:24px;min-width:0}.chat-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.chat-top h2{font-size:25px;line-height:1.2;letter-spacing:-.025em;margin:6px 0 18px}.usage{font-size:12px;color:#d9e7ff;padding:8px 10px;border-radius:40px;background:#1c3455;white-space:nowrap}.mode-pills{display:flex;gap:7px;flex-wrap:wrap}.mode{background:transparent;border:1px solid #3e4d64;color:#ced8e8;border-radius:40px;padding:9px 15px;font-size:13px;font-weight:700}.mode.active{color:#fff;background:#1a56ba;border-color:#448cff}.lane-description{font-size:14px;color:var(--muted);margin:13px 0 0}.chat-history{height:290px;max-height:43vh;overflow-y:auto;display:flex;flex-direction:column;gap:15px;padding:26px 2px 14px;scrollbar-color:#526781 transparent}.empty-message{text-align:center;color:var(--muted);padding:60px 12px;font-size:15px}.bubble{max-width:90%;border-radius:16px;padding:13px 16px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.bubble strong{display:block;font-size:12px;margin-bottom:6px;opacity:.8}.bubble.user{background:#2150a1;align-self:flex-end}.bubble.agent{background:#1a2b43;border:1px solid var(--line);align-self:flex-start}.chat-form{border-top:1px solid var(--line);padding-top:16px}.chat-form label,.goal-form label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.chat-form textarea,.goal-form input{background:#0c1626;border:1px solid #3a4b64;color:#fff;border-radius:11px;padding:13px;width:100%;resize:vertical;min-height:75px}.chat-form textarea::placeholder,.goal-form input::placeholder{color:#99a7ba}.chat-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:10px}.chat-actions span{max-width:310px;font-size:11px;color:var(--muted)}.chat-actions button,.goal-input button,.primary-link{background:#3b82f6;color:#fff;border:0;border-radius:11px;padding:12px 17px;font-size:13px;font-weight:800;white-space:nowrap}.chat-actions button:hover,.goal-input button:hover,.primary-link:hover{background:#5496ff}.side-panel{display:grid;gap:17px}.goals-panel,.next-panel,.privacy-panel{padding:20px}.side-title{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap;align-items:baseline}.side-title h2,.next-panel h2,.privacy-panel h2{font-size:18px;margin:0 0 12px}.side-title span{font-size:11px;color:var(--muted)}.goal-input{display:flex;gap:7px}.goal-input input{min-width:0;min-height:45px;flex:1;font-size:13px}.goal-input button{padding:10px 12px}.goal-list{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:10px}.goal-list li{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:0 0 9px;font-size:13px}.goal-list li span{flex:1;overflow-wrap:anywhere}.goal-list li.completed span{text-decoration:line-through;color:var(--muted)}.goal-list button{border:0;border-radius:7px;background:#263a56;color:#e3ebfa;padding:6px 9px;font-size:12px}.goal-list .goal-delete{background:transparent;color:#c1cada}.next-panel{display:grid}.next-panel a{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:14px}.privacy-panel p,.footer-note{font-size:13px;color:var(--muted)}.quiet-button{background:transparent;border:1px solid #435570;color:#d5e2f5;padding:9px 12px;border-radius:9px;font-size:12px;font-weight:700}.gate{padding:26px;max-width:690px}.gate h2{margin:0 0 10px}.gate p{color:#c6d1e2}.gate a{display:inline-block;margin-top:9px}.status{font-size:13px;color:#becce1;margin:12px 0 0;min-height:18px}.status.error{color:#ffb2b2}.footer-note{margin:24px 0 0}.chat-panel[hidden],.workspace[hidden],.gate[hidden]{display:none!important}@media(max-width:800px){.workspace{grid-template-columns:1fr}.layout{padding:33px 16px 50px}.topbar{padding:13px 16px;align-items:flex-start}.topbar nav{justify-content:flex-end;gap:9px;font-size:12px}.brand img{width:128px;height:34px}.chat-panel{padding:17px}.chat-top h2{font-size:21px}.chat-history{height:340px;max-height:none}.intro>p{font-size:16px}.chat-actions{align-items:flex-start}.chat-actions button{padding:12px 14px}.bubble{max-width:97%}}@media(max-width:360px){.chat-top{align-items:flex-start;flex-direction:column}.usage{margin-bottom:6px}.chat-actions{flex-direction:column}.chat-actions button{width:100%}}
/* Compact, accessible launch polish: keep mobile heading and status separate. */
.chat-top{min-width:0;flex-wrap:wrap}
.chat-top>div:first-child{min-width:0}
.usage{white-space:normal;line-height:1.35;max-width:100%;flex-shrink:0}
.starter-prompts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 8px}
.starter-prompts button{color:#dceaff;background:#172a46;border:1px solid #42638f;
  border-radius:999px;padding:8px 12px;font-size:12px;font-weight:650;text-align:left}
.starter-prompts button:hover,.starter-prompts button:focus-visible{background:#244269;border-color:#86b3ff}
@media(max-width:800px){
  .chat-top{display:flex;align-items:flex-start;flex-direction:column;gap:3px}
  .chat-top>div:first-child{width:100%}
  .chat-top h2{font-size:clamp(21px,5.5vw,26px);line-height:1.2;letter-spacing:-.02em;margin:6px 0 8px}
  .usage{display:inline-block;border-radius:12px;max-width:100%;font-size:12px;margin-bottom:10px}
  .chat-history{height:190px;min-height:160px;max-height:32vh;padding:15px 1px 12px}
  .empty-message{padding:43px 12px;font-size:14px}
  .chat-panel{padding:18px}
  .starter-prompts{gap:7px;margin:12px 0 5px}
  .starter-prompts button{font-size:12px;padding:8px 10px}
  .chat-actions{align-items:flex-start}
  .chat-actions span{font-size:11px}
}
@media(max-width:380px){
  .topbar nav{gap:8px}
  .chat-actions{flex-direction:column}
  .chat-actions button{width:100%}
}

/* Shared premium voice: restrained, accessible, never a giant overlay. */
.personal-voice-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.personal-voice-row button{color:#fff;background:#343991;border:1px solid #9094df;
  border-radius:11px;padding:9px 12px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.personal-voice-row button[hidden]{display:none}
.personal-voice-row>span{color:var(--muted);font-size:12px}
.listen-reply{display:block;margin:9px 0 0;padding:7px 10px;color:#dce9ff;
  border:1px solid #6887b1;border-radius:9px;background:#25385a;font:inherit;font-size:12px;
  font-weight:700;cursor:pointer}
.voice-playback audio{display:block;width:min(100%,310px);margin-top:8px;max-height:54px}
.voice-disclosure{display:block;color:var(--muted);margin:5px 0 0;font-size:11px}
@media(max-width:800px){.personal-voice-row{margin:8px 0}.personal-voice-row>span{font-size:11px}}
