@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=IBM+Plex+Mono:wght@400;500&display=swap");:root{--bg:#0f1419;--bg-elevated:#171e26;--bg-soft:#1c2530;--border:#2a3542;--text:#e8eef4;--muted:#8b9aab;--accent:#3ecf8e;--accent-dim:#2a9a68;--danger:#f07178;--warn:#e6b450;--whatsapp:#25d366;--radius:10px;--font:"DM Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 10% -10%,#1a3a2e 0,transparent 55%),radial-gradient(900px 500px at 100% 0,#1a2740 0,transparent 50%),var(--bg);color:var(--text);font-family:var(--font)}a{color:var(--accent);text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);background:rgba(15,20,25,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:10}.brand{font-weight:700;letter-spacing:-.02em;font-size:1.05rem}.brand span{color:var(--accent)}.inbox{display:grid;grid-template-columns:320px 1fr 300px;min-height:calc(100vh - 57px)}@media (max-width:980px){.inbox{grid-template-columns:1fr}.side-panel{display:none}}.pane{border-right:1px solid var(--border);min-height:0;overflow:auto}.pane:last-child{border-right:none}.pane-header{padding:.9rem 1rem;border-bottom:1px solid var(--border);font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.list-item{display:block;width:100%;text-align:left;padding:.9rem 1rem;border:0;border-bottom:1px solid var(--border);background:transparent;color:inherit}.list-item.active,.list-item:hover{background:var(--bg-soft)}.list-item.active{box-shadow:inset 3px 0 0 var(--accent)}.list-title{font-weight:600;margin-bottom:.2rem}.list-meta{color:var(--muted);font-size:.82rem;display:flex;gap:.5rem}.badge,.list-meta{align-items:center}.badge{display:inline-flex;font-size:.7rem;padding:.15rem .4rem;border-radius:999px;background:#1e2f24;color:var(--accent);font-family:var(--mono)}.unread{background:var(--accent);color:#062216;font-weight:700;min-width:1.2rem;justify-content:center}.chat{display:flex;flex-direction:column;height:calc(100vh - 57px)}.chat-header{padding:.9rem 1.1rem;border-bottom:1px solid var(--border)}.chat-header h2{margin:0;font-size:1.1rem}.messages{flex:1 1;overflow:auto;padding:1rem;display:flex;flex-direction:column;gap:.65rem}.bubble{max-width:min(72%,560px);padding:.7rem .85rem;border-radius:14px;line-height:1.4;white-space:pre-wrap;word-break:break-word}.bubble.in{align-self:flex-start;background:var(--bg-elevated);border:1px solid var(--border)}.bubble.out{align-self:flex-end;background:#1b3d30;border:1px solid #2f6b52}.bubble .time{display:block;margin-top:.35rem;font-size:.7rem;color:var(--muted);font-family:var(--mono)}.composer{display:flex;gap:.6rem;padding:.9rem;border-top:1px solid var(--border);background:rgba(15,20,25,.7)}.composer textarea{flex:1 1;min-height:72px;resize:vertical;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);padding:.7rem .8rem}.btn{border:0;border-radius:var(--radius);padding:.65rem 1rem;background:var(--accent);color:#062216;font-weight:600}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--bg-soft);color:var(--text);border:1px solid var(--border)}.btn.danger{background:#3a1f24;color:#ffb4b8;border:1px solid #6a3036}.side-panel .section{padding:1rem;border-bottom:1px solid var(--border)}.side-panel h3{margin:0 0 .5rem;font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.side-panel p,.side-panel pre{margin:0;font-size:.9rem;white-space:pre-wrap}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(400px,100%);background:rgba(23,30,38,.9);border:1px solid var(--border);border-radius:16px;padding:1.5rem;box-shadow:0 20px 60px rgba(0,0,0,.35)}.login-card h1{margin:0 0 .35rem;font-size:1.6rem;letter-spacing:-.03em}.login-card p{margin:0 0 1.25rem;color:var(--muted)}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.field label{font-size:.85rem;color:var(--muted)}.field input{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);padding:.7rem .8rem}.error{color:var(--danger);font-size:.85rem;margin-bottom:.75rem}.empty{padding:2rem 1rem;color:var(--muted);text-align:center}