:root{color-scheme:dark;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;--bg:#101418;--surface:#191e24;--raised:#222a30;--line:#303a40;--text:#f0f3ef;--muted:#9ca9ae;--accent:#a7e5c4;--accent-deep:#17372c;--amber:#e9c788;--red:#f0a3a3;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{min-width:320px;background:var(--bg)}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.42;cursor:default}[hidden]{display:none!important}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.app-shell{height:100dvh;min-height:0;width:min(100%,880px);margin:auto;display:flex;flex-direction:column;background:var(--bg)}.topbar{flex:none;min-height:68px;padding:max(10px,env(safe-area-inset-top)) 14px 10px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.055);background:#14191e}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:13px;background:transparent;color:var(--text);font-size:21px}.icon-button:active,.tool-button:active,.text-button:active{background:#2a3338}.menu-button{align-content:center;justify-items:center;gap:5px}.menu-button span{display:block;width:19px;height:2px;border-radius:2px;background:var(--text)}.menu-button span:nth-child(2){width:14px;margin-right:5px}.title-group{min-width:0;flex:1}.title-line{display:flex;align-items:center;gap:9px}.title-group h1{font-size:17px;line-height:1.2;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;letter-spacing:-.02em}.title-group p{margin:4px 0 0;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-button{border:1px solid var(--line);background:var(--surface);font-size:25px;font-weight:300}.status-dot{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;background:#67737a}.status-dot.online{background:var(--accent);box-shadow:0 0 0 4px rgba(167,229,196,.09)}.status-dot.pending{background:var(--amber)}.status-dot.error{background:var(--red)}
.connection-banner{flex:none;min-height:43px;padding:8px 17px;background:#3b2827;color:#f5d3d1;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.text-button{border:0;background:transparent;color:var(--accent);font-size:12px;font-weight:650;min-height:36px;padding:4px 7px;border-radius:8px}
.transcript{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px max(16px,calc((100% - 760px)/2)) 22px;scrollbar-width:thin;scrollbar-color:#384247 transparent}.empty-state{max-width:340px;margin:max(52px,12vh) auto;text-align:center;color:var(--muted)}.empty-symbol{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 24px;border-radius:21px;border:1px solid #354d40;background:#1b2c26;color:var(--accent);font-family:Georgia,serif;font-size:39px}.empty-state h2{margin:0 0 9px;color:var(--text);font-size:21px;letter-spacing:-.03em}.empty-state p{margin:0;font-size:13px;line-height:1.65}.load-history{display:block;margin:0 auto 24px;background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--muted);padding:9px 14px;font-size:12px}
.entry{margin:0 0 19px;position:relative}.entry-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;margin:0 0 8px}.entry-meta strong{color:#cfd6d4;font-size:12px;font-weight:650}.entry-body{font-size:14px;line-height:1.67;white-space:pre-wrap;overflow-wrap:anywhere}.entry-user{max-width:88%;margin-left:auto;padding:13px 15px;border:1px solid #39443d;border-radius:16px 16px 4px 16px;background:#23332c}.entry-user .entry-meta{margin-bottom:6px}.entry-user .entry-meta strong{color:var(--accent)}.entry-assistant{padding:1px 2px}.entry-assistant .entry-body{color:#e9eeeb}.entry-notice{margin-left:30px;border-left:2px solid var(--amber);padding:3px 0 3px 13px;color:#dbd0b3}.entry-notice .entry-body{font-size:12px}.entry-tool{margin:3px 0 17px 23px;padding-left:16px;border-left:1px solid #496558}.tool-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}.tool-card summary{display:flex;align-items:center;gap:9px;padding:11px 12px;list-style:none;cursor:pointer;min-height:43px}.tool-card summary::-webkit-details-marker{display:none}.tool-card summary::before{content:"⌘";display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#2d3e35;color:var(--accent);font-size:14px}.tool-card summary strong{font-size:12px;font-weight:650;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-card summary em{font-style:normal;color:var(--muted);font-size:11px}.tool-card[open] summary{border-bottom:1px solid var(--line)}.tool-detail{margin:0;padding:12px;color:#c2cbc8;white-space:pre-wrap;overflow-wrap:anywhere;font-family:"Cascadia Code",Consolas,monospace;font-size:11px;line-height:1.5;max-height:260px;overflow:auto}.entry-error .tool-card{border-color:#6b3c3c}.entry-pending .tool-card summary em{color:var(--amber)}
.activity-bar{flex:none;padding:8px 18px;color:var(--accent);font-size:12px;display:flex;align-items:center;gap:8px;background:linear-gradient(90deg,#17271f,transparent)}.activity-pulse{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.3s infinite}@keyframes pulse{50%{opacity:.25}}
.composer{flex:none;margin:0;padding:11px 14px max(11px,env(safe-area-inset-bottom));background:#161c20;border-top:1px solid var(--line)}.composer-input-wrap{background:#20282c;border:1px solid #3b474c;border-radius:14px;padding:7px 12px}.composer-input-wrap:focus-within{border-color:#6a9e81}textarea{display:block;width:100%;max-height:145px;min-height:29px;padding:3px 0;resize:none;border:0;outline:0!important;background:transparent;color:var(--text);font-size:14px;line-height:1.5}textarea::placeholder{color:#89979b}.composer-actions{display:flex;align-items:center;gap:7px;padding-top:8px}.tool-button{min-height:38px;border:0;border-radius:9px;background:transparent;color:var(--muted);display:flex;align-items:center;gap:8px;padding:0 7px;font-size:12px}.slash-glyph{font-family:Consolas,monospace;font-size:17px;color:var(--accent)}.composer-spacer{flex:1}.voice-button{width:38px;height:38px;color:var(--muted);font-size:19px}.voice-button.active{color:var(--red)}.abort-button{width:38px;height:38px;color:var(--amber);font-size:17px}.send-button{width:39px;height:39px;border:0;border-radius:11px;background:var(--accent);color:#102018;font-size:24px;font-weight:700;line-height:1}.send-button:disabled{background:#394740;color:#76847c}.composer-status{font-size:11px;color:var(--amber);min-height:0}.composer-status:not(:empty){padding-top:5px}
.scrim{position:fixed;inset:0;z-index:8;background:rgba(0,0,0,.58)}.drawer{position:fixed;z-index:9;top:0;bottom:0;left:0;width:min(88vw,360px);display:flex;flex-direction:column;background:#181f23;border-right:1px solid #3c4749;transform:translateX(-102%);transition:transform .22s ease;box-shadow:22px 0 52px rgba(0,0,0,.3);padding-top:env(safe-area-inset-top)}.drawer.open{transform:none}.drawer-head{display:flex;align-items:center;gap:10px;padding:19px 17px 21px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;flex:1;min-width:0}.brand-mark{display:grid;place-items:center;width:41px;height:41px;border-radius:12px;background:var(--accent);color:#12291e;font-family:Georgia,serif;font-size:28px}.brand strong{display:block;font-size:15px;letter-spacing:-.02em}.brand small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.drawer-section-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 9px;color:#90a09e;font-size:10px;font-weight:700;letter-spacing:.09em}.project-list{flex:1;overflow-y:auto;padding:0 9px 18px;scrollbar-width:thin}.project{margin:4px 0}.project-head{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:11px 9px;background:transparent;border:0;color:var(--text);border-radius:10px;min-height:48px}.project-head:hover,.project-head:focus-visible{background:#27322f}.project-icon{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:8px;background:#263a31;color:var(--accent);font-size:14px}.project-info{min-width:0;flex:1}.project-name{display:block;font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-path{display:block;color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.project-chevron{font-size:13px;color:var(--muted);transition:transform .15s}.project.open .project-chevron{transform:rotate(90deg)}.project-body{padding:0 0 7px 19px}.project-new{display:block;width:calc(100% - 4px);text-align:left;background:transparent;border:1px dashed #41644f;color:var(--accent);border-radius:8px;padding:9px 11px;margin:5px 0 5px;font-size:11px}.session-row{display:block;width:100%;border:0;border-radius:9px;background:transparent;color:#c7d0cd;text-align:left;padding:9px 10px;min-height:43px}.session-row.active{background:#2a4033;color:var(--accent)}.session-row:hover{background:#27342d}.session-row strong{display:block;font-weight:550;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.session-row:disabled,.project-head:disabled{opacity:.45}.drawer-empty{color:var(--muted);font-size:12px;line-height:1.55;padding:15px}.drawer-foot{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:10px 14px max(10px,env(safe-area-inset-bottom));font-size:11px;color:var(--muted)}.drawer-foot span:nth-child(2){flex:1}
.commands-dialog{position:fixed;top:auto;bottom:0;left:0;right:0;width:min(100%,620px);max-height:min(76dvh,640px);margin:0 auto;border:1px solid #43504e;border-bottom:0;border-radius:20px 20px 0 0;padding:0 17px max(12px,env(safe-area-inset-bottom));background:#1c2428;color:var(--text);box-shadow:0 -20px 50px rgba(0,0,0,.34)}.commands-dialog::backdrop{background:rgba(0,0,0,.64)}.sheet-handle{width:37px;height:4px;border-radius:4px;background:#5a6765;margin:9px auto 14px}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.sheet-head small{font-size:10px;letter-spacing:.1em;color:var(--accent)}.sheet-head h2{font-size:20px;margin:3px 0 0;letter-spacing:-.03em}.commands-dialog input{width:100%;height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#12191c;color:var(--text);font-size:13px}.command-list{overflow-y:auto;max-height:calc(76dvh - 190px);margin-top:9px;scrollbar-width:thin}.command-row{display:flex;align-items:center;width:100%;min-height:55px;padding:9px 5px;text-align:left;background:transparent;border:0;border-bottom:1px solid #303a3d;color:var(--text);gap:11px}.command-row:before{content:"/";width:27px;height:27px;flex:none;display:grid;place-items:center;border-radius:8px;background:#2a3e34;color:var(--accent);font-family:Consolas,monospace}.command-row-main{min-width:0;flex:1}.command-row strong{display:block;font-size:13px;font-weight:650}.command-row span{display:block;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.command-row small{color:var(--accent);font-size:16px}.command-empty{color:var(--muted);font-size:12px;padding:20px 5px}.sheet-hint{color:var(--muted);font-size:11px;margin:12px 2px 0}.toast{position:fixed;z-index:20;left:50%;bottom:calc(125px + env(safe-area-inset-bottom));transform:translateX(-50%);max-width:min(90vw,420px);padding:11px 14px;border-radius:10px;background:#3b2928;color:#f5d0ce;box-shadow:0 8px 30px #0008;font-size:12px;text-align:center}
.session-more{display:block;width:100%;min-height:38px;border:0;border-radius:8px;background:transparent;color:var(--accent);text-align:left;padding:8px 10px;font-size:11px}
.session-subline{display:flex;align-items:center;gap:4px;min-width:0;margin-top:4px;color:var(--muted);font-size:11px}.session-subline>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-subline button{flex:none;max-width:52%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;background:transparent;color:var(--accent);font-size:11px;padding:2px 3px;border-radius:5px;text-align:left}.model-list .command-row:before{content:none;display:none}.model-list .command-row.current{color:var(--accent)}.model-list .command-row small{font-size:12px}.entry-notice.entry-error{border-left-color:var(--red);color:#e9b9b7}
.toast[data-kind=success]{background:#203b2c;color:var(--accent)}
.pairing-dialog{width:min(90vw,410px);padding:0;border:1px solid #45574c;border-radius:18px;background:#1c2527;color:var(--text);box-shadow:0 24px 60px #0009}.pairing-dialog::backdrop{background:#080c0ecc}.pairing-panel{padding:24px}.pairing-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--accent);color:#11261b;font-family:Georgia,serif;font-size:30px}.pairing-panel h2{font-size:20px;letter-spacing:-.03em;margin:20px 0 7px}.pairing-panel p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 22px}.pairing-panel label{display:block;color:#c4d2cb;font-size:11px;font-weight:650;margin-bottom:8px}.pairing-panel input{width:100%;height:45px;border:1px solid #506057;border-radius:9px;background:#131a1c;color:var(--text);padding:10px 12px;font-size:13px}.pairing-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.pairing-actions button{min-height:42px;border:1px solid var(--line);border-radius:9px;background:#283034;color:var(--text);padding:8px 15px;font-size:12px;font-weight:650}.pairing-actions button[type=submit]{background:var(--accent);color:#10251a;border-color:var(--accent)}
@media(min-width:720px){.topbar{padding-left:25px;padding-right:25px}.composer{padding-left:max(25px,calc((100% - 760px)/2));padding-right:max(25px,calc((100% - 760px)/2))}.entry-user{max-width:72%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Visual direction: a pocket field notebook for OMP. */
:root {
  color-scheme:light;
  font-family:"Segoe UI",Arial,sans-serif;
  --bg:#f4f2e9;
  --surface:#eeece2;
  --raised:#e7e5d9;
  --line:#c8cbbf;
  --text:#1a201c;
  --muted:#66716a;
  --accent:#d5f36a;
  --accent-deep:#222b20;
  --amber:#9d622c;
  --red:#a44a40;
}
body { background:#e8e9df; }
.app-shell { background:var(--bg); box-shadow:0 0 0 1px #d5d9cb; }
.topbar {
  min-height:91px;
  padding:max(12px,env(safe-area-inset-top)) 15px 12px;
  gap:11px;
  background:var(--bg);
  border-bottom:2px solid var(--text);
}
.topbar-eyebrow {
  display:block;
  margin:0 0 3px;
  color:#6c786c;
  font-family:Consolas,"Courier New",monospace;
  font-size:9px;
  font-weight:700;
  letter-spacing:.13em;
}
.title-group h1 {
  color:var(--text);
  font-family:Georgia,"Noto Serif",serif;
  font-size:21px;
  font-weight:700;
  letter-spacing:-.045em;
}
.title-line { gap:8px; }
.session-subline { margin-top:3px; color:#646d61; font-family:Consolas,"Courier New",monospace; font-size:10px; }
.session-subline button { color:#2c4a35; font-family:inherit; font-size:10px; font-weight:700; }
.icon-button { color:var(--text); border-radius:3px; }
.icon-button:active,.tool-button:active,.text-button:active { background:#e2e7d4; }
.menu-button { width:42px; align-self:center; }
.menu-button span { height:2px; width:21px; border-radius:0; background:var(--text); }
.menu-button span:nth-child(2) { width:14px; margin-right:7px; }
.new-button { width:42px; height:42px; background:var(--accent); border:1px solid var(--text); font-size:27px; box-shadow:3px 3px 0 var(--text); }
.status-dot { background:#a9ada5; }
.status-dot.online { background:#618a4d; box-shadow:0 0 0 3px #dbe8cb; }
.status-dot.pending { background:#c18646; }
.status-dot.error { background:var(--red); }
.connection-banner { background:#e9d8cc; color:#663528; border-bottom:1px solid #b98572; }
.text-button { color:#355538; border-radius:2px; font-weight:700; }

.transcript {
  padding:26px max(19px,calc((100% - 710px)/2)) 32px;
  scrollbar-color:#b3b9a8 transparent;
}
.empty-state { margin:max(50px,11vh) 6px 0; text-align:left; max-width:310px; }
.empty-symbol { margin:0 0 23px; width:67px; height:67px; border:1px solid var(--text); border-radius:0; background:var(--accent); color:var(--text); font-size:46px; }
.empty-state h2 { font-family:Georgia,"Noto Serif",serif; font-size:29px; line-height:1.05; color:var(--text); }
.empty-state p { font-size:14px; color:#5b675c; }
.load-history { border:1px solid var(--text); border-radius:2px; color:var(--text); }
.entry { margin-bottom:25px; }
.entry-meta { margin-bottom:8px; color:#7c8678; font-family:Consolas,"Courier New",monospace; font-size:10px; }
.entry-meta strong { color:#4a604d; font-size:11px; letter-spacing:.025em; }
.entry-body { font-size:15px; line-height:1.57; }
.entry-assistant { padding:3px 0 4px 15px; border-left:2px solid #a4c945; }
.entry-assistant .entry-body { color:var(--text); }
.entry-user { max-width:91%; padding:14px 17px; border:1px solid var(--text); border-radius:3px; background:#232c25; box-shadow:4px 4px 0 #d5d8c9; }
.entry-user .entry-body { color:#f7f7ef; }
.entry-user .entry-meta,.entry-user .entry-meta strong { color:#d5f36a; }
.entry-notice { margin-left:9px; border-left-color:#b38854; color:#6b5435; }
.entry-notice .entry-body { font-size:12px; }
.entry-notice.entry-error { border-left-color:var(--red); color:#923e37; }
.entry-tool { border-left-color:#a5b196; }
.tool-card { border:1px solid #b9c4af; border-radius:3px; background:#e9eddf; }
.tool-card summary { min-height:46px; }
.tool-card summary::before { border-radius:0; background:var(--text); color:var(--accent); }
.tool-card summary strong { color:var(--text); }
.tool-card summary em { color:#687669; }
.tool-detail { color:#314136; }
.activity-bar { background:#e7edda; color:#42573c; border-top:1px solid #c2cfb6; }
.activity-pulse { background:#8cb544; }

.composer {
  padding:13px 15px max(13px,env(safe-area-inset-bottom));
  background:#f4f2e9;
  border-top:2px solid var(--text);
}
.composer-input-wrap { border:1px solid #687969; border-radius:3px; background:#faf9f1; padding:9px 13px; }
.composer-input-wrap:focus-within { border-color:#29422e; box-shadow:3px 3px 0 #bdcf96; }
textarea { min-height:29px; color:var(--text); font-size:15px; }
textarea::placeholder { color:#808b7d; }
.composer-actions { padding-top:9px; }
.tool-button { color:#2d452f; font-family:Consolas,"Courier New",monospace; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; }
.slash-glyph { color:#2d452f; font-size:19px; }
.voice-button { color:#4b6251; font-size:18px; }
.voice-button.active { color:var(--red); }
.abort-button { color:var(--amber); }
.send-button { width:43px; height:43px; border:1px solid var(--text); border-radius:3px; background:var(--accent); color:var(--text); box-shadow:3px 3px 0 var(--text); }
.send-button:disabled { border-color:#c7cbbd; background:#e1e4d7; color:#a2a99b; box-shadow:none; }
.composer-status { color:#81562a; }

.scrim { background:rgba(12,19,13,.69); }
.drawer { width:min(89vw,360px); background:#1b211d; border-right:2px solid #c9e785; box-shadow:14px 0 42px #14211750; transition:transform .2s cubic-bezier(.2,.8,.2,1); }
.drawer .icon-button,.drawer .text-button { color:#e7eddc; }
.drawer-head { padding:21px 18px 22px; border-bottom:1px solid #465549; }
.brand-mark { width:47px; height:47px; border-radius:0; background:var(--accent); color:#1b211d; font-size:33px; }
.brand strong { color:#f4f4e9; font-family:Georgia,"Noto Serif",serif; font-size:22px; letter-spacing:-.04em; }
.brand small { color:#aab9a7; font-size:10px; }
.drawer-section-head { padding:22px 18px 11px; color:#a9baaa; font-family:Consolas,"Courier New",monospace; font-size:10px; letter-spacing:.12em; }
.drawer-section-head .text-button { color:var(--accent); text-transform:none; letter-spacing:0; }
.project-list { padding:0 13px 18px; scrollbar-color:#68766a transparent; }
.project { margin:0; border-bottom:1px solid #344038; }
.project-head { min-height:58px; border-radius:0; padding:12px 4px; color:#ebefe5; }
.project-head:hover,.project-head:focus-visible { background:#29342c; }
.project-icon { width:25px; height:25px; border:1px solid #6b806b; border-radius:0; background:transparent; color:var(--accent); font-family:Consolas,"Courier New",monospace; }
.project-name { font-size:14px; font-weight:700; }
.project-path { color:#899a8d; font-family:Consolas,"Courier New",monospace; font-size:9px; }
.project-chevron { color:#a4b5a3; }
.project-body { padding:0 0 12px 12px; border-left:1px solid #556650; margin-left:12px; }
.project-new { width:calc(100% - 2px); border:1px solid #657e58; border-radius:2px; color:var(--accent); padding:10px 12px; font-weight:700; }
.session-row { border-radius:2px; color:#c6d0c3; padding:10px 11px; }
.session-row strong { font-size:12px; font-weight:600; }
.session-row small { color:#8fa08e; }
.session-row.active { background:var(--accent); color:#192419; }
.session-row.active small { color:#435739; }
.session-row:hover { background:#334437; }
.session-row.active:hover { background:var(--accent); }
.session-more { color:var(--accent); }
.drawer-empty { color:#b6c3b4; }
.drawer-foot { border-top:1px solid #465549; color:#c4d0c2; padding:12px 17px max(12px,env(safe-area-inset-bottom)); }
.drawer-foot .text-button { color:var(--accent); }
.drawer-foot .status-dot.online { background:var(--accent); box-shadow:0 0 0 3px #3e5239; }

.commands-dialog {
  color-scheme:dark;
  width:min(100%,620px);
  max-height:min(80dvh,680px);
  padding:0 20px max(17px,env(safe-area-inset-bottom));
  border:0;
  border-top:4px solid var(--accent);
  border-radius:0;
  background:#1b211d;
  color:#f2f3e8;
  box-shadow:0 -18px 45px #111b13a0;
  overflow:hidden;
}
.commands-dialog::backdrop { background:rgba(12,18,13,.69); }
.sheet-handle { display:none; }
.sheet-head { margin:22px 0 18px; align-items:flex-start; }
.sheet-head small { color:var(--accent); font-family:Consolas,"Courier New",monospace; font-size:10px; letter-spacing:.15em; }
.sheet-head h2 { margin-top:5px; color:#f2f3e8; font-family:Georgia,"Noto Serif",serif; font-size:31px; line-height:1; }
.commands-dialog .icon-button { color:#e4ebdd; }
.commands-dialog input { height:49px; padding:12px 14px; border:1px solid #859a80; border-radius:2px; background:#242e26; color:#f2f3e8; font-size:14px; }
.commands-dialog input::placeholder { color:#9aad9a; }
.command-list { max-height:calc(80dvh - 210px); margin-top:16px; scrollbar-color:#71836e transparent; }
.command-row { min-height:61px; padding:10px 1px; border-bottom:1px solid #354238; color:#f2f3e8; gap:14px; }
.command-row:before { width:27px; height:31px; border-radius:0; background:var(--accent); color:#1b211d; font-size:17px; }
.command-row strong { font-size:14px; letter-spacing:.01em; }
.command-row span { color:#9eaf9e; font-size:11px; }
.command-row small { color:var(--accent); }
.command-row:hover { background:#29372c; }
.command-empty,.sheet-hint { color:#9fac9a; }
.sheet-hint { margin-top:16px; font-size:11px; }
.model-list .command-row.current { color:var(--accent); }
.model-list .command-row small { color:var(--accent); }
.pairing-dialog { border:2px solid var(--accent); border-radius:0; background:#1b211d; color:#f2f3e8; }
.pairing-dialog { color-scheme:dark; }
.pairing-mark { border-radius:0; background:var(--accent); color:#1b211d; }
.pairing-panel h2 { font-family:Georgia,"Noto Serif",serif; font-size:26px; }
.pairing-panel p { color:#b3c0b0; }
.pairing-panel label { color:#d5e0d1; }
.pairing-panel input { border-color:#859a80; border-radius:2px; background:#242e26; color:#f2f3e8; }
.pairing-actions button { border-radius:2px; background:#2b382e; color:#f2f3e8; }
.pairing-actions button[type=submit] { background:var(--accent); color:#1b211d; }
.toast { border-radius:2px; }
.toast[data-kind=success] { background:#2f4b31; color:#e4f5c1; }
@media(max-width:380px) {
  .topbar { gap:7px; padding-left:10px; padding-right:10px; }
  .title-group h1 { font-size:19px; }
  .session-subline { font-size:9px; }
  .transcript { padding-left:15px; padding-right:15px; }
}

.drawer-settings {
  flex:none;
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:57px;
  padding:12px 20px;
  border:0;
  border-top:1px solid #465549;
  background:#222b24;
  color:#f1f3e8;
  text-align:left;
  font-size:14px;
  font-weight:700;
}
.drawer-settings span:first-child { color:var(--accent); font-size:20px; line-height:1; }
.drawer-settings span:nth-child(2) { flex:1; }
.drawer-settings span:last-child { color:var(--accent); }
.drawer-settings:hover,.drawer-settings:focus-visible { background:#2d3b2e; }
.settings-dialog[open] {
  display:flex;
  flex-direction:column;
  height:min(91dvh,780px);
  max-height:91dvh;
  padding-bottom:max(12px,env(safe-area-inset-bottom));
}
.settings-dialog .sheet-head { flex:none; margin-bottom:16px; }
.settings-current {
  flex:none;
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:14px 16px 15px;
  border-left:3px solid var(--accent);
  background:#29362a;
}
.settings-kicker,.settings-section-head {
  color:#aec2aa;
  font-family:Consolas,"Courier New",monospace;
  font-size:10px;
  font-weight:700;
  letter-spacing:.09em;
}
.settings-current strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#f5f7e9; font-family:Georgia,"Noto Serif",serif; font-size:22px; }
.settings-current>span:last-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--accent); font-family:Consolas,"Courier New",monospace; font-size:11px; }
.settings-connection { flex:none; display:flex; align-items:flex-start; gap:10px; padding:12px 3px 15px; border-bottom:1px solid #485648; }
.settings-connection .status-dot { margin-top:5px; }
.settings-connection>div { min-width:0; display:flex; flex-direction:column; gap:3px; }
.settings-connection strong { color:#d8e5d1; font-size:12px; }
.settings-connection small { color:#91a390; font-family:Consolas,"Courier New",monospace; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.settings-section-head { flex:none; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:18px 2px 9px; }
.settings-section-head small { color:var(--accent); font-size:10px; }
.settings-dialog input { flex:none; }
.settings-dialog select {
  flex:none;
  width:100%;
  min-height:40px;
  margin-top:9px;
  padding:8px 11px;
  border:1px solid #667f64;
  border-radius:2px;
  background:#243126;
  color:#e8eee1;
  font-size:12px;
}
.settings-dialog .model-list { flex:1; min-height:0; max-height:none; overflow-y:auto; margin-top:8px; }
.model-row {
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:61px;
  padding:10px 8px;
  border:0;
  border-bottom:1px solid #364437;
  background:transparent;
  color:#e8eee1;
  text-align:left;
}
.model-row:hover:not(:disabled),.model-row:focus-visible { background:#2b3b2e; }
.model-row.current { background:#334831; border-left:3px solid var(--accent); padding-left:5px; }
.model-row.pending { background:#35452d; }
.model-row:disabled { opacity:1; cursor:default; }
.model-row-main { display:flex; flex:1; flex-direction:column; gap:4px; min-width:0; }
.model-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:700; }
.model-row small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#9bac99; font-family:Consolas,"Courier New",monospace; font-size:10px; }
.model-row-marker { flex:none; width:26px; height:26px; display:grid; place-items:center; border:1px solid #667f64; color:var(--accent); font-size:16px; }
.model-row.current .model-row-marker { border-color:var(--accent); background:var(--accent); color:#1b211d; }
.model-more { width:100%; min-height:46px; margin-top:5px; border:1px solid #718867; background:#2b382c; color:var(--accent); font-size:12px; font-weight:700; }
.model-error { margin:9px 0; padding:10px 11px; border-left:2px solid #dc9278; color:#f3b9a5; background:#3a2925; font-size:12px; }
.settings-dialog .sheet-hint { flex:none; margin-bottom:0; }
@media(max-width:380px) {
  .settings-dialog { padding-left:15px; padding-right:15px; }
  .settings-dialog .sheet-head h2 { font-size:28px; }
  .settings-current strong { font-size:20px; }
}

/* Transcript formatting and live activity */
.markdown-body { white-space:normal; }
.markdown-body p { margin:0 0 .7em; }
.markdown-body p:last-child { margin-bottom:0; }
.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5 { margin:1.1em 0 .4em; font-family:Georgia,"Noto Serif",serif; line-height:1.2; }
.markdown-body h2:first-child,.markdown-body h3:first-child { margin-top:0; }
.markdown-body h2 { font-size:1.42em; }
.markdown-body h3 { font-size:1.22em; }
.markdown-body h4,.markdown-body h5 { font-size:1.08em; }
.markdown-body strong { font-weight:750; }
.markdown-body em { font-style:italic; }
.markdown-body ul,.markdown-body ol { margin:.4em 0 .9em; padding-left:1.5em; }
.markdown-body li { margin:.26em 0; }
.markdown-body blockquote { margin:.7em 0; padding:.1em 0 .1em 13px; border-left:2px solid #a5bd6c; color:#52644c; }
.markdown-body blockquote p { margin:.3em 0; }
.markdown-body a { color:#326b4e; text-decoration:underline; text-underline-offset:2px; }
.markdown-body :not(pre)>code { padding:1px 4px; background:#e4e9d5; color:#85502d; font-family:Consolas,"Courier New",monospace; font-size:.91em; }
.markdown-body hr { border:0; border-top:1px solid #c9d0bd; margin:1.1em 0; }
.md-code { position:relative; margin:.8em 0 1em; padding:12px 14px; overflow:auto; border:1px solid #bbc9b3; background:#202921; color:#dce8d7; font:12px/1.52 Consolas,"Courier New",monospace; }
.md-code code { display:block; min-width:max-content; }
.code-language { display:block; margin:-3px 0 9px; color:#a5bd94; text-transform:uppercase; font-size:10px; letter-spacing:.1em; }
.code-string { color:#9cd796; }.code-keyword { color:#ffae77; }.code-number { color:#d7c782; }.code-comment { color:#869b82; }
.code-added { color:#9bd29b; background:#2b493331; }.code-removed { color:#e8a492; background:#793f3931; }
.entry-delivery { display:block; margin-top:7px; opacity:.74; font:10px Consolas,"Courier New",monospace; }
.entry-user.entry-error { border-color:#b35448; }
.entry-thinking { margin:0 0 16px 9px; padding-left:14px; border-left:2px solid #b9c8aa; }
.thinking-placeholder,.thinking-card summary { display:flex; align-items:center; min-height:32px; color:#677c5e; font:700 11px Consolas,"Courier New",monospace; letter-spacing:.02em; }
.thinking-placeholder::before,.thinking-card summary::before { content:"◌"; margin-right:9px; font-size:18px; line-height:1; color:#7c9d67; }
.thinking-placeholder::after { content:""; width:4px; height:4px; margin-left:3px; border-radius:50%; background:currentColor; animation:pulse 1.3s infinite; }
.thinking-card summary { cursor:pointer; list-style:none; }
.thinking-card summary::-webkit-details-marker { display:none; }
.thinking-card[open] summary::before { content:"◉"; }
.thinking-content { max-height:300px; overflow:auto; margin:3px 0 11px; padding:9px 12px; border:1px solid #cad4c0; background:#ecf0e5; color:#52634e; font:12px/1.56 "Segoe UI",Arial,sans-serif; }
.thinking-content p { margin:0 0 .5em; }.thinking-content p:last-child { margin-bottom:0; }
.thinking-content code { font-family:Consolas,"Courier New",monospace; }
.tool-card summary::before { content:none; }
.tool-glyph { flex:none; display:grid; place-items:center; width:26px; height:26px; background:#253629; color:#d5f36a; font:700 16px Consolas,"Courier New",monospace; }
.tool-card summary strong { font-family:Consolas,"Courier New",monospace; font-size:11px; }
.tool-section-label { display:block; padding:8px 12px 0; border-top:1px solid #b9c4af; color:#697c68; font:700 10px Consolas,"Courier New",monospace; text-transform:uppercase; letter-spacing:.09em; }
.tool-detail { margin:0; max-height:280px; color:#314136; }
.tool-detail .ansi-red { color:#c7695c; }.tool-detail .ansi-green { color:#398658; }.tool-detail .ansi-yellow { color:#a77327; }.tool-detail .ansi-blue { color:#4b78ae; }.tool-detail .ansi-magenta { color:#a269af; }.tool-detail .ansi-cyan { color:#3c8b9d; }.tool-detail .ansi-muted { color:#7b8a7d; }
.composer-telemetry { display:flex; flex-wrap:wrap; align-items:center; gap:5px 13px; margin:-3px 0 10px; overflow:hidden; }
.telemetry-chip { display:inline-flex; align-items:baseline; gap:4px; min-width:0; color:#71806e; font:9px Consolas,"Courier New",monospace; white-space:nowrap; }
.telemetry-chip strong { max-width:112px; overflow:hidden; text-overflow:ellipsis; color:#375440; font-size:10px; }
.settings-theme { flex:none; display:flex; align-items:center; gap:12px; padding:12px 0 0; }
.settings-theme label { flex:1; color:#aec2aa; font:700 10px Consolas,"Courier New",monospace; letter-spacing:.08em; }
.settings-theme select { flex:none; width:58%; margin:0; }
@media(max-width:380px) { .telemetry-chip:nth-child(4) { display:none; } .settings-theme label { font-size:9px; } }

/* Alternate styles keep the same structure and content. */
:root[data-theme="terminal"] { color-scheme:dark; font-family:Consolas,"Courier New",monospace; --bg:#111411; --surface:#1c211c; --raised:#273026; --line:#3a473c; --text:#e6e9df; --muted:#9aa999; --accent:#f19a6d; --amber:#eda773; --red:#e7806f; }
:root[data-theme="night"] { color-scheme:dark; --bg:#151c27; --surface:#202a39; --raised:#293548; --line:#445268; --text:#edf1f4; --muted:#aab9c9; --accent:#9bd8eb; --amber:#f4c17e; --red:#e78c94; }
:root[data-theme="terminal"] body,:root[data-theme="night"] body { background:var(--bg); }
:root[data-theme="terminal"] .app-shell,:root[data-theme="night"] .app-shell { background:var(--bg); box-shadow:none; }
:root[data-theme="terminal"] .topbar,:root[data-theme="night"] .topbar { background:var(--surface); border-color:var(--accent); }
:root[data-theme="terminal"] .topbar-eyebrow,:root[data-theme="night"] .topbar-eyebrow { color:var(--muted); }
:root[data-theme="terminal"] .title-group h1,:root[data-theme="night"] .title-group h1 { color:var(--text); }
:root[data-theme="terminal"] .session-subline,:root[data-theme="night"] .session-subline { color:var(--muted); }
:root[data-theme="terminal"] .session-subline button,:root[data-theme="night"] .session-subline button { color:var(--accent); }
:root[data-theme="terminal"] .menu-button span,:root[data-theme="night"] .menu-button span { background:var(--text); }
:root[data-theme="terminal"] .new-button,:root[data-theme="night"] .new-button { background:var(--accent); box-shadow:none; }
:root[data-theme="terminal"] .transcript,:root[data-theme="night"] .transcript { background:var(--bg); }
:root[data-theme="terminal"] .entry-assistant .entry-body,:root[data-theme="night"] .entry-assistant .entry-body { color:var(--text); }
:root[data-theme="terminal"] .entry-meta,:root[data-theme="night"] .entry-meta { color:var(--muted); }
:root[data-theme="terminal"] .entry-meta strong,:root[data-theme="night"] .entry-meta strong { color:var(--accent); }
:root[data-theme="terminal"] .entry-user,:root[data-theme="night"] .entry-user { background:var(--raised); border-color:var(--line); box-shadow:none; }
:root[data-theme="terminal"] .entry-user .entry-body,:root[data-theme="night"] .entry-user .entry-body { color:var(--text); }
:root[data-theme="terminal"] .entry-notice,:root[data-theme="night"] .entry-notice { color:var(--amber); }
:root[data-theme="terminal"] .tool-card,:root[data-theme="night"] .tool-card { background:var(--surface); border-color:var(--line); }
:root[data-theme="terminal"] .tool-card summary strong,:root[data-theme="night"] .tool-card summary strong { color:var(--text); }
:root[data-theme="terminal"] .tool-card summary em,:root[data-theme="night"] .tool-card summary em { color:var(--muted); }
:root[data-theme="terminal"] .tool-section-label,:root[data-theme="night"] .tool-section-label { border-color:var(--line); color:var(--muted); }
:root[data-theme="terminal"] .tool-detail,:root[data-theme="night"] .tool-detail { color:var(--text); }
:root[data-theme="terminal"] .thinking-content,:root[data-theme="night"] .thinking-content { background:var(--surface); border-color:var(--line); color:var(--muted); }
:root[data-theme="terminal"] .thinking-card summary,:root[data-theme="terminal"] .thinking-placeholder,:root[data-theme="night"] .thinking-card summary,:root[data-theme="night"] .thinking-placeholder { color:var(--accent); }
:root[data-theme="terminal"] .markdown-body blockquote,:root[data-theme="night"] .markdown-body blockquote { border-color:var(--accent); color:var(--muted); }
:root[data-theme="terminal"] .markdown-body a,:root[data-theme="night"] .markdown-body a { color:var(--accent); }
:root[data-theme="terminal"] .markdown-body :not(pre)>code,:root[data-theme="night"] .markdown-body :not(pre)>code { background:var(--raised); color:var(--amber); }
:root[data-theme="terminal"] .composer,:root[data-theme="night"] .composer { background:var(--surface); border-color:var(--accent); }
:root[data-theme="terminal"] .composer-input-wrap,:root[data-theme="night"] .composer-input-wrap { background:var(--bg); border-color:var(--line); box-shadow:none; }
:root[data-theme="terminal"] .composer-input-wrap:focus-within,:root[data-theme="night"] .composer-input-wrap:focus-within { border-color:var(--accent); box-shadow:none; }
:root[data-theme="terminal"] textarea,:root[data-theme="night"] textarea { color:var(--text); }
:root[data-theme="terminal"] textarea::placeholder,:root[data-theme="night"] textarea::placeholder { color:var(--muted); }
:root[data-theme="terminal"] .telemetry-chip,:root[data-theme="night"] .telemetry-chip { color:var(--muted); }
:root[data-theme="terminal"] .telemetry-chip strong,:root[data-theme="night"] .telemetry-chip strong { color:var(--accent); }
:root[data-theme="terminal"] .tool-button,:root[data-theme="night"] .tool-button { color:var(--text); }
:root[data-theme="terminal"] .slash-glyph,:root[data-theme="night"] .slash-glyph { color:var(--accent); }
:root[data-theme="terminal"] .send-button,:root[data-theme="night"] .send-button { background:var(--accent); color:var(--bg); border-color:var(--accent); box-shadow:none; }
:root[data-theme="terminal"] .send-button:disabled,:root[data-theme="night"] .send-button:disabled { background:var(--raised); color:var(--muted); border-color:var(--line); }
:root[data-theme="terminal"] .drawer,:root[data-theme="terminal"] .commands-dialog,:root[data-theme="night"] .drawer,:root[data-theme="night"] .commands-dialog { background:var(--surface); border-color:var(--accent); color:var(--text); }
:root[data-theme="terminal"] .sheet-head h2,:root[data-theme="night"] .sheet-head h2 { color:var(--text); }
:root[data-theme="terminal"] .settings-current,:root[data-theme="night"] .settings-current { background:var(--raised); }
:root[data-theme="terminal"] .settings-current strong,:root[data-theme="night"] .settings-current strong { color:var(--text); }
:root[data-theme="terminal"] .settings-current>span:last-child,:root[data-theme="night"] .settings-current>span:last-child { color:var(--accent); }
:root[data-theme="terminal"] .settings-dialog input,:root[data-theme="terminal"] .settings-dialog select,:root[data-theme="night"] .settings-dialog input,:root[data-theme="night"] .settings-dialog select { background:var(--bg); border-color:var(--line); color:var(--text); }
:root[data-theme="terminal"] .settings-theme label,:root[data-theme="terminal"] .settings-kicker,:root[data-theme="terminal"] .settings-section-head,:root[data-theme="night"] .settings-theme label,:root[data-theme="night"] .settings-kicker,:root[data-theme="night"] .settings-section-head { color:var(--muted); }
:root[data-theme="terminal"] .model-row,:root[data-theme="night"] .model-row { color:var(--text); border-color:var(--line); }
:root[data-theme="terminal"] .model-row.current,:root[data-theme="night"] .model-row.current { background:var(--raised); }
:root[data-theme="terminal"] .model-row.current .model-row-marker,:root[data-theme="night"] .model-row.current .model-row-marker { background:var(--accent); color:var(--bg); }
:root[data-theme="terminal"] .drawer-settings,:root[data-theme="night"] .drawer-settings { background:var(--raised); border-color:var(--line); }
:root[data-theme="terminal"] .brand strong,:root[data-theme="night"] .brand strong { color:var(--text); }
:root[data-theme="terminal"] .project-head,:root[data-theme="night"] .project-head { color:var(--text); }
:root[data-theme="terminal"] .project-path,:root[data-theme="night"] .project-path { color:var(--muted); }
:root[data-theme="terminal"] .session-row.active,:root[data-theme="night"] .session-row.active { background:var(--accent); color:var(--bg); }
:root[data-theme="terminal"] .command-row,:root[data-theme="night"] .command-row { color:var(--text); border-color:var(--line); }
:root[data-theme="terminal"] .activity-bar,:root[data-theme="night"] .activity-bar { background:var(--raised); color:var(--accent); border-color:var(--line); }

.md-table-scroll { max-width:100%; margin:.85em 0 1em; overflow-x:auto; border:1px solid #c4cebb; scrollbar-width:thin; }
.md-table { border-collapse:collapse; min-width:100%; width:max-content; font-size:12px; line-height:1.5; }
.md-table th,.md-table td { padding:8px 10px; border-right:1px solid #d5dccd; border-bottom:1px solid #d5dccd; vertical-align:top; }
.md-table th { background:#e5ebda; color:#2d422e; font-weight:750; white-space:nowrap; }
.md-table tr:nth-child(even) td { background:#edf0e7; }
.md-table tr:last-child td { border-bottom:0; }
.md-table th:last-child,.md-table td:last-child { border-right:0; }
.composer { padding-top:16px; }
.composer-input-wrap { padding:12px 13px; }
textarea { min-height:72px; max-height:200px; font-size:15px; line-height:1.48; }
.composer-actions { padding-top:10px; }
.telemetry-chip:first-child { flex-basis:100%; }
.telemetry-chip:first-child strong { max-width:none; font-size:11px; overflow:visible; overflow-wrap:anywhere; white-space:normal; }
.session-subline { align-items:flex-start; flex-direction:column; gap:1px; }
.session-subline button { max-width:100%; font-size:10px; }
:root[data-theme="terminal"] .md-table-scroll,:root[data-theme="night"] .md-table-scroll { border-color:var(--line); }
:root[data-theme="terminal"] .md-table th,:root[data-theme="night"] .md-table th { background:var(--raised); color:var(--accent); border-color:var(--line); }
:root[data-theme="terminal"] .md-table td,:root[data-theme="night"] .md-table td { border-color:var(--line); }
:root[data-theme="terminal"] .md-table tr:nth-child(even) td,:root[data-theme="night"] .md-table tr:nth-child(even) td { background:var(--surface); }
:root[data-theme="terminal"] .new-button,:root[data-theme="night"] .new-button { color:var(--bg); }
:root[data-theme="terminal"] .entry-assistant,:root[data-theme="night"] .entry-assistant { border-color:var(--accent); }
:root[data-theme="terminal"] .tool-glyph,:root[data-theme="night"] .tool-glyph { background:var(--raised); color:var(--accent); }
:root[data-theme="night"] .code-string { color:#a4dda9; }
:root[data-theme="night"] .code-keyword { color:#e8b0dd; }
:root[data-theme="terminal"] .title-group h1,:root[data-theme="terminal"] .sheet-head h2,:root[data-theme="terminal"] .empty-state h2 { font-family:Consolas,"Courier New",monospace; letter-spacing:-.05em; }
:root[data-theme="terminal"] .entry-body { font-size:13px; line-height:1.6; }
:root[data-theme="terminal"] .entry-user,:root[data-theme="terminal"] .tool-card,:root[data-theme="terminal"] .composer-input-wrap,:root[data-theme="terminal"] .new-button,:root[data-theme="terminal"] .send-button { border-radius:0; }
:root[data-theme="terminal"] .entry-user { background:#222820; border-left:3px solid var(--accent); }
:root[data-theme="terminal"] .md-table th { background:#2a322b; }
:root[data-theme="night"] .entry-user { border-radius:17px 17px 5px 17px; }
:root[data-theme="night"] .tool-card,:root[data-theme="night"] .composer-input-wrap { border-radius:12px; }
:root[data-theme="night"] .new-button,:root[data-theme="night"] .send-button { border-radius:11px; }
:root[data-theme="night"] .settings-current { border-radius:8px; }
.settings-current strong { white-space:normal; overflow:visible; overflow-wrap:anywhere; line-height:1.2; }

/* Motion belongs to state changes, never to text deltas. */
[hidden] { display:none!important; }
.app-shell { position:relative; }
.launch-intro { position:fixed; inset:0; z-index:30; display:flex; flex-direction:column; justify-content:space-between; padding:max(24px,env(safe-area-inset-top)) 26px max(25px,env(safe-area-inset-bottom)); background:#1b211d; color:#edf0e5; pointer-events:none; animation:launch-dismiss .46s 1.07s forwards; }
.launch-top,.launch-bottom { display:flex; justify-content:space-between; align-items:center; gap:14px; font:700 10px Consolas,"Courier New",monospace; letter-spacing:.14em; }
.launch-top span:last-child { color:#829381; }
.launch-center { align-self:center; display:flex; flex-direction:column; align-items:center; text-align:center; margin-top:-20px; animation:launch-rise .55s cubic-bezier(.2,.8,.2,1) both; }
.launch-orbit { position:relative; display:block; width:118px; height:118px; margin-bottom:-118px; border:1px solid #485b44; border-radius:50%; transform:rotate(-24deg); }
.launch-orbit::after { content:""; position:absolute; top:10px; left:8px; width:9px; height:9px; border-radius:50%; background:#d5f36a; box-shadow:0 0 0 6px #d5f36a20; }
.launch-mark { display:grid; place-items:center; width:118px; height:118px; color:#d5f36a; font:96px/.9 Georgia,serif; }
.launch-center strong { margin-top:32px; font:500 28px/1.15 Georgia,serif; letter-spacing:-.025em; }
.launch-center small { margin-top:11px; color:#a9b5a5; font:700 10px Consolas,"Courier New",monospace; letter-spacing:.14em; }
.launch-bottom { flex-direction:column; align-items:stretch; color:#a9b5a5; }
.launch-progress { display:block; height:2px; width:100%; background:#475644; overflow:hidden; }
.launch-progress::after { content:""; display:block; width:45%; height:100%; background:#d5f36a; animation:launch-line .85s ease-in-out both; }
@keyframes launch-line { from { transform:translateX(-110%); } to { transform:translateX(225%); } }
@keyframes launch-rise { from { opacity:0; transform:translateY(16px) scale(.97); } to { opacity:1; transform:none; } }
@keyframes launch-dismiss { to { opacity:0; visibility:hidden; } }
.motion-dots { display:inline-flex; align-items:center; justify-content:center; gap:3px; width:27px; height:13px; margin-left:8px; vertical-align:middle; color:var(--accent); }
.motion-dots i { display:block; width:5px; height:5px; border-radius:50%; background:currentColor; opacity:.42; animation:dot-travel .9s ease-in-out infinite; }
.motion-dots i:nth-child(2) { animation-delay:.13s; }.motion-dots i:nth-child(3) { animation-delay:.26s; }
@keyframes dot-travel { 0%,65%,100% { opacity:.4; transform:translateY(2px) scale(.78); } 30% { opacity:1; transform:translateY(-3px) scale(1.18); } }
.thinking-placeholder::after { content:none; }
.thinking-placeholder .motion-dots,.thinking-card .motion-dots { color:currentColor; }
.activity-bar .motion-dots { margin:0; }
.tool-card summary em .motion-dots { width:20px; margin-left:4px; }
.tool-card summary em .motion-dots i { width:4px; height:4px; }
.entry-appear { animation:entry-arrive .24s cubic-bezier(.2,.7,.2,1) both; }
@keyframes entry-arrive { from { opacity:0; transform:translateY(9px); } to { opacity:1; transform:none; } }
.jump-latest { position:absolute; z-index:4; right:18px; bottom:var(--bottom-panel-height,245px); min-height:38px; display:flex; align-items:center; gap:8px; padding:0 13px; border:1px solid var(--line); border-radius:3px; background:var(--surface); color:var(--text); box-shadow:0 6px 22px #0003; font:700 11px Consolas,"Courier New",monospace; animation:jump-appear .2s ease-out both; }
@keyframes jump-appear { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
.jump-latest:active,.send-button:not(:disabled):active { transform:scale(.95); }
:root[data-theme="terminal"] .jump-latest,:root[data-theme="night"] .jump-latest { background:var(--raised); color:var(--accent); }
@media (prefers-reduced-motion:reduce) { .launch-intro { display:none!important; } .motion-dots i { opacity:1; transform:none; } }

/* Phone layout: the conversation owns the screen; controls stay within thumb reach. */
@media (max-width:719px) {
  :root[data-theme="terminal"] { font-family:"Segoe UI",Arial,sans-serif; }
  body,.app-shell { background:var(--bg); }
  .app-shell { box-shadow:none; }
  .topbar { min-height:64px; padding:7px 12px; gap:5px; border-bottom:1px solid var(--line); }
  :root[data-theme="terminal"] .topbar,:root[data-theme="night"] .topbar { border-color:var(--line); }
  .topbar-eyebrow { display:none; }
  .title-group h1,:root[data-theme="terminal"] .title-group h1 { font-family:"Segoe UI",Arial,sans-serif; font-size:16px; font-weight:700; letter-spacing:-.025em; }
  .title-line { gap:6px; }
  .status-dot { width:6px; height:6px; }
  .session-subline { flex-direction:row; align-items:center; gap:5px; margin-top:3px; font-size:10px; line-height:1.2; }
  .session-subline>span { max-width:32%; flex:none; }
  .session-subline button { flex:1; min-width:0; max-width:none; padding:0; font-size:10px; }
  .session-subline button:not([hidden])::before { content:"·"; color:var(--muted); margin-right:5px; }
  .icon-button { border-radius:11px; }
  .menu-button,.new-button { width:44px; height:44px; flex:none; }
  .menu-button span { width:18px; height:1.5px; border-radius:2px; }
  .menu-button span:nth-child(2) { width:13px; margin-right:5px; }
  .new-button,:root[data-theme="terminal"] .new-button,:root[data-theme="night"] .new-button { border:0; background:transparent; color:var(--text); box-shadow:none; font-size:26px; font-weight:300; }
  .transcript { padding:17px 15px 22px; }
  .entry { margin-bottom:17px; }
  .entry-meta { margin-bottom:5px; font-size:10px; }
  .entry-meta strong { font-size:10px; }
  .entry-body,:root[data-theme="terminal"] .entry-body { font-family:"Segoe UI",Arial,sans-serif; font-size:14.5px; line-height:1.5; }
  .entry-assistant,:root[data-theme="terminal"] .entry-assistant,:root[data-theme="night"] .entry-assistant { padding:0; border:0; }
  .entry-user,:root[data-theme="terminal"] .entry-user,:root[data-theme="night"] .entry-user { max-width:84%; padding:10px 12px; border:0; border-radius:17px 17px 5px 17px; background:var(--raised); box-shadow:none; }
  .entry-user .entry-body,:root[data-theme="terminal"] .entry-user .entry-body,:root[data-theme="night"] .entry-user .entry-body { color:var(--text); }
  .entry-user .entry-meta,.entry-user .entry-meta strong { color:var(--muted); }
  .entry-thinking { margin:0 0 12px; padding:0; border:0; }
  .thinking-placeholder,.thinking-card summary { min-height:30px; font-size:11px; }
  .thinking-placeholder::before,.thinking-card summary::before { margin-right:7px; font-size:16px; }
  .entry-tool { margin:0 0 14px; padding:0; border:0; }
  .tool-card,:root[data-theme="terminal"] .tool-card,:root[data-theme="night"] .tool-card { border:1px solid var(--line); border-radius:12px; background:var(--surface); }
  .tool-card summary { min-height:41px; padding:6px 10px; }
  .tool-glyph,:root[data-theme="terminal"] .tool-glyph,:root[data-theme="night"] .tool-glyph { width:20px; height:20px; background:transparent; color:var(--accent); }
  .activity-bar { min-height:28px; padding:4px 15px; background:var(--surface); border-top:1px solid var(--line); font-size:11px; }
  .composer,:root[data-theme="terminal"] .composer,:root[data-theme="night"] .composer { padding:8px 13px max(8px,env(safe-area-inset-bottom)); border-top:1px solid var(--line); background:var(--bg); }
  .composer-telemetry { flex-wrap:nowrap; gap:12px; width:100%; margin:0 0 7px; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; overscroll-behavior-inline:contain; }
  .composer-telemetry::-webkit-scrollbar { display:none; }
  .telemetry-chip,.telemetry-chip:first-child { flex:none; flex-basis:auto; font-size:9px; }
  .telemetry-chip strong,.telemetry-chip:first-child strong { max-width:none; overflow:visible; white-space:nowrap; font-size:10px; }
  .composer-input-wrap,:root[data-theme="terminal"] .composer-input-wrap,:root[data-theme="night"] .composer-input-wrap { position:relative; padding:6px 7px 6px 12px; border:1px solid var(--line); border-radius:20px; background:var(--surface); box-shadow:none; }
  .composer-input-wrap::after { content:""; position:absolute; inset:-3px; border:1px solid var(--accent); border-radius:22px; opacity:0; pointer-events:none; transition:opacity .18s ease; }
  .composer-input-wrap:focus-within::after { opacity:.65; }
  .composer-input-wrap:focus-within,:root[data-theme="terminal"] .composer-input-wrap:focus-within,:root[data-theme="night"] .composer-input-wrap:focus-within { border-color:var(--line); box-shadow:none; }
  textarea { min-height:26px; max-height:140px; padding:2px 0; font-family:"Segoe UI",Arial,sans-serif; font-size:16px; line-height:1.4; }
  .composer-actions { min-height:40px; gap:3px; padding-top:3px; }
  .tool-button { min-height:40px; padding:0 5px; font-size:10px; }
  .slash-glyph { font-size:17px; }
  .voice-button,.abort-button { width:40px; height:40px; font-size:17px; }
  .send-button,:root[data-theme="terminal"] .send-button,:root[data-theme="night"] .send-button { width:40px; height:40px; border:0; border-radius:50%; box-shadow:none; font-size:23px; }
  .send-button:disabled { opacity:.52; }
  .composer-status:not(:empty) { padding:4px 2px 0; }
  .jump-latest { border-radius:20px; }
  .toast { bottom:calc(118px + env(safe-area-inset-bottom)); }
  .drawer { border-right:1px solid var(--line); }
  .drawer-head { padding:16px 17px; }
  .brand-mark { width:39px; height:39px; border-radius:11px; font-size:28px; }
  .drawer-section-head { padding-top:16px; }
  .project-head { min-height:47px; }
  .project-icon { width:18px; height:18px; border:0; border-radius:0; background:transparent; font-size:13px; }
  .project-body { margin-left:8px; padding-left:10px; border-left:1px solid #465549; }
  .session-row { min-height:41px; padding:8px 10px; }
  .session-row.active,.session-row.active:hover { padding-left:8px; border-left:2px solid var(--accent); background:transparent; color:var(--accent); }
  :root[data-theme="terminal"] .session-row.active,:root[data-theme="night"] .session-row.active { background:transparent; color:var(--accent); }
  .session-row.active small { color:var(--muted); }
  .drawer-settings { min-height:50px; }
  .commands-dialog,.settings-dialog { border-top:1px solid var(--line); border-radius:18px 18px 0 0; }
  .sheet-head { margin:17px 0 14px; }
  .sheet-head h2 { font-size:25px; }
  .settings-current { padding:10px 12px; }
  .settings-current strong { font-family:"Segoe UI",Arial,sans-serif; font-size:18px; }
  .settings-connection { padding:10px 3px 12px; }
  .settings-section-head { padding-top:13px; }
  .model-row { min-height:53px; padding-top:7px; padding-bottom:7px; }
}

@keyframes surface-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }
@keyframes veil-enter { from { opacity:0; } to { opacity:1; } }
.commands-dialog[open],.settings-dialog[open],.pairing-dialog[open] { animation:surface-enter .24s cubic-bezier(.2,.8,.2,1) both; }
.commands-dialog::backdrop,.settings-dialog::backdrop,.pairing-dialog::backdrop,.scrim:not([hidden]) { animation:veil-enter .2s ease-out both; }
.tool-card[open] .tool-detail,.tool-card[open] .tool-section-label,.thinking-card[open] .thinking-content { animation:surface-enter .2s cubic-bezier(.2,.8,.2,1) both; }
.status-dot.pending { animation:pulse 1.25s ease-in-out infinite; }
.composer-actions button,.new-button { transition:transform .16s cubic-bezier(.2,.8,.2,1),opacity .16s ease; }
.composer-actions button:active,.new-button:active { transform:scale(.93); }

/* One glance for context; exact values stay in the host-backed sheet. */
.topbar { position:relative; z-index:2; }
.context-button { position:relative; display:grid; place-items:center; flex:none; width:54px; height:48px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--text); cursor:pointer; }
.context-button:disabled { opacity:.45; cursor:default; }
.context-button:active:not(:disabled) { transform:scale(.93); }
.context-ring { width:42px; height:42px; overflow:visible; }
.context-ring circle { fill:none; stroke-width:2.4; }
.context-ring-track { stroke:var(--line); }
.context-ring-fill { stroke:var(--accent); stroke-linecap:round; stroke-dasharray:0 100; transform:rotate(-90deg); transform-origin:center; transition:stroke-dasharray .35s ease; }
.context-button #context-percent { position:absolute; font:700 10px Consolas,"Courier New",monospace; letter-spacing:-.05em; }
.context-button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.app-shell[data-activity="thinking"] .context-ring-fill { filter:drop-shadow(0 0 4px var(--accent)); }
.context-dialog { max-height:min(88dvh,760px); padding-bottom:max(13px,env(safe-area-inset-bottom)); overflow-y:auto; background:var(--surface); border-color:var(--line); color:var(--text); }
.context-dialog .sheet-head h2,.context-dialog .icon-button { color:var(--text); }
.context-dialog .sheet-head { margin:17px 0 20px; }
.context-hero { display:flex; align-items:center; gap:19px; padding-bottom:19px; border-bottom:1px solid var(--line); }
.context-hero-gauge { position:relative; flex:none; width:96px; height:96px; display:grid; place-items:center; }
.context-hero-gauge svg { width:96px; height:96px; }
.context-hero-gauge svg circle { fill:none; stroke-width:5; }
.context-hero-gauge strong { position:absolute; font:700 21px "Segoe UI",Arial,sans-serif; letter-spacing:-.045em; color:var(--text); }
.context-dialog.loading .context-hero-gauge::after { content:""; position:absolute; inset:-4px; border:2px dotted var(--accent); border-left-color:transparent; border-bottom-color:transparent; border-radius:50%; animation:context-orbit 1.35s linear infinite; }
@keyframes context-orbit { to { transform:rotate(360deg); } }
.context-hero-copy { min-width:0; display:flex; flex-direction:column; gap:5px; }
.context-hero-copy small { color:var(--muted); font:700 9px Consolas,"Courier New",monospace; letter-spacing:.13em; }
.context-hero-copy strong { color:var(--text); font-size:20px; line-height:1.1; letter-spacing:-.035em; }
.context-hero-copy span { color:var(--muted); font:10px Consolas,"Courier New",monospace; overflow-wrap:anywhere; }
.context-totals { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:15px 0; border-bottom:1px solid var(--line); }
.context-totals>div { display:flex; flex-direction:column; gap:4px; }
.context-totals span { color:var(--muted); font-size:11px; }
.context-totals strong { color:var(--text); font-size:16px; letter-spacing:-.025em; }
.context-note { min-height:16px; margin:12px 0 14px; color:var(--muted); font-size:11px; line-height:1.45; }
.context-categories { display:grid; gap:11px; }
.context-category>div:first-child { display:flex; align-items:baseline; justify-content:space-between; gap:12px; font-size:12px; }
.context-category strong { flex:none; color:var(--text); font:700 11px Consolas,"Courier New",monospace; }
.context-category-track { height:4px; margin-top:6px; background:var(--raised); overflow:hidden; border-radius:3px; }
.context-category-track span { display:block; height:100%; border-radius:3px; background:var(--accent); transform-origin:left; animation:bar-arrive .35s ease-out both; }
.context-category-buffer .context-category-track span { background:var(--amber); }
.context-category-free .context-category-track span { background:var(--muted); }
@keyframes bar-arrive { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.context-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:18px; padding-top:12px; border-top:1px solid var(--line); color:var(--muted); font:10px Consolas,"Courier New",monospace; }
.context-footer button { color:var(--text); font-size:12px; }

/* Preferences are simple controls, with motion subordinate to content. */
.settings-effects { flex:none; margin-top:11px; border-top:1px solid #465549; border-bottom:1px solid #465549; }
.settings-effects label { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:7px 2px; cursor:pointer; }
.settings-effects label+label { border-top:1px solid #465549; }
.settings-effects label>span { display:flex; flex-direction:column; gap:3px; min-width:0; }
.settings-effects strong { color:#f2f3e8; font-size:12px; }
.settings-effects small { color:#aab7a8; font-size:10px; }
.settings-effects input { flex:none; appearance:none; width:36px; height:22px; border:1px solid #5b6b5b; border-radius:12px; background:#2e3a30; position:relative; cursor:pointer; }
.settings-effects input::after { content:""; position:absolute; top:3px; left:3px; width:14px; height:14px; border-radius:50%; background:var(--muted); transition:transform .18s ease,background .18s ease; }
.settings-effects input:checked { background:var(--accent); border-color:var(--accent); }
.settings-effects input:checked::after { transform:translateX(14px); background:var(--bg); }
.settings-effects input:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
:root[data-theme="terminal"] .settings-effects,:root[data-theme="night"] .settings-effects,:root[data-theme="mono"] .settings-effects,:root[data-theme="terminal"] .settings-effects label+label,:root[data-theme="night"] .settings-effects label+label,:root[data-theme="mono"] .settings-effects label+label { border-color:var(--line); }
:root[data-theme="terminal"] .settings-effects strong,:root[data-theme="night"] .settings-effects strong,:root[data-theme="mono"] .settings-effects strong { color:var(--text); }
:root[data-theme="terminal"] .settings-effects small,:root[data-theme="night"] .settings-effects small,:root[data-theme="mono"] .settings-effects small { color:var(--muted); }

/* A low-contrast light field responds to the active model state. */
.app-shell { isolation:isolate; --glow-a:rgba(143,186,103,.34); --glow-b:rgba(220,173,124,.28); }
.ambient-field { position:absolute; z-index:0; left:0; right:0; bottom:var(--bottom-panel-height,135px); height:min(42vh,350px); pointer-events:none; overflow:hidden; opacity:.26; transition:opacity .5s ease; mask-image:linear-gradient(to top,#000 0%,#0007 55%,transparent 100%); }
.ambient-field span { position:absolute; bottom:-34%; width:65%; height:115%; border-radius:50%; filter:blur(30px); background:radial-gradient(ellipse at center,var(--glow-a) 0%,transparent 66%); animation:ambient-drift 16s ease-in-out infinite alternate; }
.ambient-field span:first-child { left:0; }
.ambient-field span:last-child { right:0; background:radial-gradient(ellipse at center,var(--glow-b) 0%,transparent 66%); animation-delay:-6s; animation-duration:19s; }
.app-shell[data-activity="thinking"] .ambient-field { opacity:.8; }
.app-shell[data-activity="thinking"] .ambient-field span { animation-duration:5s; }
.app-shell[data-activity="working"] .ambient-field { opacity:.57; }
.app-shell[data-activity="working"] .ambient-field span { animation-duration:8s; }
.app-shell[data-activity="writing"] .ambient-field { opacity:.39; }
.app-shell[data-activity="writing"] .ambient-field span { animation-duration:11s; }
@keyframes ambient-drift { from { transform:translate3d(-8%,8%,0) scale(.88) rotate(-7deg); } to { transform:translate3d(12%,-8%,0) scale(1.14) rotate(9deg); } }
.transcript { position:relative; z-index:1; }
.composer,.activity-bar { position:relative; z-index:2; }
:root[data-ambient="off"] .ambient-field { display:none; }
:root[data-theme="terminal"] .app-shell { --glow-a:rgba(241,154,109,.42); --glow-b:rgba(112,164,104,.3); }
:root[data-theme="night"] .app-shell { --glow-a:rgba(105,174,217,.46); --glow-b:rgba(155,121,209,.37); }

/* Monochrome is an actual fourth palette, including navigation and sheets. */
:root[data-theme="mono"] { color-scheme:dark; --bg:#0c0d0f; --surface:#17181b; --raised:#24262a; --line:#424449; --text:#f7f7f5; --muted:#a9aaad; --accent:#f7f7f5; --amber:#d1d1d1; --red:#ef9a9a; }
:root[data-theme="mono"] body,:root[data-theme="mono"] .app-shell,:root[data-theme="mono"] .transcript { background:var(--bg); color:var(--text); box-shadow:none; }
:root[data-theme="mono"] .app-shell { --glow-a:rgba(245,245,245,.26); --glow-b:rgba(160,160,160,.2); }
:root[data-theme="mono"] .topbar,:root[data-theme="mono"] .composer,:root[data-theme="mono"] .activity-bar { background:var(--surface); border-color:var(--line); color:var(--text); }
:root[data-theme="mono"] .title-group h1,:root[data-theme="mono"] .entry-assistant .entry-body,:root[data-theme="mono"] .entry-user .entry-body { color:var(--text); }
:root[data-theme="mono"] .topbar-eyebrow,:root[data-theme="mono"] .session-subline,:root[data-theme="mono"] .entry-meta { color:var(--muted); }
:root[data-theme="mono"] .session-subline button,:root[data-theme="mono"] .entry-meta strong,:root[data-theme="mono"] .tool-button,:root[data-theme="mono"] .slash-glyph { color:var(--text); }
:root[data-theme="mono"] .menu-button span { background:var(--text); }
:root[data-theme="mono"] .new-button { background:transparent; color:var(--text); border:0; box-shadow:none; }
:root[data-theme="mono"] .entry-assistant { border-color:var(--line); }
:root[data-theme="mono"] .entry-user { background:var(--raised); border-color:var(--line); box-shadow:none; }
:root[data-theme="mono"] .entry-user .entry-meta,:root[data-theme="mono"] .entry-user .entry-meta strong { color:var(--muted); }
:root[data-theme="mono"] .entry-thinking,:root[data-theme="mono"] .thinking-card summary,:root[data-theme="mono"] .thinking-placeholder { color:var(--muted); border-color:var(--line); }
:root[data-theme="mono"] .thinking-content,:root[data-theme="mono"] .tool-card,:root[data-theme="mono"] .composer-input-wrap { background:var(--surface); border-color:var(--line); color:var(--text); box-shadow:none; }
:root[data-theme="mono"] .tool-card summary strong,:root[data-theme="mono"] .tool-detail { color:var(--text); }
:root[data-theme="mono"] .tool-section-label { color:var(--muted); border-color:var(--line); }
:root[data-theme="mono"] .tool-glyph { background:transparent; color:var(--text); }
:root[data-theme="mono"] .markdown-body a { color:var(--text); }
:root[data-theme="mono"] .markdown-body :not(pre)>code { background:var(--raised); color:var(--text); }
:root[data-theme="mono"] .md-code { background:#111214; border-color:var(--line); color:var(--text); }
:root[data-theme="mono"] .md-table-scroll,:root[data-theme="mono"] .md-table td,:root[data-theme="mono"] .md-table th { border-color:var(--line); }
:root[data-theme="mono"] .md-table th,:root[data-theme="mono"] .md-table tr:nth-child(even) td { background:var(--raised); color:var(--text); }
:root[data-theme="mono"] textarea { color:var(--text); }
:root[data-theme="mono"] textarea::placeholder,:root[data-theme="mono"] .telemetry-chip { color:var(--muted); }
:root[data-theme="mono"] .telemetry-chip strong { color:var(--text); }
:root[data-theme="mono"] .send-button { background:var(--text); color:var(--bg); border:0; box-shadow:none; }
:root[data-theme="mono"] .send-button:disabled { background:var(--raised); color:var(--muted); }
:root[data-theme="mono"] .drawer,:root[data-theme="mono"] .commands-dialog,:root[data-theme="mono"] .pairing-dialog { background:var(--surface); border-color:var(--line); color:var(--text); }
:root[data-theme="mono"] .brand-mark,:root[data-theme="mono"] .pairing-mark { background:var(--text); color:var(--bg); }
:root[data-theme="mono"] .brand strong,:root[data-theme="mono"] .sheet-head h2,:root[data-theme="mono"] .settings-current strong,:root[data-theme="mono"] .model-row { color:var(--text); }
:root[data-theme="mono"] .drawer-settings,:root[data-theme="mono"] .settings-current,:root[data-theme="mono"] .model-row.current { background:var(--raised); border-color:var(--line); }
:root[data-theme="mono"] .project-head,:root[data-theme="mono"] .session-row,:root[data-theme="mono"] .command-row { color:var(--text); border-color:var(--line); }
:root[data-theme="mono"] .session-row.active { background:transparent; color:var(--text); border-left:2px solid var(--text); }
:root[data-theme="mono"] .project-path,:root[data-theme="mono"] .model-row small,:root[data-theme="mono"] .sheet-hint { color:var(--muted); }
:root[data-theme="mono"] .settings-dialog input,:root[data-theme="mono"] .settings-dialog select,:root[data-theme="mono"] .settings-current,:root[data-theme="mono"] .context-dialog { border-color:var(--line); color:var(--text); }
:root[data-theme="mono"] .settings-dialog input,:root[data-theme="mono"] .settings-dialog select { background:var(--bg); }
:root[data-theme="mono"] .settings-kicker,:root[data-theme="mono"] .settings-section-head,:root[data-theme="mono"] .settings-theme label { color:var(--muted); }
:root[data-theme="mono"] .settings-current>span:last-child { color:var(--muted); }
:root[data-theme="mono"] .model-row-marker { border-color:var(--line); color:var(--text); }
:root[data-theme="mono"] .empty-symbol { background:var(--text); color:var(--bg); border-color:var(--text); }
:root[data-theme="mono"] .empty-state h2,:root[data-theme="mono"] .sheet-head h2 { font-family:"Segoe UI",Arial,sans-serif; letter-spacing:-.04em; }
:root[data-theme="mono"] .voice-button { color:var(--muted); }
:root[data-theme="mono"] .status-dot.online { background:var(--text); box-shadow:0 0 0 3px #ffffff26; }
:root[data-theme="mono"] .launch-intro { background:var(--bg); color:var(--text); }
:root[data-theme="mono"] .launch-mark,:root[data-theme="mono"] .launch-top span:last-child { color:var(--text); }
:root[data-theme="mono"] .launch-orbit { border-color:var(--line); }
:root[data-theme="mono"] .launch-orbit::after,:root[data-theme="mono"] .launch-progress::after { background:var(--text); box-shadow:none; }
:root[data-theme="mono"] .launch-progress { background:var(--line); }
:root[data-theme] .settings-effects input:checked { background:var(--accent); border-color:var(--accent); }

@media (max-width:719px) {
  .topbar { gap:3px; }
  .context-button { width:51px; height:46px; }
  .context-ring { width:40px; height:40px; }
  .composer-telemetry { gap:10px; overflow:hidden; }
  .telemetry-chip:first-child { display:flex; flex:1; flex-basis:auto; min-width:0; }
  .telemetry-chip:first-child strong { display:block; flex:1; min-width:0; max-width:none; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .telemetry-chip:not(:first-child) { flex:none; }
  :root[data-theme="mono"] .entry-assistant { border:0; }
  :root[data-theme="mono"] .entry-user { border:0; border-radius:17px 17px 5px 17px; }
  :root[data-theme="mono"] .composer { background:var(--bg); }
  :root[data-theme="mono"] .new-button { border-radius:11px; }
}
@media (prefers-reduced-motion:reduce) { .ambient-field span { animation:none!important; } }
@media (prefers-reduced-motion:reduce) { .context-dialog.loading .context-hero-gauge::after { display:none; } }
:root[data-motion="off"] .launch-intro { display:none!important; }
:root[data-motion="off"] .context-dialog.loading .context-hero-gauge::after { display:none; }
:root[data-motion="off"] *, :root[data-motion="off"] *::before, :root[data-motion="off"] *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }

/* Compact conversation controls: the draft is the focus, machine state stays legible. */
.icon-defs,.file-picker-input { display:none; }
.ui-icon { display:block; width:19px; height:19px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.menu-button .ui-icon { width:21px; height:21px; }
.new-button .ui-icon { width:23px; height:23px; }
.title-line { min-width:0; }
.title-group h1 { min-width:0; }
.session-subline { flex-direction:row; align-items:center; gap:8px; }
.session-subline #project-label { flex:1; max-width:none; }
.header-status { display:inline-flex; align-items:center; gap:5px; flex:none; white-space:nowrap; color:var(--muted); font:600 10px "Segoe UI",Arial,sans-serif; }
.header-status .status-dot { width:5px; height:5px; box-shadow:none; }
.header-status[data-state="busy"] { color:var(--accent); }
.header-status[data-state="busy"] .status-dot { animation:pulse 1.3s ease-in-out infinite; }
.header-status[data-state="offline"] { color:var(--red); }
.composer { --composer-veil:rgba(244,242,233,.9); --input-veil:rgba(252,251,246,.95); position:relative; background:linear-gradient(to bottom,transparent,var(--composer-veil) 36%); border-top:0; }
:root[data-theme="terminal"] .composer { --composer-veil:rgba(24,31,25,.86); --input-veil:rgba(26,34,28,.93); }
:root[data-theme="night"] .composer { --composer-veil:rgba(25,34,48,.86); --input-veil:rgba(32,42,58,.93); }
:root[data-theme="mono"] .composer { --composer-veil:rgba(12,13,15,.88); --input-veil:rgba(23,24,27,.94); }
.composer-input-wrap { background:var(--input-veil); }
.composer-actions { display:flex; align-items:center; gap:3px; }
.composer-spacer { flex:1; min-width:0; }
.toolbar-icon { width:36px; height:36px; flex:none; border-radius:50%; color:var(--text); font-size:20px; }
.commands-icon { font:600 20px Consolas,"Courier New",monospace; }
.picker-trigger { display:inline-flex; align-items:center; justify-content:center; gap:1px; min-width:0; max-width:220px; height:34px; padding:0 5px; border:0; border-radius:9px; background:transparent; color:var(--text); font:600 12px "Segoe UI",Arial,sans-serif; }
.picker-trigger span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.picker-trigger .ui-icon { width:13px; height:13px; }
.model-trigger { flex:1; }
.effort-trigger { flex:none; max-width:82px; }
.picker-trigger:active,.picker-trigger[aria-expanded="true"] { background:var(--raised); }
.attachment-previews { display:flex; gap:6px; overflow-x:auto; padding:0 0 6px; scrollbar-width:thin; }
.attachment-chip { display:flex; align-items:center; gap:5px; flex:none; max-width:180px; height:34px; padding:3px 4px 3px 5px; border:1px solid var(--line); border-radius:9px; background:var(--raised); color:var(--text); font-size:11px; }
.attachment-chip img { width:27px; height:27px; border-radius:5px; object-fit:cover; }
.attachment-file-icon { width:24px; text-align:center; font-size:17px; color:var(--accent); }
.attachment-chip>span:nth-last-child(2) { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.attachment-chip button { flex:none; width:26px; height:26px; padding:0; border:0; background:transparent; color:var(--text); font-size:18px; }
.choice-dialog,.quick-picker { width:min(calc(100vw - 24px),440px); max-height:min(70dvh,650px); padding-bottom:max(14px,env(safe-area-inset-bottom)); overflow-y:auto; }
.quick-picker[open] { display:flex; flex-direction:column; overflow:hidden; }
.quick-picker .sheet-head,.quick-picker input { flex:none; }
.quick-model-list { min-height:0; overflow-y:auto; }
.choice-dialog { max-height:46dvh; }
.choice-row { display:flex; align-items:center; gap:14px; width:100%; min-height:62px; padding:9px 8px; border:0; border-top:1px solid var(--line); background:transparent; color:inherit; text-align:left; }
.choice-row .ui-icon { width:22px; height:22px; }
.choice-row span { display:flex; flex-direction:column; gap:3px; }
.choice-row strong { font-size:14px; }
.choice-row small { color:var(--muted); font-size:11px; }
.quick-model-list { max-height:min(55dvh,460px); }
.effort-list { display:grid; gap:1px; }
.effort-row { display:flex; justify-content:space-between; align-items:center; width:100%; min-height:43px; padding:0 8px; border:0; border-bottom:1px solid var(--line); background:transparent; color:inherit; text-align:left; font-size:13px; }
.effort-row.current { color:var(--accent); font-weight:700; }
.effort-row:active,.choice-row:active { background:var(--raised); }

/* Light reaches the bottom edge and continues under the composer. */
.app-shell { --glow-a:rgba(139,189,69,.75); --glow-b:rgba(239,132,68,.7); }
:root[data-theme="terminal"] .app-shell { --glow-a:rgba(255,150,94,.72); --glow-b:rgba(141,193,122,.55); }
:root[data-theme="night"] .app-shell { --glow-a:rgba(91,173,235,.86); --glow-b:rgba(166,126,226,.79); }
:root[data-theme="mono"] .app-shell { --glow-a:rgba(244,244,244,.46); --glow-b:rgba(165,165,165,.3); }
.ambient-field { bottom:0; height:min(58dvh,520px); opacity:.76; mask-image:linear-gradient(to bottom,transparent 0%,#0008 34%,#000 78%); }
.ambient-field span { bottom:-8%; height:115%; width:76%; filter:blur(22px); }
.ambient-field span:first-child { left:-12%; }
.ambient-field span:last-child { right:-12%; }
.app-shell[data-activity="thinking"] .ambient-field { opacity:1; }
.app-shell[data-activity="working"] .ambient-field { opacity:.9; }
.app-shell[data-activity="writing"] .ambient-field { opacity:.82; }
.ambient-field { transition:none; }
.ambient-field span { animation:none!important; will-change:transform; }
.ambient-field canvas { position:absolute; inset:0; width:100%; height:100%; }
.ambient-field[data-mode="waves"] { height:100%; mask-image:linear-gradient(to bottom,#000b 0,#000b max(0px,var(--ambient-read-clearance,0px) - 56px),#000 calc(var(--ambient-read-clearance,0px) + 52px)); }
.ambient-field[data-mode="waves"] span { opacity:.27; }
.ambient-field[data-mode="points"] span { opacity:.3; }
.ambient-field[data-mode="light"] canvas { display:none; }
.session-loading { position:absolute; z-index:8; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:26px; background:var(--bg); color:var(--text); text-align:center; animation:surface-enter .24s ease both; }
.session-loading[hidden] { display:none; }
.session-loading-mark { position:relative; width:66px; height:66px; margin-bottom:14px; }
.session-loading-mark span { position:absolute; inset:0; border:1px solid var(--accent); border-radius:50%; opacity:.75; animation:session-orbit 2.2s ease-in-out infinite; }
.session-loading-mark span:nth-child(2) { inset:12px; animation-delay:-.7s; }
.session-loading-mark span:nth-child(3) { inset:25px; background:var(--accent); animation-delay:-1.4s; }
.session-loading small { color:var(--muted); font:700 10px Consolas,"Courier New",monospace; letter-spacing:.13em; }
.session-loading strong { max-width:28ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:21px; letter-spacing:-.035em; }
.session-loading>span { color:var(--muted); font-size:12px; }
@keyframes session-orbit { 0%,100% { transform:scale(.87); opacity:.3; } 50% { transform:scale(1.13); opacity:.92; } }
.transcript,:root[data-theme="terminal"] .transcript,:root[data-theme="night"] .transcript,:root[data-theme="mono"] .transcript { background:transparent; }

@media (max-width:719px) {
  .topbar { padding-left:9px; padding-right:9px; gap:2px; }
  .session-subline { flex-direction:row; gap:7px; }
  .session-subline #project-label { flex:1; min-width:0; max-width:none; }
  .header-status { font-size:10px; }
  .composer,:root[data-theme="terminal"] .composer,:root[data-theme="night"] .composer,:root[data-theme="mono"] .composer { padding:5px 9px max(5px,env(safe-area-inset-bottom)); background:linear-gradient(to bottom,transparent,var(--composer-veil) 36%); border:0; }
  .composer-input-wrap,:root[data-theme="terminal"] .composer-input-wrap,:root[data-theme="night"] .composer-input-wrap,:root[data-theme="mono"] .composer-input-wrap { padding:7px 6px 4px 10px; background:var(--input-veil); }
  textarea { min-height:23px; max-height:132px; padding:0; font-size:15px; line-height:1.4; }
  .composer-actions { min-height:35px; padding-top:2px; gap:2px; }
  .composer-spacer { display:none; }
  .toolbar-icon { width:34px; height:34px; }
  .commands-icon { width:30px; }
  .model-trigger { max-width:145px; }
  .effort-trigger { max-width:75px; }
  .voice-button,.abort-button { width:32px; height:34px; }
  .send-button,:root[data-theme="terminal"] .send-button,:root[data-theme="night"] .send-button,:root[data-theme="mono"] .send-button { width:35px; height:35px; border-radius:50%; }
  .send-button .ui-icon { width:18px; height:18px; margin:auto; }
  .new-button .ui-icon { width:22px; height:22px; }
}

/* A small set of shared, light-catching surfaces. Chat rows stay unfiltered. */
:root {
  --liquid-floating:rgba(251,252,246,.58);
  --liquid-panel:rgba(251,252,246,.96);
  --liquid-card:rgba(250,251,246,.83);
  --liquid-bubble:rgba(232,239,225,.87);
  --liquid-control:rgba(255,255,255,.34);
  --liquid-edge:rgba(255,255,255,.78);
  --liquid-glint:rgba(255,255,255,.9);
  --liquid-sheen:rgba(255,255,255,.3);
  --liquid-shadow:0 10px 28px rgba(41,57,40,.09);
  --liquid-tail:rgba(244,242,233,.18);
}
:root[data-theme="terminal"] {
  --liquid-floating:rgba(31,39,32,.51);
  --liquid-panel:rgba(31,39,32,.96);
  --liquid-card:rgba(35,44,36,.82);
  --liquid-bubble:rgba(39,49,40,.88);
  --liquid-control:rgba(232,245,225,.08);
  --liquid-edge:rgba(216,237,205,.2);
  --liquid-glint:rgba(242,253,235,.18);
  --liquid-sheen:rgba(242,253,235,.09);
  --liquid-shadow:0 12px 30px rgba(0,0,0,.2);
  --liquid-tail:rgba(17,20,17,.13);
}
:root[data-theme="night"] {
  --liquid-floating:rgba(36,48,67,.49);
  --liquid-panel:rgba(36,48,67,.96);
  --liquid-card:rgba(41,55,76,.81);
  --liquid-bubble:rgba(48,64,88,.85);
  --liquid-control:rgba(217,238,255,.09);
  --liquid-edge:rgba(212,235,255,.23);
  --liquid-glint:rgba(244,250,255,.24);
  --liquid-sheen:rgba(225,241,255,.11);
  --liquid-shadow:0 12px 30px rgba(4,12,28,.23);
  --liquid-tail:rgba(21,28,39,.14);
}
:root[data-theme="mono"] {
  --liquid-floating:rgba(35,37,41,.47);
  --liquid-panel:rgba(35,37,41,.96);
  --liquid-card:rgba(38,40,44,.83);
  --liquid-bubble:rgba(51,53,58,.87);
  --liquid-control:rgba(255,255,255,.09);
  --liquid-edge:rgba(255,255,255,.23);
  --liquid-glint:rgba(255,255,255,.25);
  --liquid-sheen:rgba(255,255,255,.11);
  --liquid-shadow:0 12px 30px rgba(0,0,0,.32);
  --liquid-tail:rgba(12,13,15,.12);
}
:root[data-glass="off"] {
  --liquid-floating:var(--surface);
  --liquid-panel:var(--surface);
  --liquid-card:var(--surface);
  --liquid-bubble:var(--raised);
  --liquid-control:var(--raised);
  --liquid-edge:var(--line);
  --liquid-glint:transparent;
  --liquid-sheen:transparent;
  --liquid-shadow:none;
}

:root[data-theme] .topbar {
  background:linear-gradient(125deg,var(--liquid-sheen),transparent 48%),var(--liquid-floating);
  border:1px solid var(--liquid-edge);
  border-top:0;
  border-radius:0 0 23px 23px;
  box-shadow:inset 0 -1px 0 var(--liquid-glint),var(--liquid-shadow);
}
:root[data-theme] .composer { background:transparent; border:0; isolation:isolate; }
.composer::before {
  content:""; position:absolute; z-index:-1; pointer-events:none;
  inset:-24px 0 0;
  background:linear-gradient(to bottom,transparent,var(--liquid-tail) 100%);
}
:root[data-theme] .composer-input-wrap {
  position:relative;
  background:linear-gradient(145deg,var(--liquid-sheen),transparent 52%),var(--liquid-floating);
  border:1px solid var(--liquid-edge);
  border-radius:25px;
  box-shadow:inset 0 1px 0 var(--liquid-glint),var(--liquid-shadow);
}
.composer-input-wrap:focus-within {
  box-shadow:inset 0 1px 0 var(--liquid-glint),0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent),var(--liquid-shadow);
}
.composer-actions { border-radius:0 0 20px 20px; }
.picker-trigger,.toolbar-icon,.voice-button,.abort-button { border-radius:14px; }
.picker-trigger { background:var(--liquid-control); }
.model-trigger:not([hidden]) { border-radius:12px 5px 5px 12px; }
.model-trigger:not([hidden]) + .effort-trigger:not([hidden]) {
  margin-left:-3px;
  border-left:1px solid color-mix(in srgb,var(--liquid-edge) 55%,transparent);
  border-radius:5px 12px 12px 5px;
}
.toolbar-icon:active,.picker-trigger:active,.voice-button:active,.abort-button:active { background:var(--liquid-control); }
:root[data-theme] .new-button {
  border:1px solid var(--liquid-edge);
  border-radius:50%;
  background:var(--liquid-control);
  color:var(--text);
  box-shadow:inset 0 1px 0 var(--liquid-glint);
}
:root[data-theme] .send-button { border-radius:50%; }
.context-button { border-radius:50%; }

:root[data-theme] .entry-user {
  background:var(--liquid-bubble);
  border:1px solid color-mix(in srgb,var(--liquid-edge) 54%,transparent);
  border-radius:21px 21px 8px 21px;
  box-shadow:none;
}
:root[data-theme] .entry-user .entry-body,:root[data-theme] .entry-user .entry-meta strong { color:var(--text); }
:root[data-theme] .entry-assistant { border:0; padding-left:2px; }
:root[data-theme] .entry-notice {
  padding:9px 12px;
  border:0;
  border-left:2px solid var(--amber);
  border-radius:0 12px 12px 0;
  background:color-mix(in srgb,var(--liquid-card) 44%,transparent);
}
.entry-thinking { margin-left:0; padding-left:0; border:0; }
.thinking-placeholder,.thinking-card summary {
  width:fit-content; max-width:100%; min-height:34px;
  padding:5px 11px;
  border:1px solid var(--liquid-edge);
  border-radius:17px;
  background:var(--liquid-card);
}
:root[data-theme] .thinking-content {
  margin-top:5px;
  border:1px solid color-mix(in srgb,var(--liquid-edge) 50%,transparent);
  border-radius:15px;
  background:color-mix(in srgb,var(--liquid-card) 82%,transparent);
  box-shadow:none;
}
:root[data-theme] .tool-card {
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--liquid-edge) 58%,transparent);
  border-radius:15px;
  background:color-mix(in srgb,var(--liquid-card) 89%,transparent);
  box-shadow:none;
}
.tool-glyph,.tool-card summary::before { border-radius:10px; }
.md-code,.md-table-scroll { border-radius:14px; }
.markdown-body :not(pre)>code { border-radius:5px; }
.empty-symbol,.brand-mark,.pairing-mark { border-radius:22px; }
.jump-latest,.toast,.attachment-chip { border-radius:18px; }
.session-loading { border-radius:0; }

:root[data-theme] .drawer {
  background:var(--liquid-panel);
  border-color:var(--liquid-edge);
  border-radius:0 28px 28px 0;
  box-shadow:inset -1px 0 0 var(--liquid-glint),16px 0 36px rgba(0,0,0,.17);
  overflow:hidden;
}
:root[data-theme] .commands-dialog,:root[data-theme] .context-dialog {
  background:linear-gradient(135deg,var(--liquid-sheen),transparent 42%),var(--liquid-panel);
  border:1px solid var(--liquid-edge);
  border-bottom:0;
  border-radius:27px 27px 0 0;
  box-shadow:inset 0 1px 0 var(--liquid-glint),0 -14px 38px rgba(0,0,0,.16);
}
:root[data-glass="on"][data-theme] .quick-picker {
  background:linear-gradient(135deg,var(--liquid-sheen),transparent 42%),color-mix(in srgb,var(--liquid-panel) 78%,transparent);
}
:root[data-glass="on"] .quick-picker::backdrop { background:rgba(12,17,15,.38); }
:root[data-theme] .pairing-dialog {
  background:linear-gradient(135deg,var(--liquid-sheen),transparent 42%),var(--liquid-panel);
  border:1px solid var(--liquid-edge);
  border-radius:25px;
  box-shadow:inset 0 1px 0 var(--liquid-glint),var(--liquid-shadow);
}
:root[data-theme] .settings-current {
  border:1px solid var(--liquid-edge);
  border-radius:20px;
  background:var(--liquid-card);
  box-shadow:none;
}
:root[data-theme] .settings-dialog input:not([type="checkbox"]),:root[data-theme] .settings-dialog select,
.commands-dialog input,.pairing-dialog input {
  border-radius:14px;
  background:var(--liquid-card);
}
.settings-effects { border-radius:17px; }
.project-head,.project-new,.session-row,.command-row,.model-row,.choice-row,.effort-row { border-radius:14px; }
:root[data-theme] .session-row.active,:root[data-theme] .model-row.current {
  border-left:0;
  background:var(--liquid-control);
}
.drawer-settings {
  width:calc(100% - 18px); margin:0 9px 9px;
  border:1px solid var(--liquid-edge);
  border-radius:17px;
  background:var(--liquid-control);
}
.model-row-marker,.model-more,.pairing-actions button { border-radius:12px; }

/* One joined movement from each compact picker into its glass sheet. */
:root[data-glass="on"][data-motion="on"] .quick-picker[open] { animation:none; }
:root[data-glass="on"] .composer-input-wrap::before {
  content:""; position:absolute; z-index:0; pointer-events:none;
  left:15%; right:15%; top:0; height:1px; border-radius:100%;
  background:var(--liquid-glint); opacity:.38; transform:scaleX(.48);
  transition:opacity .26s ease,transform .26s cubic-bezier(.2,.8,.2,1);
}
:root[data-glass="on"] .composer-input-wrap:focus-within::before {
  opacity:.9; transform:scaleX(1);
}
:root[data-glass="on"] .composer-input-wrap > * { position:relative; }

/* Blur is reserved for the two floating controls and short-lived sheets. */
:root[data-glass="on"] .topbar,
:root[data-glass="on"] .composer-input-wrap,
:root[data-glass="on"] .commands-dialog[open],
:root[data-glass="on"] .pairing-dialog[open] {
  -webkit-backdrop-filter:blur(13px) saturate(125%);
  backdrop-filter:blur(13px) saturate(125%);
}
@media (max-width:719px) {
  :root[data-theme] .topbar { border-left:0; border-right:0; }
  :root[data-theme] .composer { padding:6px 9px max(7px,env(safe-area-inset-bottom)); }
  :root[data-theme] .composer-input-wrap { padding:7px 6px 4px 10px; }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open] {
    -webkit-backdrop-filter:blur(10px) saturate(120%);
    backdrop-filter:blur(10px) saturate(120%);
  }
}
@media (prefers-reduced-transparency:reduce) {
  :root[data-theme] { --liquid-floating:var(--surface); --liquid-panel:var(--surface); --liquid-card:var(--surface); --liquid-bubble:var(--raised); }
  :root[data-glass="on"][data-theme] .quick-picker { background:var(--surface); }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open],:root[data-glass="on"] .pairing-dialog[open] {
    -webkit-backdrop-filter:none; backdrop-filter:none;
  }
}
@supports not (backdrop-filter:blur(1px)) {
  :root[data-theme] { --liquid-floating:var(--surface); --liquid-panel:var(--surface); --liquid-card:var(--surface); --liquid-bubble:var(--raised); }
  :root[data-glass="on"][data-theme] .quick-picker { background:var(--surface); }
}
@media (prefers-reduced-motion:reduce) {
  .composer-actions button,.new-button,.picker-trigger { transition:none!important; }
}
:root[data-motion="off"] .composer-actions button,:root[data-motion="off"] .new-button,
:root[data-motion="off"] .picker-trigger { transition:none!important; }

/* Mineral glass: light comes from the upper left; only floating chrome is filtered. */
@font-face { font-family:Onest; src:url('/fonts/onest-cyrillic.woff2') format('woff2'); font-style:normal; font-weight:100 900; font-display:swap; unicode-range:U+0400-052F,U+20BD,U+2116; }
@font-face { font-family:Onest; src:url('/fonts/onest-latin.woff2') format('woff2'); font-style:normal; font-weight:100 900; font-display:swap; unicode-range:U+0000-03FF,U+2000-206F,U+20AC,U+2122,U+2190-21FF,U+2212; }
:root {
  font-family:Onest,Roboto,"Segoe UI",sans-serif;
  --bg:#e9f0ef; --surface:#dce8e8; --raised:#d1e0e2; --line:#b7cbcf;
  --text:#172930; --muted:#60747a; --accent:#397d8e; --accent-deep:#e5f6f7;
  --liquid-floating:rgba(243,250,250,.34); --liquid-panel:rgba(239,247,247,.79);
  --liquid-card:rgba(241,248,248,.63); --liquid-bubble:rgba(220,237,239,.7);
  --liquid-control:rgba(246,252,252,.27); --liquid-edge:rgba(255,255,255,.65);
  --liquid-glint:rgba(255,255,255,.83); --liquid-sheen:rgba(255,255,255,.24);
  --liquid-shadow:0 12px 34px rgba(40,82,95,.13),0 2px 7px rgba(40,82,95,.08);
  --glass-lowlight:rgba(53,101,116,.18);
}
:root[data-theme="night"] {
  --bg:#101b21; --surface:#1b2b33; --raised:#243942; --line:#36515c;
  --text:#edf5f5; --muted:#a0b6bc; --accent:#9ed5dd; --accent-deep:#14333b;
  --liquid-floating:rgba(67,100,112,.22); --liquid-panel:rgba(26,51,60,.73);
  --liquid-card:rgba(50,77,88,.43); --liquid-bubble:rgba(63,94,106,.4);
  --liquid-control:rgba(204,240,244,.08); --liquid-edge:rgba(216,245,247,.26);
  --liquid-glint:rgba(242,255,255,.51); --liquid-sheen:rgba(198,236,244,.13);
  --liquid-shadow:0 14px 38px rgba(0,12,20,.32),0 2px 8px rgba(0,12,20,.18);
  --glass-lowlight:rgba(2,20,29,.34);
}
:root[data-theme="night"] .app-shell { --glow-a:rgba(95,169,183,.68); --glow-b:rgba(51,111,131,.66); }
:root[data-theme="paper"] .app-shell { --glow-a:rgba(93,160,174,.56); --glow-b:rgba(135,190,192,.53); }
:root[data-theme="night"] .composer { --composer-veil:rgba(16,27,33,.56); }
:root[data-theme="paper"] .composer { --composer-veil:rgba(233,240,239,.55); }
:root[data-theme] .app-shell { background:var(--bg); }
:root[data-theme="night"] .app-shell { background:radial-gradient(ellipse 110% 54% at 12% -4%,rgba(83,150,164,.22),transparent 72%),var(--bg); }
:root[data-theme="paper"] .app-shell { background:radial-gradient(ellipse 95% 55% at 9% -7%,rgba(126,184,190,.2),transparent 73%),var(--bg); }
:root[data-theme] .topbar,
:root[data-theme] .composer-input-wrap {
  background:linear-gradient(126deg,rgba(255,255,255,.13),transparent 38%),var(--liquid-floating);
  border-color:var(--liquid-edge);
  box-shadow:inset 0 1px 0 var(--liquid-glint),inset 0 -1px 0 var(--glass-lowlight),var(--liquid-shadow);
}
:root[data-theme] .topbar { min-height:69px; padding:8px 12px 9px; gap:7px; border-radius:0 0 23px 23px; }
:root[data-theme] .topbar::after,
:root[data-theme] .composer-input-wrap::after {
  content:""; position:absolute; inset:1px; pointer-events:none; border-radius:inherit;
  background:radial-gradient(ellipse 55% 38% at 87% -11%,rgba(255,255,255,.27),transparent 82%),
             radial-gradient(ellipse 56% 40% at 3% 112%,rgba(159,220,231,.12),transparent 83%);
  box-shadow:inset 1px 1px 0 rgba(255,255,255,.11),inset -1px -1px 0 var(--glass-lowlight);
  transition:opacity .52s ease,transform .72s cubic-bezier(.2,.8,.2,1);
}
.app-shell[data-activity="thinking"] .topbar::after,.app-shell[data-activity="thinking"] .composer-input-wrap::after { opacity:1; transform:translate3d(3px,-1px,0); }
.app-shell[data-activity="working"] .topbar::after,.app-shell[data-activity="working"] .composer-input-wrap::after { opacity:.76; transform:translate3d(-4px,1px,0); }
.app-shell[data-activity="writing"] .topbar::after,.app-shell[data-activity="writing"] .composer-input-wrap::after { opacity:.9; transform:translate3d(1px,2px,0); }
:root[data-theme] .composer-input-wrap { border-radius:23px; }
:root[data-glass="on"] .topbar,
:root[data-glass="on"] .composer-input-wrap,
:root[data-glass="on"] .commands-dialog[open],
:root[data-glass="on"] .pairing-dialog[open] {
  -webkit-backdrop-filter:blur(17px) saturate(140%);
  backdrop-filter:blur(17px) saturate(140%);
}
:root[data-theme] .commands-dialog,:root[data-theme] .context-dialog,
:root[data-theme] .pairing-dialog { box-shadow:inset 0 1px 0 var(--liquid-glint),inset 1px 0 0 color-mix(in srgb,var(--liquid-glint) 35%,transparent),0 -16px 44px rgba(0,15,24,.22); }
:root[data-theme] .quick-picker[open] { background:radial-gradient(ellipse 90% 28% at 35% -8%,color-mix(in srgb,var(--liquid-glint) 28%,transparent),transparent 83%),linear-gradient(145deg,var(--liquid-sheen),transparent 52%),var(--liquid-panel); }
:root[data-theme] .drawer { background:var(--liquid-panel); }

.app-shell,.entry-body,.empty-state,.settings-dialog,.drawer,.commands-dialog { font-family:Onest,Roboto,"Segoe UI",sans-serif; }
.title-group h1,:root[data-theme="night"] .title-group h1,
.empty-state h2,:root[data-theme="night"] .empty-state h2,
.sheet-head h2,:root[data-theme="night"] .sheet-head h2 { font-family:Onest,Roboto,"Segoe UI",sans-serif; letter-spacing:-.045em; }
.title-group h1 { font-size:18px; font-weight:690; line-height:1.16; }
.topbar-eyebrow { display:none; }
.session-subline,.header-status,.picker-trigger,.entry-meta,.entry-meta strong { font-family:Onest,Roboto,"Segoe UI",sans-serif; }
.session-subline { font-size:10px; gap:7px; }
.header-status { font-size:10px; font-weight:580; }
.entry-meta { font-size:11px; letter-spacing:0; }
.entry-meta strong { font-size:11px; font-weight:650; }
.entry-body { font-size:15px; line-height:1.61; letter-spacing:-.008em; }
.entry-assistant .entry-body { max-width:67ch; }
.empty-state { max-width:29ch; margin:max(60px,12vh) 6px 0; }
.empty-symbol { width:46px; height:46px; margin:0 0 26px; border-radius:16px; border-color:var(--liquid-edge); background:var(--liquid-control); color:var(--accent); font-size:32px; box-shadow:inset 0 1px 0 var(--liquid-glint); }
.empty-state h2 { font-size:27px; font-weight:720; line-height:1.12; margin-bottom:10px; }
.empty-state p { font-size:14px; line-height:1.55; color:var(--muted); }
:root[data-theme] .entry-user { background:var(--liquid-bubble); border-color:color-mix(in srgb,var(--liquid-edge) 55%,transparent); box-shadow:inset 0 1px 0 color-mix(in srgb,var(--liquid-glint) 30%,transparent); }
:root[data-theme] .tool-card { background:var(--liquid-card); border-color:color-mix(in srgb,var(--liquid-edge) 66%,transparent); box-shadow:inset 0 1px 0 color-mix(in srgb,var(--liquid-glint) 28%,transparent); }
.tool-card summary strong { font-family:Onest,Roboto,"Segoe UI",sans-serif; font-size:12px; }
.thinking-placeholder,.thinking-card summary { background:transparent; border-color:transparent; padding-inline:2px; color:var(--muted); }
:root[data-theme] .thinking-content { background:var(--liquid-card); }
.md-table th { font-weight:680; }

.composer { padding:5px 10px max(6px,env(safe-area-inset-bottom)); }
:root[data-theme] .composer-input-wrap { padding:7px 8px 5px 11px; }
textarea { min-height:25px; max-height:132px; padding:1px 0; font-size:15px; line-height:1.43; }
.composer-actions { min-height:40px; padding-top:3px; gap:3px; }
.picker-group { display:none; align-items:center; flex:1; min-width:0; height:40px; padding:0; border:1px solid var(--liquid-edge); border-radius:13px; background:var(--liquid-control); box-shadow:inset 0 1px 0 color-mix(in srgb,var(--liquid-glint) 50%,transparent); overflow:hidden; }
.picker-group::before { content:""; position:absolute; inset:-20% auto -20% -35%; width:50%; pointer-events:none; border-radius:50%; background:radial-gradient(ellipse,rgba(255,255,255,.18),transparent 72%); opacity:0; transform:translateX(0); transition:opacity .25s ease,transform .34s cubic-bezier(.2,.8,.2,1); }
.picker-group:has(.picker-trigger[aria-expanded="true"])::before { opacity:1; transform:translateX(100%); }
.picker-group { position:relative; }
.picker-group > * { position:relative; }
.picker-group:has(.picker-trigger:not([hidden])) { display:flex; }
.picker-trigger { height:40px; font:610 11px Onest,Roboto,"Segoe UI",sans-serif; background:transparent; }
.model-trigger { flex:1; max-width:none; justify-content:flex-start; padding-left:7px; }
.effort-trigger { flex:none; max-width:78px; padding-inline:6px; }
.model-trigger:not([hidden]),.model-trigger:not([hidden]) + .effort-trigger:not([hidden]) { border-radius:9px; background:transparent; }
.model-trigger:not([hidden]) + .effort-trigger:not([hidden]) { margin-left:0; border-left:1px solid var(--liquid-edge); }
.picker-trigger:active,.picker-trigger[aria-expanded="true"] { background:var(--liquid-control); }
.toolbar-icon,.voice-button,.abort-button { width:40px; height:40px; border-radius:12px; }
.commands-icon { width:40px; }
:root[data-theme] .send-button { width:40px; height:40px; flex:none; background:var(--accent); color:var(--accent-deep); border:0; border-radius:50%; box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 3px 10px rgba(0,0,0,.1); }
:root[data-theme] .new-button { width:42px; height:42px; flex:none; }
.context-button { width:45px; height:44px; }
.context-ring { width:37px; height:37px; }
.transcript { padding-top:22px; }
.entry-assistant .entry-body,.empty-state p { text-shadow:0 1px 2px var(--bg); }

:root[data-glass="off"] .topbar::after,:root[data-glass="off"] .composer-input-wrap::after { display:none; }
:root[data-glass="off"] .topbar,:root[data-glass="off"] .composer-input-wrap { background:var(--surface); box-shadow:none; }
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"] .topbar::after,:root[data-glass="on"] .composer-input-wrap::after { display:none; }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap { background:var(--surface); box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; }
}
@media (max-width:719px) {
  :root[data-theme] .topbar { min-height:65px; padding:7px 10px 8px; gap:4px; }
  .menu-button { width:40px; height:40px; }
  .title-group h1 { font-size:17px; }
  .context-button { width:43px; height:42px; }
  .context-ring { width:35px; height:35px; }
  :root[data-theme] .composer { padding:4px 8px max(5px,env(safe-area-inset-bottom)); }
  :root[data-theme] .composer-input-wrap { padding:6px 7px 4px 9px; }
  .composer-actions { min-height:40px; gap:1px; }
  .toolbar-icon,.voice-button,.abort-button { width:40px; height:40px; }
  .commands-icon { width:40px; }
  .picker-group { height:40px; }
  .picker-trigger { height:40px; }
  .effort-trigger { max-width:70px; }
  :root[data-theme] .send-button { width:40px; height:40px; }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open] { -webkit-backdrop-filter:blur(15px) saturate(135%); backdrop-filter:blur(15px) saturate(135%); }
}
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open] { -webkit-backdrop-filter:none; backdrop-filter:none; }
}
:root[data-glass="off"] {
  --liquid-floating:var(--surface); --liquid-panel:var(--surface); --liquid-card:var(--surface);
  --liquid-bubble:var(--raised); --liquid-control:var(--raised); --liquid-edge:var(--line);
  --liquid-glint:transparent; --liquid-sheen:transparent; --liquid-shadow:none;
}
:root[data-glass="off"] .quick-picker[open] { background:var(--surface); }
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"] {
    --liquid-floating:var(--surface); --liquid-panel:var(--surface); --liquid-card:var(--surface);
    --liquid-bubble:var(--raised); --liquid-control:var(--raised); --liquid-edge:var(--line);
    --liquid-glint:transparent; --liquid-sheen:transparent; --liquid-shadow:none;
  }
  :root[data-glass="on"] .quick-picker[open] { background:var(--surface); }
}
@supports not (backdrop-filter:blur(1px)) {
  :root[data-glass="on"] .quick-picker[open] { background:var(--surface); }
}
:root[data-theme] .topbar {
  width:calc(100% - 18px); margin:8px auto 0;
  border:1px solid var(--liquid-edge); border-radius:22px;
}
@media (max-width:719px) {
  :root[data-theme] .topbar {
    width:calc(100% - 16px); margin-top:7px;
    border:1px solid var(--liquid-edge); border-radius:21px;
  }
}

/* Warm graphite and chalk replace the cold blue cast. The moving field is the
   signature material beneath two frosted chrome surfaces, not behind each row. */
:root[data-theme="paper"] {
  --bg:#f3efe5; --surface:#e8e3d6; --raised:#ddd7c8; --line:#c4bdad;
  --text:#292e27; --muted:#626a5f; --accent:#55735b; --accent-deep:#fffdf6;
  --amber:#8f6e43; --red:#a8574c;
  --glass-rgb:250 247 237;
  --liquid-card:rgb(250 247 237 / .56); --liquid-bubble:rgb(225 229 212 / .67);
  --liquid-control:rgb(255 255 249 / .25); --liquid-edge:rgb(255 255 250 / .73);
  --liquid-glint:rgb(255 255 255 / .89); --liquid-sheen:rgb(255 255 249 / .23);
  --liquid-shadow:0 12px 32px rgb(66 60 43 / .12),0 2px 7px rgb(66 60 43 / .07);
  --glass-lowlight:rgb(68 76 55 / .15);
}
:root[data-theme="night"] {
  --bg:#171c1a; --surface:#252c27; --raised:#313b32; --line:#46554a;
  --text:#eef1e9; --muted:#acb8a9; --accent:#b7d1a4; --accent-deep:#243425;
  --amber:#d5b88b; --red:#d49083;
  --glass-rgb:49 64 52;
  --liquid-card:rgb(57 72 60 / .39); --liquid-bubble:rgb(68 86 70 / .42);
  --liquid-control:rgb(233 246 225 / .07); --liquid-edge:rgb(225 240 216 / .24);
  --liquid-glint:rgb(255 255 246 / .44); --liquid-sheen:rgb(223 244 212 / .10);
  --liquid-shadow:0 15px 38px rgb(5 14 8 / .31),0 2px 7px rgb(5 14 8 / .16);
  --glass-lowlight:rgb(5 18 9 / .35);
}
:root[data-theme="terminal"] { --glass-rgb:31 39 32; }
:root[data-theme="mono"] { --glass-rgb:35 37 41; }
:root[data-glass="on"] {
  --liquid-floating:rgb(var(--glass-rgb) / var(--glass-opacity, .18));
  --liquid-panel:rgb(var(--glass-rgb) / var(--glass-panel-opacity, .71));
}
:root[data-theme="night"] .app-shell { --glow-a:rgb(136 169 112 / .58); --glow-b:rgb(103 139 113 / .51); background:radial-gradient(ellipse 110% 54% at 12% -4%,rgb(119 146 101 / .15),transparent 72%),var(--bg); }
:root[data-theme="paper"] .app-shell { --glow-a:rgb(145 157 102 / .43); --glow-b:rgb(198 164 113 / .38); background:radial-gradient(ellipse 95% 55% at 9% -7%,rgb(168 176 133 / .15),transparent 73%),var(--bg); }
:root[data-theme="night"] .composer { --composer-veil:rgb(23 28 26 / .26); }
:root[data-theme="paper"] .composer { --composer-veil:rgb(243 239 229 / .28); }
:root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
:root[data-glass="on"] .commands-dialog[open],:root[data-glass="on"] .pairing-dialog[open] {
  -webkit-backdrop-filter:blur(24px) saturate(175%);
  backdrop-filter:blur(24px) saturate(175%);
}
:root[data-glass="on"][data-theme="paper"] .topbar,
:root[data-glass="on"][data-theme="paper"] .composer-input-wrap {
  -webkit-backdrop-filter:blur(23px) saturate(205%);
  backdrop-filter:blur(23px) saturate(205%);
}
:root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap {
  box-shadow:inset 0 1px 0 var(--liquid-glint),inset 0 -1px 0 var(--glass-lowlight),
    inset 0 0 0 1px color-mix(in srgb,var(--liquid-glint) 13%,transparent),var(--liquid-shadow);
}

/* Thinking is a real, reachable control rather than a label-sized capsule. */
.thinking-placeholder,.thinking-card summary {
  width:min(100%,344px); min-width:min(168px,100%); min-height:44px;
  padding:9px 14px; gap:7px;
  border:1px solid color-mix(in srgb,var(--liquid-edge) 70%,transparent);
  border-radius:16px; background:var(--liquid-card); color:var(--text);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--liquid-glint) 35%,transparent);
  font:600 12px/1.35 Onest,Roboto,"Segoe UI",sans-serif; letter-spacing:0;
}
.thinking-placeholder::before,.thinking-card summary::before { margin-right:2px; font-size:17px; color:var(--accent); }
.thinking-card summary::after { content:"⌄"; margin-left:auto; color:var(--muted); font-size:19px; line-height:1; transition:transform .2s cubic-bezier(.22,1,.36,1); }
.thinking-card[open] summary::after { transform:rotate(180deg); }
:root[data-theme] .thinking-content { max-width:min(100%,640px); padding:13px 15px; font:13px/1.6 Onest,Roboto,"Segoe UI",sans-serif; color:var(--text); }

/* One scroll surface for the many preferences; controls preview in place. */
.settings-dialog[open] { overflow-y:auto; overscroll-behavior:contain; }
.settings-dialog .model-list { flex:none; max-height:270px; }
:root[data-theme] .commands-dialog { color:var(--text); }
:root[data-theme="paper"] .commands-dialog { color-scheme:light; }
:root[data-theme] .sheet-head h2,:root[data-theme] .sheet-head .icon-button { color:var(--text); }
:root[data-theme] .sheet-head small,:root[data-theme] .settings-theme label,
:root[data-theme] .settings-kicker,:root[data-theme] .settings-section-head { color:var(--muted); }
:root[data-theme] .settings-dialog select,:root[data-theme] .settings-dialog input:not([type="checkbox"]):not([type="range"]) { color:var(--text); border-color:var(--line); }
:root[data-theme] .settings-dialog .model-row { color:var(--text); border-color:var(--line); }
:root[data-theme] .settings-dialog .model-row small,:root[data-theme] .settings-dialog .sheet-hint { color:var(--muted); }
.settings-theme { display:block; padding:13px 2px 0; }
.settings-theme label { display:block; font:650 11px Onest,Roboto,"Segoe UI",sans-serif; letter-spacing:.04em; }
:root[data-theme] .settings-theme select { display:block; width:100%; min-height:42px; margin-top:6px; }
.settings-customize { flex:none; padding-top:15px; }
.settings-customize h3 { margin:0 0 7px; color:var(--muted); font:680 11px Onest,Roboto,"Segoe UI",sans-serif; letter-spacing:.045em; text-transform:uppercase; }
.settings-range,.settings-choice { padding:10px 2px; border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent); }
.settings-range label,.settings-choice label { display:flex; justify-content:space-between; gap:12px; align-items:center; color:var(--text); font:590 13px Onest,Roboto,"Segoe UI",sans-serif; }
.settings-range output { color:var(--accent); font:650 11px Onest,Roboto,"Segoe UI",sans-serif; white-space:nowrap; }
.settings-range small { display:block; margin-top:2px; color:var(--muted); font-size:11px; }
:root[data-theme] .settings-dialog input[type="range"] { display:block; width:100%; height:28px; margin:5px 0 0; padding:0; appearance:none; border:0; background:transparent; cursor:pointer; }
.settings-dialog input[type="range"]::-webkit-slider-runnable-track { height:3px; border-radius:4px; background:linear-gradient(90deg,var(--accent),var(--line)); }
.settings-dialog input[type="range"]::-webkit-slider-thumb { appearance:none; width:17px; height:17px; margin-top:-7px; border:2px solid var(--surface); border-radius:50%; background:var(--accent); box-shadow:0 1px 5px rgb(0 0 0 / .24); }
.settings-dialog input[type="range"]::-moz-range-track { height:3px; border-radius:4px; background:var(--line); }
.settings-dialog input[type="range"]::-moz-range-thumb { width:16px; height:16px; border:2px solid var(--surface); border-radius:50%; background:var(--accent); }
:root[data-theme] .settings-choice select { width:100%; min-height:42px; margin:7px 0 0; border-color:var(--line); color:var(--text); }
.settings-effects-extra { margin-top:4px; }
:root[data-theme] .settings-effects strong,:root[data-theme] .settings-current strong,:root[data-theme] .settings-connection strong { color:var(--text); }
:root[data-theme] .settings-effects small,:root[data-theme] .settings-connection small { color:var(--muted); }
:root[data-theme] .settings-current>span:last-child { color:var(--accent); }

:root { --chat-font-size:15px; --reading-width:760px; --ambient-text-opacity:.73; }
:root[data-chat-width="narrow"] { --reading-width:570px; }
:root[data-chat-width="wide"] { --reading-width:850px; }
.transcript { padding-inline:max(15px,calc((100% - var(--reading-width))/2)); }
:root[data-chat-font] .entry-body { font-size:var(--chat-font-size); }
:root[data-chat-font="system"] .entry-body { font-family:"Segoe UI",Arial,sans-serif; }
:root[data-chat-font="mono"] .entry-body { font-family:"Cascadia Code",Consolas,monospace; font-size:calc(var(--chat-font-size) - 1px); }
:root[data-density="compact"] .entry { margin-bottom:12px; }
:root[data-density="relaxed"] .entry { margin-bottom:28px; }
:root[data-density="compact"] .entry-meta { margin-bottom:4px; }
:root[data-density="relaxed"] .entry-meta { margin-bottom:11px; }
:root[data-timestamps="off"] .entry-meta time { display:none; }
:root[data-compact-tools="on"] .tool-card summary { min-height:36px; padding-block:5px; }
:root[data-compact-tools="on"] .entry-tool { margin-bottom:10px; }
.ambient-field[data-mode="waves"] { mask-image:linear-gradient(to bottom,rgb(0 0 0 / var(--ambient-text-opacity)) 0,rgb(0 0 0 / var(--ambient-text-opacity)) max(0px,var(--ambient-read-clearance,0px) - 56px),#000 calc(var(--ambient-read-clearance,0px) + 52px)); }
@media (max-width:719px) {
  :root[data-chat-width="narrow"] .transcript { padding-inline:23px; }
  :root[data-chat-width="normal"] .transcript { padding-inline:15px; }
  :root[data-chat-width="wide"] .transcript { padding-inline:10px; }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open] { -webkit-backdrop-filter:blur(21px) saturate(175%); backdrop-filter:blur(21px) saturate(175%); }
}
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"] { --liquid-floating:var(--surface); --liquid-panel:var(--surface); }
  :root[data-glass="on"] .topbar,:root[data-glass="on"] .composer-input-wrap,
  :root[data-glass="on"] .commands-dialog[open],:root[data-glass="on"] .pairing-dialog[open] { -webkit-backdrop-filter:none; backdrop-filter:none; }
}

/* The lens shades its own rim; a white CSS frame would flatten that volume. */
:root[data-glass="on"] .topbar,
:root[data-glass="on"] .composer-input-wrap {
  border-color:color-mix(in srgb,var(--text) 10%,transparent);
  box-shadow:var(--liquid-shadow);
}
:root[data-glass="on"] .topbar::after,
:root[data-glass="on"] .composer-input-wrap::after {
  box-shadow:none;
  opacity:.18;
}
:root[data-glass="on"] .composer-input-wrap::before { opacity:.11; }
:root[data-glass="on"] .topbar :is(.new-button,.context-button),
:root[data-glass="on"] .composer-input-wrap .picker-group {
  border-color:color-mix(in srgb,var(--text) 11%,transparent);
  box-shadow:none;
}
:root[data-glass="on"] .topbar.refracting,
:root[data-glass="on"] .composer-input-wrap.refracting {
  -webkit-backdrop-filter:var(--hyalite, blur(12px));
  backdrop-filter:var(--hyalite, blur(12px));
  box-shadow:var(--liquid-shadow);
}
:root[data-glass="on"] .topbar.refracting::after,
:root[data-glass="on"] .composer-input-wrap.refracting::after { opacity:.12; }

/* Sheets get a wider optical band while their content remains in the foreground. */
:root { --lens-panel-alpha:.59; --lens-card-alpha:.64; }
:root[data-theme="paper"] { --lens-panel-alpha:.72; --lens-card-alpha:.73; }
:root[data-glass="on"] .drawer.refracting,
:root[data-glass="on"] .commands-dialog.refracting[open] {
  background:linear-gradient(145deg,rgb(255 255 255 / .035),transparent 40%),
    rgb(var(--glass-rgb) / var(--lens-panel-alpha));
  border-color:color-mix(in srgb,var(--text) 11%,transparent);
  -webkit-backdrop-filter:var(--hyalite, blur(14px));
  backdrop-filter:var(--hyalite, blur(14px));
  box-shadow:0 -14px 40px rgb(0 0 0 / .20);
}
:root[data-glass="on"] .drawer.refracting { box-shadow:14px 0 38px rgb(0 0 0 / .19); }
:root[data-glass="on"] .quick-picker.refracting[open] {
  background:linear-gradient(145deg,rgb(255 255 255 / .035),transparent 40%),
    rgb(var(--glass-rgb) / var(--lens-panel-alpha));
}
:root[data-glass="on"] .thinking-card.glass-card,
:root[data-glass="on"] .thinking-placeholder.glass-card,
:root[data-glass="on"] .tool-card.glass-card {
  border:1px solid color-mix(in srgb,var(--text) 12%,transparent);
  border-radius:16px;
  background:rgb(var(--glass-rgb) / var(--lens-card-alpha));
  box-shadow:0 4px 18px rgb(0 0 0 / .07);
  overflow:hidden;
}
:root[data-glass="on"] .glass-card.refracting {
  -webkit-backdrop-filter:var(--hyalite, blur(9px));
  backdrop-filter:var(--hyalite, blur(9px));
}
:root[data-glass="on"] .thinking-card.glass-card > summary,
:root[data-glass="on"] .thinking-placeholder.glass-card { min-height:44px; padding:9px 14px; }
:root[data-glass="on"] .thinking-card.glass-card > summary {
  width:100%; max-width:none; border:0; border-radius:inherit;
  background:transparent; box-shadow:none;
}
:root[data-glass="on"] .thinking-card.glass-card .thinking-content {
  margin:0; background:transparent; border:0; border-top:1px solid color-mix(in srgb,var(--text) 9%,transparent);
}
:root[data-glass="on"] .tool-card.glass-card summary { background:transparent; }
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"] .topbar.refracting,
  :root[data-glass="on"] .composer-input-wrap.refracting,
  :root[data-glass="on"] .drawer.refracting,
  :root[data-glass="on"] .commands-dialog.refracting[open],
  :root[data-glass="on"] .thinking-card.refracting,
  :root[data-glass="on"] .thinking-placeholder.refracting,
  :root[data-glass="on"] .tool-card.refracting {
    -webkit-backdrop-filter:none; backdrop-filter:none;
    background:var(--surface); box-shadow:none;
  }
}

.settings-choice > small { display:block; margin-top:5px; color:var(--muted); font-size:11px; }
:root[data-render-quality="balanced"][data-glass="on"] .topbar {
  background:rgb(var(--glass-rgb) / .82);
  -webkit-backdrop-filter:none; backdrop-filter:none;
}
:root[data-render-quality="balanced"][data-glass="on"] :is(.composer-input-wrap,.commands-dialog[open],.quick-picker[open],.drawer):not(.refracting) {
  -webkit-backdrop-filter:none; backdrop-filter:none;
  background:rgb(var(--glass-rgb) / .82);
}
:root[data-sheet-open="on"][data-glass="on"] .topbar,
:root[data-sheet-open="on"][data-glass="on"] .composer-input-wrap {
  -webkit-backdrop-filter:none!important; backdrop-filter:none!important;
}
:root[data-render-quality="economy"][data-glass="on"] :is(.topbar,.composer-input-wrap,.commands-dialog[open],.pairing-dialog[open],.quick-picker[open],.drawer,.glass-card) {
  -webkit-backdrop-filter:none!important; backdrop-filter:none!important;
  background:rgb(var(--glass-rgb) / .86);
}
@media (prefers-reduced-transparency:reduce) {
  :root[data-glass="on"][data-render-quality] :is(.topbar,.composer-input-wrap,.commands-dialog[open],.pairing-dialog[open],.quick-picker[open],.drawer,.glass-card) {
    -webkit-backdrop-filter:none!important; backdrop-filter:none!important;
    background:var(--surface)!important;
  }
}
