:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#18243d;background:#f7f9fc;font-size:14px}
*{box-sizing:border-box}body{margin:0;min-width:280px;--brand:#2869de;--brand-dark:#163d97;--brand-light:#eaf1ff;background:#f7f9fc;color:#17213a}
body[data-tenant="livevox"]{--brand:#168d7a;--brand-dark:#075f55;--brand-light:#e9f7f3}
a{text-decoration:none;color:var(--brand)}a:hover{text-decoration:underline}button,input{font:inherit}button{cursor:pointer}h1,h2,p{margin-top:0}
.brand-dot,.eyebrow{color:var(--brand)}.eyebrow{font-size:.72rem;letter-spacing:.16em;font-weight:800}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.sidebar{border-right:1px solid #e5e9f0;background:white;padding:30px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:13px;color:#17213a;padding:3px 11px}.brand:hover{text-decoration:none}.brand strong{display:block;font-size:18px;letter-spacing:-.03em}.brand small{display:block;color:#96a3b6;font-size:11px;margin-top:3px}.mark{display:inline-grid;place-items:center;background:var(--brand);color:white;border-radius:12px;width:42px;height:42px;font-weight:800;font-size:22px}.side-nav{display:grid;gap:6px;margin:48px 0 0}.side-nav a{display:flex;gap:13px;align-items:center;color:#586984;font-weight:650;padding:13px;border-radius:9px}.side-nav a:hover{background:var(--brand-light);text-decoration:none;color:var(--brand)}.aside-bottom{margin-top:auto;padding:18px 12px 0;border-top:1px solid #e5e9f0;color:#358a66;font-size:12px}.aside-bottom small{display:block;color:#9ba8b9;font-size:11px;margin:8px 0 0}
.main-col{min-width:0;display:flex;flex-direction:column}.topbar{background:white;border-bottom:1px solid #e7ebf2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 42px;min-height:75px;font-size:12px;color:#7c889c}.crumb{color:#26374e}.top-user{display:flex;align-items:center;gap:11px;color:#3c4e64;font-size:12px}.avatar{background:var(--brand-light);color:var(--brand);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800}.logout{border:1px solid #e3e8f0;background:white;padding:8px 12px;border-radius:8px;color:#495b72}.content{max-width:1370px;width:100%;margin:0 auto;flex:1;padding:44px 48px 65px}.page-title h1{font-size:32px;letter-spacing:-.04em;margin:12px 0 8px}.page-title p{color:#748198;font-size:13px}.notice{background:#eff5ff;color:#30517b;border:1px solid #dceafb;border-radius:12px;margin:27px 0 23px;padding:14px 19px;line-height:1.7}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.kpi{min-height:161px;background:white;border:1px solid #e7eaf0;border-radius:12px;padding:23px;display:flex;flex-direction:column;justify-content:space-between}.kpi span{font-weight:700;color:#495b70}.kpi strong{font-size:32px;letter-spacing:-.04em}.kpi small{color:#8997a8}.kpi.accent{color:white;background:linear-gradient(115deg,var(--brand),var(--brand-dark));border:0}.kpi.accent span,.kpi.accent small{color:#e7efff}.status-large{font-size:21px!important}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:23px}.card{background:white;border:1px solid #e5eaf1;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.card-head{border-bottom:1px solid #eef1f5;padding:22px 24px}.card-head h2{font-size:16px;margin-bottom:6px}.card-head p{color:#8b98a8;font-size:12px;margin:0}.card-body{padding:23px 24px;flex:1;color:#56667d}.card-body label{display:block;font-size:12px;font-weight:750;margin-bottom:9px}.card-body input{width:100%;padding:13px;border-radius:8px;border:1px solid #e0e6ee;background:#f8fafb;color:#677991}.card-body p{font-size:12px;color:#8b98a8;margin:15px 0 0}.card-foot{padding:0 24px 23px}.btn-secondary{display:inline-block;border:1px solid #dce4ee;background:white;color:#31516c;border-radius:8px;padding:11px 16px;font-weight:700}.empty-state{min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#52647c;padding:18px}.empty-icon{display:grid;place-items:center;width:55px;height:55px;background:#f2f6fb;color:#a0aec2;font-size:24px;border-radius:14px;margin-bottom:13px}.empty-state p{font-size:12px;color:#9cabb9}.footer{color:#a4b0bd;font-size:11px;padding:23px 48px;border-top:1px solid #ebeff4}
.login-wrapper{min-height:calc(100vh - 60px);display:flex;justify-content:center;align-items:center;padding:30px 18px}.login-card{border-radius:17px;border:1px solid #e4eaf2;background:white;padding:44px;box-shadow:0 20px 55px #1c37510a;max-width:480px;width:100%}.login-brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;margin-bottom:37px}.login-card h1{letter-spacing:-.04em;font-size:30px;margin:10px 0}.intro-desc{font-size:13px;color:#8995a7;line-height:1.7;margin-bottom:26px}.login-card form{display:grid;gap:11px}.login-card label{font-size:12px;font-weight:700;margin-top:5px;color:#40536b}.login-card input{width:100%;height:46px;padding:0 13px;border:1px solid #e1e7ee;background:#f9fbfd;border-radius:8px;outline-color:var(--brand)}.btn-primary{background:var(--brand);color:#fff;border:0;border-radius:9px;height:47px;font-weight:800;margin-top:14px}.login-note{font-size:11px;color:#98a4b4;line-height:1.7;margin-top:24px}.form-error{border-radius:8px;padding:11px;background:#fff0f0;color:#9d2531;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}td,th{padding:12px;border-bottom:1px solid #eef1f5;text-align:left;white-space:nowrap}th{color:#62728a}
@media(max-width:950px){.app-shell{grid-template-columns:195px minmax(0,1fr)}.content{padding:30px 22px}.topbar{padding:14px 22px}.card-grid{grid-template-columns:1fr}.kpi-grid{gap:10px}.kpi{padding:16px}}
@media(max-width:690px){.app-shell{display:block}.sidebar{padding:14px 17px;border-bottom:1px solid #e7ebf0}.side-nav,.aside-bottom{display:none}.brand strong{font-size:16px}.topbar{min-height:57px}.top-user>span:not(.avatar){display:none}.topbar .crumb{display:none}.content{padding:26px 18px 38px}.page-title h1{font-size:26px}.kpi-grid{grid-template-columns:1fr}.kpi{min-height:108px}.kpi strong{font-size:27px}.card-grid{gap:14px}.footer{padding:18px}.login-card{padding:26px}.login-card h1{font-size:26px}}
