:root{--bg:#f6f5f1;--card:#fff;--ink:#1d1d1b;--mute:#6b6a66;--line:#e3e1da;--acc:#0b6b5d;--accink:#fff;--warn:#b3261e;--ok:#1b7a3a;--you:#e6f2ef}
@media (prefers-color-scheme:dark){:root{--bg:#141413;--card:#1e1e1c;--ink:#ecebe6;--mute:#9a9992;--line:#34332f;--acc:#3fb8a3;--accink:#06201b;--warn:#ff8a80;--ok:#6fd08c;--you:#173630}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Devanagari",sans-serif}
#app{max-width:760px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:0 16px env(safe-area-inset-bottom)}
h1{font-size:1.25rem;margin:18px 0 6px}h2{font-size:1.05rem;margin:18px 0 8px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin:10px 0}
label{display:block;font-size:.9rem;color:var(--mute);margin:10px 0 4px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit}
button{font:inherit;border:0;border-radius:10px;padding:11px 16px;background:var(--acc);color:var(--accink);cursor:pointer;min-height:44px}
button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
button.warn{background:var(--warn);color:#fff}
button:disabled{opacity:.5}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row>*{flex:1}.row>.fit{flex:0 0 auto}
.tabs{display:flex;gap:6px;position:sticky;top:0;background:var(--bg);padding:10px 0;z-index:5;overflow-x:auto}
.tabs button{flex:1;white-space:nowrap}
.tabs button.on{background:var(--acc);color:var(--accink)}.tabs button:not(.on){background:var(--card);color:var(--ink);border:1px solid var(--line)}
.msgs{flex:1;display:flex;flex-direction:column;gap:10px;padding-bottom:12px}
.m{padding:10px 12px;border-radius:14px;max-width:92%;white-space:pre-wrap;word-wrap:break-word}
.m.you{align-self:flex-end;background:var(--you)}.m.ai{align-self:flex-start;background:var(--card);border:1px solid var(--line)}
.m.info,.m.tool{align-self:stretch;max-width:100%;font-size:.85rem;color:var(--mute);background:transparent;padding:2px 6px}
.m.err{color:var(--warn);align-self:stretch;max-width:100%}
.composer{position:sticky;bottom:0;background:var(--bg);padding:10px 0 12px;border-top:1px solid var(--line)}
.mic{width:56px;height:56px;border-radius:50%;font-size:1.4rem;padding:0}.mic.live{background:var(--warn);color:#fff;animation:p 1.2s infinite}
@keyframes p{50%{transform:scale(1.07)}}
.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:.78rem;border:1px solid var(--line);margin:2px 4px 2px 0}
.pill.ok{color:var(--ok);border-color:var(--ok)}.pill.bad{color:var(--warn);border-color:var(--warn)}
.mute{color:var(--mute);font-size:.88rem}.err{color:var(--warn)}.good{color:var(--ok)}
code{background:var(--bg);padding:2px 6px;border-radius:6px;word-break:break-all}
.codes{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-family:ui-monospace,monospace}
.confirm{border:2px solid var(--warn)}
