:root{--bg:#05070b;--panel:#0d1117;--panel2:#111827;--text:#e5eefb;--muted:#90a0b8;--line:#1f2937;--green:#25d366;--blue:#60a5fa;--violet:#a78bfa;--danger:#fb7185}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0%,#173b2a 0,#05070b 35%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.login-body{min-height:100vh;display:grid;place-items:center}.login-card{width:min(420px,92vw);background:rgba(13,17,23,.88);border:1px solid #263241;border-radius:28px;padding:32px;box-shadow:0 30px 80px #0008;backdrop-filter:blur(12px)}.brand-dot{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--green),var(--blue));display:grid;place-items:center;font-weight:900;color:#03110a;margin-bottom:18px}.login-card h1{margin:0 0 8px;font-size:28px}.login-card p{color:var(--muted);line-height:1.5}.login-card label{display:block;color:var(--muted);font-size:13px;margin:18px 0}.login-card input{width:100%;margin-top:8px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:#090d13;color:var(--text);font-size:15px}.login-card button,.send{width:100%;padding:14px 18px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--green),#16a34a);font-weight:800;color:#03110a;cursor:pointer}.error{background:#3b1018;color:#fecdd3;border:1px solid #7f1d1d;padding:10px;border-radius:12px}.shell{height:100vh;display:grid;grid-template-columns:300px 1fr}.side{border-right:1px solid var(--line);background:rgba(8,12,18,.86);padding:20px;overflow:auto}.logo{display:flex;gap:12px;align-items:center;margin-bottom:24px}.logo-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--green),var(--violet));display:grid;place-items:center;color:#04120a;font-weight:900}.logo h2{font-size:18px;margin:0}.logo p{margin:2px 0 0;color:var(--muted);font-size:12px}.new{width:100%;border:1px solid #284838;background:#0d2218;color:#b7ffd4;border-radius:14px;padding:12px;font-weight:800;cursor:pointer}.agents{margin-top:24px}.agents h3,.history h3{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.agent{padding:12px;border:1px solid var(--line);border-radius:14px;margin:10px 0;background:#0b1017;cursor:pointer}.agent.active{border-color:var(--green);box-shadow:0 0 0 1px #25d36633}.agent b{display:block}.agent span{font-size:12px;color:var(--muted)}.conv{padding:10px;border-radius:12px;color:#cbd5e1;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv:hover{background:#111827}.main{display:grid;grid-template-rows:auto 1fr auto;height:100vh}.top{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);background:rgba(5,7,11,.72)}.pill{border:1px solid #254536;background:#0c2218;color:#b8ffd5;padding:8px 12px;border-radius:999px;font-size:13px}.logout{color:var(--muted);text-decoration:none}.messages{padding:28px;overflow:auto}.hero{max-width:820px;margin:6vh auto;text-align:center}.hero h1{font-size:clamp(34px,6vw,72px);line-height:.95;margin:0;background:linear-gradient(135deg,#fff,#a7f3d0,#93c5fd);-webkit-background-clip:text;color:transparent}.hero p{color:var(--muted);font-size:18px;line-height:1.6}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.card{background:rgba(17,24,39,.7);border:1px solid var(--line);border-radius:20px;padding:18px;text-align:left}.msg{max-width:860px;margin:0 auto 18px;display:flex}.msg.user{justify-content:flex-end}.bubble{padding:15px 17px;border-radius:18px;line-height:1.55;white-space:pre-wrap;max-width:78%;border:1px solid var(--line)}.user .bubble{background:#123422;border-color:#1f8f4f}.assistant .bubble{background:#0e141d}.composer{padding:18px 24px;border-top:1px solid var(--line);background:rgba(5,7,11,.84)}.composer-inner{max-width:960px;margin:auto;display:flex;gap:12px}.composer textarea{flex:1;min-height:54px;max-height:160px;resize:vertical;border-radius:18px;border:1px solid var(--line);background:#090d13;color:var(--text);padding:16px;font-size:15px}.send{width:120px}.small{font-size:12px;color:var(--muted);margin-top:8px;text-align:center}@media(max-width:850px){.shell{grid-template-columns:1fr}.side{display:none}.cards{grid-template-columns:1fr}.bubble{max-width:95%}}
