/* A shared, quiet conversation surface for the public and signed-in experience. */
:root { --bg:#f6f7fb; --panel:#edf0f7; --surface:#fff; --text:#252e40; --muted:#626d81; --line:#dbe0ea; --accent:#315ba6; --on-accent:#fff; --soft:#e7eefb; --shadow:0 8px 30px #263d6412; }
:root[data-theme=dark] { --bg:#181e2b; --panel:#222b3c; --surface:#222b3c; --text:#edf1f9; --muted:#b1bfd4; --line:#3a4960; --accent:#a9c3ff; --on-accent:#172239; --soft:#293a5a; --shadow:0 8px 30px #0003; }
h1, .modal .top h2, .setup-aside h2, .setup-content h1 { font-family:"Trebuchet MS",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-weight:600; }
.primary { background:var(--accent); color:var(--on-accent); border-color:var(--accent); border-radius:9px; }
.primary:hover { background:var(--accent); color:var(--on-accent); filter:brightness(.95); }
.studio-app .brand, .setup-header .brand, .signin-header .brand { font-size:36px; font-weight:600; letter-spacing:-3px; line-height:1; text-decoration:none; }
.studio-app .workspace { display:block; min-height:100dvh; }
.studio-app .sidebar { display:none; position:fixed; inset:0 auto 0 0; width:288px; max-width:85vw; height:100dvh; z-index:40; padding:20px 16px; background:var(--panel); overflow:auto; border:0; }
.studio-app .sidebar-open .sidebar { display:flex; }
.studio-app .sidebar-close, .studio-app .mobile-menu { display:grid; }
.studio-app .sidebar-open .sidebar-scrim { display:block; position:fixed; inset:0; width:100%; height:100dvh; z-index:30; background:#0004; border:0; border-radius:0; }
.studio-app .sidebar .new { border:0; }
.studio-app .workspace-tools { margin:8px 0 0; }
.studio-app .workspace-tools>summary { font-size:13px; color:var(--muted); padding:12px; min-height:44px; }
.studio-app .workspace-tools .nav-item { padding-left:20px; }
.studio-app .chat-history { margin-top:24px; }
.studio-app .account { border-top:0; }
.studio-app .account-avatar { background:var(--line); color:var(--text); }
.studio-app .app-topbar { height:88px; padding:0 28px; }
.topbar-wordmark { font-size:32px; letter-spacing:-2.5px; color:var(--text); font-weight:600; padding-bottom:4px; }
.studio-app .topbar-title { gap:16px; }
.studio-app .main { max-width:1080px; padding:32px 28px 44px; }
.studio-app .view-conversation { max-width:800px; padding-top:0; }
.studio-app .is-empty { padding-top:clamp(80px,18vh,180px); }
.studio-app .intro { margin:0 auto 32px; text-align:left; }
.studio-app .intro h1 { font-family:"Trebuchet MS",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:clamp(29px,3.2vw,39px); line-height:1.25; letter-spacing:-1.1px; font-weight:600; margin:0; text-wrap:balance; }
.studio-app .intro .business-context-line { font-size:15px; color:var(--muted); line-height:1.6; margin:12px 0 0; text-wrap:pretty; }
.studio-app .composer { background:var(--surface); border:1px solid var(--line); border-inline-start:3px solid var(--accent); border-radius:14px; padding:18px 20px 13px; box-shadow:0 5px 20px #263d6405; margin:24px auto 0; }
.studio-app .composer:focus-within { border-color:var(--accent); box-shadow:none; }
.studio-app .composer textarea { font-size:16px; min-height:65px; line-height:1.6; padding:2px 4px 10px; resize:vertical; }
.studio-app .composer-tools { border-top:1px solid var(--line); padding-top:10px; flex-wrap:wrap; }
.studio-app .composer .send { margin-left:auto; border:0; border-radius:9px; min-height:42px; height:auto; padding:9px 21px; font-size:14px; font-weight:500; color:var(--on-accent); background:var(--accent); white-space:nowrap; flex-shrink:0; }
:root[data-theme=dark] .studio-app .composer .send { color:var(--on-accent); }
.studio-app .request-options>summary { color:var(--muted); font-size:12px; padding:8px 4px; min-height:44px; }
.studio-app .options-panel { max-height:65dvh; overflow:auto; }
.studio-app .prompt-starters { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px 26px; margin:17px auto 0; }
.studio-app .prompt-starters button { border:0; border-radius:3px; padding:8px 0; min-height:44px; background:transparent; color:var(--accent); font-size:13px; text-decoration:underline; text-underline-offset:5px; text-decoration-color:var(--line); }
.studio-app .prompt-starters button:hover { background:transparent; color:var(--accent); text-decoration-color:var(--accent); }
.studio-app .context-note { font-size:11px; margin:24px auto 0; text-align:left; }
.studio-app .conversation-timeline { padding-top:20px; }
.studio-app .is-empty .conversation-timeline { padding:0; }
.studio-app .reply { font-size:16px; line-height:1.8; }
.studio-app .page-head h1 { font-size:30px; letter-spacing:-.8px; }
.studio-app .view-work, .studio-app .view-agents { padding-top:45px; }
.signin-header { height:88px; padding:0 36px; }
.signin-header>span { display:none; }
.signin-main { max-width:430px; margin:10vh auto 60px; }
.signin-main h1 { font-size:32px; letter-spacing:-.9px; text-align:center; }
.signin-main .eyebrow { display:none; }
.signin-intro { text-align:center; font-size:14px; margin-bottom:28px; }
.signin-main input { background:var(--bg); border-radius:12px; min-height:52px; font-size:16px; }
.signin-main .primary { border-radius:9px; }
.signin-other, .signin-main>p.fine { text-align:center; }
.setup-layout { display:block; width:min(560px,calc(100% - 48px)); margin:28px auto 70px; }
.setup-aside { position:static; padding:0; }
.setup-aside h2, .setup-aside>p, .setup-aside>a { display:none; }
.setup-steps { display:flex; justify-content:center; flex-wrap:wrap; gap:16px; margin:0 0 35px; }
.setup-steps li { font-size:12px; gap:8px; }
.setup-content { border:0; background:transparent; padding:0 12px; }
.setup-content h1 { font-size:32px; letter-spacing:-.8px; }
.setup-content .setup-field input, .setup-content .setup-field textarea { background:var(--bg); font-size:16px; }
.setup-header>span { display:none; }
@media(max-width:760px) {
  .studio-app .app-topbar, .signin-header { height:76px; padding:0 16px; }
  .studio-app .topbar-title { gap:9px; }
  .studio-app .main { padding:24px 18px 40px; }
  .studio-app .view-conversation { padding-top:0; }
  .studio-app .is-empty { padding-top:clamp(65px,15vh,130px); }
  .studio-app .intro { margin-bottom:27px; }
  .studio-app .intro h1 { font-size:31px; letter-spacing:-.9px; }
  .studio-app .intro .business-context-line { font-size:14px; }
  .studio-app .composer { border-radius:12px; padding:15px 14px 11px; }
  .studio-app .composer textarea { min-height:82px; }
  .studio-app .composer .send { min-height:44px; padding-inline:19px; }
  .studio-app .prompt-starters { gap:0 20px; margin-top:14px; }
  .studio-app .prompt-starters button { font-size:12px; padding:9px 0; }
  .studio-app .options-panel select { font-size:16px; }
  .studio-app .context-note { max-width:none; font-size:11px; }
  .signin-main { margin-top:7vh; }
  .signin-main h1 { font-size:30px; }
  .setup-steps { display:none; }
  .setup-content { padding:0; }
  .setup-content h1 { font-size:29px; }
}
