@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--paper:#f5f3eb;--ink:#213b32;--muted:#778076;--line:#dcded3;--orange:#cc623b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:4px}header{max-width:1320px;margin:auto;padding:27px 48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none;font-size:30px}.brand span{font-size:14px;letter-spacing:2px;font-weight:700}nav{display:flex;gap:26px}.nav{border:0;background:none;color:var(--muted);padding:10px 0;font-size:13px}.nav.active{color:var(--ink);border-bottom:2px solid var(--ink)}.nav span{background:#e5e7dc;padding:3px 6px;border-radius:5px;font-size:10px;margin-left:5px}.edition,.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}.edition{color:var(--muted)}main{max-width:1190px;margin:auto;padding:44px 34px 55px}.intro{display:flex;align-items:center;justify-content:space-between;padding:0 12px 34px}h1{font-family:'Playfair Display',Georgia,serif;font-size:64px;line-height:1.1;font-weight:500;letter-spacing:-2px;margin:20px 0}h1 em{color:var(--orange);font-weight:500}.lede{font-size:14px;line-height:1.8;color:#6c756b}.globe{width:275px;margin-right:65px;color:#7f9584;position:relative}.globe svg{width:100%}.globe span{display:block;text-align:center;font-size:8px;letter-spacing:3px;margin-top:-16px}.game-grid{display:grid;grid-template-columns:1fr 1.13fr;gap:24px}.card{border:1px solid var(--line);border-radius:14px;padding:27px 32px;background:#faf9f4}.card-head{display:flex;justify-content:space-between;align-items:center}.card-head .eyebrow{font-size:9px;letter-spacing:1.5px}.round{font-size:11px;color:#687468;font-variant-numeric:tabular-nums}.player{background:#e9ede2;text-align:center;overflow:hidden}.record{width:176px;height:176px;margin:24px auto 19px;border-radius:50%;background:repeating-radial-gradient(circle,#273e34 0,#273e34 2px,#344a40 3px,#273e34 4px);display:grid;place-items:center;box-shadow:0 10px 26px #213b321a}.record-ring{width:72px;height:72px;border-radius:50%;background:#d9b48a;border:9px solid #bd986f;display:grid;place-items:center}.record-ring span{font-size:32px;color:#213b32}.record.playing{animation:spin 9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:28px;margin:23px 0 9px}.player h2{font-family:'DM Sans',Arial,sans-serif;font-size:16px;font-weight:500}.player p{font-size:11px;color:#6d796c}.play{margin:12px 0 22px;background:var(--ink);color:white;border:0;border-radius:40px;padding:14px 26px;min-width:165px;font-size:12px}.play span{margin-left:8px}.timeline{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--ink);height:3px}.record-note{margin:23px 0 0;line-height:1.6;font-size:9px!important}.score{font-size:10px;border:1px solid #d9dfd1;border-radius:30px;padding:5px 9px}.muted{font-size:12px;color:var(--muted)}.guess h2{margin-top:27px}.clues{margin-top:23px;display:grid;gap:8px}.clue{background:#f0f0e7;border-radius:7px;display:flex;gap:14px;padding:12px 15px;align-items:center;font-size:12px}.clue b{font-weight:500}.clue span{font-size:10px;color:var(--muted);white-space:nowrap}.hint{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px dashed #d7dbcf;color:#72816e;background:none;border-radius:7px;padding:12px 15px;margin:8px 0 23px;font-size:11px}.hint span{font-size:9px}label[for=answer]{font-size:9px;font-weight:700;letter-spacing:1.5px}.answer-row{display:flex;gap:8px;margin-top:10px}.answer-row input{min-width:0;width:100%;padding:13px 15px;background:white;border:1px solid #d7dcd1;border-radius:7px;font-size:12px}.check{border:0;background:var(--orange);color:white;font-size:24px;border-radius:7px;width:47px;flex-shrink:0}#feedback{min-height:30px;font-size:12px;padding-top:10px;line-height:1.5}.actions{display:flex;align-items:center;justify-content:space-between;margin-top:12px;border-top:1px solid var(--line);padding-top:18px}.text-btn{background:none;border:0;font-size:11px;color:#788071;text-decoration:underline;text-underline-offset:4px}.next{background:none;border:1px solid #c7cfc0;color:var(--ink);font-size:11px;padding:10px 15px;border-radius:6px}.bottom-bar{display:flex;justify-content:space-between;gap:20px;padding:19px 4px;font-size:11px;color:var(--muted)}.bottom-bar>div{display:flex;align-items:center;gap:20px}.bottom-bar button{border:0;background:none;font-size:11px;color:var(--ink)}.toggle{display:flex;align-items:center;gap:5px}.toggle input{accent-color:var(--ink)}footer{border-top:1px solid var(--line);max-width:1240px;margin:auto;padding:24px 36px;display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:9px;color:var(--muted)}footer>span{letter-spacing:1.4px;white-space:nowrap}footer p{line-height:1.8}footer a{color:inherit}.library-heading h1{font-size:48px}.library-tools{display:flex;gap:14px;margin-top:30px}.library-tools input,.library-tools select{padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:#faf9f4;color:var(--ink)}.library-tools input{flex:1;min-width:0}.countries{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.country{padding:17px;border:1px solid var(--line);background:#faf9f4;border-radius:10px}.country h3{font-size:14px;margin:0 0 9px}.country p{font-size:11px;color:var(--muted);margin:7px 0}.country button{margin-top:12px;font-size:11px;background:var(--ink);color:white;border:0;border-radius:5px;padding:8px 12px}.country a{font-size:11px;color:var(--ink);display:inline-block;margin-top:12px}.flag{margin-right:8px;font-size:22px;vertical-align:middle}.completion{padding:20px;background:#e9ede2;border-radius:8px}.source-link{color:var(--ink);font-size:10px}.country .source-link{display:block;margin-top:8px;font-size:9px}[hidden]{display:none!important}@media(max-width:800px){header{padding:20px 24px}.edition{display:none}main{padding:30px 22px}.intro{padding:0 0 30px}h1{font-size:48px}.globe{width:200px;margin-right:0}.game-grid{gap:14px}.card{padding:24px 20px}.countries{grid-template-columns:repeat(2,1fr)}footer>span:last-child{display:none}.bottom-bar{flex-direction:column;gap:12px}.bottom-bar>div{justify-content:space-between}}@media(max-width:560px){header{flex-wrap:wrap;gap:12px}.brand span{font-size:12px}nav{gap:18px}.nav{font-size:11px}.intro .globe{display:none}h1{font-size:46px}.intro .lede{font-size:13px}.game-grid{grid-template-columns:1fr}.record{width:150px;height:150px}.countries{grid-template-columns:1fr}.library-heading h1{font-size:38px}.library-tools{flex-wrap:wrap}.library-tools input{flex-basis:100%}footer{flex-direction:column;align-items:flex-start;gap:5px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){.record.playing{animation:none}}

dialog{border:1px solid var(--line);border-radius:14px;padding:28px;max-width:420px;width:calc(100% - 40px);background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0003}dialog::backdrop{background:#172c25aa}dialog h2{margin-top:0}dialog label{display:block;font-size:10px;letter-spacing:1.5px;margin:22px 0 10px}dialog input{width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;background:white}#revealPasswordError{min-height:18px;color:var(--orange);font-size:12px}.dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.dialog-actions .play{margin:0;min-width:0}
