*{box-sizing:border-box}body{margin:0;background:#eae5d7;color:#163d35;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-image:radial-gradient(ellipse at top,#ffedbd,transparent 65%)}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #edaa48;outline-offset:3px}.cabinet{max-width:580px;margin:24px auto;padding:24px;border-radius:32px;background:#fcf8ed;box-shadow:0 24px 70px #29423920}header{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;gap:8px;align-items:center;font-size:24px;font-weight:850}.brand img{width:44px;height:44px;object-fit:contain;mix-blend-mode:multiply}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:3px}#sound{border:1px solid #bfcbb9;background:transparent;border-radius:20px;padding:9px 12px;font-size:12px}.title{padding:28px 0 22px}.tag{font-size:9px;letter-spacing:2px;font-weight:750;color:#688273}h1{font-size:42px;line-height:1.02;letter-spacing:-1.8px;margin:12px 0}h1 em{font-style:normal;color:#be6e26}.title p{font-size:13px;margin:12px 0 0;color:#698174}.machine{background:#173f38;border-radius:24px;padding:14px;box-shadow:0 6px 0 #0d2b26,0 14px 30px #173f3820}.dashboard{display:flex;justify-content:space-between;color:#efddb0;padding:4px 6px 14px}.dashboard small{display:block;font-size:8px;letter-spacing:2px;opacity:.65}.dashboard strong{display:block;font-family:monospace;font-size:25px;letter-spacing:1px;margin-top:5px}.dashboard .center{text-align:center}.dashboard .center strong{font-size:19px;color:#f6bb80;line-height:29px}.right{text-align:right}.arena{position:relative;overflow:hidden;background:#d4e2c7;border-radius:14px;border:2px solid #0f2d28}canvas{display:block;width:100%;aspect-ratio:3/2;touch-action:none}#overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#eff1dfed;text-align:center;padding:16px}#overlay[hidden]{display:none}#eyebrow{color:#997239;font-size:11px;font-weight:800;letter-spacing:1px}h2{font-size:27px;line-height:1.1;margin:10px 0}#hint{font-size:12px;line-height:1.55;color:#617462;margin:4px 0 16px}.primary{border:0;background:#173f38;color:#fff2cc;border-radius:30px;font-weight:750;padding:14px 32px;box-shadow:0 4px 0 #b5c5a7}.controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.controls button{background:#2e584b;border:1px solid #628271;color:#dfebd2;border-radius:12px;padding:10px 6px;font-size:10px;touch-action:manipulation;user-select:none;box-shadow:0 3px 0 #0b2b22}.controls button span{font-size:25px;display:inline-block;vertical-align:middle;margin-right:8px}.controls button.selected{background:#f4c56d;color:#173f38;border-color:#f4c56d}.controls button:active{transform:translateY(2px);box-shadow:none}.bar{display:flex;align-items:center;justify-content:space-between;margin:14px 4px 0;color:#c2d3bc;font-size:10px}.bar button{background:transparent;border:0;color:#e7dfc7;padding:4px 8px}.bar button:disabled{opacity:.35}.tip{text-align:center;color:#869280;font-size:10px;line-height:1.6;margin:20px 0}kbd{font-family:inherit;background:#ecebdd;padding:2px 5px;border-radius:4px}.bonus{border-top:1px solid #e5e6d7;padding:16px 0 8px;font-size:12px}.bonus summary{cursor:pointer;font-weight:700}.bonus p{line-height:1.6;color:#71816f}.combo{position:absolute;top:12px;left:0;right:0;text-align:center;color:#ac5b24;font-weight:850;font-size:14px;pointer-events:none}footer{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:16px;font-size:11px}footer a{color:#587463;text-decoration:none}button{transition:background .12s,transform .12s}@media(max-width:600px){.cabinet{margin:0;padding:18px;border-radius:0;min-height:100svh}.title{padding-top:22px}h1{font-size:36px}.machine{padding:12px}.dashboard strong{font-size:23px}.tip{font-size:9px}.controls button{min-height:48px;font-size:9px}}@media(max-width:350px){.cabinet{padding:12px}.controls button span{margin-right:3px}h2{font-size:23px}}

.audio-controls{display:flex;flex-direction:column;gap:5px}#music{border:1px solid #bfcbb9;background:transparent;border-radius:20px;padding:9px 12px;font-size:12px}.credits{text-align:center;color:#8b9783;font-size:9px;line-height:1.5;margin:18px 0 0}.credits a{color:inherit}

#prize-modal[hidden]{display:none}#prize-modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#173f38ce;overflow:auto}.prize-card{max-width:420px;width:100%;text-align:center;border-radius:24px;background:#fff5d9;padding:22px;box-shadow:0 0 60px #f4c56d80}.prize-card img{width:180px}.prize-card p{font-size:13px;line-height:1.5}.prize-card strong{display:block;font-size:26px;user-select:all}.prize-card a,.prize-card button{display:block;margin:12px auto;padding:12px;border-radius:12px}.prize-card a{background:#e8af44;color:#173f38;text-decoration:none;font-weight:700}#prize-list a{display:block;padding:10px;color:#173f38}

.prize-card{position:relative;z-index:2}.prize-confetti{pointer-events:none;position:absolute;top:-15px;width:8px;height:14px;animation:prize-rain 2.5s ease-in forwards}@keyframes prize-rain{to{transform:translate(var(--drift),100vh) rotate(600deg);opacity:0}}@media(prefers-reduced-motion:reduce){.prize-confetti{display:none}}

/* Moonlit lake: readable game UI, quiet night overlay. */
.arena{background:#182c40}#overlay{background:#142d3da8;color:#f0ead5}#eyebrow{color:#d9c590}#hint{color:#d0ddcf}.combo{color:#fff0b8;text-shadow:0 2px 5px #122a36}

.coin-bank{padding:16px;margin-top:12px;background:#e8ebd9;border-radius:16px}.coin-bank button{padding:10px;border:1px solid #8b9d78;border-radius:9px;background:#eac777;color:#243d35;cursor:pointer}.coin-bank button:disabled{opacity:.5;cursor:default}

.coin-flight{position:fixed;z-index:10000;pointer-events:none;width:28px;height:28px;display:grid;place-items:center;background:#f4ca5d;border:3px solid #b98a2d;color:#8b5c16;border-radius:50%;font-weight:900;box-shadow:0 0 18px #ffe490;animation:coin-to-bank 1s ease-in forwards}.coin-pulse{display:inline-block;animation:bank-glow .7s ease-out}@keyframes coin-to-bank{0%{transform:translate(-50%,-50%) scale(1.7);opacity:1}25%{transform:translate(-50%,-100%) scale(1.2);opacity:1}90%{opacity:1}100%{transform:translate(var(--coin-x),var(--coin-y)) scale(.4);opacity:0}}@keyframes bank-glow{0%{color:#b57e13;transform:scale(1.7);text-shadow:0 0 12px #eab74d}100%{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.coin-flight{animation-duration:.01s}.coin-pulse{animation:none}}

.workshop h2{font-size:23px;margin:0 0 10px}.workshop #daily-coins{color:#33594d}#workshop-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.craft-item{padding:14px;border-radius:14px;background:#f7f3e5;display:flex;flex-direction:column;gap:12px}.craft-swatch{width:42px;height:42px;display:grid;place-items:center;font-size:28px;border-radius:8px;color:#fff3d2}.craft-item button{font-size:13px;width:100%;padding:10px}.craft-item strong{font-size:14px;min-height:34px}@media(max-width:380px){#workshop-items{grid-template-columns:1fr}}

.name-label{display:flex;flex-direction:column;gap:8px;margin:16px 0 8px;font-weight:600}.name-label input,.name-label select{padding:12px;border:1px solid #a9bdac;border-radius:10px;font:inherit;color:#214e41;background:#faf7ec}.craft-item button{border-radius:9px;border:1px solid #a4b8a4;background:#efe0af;color:#315146;cursor:pointer}.craft-item button:disabled{opacity:.5;cursor:default}

#wardrobe-preview{display:block;width:270px;max-width:100%;height:auto;margin:16px auto;border:2px solid #93ab98;border-radius:16px;image-rendering:pixelated}

.craft-burst{position:fixed;z-index:40;pointer-events:none;color:#d5a53c;font-size:22px;animation:craft-burst 1s ease-out forwards}@keyframes craft-burst{from{transform:translate(0,0) scale(.4)}to{transform:translate(var(--dx),var(--dy)) rotate(100deg) scale(1.1);opacity:0}}@media(prefers-reduced-motion:reduce){.craft-burst{display:none}}

.rescue-row{padding:14px 16px 0;display:grid;gap:8px}.rescue-row button{padding:13px;border-radius:12px;border:1px solid #b7d5bb;background:#b9dbb9;color:#204d40;font-size:15px;font-weight:700;cursor:pointer}.rescue-row button:disabled{opacity:.5;cursor:default}.rescue-row small{font-size:11px;line-height:1.5;color:#c4d2bf}

/* Reserve a visible start/resume button even when mobile text is enlarged. */
#overlay{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px;padding:12px;align-items:stretch;justify-items:stretch}
.overlay-copy{min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}
#overlay h2{font-size:clamp(18px,5vw,25px);margin:6px 0;overflow-wrap:anywhere}
#overlay #hint{margin:6px 0;line-height:1.4}
#overlay #start{justify-self:center;align-self:end;min-height:44px;max-width:100%;padding:10px 30px;flex-shrink:0;touch-action:manipulation}
#overlay[hidden]{display:none}

.feedback-entry .primary{min-height:44px}
#feedback-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:0;border-radius:22px;padding:24px;background:#faf7ec;color:#173f38;box-sizing:border-box}
#feedback-dialog::backdrop{background:#102a27bb}
.feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-heading h2{margin:0}
#feedback-close{min-width:44px;min-height:44px;font-size:28px;background:transparent;border:0;color:#173f38}
#feedback-form label{display:block;margin:16px 0 6px;font-weight:600}#feedback-form label small{font-weight:400}
#feedback-form input,#feedback-form textarea{display:block;box-sizing:border-box;width:100%;font:inherit;font-size:16px;margin-top:6px;padding:12px;border:1px solid #8fa399;border-radius:12px;background:#fffdf6;color:#173f38}
#feedback-form textarea{resize:vertical}#feedback-form small{font-size:13px;line-height:1.5}#feedback-status{line-height:1.5}#feedback-send{width:100%;min-height:44px}#feedback-send:disabled{opacity:.6}.feedback-trap{display:none}

#feedback-dialog select{width:100%;padding:12px;font-size:16px;border-radius:10px}#feedback-inbox article{border-top:1px solid #b4c5b3;padding:8px 0}#feedback-inbox p{white-space:pre-wrap;overflow-wrap:anywhere}#feedback-connect{margin:12px 0}

/* Purpose stays visible during play; pause is within reach next to lives. */
.benefit-banner{margin:18px 0 12px;padding:18px;border-radius:18px;background:#fff0bd;border:1px solid #e4c77e}
.benefit-banner .tag{color:#33584a;font-size:10px;letter-spacing:1.2px}
.benefit-banner h1{font-size:clamp(28px,7.5vw,37px);line-height:1.08;letter-spacing:-1px;margin:10px 0}
.benefit-banner p{font-size:14px;line-height:1.4;color:#345a4c;margin:0 0 10px}.free-note{display:inline-block;background:#173f38;color:#fff2cc;border-radius:20px;padding:7px 11px;font-size:12px}
.quick-rules{font-size:13px;line-height:1.5;margin:0 0 16px;color:#365e50}
.dashboard{align-items:flex-start;gap:8px;padding-bottom:8px}.dashboard .center{min-width:108px}
.pause-button{display:block;min-width:108px;min-height:44px;margin:6px auto 0;padding:9px 10px;background:#f4c56d;color:#173f38;border:1px solid #f4c56d;border-radius:12px;font-size:13px;font-weight:800;touch-action:manipulation}
.pause-button:disabled{opacity:.5;cursor:default}.pause-button[aria-pressed=true]{background:#edf0d6;border-color:#edf0d6}
.reward-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 7px 12px;color:#ffe2a2;font-size:13px;font-weight:700}.reward-strip a{color:#fff0c1;text-underline-offset:3px;padding:5px}
.coin-bank h2{font-size:23px;margin-top:0}.coin-bank #reward-help{display:block;margin:12px 0}.prizes-shortcut{display:inline-block;color:#173f38;font-weight:700;padding:10px 0}.game-rules{margin-top:12px}.game-rules summary{min-height:44px;padding:12px 0}
.feedback-entry details{margin:12px 0}.feedback-entry summary{padding:10px 0}#coin-bank,#earned-prizes{scroll-margin-top:16px}
@media(max-width:350px){.dashboard{gap:4px;padding-inline:0}.dashboard .center{min-width:100px}.pause-button{min-width:100px;font-size:12px}.dashboard small{letter-spacing:1px}.benefit-banner{padding:14px}.reward-strip{font-size:12px}}

.together-entry{padding:20px;background:#fff0bd;border-radius:18px;margin-top:18px}.together-entry h2{margin:10px 0}.together-entry .primary{display:block;text-align:center;text-decoration:none;margin:14px 0}.together-entry small{display:block;color:#526c54;font-size:11px}

.quick-reward{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#f8df9d;color:#173f38;font-size:12px;font-weight:800;flex-wrap:wrap}.quick-reward button{min-height:44px;border:1px solid #173f38;background:#173f38;color:#fff0bd;border-radius:9px;font-size:12px;padding:8px 10px}.quick-reward button[hidden]{display:none}

.weekly-bank{background:#fff0bd;border-radius:18px;padding:18px;margin-top:18px}.weekly-bank button{border:1px solid #9b8351;background:#efc56d;color:#173f38;border-radius:10px;padding:12px;min-height:44px;margin:4px 0}.weekly-bank button:disabled{opacity:.5}.weekly-bank h2{font-size:26px}.weekly-bank small{display:block;line-height:1.5;color:#65765d}

/* A token is a small win; the coupon is the next visible goal. */
.token-progress-copy{flex:1;min-width:170px}.token-progress-copy small{display:block;line-height:1.4;margin-top:5px;font-weight:600}.token-progress-copy progress{display:block;width:100%;height:9px;margin-top:7px;border:0;border-radius:5px;overflow:hidden;background:#bb9d59;accent-color:#28745b}.token-progress-copy progress::-webkit-progress-bar{background:#dac387}.token-progress-copy progress::-webkit-progress-value{background:#28745b;transition:width .25s}.token-progress-copy progress::-moz-progress-bar{background:#28745b}
.token-toast{position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:10px;max-width:calc(100% - 16px);width:max-content;padding:10px 15px;border:2px solid #e1ac43;border-radius:13px;background:#fff2c9;color:#173f38;box-shadow:0 5px 25px #061b38a6;pointer-events:none;animation:token-reveal 3.2s ease-out both}.token-toast[hidden]{display:none}.token-toast strong{display:block;font-size:21px}.token-toast small{display:block;max-width:210px;font-size:11px;margin-top:3px;line-height:1.3}.token-medal{display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:50%;border:3px solid #bd8b2b;background:#f4ca59;color:#986517;font-size:25px;box-shadow:inset 0 0 0 2px #ffe69d;animation:token-spin .65s ease-out}
@keyframes token-reveal{0%{opacity:0;transform:translate(-50%,-12px) scale(.8)}12%,84%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-8px)}}@keyframes token-spin{0%{transform:rotateY(180deg) scale(.5)}80%{transform:rotateY(0) scale(1.2)}100%{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.token-toast,.token-medal{animation:none}.token-progress-copy progress::-webkit-progress-value{transition:none}}

#sound-test,#token-sound-test{border:1px solid #d4b55d;border-radius:18px;padding:7px 10px;background:#fff0bd;color:#254c3d;font-size:11px;min-height:34px}.token-toast{border-color:#f1c45b;box-shadow:0 5px 25px #061b38a6,0 0 19px #ffe39475}.token-medal{box-shadow:inset 0 0 0 2px #ffe69d,0 0 12px #f2c4518c}

.dealer-entry{margin-top:18px;padding:20px;border-radius:18px;background:#172b32;color:#fff0c9;border:2px solid #bfa05e}.dealer-entry .tag{color:#f2cf86}.dealer-entry h2{font-size:27px}.dealer-entry p{line-height:1.5;font-size:14px}.dealer-entry .primary{background:#f1cc77;color:#173f38;margin:8px 0 14px}.dealer-entry small{display:block;font-size:11px;line-height:1.5;color:#dccdac}
#dealer-dialog{width:min(580px,calc(100% - 20px));max-height:calc(100dvh - 20px);overflow:auto;border:2px solid #c2a061;border-radius:20px;padding:16px;background:#142831;color:#fff0c8;box-sizing:border-box}#dealer-dialog::backdrop{background:#07121ddb}.dealer-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.dealer-heading h2{margin:6px 0 12px;font-size:25px}.dealer-heading .tag{color:#d3b67b}#dealer-close{border:0;background:transparent;color:#ffe2a3;font-size:30px;min-width:44px;min-height:44px}#dealer-scene{aspect-ratio:27/19;border-radius:12px;image-rendering:pixelated}#dealer-pot{display:block;text-align:center;font-size:26px;color:#f6d079;margin:14px 0 8px}#dealer-status{font-size:14px;line-height:1.5;min-height:64px;margin:8px 0}.dealer-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.dealer-actions button{min-height:48px;border-radius:12px;padding:12px 8px;font-weight:750;font-size:14px;box-shadow:none}.dealer-actions .primary{background:#f0c977;color:#173f38}#dealer-risk{background:#6c5230;color:#fff0cf;border:1px solid #c6a364}.dealer-actions button:disabled{opacity:.4;cursor:default}#dealer-dialog>small{display:block;font-size:11px;line-height:1.5;color:#c2c7b7}@media(max-width:350px){#dealer-dialog{padding:11px}.dealer-actions button{font-size:12px}#dealer-pot{font-size:23px}}

.token-toast.token-loss{border-color:#bb6757;background:#fff0e3;color:#7c322d;box-shadow:0 5px 25px #061b38a6}.token-loss .token-medal{border-color:#9b5548;background:#dba374;color:#6f2b29;box-shadow:none}



/* Coupon victory has its own stage; it stays usable on short phone screens. */
#prize-modal{box-sizing:border-box;overflow-x:hidden;padding:16px;background:#0c2839ed}.prize-card{box-sizing:border-box;max-width:440px;max-height:calc(100dvh - 32px);overflow:auto;border:2px solid #f4cc62;background:linear-gradient(150deg,#fff8dd,#f9e8ac);box-shadow:0 0 0 6px #ffe29116,0 0 80px #edb84d80;animation:victory-card .65s cubic-bezier(.16,.8,.3,1.15) both}.prize-card h2{font-size:27px;line-height:1.15;margin:13px 0}.prize-badge{display:block;font-size:11px;font-weight:850;letter-spacing:1px;color:#785219}.prize-victory{height:145px;position:relative;display:grid;place-items:center;overflow:hidden;isolation:isolate}.prize-victory img{width:165px;position:relative;z-index:2;filter:drop-shadow(0 6px 8px #90642655);animation:victory-ticket 1.8s ease-in-out infinite}.prize-rays{position:absolute;inset:-70px;background:repeating-conic-gradient(from 0deg,#f4c85033 0deg 11deg,transparent 11deg 30deg);border-radius:50%;animation:victory-rays 12s linear infinite}.prize-ring{position:absolute;width:125px;height:125px;border:3px solid #dcae46;border-radius:50%;box-shadow:0 0 0 8px #eebc3d24,0 0 30px #edb84d80}.victory-star{position:absolute;color:#b97b19;font-size:29px;z-index:3;animation:victory-star 1.3s ease-in-out infinite}.star-a{left:10%;top:22px}.star-b{right:9%;bottom:15px;animation-delay:.4s}.prize-confetti{width:10px;height:16px;z-index:1;animation-duration:3.5s}.prize-confetti.prize-star{background:transparent!important;font-size:23px;color:#ffe39b;width:auto;height:auto}#prize-code{padding:11px;border:2px dashed #bd8a33;border-radius:12px;background:#fff8e5;color:#173f38;overflow-wrap:anywhere;letter-spacing:1px}.prize-card #prize-continue{width:100%;font-weight:800}.bonus-sound-grid [data-sfx="prize"]{grid-column:1/-1;background:#f3d37f;font-weight:800}
@keyframes victory-card{from{opacity:0;transform:translateY(20px) scale(.88)}to{opacity:1;transform:none}}@keyframes victory-ticket{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-7px) rotate(4deg)}}@keyframes victory-rays{to{transform:rotate(360deg)}}@keyframes victory-star{0%,100%{transform:scale(.8);opacity:.6}50%{transform:scale(1.1);opacity:1}}@media(prefers-reduced-motion:reduce){.prize-card,.prize-victory img,.prize-rays,.victory-star{animation:none}.prize-confetti{display:none}}@media(max-height:650px){.prize-victory{height:100px}.prize-victory img{width:125px}.prize-card{padding:14px}.prize-card h2{font-size:23px}}

.pet-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 10px;align-items:start}.pet-growth strong{font-size:12px;display:block;color:#f8e2aa}.pet-growth progress{display:block;width:100%;height:6px;margin:6px 0;accent-color:#9ad2ad}.pet-tools small{display:block;font-size:10px;line-height:1.35;color:#e0dec1}.dealer-shortcut button{width:100%;min-height:40px;border:1px solid #9eaa76;border-radius:10px;padding:7px 6px;font-size:12px;line-height:1.25;background:#35594c;color:#ffefbe;font-weight:800;box-shadow:none}.dealer-shortcut small{margin-top:5px}.dealer-shortcut button.dealer-ready{background:#f2cd71;color:#173f38;border-color:#ffe6a0;box-shadow:0 0 13px #ffd46b50;animation:dealer-invite 2s ease-in-out infinite}.pet-growth.just-grown{animation:pet-grown 2.8s ease-out}.pet-growth[hidden]{display:none}@keyframes dealer-invite{50%{box-shadow:0 0 20px #ffd46b90}}@keyframes pet-grown{0%,25%{filter:brightness(1.5);transform:scale(1.03)}100%{filter:none;transform:none}}@media(prefers-reduced-motion:reduce){.dealer-shortcut button.dealer-ready,.pet-growth.just-grown{animation:none}}@media(max-width:350px){.pet-tools{gap:8px}.dealer-shortcut button{font-size:11px}.pet-tools small{font-size:9px}}

/* Warm casino palette; controls remain available inside the modal on phones. */
#dealer-dialog{background:#242925;border-color:#cbaa67;box-shadow:0 0 45px #cfa55230}.dealer-audio{display:flex;gap:8px;margin:0 0 10px}.dealer-audio button{border:1px solid #a18b5d;background:#343c31;color:#f9e7ba;border-radius:9px;padding:8px 12px;min-height:44px;font-size:12px;box-shadow:none}#dealer-dialog:open{animation:vegas-warmth 7s ease-in-out infinite}@keyframes vegas-warmth{50%{box-shadow:0 0 58px #e8bb6345;border-color:#e5c57e}}@media(prefers-reduced-motion:reduce){#dealer-dialog:open{animation:none}}

/* One saved music level, available beside the music switch and at the bonus table. */
header{flex-wrap:wrap}.audio-controls{display:grid;grid-template-columns:1fr 1fr;width:220px;max-width:100%;gap:6px}.music-volume{display:grid;grid-template-columns:1fr auto;gap:2px 8px;grid-column:1/-1;min-width:0;font-size:11px;line-height:1.4;text-align:left}.music-volume output{font-variant-numeric:tabular-nums;font-weight:750}.music-volume input[type=range]{grid-column:1/-1;width:100%;height:32px;margin:0;accent-color:#9e7333;cursor:pointer;touch-action:manipulation}.music-volume input:focus-visible{outline:2px solid #b88c43;outline-offset:1px;border-radius:6px}.dealer-audio{flex-wrap:wrap}.dealer-audio .music-volume{flex:1 0 100%;color:#ead9b4;margin-top:3px}.dealer-audio input[type=range]{accent-color:#e6c57b}@media(max-width:480px){header .audio-controls{width:100%}.audio-controls #music,.audio-controls #sound{min-height:40px}.music-volume{font-size:12px}}

/* The volume slider stays with the game when Start scrolls the phone to the machine. */
.game-audio{padding:0 4px 7px}.game-music-volume{grid-template-columns:52px minmax(0,1fr) 34px;align-items:center;gap:8px;color:#f6e1b0;font-size:11px}.game-music-volume span{grid-column:1;grid-row:1}.game-music-volume input[type=range]{grid-column:2;grid-row:1;height:32px;accent-color:#ebc779}.game-music-volume output{grid-column:3;grid-row:1;text-align:right;font-size:11px}

/* Public scores and private pet progress have distinct labels. */
.rating ol{list-style:none;padding:0;margin:16px 0}.rating li{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid #244c3820}.rating li span{overflow-wrap:anywhere}.rating li strong{white-space:nowrap}.rating button{margin:10px 8px 0 0}.rating small{display:block;margin-top:12px}.pet-character{padding:12px 14px;background:#f9edc9;border-radius:12px;line-height:1.45}.rating:has(#rating-message:not(:empty)){scroll-margin-top:12px}

.rating-jump{display:block;color:#ead7a6;font-size:11px;line-height:1.4;margin-top:5px;text-decoration:underline}

.ranking-live{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:8px 0 13px;color:#ead7a6;font-size:12px}.ranking-live strong{color:#fff1b5}

.rating button:not(.primary){min-height:44px;padding:10px 16px;border:1px solid #496e5b;border-radius:24px;background:transparent;color:#234d40;font:inherit;font-size:13px;font-weight:600}.rating button:not(.primary):focus-visible{outline:3px solid #d3a245;outline-offset:3px}

#lives.life-gained{animation:life-gained 1s ease-out}@keyframes life-gained{0%,100%{filter:none}35%{filter:drop-shadow(0 0 8px #fff0a3);color:#a4e8cf}}@media(prefers-reduced-motion:reduce){#lives.life-gained{animation:none}}

/* The shared champion is visible before play, with the feel of an arcade high-score screen. */
.champion-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px 12px;align-items:center;margin:20px 0;padding:16px;background:#162d32;color:#fff0c5;border:2px solid #d6b764;box-shadow:0 5px 0 #8b733c,inset 0 0 0 3px #f1cd7613;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px)}
.champion-portrait{text-align:center;align-self:start;color:#eed391;font:700 10px monospace;letter-spacing:1px}.champion-portrait svg{display:block;width:42px;height:42px;filter:drop-shadow(0 0 6px #ecc56150)}.champion-kicker{font:700 9px monospace;letter-spacing:1px;color:#d3bd87}.champion-copy{min-width:0}.champion-copy h2{margin:5px 0;font:800 12px/1.3 monospace;color:#f9d479;letter-spacing:.3px}.champion-copy>strong{display:block;font-size:14px;line-height:1.35;overflow-wrap:anywhere}.champion-number{text-align:right;align-self:start;min-width:94px}.champion-number>span{display:block;font:700 9px/1.4 monospace;color:#e4cf9d}.champion-number>strong{display:block;font:800 34px/1.15 monospace;letter-spacing:1px;color:#ffe29b;text-shadow:2px 2px #836237;font-variant-numeric:tabular-nums}.champion-number>small{font-size:9px;color:#cbbf9f}
#champion-challenge{grid-column:1/-1;margin:0;font-size:13px;font-weight:650;line-height:1.45;color:#fff1c8}.champion-actions{grid-column:1/-1;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.champion-actions button{flex:1;min-height:46px;border:2px solid #ffe7a2;border-radius:5px;background:#ebc675;color:#173f38;box-shadow:0 3px 0 #997940;font:800 13px/1.35 monospace;padding:10px 12px;cursor:pointer}.champion-actions button:disabled{opacity:.55;cursor:default;box-shadow:none}.champion-actions button:focus-visible{outline:3px solid #fff7d8;outline-offset:3px}.champion-actions a{font-size:12px;color:#fff1c5;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}.champion-card>small{grid-column:1/-1;line-height:1.45;color:#c7cebc;font-size:10px}#champion-message{grid-column:1/-1;margin:0;font-size:12px;line-height:1.45;color:#ffe3a0}#champion-message:empty{display:none}.champion-card.is-champion{border-color:#a2d5b5}.champion-card.is-champion .champion-copy h2{color:#b6e8c4}
.rating h3{margin:22px 0 6px;font-size:15px}.rating li.hall-first{background:#f3e5b8;border-radius:8px;border:0;padding:12px 10px;font-weight:700}.ranking-live{font-weight:700;color:#ffe0a1;border-left:3px solid #d4b769;padding-left:8px}.dashboard .right small{font-size:8px;letter-spacing:1px}
@media(max-width:380px){.champion-card{grid-template-columns:30px minmax(0,1fr) auto;padding:12px;gap:9px}.champion-portrait svg{width:30px;height:30px}.champion-copy h2{font-size:10px}.champion-copy>strong{font-size:12px}.champion-number{min-width:82px}.champion-number>strong{font-size:29px}.champion-number>span{font-size:8px}.champion-kicker{font-size:8px;letter-spacing:0}.champion-actions{gap:8px}.champion-actions button{font-size:11px;padding:10px 6px}.champion-actions a{font-size:11px}}
/* Free sticker reward; separate from monetary rewards and saved pet growth. */
.sticker-gift{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0;padding:22px;border:2px solid #cda557;border-radius:24px;background:linear-gradient(120deg,#fff1cb,#f7efd7);box-shadow:0 7px 0 #173f3812}.sticker-gift h2{font-size:clamp(21px,4vw,30px);line-height:1.15;margin:8px 0}.sticker-gift p{margin:8px 0;font-size:14px}.sticker-gift progress{width:min(220px,100%);height:12px;accent-color:#bb7429;display:block;margin:10px 0 5px}.sticker-gift strong{font-size:14px}.sticker-gift button{white-space:normal;max-width:240px;min-height:52px}.sticker-quick{font:inherit;border:1px solid #c8a65e;background:#fce5aa;color:#173f38;border-radius:10px;padding:6px 10px;min-height:38px}.gift-ready{background:#f7c86c!important;font-weight:bold}.reward-strip{gap:8px;flex-wrap:wrap}.sticker-toast{position:absolute;left:8%;right:8%;bottom:12px;z-index:12;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#ffedbb;color:#173f38;padding:12px 16px;border:2px solid #d6ab54;border-radius:16px;box-shadow:0 4px 14px #102b3140;animation:sticker-reveal .4s ease-out}.sticker-toast[hidden]{display:none}.sticker-toast strong{font-size:clamp(12px,2.7vw,17px)}.sticker-toast button{font:inherit;min-height:40px;background:#173f38;color:#fff5df;border:0;border-radius:10px;padding:7px 12px}#sticker-dialog{width:min(94vw,520px);max-height:92dvh;overflow:auto;border:2px solid #cba458;border-radius:24px;background:#fff8e8;color:#173f38;padding:22px;box-shadow:0 20px 70px #0c222a70}#sticker-dialog::backdrop{background:#102b31aa}.sticker-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.sticker-dialog-heading h2{margin:5px 0;font-size:28px}.sticker-dialog-heading>button{border:0;background:#e8e3cf;color:#173f38;border-radius:50%;width:42px;height:42px;font-size:27px;flex:none}.sticker-player{height:clamp(200px,32vh,290px);background:#203b35;border-radius:22px;cursor:pointer;overflow:hidden}.sticker-player:focus-visible{outline:3px solid #d8a443;outline-offset:3px}.sticker-player-status{text-align:center;min-height:20px;font-size:14px;margin:9px 0}.sticker-picker{display:flex;gap:12px;align-items:center;justify-content:center}.sticker-picker label{display:grid;font-size:12px;gap:4px;flex:1}.sticker-picker select{width:100%;font:16px Arial;border:1px solid #b4baaa;border-radius:10px;background:#fffdf7;color:#173f38;padding:10px}.sticker-picker>button{font-size:24px;border:1px solid #b4baaa;border-radius:12px;background:#f5e3bb;color:#173f38;width:45px;min-height:45px;flex:none}#sticker-dialog .primary{display:block;width:100%;text-align:center;white-space:normal;line-height:1.3;margin:14px 0;text-decoration:none;min-height:50px;padding:12px}#sticker-dialog [hidden]{display:none!important}#sticker-dialog small{display:block;line-height:1.5;font-size:12px}#sticker-dialog p{line-height:1.4}#sticker-unlock-note{text-align:center;font-size:14px}.sticker-gift .tag{font-size:11px;letter-spacing:.08em}@keyframes sticker-reveal{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:560px){.sticker-gift{display:block;padding:18px}.sticker-gift button{margin-top:14px;width:100%;max-width:none}.sticker-gift progress{width:100%}.sticker-toast{left:3%;right:3%;padding:9px;gap:7px}.sticker-toast button{font-size:12px}#sticker-dialog{padding:16px}.sticker-dialog-heading h2{font-size:24px}}@media(prefers-reduced-motion:reduce){.sticker-toast{animation:none}}

/* Two clearly named Telegram gifts: free stickers and Premium emoji. */
.sticker-pack-choices{display:grid;gap:12px;margin:16px 0}.sticker-pack-choice{border:1px solid #cbb98f;border-radius:16px;padding:16px;background:#fffdf6}.sticker-pack-choice h3{font-size:20px;margin:0 0 8px}.sticker-pack-choice p{font-size:14px;margin:0 0 12px}.sticker-secondary{display:block;text-align:center;border:2px solid #315c50;border-radius:12px;padding:12px;color:#173f38;text-decoration:none;font-weight:700;line-height:1.3;min-height:48px}.sticker-secondary:focus-visible{outline:3px solid #bb7429;outline-offset:3px}#sticker-dialog .sticker-pack-choice .primary{margin:10px 0 0}#sticker-telegram-help{margin-top:16px;font-size:13px}#sticker-telegram-help summary{cursor:pointer;font-weight:700;padding:8px 0}
