/* Signal Studio: an isolated local concept with a bright geographic canvas. */
:root{--paper:#f5f7fc;--ink:#182842;--muted:#56657b;--wine:#315ecb;--wine-dark:#214bad;--blush:#eaf0fd;--line:#e2e8f2;--navy:#101e38;--coral:#c63f42;--teal:#087f79;--violet:#6650b6;scrollbar-color:#a8b6cf #f5f7fc}
body.in-workspace{color:var(--ink);background:var(--paper);--muted:#56657b}
.site-header,body.in-workspace .site-header{height:70px;padding:0 26px;background:var(--navy);color:#e8efff;gap:24px}
.site-header .brand{color:white;gap:10px;font-size:30px;letter-spacing:-.03em}.brand>img{width:44px;height:44px;object-fit:contain;border-radius:9px}.site-header .brand-suffix{color:#59d6bf}.concept-badge{font-size:11px;color:#bac9e3;margin-right:auto}.header-actions{gap:23px}.header-actions .text-button{color:#dae4f8}.header-actions .button{background:#293b59;color:#fff}.site-nav{display:none}
body.in-workspace .demo-banner,body.in-workspace:not([data-screen=incidents]) .demo-banner{top:70px;height:28px;background:#eaf0fc;color:#415478;padding:0 26px}.demo-banner>span,.demo-banner .text-button{font-size:10px}
.ops-shell{padding-top:28px}.ops-nav{top:98px;width:188px;background:var(--navy);padding:22px 12px;color:#d8e3f7;position:fixed;bottom:0}.ops-nav h2{color:#a9bbd9;margin:4px 14px 22px;font-size:11px}.ops-nav nav{gap:6px}.ops-nav nav button{color:#c3d0e7;font-size:12px;padding:13px 12px;border-radius:9px}.ops-nav nav button:hover{background:#203451;color:white}.ops-nav nav button.active{background:#304772;color:white}.ops-nav nav button>span:last-child:not([data-icon]){background:#ffcbc8;color:#82282c;font-size:10px}.ops-nav .icon{width:18px;height:18px}.ops-main{margin-left:188px;background:var(--paper)}
.signal-journey{margin:auto 14px 16px;padding-top:45px}.signal-journey h3{font-size:23px;color:#fff;font-weight:400;line-height:1.15;letter-spacing:-.025em}.signal-journey ol{list-style:none;padding:0;margin:25px 0 0}.signal-journey li{display:flex;align-items:flex-start;gap:10px;position:relative;padding-bottom:25px;font-size:11px;color:#e4edfc}.signal-journey li:not(:last-child):after{content:'';position:absolute;left:11px;top:28px;bottom:4px;width:1px;background:#455b7b}.signal-journey i{display:grid;place-items:center;font-size:10px;width:24px;height:24px;flex:none;border-radius:50%;background:#72363f;color:#ffd2cd;font-style:normal}.signal-journey li:nth-child(2) i{background:#3e3a72;color:#d6c7ff}.signal-journey li:nth-child(3) i{background:#185154;color:#8ee8d4}.signal-journey small{display:block;font-size:10px;color:#a9bbd9;margin-top:4px}.signal-journey>p{font-size:9px;color:#99aecf}
.command-stage{height:calc(100svh - 98px);min-height:620px}.command-stage .map-panel,.command-stage #ops-map{background:#e8eff8}.command-stage .leaflet-tile-pane{filter:saturate(.8);opacity:1}.command-stage .map-panel:after{background:linear-gradient(90deg,#f5f7fcfa,transparent 33%),linear-gradient(0deg,#f5f7fc,transparent 14%)}
.atlas-title{left:30px;top:35px;width:275px}.atlas-title h1{font-size:39px;line-height:1.05;letter-spacing:-.035em;color:#182842;font-weight:600}.atlas-title p{margin-top:13px;font-size:12px;color:#56657b}
.atlas-entry{left:30px;top:158px;gap:7px}.atlas-entry .atlas-alert-toggle{background:#fff;color:#243b62;box-shadow:0 8px 26px #283e6b12;border-radius:9px;padding:11px 16px;font-size:12px}.atlas-alert-toggle strong{background:#fde6e5;color:#ab3139}.next-alert{color:#315ecb;font-size:11px}
body[data-screen=incidents] .ops-header{right:24px;top:117px}.command-actions{align-items:center;gap:18px}.command-actions>.text-button{color:#415478}.ops-header .button{background:#315ecb;color:#fff;padding:11px 17px}.ops-header .button:hover{background:#214bad}
.recent-signals{position:absolute;left:30px;top:265px;width:255px;z-index:440}.recent-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.recent-heading h2{font-size:13px;letter-spacing:0;color:#233958}.recent-heading>span{font-size:9px;color:#63728a}.signal-row{display:flex;width:100%;align-items:center;gap:11px;text-align:left;background:#ffffffed;border-radius:10px;padding:13px 12px;margin-bottom:7px;box-shadow:0 5px 20px #22345e07;transition:background-color 160ms,transform 160ms}.signal-row:hover{background:#fff;transform:translateX(3px)}.signal-row strong{font-size:13px;display:block;color:#243550}.signal-row small{font-size:10px;display:block;margin-top:4px;color:#596880}.signal-row>.icon{width:15px;margin-left:auto;color:#526b99}.signal-orb{color:#c63f42;background:#fdeceb;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;flex:none}.signal-orb .icon{width:19px;height:19px}.responding .signal-orb{color:#087f79;background:#dff6ef}
.map-marker{background:#d64c52;border:3px solid #fff;box-shadow:0 4px 13px #bb41433a;width:28px;height:28px}.map-marker.responding{background:#138984;box-shadow:0 4px 12px #087f792b}.map-marker.resolved{background:#697ca8;box-shadow:none}.map-marker span{font-size:10px}.is-selected .map-marker{outline-color:#6550b6}.command-tooltip{color:#233958!important}.map-tools{right:24px;bottom:123px;box-shadow:0 7px 28px #14284c16}.map-tools button{color:#425b8c}.map-tools button:hover{background:#eaf0fd}.map-tools #map-overview{border-color:#e2e8f2}.atlas-legend{left:auto;right:24px;bottom:98px;gap:13px;color:#4c5f7d;font-size:10px}.red{background:#d64c52}.amber{background:#138984}.green{background:#697ca8}.feed-message{left:30px;bottom:119px;font-size:11px;color:#334d75}.feed-message small{color:#56657b;font-size:10px;margin-top:7px}.feed-dot{width:7px;height:7px;background:#087f79;display:inline-block;border-radius:50%;margin-right:7px}
.command-stage .ops-stats{background:var(--navy);padding:16px 30px;gap:35px!important;min-height:82px}.ops-stats>button:hover{background:#203451}.ops-stats span{color:#c3d0e7;font-size:11px}.ops-stats b{font-size:30px;font-variant-numeric:tabular-nums}.ops-stats>button:nth-child(1) b{color:#ff918c}.ops-stats>button:nth-child(2) b{color:#65dbc3}.ops-stats>button:nth-child(3) b{color:#b6a9ef}.ops-stats>a{color:#d4def1;font-size:11px}.leaflet-control-attribution{margin-bottom:83px!important;color:#415478!important;background:#f5f7fcf2!important}.leaflet-control-attribution a{color:#415478!important}
.signal-notice{position:absolute;top:91px;left:50%;transform:translateX(-15%);width:345px;z-index:540;background:#fff;border-radius:14px;padding:18px;display:flex;align-items:center;gap:13px;box-shadow:0 12px 45px #273a6533}.notice-orb{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:#ffe8e6;color:#c63f42}.notice-orb .icon{width:26px;height:26px}.notice-open{padding:0;text-align:left;flex:1}.notice-open>span:first-child{color:#aa343b;font-size:11px;font-weight:600}.notice-open strong{display:block;color:#182842;font-size:20px;margin-top:3px}.notice-open strong small{font-weight:400;font-size:11px;display:block;color:#56657b;margin-top:3px}.notice-link{display:flex;gap:8px;align-items:center;color:#315ecb;font-size:11px;margin-top:11px}.notice-link .icon{width:16px;height:16px}.notice-dismiss{align-self:flex-start;width:28px;height:28px;padding:5px;color:#63728a;border-radius:6px}.notice-dismiss:hover{background:#eaf0fd}.notice-dismiss .icon{width:18px;height:18px}.signal-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.arriving .notice-orb{animation:notice-beat 2s ease-out 3}.alarm-wave{position:relative;width:30px;height:30px;pointer-events:none}.alarm-wave i{position:absolute;inset:-2px;border:2px solid #d64c52;border-radius:50%;animation:signal-wave 2s cubic-bezier(.16,1,.3,1) 3}.alarm-wave i:nth-child(2){animation-delay:.3s}.alarm-wave i:nth-child(3){animation-delay:.6s}.alarm-wave b{display:block;position:absolute;inset:4px;border-radius:50%;background:#e04e51;border:3px solid #fff}
@keyframes signal-wave{0%{transform:scale(1);opacity:.8}100%{transform:scale(9);opacity:0}}@keyframes notice-beat{0%,100%{transform:scale(1)}35%{transform:scale(1.1)}}
.command-stage .queue{top:246px;left:30px;bottom:91px;width:310px;box-shadow:0 14px 50px #223b6526}.show-queue .recent-signals{display:none}.queue-tools{background:white}.queue-title h2{color:#233958}.search-field{background:#f0f3fa}.filters button.active{background:#eaf0fd;color:#315ecb}.incident-item.selected{background:#edf2fc}.incident-item strong,.detail-heading h2{color:#182842}.incident-item p,.incident-item-top,.incident-item-bottom,.incident-item strong small,#queue-count{color:#56657b}
.command-stage .detail-body{top:76px;bottom:92px;right:82px;width:365px;padding:22px;box-shadow:0 14px 55px #20355f33}.atlas-close{top:83px;right:90px;background:#edf1f9;color:#425478}.detail-heading p,.incident-snapshot,.response-steps>span,.incident-primary>small,.location-block>small,.location-block>p,.response-owner span{color:#56657b}.response-steps{border-color:#e2e8f2}.response-steps .complete i{background:#087f79;border-color:#087f79}.help-user{background:#c63f42;color:white;border-radius:9px}.help-user:hover{background:#a82d35}.directions-button{background:#6550b6;border-radius:9px}.directions-button:hover{background:#51409a}.location-coordinate button,.location-fresh,.response-owner{color:#087f79}.location-warning{background:#fff5e3;color:#715313}.pill.alert{background:#fde6e5;color:#a33339}.pill.progress{background:#def4ee;color:#12695f}.pill.safe{background:#e9edf7;color:#4d618c}.button.secondary{background:#eaf0fd;color:#315ecb}.button.secondary:hover{background:#dce6fc}.read-only{color:#56657b}
.ops-header,.analytics,.shop-view{background:#f5f7fc}.ops-header h1,.chart-section h2,.table-heading h2,.shop-heading h1{color:#182842}.analytics-filters label,.analytics-filters>span,.kpi span,.chart-section>p,.chart-row,.outcome-legend p,.daily-chart>div,.shop-product p,.shop-footer,.shop-product figcaption{color:#56657b}.analytics-filters select{color:#233958}.chart-track{background:#edf1fb}.chart-track i,.daily-chart i{background:#718bea}.chart-row:nth-child(3n) .chart-track i{background:#2eaaa0}.chart-row:nth-child(3n+1) .chart-track i{background:#a18cda}.kpi.red{color:#c63f42}.kpi.amber{color:#087f79}.kpi.green{color:#6550b6}.kpi.blue{color:#315ecb}.kpi.purple{color:#6550b6}.chart-section{box-shadow:0 5px 20px #22345e06}.table-scroll th{background:#edf1f9}.table-scroll td,.activity-entry{border-color:#e2e8f2}.table-panel{color:#233958}.shop-options button[aria-pressed=true]{background:#315ecb}
:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #537ef0;outline-offset:3px}::selection{background:#d8e3ff;color:#182842}input,textarea{caret-color:#315ecb}.toast{background:#101e38;color:#edf3ff}.motion-paused .alarm-wave i,.motion-paused .notice-orb{animation-play-state:paused}
@media(max-height:780px) and (min-width:761px){.signal-journey{padding-top:25px;margin-bottom:0}.signal-journey h3{font-size:20px}.signal-journey li{padding-bottom:19px}.recent-signals{top:253px}.signal-row{padding:10px 12px}}
@media(max-width:1100px) and (min-width:761px){.ops-nav{width:168px}.ops-main{margin-left:168px}.atlas-title{left:24px;width:220px}.atlas-title h1{font-size:33px}.atlas-entry,.recent-signals,.feed-message{left:24px}.recent-signals{width:230px}.signal-notice{left:auto;right:25px;transform:none;top:80px;width:310px}.command-stage.show-detail .recent-signals{display:none}.command-stage .ops-stats{gap:20px!important;padding-inline:24px}}
@media(max-width:760px){.site-header,body.in-workspace .site-header{height:62px;padding:0 15px;gap:12px}.site-header .brand{font-size:26px;gap:7px}.brand>img{width:36px;height:36px}.concept-badge{display:none}.header-actions{gap:13px}.header-actions .text-button{font-size:10px}.header-actions .button.small{font-size:10px;min-height:34px;padding:9px 11px}body.in-workspace .demo-banner,body.in-workspace:not([data-screen=incidents]) .demo-banner{top:62px;height:28px;padding:0 15px}.demo-banner>span,.demo-banner .text-button{font-size:9px}.ops-nav{position:relative;inset:auto;width:100%;padding:7px 10px}.ops-nav nav{gap:5px}.ops-nav nav button{font-size:10px;padding:11px 12px}.ops-nav .icon{width:16px;height:16px}.signal-journey{display:none}.ops-main{margin-left:0}.command-stage{height:calc(100svh - 145px);min-height:680px}.atlas-title{top:64px;left:18px;width:235px}.atlas-title h1{font-size:29px}.atlas-title p{display:none}.atlas-entry{top:143px;left:18px;gap:14px}.atlas-entry .atlas-alert-toggle{font-size:11px;min-height:40px}.next-alert{font-size:10px}body[data-screen=incidents] .ops-header{top:157px;right:15px}body[data-screen=incidents] .ops-header .button{font-size:10px;padding:9px 12px}.recent-signals{left:18px;top:auto;bottom:152px;width:205px}.recent-signals .signal-row:not(:first-child){display:none}.recent-heading h2{font-size:11px}.recent-heading>span{font-size:8px}.signal-row{padding:10px}.signal-row strong{font-size:12px}.signal-row small{font-size:9px}.map-tools{right:15px;bottom:134px}.atlas-legend{right:auto;left:18px;bottom:112px;font-size:9px}.command-stage .ops-stats{padding:14px 15px;min-height:86px;gap:10px!important}.ops-stats b{font-size:26px}.ops-stats span{font-size:9px}.ops-stats>a{font-size:9px}.leaflet-control-attribution{margin-bottom:87px!important;font-size:8px!important}.command-stage .map-panel:after{background:linear-gradient(180deg,#f5f7fcfa,transparent 28%),linear-gradient(0deg,#f5f7fc,transparent 24%)}.signal-notice{top:196px;left:15px;right:15px;width:auto;transform:none;padding:15px;gap:12px}.notice-open strong{font-size:19px}.notice-orb{width:42px;height:42px}.notice-open>span:first-child{font-size:10px}.notice-open strong small{font-size:10px}.show-detail .recent-signals,.show-detail .signal-notice,.show-queue .recent-signals{display:none}.command-stage .detail-body{left:12px;right:12px;top:54px;bottom:97px;width:auto;padding:22px}.atlas-close{top:61px;right:19px}.command-stage .queue{top:193px;left:15px;right:70px;width:auto;bottom:98px}.feed-message{display:none}.ops-header{padding:25px 18px}.analytics{padding:10px 18px 35px}.kpi-grid{gap:24px 12px}.chart-section{padding:20px}}
@media(max-width:760px){body[data-screen=incidents] .command-actions>.text-button{display:block;font-size:10px;padding:10px 4px}.command-actions{gap:12px}}
@media(prefers-reduced-motion:reduce){.alarm-wave i,.arriving .notice-orb{animation:none}.signal-row{transition:none}.signal-row:hover{transform:none}.alarm-wave i{display:none}}
