/* Barvy a vzhled: uprav hodnoty v :root nebo kterékoli pravidlo níže. */
:root{--bg:#0d1b1e;--panel:#14292d;--cell:#0a1315;--gold:#e0a93b;--sand:#efe3c2;--lapis:#2a5f8f;--red:#c0392b;--dim:#8fa5a0;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0d1b1e}}
:root[data-theme="dark"]{--bg:#0d1b1e}
*{box-sizing:border-box}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:radial-gradient(ellipse at 50% 0,#27565c 0,transparent 55%),repeating-linear-gradient(90deg,rgba(224,169,59,.05) 0 2px,transparent 2px 46px),var(--bg) fixed;color:var(--sand);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh;display:flex;justify-content:center;padding:16px}
main{width:100%;max-width:560px;position:relative;z-index:1}
h1{font-family:Cinzel,Georgia,serif;font-weight:800;font-size:clamp(1.6rem,6vw,2.3rem);text-align:center;margin:4px 0 12px;color:var(--gold);letter-spacing:.04em}
#banner{min-height:34px;text-align:center;font-weight:600;color:var(--sand);padding:6px;border-radius:8px;margin-bottom:8px;background:var(--panel)}
#banner.fs{background:var(--lapis)}
#reels{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px;background:var(--panel);border:3px solid var(--gold);border-radius:14px}
.reel{position:relative;overflow:hidden;aspect-ratio:1/3;border-radius:8px}
.strip{position:absolute;left:0;right:0;top:0;height:200%;display:grid;grid-template-rows:repeat(6,1fr);transform:translateY(-50%)}
.reel.spin .strip{animation:sc .26s linear infinite;filter:blur(2.5px)}
.reel.land .strip{animation:lnd .3s ease-out}
.reel.ex{animation:exp .8s}
@keyframes sc{from{transform:translateY(-50%)}to{transform:translateY(0)}}
@keyframes lnd{0%{transform:translateY(-44%)}55%{transform:translateY(-51.5%)}100%{transform:translateY(-50%)}}
@keyframes exp{50%{transform:scale(1.08);box-shadow:0 0 28px var(--gold)}}
#reels.shake{animation:shk .6s}
@keyframes shk{20%{transform:translate(-6px,2px)}40%{transform:translate(6px,-2px)}60%{transform:translate(-4px,1px)}80%{transform:translate(4px,-1px)}}
.cell{margin:3px;background:radial-gradient(circle at 50% 30%,#1f4147,var(--cell));border-radius:10px;display:flex;align-items:center;justify-content:center}
.cell img{width:86%;height:86%;filter:drop-shadow(0 2px 2px rgba(0,0,0,.6))}
.mi{width:1.5em;height:1.5em;vertical-align:middle}td .mi{width:1.9em;height:1.9em}

.cell.win{box-shadow:inset 0 0 0 3px var(--gold),0 0 16px rgba(224,169,59,.7);animation:p .6s 4}
@keyframes p{50%{transform:scale(1.07)}}

.pyr{position:fixed;left:0;bottom:0;width:100%;height:22vh;opacity:.08;pointer-events:none}
#fx{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:9}
.coin{position:absolute;top:0;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0,#e0a93b 55%,#8a5a0c);border:2px solid #b27d1c}
.bw{position:absolute;inset:0;margin:auto;width:fit-content;height:fit-content;text-align:center;font-family:Cinzel,Georgia,serif;font-weight:800;font-size:clamp(1.6rem,8vw,3rem);color:var(--gold);text-shadow:0 3px 0 #5a3a00,0 0 30px rgba(224,169,59,.8);animation:bwz 2.2s ease-out forwards}
.bw b{display:block;font-size:1.6em;color:#fff3b0}
@keyframes bwz{0%{transform:scale(.3);opacity:0}15%{transform:scale(1.1);opacity:1}25%{transform:scale(1)}85%{opacity:1}100%{transform:scale(1.05);opacity:0}}
.mute{position:absolute;right:0;top:4px;padding:8px 10px;background:var(--panel)}
.info{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.info div{background:var(--panel);border-radius:10px;padding:8px 10px;text-align:center}
.info small{display:block;color:var(--dim);font-size:.75rem}
.info b{font-size:1.15rem;color:var(--gold)}
.ctl{display:flex;gap:8px;align-items:stretch}
button{font:inherit;font-weight:700;border:0;border-radius:10px;padding:12px 14px;cursor:pointer;background:var(--lapis);color:#fff}
button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
button:disabled{opacity:.4;cursor:not-allowed}
#spin{flex:1;background:var(--gold);color:#2a1c00;font-size:1.2rem}
#gamble{background:var(--red)}
#gp{display:none;margin-top:10px;background:var(--panel);border-radius:12px;padding:12px;text-align:center}
#gp .row{display:flex;gap:8px;justify-content:center;margin-top:8px}
details{margin-top:14px;background:var(--panel);border-radius:10px;padding:10px 12px;font-size:.9rem}
summary{cursor:pointer;font-weight:700;color:var(--gold)}
table{width:100%;border-collapse:collapse;margin-top:8px}
td,th{padding:3px 6px;text-align:center}th{color:var(--dim);font-weight:600}
.note{color:var(--dim);font-size:.78rem;text-align:center;margin-top:14px;line-height:1.4}
@media (prefers-reduced-motion:reduce){.cell.win,.reel.land .strip,.reel.ex,#reels.shake{animation:none}}
