:root,:root[data-theme=dark]{--bg:#1f1f1f;--card:#18191cfa;--text:#f1f1f1;--muted:#b5b8be;--line:#3a3d44;--accent:#7aa7ff;--focus:#ffd166;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#e2dfda;--card:#fffffffa;--text:#16181c;--muted:#4b5058;--line:#d4d1cb;--accent:#1f56c9;--focus:#9a5b00;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);height:100dvh;color:var(--text);grid-template-rows:auto 1fr auto;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:grid}a{color:var(--accent)}button{font:inherit;color:inherit;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;padding:6px 10px}button[aria-pressed=true]{border-color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.bar{background:var(--card);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:8px 16px;display:flex}.brand{color:var(--text);white-space:nowrap;font-weight:700;text-decoration:none}.actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.foot{border-top:1px solid var(--line);border-bottom:0;flex-wrap:wrap;font-size:13px}.foot .sources{color:var(--muted)}.linkish{color:var(--text);border:0;padding:0;text-decoration:underline}#stage{min-height:0;position:relative;overflow:hidden}#map{position:absolute;inset:0}#poster{pointer-events:none;transition:opacity .6s;position:absolute;inset:0}#poster img{object-fit:cover;width:100%;height:100%;display:block}.map-ready #poster{opacity:0}.deeplink #poster{display:none}@media (prefers-reduced-motion:reduce){#poster{transition:none}}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;position:absolute;box-shadow:0 6px 24px #00000040}.card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.card h2{margin:0;font-size:16px}.close{border:0;padding:2px 8px;font-size:22px;line-height:1}#hero{z-index:3;width:min(440px,100% - 32px);padding:16px;top:16px;left:16px}#hero h1{margin:0 0 12px;font-size:clamp(19px,4.6vw,26px);line-height:1.2}.explored #hero h1{display:none}.explored #hero{padding:8px}#search input{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px}#results{margin:4px 0 0;padding:0;list-style:none}#results button{text-align:left;border:0;border-top:1px solid var(--line);overflow-wrap:anywhere;border-radius:0;width:100%}.status:empty{display:none}.status{color:var(--muted);margin:6px 0 0;font-size:13px}#map-status{z-index:4;padding:10px 12px;bottom:16px;left:16px}#drawer{z-index:5;width:min(340px,100% - 32px);padding:12px;top:16px;bottom:140px;right:16px;overflow-y:auto}#drawer[data-open=false]{display:none}.layers,.classes{margin:0;padding:0;list-style:none}.layer{border-top:1px solid var(--line);padding:8px 0}.layer label{cursor:pointer;align-items:flex-start;gap:8px;display:flex}.layer input{margin-top:3px}.legend{margin:6px 0 0 24px;font-size:13px}.classes li{align-items:center;gap:8px;margin:3px 0;display:flex}.swatch{background:var(--swatch);border:1px solid #7f7f7f99;border-radius:3px;flex:none;width:14px;height:14px}.provenance,.official,.note{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:12px}#panel{z-index:4;width:min(380px,100% - 32px);max-height:55%;padding:12px;bottom:16px;left:16px;overflow-y:auto}#panel .item{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}#panel h3{margin:0 0 4px;font-size:14px}#panel dl{grid-template-columns:auto 1fr;gap:2px 10px;margin:0;font-size:13px;display:grid}#panel dt{color:var(--muted)}#panel dd{overflow-wrap:anywhere;margin:0}.empty{margin:8px 0 0}dialog{background:var(--card);max-width:min(520px,100vw - 32px);color:var(--text);border:1px solid var(--line);border-radius:10px}dialog::backdrop{background:#00000080}@media (max-width:640px){#drawer{width:auto;max-height:60%;inset:auto 8px 8px}#panel{width:auto;bottom:8px;left:8px;right:8px}#hero{width:calc(100% - 16px);top:8px;left:8px}.foot .sources{display:none}}.poster-mode .bar,.poster-mode #hero,.poster-mode #drawer,.poster-mode .maplibregl-control-container{display:none!important}.poster-mode body{grid-template-rows:1fr}.poster-mode #poster{display:none}
