.world-open .shell { width:min(1100px,100%); }
.world-heading { display:flex;align-items:center;gap:10px; }
.world-heading h1 { flex:1;margin:18px 0;font-size:28px; }
.world-heading .top-action { flex-shrink:0; }
.world-modes { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border-bottom:1px solid #57354d;margin-bottom:16px; }
.world-modes button { padding:12px 5px;min-height:48px;min-width:0;border:0;border-bottom:2px solid transparent;background:transparent;color:#cfc1d5;font-size:13px;overflow-wrap:anywhere; }
.world-modes button[aria-pressed=true] { color:#ff88cf;border-bottom-color:#ff3aaf; }
.world-totals { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0; }
.world-totals div { min-width:0; }
.world-totals dt { color:#bdaec7;font-size:12px;overflow-wrap:anywhere; }
.world-totals dd { margin:6px 0 0;font-size:26px;font-weight:700; }
.world-country { display:flex;align-items:center;gap:12px;margin:16px 0;font-size:14px; }
.world-country select { flex:1;min-width:0;padding:10px;background:#1d1223;color:#fff;border:1px solid #74445f;border-radius:8px;font-size:14px; }
.world-map { width:100%;height:clamp(270px,48svh,520px);min-height:270px;background:#0b3036;isolation:isolate;z-index:0; }
.world-map .leaflet-control-attribution { background:#100e19e0;color:white;font-size:10px; }
.world-map .leaflet-control-attribution a { color:#a0e9e2; }
.world-map .leaflet-bar a { background:#1a1420;color:white;border-color:#77435f; }
.world-map .leaflet-tooltip,.world-map .leaflet-popup-content-wrapper { background:#1b1320;color:white;border-color:#97537d; }
.world-map .leaflet-tooltip strong { font-size:12px; }
.world-places { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;margin-top:22px; }
.world-places section { min-width:0; }
.world-places h2 { font-size:20px;margin:0 0 12px; }
.world-places .muted { margin:0 0 8px;font-size:12px; }
.world-place-row { display:flex;align-items:center;gap:12px;justify-content:space-between;min-height:48px;width:100%;padding:10px 0;background:transparent;color:white;border:0;border-bottom:1px solid #39243b;text-align:start; }
.world-place-row > span { min-width:0;overflow-wrap:anywhere;font-size:14px; }
.world-place-row small { display:block;font-size:11px;color:#b9a5c0;margin-top:4px; }
.world-place-row strong { color:#7de5d8;flex-shrink:0;font-variant-numeric:tabular-nums; }
.world-place-row[aria-pressed=true] { color:#ff85ca; }
.world-status,.world-map-status,.world-stamp { color:#beacc4;font-size:12px; }
.world-status:empty,.world-map-status:empty { display:none; }
@media(max-width:600px) { .world-places { grid-template-columns:minmax(0,1fr);gap:24px; }.world-map { height:320px; }.world-heading h1 { font-size:25px; } }
@media(max-width:350px) { #tabs { padding-left:4px;padding-right:4px;gap:0; } #tabs button { font-size:10px; }.world-totals { gap:7px; } }
