:root{--background:#10120f;--panel:#171915;--panel-soft:#20231d;--text:#e8e0d0;--muted:#aaa08d;--line:#3a3d33;--accent:#d9b45f;--danger:#d98272;--ok:#92c17d}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;color:var(--text);margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}button,input,textarea{font:inherit}button{border:1px solid var(--line);background:var(--panel-soft);min-height:2.5rem;color:var(--text);cursor:pointer;border-radius:6px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{cursor:not-allowed;opacity:.55}.app{min-height:100vh}.main{grid-template-rows:auto minmax(0,1fr) auto;min-height:100vh;display:grid}.topbar{border-bottom:1px solid var(--line);background:#12140f;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.brand{gap:.2rem;display:grid}.brand h1{letter-spacing:0;margin:0;font-size:1rem;font-weight:700}.brand p{color:var(--muted);margin:0;font-size:.8rem}.actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.actions button{padding:0 .7rem}.transcript{padding:1.25rem;overflow-y:auto}.continue-screen{align-content:start;gap:1rem;padding:1.25rem;display:grid;overflow-y:auto}.continue-screen h2{margin:0 0 .35rem;font-size:1rem}.continue-screen p{color:var(--muted);margin:0}.session-list{gap:.6rem;display:grid}.session-row{text-align:left;justify-items:start;gap:.25rem;min-height:4rem;padding:.75rem;display:grid}.session-row span:first-child{color:var(--text);font-weight:700}.session-row span:last-child,.muted{color:var(--muted);font-size:.78rem}.entry{grid-template-columns:5rem minmax(0,1fr);gap:1rem;margin:0 0 1rem;line-height:1.55;display:grid}.speaker{color:var(--accent);text-transform:uppercase;font-size:.78rem}.entry p{white-space:pre-wrap;margin:0}.pending-reply{color:var(--muted)}.typing-dots{align-items:center;gap:.28rem;height:1.55em;display:inline-flex}.typing-dots span{background:var(--muted);border-radius:50%;width:.38rem;height:.38rem;animation:1.1s ease-in-out infinite typing-pulse}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typing-pulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-.18rem)}}.composer{border-top:1px solid var(--line);background:#12140f;grid-template-columns:minmax(0,1fr) 7rem;gap:.75rem;padding:1rem;display:grid}.composer input{border:1px solid var(--line);width:100%;min-height:2.75rem;color:var(--text);background:#0c0d0b;border-radius:6px;padding:0 .85rem}.composer input:focus{border-color:var(--accent);outline:2px solid #d9b45f59}.debug{z-index:20;background:var(--panel);border-left:1px solid var(--line);width:min(380px,100vw);min-height:100dvh;padding:0 1rem 1rem;transition:transform .18s;position:fixed;inset:0 0 0 auto;overflow-y:auto;transform:translate(0);box-shadow:-1.2rem 0 2.5rem #00000052}.debug.closed{pointer-events:none;transform:translate(100%)}.debug-header{z-index:1;background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex;position:sticky;top:0}.debug-header button{min-height:2rem;padding:0 .6rem}.debug h2,.debug h3{letter-spacing:0;margin:0;font-size:.86rem}.debug h2{color:var(--accent)}.debug-section{border-bottom:1px solid var(--line);padding:1rem 0}.debug-section>*+*{margin-top:.65rem}.kv{grid-template-columns:9rem minmax(0,1fr);gap:.5rem;font-size:.82rem;display:grid}.kv span:first-child{color:var(--muted)}.list{flex-wrap:wrap;gap:.35rem;display:flex}.pill{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:.18rem .5rem;font-size:.76rem}pre{border:1px solid var(--line);color:#d8d0c0;background:#0c0d0b;border-radius:6px;max-width:100%;padding:.75rem;font-size:.75rem;line-height:1.45;overflow:auto}details summary{cursor:pointer;color:var(--accent)}.error{color:var(--danger)}.ok{color:var(--ok)}@media (max-width:920px){.main{min-height:100vh}.debug{width:min(32rem,100vw)}}@media (prefers-reduced-motion:reduce){.debug{transition:none}}@media (max-width:620px){.topbar{flex-direction:column;align-items:flex-start}.actions{justify-content:flex-start}.entry{grid-template-columns:1fr;gap:.2rem}.composer{grid-template-columns:1fr}}
