:root{--bg:#080f1a;--panel:#101c2e;--panel2:#132338;--border:#22354b;--ink:#eaf1f8;--muted:#9aacc0;--gold:#caa76a;--gold2:#e4c38a;--green:#82b8ac;--accent:#22354b;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.52 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}[hidden]{display:none!important}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:var(--gold);text-transform:uppercase}.brand{display:flex;gap:12px;align-items:center;font-weight:800;letter-spacing:.02em}.brand-mark{height:38px;width:38px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;border-radius:10px;background:rgba(202,167,106,.10);font-weight:900;font-size:17px}.brand-title{font-size:15px;line-height:1.05}.brand-sub{display:block;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-top:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:9px;padding:12px 18px;border:1px solid var(--gold);background:var(--gold);color:#07121e;font-weight:800;transition:.2s}.button:hover{background:var(--gold2);border-color:var(--gold2)}.button.ghost{background:transparent;border:1px solid var(--border);color:var(--ink)}.button.ghost:hover{border-color:var(--gold);background:#142238}.button.small{padding:8px 12px;font-size:12px}.text-link{color:var(--gold2);font-weight:700}.landing{min-height:100vh;background:radial-gradient(ellipse at 75% 20%,#20324c 0%,transparent 40%),var(--bg)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:25px clamp(20px,5vw,75px);border-bottom:1px solid rgba(255,255,255,.05);gap:20px}.topbar-right{display:flex;align-items:center;gap:18px}.hero{max-width:1220px;margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:center;gap:8vw;padding:clamp(60px,9vw,125px) 30px 70px}.hero h1{font-size:clamp(42px,5.8vw,77px);line-height:1.05;letter-spacing:-.05em;margin:12px 0 24px;max-width:800px}.hero h1 em{font-style:normal;color:var(--gold)}.lead{font-size:18px;color:var(--muted);max-width:560px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.mock-window{background:linear-gradient(150deg,#16283f,#0b1728);border:1px solid #37506a;border-radius:18px;padding:18px;box-shadow:0 30px 90px #0007;transform:rotate(-2deg)}.window-head{display:flex;justify-content:space-between;align-items:center;padding:4px 5px 15px;border-bottom:1px solid var(--border)}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block;margin-right:6px}.window-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.kpi{border:1px solid var(--border);background:#15263c;border-radius:12px;padding:16px}.kpi strong{display:block;font-size:19px;margin:6px 0}.kpi span{font-size:11px;color:var(--muted)}.window-row{display:flex;align-items:center;justify-content:space-between;padding:13px 9px;border-bottom:1px solid var(--border);gap:12px}.window-row:last-child{border:0}.window-tag{font-size:10px;background:#26374a;border:1px solid #3a5066;padding:4px 8px;border-radius:100px;color:#bbc9d5}.feature-section{max-width:1220px;padding:30px 30px 100px;margin:auto}.feature-section h2{font-size:28px;letter-spacing:-.03em}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:24px}.feature{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:24px}.feature b{display:block;font-size:17px;margin-bottom:8px}.feature p{color:var(--muted);margin:0;font-size:13px}.footnote{font-size:12px;color:var(--muted);border-top:1px solid var(--border);padding:20px 30px;max-width:1220px;margin:0 auto}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(260px,.95fr) minmax(420px,1.05fr)}.auth-art{background:linear-gradient(145deg,#101e32,#07101c);border-right:1px solid var(--border);padding:46px;display:flex;flex-direction:column;justify-content:space-between}.auth-art h1{font-size:clamp(40px,4.5vw,65px);letter-spacing:-.04em;line-height:1.07}.auth-side-copy{font-size:16px;color:var(--muted);max-width:480px}.auth-panel{display:grid;place-items:center;padding:42px}.form-card{width:min(100%,420px)}.form-card h2{font-size:30px;letter-spacing:-.03em;margin-bottom:5px}.form-card p{color:var(--muted)}.form-group{margin:21px 0}.form-group label{display:block;font-weight:700;font-size:12px;margin-bottom:8px}.form-group input{background:#111f31;color:var(--ink);border:1px solid #34465a;padding:13px 14px;border-radius:8px;width:100%;outline:none}.form-group input:focus{border-color:var(--gold)}.form-error{color:#ffb7ae;min-height:18px;font-size:13px;margin:13px 0}.form-card .button{width:100%}.back-link{font-size:13px;color:var(--muted);margin-top:24px;display:inline-block}.dashboard{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}.sidebar{background:#0d1a2b;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:24px;padding:24px 16px;min-height:100vh}.sidebar .brand{padding:0 8px 10px}.nav-label{margin:0 12px 8px;color:#718ba5;font-size:10px;font-weight:900;letter-spacing:.16em}.nav-item{display:flex;gap:12px;padding:12px 14px;color:#a7b9cb;font-size:13px;border:1px solid transparent;border-radius:9px;align-items:center;cursor:pointer;width:100%;text-align:left;background:transparent}.nav-item:hover{background:#182b42;color:var(--ink)}.nav-item.active{background:#20334b;border-color:#354a61;color:var(--gold2)}.nav-icon{width:20px;opacity:.9;font-size:17px}.side-footer{margin-top:auto;border-top:1px solid var(--border);padding:18px 8px 0}.dash-content{padding:0 min(4vw,52px) 48px;min-width:0}.dash-header{padding:26px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);gap:15px}.dash-header h1{font-size:13px;margin:0;color:var(--muted);font-weight:700}.user-chip{border:1px solid var(--border);background:#112239;border-radius:40px;padding:8px 13px;font-size:12px;color:var(--ink)}.welcome{margin:40px 0 24px}.welcome h2{font-size:clamp(30px,3vw,43px);letter-spacing:-.035em;margin:7px 0}.welcome p{color:var(--muted);margin:0;max-width:730px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 0 14px}.section-heading h3{font-size:19px;margin:0}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat{padding:20px;background:var(--panel);border:1px solid var(--border);border-radius:13px;min-width:0}.stat-label{color:var(--muted);font-size:12px}.stat-value{font-size:23px;font-weight:800;letter-spacing:-.03em;margin-top:14px}.stat-footer{margin-top:7px;font-size:11px;color:var(--gold)}.grid-2{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr);gap:16px}.panel{background:var(--panel);border:1px solid var(--border);padding:24px;border-radius:14px}.panel h3{font-size:18px;margin:0 0 12px}.panel p{color:var(--muted);margin:0}.empty{padding:26px 12px;text-align:center;border:1px dashed #3c5268;border-radius:11px;background:#122035}.empty-symbol{height:50px;width:50px;background:#21364d;border-radius:14px;display:grid;place-items:center;margin:0 auto 12px;color:var(--gold);font-size:22px}.empty strong{display:block;margin:0 0 4px}.empty p{font-size:12px;max-width:350px;margin:auto}.module-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.module-card{border-radius:12px;border:1px solid var(--border);background:#102136;padding:18px;text-align:left;color:var(--ink);cursor:pointer;transition:.2s}.module-card:hover{border-color:#6e6b5a;transform:translateY(-2px)}.module-card .mini-icon{color:var(--gold);font-size:20px}.module-card b{display:block;margin:10px 0 5px}.module-card span{display:block;color:var(--muted);font-size:12px}.notice{margin:20px 0;border:1px solid #5b4f37;background:#242519;border-radius:10px;padding:14px 16px;font-size:12px;color:#e8d9b6}.gate{max-width:550px;margin:12vh auto;padding:36px;text-align:center;background:var(--panel);border:1px solid var(--border);border-radius:14px}.gate h2{margin:10px 0}.mobile-head{display:none}.officer-shell{max-width:860px;margin:0 auto;padding:22px}.officer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--border)}.officer-main h1{font-size:36px;letter-spacing:-.035em;margin:40px 0 8px}.officer-panels{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:28px 0}.officer-shell .panel{min-height:180px}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.chip{display:inline-flex;border:1px solid #544a37;color:var(--gold2);background:#282519;border-radius:30px;font-size:11px;font-weight:800;padding:5px 9px}.notice-banner{font-size:12px;color:var(--gold2)}
@media(max-width:1050px){.hero{gap:30px}.stat-row{grid-template-columns:repeat(2,1fr)}.module-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding-top:55px}.mock-window{transform:none}.features{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr}.auth-art{min-height:240px;padding:24px}.auth-art h1{font-size:32px}.auth-panel{padding:42px 22px}.dashboard{display:block}.sidebar{min-height:auto;display:none}.mobile-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#0d1a2b;border-bottom:1px solid var(--border)}.mobile-head .brand-title{font-size:12px}.mobile-menu{display:block;position:fixed;z-index:10;inset:0;max-width:300px;box-shadow:20px 0 60px #000c;background:#0d1a2b;overflow:auto;padding:20px}.dash-content{padding:0 18px 35px}.dash-header{padding:16px 0}.welcome{margin:25px 0}.grid-2{grid-template-columns:1fr}.module-cards{grid-template-columns:1fr}.officer-panels{grid-template-columns:1fr}.hero .topbar{padding:20px}.topbar-right .muted{display:none}}@media(max-width:480px){.topbar{padding:18px 15px}.topbar-right{gap:10px}.topbar .brand-sub{display:none}.hero{padding:55px 18px}.features{grid-template-columns:1fr}.feature-section{padding:30px 18px 65px}.stat-row{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:15px}.stat-value{font-size:18px}.user-chip{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}


/* PRECISION BRAND SYSTEM v1.0 — controls and layout use the approved official emblem. */
:root{
 --bg:#080A0D;--panel:#13171C;--panel2:#1D232A;--border:#303842;
 --ink:#F4F6F8;--muted:#9AA5B0;--gold:#D2DAE2;--gold2:#F7F9FB;
 --green:#72B5A1;--accent:#26313C;--radius:14px;
 --brand-black:#080A0D;--brand-graphite:#171C22;--brand-steel:#A7B2BE;--brand-white:#F4F6F8;
 --signal-amber:#D5A76A;--signal-red:#D98484;
}
body{background:var(--bg);color:var(--ink)}
.brand{gap:12px}.brand-logo{display:block;height:48px;width:48px;flex:none;object-fit:contain;filter:drop-shadow(0 1px 9px #0004)}
.sidebar .brand-logo{height:54px;width:54px}.mobile-head .brand-logo{height:38px;width:38px}
.topbar .brand-logo{height:56px;width:56px}
.auth-art .brand-logo{height:60px;width:60px}
.officer-top .brand-logo{height:53px;width:53px}
.gate .brand-logo{height:86px;width:86px;margin:0 auto}
.brand-title{font-size:14px;line-height:1.13;letter-spacing:.04em}.brand-sub{font-size:9px;letter-spacing:.16em}
.button{background:var(--brand-white);color:var(--brand-black);border-color:var(--brand-white)}
.button:hover{background:#dce2e8;border-color:#dce2e8}.button.ghost:hover{background:#222932;border-color:#64727f}
.landing{background:radial-gradient(ellipse 60% 65% at 80% 25%,#1b242e 0%,#0d111600 68%),linear-gradient(180deg,#0d1116 0%,#080a0d 90%)}
.topbar{border-bottom:1px solid #252c33;background:#090d11e6}
.topbar-right .muted{font-size:10px!important;letter-spacing:.14em;font-weight:800}
.hero{max-width:1380px;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);gap:4vw;padding-top:clamp(60px,7vw,100px);padding-bottom:70px}
.hero-copy{position:relative;z-index:1}
.hero h1{font-size:clamp(48px,5.8vw,85px);max-width:720px;line-height:1.02}
.hero h1 em{display:block;margin-top:8px;color:#CAD3DD}
.hero .eyebrow{display:flex;align-items:center;gap:9px}
.hero .eyebrow:before{content:'';width:32px;height:2px;background:var(--brand-steel)}
.hero-right{position:relative;min-width:0;padding:30px 0 10px;display:flex;flex-direction:column;align-items:center}
.hero-seal{width:min(78%,410px);aspect-ratio:1;margin:0 auto -54px;z-index:2;position:relative;filter:drop-shadow(0 18px 30px #000a)}
.hero-seal img{width:100%;height:100%;object-fit:contain}
.mock-window{width:100%;max-width:550px;transform:none;z-index:1;position:relative;margin-top:0;padding-top:56px;background:linear-gradient(145deg,#222a33,#0d1218);border:1px solid #4a545f;box-shadow:0 30px 85px #0009}
.kpi{background:#1a2129;border-color:#333d48}
.window-tag{background:#2d3640;border-color:#46525e;color:#dce5ee}
.feature-section{padding-top:42px;border-top:1px solid #262e37}
.feature{background:linear-gradient(165deg,#1b222a,#10161b)}
.auth-layout{grid-template-columns:minmax(330px,.95fr) minmax(420px,1.05fr)}
.auth-art{background:radial-gradient(circle at 50% 44%,#263340 0%,#10171e 40%,#090d12 75%);border-right-color:#36414d;padding:clamp(25px,3.8vw,58px)}
.auth-statement{display:flex;align-items:flex-start;flex-direction:column}
.auth-seal{display:block;max-width:42%;height:auto;filter:drop-shadow(0 18px 25px #0008);margin:0 0 24px}
.auth-art h1{font-size:clamp(40px,4.1vw,65px);margin:8px 0 12px}
.auth-panel{background:linear-gradient(160deg,#0a0e12,#11171d)}
.form-card{background:#151c22;border:1px solid #35404b;border-radius:18px;padding:clamp(24px,3vw,42px);box-shadow:0 24px 50px #0005}
.form-card h2{font-size:32px;margin:7px 0}
.form-group input{background:#0a0f14;border-color:#46505a}
.form-group input:focus{box-shadow:0 0 0 3px #d2dae229}
.dashboard{grid-template-columns:272px minmax(0,1fr)}
.sidebar{background:linear-gradient(#111820,#0d1116);border-right:1px solid #35404b;padding:28px 15px 20px}
.sidebar .brand{padding:3px 8px 15px;border-bottom:1px solid #303941}
.nav-label{color:#8492a0}.nav-item{color:#bac5d0}.nav-item:hover{background:#28323c}
.nav-item.active{background:#2a3641;color:#fff;border-color:#50606f;box-shadow:inset 3px 0 #dce4eb}
.nav-icon{font-size:18px;color:#d8e1e9}
.dash-header{border-bottom-color:#303a44}
.welcome{position:relative;border:1px solid #37424c;background:linear-gradient(120deg,#202b35,#121920);padding:30px 28px;border-radius:16px;overflow:hidden}
.welcome h2{font-size:clamp(34px,3.3vw,48px)}
.welcome p{position:relative;max-width:650px}
.welcome-seal{position:absolute;right:24px;top:50%;transform:translateY(-50%);opacity:.23;width:170px;height:170px}
.command-overline{font-size:10px;letter-spacing:.14em;color:#a7b5c3;font-weight:800;margin-bottom:15px}
.section-heading h3{font-size:18px}
.stat{background:linear-gradient(155deg,#202832,#13191f);border-color:#3a444e}
.stat-value{font-size:18px;letter-spacing:-.015em}
.stat-footer{color:#bdcbd8}
.module-card{background:#1a222a;border-color:#39434c}
.module-card:hover{border-color:#c4ced7}.module-card .mini-icon,.empty-symbol{color:#d2dae2}
.panel{background:var(--panel);border-color:#3b444e}.empty{background:#141c24;border-color:#465461}
.chip{background:#28323b;border-color:#52606c;color:#dce4ea}
.notice{background:#29251f;border-color:#756346;color:#ecd8ac}
.user-chip{background:#242c34;border-color:#4c5661}
.mobile-head{background:#141b22}
.officer-shell{max-width:1050px}.officer-watermark{float:right;opacity:.85;margin:22px 0 0 20px}
.officer-top{border-color:#36414d}.officer-panels .panel{background:linear-gradient(145deg,#222b35,#151c23)}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:22px}.hero-right{padding-top:5px}.hero-seal{width:min(54%,300px);margin-bottom:-38px}.mock-window{max-width:700px}}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr}.auth-art{min-height:250px}.auth-statement{margin-top:20px}.auth-seal{max-width:28%;width:104px;margin-bottom:14px}.auth-art h1{font-size:35px}.dashboard{display:block}.welcome-seal{width:115px;height:115px;opacity:.12}.sidebar.mobile-menu{display:flex;position:fixed;z-index:20;inset:0;width:min(85%,320px);height:100vh;background:#111920;overflow-y:auto}.mobile-head{display:flex}.hero h1{font-size:clamp(42px,10vw,68px)}}
@media(max-width:480px){.topbar .brand-title{font-size:11px}.topbar .brand-logo{width:40px;height:40px}.topbar-right .muted{display:none}.hero-seal{width:min(70%,270px)}.mock-window{padding:48px 13px 13px}.welcome{padding:22px 18px}.form-card{padding:24px 20px}.auth-art{min-height:240px}.auth-seal{width:100px}}

/* v2: location-based workflow pages */
@media(max-width:780px){.officer-panels{grid-template-columns:1fr}.module-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.module-cards{grid-template-columns:1fr}}
