body{margin:0;background:#f3f6fa;color:#172c43;font-family:system-ui,"Microsoft YaHei",sans-serif}.app{display:flex;min-height:100vh}.sidebar{width:238px;background:#13253a;color:white;position:fixed;inset:0 auto 0 0;padding:25px 17px}.brand{display:flex;gap:10px;align-items:center;font-size:19px;font-weight:800;margin:3px 8px 48px}.brand span,.brand-mark{display:grid;place-items:center;width:42px;height:42px;background:#2d8ea2;border-radius:10px;color:white;font-size:24px}.brand small{display:block;color:#7e9db3;font-size:9px;letter-spacing:1.6px}.sidebar nav a{display:block;color:#a9becd;text-decoration:none;padding:13px 18px;margin:3px 0;border-radius:9px}.sidebar nav a.active,.sidebar nav a:hover{background:#224a61;color:white}.side-foot{position:absolute;bottom:25px;left:26px;color:#7d9cad;font-size:12px}.main{margin-left:238px;width:calc(100% - 238px)}.top{height:68px;background:white;border-bottom:1px solid #e1e8ee;display:flex;align-items:center;justify-content:space-between;padding:0 34px}.top span{color:#8091a0}.top-user{display:flex;gap:12px;align-items:center;font-size:13px}.content{max-width:1450px;margin:auto;padding:34px}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-title h1{font-size:29px;font-weight:800;margin:3px 0}.page-title p{color:#8293a0;margin:0}.eyebrow{font-size:10px;color:#1a9baa;letter-spacing:2px;font-weight:700}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(125px,1fr)) 140px 140px auto;gap:9px;background:white;padding:15px;border:1px solid #e2eaf0;border-radius:14px;margin-bottom:20px}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.kpis>div,.card-panel{background:white;border:1px solid #e2eaf0;border-radius:14px;box-shadow:0 5px 20px #17364f08}.kpis>div{padding:18px}.kpis span{display:block;color:#8293a0;font-size:13px}.kpis strong{display:block;font-size:23px;margin-top:10px;white-space:nowrap}.chart-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}.card-panel{padding:22px;margin-bottom:18px}.card-panel h2{font-size:17px;font-weight:750;margin:0 0 20px}.chart{height:330px}.panel-head{display:flex;justify-content:space-between}.panel-head a{text-decoration:none}.table thead{background:#f4f7f9;color:#647d8d}.table td,.table th{white-space:nowrap}.empty{text-align:center;color:#8da0ad;padding:30px}.inline{display:inline}.link-btn{background:none;border:0;padding:3px;color:#188fa2}.link-btn.danger{color:#d55d5d}.dimension-tabs{margin:18px 0}.dimension-tabs label{display:flex;align-items:center;gap:14px}.dimension-tabs select{width:160px}.metric-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.pagination-links{display:flex;gap:18px}.login-bg{min-height:100vh;display:grid;place-items:center;background:linear-gradient(130deg,#123047,#1f6177)}.login-card{background:white;border-radius:18px;width:min(420px,92vw);padding:38px;box-shadow:0 25px 60px #071a2860}.login-card h1{font-size:24px;font-weight:800;margin-top:20px}.login-card .form-label{width:100%}dialog{border:0;border-radius:14px;padding:25px;width:min(450px,92vw);box-shadow:0 20px 80px #12283e44}dialog::backdrop{background:#09203188}.dialog-actions{display:flex;justify-content:end;gap:10px;margin-top:20px}@media(max-width:1150px){.filter-grid{grid-template-columns:repeat(3,1fr)}.kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.sidebar{width:100%;height:auto;position:static;padding:14px}.brand{margin:0 0 12px}.sidebar nav{display:flex;overflow:auto;gap:5px}.sidebar nav a{white-space:nowrap;padding:8px 10px}.side-foot{display:none}.app{display:block}.main{margin:0;width:100%}.top{padding:0 15px;font-size:12px}.content{padding:20px 12px}.page-title h1{font-size:24px}.filter-grid{grid-template-columns:1fr 1fr}.kpis{grid-template-columns:1fr 1fr}.kpis strong{font-size:19px}.chart-grid{grid-template-columns:1fr}}
