/* Small v3 branding/map patch. Exact source pixels are clipped, never redrawn. */
:root{--bg:#050a0b;--panel:#0c1618;--raised:#142426;--line:#294448;--muted:#93b9bd;--text:#e0f6f6;--teal:#90f0f0}
body{background:var(--bg)}
.sidebar,.topbar{background:#070e10}
.brand{justify-content:center;padding:0}
.arc-logo{position:relative;display:block;width:184px;max-width:100%;aspect-ratio:630/524;overflow:hidden;background:#000;clip-path:polygon(0 0,100% 0,100% 100%,24% 100%,24% 93%,0 93%)}
.arc-logo>img{position:absolute;display:block!important;width:243.8095238%!important;max-width:none!important;height:auto!important;left:-69.8412698%;top:-1.5267176%;margin:0!important}
.login-card .arc-logo{width:260px;margin:0 auto 20px}
.nav-item.active{background:#163335;border-color:#31585b;color:#a0f0f0;box-shadow:inset 2px 0 #90f0f0}
.primary{background:#90f0f0;border-color:#90f0f0;color:#082426}
.primary:hover{background:#b5ffff;color:#082426}
.teal{color:#a0f0f0;background:#143033;border-color:#315b60}
input:focus,select:focus{outline-color:#90f0f0}
.dot{background:#90f0f0;box-shadow:0 0 0 3px #90f0f016}
.text-button,.eyebrow{color:#90f0f0}
.map-panel .panel-heading{padding:12px 16px;gap:10px}
.map-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.map-tools button,.map-tools select{height:32px;min-height:32px;border-radius:2px;padding:4px 9px;border:1px solid #567075;background:#0b1316;color:#e4f0f0;font-size:11px;font-weight:650}
.map-tools #zoom-in,.map-tools #zoom-out{width:32px;padding:0;font:700 20px/30px ui-monospace,monospace}
.map-tools button:hover{background:#243b3e;border-color:#b4d6d5}
.map-tools button:focus-visible,.map-tools select:focus-visible{outline:2px solid white;outline-offset:2px}
.map-canvas{border-top:1px solid #40585b;border-bottom:1px solid #40585b}
.map-north{position:absolute;z-index:800;top:12px;left:12px;width:28px;padding:5px 0;text-align:center;background:#071012e8;border:1px solid #698487;color:#efffff;font:700 11px/13px ui-monospace,monospace;pointer-events:none}
.map-north span{display:block;font-size:15px;line-height:16px}
.geo-pin{border:0!important;box-shadow:none!important}
.geo-pin .geo-symbol{border:2px solid #e9ffff;box-shadow:0 0 0 2px #051014,0 2px 7px #000c;color:#041015;font:800 12px/22px ui-monospace,monospace;text-align:center;text-shadow:none}
.geo-pin.phone .geo-symbol{border-radius:3px;border:3px double #e9ffff;box-shadow:0 0 0 3px #071419,0 0 0 4px #91e8db55;line-height:20px}
.geo-pin.expired{opacity:.45}
.geo-pin:focus-visible{outline:3px solid white;outline-offset:5px}
.leaflet-control-scale-line{background:#081316e8;color:#edffff;border-color:#c4dbdd;text-shadow:none;font-family:ui-monospace,monospace;font-size:10px}
.map-panel .legend{padding-top:10px;padding-bottom:7px;gap:12px}
.map-panel .legend-dot.phone{border-radius:1px;width:8px;height:8px;outline:1px solid #d7eeec;outline-offset:1px}
.signal-bands{margin:12px 16px 16px;border-top:1px solid var(--line);padding-top:10px;font-size:11px}
.signal-bands summary{cursor:pointer;color:var(--teal);font-weight:650}
.signal-bands p{color:var(--muted);margin:8px 0}
.signal-group{padding:10px 0;border-top:1px solid var(--line)}
.signal-group h3{font-size:11px;margin:3px 0 8px}
.signal-row{display:flex;justify-content:space-between;gap:10px;width:100%;text-align:left;white-space:normal;margin:5px 0;padding:7px 9px;font-size:10px;border-radius:3px}
.signal-row small{display:block;color:var(--muted)}
.signal-row strong{white-space:nowrap;align-self:center;color:var(--teal)}
.geo-pin.receipt-aging .geo-symbol{filter:brightness(.85)}
.geo-pin.receipt-old .geo-symbol{filter:brightness(.65)}
.geo-pin.received-update .geo-symbol{animation:received-pulse 900ms ease-out 1}
.signal-row.signal-updated{animation:signal-highlight 900ms ease-out 1}
@keyframes received-pulse{0%{box-shadow:0 0 0 2px #90f0f0,0 0 0 3px #90f0f099}100%{box-shadow:0 0 0 2px #051014,0 0 0 16px #90f0f000}}
@keyframes signal-highlight{0%{background:#285b60;border-color:#90f0f0}100%{background:var(--raised);border-color:var(--line)}}
@media(prefers-reduced-motion:reduce){.geo-pin.received-update .geo-symbol,.signal-row.signal-updated{animation:none}}
@media(max-width:680px){.map-panel .panel-heading{flex-wrap:wrap}.map-tools{max-width:none}.map-tools button,.map-tools select{height:36px;min-height:36px}.map-tools #zoom-in,.map-tools #zoom-out{width:36px}.map-north{top:9px;left:9px}}
