:root{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f6f8fb;background:#102839;font-size:16px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(ellipse at 50% 25%,#1d4054 0%,#102839 65%)}header{max-width:960px;margin:auto;padding:26px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{font-size:1.4rem;font-weight:800;text-decoration:none;color:inherit;letter-spacing:-.04em}.brand span{color:#f4c95d;font-size:1.8rem;margin-right:6px}.edition,.eyebrow{font-size:.8rem;letter-spacing:.12em;font-weight:700;color:#b0c8d6}main{max-width:620px;margin:24px auto 40px;padding:0 20px}.panel{background:#163447;border:1px solid #365365;border-radius:24px;padding:32px;box-shadow:0 24px 70px #06151c55}#start,#end{text-align:center}h1{font-size:3.2rem;line-height:1.1;letter-spacing:-.045em;margin:20px 0;font-weight:850}.flag-line{display:flex;justify-content:center;gap:16px;margin:32px 0}.flag-line img{width:88px;height:60px;object-fit:contain;filter:drop-shadow(0 6px 6px #06151c66)}.flag-line img:first-child{transform:rotate(-9deg)}.flag-line img:last-child{transform:rotate(9deg)}.intro{font-size:1.25rem;line-height:1.6;color:#d6e4ed}button{font:inherit;cursor:pointer;touch-action:manipulation;border:0;min-height:56px;border-radius:12px;font-weight:700;transition:background .15s,transform .15s}button:active{transform:scale(.98)}button:focus-visible,a:focus-visible{outline:3px solid #f4c95d;outline-offset:5px}.primary{background:#f4c95d;color:#122c3d;width:100%;margin-top:16px;font-size:1.1rem}.primary:hover{background:#ffe18c}.rules,.hint,footer{color:#a9c1cf;font-size:.875rem;line-height:1.65}.rules{margin-bottom:0}.stats{display:flex;justify-content:space-between;margin:0 4px 12px;font-size:1rem}.stats b{color:#f4c95d}.progress{height:6px;background:#365365;border-radius:10px;overflow:hidden;margin-bottom:24px}#progress-fill{height:100%;background:#f4c95d;width:0;transition:width .25s}.question-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.question-top h1{font-size:1.65rem;margin:0}#timer{font-variant-numeric:tabular-nums;background:#23485c;border-radius:30px;padding:8px 14px;font-weight:700;min-width:76px;text-align:center}#timer.urgent{color:#ffd3cb;background:#673b40}.flag-stage{height:210px;display:flex;align-items:center;justify-content:center;margin:20px 0}.flag-stage img{max-width:100%;width:auto;max-height:180px;filter:drop-shadow(0 10px 12px #06151c66)}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{background:#23485c;border:1px solid #466575;color:#f6f8fb;padding:12px 16px;text-align:left;display:flex;gap:12px;align-items:center}.choice span{color:#a9c1cf;font-size:.875rem;font-weight:400}.choice:hover:not(:disabled){background:#315c72}.choice:disabled{cursor:default}.choice.correct{background:#205846;border-color:#75d3a5}.choice.wrong{background:#633d43;border-color:#ff9c9c}.choice.faded{opacity:.5}#feedback{border-top:1px solid #365365;margin-top:24px;padding-top:12px}#verdict{font-size:1.15rem}#fact{line-height:1.6;color:#d6e4ed}.hint{text-align:center}.total{font-size:3.5rem;font-weight:850;letter-spacing:-.04em;color:#f4c95d;margin:20px 0 8px}#summary{color:#d6e4ed}#review{margin:24px 0;display:grid;gap:8px;text-align:left}.review-row{display:flex;align-items:center;gap:12px;background:#23485c;border-radius:8px;padding:10px 12px;font-size:.9rem}.review-row img{width:32px;max-height:25px}.review-row .result{margin-left:auto;color:#d6e4ed}footer{text-align:center;padding:0 20px 24px}footer a{color:inherit}[hidden]{display:none!important}@media(max-width:520px){header{padding:20px}.edition{font-size:.75rem;letter-spacing:.05em}main{margin-top:12px;padding:0 14px}.panel{padding:24px 20px;border-radius:20px}h1{font-size:2.8rem}.flag-stage{height:185px}.flag-stage img{max-height:150px}.choice{padding:12px 10px;font-size:.95rem;gap:8px}.flag-line img{width:74px}.question-top h1{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.mode-picker{border:0;padding:0;margin:24px 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left}.mode-picker legend{font-size:.875rem;color:#b0c8d6;margin-bottom:10px}.mode-picker label{background:#23485c;padding:14px 10px;border:1px solid #466575;border-radius:12px;font-size:.875rem;display:flex;align-items:center;gap:8px;cursor:pointer}.mode-picker label:has(input:checked){border-color:#f4c95d;background:#3b4d4c}.mode-picker input{accent-color:#f4c95d;width:18px;height:18px;flex-shrink:0}.settings{text-align:left}.settings>label{display:block;font-size:.875rem;margin:0 0 8px;color:#b0c8d6}select{width:100%;font:inherit;background:#23485c;border:1px solid #466575;color:#f6f8fb;min-height:52px;border-radius:12px;padding:10px 14px}select:focus-visible{outline:3px solid #f4c95d;outline-offset:3px}.mode-label{color:#f4c95d;font-size:.875rem;text-align:center;margin:0 0 16px}.secondary{background:transparent;border:1px solid #466575;color:#d6e4ed;width:100%;margin-top:12px}#start h1{font-size:2.7rem}#start .flag-line{margin:24px 0}#start .intro{font-size:1.1rem}

.bonus-toggle{display:flex;gap:12px;align-items:center;text-align:left;margin:18px 0 10px;padding:14px;background:#23485c;border:1px solid #466575;border-radius:12px;cursor:pointer;font-size:1rem}.bonus-toggle input{width:22px;height:22px;accent-color:#f4c95d;flex-shrink:0}.bonus-toggle small{display:block;font-size:.875rem;font-weight:400;line-height:1.5;color:#b0c8d6;margin-top:4px}

.count-settings{margin-top:18px}.count-row{display:flex;gap:12px}.count-row input{width:100%;min-width:0;font:inherit;border:1px solid #466575;background:#23485c;color:#f6f8fb;border-radius:12px;padding:12px;min-height:52px}.count-row .secondary{margin:0;width:auto;white-space:nowrap;padding:10px 16px;min-height:52px}.count-settings small{display:block;color:#b0c8d6;font-size:.875rem;line-height:1.5;margin-top:8px}

#network-error{background:#633d43;border:1px solid #ff9c9c;border-radius:12px;padding:16px;margin-bottom:20px}#score-form{text-align:left;border-top:1px solid #365365;padding-top:20px;margin-top:24px}#score-form label{display:block;margin-bottom:10px;font-weight:700}#score-form .primary{width:auto;padding:10px 20px;margin:0}#save-status{font-size:.875rem;color:#b0c8d6;line-height:1.5}#leaderboard{margin-top:24px}#leaderboard h2{font-size:1.65rem;margin:8px 0}#board-label{color:#b0c8d6;line-height:1.5;font-size:.875rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}th,td{padding:12px 8px;border-bottom:1px solid #365365}th{color:#b0c8d6;font-weight:600}td:nth-child(2){overflow-wrap:anywhere}.my-score{background:#23485c}#my-rank{font-weight:700;color:#f4c95d;line-height:1.5}button:disabled{opacity:.6;cursor:wait}#view-leaderboard{font-size:.9rem}#player-name{min-width:0}#start .flag-line{display:none}#start h1{font-size:2.1rem;margin:12px 0}#start .intro{margin:12px 0}

#challenge-intro,#challenge-result{background:#23485c;border:1px solid #f4c95d;border-radius:12px;padding:16px;margin:16px 0;line-height:1.6}#challenge-result h2{font-size:1.25rem;margin-top:0}#challenge-share{text-align:left;margin:16px 0;background:#23485c;padding:16px;border-radius:12px}#challenge-share label{display:block;font-size:.875rem;margin-bottom:8px}#challenge-link{width:100%;min-width:0;font:inherit;font-size:.875rem;background:#163447;color:#f6f8fb;border:1px solid #466575;border-radius:8px;padding:12px}#challenge-share .count-row .secondary{margin-top:12px;white-space:normal;width:100%}#challenge-share-status{color:#d6e4ed;font-size:.875rem;line-height:1.5}

header{flex-wrap:wrap}.language-picker{margin-left:auto;display:flex;align-items:center;gap:10px}.language-picker>span{font-size:.75rem;color:#b0c8d6}.language-picker select{width:auto;min-height:38px;font-size:.875rem;padding:6px 10px}.edition{margin-left:auto}@media(max-width:520px){header{gap:10px}.language-picker{width:100%;justify-content:flex-end}.edition{font-size:.7rem}}
.country-facts{margin:1rem 0 1.5rem;padding:1.25rem;background:#f3f7f9;border:1px solid #c9d7df;border-radius:12px;color:#102839;text-align:left;line-height:1.6}.country-facts h3{font-size:1.25rem;margin:0 0 1rem}.country-facts h4{font-size:1rem;margin:1rem 0 .25rem}.country-facts dl{display:grid;grid-template-columns:minmax(110px,1fr) 2fr;gap:.5rem 1rem;margin:0 0 1rem}.country-facts dt{font-weight:700}.country-facts dd{margin:0;overflow-wrap:anywhere}.country-facts p{margin:.75rem 0}.country-facts a{color:#155d86;text-decoration:underline}#show-facts{margin-bottom:.75rem}@media(max-width:420px){.country-facts{padding:1rem}.country-facts dl{grid-template-columns:1fr;gap:.1rem}.country-facts dd{margin-bottom:.6rem}}
.play-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #365365}.play-stats[hidden]{display:none}.play-stats strong{display:block;color:#f4c95d;font-size:1.6rem;font-variant-numeric:tabular-nums}.play-stats span{display:block;margin-top:.25rem;font-size:.875rem;color:#d6e4ed}.play-stats p{grid-column:1/-1;color:#b0c8d6;font-size:.875rem;line-height:1.5;margin:0}
.country-stats{grid-column:1/-1;text-align:left;margin-top:.25rem;border:1px solid #466575;border-radius:12px;padding:.85rem 1rem}.country-stats summary{cursor:pointer;font-size:1rem;font-weight:700;line-height:1.5}.country-stats summary:focus-visible{outline:3px solid #f4c95d;outline-offset:4px}.country-stats table{margin-top:.5rem}.country-stats th:nth-child(n+2),.country-stats td:nth-child(n+2){text-align:right}.country-stats .rules{font-size:.875rem;line-height:1.5;margin-top:1rem}

.site-feedback{margin:16px auto 0;max-width:200px}#feedbackDialog{background:#18394b;color:#f6f8fb;border:1px solid #466575;border-radius:20px;padding:24px;width:min(540px,calc(100vw - 28px));max-height:90dvh;overflow:auto}#feedbackDialog::backdrop{background:#06151cbf}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-head h2{margin:0}.dialog-head button{background:#23485c;color:#f6f8fb}#feedbackDialog .notice{font-size:.875rem;line-height:1.6;color:#b0c8d6}#feedbackForm{display:grid;gap:10px;margin-top:18px}#feedbackForm label{font-size:1rem}#feedbackForm input,#feedbackForm textarea{box-sizing:border-box;width:100%;font:inherit;background:#102839;color:#f6f8fb;border:1px solid #466575;border-radius:8px;padding:10px}#feedbackForm textarea{resize:vertical;min-height:130px}#feedbackForm input:focus-visible,#feedbackForm textarea:focus-visible{outline:3px solid #f4c95d;outline-offset:2px}#feedbackStatus{margin:0}

.profile-open{background:#23485c;color:#f6f8fb;font-size:.875rem;min-height:44px}#profile-dialog{background:#18394b;color:#f6f8fb;border:1px solid #466575;border-radius:20px;padding:24px;width:min(540px,calc(100vw - 28px));max-height:90dvh;overflow:auto}#profile-dialog::backdrop{background:#06151cbf}#profile-dialog form{display:grid;gap:12px}#profile-dialog input[type=text],#profile-dialog input:not([type]){width:100%;box-sizing:border-box}.profile-consent{display:flex;gap:12px;align-items:flex-start;line-height:1.5}.profile-consent input{width:22px;height:22px;flex-shrink:0;accent-color:#f4c95d}.profile-summary{margin-top:24px}

.daily-card{border:2px solid #f4c95d;border-radius:18px;padding:24px;margin-bottom:32px;background:linear-gradient(135deg,#fff6d8,#f2fbff);text-align:left}.daily-card h2{font-size:clamp(1.6rem,5vw,2.1rem);margin:8px 0}.daily-card .primary{width:100%}.daily-card .secondary{width:100%;margin-top:10px}#daily-boards h2{margin-top:24px}#daily-date{max-width:220px} @media(max-width:480px){.daily-card{padding:18px}}

.daily-result-share{margin:20px 0;padding:20px;border:1px solid #e2bd58;border-radius:14px;background:#fff8e5;text-align:left}.daily-result-share textarea{width:100%;box-sizing:border-box;resize:vertical;font:inherit;line-height:1.6;padding:12px;border:1px solid #b3bec5;border-radius:8px;margin-bottom:12px;background:white;color:#102839}.daily-result-share .primary{margin:0}.daily-result-share .count-row{flex-wrap:wrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#daily-card{scroll-margin-top:20px}

/* Light daily-challenge panels need their own text and control palette. */
.daily-card,.daily-result-share{color:#102839;color-scheme:light}
.daily-card .eyebrow,.daily-card .rules,.daily-result-share #daily-share-status{color:#405c6c}
.daily-card .secondary,.daily-result-share .secondary{color:#163447;background:#e4eef3;border-color:#648094}
.daily-card .secondary:hover:not(:disabled),.daily-result-share .secondary:hover:not(:disabled){background:#d1e2ec}
.daily-card button:focus-visible,.daily-result-share button:focus-visible,.daily-result-share textarea:focus-visible{outline:3px solid #155d86;outline-offset:4px}

/* Compact recommendations for the other games. */
.related-games{margin:36px 0 8px;padding-top:24px;border-top:1px solid var(--related-line);color:var(--related-ink);text-align:left}
.related-games h2{margin:0 0 16px;font:inherit;font-size:1.1rem;font-weight:750;letter-spacing:0}
.related-games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.related-game{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:22px;border:1px solid var(--related-line);border-radius:16px;background:var(--related-bg);color:var(--related-ink);box-shadow:none}
.related-game .related-icon{font-size:1.65rem;line-height:1;margin-bottom:14px}
.related-game h3{font:inherit;font-size:1.05rem;font-weight:750;line-height:1.4;letter-spacing:0;margin:0 0 8px;color:var(--related-ink)}
.related-game p{font:inherit;font-size:.9rem;line-height:1.6;color:var(--related-muted);margin:0 0 18px}
.related-game a{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;min-height:44px;padding:10px 13px;border:1px solid var(--related-line);border-radius:9px;background:var(--related-button);color:var(--related-ink);text-decoration:none;font-size:.875rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.related-game a:hover{background:var(--related-hover)}
.related-game a:focus-visible{outline:3px solid var(--related-ink);outline-offset:4px}
@media(max-width:600px){.related-games-grid{grid-template-columns:1fr}.related-game{padding:20px}}
.related-games{--related-ink:#f6f8fb;--related-muted:#b0c8d6;--related-line:#466575;--related-bg:#163447;--related-button:#23485c;--related-hover:#315c72}main:has(#game:not([hidden]))>.related-games{display:none}
