@font-face{font-family:Nunito;src:url(assets/nunito-600.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Nunito;src:url(assets/nunito-800.woff2) format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:Nunito;src:url(assets/nunito-900.woff2) format('woff2');font-weight:900;font-display:swap}
:root{color-scheme:dark;--navy:#071e32;--cream:#fff9ea;--yellow:#ffd23f;--coral:#ff796c;--muted:#a2bacb;--panel:#163b53;--line:#36566c;font-family:Nunito,system-ui,sans-serif;color:var(--cream);background:#04121f;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;padding:22px 16px 12px;background:radial-gradient(ellipse at 50% 20%,#153b54 0,transparent 60%),#04121f;min-height:100svh}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--cream);outline-offset:5px}button,a{-webkit-user-select:none;user-select:none}button{border:0}img{display:block;max-width:100%}.desktop-brand{max-width:490px;margin:0 auto 17px;display:flex;align-items:center;gap:8px;font-size:17px;letter-spacing:-.4px}.desktop-brand>img{width:30px;height:34px;object-fit:contain}.desktop-brand strong{color:var(--yellow)}.prototype-label{margin-left:auto;color:#91a9ba;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:800}
.game-shell{position:relative;width:100%;max-width:490px;min-height:770px;margin:auto;padding:24px 28px 22px;overflow:hidden;background:radial-gradient(ellipse at 0 0,#123d62 0,#081f35 65%,#051421 100%);border:1px solid #315064;border-radius:24px;box-shadow:0 30px 80px #0007;isolation:isolate}.game-shell:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-radial-gradient(ellipse at 45% 48%,transparent 0 58px,#8fc4da0c 59px 60px,transparent 61px 119px);transform:rotate(-12deg) scale(1.2)}
.topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #426078;gap:12px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:900;color:var(--muted)}.icon-button{width:40px;height:40px;border:1px solid #426078;background:#163b5380;border-radius:50%;display:grid;place-items:center;color:var(--cream)}.icon-button svg{width:17px;height:17px}.top-actions{display:flex;gap:8px;align-items:center}.score{font-size:13px;font-weight:900;color:var(--yellow);font-variant-numeric:tabular-nums}.progress{display:flex;align-items:center;gap:6px;margin:20px 0 15px}.progress .dot{width:7px;height:7px;background:#426078;border-radius:50%}.progress .current{background:var(--cream);box-shadow:0 0 0 3px #fff9ea18}.progress .correct{background:var(--yellow)}.progress .incorrect{background:var(--coral)}.progress .round-label{color:var(--muted);margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.4px}.question{margin:0;font-size:clamp(30px,7.8vw,44px);line-height:1.14;font-weight:900;letter-spacing:-1.5px;min-height:103px}.question .accent{display:block;color:var(--yellow)}.question .small-title{font-size:.83em}.subtitle{color:var(--muted);font-size:13px;margin:9px 0 0;font-weight:800}.duel{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:35px 0 25px;min-height:275px;align-items:end}.country-choice{position:relative;background:transparent;padding:0;text-align:center;border-radius:16px;min-width:0;transition:transform .2s,background .2s}.country-choice:not(:disabled):hover{transform:translateY(-5px);background:#ffffff08}.country-choice:active{transform:scale(.97)}.country-art{height:205px;width:100%;position:relative;display:flex;align-items:center;justify-content:center}.silhouette{width:100%;height:100%;background:var(--coral);mask:var(--country-mask) center/contain no-repeat;-webkit-mask:var(--country-mask) center/contain no-repeat;filter:drop-shadow(0 6px 0 #0003)}.country-choice:nth-child(2) .silhouette{background:var(--yellow)}.country-label{font-size:20px;font-weight:900;letter-spacing:-.5px;display:block;margin:13px 0 10px}.country-choice:first-child .country-label{color:var(--coral)}.country-choice:nth-child(2) .country-label{color:var(--yellow)}.country-pick{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #557084;border-radius:10px;padding:10px 8px;font-size:13px;font-weight:900;background:#163b5360;min-height:44px}.country-pick img{height:15px;width:20px;border-radius:2px}.country-choice:not(:disabled):hover .country-pick{border-color:var(--yellow);background:#ffd23f18}.duel.ready .country-pick{visibility:hidden}.duel.proof{align-items:start;margin-top:27px;min-height:303px}.proof-art{height:190px;position:relative}.proof-silhouette{position:absolute;inset:0;animation:vanish .6s forwards}.unit-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;align-content:start;padding:8px 2px;opacity:0;animation:appear .6s .25s forwards}.unit{aspect-ratio:1;background:var(--coral);border-radius:1px;transform:scale(0);animation:tile-in .35s forwards;animation-delay:calc(.3s + var(--i)*5ms)}.proof-side:nth-child(2) .unit{background:var(--yellow)}.proof-side{text-align:center;min-width:0}.proof-side .country-label{font-size:18px}.proof-side:first-child .country-label{color:var(--coral)}.proof-side:nth-child(2) .country-label{color:var(--yellow)}.area-number{color:var(--muted);font-size:13px;font-weight:800;margin-top:6px}.unit-count{font-weight:900;font-size:20px}.proof-key{text-align:center;color:var(--muted);font-size:11px;margin:5px 0 18px}.primary{background:var(--yellow);color:var(--navy);font-weight:900;width:100%;border-radius:12px;min-height:52px;display:flex;align-items:center;justify-content:center;gap:15px;font-size:16px;box-shadow:0 4px 0 #b88e19;transition:transform .15s,box-shadow .15s}.primary:hover{background:#ffdd68;transform:translateY(-1px)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 #b88e19}.primary:disabled{opacity:.5;transform:none}.secondary{min-height:44px;border:1px solid #426078;border-radius:10px;background:#163b5360;font-weight:800;padding:9px 14px;width:100%;font-size:13px}.secondary:hover{background:#234960}.start-note{text-align:center;color:var(--muted);font-size:11px;margin:15px 0 20px}.coach{display:flex;align-items:center;gap:11px;min-height:95px;margin:12px 0}.coach img{width:70px;height:80px;object-fit:contain;flex-shrink:0}.coach p{font-size:16px;line-height:1.4;letter-spacing:-.2px;font-weight:900;margin:0}.coach p small{display:block;color:var(--muted);font-size:12px;font-weight:600;margin-top:5px}.coach .verdict{display:block;font-size:10px;letter-spacing:1.6px;font-weight:900;color:var(--yellow);margin-bottom:5px;text-transform:uppercase}.coach.wrong .verdict{color:var(--coral)}.clock{display:flex;align-items:center;gap:12px;margin:20px 0 10px}.clock-track{height:4px;flex:1;background:#28485d;border-radius:5px;overflow:hidden}.clock-fill{height:100%;background:var(--yellow);transform-origin:left;transition:transform .08s linear}.clock-seconds{font-size:19px;font-weight:900;color:var(--yellow);min-width:25px;text-align:right;font-variant-numeric:tabular-nums}.clock.urgent .clock-fill{background:var(--coral)}.clock.urgent .clock-seconds{color:var(--coral)}.clock-label{font-size:11px;color:var(--muted);text-align:center;margin:0 0 10px}.source-note{font-size:9px;color:#94afc0;margin-top:15px;text-align:center;line-height:1.6}.source-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}.arena{display:grid;grid-template-columns:40% 56%;gap:4%;margin-top:24px;align-items:center;min-height:340px}.contender{background:#194259;border-radius:12px;padding:12px 9px 14px;box-shadow:3px 6px 0 #030e1940;position:relative;text-align:center;align-self:center;min-width:0}.contender .country-art{height:160px}.contender .country-label{color:var(--cream);font-size:20px;line-height:1.1;margin:8px 0 0}.contender .area-number{font-size:10px;color:var(--yellow)}.board{position:relative;min-width:0}.board-label{color:var(--muted);font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:900;margin-bottom:8px}.board-list{position:relative}.rank-row{position:relative;min-height:45px;display:flex;align-items:center;gap:9px;background:var(--panel);border-radius:7px;padding:8px 9px;box-shadow:1px 3px 0 #03111e50;z-index:1;min-width:0}.rank-number{color:var(--muted);font-size:12px;font-weight:900;min-width:12px}.rank-row img{width:22px;height:17px;object-fit:cover;border-radius:2px;flex-shrink:0}.rank-copy{min-width:0}.rank-name{font-size:12px;line-height:1.1;font-weight:900;display:block;overflow-wrap:break-word}.rank-area{font-size:10px;line-height:1.2;color:var(--muted);display:block;margin-top:4px}.rank-row.active{background:var(--yellow);color:var(--navy)}.rank-row.active .rank-number,.rank-row.active .rank-area{color:#645525}.slot{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;width:100%;background:transparent;color:var(--yellow);height:44px;min-height:44px;font-weight:900;font-size:11px;border-radius:5px;padding:0 7px}.slot:before{content:"";position:absolute;inset:8px 0;border:1px dashed #ffd23f99;border-radius:4px;background:#ffd23f05;transition:background .15s,border-color .15s}.slot span{position:relative}.slot .slot-num{color:var(--navy);background:var(--yellow);border-radius:50%;width:17px;height:17px;font-size:10px;display:grid;place-items:center}.slot:hover:before,.slot:focus-visible:before{background:#ffd23f25;border-style:solid;border-color:var(--yellow)}.slot:hover{color:var(--cream)}.slot.chosen-wrong:before{background:#ff796c2b;border-color:var(--coral);border-style:solid}.slot.chosen-wrong{color:var(--coral)}.slot.chosen-wrong .slot-num{background:var(--coral)}.board.revealed .rank-row{margin-bottom:7px}.flying-card{position:fixed;z-index:20;border-radius:12px;background:var(--yellow);color:var(--navy);pointer-events:none;display:flex;align-items:center;justify-content:center;font-weight:900;overflow:hidden}.flying-card img{position:absolute;inset:8%;height:70%;width:84%;object-fit:contain;filter:brightness(.4);opacity:.8}.flying-card span{position:absolute;bottom:8%;font-size:14px}.result-heading{font-size:40px;letter-spacing:-1.5px;line-height:1.1;margin:25px 0 10px}.result-heading span{color:var(--yellow);display:block}.result-score{display:flex;align-items:baseline;justify-content:center;margin:14px 0 2px;font-weight:900;letter-spacing:-6px;line-height:1}.result-score strong{font-size:104px;color:var(--yellow)}.result-score span{font-size:35px;color:var(--muted);letter-spacing:-2px;margin-left:5px}.result-dots{display:flex;justify-content:center;gap:6px;margin:12px 0 21px}.result-dot{height:7px;width:26px;border-radius:3px;background:var(--coral)}.result-dot.correct{background:var(--yellow)}.final-board{display:grid;gap:5px}.final-board .rank-row{min-height:43px;padding:7px 12px}.final-board .rank-name{font-size:13px}.final-board .rank-copy{display:flex;align-items:center;justify-content:space-between;flex:1;gap:8px}.final-board .rank-area{margin:0;font-size:11px}.result-actions{display:grid;gap:12px;margin-top:20px}.result-coach{margin-top:8px;margin-bottom:8px}.result-coach img{height:65px;width:57px}.result-coach p{font-size:15px}.status-message{color:var(--yellow);text-align:center;font-size:12px;min-height:18px;margin:10px 0 0}.loading{padding:200px 20px;text-align:center;color:var(--muted)}.site-footer{font-size:10px;color:#849dae;text-align:center;margin:19px 0 8px}.site-footer span{margin:0 7px}dialog{border:1px solid #426078;border-radius:20px;color:var(--cream);background:#0d2a40;padding:27px;max-width:360px;width:calc(100% - 36px);box-shadow:0 20px 80px #0008;font-family:inherit}dialog::backdrop{background:#020c17bb;backdrop-filter:blur(7px)}dialog h2{font-size:28px;letter-spacing:-1px;margin:0 0 5px}dialog p{color:var(--muted);font-size:13px}.close-dialog{background:transparent;color:var(--muted);position:absolute;right:12px;top:10px;width:40px;height:40px;font-size:28px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0;font-size:14px;font-weight:800}.setting-toggle{background:#234c65;color:var(--yellow);border-radius:20px;padding:10px 16px;min-width:80px;font-weight:900}.settings-buttons{display:grid;gap:12px;margin-top:24px}.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}
@keyframes appear{to{opacity:1}}@keyframes vanish{to{opacity:0;transform:scale(.85)}}@keyframes tile-in{to{transform:scale(1)}}
.clock[hidden]{display:none}
.arena.dense .rank-row{min-height:34px;padding:5px 7px}
.arena.dense .slot{height:40px;min-height:40px;z-index:2}
.arena.dense .slot:after{content:"";position:absolute;inset:-2px 0}
.arena.dense~.coach{display:none}
@media(max-width:540px){body{padding:0;background:var(--navy)}.desktop-brand,.site-footer{display:none}.game-shell{border:0;border-radius:0;min-height:100svh;max-width:100%;padding:calc(18px + env(safe-area-inset-top)) 23px calc(18px + env(safe-area-inset-bottom));box-shadow:none}.topbar{padding-bottom:13px}.question{font-size:clamp(30px,8.7vw,43px);min-height:91px}.progress{margin-top:17px}.duel{margin-top:20px;gap:15px;min-height:255px}.country-art{height:190px}.country-label{font-size:19px}.arena{min-height:320px;margin-top:18px;grid-template-columns:39% 57%}.contender .country-art{height:140px}.contender .country-label{font-size:18px}.rank-row{gap:6px;padding:7px}.rank-name{font-size:11px}.rank-area{font-size:9px}.rank-row img{width:19px;height:14px}.rank-number{font-size:11px;min-width:10px}.coach p{font-size:15px}.coach{margin:9px 0}.result-heading{font-size:36px}.start-note{margin-bottom:14px}.source-note{font-size:9px}}
@media(max-width:350px){.game-shell{padding-left:16px;padding-right:16px}.rank-row img{display:none}.question{font-size:30px}.contender .country-label{font-size:16px}.eyebrow{letter-spacing:1px;font-size:10px}.duel .country-art{height:160px}.country-label{font-size:17px}.duel{min-height:235px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-delay:0s!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

.auto-advance{display:flex;align-items:center;justify-content:center;min-height:52px;margin:0;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.3px}

.clock-points{font-size:12px;font-weight:900;color:var(--yellow);white-space:nowrap}.score-detail{text-align:center;color:var(--muted);font-size:13px;margin:10px 0 16px}.result-score strong{font-size:clamp(64px,20vw,96px)}

.game-lives{display:flex;justify-content:center;gap:9px;font-size:25px;line-height:1;color:var(--coral);margin:6px 0 9px}.game-lives .lost{color:#718598;opacity:.35}
