:root{font-family:Inter,Arial,sans-serif;color:#182b37;background:#f5f7f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #087f88;outline-offset:3px}header{height:76px;background:#102e3c;color:#fff;display:flex;align-items:center;padding:0 30px;gap:27px}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none;letter-spacing:2px;font-size:17px}.brandmark{font-size:36px;color:#83d6d0;font-weight:400}.header-sub{color:#bdcdd3;border-left:1px solid #45606a;padding-left:27px;font-size:14px}.prototype{margin-left:auto;border:1px solid #64737b;padding:7px 10px;border-radius:4px;font-size:12px;letter-spacing:1px;color:#e0e8e9}main{display:grid;grid-template-columns:minmax(0,1fr) 430px;height:calc(100dvh - 76px);min-height:620px}.map-section{position:relative;background:#d8e6ec;overflow:hidden}#map{height:100%;width:100%;background:#d8e6ec;z-index:0}.map-title{position:absolute;top:28px;left:28px;z-index:500;background:rgba(255,255,255,.94);padding:22px 24px;box-shadow:0 4px 24px #173a4312;border-radius:5px;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:1.7px;color:#527078;font-weight:700}h1{font-size:27px;letter-spacing:-.9px;margin:9px 0}p{font-size:16px;line-height:1.55;color:#5a6b75}.map-title p{margin:0;font-size:14px}.reset{position:absolute;z-index:500;bottom:75px;left:24px;border:1px solid #d1dcdf;border-radius:5px;padding:11px 16px;background:white;color:#24424d;font-size:14px;box-shadow:0 2px 8px #102e3c18}.map-bottom{position:absolute;z-index:500;bottom:29px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none;font-size:12px;letter-spacing:1px}.legend{display:flex;gap:9px;align-items:center;background:white;padding:10px 13px;border-radius:4px;letter-spacing:0;font-size:13px}#zoom-label{background:#fff;padding:8px;border-radius:3px;color:#325360}.swatch{width:11px;height:11px;background:#86989e;border-radius:2px}#map-status{position:absolute;bottom:126px;left:24px;right:24px;z-index:501;margin:0;font-size:14px;background:white;border-radius:4px;padding:10px 13px}#map-status:empty{display:none}aside{background:white;overflow:auto;border-left:1px solid #d4dfe3;display:flex;flex-direction:column}.picker{padding:24px 28px 20px;border-bottom:1px solid #e6ecee}.picker label{font-size:12px;letter-spacing:1.5px;font-weight:700;color:#627780;display:block;margin-bottom:9px}select{width:100%;background:#f5f8f9;border:1px solid #cfdbdf;border-radius:5px;padding:12px;color:#243c47;font-size:16px}.brief{padding:26px 28px 20px}.country-heading h2{font-size:36px;font-weight:600;letter-spacing:-1px;margin:8px 0 12px;overflow-wrap:anywhere}.status{font-size:13px;color:#775620;background:#faf1dc;border:1px solid #eadcb6;border-radius:4px;padding:5px 9px;display:inline-block}.notice{background:#f4f7f8;border-left:3px solid #91a5ae;font-size:14px;padding:12px 13px;margin:20px 0 24px}.tabs{display:flex;border-bottom:1px solid #dce4e7;gap:17px}.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:0 0 12px;color:#667780;font-size:14px;white-space:nowrap}.tabs button[aria-selected=true]{color:#116e73;border-color:#116e73;font-weight:600}.section-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:24px 0 10px}h3{font-size:16px;margin:0}.section-title span{font-size:12px;color:#6b7d85}h4{margin:0;font-size:16px;font-weight:600}.requirement{display:flex;gap:14px;padding:19px 0;border-bottom:1px solid #edf1f2}.requirement:last-child{border-bottom:0}.number{font-size:12px;color:#598087;background:#edf4f4;border-radius:4px;min-width:28px;height:28px;display:grid;place-items:center}.requirement p{font-size:14px;line-height:1.5;margin:7px 0 10px}.pending{color:#839198;font-size:12px}.small{font-size:14px}.empty-icon{font-size:44px;color:#76949c;background:#eff5f5;width:74px;height:74px;display:grid;place-items:center;margin:26px auto 16px;border-radius:50%}.empty-title{text-align:center}.key-list{border:1px solid #e2e9eb;border-radius:5px;padding:15px;margin:20px 0}.key-list div{display:flex;gap:11px;align-items:center;margin:9px 0;font-size:14px}.key-list i{height:11px;width:11px;border-radius:2px}.red{background:#b34c4c}.amber{background:#c2933d}.gray{background:#86989e}.outline{border:1px solid #adc8cb;background:#f1f8f8;color:#20676c;border-radius:4px;padding:11px 16px;font-size:14px;width:100%}dl{font-size:14px}dt{color:#70818a;margin-top:20px}dd{margin:6px 0;color:#263f4b}details{border-top:1px solid #e2e9eb;margin-top:24px;padding-top:18px}summary{cursor:pointer;font-size:14px}a{color:#11757c}footer{margin-top:auto;background:#f5f8f9;border-top:1px solid #e2e9eb;padding:19px 28px;display:flex;gap:14px;align-items:center}footer p{font-size:13px;margin:0;line-height:1.6}footer strong{font-weight:500;color:#385460}.footer-icon{font-size:24px;color:#75949d}.leaflet-control-zoom{border:1px solid #d0dce0!important;box-shadow:0 2px 9px #102e3c20!important}.leaflet-top.leaflet-right{top:20px;right:14px}.leaflet-tooltip{font-family:inherit;font-size:14px} [hidden]{display:none!important}@media(min-width:1450px){main{grid-template-columns:minmax(0,1fr) 480px}.brief,.picker{padding-left:36px;padding-right:36px}}@media(max-width:850px){header{padding:0 18px;height:64px;gap:15px}.header-sub{display:none}.brand{font-size:14px}.prototype{font-size:10px;letter-spacing:.5px}main{height:auto;min-height:0;grid-template-columns:1fr}.map-section{height:48dvh;min-height:330px}aside{overflow:visible;border-left:0}.map-title{top:15px;left:15px;padding:14px 16px}.map-title h1{font-size:22px}.map-title p{font-size:12px}.map-title .eyebrow{font-size:10px}.map-bottom{bottom:25px;left:15px;right:15px}.reset{left:15px;bottom:69px;padding:9px 12px}.picker{padding:20px 24px}.brief{padding:24px}.country-heading h2{font-size:32px}.tabs{gap:22px}.map-title{max-width:calc(100% - 80px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Globe workspace and anchored briefing */
body{background:#060e19}main{display:block;height:calc(100dvh - 76px);min-height:540px}.map-section{height:100%;background:#060e19}#globe{position:absolute;inset:0;background:radial-gradient(ellipse at 45% 50%,#112738,#060e19 72%)}#globe canvas{display:block;touch-action:none;width:100%;height:100%}#map{position:absolute;inset:0}.map-title{background:transparent;box-shadow:none;color:#fff;padding:0;top:28px;left:28px;z-index:400}.map-title .eyebrow{color:#8cc9d0}.map-title p{color:#b8cbd5}.map-title h1{font-size:27px}.touch-hint{display:none}.picker{position:absolute;top:25px;right:28px;width:300px;padding:0;border:0;z-index:500}.picker label{color:#adcad7}.picker select{background:#102535;color:#edf6fa;border-color:#355263}.map-actions{position:absolute;left:24px;bottom:78px;z-index:500;display:flex;gap:8px;flex-wrap:wrap;max-width:calc(100% - 48px)}.map-actions button{position:static;border:1px solid #526a78;border-radius:6px;padding:11px 14px;background:#102535;color:#e3f1f6;font-size:14px;min-height:44px}.map-actions #zoom-in,.map-actions #zoom-out{font-size:20px;min-width:44px;padding:7px 12px}.map-bottom{color:#aac4d2;font-size:12px}.legend{background:#102535;color:#d6e4eb;border:1px solid #304858}#sun-clock{background:#102535;padding:10px;border-radius:4px;font-variant-numeric:tabular-nums}#map-status{background:#173246;color:#edf5f9;bottom:140px;right:auto;max-width:430px}aside#country-bubble{position:absolute;right:28px;top:118px;width:390px;max-height:calc(100% - 195px);min-height:160px;z-index:600;border:1px solid #b7cdd2;border-radius:16px;box-shadow:0 14px 70px #0008;overscroll-behavior:contain;overflow:auto;background:#fff}#close-brief{position:absolute;right:10px;top:10px;min-width:44px;min-height:44px;font-size:27px;color:#49616b;background:#edf3f5;border:0;border-radius:50%;z-index:2}.brief{padding:24px}.country-heading{padding-right:35px}.country-heading h2{font-size:30px}.tabs{gap:14px}.tabs button{font-size:14px}.requirement{padding:16px 0}#connector{position:absolute;inset:0;width:100%;height:100%;z-index:550;pointer-events:none;overflow:visible}#connector path{fill:none;stroke:#9be6e4;stroke-width:1.5;filter:drop-shadow(0 1px 2px #000)}#connector circle{fill:#eaffff;stroke:#269d9f;stroke-width:2}#hover-name{position:absolute;pointer-events:none;z-index:700;background:#112c3eee;color:#fff;border:1px solid #6d9eab;padding:8px 12px;border-radius:6px;font-size:14px}.leaflet-top.leaflet-right{top:104px;right:18px}footer{padding:16px 24px}.leaflet-control-attribution{max-width:90vw}.map-section.details .map-title{background:#102535e8;padding:12px;border-radius:6px}
@media(max-width:850px){header{height:64px}main{height:calc(100dvh - 64px);min-height:550px}.map-section{height:100%;min-height:0}.map-title{top:18px;left:18px;max-width:calc(100% - 36px)}.map-title h1{font-size:23px;margin:7px 0}.map-title .eyebrow{font-size:12px}.map-title p{font-size:14px}.picker{left:18px;right:18px;top:112px;width:auto;max-width:340px}.picker label{display:none}.map-actions{left:18px;bottom:64px;max-width:calc(100% - 36px);gap:6px}.map-actions button{padding:9px 10px}.map-bottom{left:18px;right:18px;bottom:14px;gap:6px;letter-spacing:0}#sun-clock{font-size:12px}.legend{font-size:12px}aside#country-bubble{top:auto;bottom:118px;left:12px;right:12px;width:auto;max-height:43%;border-radius:16px}.brief{padding:20px}.country-heading h2{font-size:27px}.notice{margin:16px 0}.tabs{gap:16px}#map-status{bottom:120px;left:18px;right:18px;max-width:none}.leaflet-top.leaflet-right{top:168px}.prototype{font-size:10px}.map-section:has(#country-bubble:not([hidden])) .map-title{display:none}.map-section:has(#country-bubble:not([hidden])) .picker{top:16px}}
@media(hover:none){.desktop-hint{display:none}.touch-hint{display:block}}

/* Centered Earth, compact peripheral controls */
header{height:52px;padding:0 20px;gap:18px;background:#0a1928;border-bottom:1px solid #203443}.brand{font-size:14px;letter-spacing:1.7px;gap:8px}.brandmark{font-size:27px}.header-sub{font-size:12px;padding-left:18px}.prototype{font-size:12px;padding:5px 8px;letter-spacing:.5px}
main{height:calc(100dvh - 52px);min-height:420px}#globe{background:radial-gradient(ellipse at 50% 50%,#112738,#060e19 72%)}
.map-title{left:20px;top:24px;max-width:225px}.map-title h1{font-size:19px;letter-spacing:-.4px;margin:8px 0}.map-title .eyebrow{font-size:12px}.map-title p{font-size:14px;line-height:1.5;max-width:200px}
.picker{left:20px;right:auto;top:139px;width:220px;padding:0}.picker label{font-size:12px}.picker select{font-size:14px;padding:10px 8px}
.map-actions{left:20px;bottom:83px;max-width:220px;gap:7px}.map-actions button{font-size:14px;padding:10px}.map-actions #detail-toggle{order:4;width:100%}
.map-bottom{left:20px;right:20px;bottom:20px}.map-bottom .legend,#sun-clock{font-size:12px;padding:8px}
aside#country-bubble{top:24px;right:20px;left:auto;bottom:auto;width:280px;max-height:calc(100% - 86px);border-radius:12px}.brief{padding:18px}.country-heading h2{font-size:24px}.country-heading{padding-right:28px}#close-brief{width:36px;height:36px;min-height:36px;min-width:36px;font-size:23px;top:8px;right:8px}.tabs{gap:10px;flex-wrap:wrap}.tabs button{white-space:normal;text-align:left;font-size:14px}.notice{margin:14px 0;padding:10px;font-size:14px}.section-title{margin-top:18px;flex-wrap:wrap}.requirement{gap:9px;padding:13px 0}.requirement p{font-size:14px}.requirement h4{font-size:16px}footer{padding:14px 18px}#map-status{left:20px;bottom:205px;max-width:240px;font-size:14px}
@media(max-width:1000px) and (min-width:851px){.map-title{max-width:185px}.picker{width:185px}.map-actions{max-width:185px}aside#country-bubble{width:250px}}
@media(max-width:850px){header{height:48px;padding:0 12px}.brand{font-size:12px}.prototype{font-size:10px}.header-sub{display:none}main{height:calc(100dvh - 48px);min-height:430px}.map-title{left:12px;top:16px;max-width:145px}.map-title h1{font-size:16px;margin:6px 0}.map-title .eyebrow{display:none}.map-title p{font-size:12px;max-width:140px}.picker{left:auto;right:12px;top:16px;width:calc(50% - 24px);max-width:220px}.picker label{display:block;font-size:12px;margin-bottom:6px}.picker select{font-size:16px;padding:8px;min-height:44px}.map-actions{left:12px;bottom:58px;max-width:calc(100% - 24px);gap:6px}.map-actions #detail-toggle{order:0;width:auto;font-size:12px}.map-actions button{padding:8px;font-size:12px}.map-actions #zoom-in,.map-actions #zoom-out{min-width:40px}.map-bottom{left:12px;right:12px;bottom:12px;gap:6px}.map-bottom .legend,#sun-clock{font-size:12px;padding:6px;letter-spacing:0}aside#country-bubble{top:auto;bottom:115px;left:auto;right:12px;width:min(310px,calc(100% - 24px));max-height:27%;min-height:130px;border-radius:12px}.brief{padding:15px}.country-heading h2{font-size:22px}.map-section:has(#country-bubble:not([hidden])) .map-title{display:block}.map-section:has(#country-bubble:not([hidden])) .picker{top:16px}#map-status{left:12px;bottom:112px;max-width:calc(100% - 24px)}.leaflet-top.leaflet-right{top:105px}}
