/* Uses the existing Upspark palette; video presentation is unchanged. */
.geo-shell{max-width:900px}.geo-question{padding-top:32px}.geo-question .question{font-size:clamp(28px,5vw,44px);line-height:1.14;margin:12px 0}.geo-choices{display:grid;gap:10px;margin:24px 0}.geo-choices .choice{margin:0;min-height:68px}.geo-last-choice{border-color:#ab526d;background:#fff0f4}.geo-map{width:100%;height:auto;display:block;overflow:hidden;aspect-ratio:975/610}.geo-state{fill:#e3e9ed;stroke:#fff;stroke-width:1.4;vector-effect:non-scaling-stroke;stroke-linejoin:round;transition:fill .18s}.geo-state.is-found{fill:#7547db}.geo-state.is-neighbor{fill:#94d8bc}.geo-state.is-hint{fill:#ffd983}.geo-state[role=button]{cursor:pointer}.geo-state[role=button]:hover,.geo-state[role=button]:focus-visible{fill:#ffad70;stroke:#102039;stroke-width:2;outline:none}.geo-inset-label{font:600 15px system-ui;fill:#44566b;pointer-events:none}.geo-map-panel{background:#f2f8fa;border:1px solid #d5e4e8;border-radius:22px;padding:12px;overflow:hidden}.geo-map-tools{display:flex;align-items:center;gap:16px;margin:20px 0 12px}.geo-map-tools label{font-weight:700}.geo-map-tools .field{width:auto;flex:1;max-width:260px;min-height:46px}.geo-map-caption{margin:10px 0 20px}.geo-accessible{padding:16px 0}.geo-accessible .field{min-width:0;flex:1}.geo-accessible .btn{flex:none}.geo-question-actions{display:flex;justify-content:space-between;gap:12px;margin-top:20px}.geo-question-actions button{min-height:48px}.geo-hint{background:#fff3cf;border-left:4px solid #df9d00;padding:16px;border-radius:10px;margin-top:16px;color:#4c3b10;line-height:1.5}.geo-drag-tray{display:flex;align-items:center;gap:24px;min-height:145px;padding:10px 16px}.geo-piece{width:135px;height:126px;border:2px dashed #8456ff;background:#f4efff;border-radius:20px;padding:10px;color:#5630b6;cursor:grab;touch-action:none;position:relative;z-index:2;user-select:none}.geo-piece svg{width:100%;height:78px;fill:#8456ff;pointer-events:none}.geo-piece span{display:block;font-weight:700;pointer-events:none}.geo-piece.is-dragging{cursor:grabbing;z-index:20;box-shadow:0 12px 30px #10203930;pointer-events:auto}.geo-discovery{margin-top:28px;border-radius:28px;overflow:hidden;border:1px solid #e4ddec;background:#fff;box-shadow:0 12px 40px #10203908;animation:geo-arrive .28s ease-out}.geo-postcard{background:linear-gradient(115deg,#ddf5ed,#f4efdf);min-height:240px;position:relative;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:20px;isolation:isolate}.geo-postcard h1{font-size:clamp(32px,7vw,60px);line-height:1.06;margin:14px 0 10px;letter-spacing:-1.8px;overflow-wrap:anywhere}.geo-postcard p{font-size:18px;margin:0}.geo-postcard p span{color:#567067}.geo-postcard-shape{width:180px;flex:0 0 30%;filter:drop-shadow(8px 10px 0 #ffffffa8)}.geo-postcard-shape svg{width:100%;max-height:170px;fill:#8456ff}.geo-art-note{position:absolute;bottom:10px;right:20px;font-size:10px;color:#53675f}.geo-discovery-body{padding:26px 32px}.geo-success{font-size:18px;font-weight:750;color:#226949}.geo-fact{font-size:20px;line-height:1.5;margin:18px 0 22px;color:#102039}.geo-mini-map{max-width:500px;margin:auto;background:#f7fafc;border-radius:20px;padding:10px}.geo-rewards{display:flex;gap:12px;margin:22px 0 10px}.geo-rewards>span{background:#fff0d4;border:1px solid #f4d493;color:#674005;padding:12px 20px;border-radius:16px;font-size:25px;font-weight:800}.geo-rewards>span+span{background:#efe7ff;border-color:#d6c4f9;color:#5934a6}.geo-rewards small{font-size:13px;font-weight:600}.geo-sources{font-size:12px;margin-top:22px;border-top:1px solid #edf0f4;padding-top:14px;overflow-wrap:anywhere;color:#526074}.geo-sources summary{cursor:pointer;min-height:36px}.geo-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.geo-stat-grid .card{margin:0;padding:20px 16px}.geo-stat-grid strong{display:block;font-size:34px;color:#6540c4}.geo-stat-grid span{display:block;font-size:12px;line-height:1.4;margin-top:6px}.geo-collection-map{margin-top:18px}.geo-progress{margin-bottom:30px}.geo-learn-hero{background:linear-gradient(130deg,#f6f0ff,#ddf5ed)}.geo-learn-hero .geo-map{max-height:340px;margin:18px 0}.geo-setting-list{display:grid;gap:14px;margin:16px 0}.geo-setting-list .chk{min-height:44px;gap:12px}.geo-setting-list input{width:20px;height:20px;accent-color:#7547db}.geo-shell .quiz-footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}.geo-shell button:focus-visible,.geo-shell select:focus-visible{outline:3px solid #8456ff;outline-offset:3px}@keyframes geo-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:600px){.geo-shell{padding:18px 16px}.geo-shell .quiz-meta{flex-wrap:wrap;gap:12px}.geo-shell .quiz-meta .pill{font-size:10px}.geo-postcard{padding:28px 20px;min-height:205px;gap:8px}.geo-postcard h1{letter-spacing:-1px}.geo-postcard-shape{flex-basis:27%}.geo-discovery-body{padding:20px}.geo-fact{font-size:18px}.geo-stat-grid{grid-template-columns:repeat(2,1fr)}.geo-map-panel{padding:5px}.geo-drag-tray{gap:16px;padding:4px}.geo-question-actions{flex-wrap:wrap}.geo-rewards>span{padding:12px 14px}.geo-shell .question{font-size:30px}}@media(prefers-reduced-motion:reduce){.geo-discovery{animation:none}.geo-state{transition:none}}

.geo-state.geo-context-state{fill:#f0f3f5;stroke:#e0e6e9;pointer-events:none}.geo-state.geo-context-state.is-neighbor{fill:#d5e9df}
