:root{--bps-gold:#e1c329;--bps-navy:#1e2d3a;--bps-ink:#203c48}
.brand b{letter-spacing:3px;font-size:27px}.brand small{letter-spacing:2px}.primary{background:var(--bps-gold);border-color:var(--bps-gold)}
.fleet-grid{display:block}.mapbox{position:relative;top:auto;margin-bottom:26px;min-height:0;border-top:3px solid var(--bps-gold)}.asset-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.asset{padding:12px 16px 14px;transition:box-shadow .25s,border-color .25s}.asset:hover{box-shadow:0 6px 24px #1e2d3a10;border-color:#b4a351}
.quick-metrics.asset-six{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0}.asset-six>.remaining{grid-column:auto!important}.quick.identity{background:var(--bps-navy);border-color:var(--bps-navy);border-top-color:var(--bps-gold);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.quick.identity>small{color:#b8c6ca;min-height:0;font-size:9px;letter-spacing:.8px}.quick.identity .asset-open{color:#fff;margin-top:8px}.quick.identity h3{font-size:23px;letter-spacing:-.5px}.quick.identity .unit-job{font-size:12px;line-height:1.3;color:#e0dcbf;margin:7px 0}.identity-status{display:flex;flex-wrap:wrap;gap:5px}.identity-status .badge,.identity-status .mobility{font-size:8px;padding:4px 5px}.compact .quick{min-height:138px}.compact .quick b{font-size:25px}.quick.remaining{border-top-color:#b09834}.quick.target{background:#284451;border-color:#284451}.quick small{font-weight:600}.asset-six .quick.target{background:white;border-color:#dbe5e8;border-top-color:#ae9b44}.asset-six .quick.target b{color:var(--bps-ink)}.asset-six .quick.target span,.asset-six .quick.target small,.asset-six .quick.target .metric-note{color:#617581}
.flow-track{height:20px;position:relative;overflow:hidden;margin-top:7px;border-radius:4px;background:linear-gradient(90deg,#ebf1f3,#e0edef,#ebf1f3)}.flow-track i{position:absolute;top:6px;left:-12%;width:9px;height:9px;border-top:2px solid #b99c29;border-right:2px solid #b99c29;transform:rotate(45deg);opacity:0}.flow-track.is-flowing i{animation:bercoFlow 2.7s linear infinite}.flow-track i:nth-child(2){animation-delay:.9s}.flow-track i:nth-child(3){animation-delay:1.8s}@keyframes bercoFlow{0%{left:-10%;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:110%;opacity:0}}
.dose-visual rect,.tank-visual rect{transition:width .8s ease,height .8s ease,y .8s ease}.tank-visual rect:nth-child(2){fill:#bfa727}.process-gas-path{stroke-dasharray:20 4}.gas-moving .process-gas-path{animation:processFlow 2s linear infinite}.process-odorant-path{stroke:#bfa32c;stroke-dasharray:12 4}.odorant-moving .process-odorant-path{animation:processFlow 2.5s linear infinite}@keyframes processFlow{to{stroke-dashoffset:-48}}
#map{position:relative;background:radial-gradient(ellipse at 50% 45%,#fff,#e9eff2);overflow:hidden;border-radius:0 0 12px 12px}.map-actions{position:absolute;top:15px;right:20px;display:flex;gap:6px;align-items:center;z-index:2}.map-actions button{box-shadow:0 2px 7px #1e2d3a12;font-size:12px}.map-actions span{padding:7px;color:#607584;font-size:11px}.mapbox #fleet-map-svg{height:535px;min-height:340px;width:100%;cursor:grab;touch-action:none;display:block}.mapbox #fleet-map-svg.dragging{cursor:grabbing}.map-marker{cursor:pointer}.map-marker .pin-label{font-size:inherit;stroke-width:1px}.map-marker text{pointer-events:none}.map-halo{opacity:.28}.map-alarm .map-halo{animation:mapAlarm 2.8s ease-in-out infinite}@keyframes mapAlarm{50%{opacity:.8}}.map-selection-title{display:flex;align-items:center;justify-content:space-between}.map-selection-title h3{margin:0}.map-selection-cards{display:grid;gap:12px}.map-selection-cards .asset{background:white}#map-selection:not(:empty){position:absolute;right:18px;bottom:20px;width:min(550px,95%);max-height:440px;overflow:auto;padding:15px;border:1px solid #b7c9cf;border-top:3px solid var(--bps-gold);border-radius:10px;background:#edf3f5;box-shadow:0 12px 36px #1e2d3a25}.map-selection-cards .quick{min-height:108px}.map-selection-cards .quick b{font-size:20px}.map-selection-cards .unit-job{font-size:11px}
.setpoint-row{display:flex;align-items:center;gap:30px;padding:20px;background:#f2f6f7;border:1px solid #d8e2e7;border-radius:10px}.setpoint-row h3{margin-top:0}.setpoint-row p{margin-bottom:0}#quick-setpoint{display:flex;align-items:end;gap:12px;flex:1}#quick-setpoint label{margin:0;flex:1}.run-setting{display:flex;gap:16px;align-items:center;margin:20px 0}.run-setting span{margin-right:auto;font-size:13px}.alarm-rule-list{display:grid;gap:12px}.alarm-rule{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr .7fr;align-items:center;gap:16px;border:1px solid #d9e3e7;border-radius:8px;padding:16px}.alarm-rule label{margin:0}.rule-enable{font-size:13px}.alarm-rule details{font-size:11px}.review-value{font-size:25px;color:var(--bps-ink)}hr{border:0;border-top:1px solid #dbe5e9;margin:28px 0}.sms-setup-note{font-size:12px}.notification-steps{display:flex;gap:15px;flex-wrap:wrap;margin:18px 0}
@media(min-width:1700px){.asset-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.setpoint-row{display:block}#quick-setpoint{flex-wrap:wrap}.alarm-rule{grid-template-columns:1fr 1fr}.rule-enable{grid-column:1/-1}.mapbox #fleet-map-svg{height:430px}}
@media(max-width:720px){.asset-list{grid-template-columns:1fr}.mapbox #fleet-map-svg{height:390px}.map-actions{top:8px;right:8px}.map-actions button{padding:7px 10px}.asset-six .quick b{font-size:22px}.map-selection-cards .quick b{font-size:17px}.compact .quick{min-height:126px}.map-selection-cards .quick{min-height:118px}.run-setting{flex-wrap:wrap}.brand b{font-size:24px}.setpoint-row{padding:15px}#quick-setpoint label{flex-basis:40%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
