:root{--ink:#173f3b;--paper:#f5f1e7;--paper-deep:#e9e2d2;--coral:#e85d45;--coral-dark:#bd4030;--sage:#9eb8a4;--line:#173f3b29}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;background:#e9e3d6;margin:0}button,a{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #2b7c72}.page-shell{isolation:isolate;background-color:#e9e3d6;background-image:linear-gradient(#173f3b06 1px,#0000 1px),linear-gradient(90deg,#173f3b06 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100svh;padding:28px clamp(18px,4vw,68px) 22px;position:relative;overflow:clip}.ambient{z-index:-1;filter:blur(2px);opacity:.75;border-radius:50%;position:absolute}.ambient-one{background:#cfac96;width:460px;height:460px;top:18%;left:-250px}.ambient-two{background:#9eb8a4;width:520px;height:520px;bottom:-180px;right:-260px}.site-header{justify-content:space-between;align-items:center;width:min(1120px,100%);min-height:36px;margin:0 auto 24px;display:flex}.brand{color:var(--ink);cursor:pointer;letter-spacing:.18em;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:.78rem;font-weight:850;display:inline-flex}.brand-mark{background:var(--ink);width:27px;height:27px;color:var(--paper);border-radius:50%;place-items:center;font-size:.72rem;display:grid}.header-tag{color:#173f3bb8;font-family:var(--font-geist-mono), monospace;letter-spacing:.02em;align-items:center;gap:8px;font-size:.72rem;display:flex}.game-card{background:var(--paper);border:1px solid #173f3b26;border-radius:28px;width:min(1120px,100%);min-height:min(690px,100svh - 150px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 32px 80px #3831252e,inset 0 4px #ffffff8c}.game-card:before{content:"";pointer-events:none;opacity:.55;mix-blend-mode:multiply;background-image:radial-gradient(#173f3b21 .65px,#0000 .65px);background-size:7px 7px;position:absolute;inset:0}.intro-panel,.results-panel{z-index:1;min-height:inherit;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:56px 24px;display:flex;position:relative}.eyebrow{color:var(--coral-dark);font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;justify-content:center;align-items:center;gap:14px;margin:0 0 20px;font-size:.7rem;font-weight:750;display:flex}.eyebrow-line{background:currentColor;width:48px;height:1px}h1{color:var(--ink);letter-spacing:-.065em;margin:0;font-size:clamp(2.4rem,6vw,5rem);font-weight:820;line-height:.96}h1 em{color:var(--coral);font-family:Georgia,Times New Roman,serif;font-weight:500}.intro-copy,.results-copy{color:#173f3bb8;max-width:510px;margin:24px auto 0;font-size:clamp(.95rem,2vw,1.08rem);line-height:1.65}.flag-stack{width:310px;height:130px;margin:24px auto 10px;position:relative}.flag-visual{background:#fffdf7;place-items:center;display:inline-grid;position:relative;overflow:hidden}.flag-fallback{z-index:0;color:#173f3b59;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;font-size:.8rem;font-weight:800;position:absolute}.flag-art{z-index:1;object-fit:contain;position:absolute;inset:0;width:100%!important;height:100%!important}.flag-chip{border:1px solid var(--line);border-radius:10px;width:96px;height:64px;position:absolute;box-shadow:0 10px 24px #173f3b21}.chip-one{top:29px;left:15px;transform:rotate(-10deg)}.chip-two{z-index:2;top:10px;left:78px;transform:rotate(4deg)}.chip-three{z-index:3;top:28px;right:53px;transform:rotate(-4deg)}.chip-four{top:13px;right:5px;transform:rotate(11deg)}.difficulty-picker{border:0;width:min(540px,100%);margin:0 auto 13px;padding:0}.difficulty-picker legend{color:#173f3b94;width:100%;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;font-size:.65rem}.difficulty-picker>div{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.difficulty-picker button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fffdf7bd;border-radius:11px;gap:3px;padding:11px 8px;transition:transform .16s,border-color .16s,background .16s;display:grid}.difficulty-picker button:hover{border-color:#173f3b75;transform:translateY(-2px)}.difficulty-picker button.difficulty-active{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:0 4px #0c2926}.difficulty-picker strong{font-size:.82rem}.difficulty-picker span{opacity:.65;font-size:.63rem}.personal-best{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;margin:0 0 15px;font-size:.64rem}.personal-best strong{color:var(--ink)}.primary-button,.next-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:999px;font-weight:760;transition:transform .18s,box-shadow .18s,background .18s;box-shadow:0 8px #0c2926,0 14px 26px #173f3b33}.primary-button{align-items:center;gap:22px;padding:16px 24px 16px 28px;display:inline-flex}.primary-button span{font-size:1.35rem}.primary-button:hover,.next-button:hover{background:#20554f;transform:translateY(-2px);box-shadow:0 10px #0c2926,0 17px 30px #173f3b38}.primary-button:active,.next-button:active{transform:translateY(5px);box-shadow:0 3px #0c2926}.keyboard-note{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;margin:26px 0 0;font-size:.66rem}.keyboard-note kbd{border:1px solid var(--line);min-width:22px;height:22px;box-shadow:0 2px 0 var(--line);background:#fffdf7;border-radius:5px;place-items:center;font-size:.64rem;display:inline-grid}.keyboard-note span{padding:0 8px}.quiz-panel{z-index:1;min-height:inherit;padding:clamp(24px,4vw,46px);position:relative}.quiz-topline{justify-content:space-between;align-items:center;display:flex}.round-label{font-family:var(--font-geist-mono), monospace;color:var(--coral-dark);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:760}.round-total{color:#173f3b7a;margin:5px 0 0;font-size:.76rem}.scoreboard{gap:8px;display:flex}.scoreboard div{border:1px solid var(--line);background:#fffdf7b8;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-width:86px;padding:8px 11px;display:flex}.scoreboard span{color:#173f3b94;font-size:.68rem}.scoreboard strong{font-family:var(--font-geist-mono), monospace;font-size:.95rem}.scoreboard small{color:var(--coral);font-size:.7rem}.progress-track{background:var(--paper-deep);border-radius:999px;height:5px;margin-top:20px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--coral);height:100%;transition:width .45s cubic-bezier(.2,.8,.2,1);display:block}.question-layout{grid-template-columns:minmax(300px,.86fr) minmax(380px,1.14fr);align-items:center;gap:clamp(40px,7vw,90px);padding:clamp(34px,7vh,70px) 2% 30px;display:grid}.flag-stage{text-align:center}.prompt-kicker{color:#173f3b87;font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-size:.68rem}.mystery-flag{aspect-ratio:1.5;background:#fffdf8;border:1px solid #173f3b29;border-radius:20px;place-items:center;width:min(100%,350px);margin:0 auto;animation:.45s both flag-arrive;display:grid;box-shadow:0 22px 45px #173f3b24,inset 0 4px #fff}.region-hint{border:1px solid var(--line);color:#173f3b9e;font-family:var(--font-geist-mono), monospace;border-radius:999px;margin:18px 0 0;padding:7px 13px;font-size:.66rem;display:inline-block}.answers-area h1{margin-bottom:26px;font-size:clamp(2.2rem,4.7vw,4.3rem)}.answer-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.answer-button{border:1px solid var(--line);min-height:60px;color:var(--ink);text-align:left;cursor:pointer;background:#fffdf7d1;border-radius:12px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:10px 14px;transition:transform .16s,border-color .16s,background .16s;display:grid}.answer-button:not(:disabled):hover{background:#fff;border-color:#173f3b7a;transform:translateY(-2px)}.answer-index{background:var(--paper-deep);color:#173f3bb8;width:26px;height:26px;font-family:var(--font-geist-mono), monospace;border-radius:8px;place-items:center;font-size:.68rem;display:grid}.answer-button>span:nth-child(2){font-weight:680}.answer-correct{background:#e5f0e5;border-color:#4f8d63}.answer-correct .answer-index{color:#fff;background:#4f8d63}.answer-wrong{border-color:var(--coral);background:#f9e1dc}.answer-wrong .answer-index{background:var(--coral);color:#fff}.answer-muted{opacity:.45}.answer-icon{font-size:1.2rem;font-weight:800}.answer-correct .answer-icon{color:#39784c}.answer-wrong .answer-icon{color:var(--coral-dark)}.feedback{min-height:82px;margin-top:18px}.feedback-visible{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-top:14px;animation:.28s both rise;display:flex}.feedback div{gap:3px;display:grid}.feedback strong{font-family:Georgia,serif;font-size:1.16rem;font-style:italic}.feedback div span{color:#173f3b9e;font-size:.76rem}.next-button{flex-shrink:0;align-items:center;gap:14px;padding:12px 17px 12px 20px;font-size:.77rem;display:inline-flex;box-shadow:0 5px #0c2926}.results-panel h1{font-size:clamp(3.3rem,7vw,6rem)}.results-copy{margin-top:14px}.score-seal{outline-offset:-10px;background:#eee7d8;border:1px solid #173f3b47;border-radius:50%;outline:1px dashed #173f3b4d;flex-direction:column;justify-content:center;align-items:center;width:190px;height:190px;margin:28px auto 22px;display:flex;transform:rotate(-2deg)}.seal-label{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:.62rem}.score-seal strong{color:var(--coral);letter-spacing:-.05em;margin:8px 0;font-family:Georgia,serif;font-size:2.8rem;line-height:1}.seal-stars{color:var(--coral-dark);letter-spacing:.22em;font-size:.64rem}.result-stats{border-block:1px solid var(--line);justify-content:center;width:min(480px,100%);margin-bottom:26px;display:flex}.result-stats div{flex:1;gap:5px;padding:13px 12px;display:grid}.result-stats div+div{border-left:1px solid var(--line)}.result-stats span{color:#173f3b8c;font-size:.66rem}.result-stats strong{font-family:var(--font-geist-mono), monospace;font-size:1rem}.results-actions{justify-content:center;align-items:center;gap:18px;display:flex}.secondary-button{color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:12px 4px;font-weight:720}.secondary-button:hover{color:var(--coral-dark)}footer{color:#173f3b94;width:min(1120px,100%);font-family:var(--font-geist-mono), monospace;justify-content:center;align-items:center;gap:16px;margin:18px auto 0;font-size:.62rem;display:flex}@keyframes flag-arrive{0%{opacity:0;transform:translateY(8px)rotate(-1deg)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (width<=820px){.game-card{min-height:auto}.question-layout{grid-template-columns:1fr;gap:32px;padding-top:28px}.mystery-flag{max-width:280px;font-size:7.5rem}.answers-area h1{text-align:center}.quiz-panel{min-height:auto}}@media (width<=560px){.page-shell{padding:16px 12px}.site-header{margin-bottom:13px}.header-tag{display:none}.game-card{border-radius:20px}.intro-panel,.results-panel{min-height:calc(100svh - 100px);padding:40px 18px}.flag-stack{width:270px;margin-inline:-5px;transform:scale(.88)}.keyboard-note{display:none}.quiz-panel{padding:20px 15px 16px}.scoreboard div{min-width:72px;padding:7px 9px}.question-layout{padding-inline:0}.mystery-flag{width:230px;font-size:6.6rem}.answers-area h1{margin-bottom:20px;font-size:2.55rem}.answer-grid{grid-template-columns:1fr;gap:9px}.answer-button{min-height:52px}.feedback{min-height:78px}.feedback-visible{background:var(--paper);position:sticky;bottom:0}.feedback div span{max-width:150px}.result-stats{grid-template-columns:1fr 1fr;display:grid}.result-stats div:nth-child(3){border-top:1px solid var(--line);border-left:0}.result-stats div:nth-child(4){border-top:1px solid var(--line)}.results-actions{flex-direction:column;gap:8px}footer{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.home-actions{justify-content:center;align-items:stretch;gap:12px;display:flex}.daily-button{color:var(--ink);cursor:pointer;text-align:left;background:#f7e6d8;border:1px solid #bd403047;border-radius:999px;align-items:center;gap:11px;padding:10px 16px;transition:transform .18s,background .18s;display:flex}.daily-button:hover{background:#fbeee3;transform:translateY(-2px)}.daily-button>span:first-child{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.daily-button>span:last-child{gap:2px;display:grid}.daily-button strong{font-size:.74rem}.daily-button small{color:#173f3b94;font-size:.58rem}.scoreboard .streak-hot{background:#f9e4dc;border-color:#e85d4580;animation:.8s infinite alternate streak-pulse}.lives-display strong{color:var(--coral);letter-spacing:0;gap:2px;display:flex}.lives-display i{font-family:Arial,sans-serif;font-size:.85rem;font-style:normal}.life-lost{animation:.42s life-shake}.mystery-flag{transform-origin:50% 70%;animation:.62s cubic-bezier(.2,.85,.25,1.25) both flag-swoop}.state-correct .mystery-flag{animation:.58s both flag-correct}.state-wrong .mystery-flag{animation:.45s both flag-wrong}.answer-correct{animation:.38s cubic-bezier(.2,.8,.2,1.2) both answer-correct-pop}.answer-wrong{animation:.38s both answer-wrong-shake}.state-correct .progress-track span{box-shadow:0 0 0 5px #4f8d631f}.state-wrong .progress-track span{background:var(--coral-dark)}.feedback{min-height:116px}.feedback-copy p{color:#173f3bb3;max-width:430px;margin:7px 0 0;font-size:.7rem;line-height:1.45}.feedback-copy p b{color:var(--coral-dark)}.results-expanded{justify-content:flex-start;padding-block:40px}.results-expanded .eyebrow{margin-bottom:15px}.rank-lockup{justify-content:center;align-items:center;gap:16px;display:flex}.rank-mark{outline-offset:-6px;width:58px;height:58px;color:var(--coral-dark);background:#eee7d8;border:1px solid #173f3b40;border-radius:50%;outline:1px dashed #173f3b3b;place-items:center;font-family:Georgia,serif;font-size:1.25rem;display:grid}.rank-lockup>div{text-align:left}.rank-lockup>div>span{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;font-size:.62rem}.rank-lockup h1{margin-top:2px;font-size:clamp(2.8rem,6vw,5rem)}.results-expanded .results-copy{margin-top:10px}.results-summary{justify-content:center;align-items:center;gap:30px;width:min(680px,100%);margin:16px auto;display:flex}.results-expanded .score-seal{flex:none;width:148px;height:148px;margin:0}.results-expanded .score-seal strong{font-size:2.15rem}.results-expanded .result-stats{grid-template-columns:1fr 1fr;width:min(460px,100%);margin:0;display:grid}.results-expanded .result-stats div:nth-child(3){border-top:1px solid var(--line);border-left:0}.results-expanded .result-stats div:nth-child(4){border-top:1px solid var(--line)}.missed-flags{border:1px solid var(--line);text-align:left;background:#fffdf794;border-radius:14px;width:min(680px,100%);padding:14px 16px}.missed-flags>div{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.62rem;display:flex}.missed-flags>div strong{color:var(--coral-dark)}.missed-flags ul{gap:8px;margin:0;padding:0 0 3px;list-style:none;display:flex;overflow-x:auto}.missed-flags li{background:var(--paper-deep);border-radius:9px;align-items:center;gap:9px;min-width:150px;padding:7px;display:flex}.missed-flags .flag-visual{border-radius:5px;flex:none;width:46px;height:31px}.missed-flags li>span{min-width:0;display:grid}.missed-flags li strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.missed-flags li small{color:#173f3b8c;text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;overflow:hidden}.perfect-route{background:#e4efe4;border:1px solid #6f9d79;border-radius:999px;align-items:center;gap:10px;padding:12px 20px;display:flex}.perfect-route span:last-child{color:#173f3b99;font-size:.72rem}.results-expanded .results-actions{margin-top:18px}.challenge-button{border:1px solid var(--coral-dark);color:var(--coral-dark);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:12px;padding:13px 20px;font-weight:760;transition:background .18s,color .18s,transform .18s;display:inline-flex}.challenge-button:hover{background:var(--coral-dark);color:#fff;transform:translateY(-2px)}@keyframes flag-swoop{0%{opacity:0;transform:translateY(24px)scale(.82)rotate(-4deg)}65%{opacity:1;transform:translateY(-5px)scale(1.035)rotate(1deg)}to{opacity:1;transform:none}}@keyframes flag-correct{0%{transform:scale(1)}45%{transform:scale(1.055)rotate(1deg);box-shadow:0 25px 52px #39784c40}to{transform:scale(1)}}@keyframes flag-wrong{0%,to{transform:translate(0)}25%{transform:translate(-8px)rotate(-1deg)}75%{transform:translate(8px)rotate(1deg)}}@keyframes answer-correct-pop{0%{transform:scale(.97)}60%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes answer-wrong-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes life-shake{0%,to{transform:translate(0)}30%{transform:translate(-4px)}65%{transform:translate(4px)}}@keyframes streak-pulse{0%{transform:translateY(0)}to{transform:translateY(-2px)}}@media (width<=720px){.home-actions{flex-direction:column;align-items:center}.daily-button{justify-content:center;width:min(280px,100%)}.scoreboard{gap:5px}.scoreboard div{gap:6px;min-width:0;padding-inline:7px}.scoreboard div>span{display:none}.feedback-copy p{max-width:215px}.results-summary{flex-direction:column;gap:14px}.results-expanded .score-seal{width:132px;height:132px}.results-expanded{padding:34px 18px}}@media (width<=430px){.rank-mark{width:48px;height:48px}.rank-lockup h1{font-size:2.55rem}.results-expanded .results-actions{flex-direction:column}.missed-flags{padding-inline:11px}}.platform-home{justify-content:flex-start;padding-block:38px 42px}.platform-home h1{font-size:clamp(2.6rem,5.6vw,4.8rem)}.platform-home .intro-copy{margin-top:17px}.hero-visual{place-items:center;min-height:105px;display:grid}.hero-visual .flag-stack{height:105px;margin:8px auto 0;transform:scale(.82)}.map-stack{width:320px;height:104px;position:relative}.map-visual{--map-art-size:70.5%;place-items:center;display:inline-grid;position:relative;overflow:hidden}.map-art-frame{width:var(--map-art-size);height:var(--map-art-size);filter:drop-shadow(0 9px 8px #173f3b2e);transition:transform .18s,filter .18s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-art-frame img{object-fit:contain}.map-small-country{--map-art-size:82%}@media (hover:hover) and (pointer:fine){.map-visual:hover .map-art-frame{filter:drop-shadow(0 11px 10px #173f3b38);transform:translate(-50%,-50%)scale(1.03)}}.map-fallback{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;border:1px dashed #173f3b38;border-radius:8px;padding:7px 10px;font-size:.58rem;font-weight:700;position:absolute}.map-chip{border:1px solid var(--line);background:#fffdf7;border-radius:13px;width:90px;height:70px;padding:6px;position:absolute;box-shadow:0 12px 25px #173f3b1f}.map-chip-1{top:25px;left:9px;transform:rotate(-8deg)}.map-chip-2{z-index:2;top:5px;left:79px;transform:rotate(4deg)}.map-chip-3{z-index:3;top:23px;right:64px;transform:rotate(-3deg)}.map-chip-4{top:7px;right:5px;transform:rotate(9deg)}.mode-picker{border:0;width:min(760px,100%);margin:0 auto 18px;padding:0}.mode-picker legend{color:#173f3b94;width:100%;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px;font-size:.65rem}.mode-grid{grid-template-columns:1fr 1fr .78fr;gap:9px;display:grid}.mode-grid>button,.mode-coming-soon{border:1px solid var(--line);min-height:66px;color:var(--ink);text-align:left;background:#fffdf7c2;border-radius:13px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid;position:relative}.mode-grid>button{cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.mode-grid>button:hover{border-color:#173f3b6b;transform:translateY(-2px)}.mode-grid>button.mode-active{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:0 4px #0c2926}.mode-symbol{background:var(--paper-deep);width:36px;height:36px;color:var(--ink);border-radius:10px;place-items:center;font-family:Georgia,serif;font-size:1.35rem;display:grid}.mode-active .mode-symbol{color:#fff;background:#ffffff24}.mode-grid button>span:nth-child(2),.mode-coming-soon{min-width:0}.mode-grid button>span:nth-child(2){gap:3px;display:grid}.mode-grid strong{font-size:.78rem}.mode-grid small{opacity:.62;font-size:.58rem;line-height:1.3}.mode-grid button b{background:var(--coral);color:#fff;text-transform:uppercase;border-radius:999px;align-self:start;padding:3px 6px;font-size:.5rem}.mode-coming-soon{opacity:.5;border-style:dashed;grid-template-rows:auto auto;grid-template-columns:30px 1fr}.mode-coming-soon>span{grid-row:1/3;font-size:1.1rem}.mode-coming-soon small{grid-column:2}.visual-stage{min-width:0}.mystery-map{aspect-ratio:1.5;background:radial-gradient(circle at 50% 45%,#fffdf8,#ede7da);border:1px solid #173f3b29;border-radius:22px;width:min(100%,350px);margin:0 auto;padding:18px;animation:.64s cubic-bezier(.2,.85,.25,1.2) both map-arrive;box-shadow:0 22px 45px #173f3b24,inset 0 4px #fff}.mystery-map .map-art-frame{filter:drop-shadow(0 13px 10px #173f3b33)}.mode-map .visual-stage:after{content:"N";color:#173f3b61;background:linear-gradient(45deg,#0000 47%,currentColor 48% 52%,#0000 53%),linear-gradient(-45deg,#0000 47%,currentColor 48% 52%,#0000 53%);width:24px;height:24px;margin:12px auto -9px;font-family:Georgia,serif;font-size:.65rem;line-height:24px;display:block}.state-correct .mystery-map{animation:.55s both map-correct}.state-wrong .mystery-map{animation:.45s both flag-wrong}.quiz-panel{padding-bottom:clamp(24px,4vw,40px)}.question-layout{padding-bottom:20px}.country-feedback{width:96%;min-height:0;margin:0 auto}.country-feedback.feedback-visible{border:1px solid var(--line);background:#fffdf7d1;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;padding:16px;animation:.42s cubic-bezier(.2,.8,.2,1) both country-card-rise;display:grid;box-shadow:0 18px 38px #173f3b1a}.country-info-card{text-align:left;min-width:0}.country-info-card>header{align-items:center;gap:14px;display:flex}.country-card-visuals{flex:none;width:82px;height:58px;position:relative}.country-card-visuals .flag-visual{border:1px solid var(--line);border-radius:7px;width:62px;height:42px;position:absolute;top:0;left:0;box-shadow:0 7px 14px #173f3b1f}.country-card-visuals .map-visual{border:1px solid var(--line);background:var(--paper);border-radius:7px;width:42px;height:34px;padding:3px;position:absolute;bottom:0;right:0;box-shadow:0 5px 12px #173f3b1f}.country-info-card header>div:last-child{min-width:0}.country-info-card header span{color:var(--coral-dark);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.57rem;font-weight:720}.country-info-card h2{color:var(--ink);letter-spacing:-.035em;margin:2px 0;font-size:1.55rem}.country-info-card header p{color:#173f3b94;margin:0;font-size:.62rem}.country-info-card dl{border-block:1px solid var(--line);grid-template-columns:.8fr 1fr 1.3fr .75fr;gap:0;margin:13px 0 0;display:grid}.country-info-card dl>div{align-content:start;gap:3px;min-width:0;padding:9px 11px;display:grid}.country-info-card dl>div+div{border-left:1px solid var(--line)}.country-info-card dt{color:#173f3b80;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.53rem}.country-info-card dd{overflow-wrap:anywhere;margin:0;font-size:.68rem;font-weight:680;line-height:1.3}.country-info-card dd small{color:#173f3b85;font-size:.52rem;font-weight:500}.country-card-fact{color:#173f3bb8;gap:9px;margin:10px 0 0;font-size:.66rem;line-height:1.45;display:flex}.country-card-fact>span:first-child{color:var(--coral)}.country-card-fact strong{color:var(--ink)}.country-feedback .next-button{margin-bottom:4px}@keyframes map-arrive{0%{opacity:0;transform:translateY(22px)scale(.78)rotate(3deg)}65%{opacity:1;transform:translateY(-5px)scale(1.04)rotate(-1deg)}to{opacity:1;transform:none}}@keyframes map-correct{0%{transform:scale(1)}50%{transform:scale(1.055);box-shadow:0 24px 52px #39784c42}to{transform:scale(1)}}@keyframes country-card-rise{0%{opacity:0;transform:translateY(15px)scale(.98)}to{opacity:1;transform:none}}@media (width<=900px){.platform-home{padding-inline:18px}.mode-grid{grid-template-columns:1fr 1fr}.mode-coming-soon{grid-column:1/-1;min-height:48px}.country-info-card dl{grid-template-columns:1fr 1fr}.country-info-card dl>div:nth-child(3){border-top:1px solid var(--line);border-left:0}.country-info-card dl>div:nth-child(4){border-top:1px solid var(--line)}}@media (width<=560px){.platform-home{min-height:auto;padding-block:32px 38px}.platform-home h1{font-size:2.7rem}.hero-visual{min-height:88px}.hero-visual .flag-stack,.map-stack{transform:scale(.76)}.mode-grid{grid-template-columns:1fr}.mode-coming-soon{grid-column:auto}.mode-grid>button{min-height:60px}.mystery-map{width:230px;padding:10px}.country-feedback{width:100%}.country-feedback.feedback-visible{background:#fffdf7;grid-template-columns:1fr;padding:13px;position:static}.country-info-card>header{align-items:flex-start}.country-info-card h2{font-size:1.3rem}.country-info-card dl>div{padding:8px}.country-card-fact{font-size:.64rem}.country-feedback .next-button{justify-content:center;width:100%;margin:0}}.exploration-results,.exploration-empty{z-index:1;padding:clamp(24px,4vw,46px);position:relative}.exploration-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.exploration-heading .eyebrow{justify-content:flex-start;margin-bottom:12px}.exploration-heading h1{font-size:clamp(2.5rem,5vw,4.7rem)}.exploration-heading h1 em{color:var(--coral);font-family:Georgia,Times New Roman,serif;font-weight:500}.exploration-heading>div:first-child>p:last-child{color:#173f3b9e;margin:12px 0 0;font-size:.78rem}.exploration-score{border:1px solid var(--line);text-align:right;background:#fffdf7b3;border-radius:16px;gap:4px;min-width:150px;padding:16px 18px;display:grid}.exploration-score span,.exploration-stats span{color:#173f3b8c;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.6rem}.exploration-score strong{font-size:1.8rem}.exploration-stats{border:1px solid var(--line);background:#fffdf794;border-radius:16px;grid-template-columns:repeat(5,1fr);margin:24px 0 16px;display:grid;overflow:hidden}.exploration-stats>div{gap:5px;padding:14px 16px;display:grid}.exploration-stats>div+div{border-left:1px solid var(--line)}.exploration-stats strong{font-size:1.45rem}.exploration-stats .stat-correct strong{color:#34754b}.exploration-stats .stat-incorrect strong{color:#b74336}.exploration-map-card,.world-progress-card{border:1px solid var(--line);background:#fffdf7ad;border-radius:20px;box-shadow:0 16px 40px #173f3b14}.exploration-map-card{padding:clamp(14px,2.4vw,24px)}.map-card-topline{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:12px;display:flex}.map-card-topline>div>span,.world-progress-copy span{color:var(--coral-dark);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.58rem;font-weight:760}.map-card-topline h2,.world-progress-copy h2{letter-spacing:-.025em;margin:4px 0 0;font-size:1.25rem}.map-legend{flex-wrap:wrap;justify-content:flex-end;gap:10px 16px;margin:0;padding:0;list-style:none;display:flex}.map-legend li{color:#173f3bad;align-items:center;gap:6px;font-size:.64rem;display:flex}.map-legend i{border:1px solid #173f3b33;border-radius:3px;width:11px;height:11px}.legend-correct{background:#4f8d63}.legend-incorrect{background:#c95748}.legend-unanswered{background:#c9c6bc}.map-and-panel{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.map-and-panel.has-country-panel{grid-template-columns:minmax(0,1fr) 245px}.world-map-frame{background:radial-gradient(circle at 50% 40%,#f8f5ed,#e8e2d6);border-radius:14px;min-width:0;overflow:hidden}.world-result-map{width:100%}.world-result-map svg{width:100%;height:auto;max-height:470px;padding:8px;display:block}.world-map-loading{color:#173f3b94;min-height:310px;font-family:var(--font-geist-mono), monospace;text-align:center;place-items:center;padding:24px;font-size:.7rem;display:grid}.world-country{fill:#c9c6bc;stroke:#f5f1e7;stroke-width:1.1px;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .15s,filter .15s,opacity .15s}.world-country.country-correct{fill:#4f8d63}.world-country.country-incorrect{fill:#c95748}.world-country:hover{filter:brightness(.9)}.world-country:focus{stroke:#173f3b;stroke-width:2.6px;outline:none}.world-country.country-selected{stroke:#173f3b;stroke-width:3px;filter:drop-shadow(0 2px 2px #173f3b38)}.exploration-country-panel{border:1px solid var(--line);background:#fffdf7;border-radius:14px;min-width:0;padding:18px;position:relative;box-shadow:0 12px 30px #173f3b1a}.panel-close{border:1px solid var(--line);width:30px;height:30px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;place-items:center;font-size:1.15rem;display:grid;position:absolute;top:9px;right:9px}.panel-close:hover{background:var(--paper-deep)}.exploration-country-panel .panel-flag{border:1px solid var(--line);border-radius:8px;width:86px;height:58px;margin-bottom:13px}.panel-status{text-transform:uppercase;border-radius:999px;width:fit-content;padding:4px 7px;font-size:.56rem;font-weight:760;display:block}.status-correct{color:#26623c;background:#dcebdd}.status-incorrect{color:#a3362b;background:#f5ddd7}.status-unanswered{color:#5e625e;background:#e7e4dc}.exploration-country-panel h3{letter-spacing:-.03em;margin:9px 0 10px;font-size:1.35rem}.exploration-country-panel dl{gap:8px;margin:0;display:grid}.exploration-country-panel dl div{gap:2px;display:grid}.exploration-country-panel dt,.panel-answer span{color:#173f3b85;font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase;font-size:.53rem}.exploration-country-panel dd{margin:0;font-size:.72rem;font-weight:700}.panel-answer{background:var(--paper);color:#173f3bb8;border-radius:10px;margin:14px 0 0;padding:10px;font-size:.67rem;line-height:1.45}.panel-answer-correct{color:#28603b;background:#e3eee4;font-weight:720}.panel-answer-wrong{background:#f5e3de;gap:8px;display:grid}.panel-answer-wrong p{gap:2px;margin:0;display:grid}.panel-answer-wrong strong{color:var(--ink)}.world-progress-card{margin-top:16px;padding:18px 20px}.world-progress-copy{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.world-progress-copy>strong{font-family:var(--font-geist-mono), monospace;font-size:1.15rem}.world-progress-track{background:#d8d3c8;border-radius:999px;height:8px;margin:14px 0 16px;overflow:hidden}.world-progress-track>span{border-radius:inherit;background:linear-gradient(90deg,#4f8d63,#79a98a);height:100%;display:block}.continent-progress-list{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.continent-progress-list>div{grid-template-columns:1fr auto;gap:5px 8px;display:grid}.continent-progress-list span,.continent-progress-list strong{font-size:.58rem}.continent-progress-list i{background:#ddd8cd;border-radius:99px;grid-column:1/-1;height:3px;overflow:hidden}.continent-progress-list b{background:var(--sage);height:100%;display:block}.world-progress-card>small{color:#173f3b80;margin-top:12px;font-size:.56rem;display:block}.all-correct-message{color:#2a6240;text-align:center;background:#e2ede3;border:1px solid #84a98d;border-radius:12px;margin:16px auto 0;padding:11px 16px;font-size:.72rem}.exploration-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.primary-button:disabled{cursor:not-allowed;opacity:.42;transform:none;box-shadow:0 4px #0c29268c}.exploration-empty{min-height:inherit;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.exploration-empty-mark{border:1px dashed var(--sage);border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:18px;font-size:2rem;display:grid}.exploration-empty .eyebrow{margin-bottom:12px}.exploration-empty h1{font-size:clamp(2.3rem,5vw,4rem)}.exploration-empty>p:not(.eyebrow){color:#173f3ba8}@media (width<=900px){.exploration-stats{grid-template-columns:repeat(3,1fr)}.exploration-stats>div:nth-child(4){border-left:0}.exploration-stats>div:nth-child(n+4){border-top:1px solid var(--line)}.map-and-panel.has-country-panel{grid-template-columns:minmax(0,1fr) 210px}.continent-progress-list{grid-template-columns:repeat(3,1fr)}}@media (width<=680px){.exploration-results{padding:20px 14px 28px}.exploration-heading{align-items:flex-start}.exploration-heading h1{font-size:2.65rem}.exploration-score{min-width:108px;padding:11px}.exploration-score strong{font-size:1.25rem}.map-card-topline{flex-direction:column;align-items:flex-start}.map-legend{justify-content:flex-start}.map-and-panel.has-country-panel{grid-template-columns:1fr}.exploration-country-panel{grid-template-columns:auto 1fr;gap:0 14px;display:grid}.exploration-country-panel .panel-flag{grid-row:1/5}.exploration-country-panel .panel-status,.exploration-country-panel h3,.exploration-country-panel dl,.exploration-country-panel .panel-answer{grid-column:2}}@media (width<=480px){.exploration-heading{flex-direction:column}.exploration-score{text-align:left;width:100%}.exploration-stats{grid-template-columns:1fr 1fr}.exploration-stats>div:nth-child(3),.exploration-stats>div:nth-child(5){border-left:0}.exploration-stats>div:nth-child(n+3){border-top:1px solid var(--line)}.world-result-map svg{padding:2px}.continent-progress-list{grid-template-columns:1fr 1fr}.exploration-actions{flex-direction:column}.exploration-actions>button{justify-content:center;width:100%}.exploration-country-panel{display:block}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.home-leaderboard-link{color:var(--ink);align-items:center;gap:8px;margin-top:16px;font-size:.72rem;font-weight:760;text-decoration:none;display:inline-flex}.home-leaderboard-link span{color:var(--coral)}.home-leaderboard-link:hover{color:var(--coral-dark)}.leaderboard-button{border:1px solid var(--ink);color:var(--ink);border-radius:999px;align-items:center;padding:12px 17px;font-size:.76rem;font-weight:760;text-decoration:none;transition:background .18s,color .18s,transform .18s;display:inline-flex}.leaderboard-button:hover{background:var(--ink);color:#fff;transform:translateY(-2px)}.leaderboard-submit-note{color:#173f3b9e;text-align:center;margin:14px 0 0;font-size:.68rem}.leaderboard-submit-note.submit-success{color:#28603b}.leaderboard-submit-note.submit-error{color:#a3362b}.nickname-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c2926a3;place-items:center;padding:20px;animation:.2s both modal-fade;display:grid;position:fixed;inset:0}.nickname-modal{background:var(--paper);text-align:center;border:1px solid #fff6;border-radius:24px;width:min(460px,100%);padding:clamp(24px,5vw,38px);animation:.3s cubic-bezier(.2,.8,.2,1) both modal-rise;box-shadow:0 30px 90px #04181559}.nickname-modal-mark{background:var(--coral);color:#fff;width:58px;height:58px;box-shadow:0 7px 0 var(--coral-dark);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:1.25rem;display:grid}.nickname-modal .eyebrow{margin-bottom:10px}.nickname-modal h2{letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,5vw,2.5rem)}.nickname-modal>p:not(.eyebrow){color:#173f3ba8;margin:13px 0 22px;font-size:.82rem;line-height:1.55}.nickname-modal form{text-align:left;display:grid}.nickname-modal label{text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:.66rem;font-weight:760}.nickname-modal input,.nickname-settings input{min-width:0;color:var(--ink);background:#fffdf7;border:1px solid #173f3b47;border-radius:11px}.nickname-modal input{height:50px;padding:0 14px;font-size:1rem}.nickname-modal input:focus,.nickname-settings input:focus{border-color:#2b7c72;outline:3px solid #2b7c7240}.nickname-modal form>small{color:#173f3b8a;margin-top:7px;font-size:.62rem;line-height:1.4}.form-error{color:#a3362b;margin:9px 0 0;font-size:.66rem}.nickname-modal-actions{justify-content:center;align-items:center;gap:18px;margin-top:22px;display:flex}.nickname-modal-actions .primary-button{padding-block:13px}.nickname-modal-actions button:disabled{cursor:wait;opacity:.58}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:none}}.leaderboard-shell{min-height:100svh}.leaderboard-shell .brand{text-decoration:none}.header-home-link{color:var(--ink);font-size:.72rem;font-weight:760;text-decoration:none}.header-home-link span{color:var(--coral);margin-left:6px}.leaderboard-card{z-index:1;background:var(--paper);border:1px solid #173f3b26;border-radius:28px;width:min(1120px,100%);min-height:min(720px,100svh - 150px);margin:0 auto;padding:clamp(24px,4vw,46px);position:relative;overflow:hidden;box-shadow:0 32px 80px #3831252e,inset 0 4px #ffffff8c}.leaderboard-card:before{content:"";z-index:-1;opacity:.5;pointer-events:none;background-image:radial-gradient(#173f3b21 .65px,#0000 .65px);background-size:7px 7px;position:absolute;inset:0}.leaderboard-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.leaderboard-heading .eyebrow{justify-content:flex-start;margin-bottom:14px}.leaderboard-heading h1{font-size:clamp(2.8rem,6vw,5.2rem)}.leaderboard-heading h1 em{color:var(--coral);font-family:Georgia,Times New Roman,serif;font-weight:500}.leaderboard-heading>div>p:last-child{color:#173f3ba3;margin:15px 0 0;font-size:.82rem}.top-100-seal{text-align:center;width:92px;height:92px;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;background:#eee7d8;border:1px dashed #173f3b61;border-radius:50%;flex:none;place-content:center;font-size:.54rem;line-height:1.05;display:grid;transform:rotate(4deg)}.top-100-seal strong{color:var(--coral);letter-spacing:-.05em;font-size:1.45rem}.leaderboard-toolbar{margin-top:30px}.leaderboard-tabs{border:1px solid var(--line);background:#e9e2d2a6;border-radius:15px;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px;display:grid}.leaderboard-tabs button{color:#173f3bab;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:44px;padding:9px 12px;font-size:.72rem;font-weight:720}.leaderboard-tabs button:hover{color:var(--ink);background:#fffdf7a6}.leaderboard-tabs button.leaderboard-tab-active{background:var(--ink);color:#fff;box-shadow:0 3px #0c2926}.leaderboard-toolbar>p{color:#173f3b8f;min-height:18px;margin:10px 6px 0;font-size:.64rem}.nickname-settings{border:1px solid var(--line);background:#fffdf7a3;border-radius:13px;align-items:center;gap:14px;margin:20px 0 12px;padding:11px 14px;display:flex;position:relative}.nickname-settings>div{gap:2px;margin-right:auto;display:grid}.nickname-settings span{color:#173f3b85;font-family:var(--font-geist-mono), monospace;letter-spacing:.07em;text-transform:uppercase;font-size:.53rem}.nickname-settings strong{font-size:.78rem}.nickname-settings>button,.nickname-settings form button,.leaderboard-state button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;font-size:.65rem;font-weight:720}.nickname-settings>button{padding:8px 12px}.nickname-settings>button:hover,.nickname-settings form button:hover,.leaderboard-state button:hover{border-color:var(--ink);background:var(--ink);color:#fff}.nickname-settings form{align-items:center;gap:7px;display:flex}.nickname-settings input{height:34px;padding:0 10px;font-size:.72rem}.nickname-settings form button{padding:7px 10px}.profile-message{z-index:2;color:#173f3bad;margin:0;font-size:.58rem;position:absolute;top:calc(100% + 4px);right:10px}.leaderboard-table-wrap{border:1px solid var(--line);background:#fffdf7b8;border-radius:16px;min-height:330px;margin-top:16px;overflow-x:auto}.leaderboard-table{border-collapse:collapse;width:100%;min-width:680px}.leaderboard-table th{border-bottom:1px solid var(--line);color:#173f3b7a;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-align:left;text-transform:uppercase;padding:11px 15px;font-size:.55rem;font-weight:650}.leaderboard-table td{font-family:var(--font-geist-mono), monospace;border-bottom:1px solid #173f3b17;padding:12px 15px;font-size:.7rem}.leaderboard-table tbody tr:last-child td{border-bottom:0}.leaderboard-table tbody tr{transition:background .15s}.leaderboard-table tbody tr:hover{background:#e9e2d27a}.leaderboard-table td:nth-child(2){font-family:var(--font-geist-sans), Arial, sans-serif}.leaderboard-table td:nth-child(2) strong{font-size:.76rem;display:block}.leaderboard-table td:nth-child(2) small{color:#173f3b80;margin-top:3px;font-size:.55rem;display:block}.leaderboard-table .current-player-row{background:#e2ede3;box-shadow:inset 4px 0 #4f8d63}.rank-badge{background:var(--paper-deep);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.rank-1{color:#684e00;background:#e8c86d}.rank-2{color:#475158;background:#d8dde0}.rank-3{color:#6b381b;background:#d8a77b}.leaderboard-state{text-align:center;place-content:center;justify-items:center;min-height:330px;padding:28px;display:grid}.leaderboard-state strong{font-size:1.25rem}.leaderboard-state p{color:#173f3b9e;max-width:440px;margin:8px 0 16px;font-size:.75rem;line-height:1.5}.leaderboard-state a,.leaderboard-state button{color:var(--ink);font-size:.7rem;font-weight:760}.leaderboard-state button{padding:8px 13px}.leaderboard-error strong{color:var(--coral-dark)}.loading-compass{color:var(--coral);margin-bottom:10px;font-size:1.8rem;animation:1.3s linear infinite compass-spin}@keyframes compass-spin{to{transform:rotate(360deg)}}@media (width<=680px){.nickname-modal-actions{flex-direction:column;align-items:stretch;gap:12px}.nickname-modal-actions .primary-button{justify-content:center}.leaderboard-card{border-radius:22px;padding:22px 14px 28px}.leaderboard-heading{align-items:flex-start}.leaderboard-heading h1{font-size:2.75rem}.top-100-seal{width:70px;height:70px}.leaderboard-tabs{grid-template-columns:1fr}.leaderboard-tabs button{min-height:40px}.nickname-settings{flex-direction:column;align-items:stretch}.nickname-settings>button{align-self:flex-start}.nickname-settings form{flex-wrap:wrap;align-items:stretch}.nickname-settings input{width:100%;height:42px}.profile-message{position:static}}@media (prefers-reduced-motion:reduce){.nickname-modal-backdrop,.nickname-modal,.loading-compass{animation:none}}
