:root{color-scheme:dark;--bg:#140e0b;--card:#2e1c15;--text:#fcebd4;--soft:#d6b891;--gold:#efc36d;--border:#926742;--line:#64432b;--green:#3f8155}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at top,#57301b 0%,#23150f 32%,#100d0a 80%);font:15px/1.55 system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text);min-height:100vh}
button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffcd6a;outline-offset:3px}
.page{width:min(100% - 26px,760px);margin:auto;padding:15px 0 40px}
.top-nav{display:flex;justify-content:space-between;align-items:center;gap:10px}.back-link{display:inline-flex;align-items:center;padding:11px 17px;border:1px solid #c69856;border-radius:28px;background:#2b2019;box-shadow:0 3px 14px #0007;font-weight:800;font-size:14px}.back-link:hover{background:#4b3524}.top-nav-note{font:900 14px Georgia,serif;color:var(--gold);letter-spacing:.7px}.top-nav-note b{color:#f3e4ca;font:700 10px system-ui,sans-serif;letter-spacing:1px}
.hero{text-align:center;padding:27px 10px 23px}.hero-crown{font-size:45px;display:block;filter:drop-shadow(0 2px 8px #ffc4654a)}h1{font:900 clamp(31px,7vw,51px)/1.09 Georgia,serif;margin:8px 0 11px;color:#ffe1a4;text-shadow:0 3px 2px #38210d}.hero p{color:var(--soft);margin:0;font-size:14px}
.switch{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:15px}.variant{border:1px solid #9c7646;border-radius:15px;background:#2c211a;color:#e8cda6;padding:15px 9px;font-size:16px;font-weight:900}.variant.active{color:#241608;border-color:#ffdf9d;background:linear-gradient(180deg,#ffe5a1,#d4a04f);box-shadow:0 0 0 2px #b98b3b33,0 6px 20px #0007}
.scoreboard{border:2px solid #be8b4e;background:linear-gradient(155deg,#4a2e20,#291b15 30%,#201510);border-radius:22px;padding:23px 22px 19px;box-shadow:0 12px 28px #000a;min-height:360px}.scoreboard-intro{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.scoreboard h2{margin:0 0 10px;font:900 clamp(21px,4.3vw,28px)/1.18 Georgia,serif;color:#ffe0a5}.intro-text{margin:0 0 24px;color:#e8d0b5;font-size:13px;max-width:520px}.scoreboard-meta{display:inline-block;color:#ebc583;border-radius:14px;background:#1b120e;border:1px solid #735434;padding:5px 9px;white-space:nowrap;font-weight:800;font-size:11px}
.village-filter{margin:0 0 18px;display:flex;gap:8px;flex-wrap:wrap}.village-filter[hidden],.village-search[hidden]{display:none}.scope{border:1px solid #88613b;color:#f9d79e;background:#322218;padding:8px 13px;border-radius:10px;font-weight:800;font-size:13px}.scope.active{background:#745031;border-color:#ffcc76}.village-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap;width:100%}.village-search label{font-size:12px}.village-search input{min-width:110px;flex:1;color:#fff2d9;background:#180f0c;border:1px solid #a27c55;border-radius:8px;padding:9px}.village-search button{background:linear-gradient(#fad78b,#d5a14c);color:#25180f;font-weight:850;border:0;border-radius:9px;padding:9px 15px}
.rank-head{display:grid;grid-template-columns:minmax(0,1fr) 78px 65px;gap:6px;color:#e3b979;font-size:10px;font-weight:900;letter-spacing:.65px;text-transform:uppercase;padding:0 10px 10px;border-bottom:1px solid #88623c}.rank-head span:nth-child(n+2){text-align:right}.results{width:100%}.rank-row{display:grid;grid-template-columns:minmax(0,1fr) 78px 65px;gap:6px;align-items:center;min-height:67px;padding:10px;border-bottom:1px solid #65452e}.rank-row:nth-child(-n+3) .number{color:#ffe5a4}.rank-row.is-me{border:1px solid #efc36d;border-radius:11px;background:#65422566;margin-top:5px;margin-bottom:5px}.rank-person{display:flex;align-items:center;gap:12px;min-width:0}.number{color:#e2b676;font-size:15px;font-weight:900;min-width:25px;text-align:center}.medal{font-size:22px;min-width:25px}.who{min-width:0}.name{display:block;font-weight:850;color:#fff0d0;overflow-wrap:anywhere;line-height:1.25}.village{display:block;font-size:12px;color:#d6b594;margin-top:3px}.points{color:#ffdc89;font-weight:950;text-align:right;font-variant-numeric:tabular-nums}.games{color:#dfc4a7;text-align:right;font-variant-numeric:tabular-nums}.extra-rows{border-top:1px solid #a57b4d}.extra-rows[hidden]{display:none}.expand{display:block;width:100%;border:1px solid #a87d48;border-radius:12px;padding:13px;margin:17px 0 2px;background:#3b281c;color:#ffdf9e;font-weight:850}.expand[hidden]{display:none}.expand span{margin-left:6px}.expand:hover{background:#59402b}.loading,.empty,.error{color:#dac0a2;padding:26px 8px;text-align:center}.error{color:#ffd9a4}.your-position{margin:18px 0 2px;color:#f7d799;background:#15100dd9;border:1px solid #846139;border-radius:10px;padding:11px 12px;font-size:13px}.your-position[hidden]{display:none}.footer-hint{font-size:11px;color:#c3a98b;margin:19px 0 0}.footer{text-align:center;padding:22px 10px}.play-button{display:inline-block;background:linear-gradient(#ffdfa0,#d6a147);color:#251507;font-weight:950;border:1px solid #ffe5a4;border-radius:15px;padding:14px 26px;box-shadow:0 5px 13px #0008}.footer p{font-size:10px;letter-spacing:2px;color:#a98456;margin-top:17px}
@media(max-width:480px){.page{width:calc(100% - 20px);padding-top:10px}.top-nav-note{font-size:12px}.back-link{font-size:13px;padding:9px 12px}.hero{padding:19px 0 18px}.scoreboard{padding:18px 13px}.switch{gap:7px}.variant{padding:12px 5px;font-size:14px}.rank-head,.rank-row{grid-template-columns:minmax(0,1fr) 67px 51px;gap:4px}.rank-head{font-size:9px;padding-left:5px;padding-right:5px}.rank-row{padding:10px 4px}.rank-person{gap:6px}.name{font-size:14px}.number,.medal{font-size:15px;min-width:23px}.village{font-size:11px}.points,.games{font-size:13px}.scoreboard-meta{font-size:10px}.scoreboard-intro{gap:6px}.intro-text{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* V13: třetí varianta výsledků */
.switch{grid-template-columns:repeat(3,minmax(0,1fr))}
.switch .variant{min-width:0;font-size:clamp(12px,2.7vw,16px);white-space:normal;line-height:1.25}
@media(max-width:480px){.switch{gap:5px}.switch .variant{padding:12px 4px;font-size:12px}}

/* V16: odkazy na herní žebříčky fungují i bez JavaScriptu. */
.switch a.variant{display:flex;justify-content:center;align-items:center;text-align:center;}

/* V19 – jen malé ikonky pod sloganem „Nejlepší hráči“ */
#vysledky{scroll-margin-top:12px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.hero .share-panel{margin:13px auto 0;padding:0;border:0;background:none;max-width:100%}
.hero .share-actions{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:9px}
.hero .share-action{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:1px solid #a87942;border-radius:50%;color:#fff;background:#3b2d24;font:800 19px/1 system-ui,Arial,sans-serif;text-decoration:none;cursor:pointer;transition:transform .14s,filter .14s}
.hero .share-action:hover{filter:brightness(1.15);transform:translateY(-1px)}
.hero .share-action:active{transform:translateY(1px)}
.hero .share-action:focus-visible{outline:3px solid #ffd77d;outline-offset:3px}
.hero .share-action[hidden]{display:none!important}
.hero .share-facebook{background:#2364b7;border-color:#7ba8e4}
.hero .share-whatsapp{background:#1a9e68;border-color:#7edcaf}
.hero .share-x{background:#18191a;border-color:#888}
.hero .share-telegram{background:#2186b9;border-color:#7dc5e4}
.hero .share-copy{background:#5b4434;border-color:#bb9769}
.hero .share-native{background:#684a2d;border-color:#bb9769}
.hero .share-glyph{display:block;font-size:19px}
.hero .share-f{font-family:Arial,sans-serif;font-size:24px;font-weight:900;transform:translateY(2px)}
.hero p.share-status{margin:0;color:#f1cc84;font-size:12px}
.hero p.share-status:not(:empty){margin-top:10px}
@media(max-width:380px){.hero .share-actions{gap:7px}.hero .share-action{width:34px;height:34px;min-width:34px;min-height:34px;flex-basis:34px}}
@media(prefers-reduced-motion:reduce){.hero .share-action{transition:none}}
