@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--dark:#071e3d;--ink:#14233d;--muted:#667b96;--border:#dfe7f2;--bg:#f3f7fc;--accent:#0759a7;--blue:#2878c6;--red:#dd625c;--amber:#edaa47;--panel:#fff;--shadow:0 12px 38px rgba(22,47,61,.045)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 'DM Sans',system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.045em}a{text-decoration:none;color:inherit}input,select,textarea{width:100%;padding:12px 14px;border:1px solid #dce4e8;background:white;border-radius:11px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#1766b2;box-shadow:0 0 0 3px #1766b220}label{display:block;font-size:12px;font-weight:700;color:#51656f;margin:0 0 6px}.shell{min-height:100vh;display:flex}.sidebar{width:252px;flex:none;background:#063c76;color:#c7d5da;display:flex;flex-direction:column;padding:28px 16px 18px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:2px 10px 28px}.brand-icon{width:40px;height:40px;border-radius:12px;background:#3e8fda;display:grid;place-items:center;color:#ffffff;transform:rotate(-5deg)}.brand-icon svg{width:24px;height:24px;stroke-width:2}.brand-main{font:800 19px/1.1 Manrope,sans-serif;letter-spacing:-.06em;color:white}.brand-main span{color:#d8eaff}.brand-sub{font-size:9px;letter-spacing:.13em;font-weight:800;color:#aac9e8;margin-top:5px}.workspace{background:#114d8c;border:1px solid #2c659e;border-radius:13px;padding:12px 9px;display:flex;gap:9px;align-items:center;margin:0 4px 34px}.workspace-avatar{width:34px;height:34px;background:#d6eaff;border-radius:10px;display:grid;place-items:center;color:#104b8b;font-weight:800}.workspace strong,.workspace small{display:block}.workspace strong{font-size:11px;color:#ffffff}.workspace small{font-size:10px;color:#b3d0eb}.workspace svg{width:13px;margin-left:auto;color:#d0e2f3}.nav-label{font-weight:800;font-size:9px;letter-spacing:.17em;color:#adc5df;padding:0 14px;margin:0 0 10px}.sidebar nav{display:flex;flex-direction:column;gap:5px;margin-bottom:30px}.nav-button{border:0;background:transparent;color:#d9eaff;display:flex;align-items:center;gap:12px;text-align:left;width:100%;min-height:43px;border-radius:10px;padding:0 13px;font-weight:600;font-size:12px}.nav-button svg{width:18px;height:18px;color:#d7e8f9}.nav-button:hover{background:#175a9a;color:white}.nav-button.active{background:#2b74b8;color:#ffffff;font-weight:800}.nav-button.active svg{color:#ffffff}.nav-dot{height:6px;width:6px;border-radius:50%;background:#eb9a50;margin-left:auto}.sidebar-bottom{margin-top:auto}.support-card{margin:0 4px 19px;padding:18px;border-radius:16px;background:linear-gradient(140deg,#185b9d,#0b427e 90%);border:1px solid #377db5}.tiny-orb{font-size:23px;color:#c9e7ff;margin-bottom:10px}.support-card strong{display:block;font:800 12px Manrope;color:white}.support-card p{color:#d7e8f9;font-size:11px;margin:6px 0 13px;line-height:1.6}.support-card a{font-weight:800;color:#e7f4ff;font-size:10px}.support-card a span{margin-left:4px}.sidebar-footer{color:#708b92;font-size:9px;font-weight:800;letter-spacing:.06em;display:flex;justify-content:space-between;padding:0 9px}.main-wrap{min-width:0;display:flex;flex-direction:column;flex:1}.topbar{height:75px;flex:none;border-bottom:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 37px;gap:12px}.top-left,.top-right{display:flex;align-items:center;gap:15px;white-space:nowrap}.top-left{font-size:11px}.breadcrumb{font-weight:800;letter-spacing:.1em;color:#92a2ad;font-size:10px}.slash{color:#c0cbd2}.top-left strong{color:#334a54;font-weight:800}.top-right{gap:17px}.env-pill{display:flex;align-items:center;gap:8px;background:#fff8ea;color:#ae6f27;padding:8px 12px;border:1px solid #f5dfb6;border-radius:100px;font-size:10px;font-weight:800;letter-spacing:.04em}.env-pill.live{background:#eaf8f2;color:#0c8768;border-color:#cbeedc}.live-dot{width:7px;height:7px;background:#e7a641;border-radius:50%}.env-pill.live .live-dot{background:#21b68d}.icon-button{background:none;border:1px solid transparent;width:34px;height:34px;border-radius:9px;color:#78909c;display:grid;place-items:center}.icon-button:hover{background:#f0f4f5}.profile{display:flex;gap:9px;align-items:center;border:0;border-left:1px solid var(--border);padding:0 0 0 16px;background:none;font-size:11px;font-weight:800;color:#43545e}.profile-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#24534a;background:#dcefe8;font-weight:800}.mobile-only{display:none}main{padding:33px 37px 25px;flex:1;width:100%;max-width:1750px}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px}.eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.17em;font-weight:800;color:#0c62ac;margin-bottom:10px}.eyebrow:before{content:'';width:16px;height:2px;background:#2c80c7}.page-head h1{font-size:27px;line-height:1.2;color:#142e36;font-weight:800}.page-head p{margin-top:7px;color:#7e909a;font-size:12px}.head-actions,.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{border:1px solid #dce5e8;background:white;color:#304750;display:inline-flex;gap:8px;justify-content:center;align-items:center;padding:11px 15px;border-radius:10px;font-weight:800;font-size:11px;transition:transform .15s,background .15s;white-space:nowrap}.btn:hover{transform:translateY(-1px);background:#f6faf9}.btn.primary{background:#0759a7;border-color:#0759a7;color:#063b34}.btn.primary:hover{background:#0969bb}.btn.dark{background:#0c4179;border-color:#0c4179;color:white}.btn svg{height:16px;width:16px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.kpi{background:white;border:1px solid #e7ecf0;box-shadow:var(--shadow);border-radius:15px;padding:20px 21px 17px;min-height:137px}.kpi-top{display:flex;justify-content:space-between;align-items:center;font-weight:800;color:#71838c;font-size:11px}.kpi-icon{width:32px;height:32px;border-radius:10px;background:#e8f2fd;color:#217bc4;display:grid;place-items:center}.kpi-icon svg{height:17px;width:17px}.kpi-icon.amber{background:#fff3e7;color:#d89c3c}.kpi-icon.blue{background:#eaf3ff;color:#4a8ade}.kpi-icon.coral{background:#feefee;color:#d7746a}.kpi-num{font:800 33px/1.2 Manrope;margin-top:14px;letter-spacing:-.065em}.kpi-foot{margin-top:8px;color:#8c9aa3;font-size:10px}.kpi-foot strong{color:#176ab2}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:20px;margin-bottom:20px}.panel{background:#fff;border:1px solid #e7edf1;border-radius:16px;box-shadow:var(--shadow);min-width:0;overflow:hidden}.panel-pad{padding:23px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.panel h2{font-size:15px;letter-spacing:-.03em;font-weight:800}.muted{color:#91a0a9;font-size:11px}.link{font-size:11px;font-weight:800;color:#145fa7;border:0;background:none;cursor:pointer}.chart-card{display:flex;flex-direction:column;min-height:305px}.chart-legend{display:flex;gap:16px;font-size:10px;color:#82939d}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#176ebc;margin-right:6px}.legend-dot.secondary{background:#a7d9d0}.mini-chart{display:block;width:100%;height:170px;margin-top:10px;overflow:visible}.chart-labels{display:flex;justify-content:space-between;color:#9aacb4;font-size:10px;margin-left:27px;margin-right:6px}.timeline{display:flex;flex-direction:column;gap:17px}.timeline-row{display:flex;align-items:flex-start;gap:13px}.timeline-time{width:42px;flex:none;font-size:11px;font-weight:800;color:#526771;margin-top:3px}.timeline-icon{width:31px;height:31px;flex:none;border-radius:9px;display:grid;place-items:center;background:#eaf7f2;color:#179d80}.timeline-icon.warning{background:#fff2e7;color:#dc9b3b}.timeline-icon svg{width:16px;height:16px}.timeline-body{flex:1}.timeline-body strong{display:block;font-weight:800;font-size:11px}.timeline-body p{font-size:10px;color:#93a2aa;margin-top:2px}.status-tag{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;padding:5px 8px;border-radius:7px;background:#eaf8f2;color:#19866c;white-space:nowrap}.status-tag.amber{background:#fff5e6;color:#bc7c2b}.status-tag.coral{background:#fff0ef;color:#cb6057}.status-tag.blue{background:#ebf3ff;color:#487cb3}.status-tag.gray{background:#eef2f5;color:#73848b}.dot{display:inline-block;width:6px;height:6px;background:currentColor;border-radius:50%}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:620px}.data-table th{text-align:left;font-size:10px;letter-spacing:.04em;font-weight:800;color:#92a2ac;background:#f9fbfc;padding:14px 20px;border-bottom:1px solid #e8eef1;white-space:nowrap}.data-table td{padding:14px 20px;border-bottom:1px solid #f0f2f4;font-size:11px;font-weight:650;color:#47606a;white-space:nowrap}.data-table tr:last-child td{border-bottom:0}.data-table td strong{font-weight:800;color:#233b45}.data-table tbody tr:hover{background:#f8fcfb}.table-head{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}.table-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.searchbox{display:flex;align-items:center;gap:9px;border:1px solid #e0e8eb;background:#fff;border-radius:10px;padding:0 12px;min-width:190px}.searchbox svg{width:15px;height:15px;color:#a0aeb4}.searchbox input{border:none;outline:none;box-shadow:none;padding:10px 0;font-size:11px}.filter-select{width:auto;min-width:145px;font-size:11px;padding:10px}.empty{color:#879ba3;text-align:center;padding:43px 20px;font-size:12px}.hero{border-radius:18px;padding:26px 27px;background:linear-gradient(105deg,#064582,#0e62a6 60%,#2078ba);color:white;margin-bottom:21px;position:relative;overflow:hidden;min-height:145px;display:flex;justify-content:space-between;align-items:center}.hero:before,.hero:after{content:'';position:absolute;border:1px solid #5fada26b;border-radius:50%;width:360px;height:360px;right:-85px;top:-170px}.hero:after{width:245px;height:245px;right:-15px;top:-110px}.hero-label{font-size:9px;letter-spacing:.18em;font-weight:800;color:#c1e3ff}.hero h2{font-size:24px;letter-spacing:-.04em;margin:7px 0}.hero p{font-size:11px;color:#d3e8fa}.hero-right{position:relative;z-index:2;text-align:right}.hero-timestamp{font-size:24px;font-weight:800;letter-spacing:-.04em}.hero-right small{display:block;color:#d0eaff;font-size:10px;margin-top:3px}.intro-text{margin-bottom:18px;font-size:12px;color:#81909b}.pill-btn{border:none;background:#e9f7f1;color:#176ab2;border-radius:20px;padding:7px 12px;font-size:10px;font-weight:800}.statline{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.statline span{font-size:10px;color:#92a3aa}.statline strong{color:#233c44}.footer{padding:0 37px 22px;color:#a1aeb4;font-size:10px;font-weight:650}.footer span{margin:0 7px}.footer-right{float:right}.modal-layer{position:fixed;inset:0;z-index:20;background:#132830a6;display:grid;place-items:center;padding:20px;backdrop-filter:blur(4px)}.modal-layer.hidden{display:none}.modal{background:white;border-radius:18px;box-shadow:0 20px 70px #082b3960;max-width:540px;width:100%;max-height:90vh;overflow:auto;padding:24px}.modal header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:22px}.modal header small{color:#176ab2;font-size:10px;font-weight:800;letter-spacing:.1em}.modal header h2{font-size:22px;margin-top:5px}.modal .close{border:0;background:#f4f7f8;width:30px;height:30px;border-radius:9px;font-size:21px;color:#7f9299}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:14px}.form-grid .full{grid-column:1/-1}.modal .btn{margin-top:9px}.help{font-size:11px;color:#899ca4;margin-top:5px}.alert-strip{padding:13px 16px;border-radius:11px;background:#f2f9f6;color:#40786d;font-size:11px;margin-bottom:16px}.alert-strip.warning{background:#fff8ec;color:#9d7529}.toast{position:fixed;bottom:26px;right:26px;padding:13px 17px;min-width:230px;max-width:390px;border-radius:11px;background:#163642;color:white;box-shadow:0 10px 35px #14343a40;z-index:30;opacity:0;transform:translateY(14px);pointer-events:none;transition:.25s;font-size:12px}.toast.show{opacity:1;transform:none}.auth-divider{margin:20px 0;text-align:center;color:#9eacb4;font-size:10px}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:19px}.code-sample{background:#152f3a;border-radius:10px;padding:14px;color:#c2f5e6;overflow:auto;white-space:pre-wrap;font-size:10px}.side-note{background:#f4faf8;border:1px solid #daeee5;padding:16px;border-radius:11px;color:#456b61;font-size:11px;line-height:1.7;margin-top:13px}.data-field{font-size:12px;font-weight:700;color:#2c4d56}.list-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 2px;border-bottom:1px solid #eff3f4}.list-row:last-child{border-bottom:0}.list-row strong{font-size:12px}.list-row small{font-size:10px;color:#8b9ca4;display:block;margin-top:3px}.tag{padding:5px 9px;background:#eef6f7;border-radius:6px;font-weight:800;font-size:10px;color:#3a7075}.switcher{display:flex;gap:6px;background:#f2f6f7;border-radius:10px;padding:4px}.switcher button{padding:8px 12px;font-weight:800;font-size:10px;border:0;background:transparent;border-radius:8px;color:#85959c}.switcher button.active{background:white;box-shadow:0 3px 8px #0b33330b;color:#176ab2}
@media(max-width:1150px){.sidebar{width:220px}.topbar{padding:0 25px}main{padding:26px 25px}.footer{padding:0 25px 20px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-105%);z-index:12;box-shadow:0 20px 60px #133a3d30;transition:transform .23s}.sidebar.open{transform:none}.mobile-only{display:grid}.topbar{height:64px;padding:0 14px}.top-right{gap:5px}.profile span{display:none}.env-pill{font-size:9px;padding:7px}.breadcrumb,.slash{display:none}main{padding:21px 14px}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:24px}.hero{padding:23px;min-height:135px}.hero h2{font-size:21px}.hero-right{display:none}.kpi-grid{gap:9px}.kpi{padding:15px;min-height:120px}.kpi-num{font-size:28px}.kpi-top{font-size:10px}.dashboard-columns{gap:12px}.panel-pad{padding:18px}.footer{padding:0 15px 15px}.footer-right{display:none}.grid-two{grid-template-columns:1fr}.modal{padding:18px}}

/* AlplaTrack v0.2 — corporate blue visual language */
:root{--dark:#073b70;--ink:#102342;--muted:#6c7e95;--border:#dce6f1;--bg:#f2f6fb;--accent:#09569f;--blue:#176db7;--panel:#fff;--shadow:0 9px 25px rgba(14,57,105,.07)}
body{background:var(--bg);color:var(--ink)}
.sidebar{background:linear-gradient(160deg,#073c74 0%,#07569a 62%,#064078 100%);color:#e1edfa}
.brand{padding:8px 12px 27px;border-bottom:1px solid #ffffff33;margin-bottom:20px}
.brand-main{font-size:27px;letter-spacing:-.06em;font-weight:800}.brand-main span{color:white}
.brand-sub{font-size:9px;letter-spacing:.13em;color:#c6e1f9;margin-top:8px}
.workspace{background:#ffffff14;border:1px solid #ffffff25;margin-top:2px;margin-bottom:27px}
.nav-button{font-size:12px;color:#dbe8f7}.nav-button svg{color:#c9e0f8}.nav-button.active{background:#2879bf;color:white}.nav-button.active svg{color:white}
.nav-button:hover{background:#ffffff1c;color:white}.sidebar-footer{color:#b7d5ef}
.support-card{background:#ffffff13;border:1px solid #ffffff2b}.support-card p{color:#dae9f7}.support-card a{color:#ffffff}
.topbar{background:#fff;border-bottom-color:#e0e9f4}.profile-avatar{background:#e4f0fc;color:#105a9b}
.page-head h1{color:#102342}.eyebrow{color:#105fa7}.eyebrow:before{background:#176ebc}
.btn.primary{background:#09599d;border-color:#09599d;color:#fff}.btn.primary:hover{background:#0b6fbd}
.btn.dark{background:#073d76;border-color:#073d76}.link{color:#0f63ad}
.hero{background:linear-gradient(110deg,#07437c 0%,#0b64ab 100%)}
.kpi,.panel{border-color:#dfe8f3;box-shadow:var(--shadow)}.kpi-icon{background:#e8f2fe;color:#105eab}
.status-tag.blue{background:#e2f0ff;color:#155eab}.env-pill.live{background:#e8f5ef;color:#1c7750}
input:focus,select:focus,textarea:focus{border-color:#2177bf;box-shadow:0 0 0 3px #2177bf25}
/* Semantic warnings remain red/amber; primary actions and decorative tokens are blue. */
