
[hidden]{display:none!important}
:root{
  --navy:#0b1f33;--navy-2:#123552;--blue:#1e6aa8;--blue-2:#2d7fbd;--sky:#eaf4fb;
  --ink:#182433;--muted:#687689;--line:#dce5ed;--paper:#ffffff;--bg:#f4f7fa;
  --safe:#19754d;--safe-bg:#e9f7ef;--warn:#a45c00;--warn-bg:#fff4df;--danger:#b4232c;--danger-bg:#fdecee;
  --resolved:#586474;--resolved-bg:#eef1f4;--shadow:0 18px 45px rgba(14,35,56,.08);
  --radius:18px;--radius-sm:11px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);background:var(--bg)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#eef5fa 0,#f7f9fb 420px,#f4f7fa 100%);color:var(--ink);line-height:1.55}a{color:var(--blue);text-underline-offset:3px}button,input,select,textarea{font:inherit}button{cursor:pointer}
.site-header{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;box-shadow:0 8px 30px rgba(0,0,0,.12)}
.header-inner{max-width:1500px;margin:auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;font-weight:800;font-size:18px;letter-spacing:.04em}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:1.02rem;letter-spacing:.01em}.brand-copy span{font-size:.86rem;color:#cfe1ef}.header-actions{display:flex;align-items:center;gap:10px}.header-actions .button,.header-actions button{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff}.header-actions .button:hover,.header-actions button:hover{background:rgba(255,255,255,.18)}
.wrap{max-width:1060px;margin:34px auto;padding:0 20px 56px}.wide{max-width:1500px}.narrow{max-width:500px;margin-top:8vh}
.hero{padding:8px 2px 16px}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hero h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.03;margin:0;max-width:850px;letter-spacing:-.035em}.hero p{font-size:1.08rem;color:var(--muted);max-width:780px;margin:16px 0 0}
.emergency-banner{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;margin:8px 0 24px;border:1px solid #f1c46f;background:linear-gradient(135deg,#fff8e8,#fffdf6);border-radius:var(--radius-sm);box-shadow:0 8px 24px rgba(164,92,0,.07)}.emergency-icon{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#f5b942;color:#4a3300;font-weight:900}.emergency-banner strong{display:block;color:#6a4200}.emergency-banner p{margin:2px 0 0;color:#735d34;font-size:.93rem}
.card{background:rgba(255,255,255,.96);border:1px solid rgba(211,222,231,.9);border-radius:var(--radius);padding:26px;margin:20px 0;box-shadow:var(--shadow)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.card h1,.card h2,.card h3{margin-top:0;letter-spacing:-.02em}.card h1{font-size:1.65rem}.card h2{font-size:1.25rem}.card p.lead{color:var(--muted);margin-top:-8px}.section-title{font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;color:var(--blue);font-weight:800;margin:28px 0 8px}
.status-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 20px}.status-choice label{margin:0}.status-choice select{grid-column:1/-1}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.grid.three{grid-template-columns:repeat(3,1fr)}fieldset{border:1px solid var(--line);border-radius:14px;padding:16px 18px 6px;margin:22px 0;background:#fbfcfd}legend{padding:0 8px;font-weight:800;color:#314458;font-size:.9rem}
label{display:flex;flex-direction:column;gap:7px;margin:12px 0;font-weight:700;font-size:.9rem;color:#33465a}label small,.hint{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cbd7e1;background:#fff;color:var(--ink);border-radius:10px;padding:12px 13px;outline:none;transition:border-color .16s,box-shadow .16s,background .16s}input:focus,select:focus,textarea:focus{border-color:#69a6d2;box-shadow:0 0 0 4px rgba(45,127,189,.12)}textarea{resize:vertical;min-height:90px}.check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:600;background:var(--sky);border:1px solid #d3e9f7;padding:13px 14px;border-radius:10px}.check input{width:auto;margin-top:3px}.hp{position:absolute!important;left:-9999px!important}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--blue),var(--blue-2));color:#fff;border:0;padding:12px 18px;text-decoration:none;border-radius:10px;font-weight:800;box-shadow:0 8px 18px rgba(30,106,168,.17);transition:transform .14s,box-shadow .14s,filter .14s}button:hover,.button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(30,106,168,.23);filter:brightness(1.02)}button:active,.button:active{transform:none}.button.secondary{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}.button.danger{background:var(--danger)}.submit-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:20px}.submit-row button{padding:14px 22px}.inline{display:flex;gap:10px}.inline input{flex:1}
.result-box{margin-top:14px;min-height:0}.result-box:not(:empty){padding:13px 14px;border-radius:10px;background:var(--safe-bg);border:1px solid #bfe5cf;color:#115c3c}.error{color:var(--danger);background:var(--danger-bg);border:1px solid #f4c2c7;padding:11px 12px;border-radius:9px}.pre{white-space:pre-wrap}
.ops-topline{display:flex;justify-content:space-between;gap:16px;align-items:end;margin:0 0 18px}.ops-topline h1{margin:0;font-size:2rem}.ops-topline p{margin:4px 0 0;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px 18px;box-shadow:0 8px 24px rgba(14,35,56,.05)}.stat-card .label{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:var(--muted)}.stat-card .value{font-size:1.8rem;font-weight:850;line-height:1.2;margin-top:4px;color:var(--navy)}
.table-shell{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #e8edf1;padding:13px 14px;vertical-align:middle}th{background:#f7f9fb;color:#5c6c7d;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}tbody tr{transition:background .12s}tbody tr:hover{background:#f9fbfd}tbody tr:last-child td{border-bottom:0}.ref-link{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:800}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:850;letter-spacing:.02em;white-space:nowrap}.badge.safe{color:var(--safe);background:var(--safe-bg)}.badge.needs_assistance,.badge.high{color:var(--danger);background:var(--danger-bg)}.badge.welfare_check,.badge.medium{color:var(--warn);background:var(--warn-bg)}.badge.resolved,.badge.low{color:var(--resolved);background:var(--resolved-bg)}
.detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px}.info-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-item{padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fbfcfd}.info-item .k{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.info-item .v{margin-top:3px;font-weight:700;word-break:break-word}.note{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.note-meta{color:var(--muted);font-size:.84rem}.note p{margin-bottom:0}.stack{display:flex;flex-direction:column;gap:10px}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:30px 18px;background:radial-gradient(circle at 30% 10%,#e2f1fb,transparent 35%),linear-gradient(135deg,#eef4f8,#f7f9fb)}.login-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 24px 70px rgba(14,35,56,.12)}.login-brand{text-align:center;margin-bottom:24px}.login-brand .brand-mark{margin:0 auto 13px;color:#fff;background:linear-gradient(135deg,var(--navy),var(--blue));border:0}.login-brand h1{margin:0;font-size:1.6rem}.login-brand p{margin:6px 0 0;color:var(--muted)}.login-card button{width:100%;margin-top:8px;padding:13px}
code{font-size:1em;background:#eef3f7;padding:2px 6px;border-radius:6px}.muted{color:var(--muted)}
@media(max-width:900px){.stat-grid{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr 1fr}.status-choice{grid-template-columns:1fr}.hero h1{font-size:2.35rem}}
@media(max-width:700px){.header-inner{padding:16px}.brand-mark{width:42px;height:42px;border-radius:12px}.brand-copy strong{font-size:.94rem}.brand-copy span{font-size:.78rem}.wrap{margin-top:22px;padding:0 14px 40px}.grid,.grid.three,.info-list{grid-template-columns:1fr}.card{padding:19px;border-radius:15px}.hero{padding-top:2px}.hero h1{font-size:2rem}.hero p{font-size:1rem}.inline{flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px}.stat-card .value{font-size:1.45rem}.ops-topline{align-items:flex-start;flex-direction:column}.table-shell{overflow-x:auto}table{min-width:780px}.header-actions .user-meta{display:none}.submit-row{align-items:stretch;flex-direction:column}.submit-row button{width:100%}}
@media(max-width:430px){.stat-grid{grid-template-columns:1fr}.header-inner{gap:8px}.brand-copy span{display:none}}

.report-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:4px 0 22px}.report-type{appearance:none;text-align:left;background:rgba(255,255,255,.96);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 9px 26px rgba(14,35,56,.06);display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}.report-type:hover{transform:translateY(-2px);border-color:#a7cbe4;box-shadow:0 14px 30px rgba(14,35,56,.1);filter:none}.report-type.active{border-color:#5e9fcd;box-shadow:0 0 0 3px rgba(45,127,189,.12),0 14px 32px rgba(14,35,56,.09);background:linear-gradient(145deg,#fff,#f4faff)}.type-icon{grid-row:1/3;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--sky);color:var(--blue);font-size:1.25rem}.report-type strong{font-size:.95rem}.report-type small{color:var(--muted);line-height:1.3;font-weight:500}.badge.type-health_welfare{color:#24618d;background:#e7f3fb}.badge.type-damage{color:#963b24;background:#fff0eb}.badge.type-weather{color:#5b4b9d;background:#f0edff}.badge.new{color:#24618d;background:#e7f3fb}.badge.monitoring{color:#725c00;background:#fff8d7}.badge.routine{color:var(--resolved);background:var(--resolved-bg)}
@media(max-width:800px){.report-type-grid{grid-template-columns:1fr}}


/* Internal staff chat */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.chat-modal-open{overflow:hidden}.staff-chat-launch{position:fixed;right:24px;bottom:24px;z-index:880;display:flex;align-items:center;gap:9px;border-radius:999px;padding:13px 17px;box-shadow:0 16px 40px rgba(11,31,51,.22)}.chat-launch-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.17)}.chat-unread{min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#fff;color:var(--danger);display:grid;place-items:center;font-size:.72rem;font-weight:900}.staff-chat-backdrop{position:fixed;inset:0;z-index:890;background:rgba(7,19,31,.38);backdrop-filter:blur(2px)}.staff-chat-modal{position:fixed;z-index:900;right:24px;bottom:82px;width:min(440px,calc(100vw - 28px));height:min(650px,calc(100vh - 120px));background:#fff;border:1px solid #cfdce6;border-radius:20px;box-shadow:0 28px 80px rgba(6,25,42,.28);overflow:hidden;display:grid;grid-template-rows:auto auto 1fr auto}.staff-chat-header{padding:18px 18px 14px;background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.staff-chat-header h2{margin:1px 0 0;font-size:1.18rem}.staff-chat-kicker{font-size:.66rem;letter-spacing:.11em;font-weight:850;color:#bdd6e8}.staff-chat-close{width:34px;height:34px;padding:0;border-radius:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.17);box-shadow:none;font-size:1.35rem}.staff-chat-status{padding:8px 15px;border-bottom:1px solid var(--line);font-size:.76rem;color:var(--muted);display:flex;align-items:center;gap:7px;background:#f8fafc}.presence-dot{width:8px;height:8px;border-radius:50%;background:#2b9d68;box-shadow:0 0 0 3px rgba(43,157,104,.12)}.staff-chat-messages{overflow-y:auto;padding:16px;background:linear-gradient(180deg,#f7fafc,#fff);display:flex;flex-direction:column;gap:14px}.staff-chat-empty{text-align:center;color:var(--muted);padding:30px 12px}.staff-chat-message{max-width:88%;align-self:flex-start}.staff-chat-message.mine{align-self:flex-end}.staff-chat-message-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 4px 4px;font-size:.68rem;color:var(--muted)}.staff-chat-message-meta strong{font-size:.74rem;color:#33465a}.staff-chat-message-meta span{font-size:.61rem;padding:2px 5px;border-radius:5px;background:#edf3f7;font-weight:850}.staff-chat-message-meta time{margin-left:auto}.staff-chat-bubble{padding:10px 12px;border-radius:13px 13px 13px 4px;background:#fff;border:1px solid var(--line);box-shadow:0 5px 15px rgba(14,35,56,.05);white-space:pre-wrap;overflow-wrap:anywhere}.staff-chat-message.mine .staff-chat-bubble{background:#eaf5fc;border-color:#cce5f5;border-radius:13px 13px 4px 13px}.staff-chat-compose{padding:12px;border-top:1px solid var(--line);background:#fff;display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.staff-chat-compose textarea{margin:0;min-height:46px;max-height:130px;padding:10px 11px}.staff-chat-compose button{padding:11px 14px;min-height:46px}.staff-chat-compose button:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:600px){.staff-chat-launch{right:14px;bottom:14px}.staff-chat-modal{right:7px;bottom:72px;width:calc(100vw - 14px);height:calc(100vh - 92px);border-radius:16px}.staff-chat-message{max-width:93%}}

.staff-chat-as{margin-left:auto;font-size:.72rem;color:#52677a}.staff-chat-as strong{color:#233a50;font-weight:850}.staff-chat-message-meta strong{font-size:.79rem;font-weight:850;color:#20384f}.staff-chat-message.mine .staff-chat-message-meta strong{color:#165b84}@media(max-width:600px){.staff-chat-as{display:none}}

.urgency-badge,.opstatus-badge{display:inline-flex;align-items:center;padding:.28rem .62rem;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase}
.urgency-critical,.opstatus-unstable{background:#b42318;color:#fff}.urgency-high{background:#e56b00;color:#fff}
.urgency-moderate,.opstatus-stabilizing{background:#f4c430;color:#231f20}.urgency-low,.opstatus-stabilized{background:#238636;color:#fff}
.urgency-unassessed,.opstatus-unknown{background:#e5e7eb;color:#374151}

/* Operations panel v006 */
.case-flags,.queue-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.ops-sidebar{display:flex;flex-direction:column;gap:1rem}.control-card{position:relative}.control-card h2{margin-bottom:.25rem}.control-card textarea{resize:vertical}.mini-tag{display:inline-flex;padding:.2rem .45rem;border-radius:999px;background:#eef2f6;color:#344054;font-size:.68rem;font-weight:800;letter-spacing:.04em}.timeline{position:relative;margin-top:1rem}.timeline:before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:#dbe4ec}.timeline-item{position:relative;display:grid;grid-template-columns:18px 1fr;gap:.75rem;padding:0 0 1.15rem}.timeline-dot{width:12px;height:12px;border-radius:50%;background:#0b5cab;border:3px solid #fff;box-shadow:0 0 0 2px #cbd8e5;margin-top:.25rem;z-index:1}.timeline-meta{font-size:.78rem;color:#667085}.timeline-text{margin-top:.25rem;line-height:1.45}.critical-stat{border-color:#b42318}.critical-stat .value{color:#b42318}.row-urgency-critical td:first-child{box-shadow:inset 4px 0 0 #b42318}.row-urgency-high td:first-child{box-shadow:inset 4px 0 0 #e56b00}@media(max-width:900px){.case-flags{justify-content:flex-start}.queue-actions{width:100%}.queue-actions .button{flex:1;text-align:center}}


/* Live EOC Map */
.map-wrap{padding-bottom:2rem}.map-title-row{align-items:center}.map-live-indicator{font-weight:800;letter-spacing:.12em;font-size:.8rem;display:flex;gap:.5rem;align-items:center}.live-dot{width:.65rem;height:.65rem;border-radius:50%;background:#238636;box-shadow:0 0 0 .3rem rgba(35,134,54,.14)}
.map-toolbar{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:flex-start;padding:1rem 1.1rem;margin-bottom:1rem}.map-filter-group{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center}.map-filter-group strong{width:100%;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#5b6875}.map-filter-group label,.map-filter-group span{font-size:.82rem;display:inline-flex;align-items:center;gap:.34rem}.map-controls{margin-left:auto}
.map-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,1fr);gap:1rem}.map-card{padding:0;overflow:hidden}.map-side{padding:0;max-height:72vh;overflow:hidden}.map-side .card-header{padding:1rem 1rem .6rem}.map-report-list{max-height:62vh;overflow:auto;border-top:1px solid #e5e7eb}.map-list-item{width:100%;border:0;border-bottom:1px solid #edf0f2;background:#fff;color:#162535;padding:.75rem .85rem;display:flex;justify-content:space-between;align-items:center;text-align:left;cursor:pointer}.map-list-item:hover{background:#f6f8fa}.map-list-item strong{display:block}.map-list-item small{display:block;color:#687786;margin-top:.18rem}.empty-map-list{padding:1rem;color:#687786}
#eocMap{height:72vh;min-height:520px;background:#dfe7ec}.eoc-div-icon{background:transparent!important;border:0!important}.eoc-marker-ring{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:4px solid var(--op);background:rgba(255,255,255,.93);box-shadow:0 2px 7px rgba(0,0,0,.3)}.eoc-marker{display:block;width:19px;height:19px;background:var(--urg)}.map-marker-circle{border-radius:50%}.map-marker-square{border-radius:2px}.map-marker-triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}
.shape-key{width:13px;height:13px;background:#687786;display:inline-block}.circle-key{border-radius:50%}.square-key{border-radius:1px}.triangle-key{clip-path:polygon(50% 0,100% 100%,0 100%)}.legend-swatch{width:12px;height:12px;border-radius:2px;display:inline-block}.legend-ring{width:14px;height:14px;border-radius:50%;display:inline-block;border:3px solid}.ring-unstable{border-color:#b42318}.ring-stabilizing{border-color:#f4c430}.ring-stabilized{border-color:#238636}.ring-unknown{border-color:#9ca3af}.urgency-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.urgency-dot.urgency-critical,.legend-swatch.urgency-critical{background:#b42318}.urgency-dot.urgency-high,.legend-swatch.urgency-high{background:#e56b00}.urgency-dot.urgency-moderate,.legend-swatch.urgency-moderate{background:#f4c430}.urgency-dot.urgency-low,.legend-swatch.urgency-low{background:#238636}.urgency-dot.urgency-unassessed,.legend-swatch.urgency-unassessed{background:#9ca3af}
.map-popup-ref{font-size:.72rem;letter-spacing:.06em;font-weight:800;color:#607080}.map-popup h3{margin:.2rem 0 .5rem}.map-popup-badges{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.55rem}.map-popup p{margin:.5rem 0;font-size:.86rem;line-height:1.4}.map-open-case{display:inline-flex!important;color:#fff!important;text-decoration:none!important;margin-top:.25rem}.leaflet-popup-content-wrapper{border-radius:12px}.marker-cluster div{font-weight:800}
@media(max-width:900px){.map-layout{grid-template-columns:1fr}.map-side{max-height:360px}.map-report-list{max-height:280px}#eocMap{height:62vh;min-height:430px}.map-controls{margin-left:0}.map-toolbar{gap:1rem}}


/* Damage photo evidence */
.photo-preview-grid,.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:12px}
.photo-preview-item,.evidence-card{overflow:hidden;border:1px solid #d8e0e8;border-radius:12px;background:#fff}
.photo-preview-item img,.evidence-card img{display:block;width:100%;height:140px;object-fit:cover;background:#eef2f6}
.photo-preview-item small{display:block;padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.evidence-card{margin:0}.evidence-card a{display:block}.evidence-card figcaption{display:flex;flex-direction:column;gap:3px;padding:10px;font-size:.8rem}.evidence-card figcaption strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evidence-card figcaption span,.evidence-card figcaption code{color:#667085;font-size:.72rem}

/* Incident / activation management */
.incident-filter-bar{margin-bottom:1rem;padding:1rem 1.2rem}.incident-filter-bar form{max-width:720px}.incident-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:1rem}.incident-card{border-left:5px solid #7b8794}.incident-card.incident-status-active{border-left-color:#b42318}.incident-card.incident-status-monitoring{border-left-color:#d99b00}.incident-card.incident-status-recovery{border-left-color:#2563a6}.incident-card.incident-status-closed{border-left-color:#667085;opacity:.88}.incident-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.incident-card h2{margin:.25rem 0}.incident-card h2 a{text-decoration:none;color:inherit}.incident-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;font-weight:800;letter-spacing:.05em;color:#52606d}.incident-status-badge{display:inline-flex;padding:.28rem .58rem;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.05em}.incident-status-badge.active{background:#b42318;color:#fff}.incident-status-badge.monitoring{background:#f4c430;color:#231f20}.incident-status-badge.recovery{background:#2563a6;color:#fff}.incident-status-badge.closed{background:#667085;color:#fff}.incident-meta{display:flex;flex-wrap:wrap;gap:.45rem 1rem;color:#667085;font-size:.8rem;margin:.8rem 0}.incident-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin:1rem 0}.incident-stats div{background:#f7f9fb;border:1px solid #e3e8ef;border-radius:12px;padding:.7rem;text-align:center}.incident-stats strong{display:block;font-size:1.4rem}.incident-stats span{font-size:.72rem;color:#667085}.incident-stats .critical strong{color:#b42318}.incident-actions{display:flex;flex-wrap:wrap;gap:.5rem}.incident-create-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.incident-create-grid .span-2{grid-column:span 3}.incident-mini{display:flex;flex-direction:column;font-weight:800;text-decoration:none}.incident-mini small{font-weight:500;color:#667085;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted{color:#98a2b3}.control-current{font-size:.82rem;margin:.8rem 0 0}.ops-two-col{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1rem;align-items:start}@media(max-width:900px){.incident-create-grid{grid-template-columns:1fr 1fr}.incident-create-grid .span-2{grid-column:1/-1}.ops-two-col{grid-template-columns:1fr}}@media(max-width:600px){.incident-create-grid{grid-template-columns:1fr}.incident-create-grid .span-2{grid-column:auto}.incident-stats{grid-template-columns:1fr 1fr}}

/* EOC Situation Dashboard */
.situation-page{background:#eef3f7}.situation-wrap{padding-bottom:3rem}.situation-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:1rem 0}.situation-kpi{background:#fff;border:1px solid #d8e1e8;border-radius:14px;padding:1rem 1.1rem;box-shadow:0 5px 18px rgba(14,35,56,.06)}.situation-kpi span{display:block;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#5c6b77}.situation-kpi strong{display:block;font-size:2rem;line-height:1.05;margin:.25rem 0;color:#10283d}.situation-kpi small{color:#667784}.kpi-critical{border-top:5px solid #b42318}.kpi-critical strong{color:#b42318}.kpi-high{border-top:5px solid #e56b00}.kpi-high strong{color:#b94f00}.situation-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem;align-items:start}.situation-priority,.situation-map-card{min-height:390px}.situation-map-card #situationMap{height:330px;border-radius:0 0 12px 12px}.situation-list{display:flex;flex-direction:column}.situation-row,.latest-row,.incident-situation-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border-top:1px solid #e7edf1;text-decoration:none;color:inherit}.situation-row:hover,.latest-row:hover,.incident-situation-row:hover{background:#f7fafc}.situation-row small,.latest-row small,.incident-situation-row small{display:block;margin-top:.25rem;color:#687985}.situation-row-right,.latest-row>div:last-child{text-align:right}.incident-situation-row>div:first-child{display:flex;flex-direction:column}.incident-situation-stats{text-align:right;display:grid;grid-template-columns:auto auto;gap:.15rem .45rem;align-items:baseline}.incident-situation-stats b{font-size:1.25rem}.critical-text{color:#b42318}.status-meter-list>div{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid #e7edf1}.status-meter-list span{display:flex;align-items:center;gap:.55rem}.status-meter-list strong{font-size:1.4rem}.empty-state{padding:2rem;text-align:center;color:#71818e}.situation-latest{grid-column:1/-1}.situation-latest .situation-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.latest-row:nth-child(even){border-left:1px solid #e7edf1}@media(max-width:1100px){.situation-kpis{grid-template-columns:repeat(3,1fr)}.situation-grid{grid-template-columns:1fr}.situation-latest{grid-column:auto}}@media(max-width:700px){.situation-kpis{grid-template-columns:repeat(2,1fr)}.situation-latest .situation-list{grid-template-columns:1fr}.latest-row:nth-child(even){border-left:0}.situation-row,.latest-row{flex-direction:column}.situation-row-right,.latest-row>div:last-child{text-align:left}}


/* Staff / User Administration */
.admin-user-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:1rem;margin-bottom:1rem}.stack-form{display:grid;gap:.9rem}.stack-form label{display:grid;gap:.35rem;font-weight:700}.stack-form small{font-weight:400;color:var(--muted,#64748b)}.mini-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.mini-role-grid>div{padding:.8rem;border:1px solid rgba(15,23,42,.12);border-radius:12px;background:rgba(248,250,252,.8);display:flex;justify-content:space-between;align-items:center}.mini-role-grid strong{font-size:1.4rem}.mini-role-grid span{text-transform:uppercase;font-size:.72rem;font-weight:800;color:#64748b}.role-pill{display:inline-flex;padding:.3rem .62rem;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.035em;background:#e2e8f0;color:#334155}.role-superadmin{background:#312e81;color:#fff}.role-admin{background:#1d4ed8;color:#fff}.role-supervisor{background:#0369a1;color:#fff}.role-agent{background:#047857;color:#fff}.role-staff{background:#475569;color:#fff}.role-dispatcher{background:#7c3aed;color:#fff}.user-disabled{opacity:.6}.danger-card{border-color:rgba(180,35,24,.28)}button.danger{background:#b42318;color:#fff}button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:850px){.admin-user-grid{grid-template-columns:1fr}}
\n/* Operational Chat unread + browser-alert state */\n.staff-chat-launch.has-unread{animation:chatUnreadPulse 1.05s ease-in-out infinite;box-shadow:0 0 0 0 rgba(180,35,44,.55),0 16px 40px rgba(11,31,51,.22)}\n.staff-chat-launch.has-unread .chat-launch-icon{background:#fff;color:#b4232c;animation:chatUnreadIcon 1.05s ease-in-out infinite}.staff-chat-launch.has-unread .chat-unread{background:#b4232c;color:#fff;border:2px solid #fff}\n@keyframes chatUnreadPulse{0%,100%{transform:translateY(0) scale(1);box-shadow:0 0 0 0 rgba(180,35,44,.5),0 16px 40px rgba(11,31,51,.22)}50%{transform:translateY(-2px) scale(1.035);box-shadow:0 0 0 10px rgba(180,35,44,0),0 18px 46px rgba(180,35,44,.32)}}\n@keyframes chatUnreadIcon{0%,100%{transform:scale(1)}50%{transform:scale(1.16)}}\n.chat-alert-toggle{margin-left:auto;padding:.34rem .55rem!important;min-height:auto!important;border-radius:8px!important;font-size:.67rem!important;font-weight:800!important;background:#e8eef4!important;color:#334155!important;border:1px solid #d5dee7!important;box-shadow:none!important;white-space:nowrap}.chat-alert-toggle.enabled{background:#e9f7ef!important;color:#19754d!important;border-color:#bfe4cf!important}.chat-alert-toggle:disabled{opacity:.72}\n@media (prefers-reduced-motion:reduce){.staff-chat-launch.has-unread,.staff-chat-launch.has-unread .chat-launch-icon{animation:none}}\n