/* Presentation overrides; original controller classes and behavior remain intact. */
html{background:var(--bg);scroll-padding-top:110px}body{background:var(--bg);color:var(--text);font:var(--size-body)/1.6 var(--sans)}h1,h2,h3{font-family:var(--sans);font-weight:700;letter-spacing:-.035em;color:var(--text)}h1{font-size:var(--size-heading);line-height:1.15}h2{font-size:1.75rem}p{line-height:1.65}button,input,select,textarea{font-family:var(--sans)}a:hover{text-decoration:underline;text-underline-offset:4px}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button:disabled{cursor:default}svg.icon{width:22px;height:22px}.eyebrow{font-family:var(--sans);font-size:13px;letter-spacing:.12em;font-weight:700;color:var(--accent)}.pixel-sprite{display:inline-block;width:28px;height:28px;image-rendering:pixelated;flex-shrink:0}.atlas-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:26px;max-width:1320px;margin:auto;padding:22px 32px;border:0;border-bottom:1px solid var(--line);min-height:94px;width:100%;height:auto;background:var(--bg)}.atlas-brand{display:inline-flex;align-items:center;gap:9px;font:700 34px/1 var(--sans);letter-spacing:-2px;color:var(--text);text-decoration:none!important}.atlas-brand .pixel-sprite{color:var(--accent);width:34px;height:34px}.brand-dot{color:var(--target)}.atlas-desktop{display:flex;gap:30px;align-items:center;font-size:16px;font-weight:600}.atlas-desktop>a{padding:10px 0}.atlas-desktop [aria-current=page]{color:var(--accent);box-shadow:0 3px 0 var(--accent)}.atlas-tools{display:flex;gap:18px;align-items:center}.atlas-streak{display:flex;gap:6px;align-items:center;font-size:14px}.atlas-streak .pixel-sprite{color:var(--tomato);width:24px;height:24px}.atlas-streak[data-tier="7"] .pixel-sprite{width:30px;height:30px}.atlas-streak[data-tier="30"] .pixel-sprite{width:34px;height:34px;filter:drop-shadow(2px 2px 0 var(--sunflower))}.atlas-progress{font-size:14px;font-weight:600}.atlas-progress span{color:var(--muted);display:block;font-size:12px}.atlas-theme,.atlas-menu-button{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:44px;height:44px;min-height:44px;padding:0;background:var(--surface);font-size:22px;color:var(--text)}.atlas-menu-button{display:none}.atlas-learn{position:relative}.atlas-learn summary{cursor:pointer;list-style:none;padding:10px 0}.atlas-learn>div{position:absolute;top:100%;left:-20px;min-width:210px;background:var(--surface);padding:14px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 24px #0002;display:grid;gap:8px}.atlas-learn a{padding:8px}.atlas-menu{padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);width:min(90vw,420px)}.atlas-menu::backdrop{background:#182c3277}.atlas-menu nav{display:grid;gap:8px;font-size:20px}.atlas-menu nav a{padding:12px;border-bottom:1px solid var(--line)}.atlas-menu [data-menu-close]{float:right}.atlas-tabs{display:none}.atlas-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;max-width:1200px;margin:70px auto 0;padding:36px 32px 48px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.atlas-footer nav{display:flex;flex-direction:column;gap:10px;font-size:15px}.atlas-footer strong{color:var(--text)}.atlas-footer p{margin-top:12px}.app-frame{padding:0;isolation:auto}.world-scene{display:none}.app-frame>main,body>main{width:min(100%,1200px);max-width:1200px;margin:0 auto;padding:34px 32px;min-height:60vh}.game-layout{display:block;max-width:none;margin:auto}.game-column{width:100%;min-width:0}.quiz-log{max-width:800px;margin:32px auto 0;border:1px solid var(--line);border-radius:12px;padding:12px 18px}.quiz-log>summary{font-size:15px;color:var(--muted)}.daily-tracker{position:static;border:0;padding:24px;max-width:600px;margin:auto;background:var(--surface);border-radius:var(--radius)}.view-result .game-layout>.daily-tracker{margin-top:36px}.play-heading{padding:0 0 18px;border-bottom:0;gap:12px;font-size:14px}.play-date{font:14px var(--sans);color:var(--muted)}.play-heading .eyebrow{font-size:12px}.live-score{font-size:14px;color:var(--muted)}.question-progress.numbered-progress{display:flex;justify-content:center;gap:10px;width:auto;max-width:none;margin:2px auto 20px;border:0}.numbered-progress span{border:2px solid var(--line);border-radius:50%;width:28px;height:28px;flex:0 0 28px;min-height:0;font-size:11px;display:flex;align-items:center;justify-content:center;background:var(--surface);color:var(--muted)}.numbered-progress span.current{background:var(--sunflower);border-color:var(--text);color:var(--ink)}.numbered-progress span.passed{background:var(--success-bg);color:var(--success);border-color:var(--success)}.numbered-progress span.missed{background:var(--wrong-bg);color:var(--wrong);border-color:var(--wrong)}.numbered-progress .icon{width:16px;height:16px}.question-card{border:0;padding:0;background:transparent}.question-title{text-align:center;margin:0 0 24px}.question-title>.eyebrow{font-size:12px;color:var(--muted)}.question-title h1{margin:8px 0 0;font-size:clamp(28px,3.2vw,46px)}.question-counter,.signal-dot{display:none}.question-visual{height:auto;min-height:0;margin:0 0 24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden;padding:32px;position:relative}.question-visual.flag{height:340px;background:var(--surface);display:flex;justify-content:center;align-items:center}.quiz-flag{max-width:80%;width:400px!important;height:240px!important;object-fit:contain;filter:drop-shadow(0 6px 8px #0001)}.visual-corner,.visual-label{display:none}.question-visual.map{padding:0;border-color:var(--coast);background:var(--ocean);height:auto}.question-visual.capital{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--raised)}.capital-country-name{font-size:42px;font-weight:700;color:var(--text)}.capital-continent{font-size:16px;color:var(--muted)}.capital-country-flag .flag{width:88px;height:60px}.answer-toolbar{display:none}.answer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:920px;margin:auto}.answer{min-height:72px;padding:18px 22px;background:var(--surface);border:1px solid var(--line-strong);border-radius:14px;color:var(--text);box-shadow:0 3px 0 var(--line);font-size:20px;transition:transform .12s,box-shadow .12s;display:flex;align-items:center;gap:16px}.answer:hover:not(:disabled){background:var(--raised);border-color:var(--accent);transform:translateY(-2px)}.answer:active:not(:disabled){transform:translateY(3px);box-shadow:none}.option-number{font:600 13px var(--sans);border-radius:7px;width:26px;height:26px;color:var(--muted);background:var(--raised);display:grid;place-items:center}.answer>.icon{margin-left:auto}.answer.correct{background:var(--success-bg);border-color:var(--success);color:var(--success);opacity:1;box-shadow:0 3px 0 var(--success)}.answer.incorrect{background:var(--wrong-bg);border-color:var(--wrong);color:var(--wrong);opacity:1}.answer.muted{opacity:.65;background:var(--surface)}.quiz-help,.recall-help{max-width:920px;margin:22px auto 0;gap:16px;font-size:15px;color:var(--muted)}.hint-button{padding:9px 15px;background:var(--raised);border-radius:10px;color:var(--accent);font-size:15px;min-height:44px}.hint-button .icon{width:18px}.play-bottom{font-size:14px;max-width:920px;margin:22px auto 0;color:var(--muted)}.atlas-settings{max-width:920px;margin:18px auto 0;font-size:15px}.atlas-settings>summary{width:max-content;margin-left:auto;padding:8px 12px;border-radius:12px;color:var(--muted);list-style:none;cursor:pointer}.atlas-settings[open]{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px}.auto-advance-setting{margin:0;flex-wrap:wrap;font-size:15px;gap:14px;padding:10px 0}.auto-advance-setting button{font-size:15px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:10px}.atlas-settings p{font-size:14px;color:var(--muted)}.atlas-settings .keyboard-hint{display:block;font-size:14px}.button,button.primary,.seo-mini button{border-radius:12px;min-height:48px;padding:13px 22px;font:700 16px/1.4 var(--sans);border:1px solid var(--line-strong);box-shadow:0 3px 0 var(--line);gap:12px}.button.primary,button.primary,.seo-mini [data-start]{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:0 3px 0 var(--pressed)}.button.secondary{background:var(--surface);color:var(--text)}.button:active,button.primary:active{transform:translateY(2px);box-shadow:none}.text-link{color:var(--accent);font-size:16px}input,select,textarea,.seo-mini input{border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--text);font-size:18px;padding:13px}.feedback{padding:20px;border-radius:14px;background:var(--raised);font-size:16px;color:var(--text);border:1px solid var(--line)}.feedback.success{background:var(--success-bg);color:var(--success)}.feedback.learning{background:var(--wrong-bg);color:var(--wrong)}.feedback p{font-size:16px}.feedback-icon{background:none;color:inherit}.earned-xp{color:inherit;font-size:14px}.answer-response{max-width:920px;margin:22px auto;display:grid;grid-template-columns:1fr auto;gap:18px}.motion-answer .feedback.success{animation:stamp-land .35s ease-out}.motion-answer .feedback.success::after{content:'✦  ·  ✧';font-size:24px;float:right;color:var(--success);animation:confetti-lite .7s ease-out}.result-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:var(--shadow);background-image:repeating-linear-gradient(0deg,transparent,transparent 31px,var(--line) 32px);background-size:100% 32px}.result-intro{padding:12px 0 26px;align-items:center}.result-intro h1{font-size:clamp(36px,5vw,64px)}.result-score strong{font-size:80px;color:var(--accent)}.result-score>span{font-size:14px;color:var(--muted)}.result-score b{color:var(--accent)}.result-stamp{display:flex;align-items:center;gap:10px;justify-content:center;border:3px double var(--accent);border-radius:8px;transform:rotate(-7deg);padding:12px;font:700 12px/1.3 var(--data-font);color:var(--accent);width:130px;margin:0 0 22px auto;background:var(--surface)}.result-stamp .pixel-sprite{width:26px}.community-comparison{background:var(--surface);padding:26px 0;border-block:1px solid var(--line);margin-bottom:24px}.comparison-summary h2{font-size:30px}.histogram-track i{background:var(--line-strong);border-radius:8px 8px 0 0}.histogram-column.you .histogram-track i{background:var(--accent)}.comparison-heading,.comparison-caption,.comparison-footnote,.comparison-peers,.histogram-score,.histogram-count{font-size:14px;color:var(--muted)}.comparison-peers b,.cohort-count strong{color:var(--accent)}.journey-recap{margin-top:28px}.journey-recap button{background:var(--surface);padding:16px;border-radius:12px;margin-bottom:8px;border:1px solid var(--line)}.journey-recap b{font-size:18px}.journey-recap small{font-size:14px}.route-details{background:var(--surface);padding:16px;border-radius:12px}.result-map,.passport-map,.modal-map,.map-panel{background:var(--ocean);border-radius:18px;overflow:hidden;border:1px solid var(--coast)}.world-map .land,.result-map .land,.map-panel .land,.seo-locator .land{fill:var(--land);stroke:var(--coast);stroke-width:.6}.world-map .highlight,.seo-locator .target{fill:var(--target);stroke:var(--text)}.world-map .visited,.map-panel .found{fill:var(--success)}.map-panel .missed{fill:var(--amber)}.map-panel .outside{fill:var(--raised)}.recall-map{background:var(--ocean);width:100%;min-height:460px}.recall-map .land{fill:var(--land);stroke:var(--coast)}.recall-map .map-selected{fill:var(--sunflower)}.recall-map .map-correct{fill:var(--success)}.recall-map .map-wrong{fill:var(--wrong)}.map-controls button{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:9px;min-width:44px;min-height:44px}.atlas-map{position:relative;background:var(--ocean);border-radius:18px;overflow:hidden}.atlas-map>svg.world-map{display:block;width:100%;height:auto;aspect-ratio:2/1;touch-action:none;cursor:grab}.atlas-map>svg.world-map:active{cursor:grabbing}.atlas-map .land{fill:var(--land);stroke:var(--coast);stroke-width:.7;vector-effect:non-scaling-stroke}.atlas-map .highlight{fill:var(--target);stroke:var(--target-ink);stroke-width:1.5;vector-effect:non-scaling-stroke}.atlas-map[data-result=correct] .highlight{fill:var(--success)}.atlas-map[data-result=wrong] .highlight{fill:var(--wrong)}.atlas-map .locator-ring{fill:none;stroke:var(--target);stroke-width:3;vector-effect:non-scaling-stroke;stroke-dasharray:5 3}.atlas-map .locator-dot{fill:var(--target);stroke:var(--target-ink);stroke-width:2;vector-effect:non-scaling-stroke}.atlas-map .map-mark{fill:var(--text);font-weight:700;font-family:var(--sans);paint-order:stroke;stroke:var(--land);stroke-width:.8}.atlas-map-controls{position:absolute;right:16px;bottom:16px;display:flex;gap:6px}.atlas-map-controls button{background:var(--surface);border:1px solid var(--coast);color:var(--text);border-radius:10px;min-height:42px;min-width:42px;padding:8px;font-size:18px;box-shadow:0 2px 0 #0002}.atlas-minimap{position:absolute;bottom:16px;left:16px;width:132px;height:66px;background:var(--ocean);border:1px solid var(--coast);border-radius:8px;overflow:hidden;pointer-events:none}.atlas-minimap svg{display:block;width:100%;height:100%}.atlas-minimap path{fill:var(--land)}.atlas-minimap rect{fill:none;stroke:var(--target);stroke-width:10}.atlas-map-caption{font-size:14px;color:var(--text);padding:8px 16px;background:var(--surface);border-top:1px solid var(--coast);display:flex;justify-content:space-between;gap:12px}.atlas-map-caption b{color:var(--accent)}.achievement-section{margin:42px 0}.achievement-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:22px}.achievement{background:var(--surface);border:2px dashed var(--line-strong);border-radius:16px;padding:24px 18px;text-align:center}.achievement.earned{border-color:var(--accent);background:var(--accent-dark)}.achievement .pixel-sprite{width:48px;height:48px;color:var(--accent);margin-bottom:12px}.achievement h3{font-size:18px}.achievement p{font-size:14px;color:var(--muted);margin:10px 0}.achievement>span{font-size:13px;font-weight:700;color:var(--accent)}.atlas-fine{font-size:14px;color:var(--muted);margin-top:15px}.page-intro{padding:8px 0 32px}.page-intro p,.passport-heading p{font-size:18px;color:var(--muted)}.mode-card,.review-banner,.country-card,.country-stamp,.level-progress,.activity{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.mode-grid{gap:18px}.mode-card h3{font-size:24px}.mode-card p{font-size:16px}.mode-index{color:var(--accent)}.mode-card:hover{background:var(--raised)}.country-card .flag{background:white}.country-card h3{font-size:18px}.country-card p{font-size:15px;color:var(--muted)}.practice-controls,.practice-format{border-color:var(--line);font-size:16px}.segmented button,.continent-tabs button{border-radius:10px;padding:12px 16px;font-size:15px;color:var(--muted)}.segmented .selected,.segmented [aria-pressed=true],.continent-tabs .selected{background:var(--accent);color:var(--on-accent)}.passport-stats strong{color:var(--accent)}.passport-stats{font-size:16px}.passport-stats>div{border-color:var(--line)}.passport-map-heading,.passport-map-caption{background:var(--surface);padding:18px;color:var(--text)}.stamp-grid{gap:16px}.country-stamp{padding:16px}.country-stamp b{font-size:17px}.level-badge{border-color:var(--accent);color:var(--accent);border-radius:14px}.calendar-day.today{border-color:var(--accent)}.calendar-day.completed{color:var(--accent);background:var(--accent-dark)}.calendar-day{font-size:14px}.tracker-stats strong{color:var(--accent)}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:20px}.country-note,.data-note,.info-modal p{font-size:17px;color:var(--muted)}.modal-close{color:var(--text)}#toast{background:var(--text);color:var(--bg);border-radius:12px}.field-guide{max-width:none;padding:0}.field-guide>main{max-width:1136px;margin:0 auto;padding:32px}.field-hero{padding:24px 0 30px}.field-hero h1{font-size:clamp(34px,5vw,60px)}.field-hero>p{font-size:19px;color:var(--muted)}.field-facts{font-size:14px;color:var(--accent);gap:16px;border-color:var(--line)}.field-actions{margin:24px 0}.field-section{grid-template-columns:40px minmax(0,1fr);border-color:var(--line)}.field-section p{font-size:17px;color:var(--muted)}.field-number{font-size:14px;color:var(--accent)}.field-related{font-size:17px}.field-related nav{gap:16px}.field-related a{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px}.heading{background:var(--raised);border:1px solid var(--line);border-radius:22px;padding:32px;margin-bottom:20px}.heading h1{font-size:clamp(32px,4vw,52px)}.heading .intro{margin:10px 0;color:var(--muted);font-size:18px}.topic-notes{font-size:17px;color:var(--muted);line-height:1.7}.topic-notes h2{font-weight:700;color:var(--text)}#controls{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:16px;margin-bottom:14px}#controls.playing{background:var(--surface);border:1px solid var(--line);top:0}#controls>p{font-size:17px;margin-bottom:16px}.stats-settings{padding:14px 18px;border:1px solid var(--line);border-radius:12px;margin:14px 0 24px;max-width:800px;background:var(--surface)}.stats-settings>summary{font-size:15px;font-weight:600;color:var(--muted)}.stats-settings #activity-preference{margin:12px 0}.stats-settings label{font-size:16px;display:flex;align-items:center}.stats-settings input{width:20px!important;height:20px;margin:0 12px 0 0!important;accent-color:var(--accent)}.map-panel .legend{background:var(--surface);font-size:14px;color:var(--muted)}.country-row{border-color:var(--line);font-size:16px}.country-row small{color:var(--muted);font-size:12px}.country-row.found,.capital-row.found{color:var(--success)}.country-row.missed,.capital-row.missed{color:var(--amber)}.blank{background:var(--line-strong)}.flag-tile{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);color:var(--text);font-size:16px;min-height:190px}.flag-tile img{background:white;border-radius:4px}.flag-tile.found{background:var(--success-bg);border-color:var(--success);color:var(--success);animation:flag-reveal .25s ease-out}.flag-tile.missed{border-color:var(--amber);color:var(--amber)}.flag-number{font:12px var(--sans);color:var(--muted)}.capital-row{border-color:var(--line);font-size:17px;padding:16px}.collection{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.quiz-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow);gap:12px;position:relative;overflow:hidden}.quiz-card h3{font-size:25px;font-weight:700}.quiz-card p{font-size:16px;color:var(--muted)}.quiz-card a{color:var(--accent);font-weight:700;min-height:44px;display:flex;align-items:center}.quiz-thumbnail{display:block;width:100%;height:100px;background:var(--ocean);border-radius:10px}.quiz-thumbnail path{fill:var(--land);stroke:var(--coast);stroke-width:.5}.quiz-thumbnail .in-region{fill:var(--accent)}.quiz-chip{display:inline-block;width:max-content;padding:4px 10px;border-radius:7px;font-size:13px;font-weight:700;background:var(--accent-dark);color:var(--accent)}.quiz-chip[data-type=Flags]{background:var(--wrong-bg);color:var(--wrong)}.quiz-chip[data-type=Capitals]{background:var(--raised);color:var(--text)}.quiz-filters{display:flex;align-items:end;gap:18px;margin:28px 0;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.quiz-filters label{color:var(--text);font-size:15px}.quiz-filters select{display:block;margin-top:5px;font-size:16px;min-width:190px}.quiz-filters [role=status]{color:var(--muted);font-size:15px;padding-bottom:10px}.seo-breadcrumbs{color:var(--muted);font-size:14px;margin:0 0 24px}.seo-breadcrumbs a,.seo-content a,.seo-answers a{color:var(--accent)}.seo-answers{border-color:var(--line);padding:24px;background:var(--surface);border-radius:16px}.seo-answers summary{font-size:19px;font-weight:700}.seo-answer-list{gap:18px}.seo-answer-list li{border:1px solid var(--line);background:var(--surface);padding:14px;border-radius:12px;font-size:16px}.seo-facts div{border-color:var(--line);padding:20px;background:var(--surface);border-radius:14px}.seo-facts dt{color:var(--muted);font-size:15px}.seo-facts dd{font-size:19px;color:var(--text)}.seo-note{font-size:15px;color:var(--muted)}.seo-flag{height:240px;width:360px;background:white;border-radius:10px;padding:12px;margin-bottom:22px}.seo-mini{background:var(--raised);border-color:var(--line);border-radius:18px}.seo-mini input{background:var(--surface);color:var(--text)}.seo-mini p{font-size:16px}.seo-comparison figure{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.seo-comparison img{background:white}.seo-locator{background:var(--ocean);border-radius:18px;margin-top:22px}.atlas-hero-map{width:100%;height:150px;max-width:400px;object-fit:contain;background:var(--ocean);border-radius:16px;float:right;margin:0 0 20px 28px}.style-swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px}.style-swatch{border:1px solid var(--line);border-radius:14px;padding:18px}.style-swatch i{display:block;height:70px;border:1px solid var(--line);border-radius:9px;margin-bottom:12px}.styleguide section{margin:40px 0}.result-download{display:inline-flex;align-items:center;gap:8px}.atlas-settings button[data-sound-toggle]{min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;margin:10px 0;background:var(--surface);color:var(--text)}
@keyframes stamp-land{from{transform:scale(1.05) rotate(-1deg);opacity:.5}to{transform:scale(1);opacity:1}}@keyframes confetti-lite{from{transform:translateY(10px) scale(.7);opacity:0}50%{opacity:1}to{transform:translateY(-12px);opacity:0}}@keyframes flag-reveal{from{transform:rotateX(12deg)}to{transform:rotateX(0)}}
@media(min-width:1000px){.question-visual.flag,.question-visual.capital{max-width:920px;margin-left:auto;margin-right:auto}.keyboard-hint{opacity:.3}.atlas-settings:hover .keyboard-hint,.atlas-settings:focus-within .keyboard-hint{opacity:1}}
@media(max-width:1000px){.atlas-desktop{gap:18px}.atlas-tools{gap:10px}.atlas-streak span,.atlas-progress{display:none}.atlas-header{gap:18px}.achievement-grid{grid-template-columns:repeat(2,1fr)}.collection{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html{scroll-padding-top:20px}.atlas-header{min-height:76px;padding:16px 20px;gap:14px}.atlas-brand{font-size:31px}.atlas-brand .pixel-sprite{width:28px;height:28px}.atlas-desktop{display:none}.atlas-menu-button{display:grid}.atlas-tools{margin-left:auto;gap:10px}.atlas-streak{font-size:16px}.atlas-theme{width:40px;height:40px;min-height:40px}.atlas-tabs{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:30;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--line);padding:6px 8px max(8px,env(safe-area-inset-bottom));gap:0;box-shadow:0 -3px 12px #0001}.atlas-tabs a{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;font-size:12px;font-weight:700;color:var(--muted);gap:1px}.atlas-tabs a>span{font-size:23px;line-height:1.1}.atlas-tabs a[aria-current]{color:var(--accent)}body{padding-bottom:78px}.app-frame>main,body>main,.field-guide>main{padding:22px 20px;width:100%;min-height:0}.play-heading{font-size:12px;padding-bottom:12px}.play-date{font-size:12px}.live-score{font-size:12px}.question-progress.numbered-progress{margin-bottom:14px;gap:9px}.numbered-progress span{width:24px;height:24px;flex-basis:24px;font-size:10px}.question-title{margin-bottom:18px}.question-title h1{font-size:29px;line-height:1.18;margin-top:8px}.question-title>.eyebrow{font-size:11px}.question-visual.flag{height:240px;padding:22px;margin-bottom:20px}.quiz-flag{width:260px!important;height:170px!important;max-width:100%}.question-visual.capital{min-height:230px;padding:20px}.capital-country-name{font-size:32px}.question-visual.map{margin-left:-20px;margin-right:-20px;border-radius:0;border-left:0;border-right:0;width:calc(100% + 40px);margin-bottom:20px}.question-visual.map .atlas-map{border-radius:0}.question-visual.map .atlas-map>svg.world-map{height:55svh;min-height:380px;aspect-ratio:auto}.recall-map{height:55svh;min-height:380px}.recall-map-wrap{margin-left:-20px;margin-right:-20px}.atlas-minimap{width:98px;height:49px;bottom:12px;left:12px}.atlas-map-controls{right:12px;bottom:12px}.atlas-map-caption{font-size:12px;padding:9px 14px}.answer-options{grid-template-columns:1fr;gap:10px}.answer{min-height:60px;padding:14px 18px;font-size:18px}.answer>.icon{width:19px}.quiz-help{font-size:14px;align-items:flex-start}.hint-button{white-space:nowrap}.play-bottom{font-size:12px}.answer-response{display:flex;flex-direction:column}.next-button{width:100%}.feedback p{font-size:15px}.atlas-settings{font-size:14px}.keyboard-hint{display:none!important}.quiz-log{margin-top:24px}.atlas-footer{margin-top:36px;padding:28px 20px;grid-template-columns:1fr 1fr;gap:26px}.atlas-footer>div{grid-column:1/-1}.atlas-footer p{font-size:15px}.atlas-footer nav{font-size:15px}.result-card{padding:22px 18px}.result-intro{gap:18px;display:flex;flex-wrap:wrap}.result-intro h1{font-size:38px}.result-score strong{font-size:66px}.result-intro p{font-size:16px}.result-score{margin-left:auto}.result-stamp{width:112px;padding:8px;font-size:10px}.comparison-summary h2{font-size:26px}.comparison-summary p{font-size:14px}.comparison-caption,.comparison-peers,.comparison-footnote{font-size:12px;gap:10px;flex-wrap:wrap}.comparison-heading{font-size:12px}.community-comparison{padding:20px 0}.result-actions{display:flex;flex-direction:column;gap:12px}.result-actions>*{width:100%}.achievement-grid{gap:12px}.achievement{padding:20px 12px}.achievement h3{font-size:17px}.achievement p{font-size:13px}.achievement>span{font-size:12px}.passport-heading{display:block}.passport-stats{grid-template-columns:1fr 1fr;gap:18px}.passport-stats strong{font-size:35px}.level-badge{margin-top:18px;width:max-content}.mode-grid{grid-template-columns:1fr}.mode-card{padding:22px}.country-grid{grid-template-columns:1fr 1fr;gap:12px}.country-card{padding:16px;min-width:0}.country-card h3{font-size:16px}.country-card p{font-size:14px}.atlas-toolbar{display:block}.atlas-legend{display:none}.field-hero{padding:12px 0 24px}.field-hero h1{font-size:36px;letter-spacing:-.035em}.field-hero>p{font-size:17px}.field-actions{gap:16px;align-items:stretch}.field-actions .button{width:100%}.field-facts{font-size:12px;gap:12px}.field-section{grid-template-columns:1fr;gap:8px;padding:28px 0}.field-section p{font-size:17px}.field-number{font-size:12px}.field-section h2{font-size:25px}.field-related nav{grid-template-columns:1fr}.heading{padding:24px;margin-bottom:16px}.heading h1{font-size:34px}.heading .intro{font-size:16px}#controls{padding:20px}#controls>p{font-size:16px}#controls #start{width:100%}#controls.playing{padding:14px}.flag-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flag-tile{min-height:170px;padding:25px 12px 14px;font-size:15px}.flag-tile img{height:85px}.collection{grid-template-columns:1fr;gap:18px;margin:20px 0 34px}.quiz-card{padding:22px}.quiz-filters{flex-wrap:wrap;gap:12px;padding:16px}.quiz-filters label{flex:1;min-width:120px}.quiz-filters select{width:100%;min-width:0;font-size:15px;padding:10px}.quiz-filters [role=status]{width:100%;padding:0}.seo-answers{padding:20px}.seo-answer-list{grid-template-columns:1fr}.seo-facts{grid-template-columns:1fr 1fr;gap:12px}.seo-facts div{padding:14px;min-width:0}.seo-facts dd{font-size:17px;overflow-wrap:anywhere}.seo-facts dt{font-size:13px}.seo-flag{width:100%;height:200px}.seo-mini{padding:20px}.seo-comparison{grid-template-columns:1fr}.atlas-hero-map{float:none;width:100%;max-width:none;height:120px;margin:0 0 20px}.stats-settings{padding:12px 16px}.map-controls{flex-wrap:wrap}.map-controls button{font-size:16px}.recall-input-row{flex-direction:column}.recall-input-row button{width:100%}.seo-links{font-size:16px}.journey-recap .recap-label{font-size:12px}.boot{padding:25px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.quiz-shell{width:100%;max-width:none}.atlas-map{position:relative;overflow:hidden;background:var(--ocean)}.atlas-map>svg.world-map{display:block;width:100%;height:auto;aspect-ratio:2;touch-action:none;cursor:grab}.atlas-map>svg.world-map:active{cursor:grabbing}.atlas-map .land{fill:var(--land);stroke:var(--coast);stroke-width:.7;vector-effect:non-scaling-stroke}.atlas-map .highlight{fill:var(--target);stroke:var(--text)}.atlas-map.correct .highlight{fill:var(--success)}.atlas-map.wrong .highlight{fill:var(--wrong)}.atlas-marker-ring{fill:none;stroke:var(--target);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:3 2}.atlas-marker{fill:var(--target);stroke:var(--surface);stroke-width:2;vector-effect:non-scaling-stroke}.atlas-minimap{position:absolute;width:140px;height:70px;bottom:16px;left:16px;background:var(--ocean);border:2px solid var(--surface);border-radius:8px;box-shadow:0 2px 8px #0002;pointer-events:none}.atlas-viewport{fill:transparent;stroke:var(--text);stroke-width:8}.atlas-map-controls{position:absolute;bottom:16px;right:16px;display:flex;gap:6px}.atlas-map-controls button{width:44px;height:44px;min-height:44px;background:var(--surface);border:1px solid var(--coast);border-radius:9px;color:var(--text);font-size:24px}.atlas-map-caption{position:absolute;top:16px;left:16px;padding:8px 16px;background:var(--surface);color:var(--text);font-weight:700;border-radius:9px}.question-title{display:block}.question-title>.eyebrow{display:block;text-align:center}

.view-quiz .game-layout{max-width:none}.question-visual.map{display:block}.question-visual.map .atlas-map{width:100%}.atlas-map .quiz-map{max-height:none;width:100%}
[hidden]{display:none!important}.atlas-hero-map path{fill:var(--accent);stroke:var(--surface);stroke-width:.5}.heading::after,.field-hero::after{content:'';display:table;clear:both}.styleguide .feedback{padding:20px;margin:18px 0}.styleguide .pixel-sprite{width:48px;height:48px;color:var(--accent)}
.atlas-streak[data-tier="3"] .pixel-sprite{width:27px;height:27px}.atlas-menu [data-menu-close]{min-width:44px;min-height:44px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--text)}
/* Polish 1: reserve bottom navigation space and fit phone questions. */
@media(max-width:760px){
 body{padding-bottom:var(--tab-clearance)}
 .app-frame>main{padding-bottom:calc(var(--tab-clearance) + 16px)}
 .atlas-tabs{min-height:var(--tab-clearance);box-sizing:border-box;padding-bottom:max(8px,env(safe-area-inset-bottom))}
 .view-quiz .atlas-header{min-height:56px;padding:8px 12px}
 .view-quiz main{padding:8px 12px calc(var(--tab-clearance) + 16px)}
 .view-quiz .play-heading{min-height:22px;padding:0;font-size:11px}
 .view-quiz .play-date{font-size:11px}
 .view-quiz .question-progress.numbered-progress{margin:4px auto 6px;gap:8px}
 .view-quiz .numbered-progress span{width:20px;height:20px;flex-basis:20px}
 .view-quiz .question-title{margin:0 0 8px}
 .view-quiz .question-title>.eyebrow{display:none}
 .view-quiz .question-title h1{font-size:24px;line-height:1.15;margin:0}
 .view-quiz .question-visual.map{width:calc(100% + 24px);margin:0 -12px 8px}
 .view-quiz .question-visual.map .atlas-map>svg.world-map{height:clamp(115px,calc(100svh - 470px),40svh);min-height:0;aspect-ratio:auto}
 .view-quiz .answer-options{gap:6px}
 .view-quiz .answer{min-height:44px;padding:8px 14px;font-size:16px;line-height:1.25}
 .view-quiz .answer-key{font-size:12px}
 .view-quiz .quiz-help{margin-top:10px}
 .view-quiz .atlas-minimap{width:82px;height:41px;bottom:8px;left:8px}
 .view-quiz .atlas-map-controls{right:8px;bottom:8px;gap:4px}
}
/* Polish 2: yellow question, green correct location, red selected mistake. */
.atlas-map .highlight{fill:var(--target);stroke:var(--target-ink);stroke-width:2}
.atlas-map.correct .highlight,.atlas-map.wrong .highlight{fill:var(--success);stroke:var(--text)}
.atlas-map .land.wrong-choice{fill:var(--wrong);stroke:var(--text);stroke-width:2}
.atlas-marker-ring{stroke:var(--target-ink)}.atlas-marker{fill:var(--target);stroke:var(--target-ink)}
/* Polish 4: shared action and keyboard focus treatment. */
button{color:var(--text);background:var(--surface)}
.button.primary,button.primary,#start,.next-button,.result-actions .primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent);box-shadow:0 2px 0 var(--pressed)}
.button.primary:hover,button.primary:hover,#start:hover,.next-button:hover{background:var(--accent);color:var(--on-accent);filter:brightness(.95)}
:focus-visible{outline:3px solid var(--focus)!important;outline-offset:3px!important;box-shadow:none!important}
h1:focus:not(:focus-visible){outline:none}
/* Polish 5: leave the question in context when feedback is revealed. */
.answer-response{scroll-margin-bottom:24px}
@media(min-width:761px){.motion-answer .question-visual.map .atlas-map>svg.world-map{height:min(30vh,270px);aspect-ratio:auto}.motion-answer .question-visual.flag{height:220px}.motion-answer .quiz-flag{height:170px!important}.motion-answer .question-title{margin-bottom:12px}.motion-answer .answer{min-height:54px;padding:12px 18px}.motion-answer .question-visual{margin-bottom:12px}}
@media(max-width:760px){.answer-response{scroll-margin-bottom:calc(var(--tab-clearance) + 12px)}}
/* Polish 6: plain metadata, not template eyebrows. */
.eyebrow,.field-facts,.play-heading,.comparison-heading,.recap-heading{letter-spacing:normal;text-transform:none;font-weight:400}
.eyebrow{display:inline-block;width:max-content;max-width:100%;padding:3px 8px;border-radius:6px;background:var(--raised);color:var(--muted);font-size:13px}
.field-number,.mode-index,.page-index{display:none}
.field-section{display:block}.field-section>div{width:100%}.field-facts span{padding:3px 8px;background:var(--raised);border-radius:6px;font-size:14px;font-weight:400}
/* Polish 9: use the capital question space for useful country context. */
.question-visual.capital{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:24px;min-height:260px}
.capital-identity{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}
.capital-country-flag .flag{width:180px;height:116px;object-fit:contain;border:1px solid var(--line);background:white;border-radius:7px}
.capital-country-name{font-size:30px;text-align:center}.capital-location{min-width:0;width:100%;border:1px solid var(--coast);border-radius:14px;overflow:hidden}
.capital-location .atlas-map>svg.world-map{height:230px;aspect-ratio:auto}.capital-location .atlas-minimap{display:none}
@media(max-width:760px){.question-visual.capital{padding:12px;gap:12px;grid-template-columns:1fr 1fr;min-height:0}.capital-country-flag .flag{width:160px;max-width:100%;height:100px}.capital-country-name{font-size:20px}.capital-continent{font-size:13px}.capital-location .atlas-map>svg.world-map{height:190px}.capital-location .atlas-map-controls{gap:2px;right:4px;bottom:4px}.capital-location .atlas-map-controls button{min-width:36px;width:36px}}
/* Polish 11: one secondary control row; a single sheet on phones. */
.quiz-secondary-row{display:flex;align-items:flex-start;justify-content:center;gap:28px;margin:20px 0;font-size:14px}
.quiz-secondary-row .atlas-settings,.quiz-secondary-row .quiz-log,.quiz-secondary-row .play-bottom{position:relative;margin:0;padding:0;border:0;background:none;max-width:none;font-size:14px}
.quiz-secondary-row summary,.quiz-secondary-row .play-bottom button{padding:10px 6px;min-height:44px;cursor:pointer;color:var(--muted);font-size:14px}
.quiz-secondary-row .atlas-settings[open]{padding:12px;border:1px solid var(--line);background:var(--surface);border-radius:12px}
.quiz-secondary-row .daily-tracker{width:320px;max-width:100%;padding:16px}
.quiz-more-wrap{text-align:center;margin:12px 0}.quiz-more-trigger{padding:10px 20px;border:1px solid var(--line);border-radius:12px;min-height:44px}
.quiz-more{width:calc(100vw - 24px);max-width:480px;max-height:80svh;padding:20px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:18px}
.quiz-more::backdrop{background:#182c3280}.quiz-more [data-more-close]{float:right;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:10px}
.quiz-more .quiz-secondary-row{display:flex;flex-direction:column;gap:10px;text-align:left}.quiz-more .quiz-secondary-row>*{width:100%}.quiz-more .keyboard-hint{display:none}
@media(max-width:760px){.question-visual.capital{grid-template-columns:160px minmax(0,1fr)}}
.popular-quizzes{max-width:1136px;margin:48px auto 24px;padding:28px 0;border-top:1px solid var(--line)}.popular-quizzes>p{max-width:760px;color:var(--muted);margin:12px 0 24px}.popular-quizzes h3{font-size:21px}.popular-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 22px}.popular-grid a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--accent);font-weight:600;min-height:64px}.popular-grid a span{flex-shrink:0}
@media(max-width:760px){.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.popular-grid a{padding:16px;font-size:15px}.popular-quizzes{margin-top:28px;padding:24px 0}}
/* Polish 13: identify quiz types through their artwork. */
.flag-collage{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:center;justify-items:center;height:130px;padding:12px;background:var(--raised);border-radius:10px}
.flag-collage img{display:block;width:100%;max-width:76px;height:30px;object-fit:contain;filter:drop-shadow(0 1px 1px #0002)}
.quiz-thumbnail{height:130px}.quiz-thumbnail .capital-dot{fill:var(--target-ink);stroke:var(--surface);stroke-width:1;vector-effect:non-scaling-stroke}.states-thumbnail{object-fit:contain;padding:4px}
/* Polish 14: compact, single-line header. */
.atlas-header{flex-wrap:nowrap}.atlas-tools{flex-shrink:0;gap:12px}.atlas-desktop{white-space:nowrap;gap:24px}.atlas-brand{flex-shrink:0}
.atlas-progress{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);padding:8px 10px;border-radius:10px;white-space:nowrap}
.atlas-progress .pixel-sprite{width:22px;height:22px;color:var(--accent)}.atlas-progress span{display:inline;font-size:14px;color:var(--text)}
@media(max-width:1000px){.atlas-desktop{gap:18px}.atlas-progress{display:inline-flex}}
@media(max-width:760px){.atlas-progress{display:none}.atlas-tools{gap:8px}}
h1[tabindex="-1"]:focus{outline:none!important}.answer.muted,.answer:disabled{opacity:1}.answer.muted{color:var(--muted)}
.atlas-map.correct .atlas-marker,.atlas-map.wrong .atlas-marker{fill:var(--success)}
/* Remove inherited short visual/flag limits in capital prompts. */
.view-quiz .question-visual.capital{height:auto;min-height:0}
.capital-country-flag{display:block;width:180px;height:116px;flex-shrink:0}
.capital-country-flag .flag{display:block;width:100%;height:100%;max-height:none;object-fit:contain}
.capital-continent,.practice-controls label,.practice-controls legend,.complete-status{letter-spacing:normal;text-transform:none}
@media(max-width:760px){.capital-country-flag{width:160px;height:106px}.capital-country-flag .flag{width:160px;height:106px;max-height:none}}

/* Keep the globe's brand colours independent of the reading theme. */
.atlas-brand .pixel-sprite{color:#146b60;--logo-water:#bfe3f2}.atlas-brand .brand-dot{color:#f3c952}
/* Wide screens must leave room for both answer rows, not expand the map by width. */
@media(min-width:761px){
 .view-quiz .atlas-header{min-height:72px;padding:12px 32px}
 .view-quiz main{padding-top:16px}
 .view-quiz .play-heading{padding-bottom:6px;min-height:24px}
 .view-quiz .question-progress.numbered-progress{margin:0 auto 8px}
 .view-quiz .question-title{margin:0 0 12px}
 .view-quiz .question-title>.eyebrow{display:none}
 .view-quiz .question-title h1{margin:0;font-size:clamp(28px,3vw,40px)}
 .view-quiz .question-visual.map{margin-bottom:14px}
 .view-quiz .question-visual.map .atlas-map>svg.world-map{height:clamp(160px,calc(100svh - 410px),480px);min-height:0;aspect-ratio:auto}
 .view-quiz .answer{min-height:52px;padding:10px 18px}
 .view-quiz .answer-options{gap:10px}
 .view-quiz.motion-answer .question-visual.map .atlas-map>svg.world-map{height:min(28svh,240px)}
}

/* Comparison guides: reach the actual flags without a full-screen introduction. */
:is(.flag-comparison-page,.country-guide-page) .field-guide>main{padding-top:18px}
:is(.flag-comparison-page,.country-guide-page) .seo-breadcrumbs{margin:0 0 12px}
:is(.flag-comparison-page,.country-guide-page) .field-hero{padding:0 0 12px}
:is(.flag-comparison-page,.country-guide-page) .field-hero h1{font-size:clamp(30px,3.5vw,44px);margin:10px 0 12px}
:is(.flag-comparison-page,.country-guide-page) .field-hero>p{margin:0;max-width:none}
:is(.flag-comparison-page,.country-guide-page) .field-actions{margin:14px 0}
:is(.flag-comparison-page,.country-guide-page) .field-facts{padding:10px 0}
:is(.flag-comparison-page,.country-guide-page) .field-section{padding:20px 0}
:is(.flag-comparison-page,.country-guide-page) .field-section h2{margin-bottom:14px}
.seo-comparison img{display:block;width:min(100%,320px);height:auto;aspect-ratio:4/3;object-fit:contain;background:transparent;margin:0 auto 12px}
.seo-comparison figcaption{text-align:center}

/* Country flags use the asset canvas, with no artificial white frame. */
.country-guide-page .seo-flag{display:block;width:min(100%,320px);height:auto;aspect-ratio:4/3;object-fit:contain;padding:0;background:transparent;border-radius:0;margin-bottom:22px}

/* A country overview is useful at a glance: flag beside its facts. */
.country-overview{display:grid;grid-template-columns: minmax(240px,320px) minmax(0,1fr);gap:20px;align-items:start}
.country-flag-panel{margin:0;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:16px}
.country-guide-page .country-flag-panel .seo-flag{width:100%;margin:0 0 12px}
.country-flag-panel figcaption{text-align:center;color:var(--muted);font-size:15px}
.country-overview .seo-facts{margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.country-overview .seo-facts div{padding:14px;min-width:0}.country-overview .seo-facts dd{overflow-wrap:anywhere;font-size:17px}
@media(max-width:760px){.country-overview{grid-template-columns:1fr}.country-flag-panel{width:min(100%,360px);justify-self:center}}

.roam-support{margin:24px 0;padding:16px 0;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}.roam-support p{margin:0}.roam-support a,.roam-support-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.roam-support-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:15px}

.roam-support .sr-only,.roam-support-link .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Promotions stay out of active questions, including shared navigation/footer. */
.view-quiz [data-promotion],.view-quiz [data-kofi-placement],.monetisation-playing [data-promotion],.monetisation-playing [data-kofi-placement],body:has([data-mini] [data-stage] form) [data-promotion],body:has([data-mini] [data-stage] form) [data-kofi-placement]{display:none!important}
.roam-support{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px}.roam-support p{flex:1 1 300px}.roam-support .poster-link{flex-basis:100%}.home-support{margin-top:16px}
[data-kofi-placement] .sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}