:root{color-scheme:light;--ink:#173044;--teal:#076b78;--line:#d7e1e7;--muted:#5c6f7b;--paper:#f4f7f8;--shadow:0 8px 30px #1730441a;--radius:14px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper)}[hidden]{display:none!important}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:10px 15px;min-height:44px;cursor:pointer;font-weight:600}button:hover{background:#eef4f5}button:disabled{opacity:.55;cursor:default}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover{background:#085665}a{color:#066b83;text-underline-offset:3px}input,select{width:100%;border:1px solid #b7cbd3;border-radius:8px;padding:11px 12px;background:white;color:var(--ink);min-height:46px}input:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #58b7c1;outline-offset:2px}label{display:block;font-weight:600;font-size:.92rem}label input,label select{margin-top:7px}.muted,.small{color:var(--muted)}.small{font-size:.84rem;line-height:1.6}.error{color:#a32537;line-height:1.5}.eyebrow{font-size:.72rem;letter-spacing:.11em;font-weight:750;color:var(--teal);margin:0 0 12px}.badge{display:inline-block;font-size:.58rem;letter-spacing:.08em;border:1px solid #b6dadf;background:#eaf6f6;color:#116270;padding:4px 6px;border-radius:5px;white-space:nowrap}.pill{display:inline-block;padding:4px 8px;border-radius:6px;background:#e9f1f4;font-size:.72rem;font-weight:650;margin:3px 5px 3px 0}h1{font-size:clamp(1.5rem,3.5vw,2.4rem);line-height:1.16;letter-spacing:-.035em;margin:12px 0 24px}h2{font-size:1.15rem;line-height:1.4}h3{font-size:.97rem;line-height:1.5}p{line-height:1.55}button.text-button{border:0;background:transparent;color:var(--teal);padding:7px 9px;min-height:40px;font-size:.88rem}.phone{display:inline-flex;align-items:center;min-height:40px;font-weight:600}.empty-state{padding:18px;background:#edf3f5;border-radius:9px;color:var(--muted)}
.login-screen{min-height:100dvh;display:grid;place-items:center;padding:25px;background:radial-gradient(ellipse at 15% 5%,#d9edef,transparent 55%),var(--paper)}.login-card{width:100%;max-width:440px;border-radius:22px;background:white;box-shadow:var(--shadow);padding:32px}.login-logo{max-width:150px;max-height:95px;object-fit:contain;display:block;margin-bottom:22px}.login-card label{margin:18px 0 5px}.login-card .primary{width:100%;margin-top:24px}.selection-header{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:78px;border-bottom:1px solid var(--line);background:#fff;padding:16px max(20px,calc((100vw - 1120px)/2))}.selection-content{max-width:1120px;margin:36px auto;padding:0 22px 45px}.selection-content>select{max-width:460px;margin:8px 0 25px}.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px;margin:10px 0 24px}.event-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 3px 12px #17304408}.event-card h2{margin:4px 0 15px}.event-card button{margin-top:12px}.loading-screen{position:fixed;inset:0;background:var(--paper);display:grid;place-items:center;z-index:2000}
#app-screen{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.topbar{flex:none;display:flex;gap:12px;align-items:center;min-height:70px;padding:10px 18px;background:white;border-bottom:1px solid var(--line);padding-top:max(10px,env(safe-area-inset-top))}.brand{display:flex;flex-direction:column;gap:3px;flex:none}.brand strong{font-size:1.07rem;letter-spacing:.03em}.event-heading{flex:1;min-width:0;padding-left:12px;border-left:1px solid var(--line)}.event-heading b,.event-heading small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.event-heading b{font-size:.98rem}.event-heading small{font-size:.76rem;color:var(--muted);margin-top:4px}#refresh-button{white-space:nowrap;font-size:.88rem}#account-button{font-size:1.2rem}.reference-bar{flex:none;display:flex;justify-content:space-between;gap:12px;background:#edf5f5;color:#375d68;padding:7px 18px;font-size:.73rem;line-height:1.4}.reference-bar span{min-width:0}#last-refresh{white-space:nowrap}.notice{flex:none;padding:10px 18px;font-size:.84rem;line-height:1.45;background:#fff3d9;color:#75531a;max-height:110px;overflow:auto}.tabs{flex:none;display:flex;gap:4px;padding:7px 18px;background:#fff;border-bottom:1px solid var(--line)}.tabs button{font-size:.85rem;border-color:transparent;border-radius:7px;min-height:38px}.tabs button.active{background:var(--teal);color:#fff}#main-view{flex:1;min-height:0;position:relative}.view-panel{height:100%;position:relative}#map{height:100%;width:100%;background:#e3eceb}.map-error{padding:90px 30px;max-width:650px}.map-actions{position:absolute;top:14px;left:15px;z-index:1050;display:flex;gap:8px}.map-actions button{box-shadow:0 3px 12px #17304420;font-size:.88rem}.map-footer{position:absolute;bottom:29px;left:12px;z-index:1000;background:#fffc;backdrop-filter:blur(6px);padding:6px 10px;max-width:calc(100% - 90px);border-radius:6px;font-size:.71rem;pointer-events:none}.drawer{position:absolute;top:70px;bottom:65px;left:15px;width:330px;max-width:calc(100% - 30px);z-index:1100;background:white;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:flex;flex-direction:column}.drawer-head{flex:none;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line)}.drawer-head h2{font-size:1rem;margin:0}.drawer-head button{border:0}.drawer-content{padding:5px 15px 18px;overflow-y:auto;overscroll-behavior:contain}.drawer details{border-bottom:1px solid var(--line);padding:10px 0}.drawer summary{padding:9px 0;font-weight:650;cursor:pointer;font-size:.92rem}.check{display:flex;align-items:center;gap:9px;font-size:.86rem;font-weight:500;min-height:39px;line-height:1.25;padding:3px 0}.check input{flex:none;width:19px;height:19px;min-height:19px;padding:0;margin:0;accent-color:var(--teal)}.check span{flex:1;min-width:0}.swatch{width:13px;height:13px;border-radius:3px;flex:none}.filter-tools{display:flex;gap:7px;margin:4px 0 6px}.filter-tools button{font-size:.72rem;padding:5px 9px;min-height:31px}#team-filters{max-height:240px;overflow:auto;margin-top:9px}.team-dot{width:28px;height:28px;border-radius:50%;border:3px solid white;box-shadow:0 1px 6px #0005;display:grid;place-items:center;color:white;font-size:14px;font-weight:800;line-height:1}.poi-icon{position:relative;width:28px;height:28px}.poi-short{position:absolute;inset:4px -14px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;color:#15242d;text-shadow:0 0 3px white,0 0 3px white;white-space:nowrap;pointer-events:none}.map-team:focus,.map-poi:focus{outline:3px solid #1f95ba;border-radius:6px}
.content-panel{overflow:auto;overscroll-behavior:contain;padding:30px max(22px,calc((100% - 1020px)/2)) 50px}.search-row{display:flex;gap:14px;align-items:end;margin-bottom:24px}.search-row label{flex:0 0 190px}.search-row .grow{flex:1}.planning-result{background:white;border:1px solid var(--line);border-radius:12px;margin:10px 0}.planning-result>summary{padding:18px;font-weight:650;cursor:pointer}.result-content{padding:0 18px 18px}.mission-card{position:relative;border:1px solid var(--line);border-left:4px solid #75a8b5;border-radius:8px;background:white;margin:12px 0;padding:15px 18px}.mission-card>b{display:inline-block;margin:0 8px 8px 0}.mission-card p{margin:5px 0;font-size:.92rem}.mission-card .small{font-size:.81rem}.time-range{font-variant-numeric:tabular-nums;font-weight:650;color:#295866}.entries-box{padding:16px 22px;background:#e8f2f3;border-radius:12px;margin:15px 0 22px}.entries-box p{font-size:.92rem}dialog{border:1px solid var(--line);border-radius:18px;padding:0;width:min(690px,90vw);max-height:85dvh;color:var(--ink);box-shadow:0 15px 70px #0003}dialog::backdrop{background:#0d283a88}dialog>header{display:flex;position:sticky;top:0;justify-content:space-between;align-items:center;gap:14px;background:#fff;border-bottom:1px solid var(--line);padding:14px 22px;z-index:1}dialog h2{margin:0}dialog header button{flex:none}#detail-body{padding:20px 23px 30px}.gps-meta{padding:14px;background:#eef4f5;border-radius:8px;font-size:.86rem}
@media(max-width:760px){.topbar{padding:7px 9px;gap:7px;min-height:62px;padding-top:max(7px,env(safe-area-inset-top))}.brand{display:none}.event-heading{border:0;padding-left:0}.event-heading b{font-size:.82rem}.event-heading small{font-size:.65rem}#back-events{padding:8px 11px}#account-button{display:none}#refresh-button{font-size:.73rem;padding:8px 9px;min-width:90px}.reference-bar{font-size:.66rem;padding:6px 10px;display:block}.reference-bar span{display:block}#last-refresh{display:none}.tabs{padding:5px 8px;gap:2px}.tabs button{flex:1;padding:7px 6px;font-size:.7rem;min-height:37px}.map-actions{left:10px;top:10px}.map-actions button{font-size:.78rem;min-height:42px}.drawer{top:auto;left:0;right:0;bottom:0;width:100%;max-width:100%;height:min(67dvh,540px);border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom)}.map-footer{font-size:.65rem;bottom:28px;left:6px;max-width:calc(100% - 65px)}.content-panel{padding:22px 14px 40px}.search-row{gap:10px;flex-wrap:wrap}.search-row label{flex:1 1 130px}.search-row .grow{flex:1 1 100%}.search-row label:first-child{order:0}.search-row label.grow{order:2}.planning-result>summary{padding:16px;font-size:.93rem}.result-content{padding:0 12px 14px}.mission-card{padding:13px 12px}.mission-card p{font-size:.84rem}.selection-header{padding:14px 16px;flex-wrap:wrap}.selection-content{margin:26px auto;padding:0 16px 40px}.login-card{padding:26px 23px}.login-screen{padding:16px}.notice{font-size:.74rem;max-height:92px;padding:8px 11px}.selection-header .badge{display:none}dialog{width:100%;max-width:100%;max-height:85dvh;margin:auto 0 0;border-radius:18px 18px 0 0}dialog>header{padding:14px 16px}#detail-body{padding:16px 16px max(25px,env(safe-area-inset-bottom))}.entries-box{padding:14px 15px}.admin-body .selection-header a{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Keep form controls at 16px on iOS and separate section headings. */
input,select{font-size:1rem}.mission-card>.eyebrow{display:block;margin-bottom:8px}

/* RC4: mission cards only; map markers, status labels and API data stay unchanged. */
.mission-card--rescue{background-color:#fdecec;border-color:#d8a0a7;border-left-color:#b83242}
.mission-card--security{background-color:#e8f1fd;border-color:#adc9e9;border-left-color:#2866aa}
.mission-card--staff{background-color:#e9f6ec;border-color:#b1d8bd;border-left-color:#2c7a46}
.mission-card--logistics{background-color:#f0f2f4;border-color:#c9d0d7;border-left-color:#64748b}
