:root{--sidebar:#12372a;--accent:#198754;--bg:#f5f7f8;--panel:#fff;--border:#e5e7eb}
body{background:var(--bg);color:#1f2937}
.sidebar{width:260px;background:var(--sidebar);color:#fff;position:sticky;top:0;height:100vh}
.sidebar .nav-link{color:#d9efe5;border-radius:8px;padding:.65rem .8rem}
.sidebar .nav-link:hover{background:rgba(255,255,255,.12);color:#fff}
.topbar{background:#fff}
.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:1rem;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.metric{display:flex;gap:.9rem;align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;padding:1rem;min-height:96px}
.metric i{font-size:1.7rem;color:var(--accent)}
.metric span{display:block;color:#6b7280;font-size:.88rem}
.metric strong{font-size:1.55rem}
.auth-bg{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef7f1,#f8fafc)}
.auth-card{width:min(420px,92vw);background:#fff;border:1px solid var(--border);border-radius:8px;padding:2rem;box-shadow:0 10px 35px rgba(0,0,0,.08)}
.preview-box{min-height:76px;background:#f8fafc;border:1px solid var(--border);border-radius:8px;padding:.85rem;white-space:pre-wrap}
.message-bubble{max-width:760px;border:1px solid var(--border);border-radius:8px;padding:.8rem;background:#f8fafc}
.message-bubble.incoming{margin-right:auto}
.message-bubble.outgoing{margin-left:auto;background:#e9f7ef}
.message-bubble small{display:block;color:#6b7280;margin-top:.35rem}
@media (max-width: 900px){.sidebar{width:76px}.sidebar .fw-bold{font-size:0}.sidebar .nav-link{font-size:0}.sidebar .nav-link i{font-size:1.2rem}}
