*{box-sizing:border-box}html,body{margin:0}#root{min-height:100vh;margin:0}.shell{color:#e8eaed;box-sizing:border-box;background:linear-gradient(160deg,#0f1419 0%,#1a1f26 100%);max-width:720px;min-height:100vh;margin:0 auto;padding:1.5rem 1rem 2rem;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.auth-shell .top h1{margin:0 0 .35rem;font-size:1.5rem;font-weight:600}.muted{color:#9aa0a6;margin:0}.muted.small{font-size:.875rem}.hint{margin:-.25rem 0 .5rem;font-size:.8rem}.tabs{gap:.5rem;margin:1.25rem 0 .75rem;display:flex}.tabs button{color:#adbac7;cursor:pointer;background:#2d333b;border:1px solid #444c56;border-radius:8px;padding:.4rem .9rem;font-size:.9rem}.tabs button.active{color:#fff;background:#316dca;border-color:#316dca}.card{background:#21262d;border:1px solid #444c56;border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.card label{color:#adbac7;flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}.card input{color:#e8eaed;background:#0d1117;border:1px solid #444c56;border-radius:8px;padding:.55rem .65rem;font-size:1rem}.card button[type=submit]{color:#fff;cursor:pointer;background:#347d39;border:none;border-radius:8px;margin-top:.25rem;padding:.6rem 1rem;font-size:.95rem;font-weight:600}.card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.error{color:#f85149;margin:0;font-size:.9rem}.error.banner{padding:0 1rem}.chat-shell{flex-direction:column;max-width:800px;min-height:100vh;display:flex}.bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.bar h1{margin:0;font-size:1.35rem}.bar-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.inline{color:#adbac7;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.inline select{color:#e8eaed;background:#0d1117;border:1px solid #444c56;border-radius:8px;max-width:220px;padding:.35rem .5rem}button.secondary{color:#adbac7;cursor:pointer;background:#2d333b;border:1px solid #444c56;border-radius:8px;padding:.4rem .75rem;font-size:.85rem}.messages{flex-direction:column;flex:1;gap:.65rem;min-height:200px;padding:.5rem 0 1rem;display:flex;overflow-y:auto}.empty{align-self:center;margin-top:2rem}.bubble{background:#21262d;border:1px solid #444c56;border-radius:12px;align-self:flex-start;max-width:92%;padding:.65rem .85rem}.bubble.user{background:#1f3d2c;border-color:#347d39;align-self:flex-end}.bubble .role{text-transform:uppercase;letter-spacing:.04em;color:#768390;font-size:.7rem}.bubble .content{white-space:pre-wrap;margin:.35rem 0 0;line-height:1.45}.composer{border-top:1px solid #444c56;align-items:flex-end;gap:.65rem;padding-top:.5rem;display:flex}.composer textarea{resize:vertical;color:#e8eaed;background:#0d1117;border:1px solid #444c56;border-radius:10px;flex:1;min-height:2.75rem;max-height:160px;padding:.55rem .65rem;font-family:inherit;font-size:.95rem}.composer button{color:#fff;cursor:pointer;white-space:nowrap;background:#316dca;border:none;border-radius:10px;padding:.55rem 1rem;font-weight:600}.composer button:disabled{opacity:.55;cursor:not-allowed}.usage-panel{background:#21262d;border:1px solid #444c56;border-radius:12px;margin-bottom:.75rem;padding:1rem 1.1rem}.usage-range{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .75rem;display:flex}.linkish{color:#58a6ff;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.linkish:disabled{opacity:.5;cursor:not-allowed}.usage-summary{flex-wrap:wrap;gap:1rem;margin:0 0 .75rem;padding:0;font-size:.9rem;list-style:none;display:flex}.usage-summary li{margin:0}.usage-table{border-collapse:collapse;width:100%;font-size:.85rem}.usage-table th,.usage-table td{text-align:left;border-bottom:1px solid #444c56;padding:.35rem .5rem}.usage-table th{color:#9aa0a6;font-weight:600}.mono{word-break:break-all;font-family:ui-monospace,monospace;font-size:.8rem}code{background:#0d1117;border-radius:4px;padding:.1rem .35rem;font-size:.85em}
