:root{color-scheme:dark;--bg: #0b1020;--card: rgba(255, 255, 255, .06);--stroke: rgba(255, 255, 255, .12);--text: rgba(255, 255, 255, .92);--muted: rgba(255, 255, 255, .65);--brand: #7c5cff;--brand2: #20d3ff}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,"Apple Color Emoji","Segoe UI Emoji";background:radial-gradient(1200px 600px at 20% 10%,rgba(124,92,255,.22),transparent 60%),radial-gradient(900px 500px at 80% 0%,rgba(32,211,255,.14),transparent 55%),var(--bg);color:var(--text)}.page{min-height:100%;display:grid;place-items:center;padding:24px}.card{width:min(980px,100%);border:1px solid var(--stroke);background:linear-gradient(180deg,#ffffff12,#ffffff0a);box-shadow:0 24px 80px #0000008c;border-radius:18px;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 18px 14px;border-bottom:1px solid var(--stroke)}.title{font-weight:700;letter-spacing:.2px}.subtitle{color:var(--muted);font-size:13px;margin-top:2px}.right{display:flex;align-items:center;gap:10px}.pill{font-size:12px;color:var(--muted);padding:7px 10px;border:1px solid var(--stroke);border-radius:999px;background:#0000002e}.auth{padding:18px;display:grid;gap:12px}.tabs{display:flex;gap:10px;padding-bottom:6px}.tab{cursor:pointer;padding:10px 12px;border-radius:12px;border:1px solid var(--stroke);background:#0000002e;color:var(--muted)}.tab.active{color:var(--text);border-color:#7c5cff8c;box-shadow:0 0 0 4px #7c5cff1a}.field{display:grid;gap:6px}.field span{font-size:12px;color:var(--muted)}.field input,.composer input{width:100%;padding:12px;border-radius:12px;border:1px solid var(--stroke);background:#00000038;color:var(--text);outline:none}.field input:focus,.composer input:focus{border-color:#20d3ff8c;box-shadow:0 0 0 4px #20d3ff1a}.field-inline{display:flex;align-items:center;gap:10px}.field-inline span{font-size:12px;color:var(--muted);min-width:70px}.field-inline input{flex:1}.btn{cursor:pointer;padding:11px 14px;border-radius:12px;border:1px solid var(--stroke);background:#0000002e;color:var(--text)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{border-color:#7c5cff8c;background:linear-gradient(135deg,#7c5cfff2,#20d3ff80)}.btn-ghost{background:transparent}.hint{color:var(--muted);font-size:12px}.error{margin:0 18px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,84,84,.35);background:#ff545414;color:#ffd2d2f2}.toolbar{padding:12px 18px;border-bottom:1px solid var(--stroke);display:flex;gap:10px;align-items:center;justify-content:space-between}.chat{height:min(62vh,520px);overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:10px}.empty{color:var(--muted);padding:18px 0}.empty-sub{margin-top:8px;font-size:12px}.msg{display:flex}.msg.user{justify-content:flex-end}.msg.assistant{justify-content:flex-start}.bubble{max-width:min(720px,92%);padding:12px;border-radius:14px;border:1px solid var(--stroke);background:#0000002e;white-space:pre-wrap;line-height:1.3}.msg.user .bubble{border-color:#7c5cff59;background:#7c5cff24}.typing{color:var(--muted)}.composer{padding:12px 18px 18px;display:grid;grid-template-columns:1fr auto;gap:10px}
