:root{color-scheme:dark;--bg:#10171c;--panel:#1a252d;--border:#35444d;--text:#e5ecec;--muted:#a9bac1;--accent:#aeda9c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,sans-serif}header{padding:20px 4vw;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.brand{font-size:18px;letter-spacing:2px;text-decoration:none;font-weight:800;color:white}.brand span{font-weight:400;color:var(--accent)}nav,.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}nav form{margin:0}main{max-width:1440px;margin:auto;padding:36px 4vw 64px}h1{font-size:clamp(30px,4vw,46px);line-height:1.15;margin:8px 0 18px;letter-spacing:-1px}h2{font-size:22px;line-height:1.35;margin:0 0 14px}h3{font-size:19px;margin:8px 0}p{margin:12px 0}a{color:#bfdfef;text-underline-offset:3px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:12px;color:var(--accent);font-weight:700}.muted,footer,.helptext{color:var(--muted)}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:26px;margin-bottom:22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px}.cards .panel{display:flex;flex-direction:column;align-items:flex-start}.cards .button{margin-top:auto}.badge{display:inline-block;border:1px solid #4d6652;border-radius:5px;padding:5px 10px;color:var(--accent);font-size:14px}.active-banner{display:block;background:#263c32;border:1px solid #57705b;border-radius:8px;padding:22px;margin-bottom:24px}.button,button{font:inherit;font-weight:650;background:var(--accent);color:#142219;border:1px solid transparent;padding:10px 16px;border-radius:5px;min-height:44px;text-decoration:none;cursor:pointer;display:inline-block}button:hover,.button:hover{filter:brightness(1.12)}button:disabled{opacity:.55;cursor:wait}.secondary{background:transparent;color:var(--text);border-color:#677c86}.quiet{background:transparent;color:#bdd0da;font-weight:500;padding:7px 10px}label{display:block;margin:12px 0;color:var(--text)}input,select,textarea{display:block;width:100%;font:inherit;background:#101a21;color:var(--text);padding:10px 12px;border:1px solid #6a7f88;border-radius:4px;min-height:44px}textarea{min-height:90px}input[type=checkbox]{display:inline-block;width:22px;min-height:22px;vertical-align:middle;margin-right:10px}.check{display:flex;align-items:center;gap:8px}.helptext{display:block;font-size:14px}ul.errorlist{color:#ffc7b2;padding-left:22px}.account{max-width:530px;margin:35px auto}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.theater-layout{display:grid;grid-template-columns:minmax(300px, .85fr) minmax(400px,1.4fr);gap:24px}.map-panel{min-width:0}.legend{padding:16px 0}.legend span{margin-right:12px;font-size:14px}.coalition{color:#83cdb7}.contested{color:#edd077}.opposition{color:#e69688}#map{height:570px;background:#26343c;border:1px solid var(--border);border-radius:8px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#17252d;color:white}.leaflet-container a{color:#9dceea}.distance{font-size:24px;font-weight:700}.distance span{font-size:14px;font-weight:400;color:var(--muted)}.event{padding:12px 0;border-bottom:1px solid var(--border)}time{color:var(--muted);font-size:14px}.event time{margin-right:14px}.objective{padding:24px 0;border-top:1px solid var(--border);margin-top:22px}.coordinates{margin:16px 0}.coordinates>div{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:5px 0}dt{font-size:12px;color:var(--muted)}dd{margin:0;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}code{font-size:15px;overflow-wrap:anywhere}.toolbar{margin:24px 0}.result{border-color:var(--accent)}footer{max-width:1440px;padding:24px 4vw;margin:auto;border-top:1px solid var(--border);font-size:13px}#notice:not(:empty){position:sticky;top:12px;z-index:2000;padding:14px;background:#304c42;border:1px solid #88b798;border-radius:6px;margin-bottom:20px}#notice.error{background:#512f2c;border-color:#d28b7d}:focus-visible{outline:3px solid #d1e9a9;outline-offset:3px}fieldset{border-color:var(--border);border-radius:5px}form{max-width:680px}@media(max-width:780px){main{padding:25px 18px}.heading{align-items:flex-start;flex-direction:column}.theater-layout,.two-columns{grid-template-columns:1fr}.map-panel{order:2}#map{height:420px}.panel{padding:20px}header{padding:18px}nav{gap:12px;font-size:14px}.coordinates>div{grid-template-columns:1fr;gap:0}h1{font-size:32px}.cards{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.toolbar .button{text-align:center}}
#objective-map{height:310px;background:#26343c;border:1px solid var(--border);border-radius:6px;margin:18px 0}
