:root{color-scheme:dark;--bg:#0b0c0e;--panel:#17191d;--panel2:#202329;--line:#554b38;--gold:#f3d38d;--ink:#f8f7f2;--muted:#d4d5d7;--link:#ffe29e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}a{color:var(--link);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid #ffd878;outline-offset:3px}.shell{width:min(1220px,calc(100% - 34px));margin:auto}.skip{position:absolute;top:-200px;left:10px;background:var(--gold);color:#151515;padding:8px;z-index:9999}.skip:focus{top:8px}.topbar{background:#101115;border-bottom:1px solid var(--line)}.navline{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;padding:13px 0}.brand{font-weight:850;color:var(--gold);letter-spacing:.035em;text-decoration:none;white-space:nowrap}nav{display:flex;gap:.4rem 1rem;flex-wrap:wrap;margin-left:auto}nav a{font-size:.88rem;font-weight:650;text-decoration:none;color:var(--ink)}nav a:hover,nav a[aria-current=page]{color:var(--gold);text-decoration:underline}.hero{padding:2.1rem 0 1.6rem;background:radial-gradient(ellipse at 80% 5%,rgba(195,150,49,.15),transparent 44%),linear-gradient(140deg,#131416,#090a0c);border-bottom:1px solid #292824}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--gold)}h1,h2,h3{line-height:1.2;letter-spacing:-.025em}h1{font-size:clamp(2.05rem,5vw,3.65rem);margin:.4rem 0 .7rem}h2{font-size:clamp(1.32rem,2.4vw,1.8rem);margin:.15rem 0 .7rem}h3{font-size:1.15rem;margin:.2rem 0}.lead{max-width:800px;font-size:1.13rem;color:#e6e4de;margin:0 0 1.1rem}.main{padding:2rem 0 4rem}.activity{display:grid;grid-template-columns:minmax(290px,360px) minmax(0,1fr);gap:18px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:0 12px 35px rgba(0,0,0,.18)}.controls{display:grid;gap:10px}.fieldlabel{font-weight:700;font-size:.93rem}.field{min-height:47px;background:#20232a;color:var(--ink);font:inherit;border:2px solid #948052;border-radius:9px;padding:8px 12px;width:100%}.field::placeholder{color:#b9bbc0}.small{font-size:.86rem;color:var(--muted)}.btn{border:1px solid #bd9d54;background:var(--gold);color:#161207;padding:8px 13px;border-radius:10px;min-height:38px;cursor:pointer;font:inherit;font-weight:750}.btn.secondary{background:transparent;color:var(--gold)}.btn:hover{filter:brightness(1.12)}.quick{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0 12px}.quick .btn{font-size:.85rem;min-height:35px}.countrylist{display:grid;gap:3px;max-height:460px;overflow:auto;scrollbar-color:#927d4d #17191d;padding-right:5px}.country-btn{width:100%;text-align:left;color:var(--ink);font:inherit;background:transparent;border:1px solid transparent;padding:8px 10px;border-radius:8px;cursor:pointer}.country-btn:hover,.country-btn.active{border-color:#987e43;background:#2a281e;color:var(--gold)}.country-btn:focus-visible{outline:2px solid var(--gold)}.mapbox{padding:0;overflow:hidden;min-width:0}.maptop{padding:15px 19px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.maptop h2{margin:0}.mapinfo{font-size:.9rem;color:var(--muted)}#map{height:550px;width:100%;background:#e7eadf}.leaflet-container{font-family:inherit}.leaflet-container a{color:#134a70}.leaflet-control-attribution{font-size:10px!important}#details{padding:18px 20px;border-top:1px solid var(--line)}#details p{margin:.15rem 0 .65rem}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.tag{border:1px solid #796844;border-radius:30px;background:#272725;color:var(--gold);cursor:pointer;padding:5px 11px;font:inherit;font-size:.84rem}.tag:hover{border-color:var(--gold)}.tip{margin:1.25rem 0;padding:16px 19px;border-left:4px solid var(--gold);background:var(--panel2);border-radius:9px}.tip h2{margin:0 0 5px}.tip p{margin:0}.foot{padding:24px 0;border-top:1px solid var(--line);background:#101115;color:var(--muted);font-size:.9rem}.error{color:#ffd9a4}.hint{font-size:.9rem;color:var(--muted)}.legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.swatch{display:inline-block;width:13px;height:13px;background:#d8ae4a;border:1px solid #45310c;vertical-align:middle;margin-right:5px}.swatch.neighbor{background:#5d9b8c}a:focus,button:focus{outline-offset:3px}@media(max-width:890px){.activity{grid-template-columns:1fr}.countrylist{max-height:220px}#map{height:440px}}@media(max-width:620px){nav{margin-left:0}body{font-size:16px}.shell{width:min(100% - 26px,1220px)}.panel{padding:15px}#map{height:370px}.hero{padding:1.5rem 0}.navline{align-items:start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Integrated 2026-11-02: keep the Geography explorer legible with the shared site theme. */
.gp-geo-page .hero h1{font-size:clamp(2.05rem,5vw,3.65rem);margin:.4rem 0 .7rem}
.gp-geo-page .brand{font-size:inherit;letter-spacing:normal}
:root[data-theme=light] .gp-geo-page .hero{background:radial-gradient(ellipse at 80% 5%,rgba(195,150,49,.14),transparent 44%),linear-gradient(140deg,#fffaf1,#f4f0e7);border-color:var(--line)}
:root[data-theme=light] .gp-geo-page .lead{color:#3f4349}
:root[data-theme=light] .gp-geo-page .panel{background:#fff;border-color:var(--line);box-shadow:0 8px 25px rgba(0,0,0,.06)}
:root[data-theme=light] .gp-geo-page .field{background:#fff;color:var(--text);border-color:#9e8a5c}
:root[data-theme=light] .gp-geo-page .field::placeholder{color:#63676b}
:root[data-theme=light] .gp-geo-page .btn{background:#765405;color:#fff;border-color:#765405}
:root[data-theme=light] .gp-geo-page .btn.secondary{background:transparent;color:#674700}
:root[data-theme=light] .gp-geo-page .country-btn{color:var(--text)}
:root[data-theme=light] .gp-geo-page .country-btn:hover,:root[data-theme=light] .gp-geo-page .country-btn.active{background:#f4ead3;color:#563a0a;border-color:#b7a174}
:root[data-theme=light] .gp-geo-page .countrylist{scrollbar-color:#9d8c64 #f5f0e7}
:root[data-theme=light] .gp-geo-page .tag{background:#f5ecd6;color:#573900;border-color:#a89162}
:root[data-theme=light] .gp-geo-page .tip{background:#f5eddc}
:root[data-theme=light] .gp-geo-page .foot{background:#f7f3e9;border-color:var(--line);color:var(--muted)}
:root[data-theme=light] .gp-geo-page #details{border-color:var(--line)}
