:root{color-scheme:dark;--bg:#07111f;--bg-soft:#0b1730;--bg-elevated:rgba(9,18,32,0.82);--panel:rgba(10,21,38,0.88);--panel-strong:rgba(6,14,26,0.94);--line:rgba(148,163,184,0.18);--line-strong:rgba(148,163,184,0.28);--text:#edf4ff;--muted:#8ea3bf;--muted-strong:#b5c5da;--accent:#ffb84d;--accent-strong:#f58a38;--live:#41d6b5;--stale:#f5c96a;--offline:#72819c;--danger:#ff8a7a;--shadow:0 24px 90px rgba(0,0,0,0.42);--radius-xl:1.6rem;--radius-lg:1.15rem;--radius-md:0.9rem}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:radial-gradient(circle at top left,rgba(44,115,255,.18),transparent 26rem),radial-gradient(circle at top right,rgba(255,184,77,.16),transparent 20rem),linear-gradient(160deg,#060d19,#081325 42%,#0b1730);color:var(--text);font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif}a{color:inherit}button,input,select{font:inherit}button{border:0;cursor:pointer}.detailLabel,.eyebrow,.field,.statCard span,.statusBadge,.statusText,.utilityLabel{font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.eyebrow{color:var(--accent);margin:0 0 .55rem}.field{color:var(--muted);display:grid;grid-gap:.52rem;gap:.52rem}.field input,.field select,.loginForm input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(11,22,41,.94);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--text);min-height:3.35rem;padding:.9rem 1rem;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.field input:focus,.field select:focus,.loginForm input:focus{border-color:rgba(65,214,181,.55);box-shadow:0 0 0 3px rgba(65,214,181,.12);outline:none}.opsShell{min-height:100vh}.opsShell,.opsTopbar{display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.opsTopbar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(180deg,rgba(10,21,38,.94),rgba(9,18,32,.84));border:1px solid var(--line);border-radius:calc(var(--radius-xl) + .2rem);box-shadow:var(--shadow);grid-template-columns:minmax(16rem,.9fr) minmax(28rem,1.5fr) minmax(24rem,1.2fr);position:relative;z-index:3}.brandBlock,.commandCluster,.intelCard,.loginBeacon,.loginForm,.loginPanel,.loginSceneFrame,.panelError,.summaryCluster{border:1px solid var(--line);border-radius:var(--radius-xl)}.brandBlock,.intelCard,.loginBeacon,.loginPanel,.loginSceneFrame,.summaryCluster{background:rgba(7,16,29,.58)}.brandBlock{display:grid;grid-gap:.4rem;gap:.4rem;padding:1rem 1.1rem}.brandHeading h1,.loginPanel h1{font-family:Arial Nova,Avenir Next Condensed,Segoe UI,sans-serif;letter-spacing:-.06em;margin:0}.brandHeading h1{font-size:clamp(2.2rem,3vw,3.3rem);line-height:.92}.brandCopy,.fleetCopy,.loginCopy{color:var(--muted);line-height:1.65;margin:0}.commandCluster{align-items:end;background:rgba(7,16,29,.52);display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:minmax(8rem,.7fr) minmax(14rem,1.2fr) minmax(22rem,1.3fr);padding:1rem}.commandField,.deviceField select{min-width:0}.rangeCluster{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:1fr 1fr}.summaryCluster{display:grid;grid-gap:.9rem;gap:.9rem;padding:1rem}.statsRow{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.statCard{background:rgba(13,27,48,.86);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;grid-gap:.3rem;gap:.3rem;padding:.9rem .95rem}.statCard span{color:var(--muted)}.statCard strong{font-family:Arial Nova,Avenir Next Condensed,Segoe UI,sans-serif;font-size:1.55rem;letter-spacing:-.05em}.statCard.online strong{color:var(--live)}.statCard.stale strong{color:var(--stale)}.statCard.offline strong{color:var(--muted-strong)}.actionRow{align-items:center;display:flex;gap:1rem;justify-content:space-between}.utilityBlock{display:grid;grid-gap:.22rem;gap:.22rem}.utilityLabel{color:var(--muted)}.utilityBlock strong{font-size:1.05rem}.refreshStamp{color:var(--muted);font-size:.86rem}.buttonRow{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:flex-end}.ghostButton,.loginForm button,.primaryButton,.secondaryButton{border-radius:999px;font-weight:800;min-height:3.25rem;padding:0 1.15rem;transition:transform .16s ease,background .16s ease,border-color .16s ease,opacity .16s ease}.loginForm button,.primaryButton{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#1e1306}.secondaryButton{background:rgba(65,214,181,.12);border:1px solid rgba(65,214,181,.24);color:var(--text)}.ghostButton{background:transparent;border:1px solid var(--line);color:var(--muted-strong)}.ghostButton:disabled,.loginForm button:disabled,.primaryButton:disabled,.secondaryButton:disabled{cursor:wait;opacity:.6}.opsWorkspace{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1.65fr) minmax(20rem,24rem);min-height:0}.mapStage{border:1px solid var(--line);border-radius:calc(var(--radius-xl) + .2rem);box-shadow:var(--shadow);min-height:calc(100vh - 12.5rem);overflow:hidden;position:relative}.mapCanvas,.mapScrim{inset:0;position:absolute}.mapScrim{background:linear-gradient(180deg,rgba(5,10,19,.1),rgba(5,10,19,.22)),linear-gradient(90deg,rgba(7,16,29,.08),transparent 24%,transparent 76%,rgba(7,16,29,.12));pointer-events:none}.mapFocusBadge{align-items:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(7,16,29,.78);border:1px solid var(--line);border-radius:999px;display:inline-flex;gap:.8rem;left:1rem;padding:.7rem .95rem;position:absolute;top:1rem;z-index:2}.identityBlock strong,.mapFocusBadge strong,.supportingList strong,.telemetryCard strong{display:block}.mapFocusBadge span:last-child{color:var(--muted);font-size:.84rem}.statusDot{border-radius:50%;display:inline-block;height:.72rem;width:.72rem}.statusDot.online{background:var(--live);box-shadow:0 0 0 .35rem rgba(65,214,181,.14)}.statusDot.stale{background:var(--stale);box-shadow:0 0 0 .35rem rgba(245,201,106,.14)}.statusDot.offline{background:var(--offline);box-shadow:0 0 0 .35rem rgba(114,129,156,.14)}.intelCard,.intelRail{display:grid;grid-gap:1rem;gap:1rem}.intelCard{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow);padding:1rem}.intelHeader{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.fleetState h2,.intelHeader h2{font-family:Arial Nova,Avenir Next Condensed,Segoe UI,sans-serif;font-size:1.9rem;letter-spacing:-.06em;line-height:.94;margin:0}.statusText{margin:0 0 .4rem}.statusText.online{color:var(--live)}.statusText.stale{color:var(--stale)}.statusText.offline{color:var(--muted-strong)}.statusBadge{background:rgba(255,184,77,.16);border:1px solid rgba(255,184,77,.26);border-radius:999px;color:var(--accent);display:inline-flex;padding:.55rem .8rem;white-space:nowrap}.identityBlock,.supportingList{display:grid;grid-gap:.8rem;gap:.8rem}.identityBlock{grid-template-columns:1fr 1fr}.identityBlock div,.supportingList div{background:rgba(13,27,48,.8);border:1px solid var(--line);border-radius:var(--radius-lg);padding:.85rem .9rem}.detailLabel,.utilityLabel{color:var(--muted);display:block;margin-bottom:.35rem}.telemetryGrid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.telemetryCard{background:linear-gradient(180deg,rgba(14,31,55,.9),rgba(10,21,38,.92));border:1px solid var(--line);border-radius:var(--radius-lg);padding:.95rem}.telemetryCard strong{font-family:Arial Nova,Avenir Next Condensed,Segoe UI,sans-serif;font-size:1.25rem;letter-spacing:-.04em}.formError,.panelError{background:rgba(98,20,23,.3);color:#ffc6bd;margin:0;padding:.95rem 1rem}.deviceMarker{background:linear-gradient(135deg,rgba(12,33,58,.98),rgba(9,24,42,.98));border:1px solid rgba(255,255,255,.14);border-radius:1rem;box-shadow:0 18px 40px rgba(0,0,0,.34);color:var(--text);display:grid;grid-gap:.16rem;gap:.16rem;min-width:10.5rem;padding:.6rem .8rem;text-align:left;transform:translateY(-.45rem)}.deviceMarker:before{background:currentColor;border-radius:999px;content:"";display:block;height:.5rem;margin-bottom:.15rem;opacity:.9;width:2.3rem}.deviceMarker.online{color:var(--live)}.deviceMarker.stale{color:var(--stale)}.deviceMarker.offline{color:var(--offline)}.markerName{color:var(--text);font-size:.8rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.markerMeta{color:var(--muted-strong);font-size:.72rem}.loginShell{align-items:stretch;display:grid;grid-template-columns:minmax(23rem,.95fr) minmax(0,1.25fr);min-height:100vh;overflow:hidden}.loginPanel{align-content:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:grid;grid-gap:2rem;gap:2rem;margin:1rem;padding:clamp(2rem,6vw,5rem);position:relative;z-index:1}.loginPanel h1{font-size:clamp(3.3rem,7vw,6.5rem);line-height:.86;max-width:8ch}.loginPanel .eyebrow{margin-bottom:.8rem}.loginForm{background:rgba(8,17,31,.45);display:grid;grid-gap:1rem;gap:1rem;max-width:31rem;padding:1rem}.loginForm label{color:var(--muted);display:grid;grid-gap:.5rem;gap:.5rem}.loginScene{padding:1rem 1rem 1rem 0}.loginScene,.loginSceneFrame{overflow:hidden;position:relative}.loginSceneFrame{background:radial-gradient(circle at top right,rgba(255,184,77,.12),transparent 28%),radial-gradient(circle at left center,rgba(65,214,181,.12),transparent 34%),linear-gradient(160deg,rgba(6,14,26,.94),rgba(10,21,38,.88));height:100%}.loginGrid{background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 0);background-size:4rem 4rem;inset:-10%;-webkit-mask-image:radial-gradient(circle at center,black,transparent 70%);mask-image:radial-gradient(circle at center,black,transparent 70%);position:absolute;transform:rotate(-8deg)}.loginRoute{border:5px solid rgba(255,184,77,.9);border-left:0;border-radius:0 999px 999px 0;height:32%;left:16%;position:absolute;top:44%;transform:rotate(-18deg);width:56%}.loginBeacon{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;grid-gap:1rem;gap:1rem;left:14%;padding:1rem;position:absolute;right:14%;top:14%}.beaconKpis{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(3,minmax(0,1fr))}.beaconKpis div{background:rgba(13,27,48,.86);border:1px solid var(--line);border-radius:var(--radius-lg);padding:.85rem}.beaconKpis span{color:var(--muted);display:block;font-size:.74rem;margin-bottom:.3rem;text-transform:uppercase}.beaconKpis strong{font-family:Arial Nova,Avenir Next Condensed,Segoe UI,sans-serif;font-size:1.2rem}.loginPin{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(10,21,38,.9);border:1px solid var(--line-strong);border-radius:1.1rem;bottom:20%;box-shadow:var(--shadow);display:grid;grid-gap:.2rem;gap:.2rem;padding:.8rem .9rem;position:absolute;right:19%}.loginPin span{color:var(--muted);font-size:.72rem;text-transform:uppercase}.loginPin strong{font-size:.95rem}@media (max-width:1380px){.opsTopbar{grid-template-columns:1fr}.commandCluster{grid-template-columns:1fr 1.4fr}.rangeCluster{grid-column:1/-1}}@media (max-width:1180px){.opsWorkspace{grid-template-columns:1fr}.mapStage{min-height:60vh}.intelRail{grid-template-columns:1fr}}@media (max-width:980px){.commandCluster{grid-template-columns:1fr}.statsRow{grid-template-columns:repeat(2,minmax(0,1fr))}.actionRow{align-items:stretch;flex-direction:column}.buttonRow{justify-content:stretch}.buttonRow>*{flex:1 1 auto}.loginShell{grid-template-columns:1fr}.loginScene{min-height:26rem;padding:0 1rem 1rem}}@media (max-width:720px){.opsShell{padding:.7rem}.brandBlock,.commandCluster,.intelCard,.loginBeacon,.loginForm,.loginPanel,.loginSceneFrame,.opsTopbar,.summaryCluster{border-radius:1.2rem}.beaconKpis,.identityBlock,.rangeCluster,.statsRow,.telemetryGrid{grid-template-columns:1fr}.mapStage{min-height:52vh}}