#globe{position:absolute;inset:0;background:#050d1b;outline-offset:-4px;touch-action:none}#globe .cesium-viewer,#globe .cesium-viewer-cesiumWidgetContainer,#globe .cesium-widget,#globe canvas{width:100%;height:100%}#globe .cesium-viewer-bottom{left:auto;right:0;max-width:calc(100% - 385px)}#globe .cesium-widget-credits{background:#07192ccc;color:#d4e7f7;font-size:11px;padding:4px 8px;border-radius:8px 0 0 0}#globe .cesium-widget-credits a{color:#cae6ff}.sidebar-collapsed #globe .cesium-viewer-bottom{max-width:100%}
.map-stage[data-style=globe]{background:#050d1b}.map-stage[data-style=globe] .map-caption,.map-stage[data-style=globe] .map-options,.map-stage[data-style=globe] .map-buttons button,.globe-tools,.globe-status{color:#eef6ff!important;background:rgba(12,30,49,.73);border-color:#b7dfff30;box-shadow:inset 0 1px #e6f6ff12,0 8px 30px #02081435;backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%)}.map-stage[data-style=globe] .map-caption #mapContext,.map-stage[data-style=globe] .map-options summary>span,.map-stage[data-style=globe] .map-description,.map-stage[data-style=globe] .map-card small{color:#b8cce0}.map-stage[data-style=globe] .map-card,.map-stage[data-style=globe] .map-picker-heading h2,.map-stage[data-style=globe] .map-picker-heading button,.map-stage[data-style=globe] .favorite-button,.map-stage[data-style=globe] .color-legend{color:#e6f3ff}.map-stage[data-style=globe] .map-card{background:#ffffff05}.map-stage[data-style=globe] .map-card:hover{background:#ffffff12}.map-stage[data-style=globe] .map-card[aria-pressed=true]{background:#649af91c;border-color:#8eb8ff}.map-stage[data-style=globe] .favorite-button{background:#ffffff09;border-color:#abcfff30}.map-stage[data-style=globe] .map-picker-heading button{background:#ffffff09}.map-stage[data-style=globe] .layer-toggles{display:none}.map-stage[data-style=globe] .color-legend{border-color:#ffffff1c}
.globe-tools{position:absolute;right:20px;bottom:72px;z-index:600;display:flex;gap:2px;padding:5px;border:1px solid;border-radius:14px}.globe-tools button{border:0;background:transparent;min-height:40px;min-width:38px;font-size:14px;padding:8px 10px;border-radius:9px}.globe-tools button:hover,.globe-tools button[aria-pressed=true]{background:#d7ebff1b}.globe-tools button:disabled{opacity:.4}.globe-status{position:absolute;bottom:132px;right:20px;z-index:680;padding:12px 15px;max-width:min(390px,calc(100% - 410px));font-size:13px;line-height:1.55;border:1px solid;border-radius:13px}.globe-options{margin-top:12px;border-top:1px solid #7890a33a;padding-top:12px}.globe-options label{display:flex;align-items:center;gap:10px;min-height:38px;font-size:14px}.globe-options select{width:auto;margin-left:auto;min-height:36px;background:#fff1;color:inherit;border-color:#7890a34a;padding:6px;font-size:14px}.globe-options .fine{color:inherit;opacity:.78;margin:5px 0 0}.motion-options{border-top:1px solid #7890a33a;padding-top:10px;margin-top:12px}.motion-options label{display:flex;gap:10px;align-items:center;font-size:14px;min-height:38px}.motion-options small{display:block;font-size:12px;line-height:1.5;opacity:.75;margin:4px 0}
.journey-toast{position:absolute;z-index:670;bottom:135px;left:calc(var(--panel-width) + 50px);max-width:min(530px,calc(100% - var(--panel-width) - 100px));display:flex;align-items:center;gap:14px;padding:17px 18px;background:rgba(9,39,44,.88);border:1px solid #8ef4c652;border-radius:20px;box-shadow:0 16px 70px #00162355,inset 0 1px #dcfff220;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#edfff5;overflow:hidden;animation:journey-reveal .5s cubic-bezier(.2,.8,.2,1) both}.journey-toast>span{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#86f6c71b;color:#a5ffdd;border:1px solid #a5ffdd75;font-size:26px}.journey-toast strong{font-size:19px;letter-spacing:-.3px;display:block}.journey-toast div>span{font-size:13px;line-height:1.5;display:block;color:#b1d9cd;margin-top:4px}.journey-toast button{border:0;border-radius:9px;background:#ffffff12;color:#d9f8eb;font-size:13px;min-height:38px;padding:7px 10px;margin-left:4px;white-space:nowrap}.journey-toast.is-advancing:after{content:'';position:absolute;left:0;bottom:0;height:3px;background:#98ffd3;width:100%;transform-origin:left;animation:journey-countdown 3.4s linear forwards}.sidebar-collapsed .journey-toast{left:30px;max-width:calc(100% - 60px)}
.answer-celebration .pin.question{animation:answer-beacon 1.2s ease-out 2}.question-arrival{animation:question-arrival .4s ease-out}.globe-options[hidden]{display:none}.map-card[data-map-style=globe]{grid-column:span 3;display:grid;grid-template-columns:92px 1fr;grid-template-rows:auto auto;align-items:end;column-gap:10px;padding:7px 10px}.map-card[data-map-style=globe] img{grid-row:span 2;width:92px;aspect-ratio:1.5;object-fit:cover}.map-card[data-map-style=globe] strong{align-self:end;font-size:16px}.map-card[data-map-style=globe] small{align-self:start;margin-top:5px}
@keyframes journey-reveal{from{opacity:0;transform:translateY(16px) scale(.96);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes journey-countdown{to{transform:scaleX(0)}}@keyframes answer-beacon{0%{box-shadow:0 0 0 0 #9fffd880}100%{box-shadow:0 0 0 36px #9fffd800}}@keyframes question-arrival{from{opacity:.3;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(max-width:1050px) and (min-width:701px){.map-card[data-map-style=globe]{grid-column:span 2}.journey-toast{left:calc(var(--panel-width) + 36px);max-width:calc(100% - var(--panel-width) - 60px);flex-wrap:wrap}.globe-tools{bottom:50px}.globe-status{max-width:calc(100% - 370px)}#globe .cesium-viewer-bottom{max-width:calc(100% - 350px)}}
@media(max-width:700px){#globe .cesium-viewer-bottom{max-width:100%}#globe .cesium-widget-credits{font-size:10px}.globe-tools{right:12px;bottom:45px;padding:3px;border-radius:12px}.globe-tools button{font-size:13px;min-height:36px;min-width:34px;padding:7px 8px}.globe-status{left:14px;right:14px;bottom:98px;max-width:none;font-size:12px}.journey-toast,.sidebar-collapsed .journey-toast{left:14px;right:14px;bottom:96px;max-width:none;padding:12px;gap:9px;border-radius:15px}.journey-toast strong{font-size:16px}.journey-toast div>span{font-size:12px}.journey-toast>span{width:32px;height:32px;font-size:22px}.journey-toast button{font-size:12px;padding:6px}.map-card[data-map-style=globe]{grid-column:span 3}.map-stage[data-style=globe] .detail{bottom:98px;right:14px}.session-active .map-stage[data-style=globe] .map-bottom{display:none}}
@media(max-width:370px){.map-card[data-map-style=globe]{grid-column:span 2}.journey-toast{flex-wrap:wrap}.journey-toast button{margin-left:41px}}
@media(prefers-reduced-motion:reduce){.journey-toast,.question-arrival,.answer-celebration .pin.question{animation:none}.journey-toast.is-advancing:after{animation:none;display:none}}
@media(prefers-reduced-transparency:reduce){.journey-toast{background:#102f35}.map-stage[data-style=globe] .map-options,.globe-tools,.globe-status{background:#14273b}}
/* Geographic labels: screen-space clarity, ground-anchored stems, collision priority. */
.globe-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}.globe-pin{position:absolute;top:0;left:0;display:flex;align-items:center;gap:9px;min-height:38px;max-width:240px;padding:4px 10px 4px 4px;margin-top:-12px;border:1px solid #ffffffb0;border-radius:12px;background:#102036f5;color:#fff;box-shadow:0 3px 12px #0008;pointer-events:auto;cursor:pointer;white-space:nowrap;font:600 14px/1.25 system-ui}.globe-pin b{display:grid;place-items:center;min-width:34px;min-height:30px;padding:3px 5px;border-radius:8px;background:var(--marker-color);color:#fff;font-variant-numeric:tabular-nums}.globe-pin>span{overflow:hidden;text-overflow:ellipsis}.globe-pin:after{content:'';position:absolute;bottom:-13px;left:calc(50% - 1px);height:12px;width:2px;background:#fff;box-shadow:0 0 3px #000}.globe-pin:before{content:'';position:absolute;bottom:-16px;left:calc(50% - 4px);width:8px;height:8px;background:var(--marker-color);border:2px solid #fff;border-radius:50%;box-shadow:0 0 4px #000}.globe-pin.is-selected{min-height:46px;border:2px solid #fff;box-shadow:0 0 0 4px #ffffff25,0 6px 25px #0009;z-index:3}.globe-pin.is-selected b{font-size:17px;min-height:34px}.globe-pin:hover,.globe-pin:focus-visible{background:#284566;outline:3px solid #9fccff;outline-offset:3px}.globe-pin[hidden]{display:none}.globe-options select{max-width:62%;color:#eff5ff!important;background:#132b41!important}.globe-tools button{color:inherit;min-width:44px;min-height:44px}.globe-status{pointer-events:none}.globe-labels .globe-pin:not(:has(span)){padding-right:4px}
/* One compositor-only success animation shared by every map. No rebuilding terrain. */
.geo-success{position:absolute;top:0;left:0;width:0;height:0;z-index:550;pointer-events:none}.geo-success i{position:absolute;left:-26px;top:-26px;width:52px;height:52px;border:2px solid #8affd0;border-radius:50%;box-shadow:0 0 18px #64ffc450;animation:geo-ripple 1.5s cubic-bezier(.15,.6,.2,1) both}.geo-success i:nth-child(2){animation-delay:.22s}.geo-success b{position:absolute;left:-24px;top:-48px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;border:2px solid #d7fff0;background:#13503fe8;color:#b9ffe2;font:700 28px system-ui;box-shadow:0 6px 24px #001b2580;animation:geo-confirm 2s ease both}@keyframes geo-ripple{0%{transform:scale(.5);opacity:1}100%{transform:scale(4);opacity:0}}@keyframes geo-confirm{0%{transform:translateY(12px) scale(.5);opacity:0}20%,70%{transform:translateY(-16px) scale(1);opacity:1}100%{transform:translateY(-28px) scale(.95);opacity:0}}
@media(max-width:700px){
 .topbar{padding-top:max(10px,env(safe-area-inset-top));border-radius:16px}.mode-nav button,.sidebar-toggle,.map-buttons button,.map-picker-heading button{min-height:44px}.map-picker-heading button{min-width:44px}.map-stage{height:56svh;min-height:340px}.sidebar{padding:18px;margin-bottom:max(12px,env(safe-area-inset-bottom))}.sidebar input,.sidebar select,#chooseSearch{font-size:16px!important}.topbar,.sidebar,.globe-tools,.map-caption,.map-options,.journey-toast{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
 .map-options[open],.sidebar-collapsed .map-options[open]{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-width:none;border-radius:22px 22px 0 0;z-index:1200;box-shadow:0 -20px 80px #0008;padding-bottom:env(safe-area-inset-bottom)}.map-options[open] .map-settings,.session-active .map-options[open] .map-settings{max-height:70dvh;min-height:0;padding:16px}.map-options[open]>summary{display:none}.map-card strong{font-size:14px}.globe-tools{right:12px;bottom:30px;gap:2px}.globe-tools button{min-height:44px;min-width:44px;font-size:14px;padding:8px}.globe-tools #globeTilt{max-width:142px}.globe-status{bottom:87px;font-size:13px;padding:8px 12px}.journey-toast,.sidebar-collapsed .journey-toast{bottom:88px}.journey-toast button{min-height:44px}.globe-pin{min-height:44px;max-width:205px}.globe-pin b{min-height:34px}.globe-pin.is-selected{min-height:48px}
 .session-active .workspace{height:calc(100dvh - 72px - env(safe-area-inset-top));min-height:440px;display:grid;grid-template-rows:minmax(210px,1fr) minmax(190px,43%);gap:0}.session-active .map-stage{height:100%;min-height:0;position:relative}.session-active .sidebar{width:100%;height:100%;margin:0;padding:16px 18px max(18px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0;overflow-y:auto;overscroll-behavior:contain}.session-active .question-heading h2{font-size:21px}.session-active .question-heading{margin-bottom:8px}.session-active .question-meta{font-size:12px}.session-active #questionHelp{font-size:14px;margin:8px 0}.session-active .adaptive-stats{margin-top:12px}.session-active .map-caption{padding:7px 9px}.session-active .map-caption #mapContext{max-width:155px}.session-active .map-options{top:74px}.session-active .map-options[open]{top:auto}.session-active .journey-toast{padding:10px;gap:8px}.session-active .journey-toast div>span{max-width:190px}.session-active .map-tools{top:10px}.session-active .topbar{margin-top:6px;margin-bottom:6px;min-height:54px;height:auto}
}
@media(max-width:700px) and (max-height:560px){.session-active .workspace{height:auto;min-height:0;display:flex}.session-active .map-stage{height:65dvh;min-height:220px}.session-active .sidebar{height:auto;max-height:none;overflow:visible}}
@media(prefers-reduced-motion:reduce){.geo-success{display:none}.globe-pin{transition:none}}

/* Reserve desktop panel space in the viewport, never in the depth projection. */
@media (min-width:1001px), (min-width:701px) and (pointer:fine){
 .map-stage #globe{inset:96px 16px 16px calc(var(--panel-width) + 32px)}
 .sidebar-collapsed .map-stage #globe{left:16px}
 #globe .cesium-viewer-bottom{max-width:100%}
}
