:root{color-scheme:dark;--gold:#ffd788;--cream:#fff5da;--mint:#8ee6c5;--muted:#84a79a;--red:#c54742;font-family:Arial,Helvetica,sans-serif;background:#041b18;color:var(--cream)}
*{box-sizing:border-box}body{margin:0;min-height:100svh;background:radial-gradient(ellipse at 69% 38%,#174c3d66,transparent 46%),radial-gradient(ellipse at 12% 90%,#82522e21,transparent 50%),#041b18}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(#d6ead8 1px,transparent 1px);background-size:91px 117px;mask-image:linear-gradient(#000,transparent 80%)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.layout{min-height:100svh;display:flex;align-items:center;justify-content:center;gap:clamp(55px,9vw,170px);padding:24px 30px}.editorial{width:360px}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:700;color:var(--gold);display:inline-flex;align-items:center;gap:10px}.eyebrow i{height:6px;width:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 15px #ffd788}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(50px,5.1vw,76px);line-height:1.05;letter-spacing:-3px;margin:29px 0 22px}h1 em{color:var(--gold);font-weight:400}.editorial>p{font-size:15px;color:#a8c1b7;line-height:1.8;margin-bottom:35px}.instruction{display:flex;gap:18px;align-items:start;margin:22px 0;font-size:12px;line-height:1.7;color:#8eafa1}.instruction>b{font-size:10px;letter-spacing:1px;color:var(--gold);border:1px solid #b6bd852b;border-radius:50%;padding:7px 8px}.instruction strong{display:block;color:#e3eadd;font-size:13px;font-weight:500}.desktop-note{margin-top:40px;line-height:2;font-size:8px;letter-spacing:1px;color:#8caa9f}.desktop-note span{margin:0 6px;color:var(--gold)}.local-note{font-size:10px;color:#648678;margin-top:15px}.phone{width:min(420px,calc((100svh - 48px)*.53));height:calc(100svh - 48px);max-height:900px;min-height:570px;flex-shrink:0;display:flex;flex-direction:column;background:#062e26;border:1px solid #678c7066;border-radius:30px;overflow:hidden;box-shadow:0 25px 100px #0009,0 0 0 6px #ffffff03;position:relative}.game-header{height:43px;flex-shrink:0;padding:0 18px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Georgia,serif;font-size:21px;font-style:italic;letter-spacing:-.7px}.brand span{font:700 7px Arial;letter-spacing:1.8px;color:var(--gold);margin-left:11px}.header-actions{display:flex;gap:9px}.icon-button{border:0;background:#ffffff07;color:#bed2c5;width:29px;height:29px;border-radius:50%;font-size:16px;position:relative}.icon-button:hover{background:#ffffff19}.sound-slash{position:absolute;left:9px;top:4px;color:#e6b18a}.sound-on .sound-slash{display:none}.scoreboard{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;height:54px;margin:0 10px;border-top:1px solid #a6c5aa18}.stat{text-align:center;min-width:70px}.stat>span{display:block;font-size:7px;letter-spacing:1.5px;color:#96b2a4;margin-bottom:3px}.stat strong{font-size:23px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-1px}.main-score strong{color:var(--gold);font-size:30px;line-height:29px}.combo strong{color:var(--mint)}.timer.urgent strong{color:#ff9985;animation:urgent .65s infinite alternate}.rival{position:relative;flex-shrink:0;height:32px;margin:0 15px 7px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#e1c78f;padding-bottom:6px}.rival b{font-weight:600;margin-left:5px}.rival small{color:#83a698;font-size:8px;margin-left:6px}.rival>strong{font-size:11px;font-variant-numeric:tabular-nums}.rival-track{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff10}.rival-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#be8745,#ffe2a4);box-shadow:0 0 8px #eabc6955;transition:width .4s}.arena-wrap{position:relative;flex:1;min-height:0;margin:0 6px;overflow:hidden;border-radius:16px;background:#073b32 url('assets/frozen-arena.webp') center/100% 100% no-repeat;box-shadow:inset 0 0 35px #001b1466}canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair;outline:none}.arena-top{position:absolute;top:15px;left:20px;right:20px;display:flex;justify-content:space-between;pointer-events:none;font-size:7px;font-weight:700;letter-spacing:1.1px;color:#c4dec0a0}.shot-hint{position:absolute;bottom:17px;left:0;right:0;text-align:center;font-size:7px;letter-spacing:2px;color:#c6e7d4a0;pointer-events:none;transition:opacity .2s}.controls{flex-shrink:0;height:66px;padding:12px 19px 9px;display:grid;grid-template-columns:87px 1fr;gap:3px 12px;align-items:center}.controls label{font-size:7px;font-weight:bold;letter-spacing:.8px;color:#9ebcaf}.controls label b{color:var(--gold);display:block;font-size:12px;margin-top:4px;letter-spacing:0}input[type=range]{appearance:none;width:100%;height:5px;border-radius:9px;background:linear-gradient(90deg,#e3ad56 57%,#ffffff15 57%);cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;height:19px;width:19px;border:3px solid #ffe7ad;border-radius:50%;background:#c99645;box-shadow:0 0 10px #f8ce6655}input[type=range]::-moz-range-thumb{height:15px;width:15px;border:3px solid #ffe7ad;border-radius:50%;background:#c99645}.footer-hint{grid-column:1/-1;text-align:center;font-size:8px;color:#86a99b;letter-spacing:.3px}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(#03282033,#032820ab);backdrop-filter:blur(3px);z-index:2;transition:opacity .25s}.overlay[hidden]{display:none}.start-card{width:86%;text-align:center;background:linear-gradient(145deg,#0f493deb,#062c26f5);border:1px solid #e5c3824d;border-radius:23px;padding:27px 16px 22px;box-shadow:0 20px 60px #001b14aa;animation:card-in .5s ease-out}.card-star{font-size:42px;line-height:1;color:var(--gold);margin-bottom:17px;text-shadow:0 0 25px #ffcf7977}.start-card .eyebrow{font-size:8px;letter-spacing:2px}.start-card h2{font-family:Georgia,serif;font-weight:400;font-size:37px;line-height:1.06;letter-spacing:-1.5px;margin:17px 0}.start-card p{color:#bdd1c5;font-size:11px;line-height:1.8}.play-button{margin-top:15px;width:100%;border:1px solid #ffe4a2;border-radius:12px;padding:16px;background:linear-gradient(135deg,#ffe0a0,#dfae5d);color:#23392b;font-size:13px;font-weight:700;box-shadow:0 6px 22px #e3ad5622;transition:transform .18s,box-shadow .18s}.play-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #e3ad5655}.play-button span{margin-left:30px}.start-card .card-foot{font-size:8px;color:#7fa491;margin:16px 0 0}.toast{position:absolute;left:0;right:0;top:17%;text-align:center;pointer-events:none;color:#ffe2a1;font-size:18px;font-weight:bold;text-shadow:0 2px 15px #001b14;opacity:0;transform:translateY(10px);transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translateY(0)}.result-stats{font-size:11px;line-height:2;color:#e7ca8c}.bump{animation:score-pop .26s ease-out}@keyframes score-pop{50%{transform:scale(1.18)}}@keyframes card-in{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}@keyframes urgent{to{opacity:.55}}@media(max-width:800px){.editorial{display:none}.layout{padding:12px}.phone{height:calc(100svh - 24px);width:min(440px,calc((100svh - 24px)*.56));min-height:0}}@media(max-width:500px){.layout{padding:0;display:block}.phone{width:100%;height:100svh;max-height:none;min-height:0;border:0;border-radius:0;box-shadow:none;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.game-header{height:38px}.scoreboard{height:49px}.rival{height:27px}.controls{height:61px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.bonus-guide{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.bonus-guide span{padding:8px 10px;border:1px solid #ddc98c29;border-radius:8px;font-size:12px;color:#ffdb8f;background:#ffffff03}.bonus-guide b{font-size:10px;font-weight:400;color:#bacfbd;margin-left:4px}.card-bonuses{display:flex;justify-content:center;gap:6px;margin:16px 0 0}.card-bonuses[hidden]{display:none}.card-bonuses span{font-size:9px;color:#f8d798;padding:6px 8px;background:#ffffff07;border:1px solid #ffdf8b24;border-radius:7px}.effect-badge{position:absolute;top:32px;left:50%;transform:translateX(-50%);background:#6e4715e8;border:1px solid #e7c16b91;box-shadow:0 0 20px #ffce6430;border-radius:20px;padding:7px 11px;color:#ffeab8;font-size:9px;font-weight:bold;letter-spacing:.5px;white-space:nowrap;pointer-events:none}.effect-badge[hidden]{display:none}.effect-badge b{margin-left:8px;color:#fff8df}.golden-mode .arena-wrap{box-shadow:inset 0 0 35px #d9a33322,0 0 14px #edc86327}.golden-mode .main-score strong{text-shadow:0 0 16px #ffcf69a6}.bonus-time{animation:time-prize .75s ease-out}.bonus-time strong{color:#b7efff}@keyframes time-prize{30%{transform:scale(1.2);filter:drop-shadow(0 0 12px #8cdfff)}100%{transform:scale(1)}}
/* A complete portrait world: the scenery lives inside the phone, behind gameplay. */
.editorial{display:none}.layout{padding:12px;gap:0}.phone{width:min(440px,calc((100svh - 24px)*.57));height:calc(100svh - 24px);min-height:0;background:#102844;isolation:isolate}.world{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.world-scene{position:absolute;inset:-1.5%;background-position:center;background-size:100% 100%;opacity:0;transition:opacity 1.2s ease;animation:world-drift 18s ease-in-out infinite alternate}.world-scene.active{opacity:1}.scene-village{background-image:url('assets/scene-village.webp')}.scene-forest{background-image:url('assets/scene-forest.webp')}.scene-aurora{background-image:url('assets/scene-aurora.webp')}.world:after{content:"";position:absolute;inset:0;background:linear-gradient(#031b3f44 0%,transparent 28%,#00172918 84%,#03182e88 100%)}.world-light{position:absolute;inset:-20%;background:radial-gradient(ellipse at 25% 20%,#ffd57838,transparent 36%),radial-gradient(ellipse at 90% 70%,#ffb34622,transparent 25%);mix-blend-mode:screen;animation:lantern-glow 5s ease-in-out infinite alternate;pointer-events:none}.phone[data-scene=aurora] .world-light{background:conic-gradient(from 25deg at 45% 8%,transparent 0deg,#7bffce45 25deg,transparent 50deg,#b969ff55 80deg,transparent 105deg);filter:blur(12px);animation:aurora-wave 12s ease-in-out infinite alternate}.game-header{height:34px;background:#061d36a8}.scoreboard{height:48px;background:linear-gradient(#061d369e,#061d3677);margin:0;padding:0 10px;border-top:1px solid #ffffff14}.brand{text-shadow:0 2px 8px #00121b}.rival{height:28px;background:#061d36a1;border:1px solid #ffffff1c;border-radius:8px;padding:4px 8px 7px;margin:2px 10px 6px;backdrop-filter:blur(7px)}.rival small{color:#b4d3da}.rival-track{left:8px;right:8px;bottom:2px}.stat>span{color:#c3d3de}.arena-wrap{background:none;margin:0 6px;border:1px solid #e3f8ff46;box-shadow:inset 0 0 40px #001f3d25;border-radius:18px}.arena-wrap:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#031c3526 17%,#031c3526 83%,transparent);pointer-events:none;z-index:-1}.arena-top{top:11px;left:15px;right:15px;color:#f5fcffcf;text-shadow:0 1px 4px #00162e}.controls{height:55px;padding:7px 18px;background:#031c34b8;backdrop-filter:blur(10px);margin-top:5px}.controls label,.footer-hint{color:#c2d7dd}.shot-hint{color:#e1f2ffb8;text-shadow:0 1px 5px #000}.overlay{background:linear-gradient(#031c351a,#031b4b5c);backdrop-filter:blur(2px)}.start-card{background:linear-gradient(145deg,#14395eea,#08263aee);border-color:#ffe0a978;box-shadow:0 20px 70px #001a42a8}.start-card .card-foot{color:#a6cbd7}.phone[data-scene=forest] .arena-wrap{background:#032f4633}.phone[data-scene=forest] .start-card{background:linear-gradient(145deg,#0f493de8,#07362fee)}.golden-mode .arena-wrap{box-shadow:inset 0 0 35px #d9a33322,0 0 14px #edc86365}.icon-button{background:#ffffff12;color:#f1f1df}.effect-badge{z-index:1}.toast{z-index:1;font-size:15px}.phone .bonus-time strong{color:#c4f8ff}@keyframes world-drift{from{transform:scale(1.015) translateY(-.3%)}to{transform:scale(1.04) translateY(.3%)}}@keyframes lantern-glow{from{opacity:.4;transform:scale(1)}to{opacity:1;transform:scale(1.06)}}@keyframes aurora-wave{from{opacity:.5;transform:rotate(-6deg) translateX(-3%)}to{opacity:.9;transform:rotate(8deg) translateX(3%)}}@media(max-width:500px){.layout{padding:0}.phone{width:100%;height:100svh;border:0;border-radius:0}.game-header{height:32px}.scoreboard{height:45px}.rival{height:26px}.controls{height:52px}}@media(prefers-reduced-motion:reduce){.world-scene,.world-light{animation:none!important;transition:none!important}}
/* Christmas HUD: compact enamel, gold edging, frosted highlights. */
.game-header{height:35px;padding:0 12px;background:linear-gradient(#041c32e0,#07213891);border-bottom:1px solid #ffe0a31f}.brand{position:relative;font-size:21px;color:#fff1ce;text-shadow:0 2px 1px #06182c,0 0 14px #f5bd4b38;display:flex;align-items:center;gap:5px}.brand>i{font:normal 17px Georgia;color:#ffe4a3}.brand>span{font-size:6px;letter-spacing:1.1px;margin:2px 0 0 6px;padding:4px 5px;background:linear-gradient(#b9443b,#72292c);border:1px solid #e6bc776b;border-radius:3px;transform:rotate(-3deg);box-shadow:0 2px 5px #0003;color:#fff3d6}.header-actions{gap:7px}.icon-button{width:25px;height:25px;font-size:14px;border:1px solid #eac48180;background:linear-gradient(145deg,#315347,#092e32);color:#ffe6a6;box-shadow:inset 0 1px 2px #fff6,0 2px 4px #0018299c}.icon-button:hover{background:linear-gradient(145deg,#49745d,#175445);box-shadow:0 0 12px #ffdb7840}.sound-slash{left:8px;top:2px}.scoreboard{height:61px;display:grid;grid-template-columns:1fr 1.32fr 1fr;gap:7px;padding:4px 9px 5px;background:linear-gradient(#08223a90,#06253e36);border:none;align-items:stretch}.stat{min-width:0;border:1px solid #efd29a;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 3px 9px #00152c7a,inset 0 1px 2px #fff5;display:flex;align-items:center;justify-content:center;gap:2px}.stat:before{content:"";position:absolute;top:0;left:10%;right:10%;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,#fff4d4,transparent);opacity:.9}.stat span,.stat>div>span{display:block;color:#ffedc0;font-size:7px;font-weight:700;letter-spacing:1px;line-height:1.2;margin-bottom:2px}.timer{background:linear-gradient(130deg,#285856,#0d3438 65%,#133a40)}.timer strong{display:block;font-size:23px;line-height:25px;color:#fff6d7;text-shadow:0 2px 1px #001f26;font-weight:800;letter-spacing:-.8px}.hud-clock,.hud-star{display:block;flex-shrink:0;width:24px;height:29px;background-image:url('assets/bonus-sprites.webp');background-size:300% 100%;background-repeat:no-repeat;filter:drop-shadow(0 2px 3px #001626);margin-left:-3px}.hud-clock{background-position:0 50%}.hud-star{background-position:50% 50%;width:22px;height:27px}.main-score{background:linear-gradient(120deg,#a72b37,#7e1428 65%,#a7313e);flex-direction:column;gap:0;border-color:#ffdf98;box-shadow:0 3px 10px #0013298c,inset 0 1px 4px #ffce914d,0 0 10px #ffd36c1a}.main-score>span{font-size:7px;letter-spacing:1.3px;margin:0}.main-score strong{font-size:29px;line-height:30px;font-weight:900;letter-spacing:-.5px;color:#ffe7a2;text-shadow:0 2px 0 #7a3617,0 0 12px #ffb64252}.score-glint{position:absolute;top:-80%;left:-60%;width:22px;height:220%;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:rotate(25deg);animation:gold-shine 7s ease-in-out infinite;pointer-events:none}.combo{background:linear-gradient(130deg,#22664f,#0e403b 70%,#0c4540)}.combo strong{display:block;color:#ffe196;font-size:25px;line-height:26px;text-shadow:0 2px 1px #063e2a;font-weight:800}.rival{height:28px;margin:0 10px 6px;padding:2px 9px 8px 5px;border:1px solid #edca85a8;background:linear-gradient(110deg,#733135e8,#183746e8 55%,#0b2b3ae8);border-radius:10px;box-shadow:0 2px 7px #00142166,inset 0 1px 1px #ffeabc30;backdrop-filter:blur(8px)}.rival-copy{display:flex;align-items:center;gap:1px}.rival-crown{font-style:normal;font-size:18px;color:#ffdb7b;line-height:16px;filter:drop-shadow(0 1px 2px #70401c)}.rival b{font-size:10px;color:#fff2d2}.rival small{font-size:7px;color:#d4d8ca;margin-left:5px}.rival>strong{font-size:12px;font-style:italic;color:#ffe39a;text-shadow:0 1px 2px #0005}.rival-track{height:3px;bottom:3px;left:8px;right:8px;border-radius:4px;background:#031c30a8;overflow:hidden}.rival-track i{border-radius:4px;background:repeating-linear-gradient(120deg,#fce6a1 0px,#e8b256 7px,#ffdb81 8px,#ffdb81 12px);box-shadow:0 0 7px #ffe3a1}.controls{position:relative;height:56px;margin:5px 8px 7px;padding:6px 11px 4px;border:1px solid #ebc987b0;border-radius:12px;background:linear-gradient(110deg,#843137e8,#57202de8 36%,#123641ed);box-shadow:inset 0 1px 2px #fff4,0 3px 12px #00132a66;grid-template-columns:77px 1fr;gap:0 8px;overflow:hidden}.controls:before{content:"";position:absolute;left:12px;right:12px;top:0;height:2px;background:linear-gradient(90deg,transparent,#ffedc9aa,transparent)}.controls label{font-size:7px;color:#ffe8bc;letter-spacing:.8px}.controls label b{font-size:12px;color:#fff3cf;margin-top:2px}.controls input[type=range]{height:8px;border:1px solid #edc58caa;box-shadow:inset 0 1px 4px #4d26146b,0 0 8px #ffd56619}.controls input[type=range]::-webkit-slider-thumb{width:22px;height:22px;border:2px solid #fff0c7;background:radial-gradient(circle at 32% 25%,#fff2bd,#e6b45f 60%,#ac7429);box-shadow:0 0 0 2px #9e682b66,0 2px 4px #0006,0 0 13px #ffcd6c66}.footer-hint{font-size:7px;color:#e0d7be;line-height:9px}.effect-badge{background:linear-gradient(120deg,#9a6018e8,#6a3c0de8);border:1px solid #ffe6a7;box-shadow:0 0 20px #ffd25855}.golden-mode .main-score{box-shadow:0 0 16px #ffd56b99,inset 0 0 12px #ffb04440}.golden-mode .main-score strong{color:#fff2c7}.toast{font-size:14px;letter-spacing:.3px;text-shadow:0 2px 3px #04223a,0 0 18px #05263a}.arena-top{font-size:6px}@keyframes gold-shine{0%,65%{left:-60%;opacity:0}70%{opacity:1}88%,100%{left:150%;opacity:0}}@media(max-width:500px){.game-header{height:33px}.scoreboard{height:60px}.controls{height:53px;margin-bottom:max(5px,env(safe-area-inset-bottom))}.rival{height:27px}.phone{padding-bottom:0}}@media(max-width:350px){.brand>span{display:none}.scoreboard{gap:5px}.hud-clock,.hud-star{width:17px;height:23px}.timer strong{font-size:21px}.main-score strong{font-size:26px}.rival small{font-size:6px}}@media(prefers-reduced-motion:reduce){.score-glint{display:none}}
/* Illustrated HUD textures generated from the chosen Christmas reference. */
.phone{--ui-font:'Arial Black',Arial,Helvetica,sans-serif}.game-header{height:48px;padding:0 10px;background:linear-gradient(#03251feb,#07342a8c);border:0}.brand{height:49px;width:154px;display:block;background:url('assets/hud-logo.webp') center/contain no-repeat;filter:drop-shadow(0 2px 4px #00180d)}.header-actions{gap:6px}.icon-button{border:2px solid #e8bf64;background:radial-gradient(circle at 30% 20%,#23694c,#003e2a);box-shadow:inset 0 0 0 1px #fff0a666,0 2px 4px #0008;color:#fff1c6;width:28px;height:28px}.scoreboard{height:66px;gap:4px;grid-template-columns:1.06fr 1.22fr 1.06fr;padding:0 6px 2px;background:linear-gradient(#0733299e,#042f22a8);align-items:center}.stat{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;min-height:0;height:47px;gap:0;filter:drop-shadow(0 2px 3px #00180c80);font-family:var(--ui-font);position:relative}.stat:before{display:none}.stat.timer,.stat.combo{background:url('assets/hud-green.webp') center/100% 100% no-repeat;padding:5px 9px 5px 6px}.timer>div>span{display:none}.timer strong{font-size:clamp(21px,6.3vw,26px);line-height:29px;letter-spacing:-1.1px;color:#fff8dc;font-weight:900;text-shadow:0 2px 2px #062818}.hud-clock{width:23px;height:27px;margin:0 1px 0 -1px}.stat.main-score{height:65px;padding:17px 8px 5px;background:url('assets/hud-score.webp') center/100% 100% no-repeat;box-shadow:none}.main-score>span{font-size:8px;letter-spacing:.5px;color:#fff6d8;font-style:italic}.main-score strong{font:900 italic 30px/.98 var(--ui-font);color:#ffe681;text-shadow:0 2px 0 #a64f0a,0 3px 4px #4c0807;letter-spacing:-1px}.score-glint{display:none}.combo{transform:rotate(-3deg)}.hud-star{display:none}.combo>div{display:flex;align-items:center;gap:3px}.combo>div>span{font:900 italic 10px var(--ui-font);letter-spacing:-.5px;margin:0;color:#fff6dd;text-shadow:0 1px 2px #002a16}.combo strong{font:900 italic 25px var(--ui-font);color:#ffdf70;text-shadow:0 2px 0 #9d5b0a,0 3px 3px #003220;letter-spacing:-1px}.rival{height:37px;flex-shrink:0;margin:0 5px 5px;padding:6px 13px 9px 13px;background:url('assets/hud-rival.webp') center/100% 100% no-repeat;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;gap:6px}.rival-copy{flex:1;white-space:nowrap}.rival-crown{font-size:21px;margin-right:3px}.rival b{font:900 italic 13px var(--ui-font);margin-left:2px;color:#fff4d2}.rival small{font-size:6px;margin-left:5px}.rival>strong{font:900 italic 15px var(--ui-font);color:#ffe687;letter-spacing:-.4px}.rival-track{bottom:5px;left:47px;right:17px;height:3px;border-radius:8px;box-shadow:0 0 0 1px #ffdf8b38}.arena-wrap{margin:0 5px 6px;border:2px solid #dff5ef82;box-shadow:inset 0 0 0 1px #092b3a66,0 0 7px #c5ffff35;border-radius:15px}.arena-top{font-size:6px;top:9px;left:12px;right:12px}.letter-collection{position:absolute;top:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 7px;border:1px solid #ffe5a447;border-radius:11px;background:#032533a8;backdrop-filter:blur(6px);pointer-events:none}.letter-collection>span{width:21px;height:24px;display:grid;place-items:center;border-radius:6px;border:1px solid #f4c87760;background:linear-gradient(#125244,#062e2a);font:900 13px var(--ui-font);color:#d1deca79;box-shadow:inset 0 1px 2px #fff1;transition:background .2s,transform .2s,color .2s}.letter-collection>span.found{background:linear-gradient(#ffebad,#e5ab42);border-color:#fff1bc;color:#733120;box-shadow:0 0 11px #ffd66f79,inset 0 1px 2px #fff;animation:letter-pop .45s ease-out}.letter-collection>b{font-size:8px;color:#fff1bd;padding-left:3px;white-space:nowrap}.letter-collection.completed{border-color:#ffe084;box-shadow:0 0 18px #ffdb6777}.effect-badge{top:62px;padding:5px 10px}.toast{top:20%;font:900 italic 15px var(--ui-font);color:#fff0bc}.shot-hint{bottom:14px;font-size:7px;letter-spacing:1.1px}.overlay{backdrop-filter:blur(3px);background:#032a293a;padding:7px;overflow:auto}.start-card,.phone[data-scene=forest] .start-card{background:url('assets/popup-frame.webp') center/100% 100% no-repeat;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 12px 18px #001b25b3);width:96%;max-width:370px;padding:74px 25px 28px;min-height:365px;position:relative;flex-shrink:0}.card-star{display:none}.start-card .eyebrow{font:900 italic 10px var(--ui-font);letter-spacing:1px;color:#ffdf8b;text-shadow:0 1px 3px #001f1a;display:block}.start-card h2{font:900 italic 32px/1.04 var(--ui-font);color:#ffe6a1;text-shadow:0 2px 0 #ae680f,0 4px 4px #001f18;letter-spacing:-1px;margin:12px 0}.start-card h2 small{display:block;font:900 italic 17px var(--ui-font);letter-spacing:2px;color:#fff3ca;margin-top:5px}.start-card p{font:600 11px/1.6 Arial;color:#edf3d9;margin:10px 0;text-shadow:0 1px 2px #002a1e}.start-card .card-foot{font-size:8px;line-height:1.5;color:#d6e5b8;margin:9px 5px 0}.card-bonuses{margin:11px 0 0;gap:5px}.card-bonuses span{border-color:#eac66e7a;color:#ffe5a1;background:linear-gradient(#0f6145,#063b2e);box-shadow:inset 0 1px 2px #fff2;font:700 9px Arial;padding:6px 8px}.play-button{position:relative;width:100%;height:58px;min-height:58px;padding:15px 16px 8px;margin-top:12px;background:url('assets/hud-rival.webp') center/100% 100% no-repeat;border:0;border-radius:0;box-shadow:none;font:900 italic 22px var(--ui-font);letter-spacing:.7px;color:#fff1bb;text-shadow:0 2px 0 #a44a11,0 3px 5px #490d12;filter:drop-shadow(0 4px 5px #001e1b8c);transition:transform .15s,filter .15s;animation:button-breathe 3s ease-in-out infinite}.play-button span{font-size:15px;margin-left:13px;vertical-align:2px}.play-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:none;filter:drop-shadow(0 0 9px #ffd65d88) brightness(1.1)}.play-button:active{transform:translateY(2px) scale(.97);filter:brightness(.95)}.result-stats{font-size:10px;line-height:1.8;color:#ffe59a;padding:8px 5px;background:#001f1b44;border-top:1px solid #e7ce793b;border-bottom:1px solid #e7ce793b;margin-top:11px}.super-banner{position:absolute;z-index:4;left:0;right:0;top:34%;text-align:center;pointer-events:none;filter:drop-shadow(0 3px 6px #002016);animation:super-in .6s cubic-bezier(.18,.9,.4,1.3)}.super-banner[hidden]{display:none}.super-banner:before{content:"";position:absolute;inset:-110px -20px;z-index:-1;background:repeating-conic-gradient(from 10deg,#ffda5b33 0deg 9deg,transparent 9deg 24deg);mask-image:radial-gradient(ellipse,#000 10%,transparent 70%);animation:super-rays 12s linear infinite}.super-banner>span{display:block;font:900 italic 17px var(--ui-font);letter-spacing:2px;color:#fff6bf;text-shadow:0 2px 2px #5c2d0c}.super-banner strong{display:block;font:900 italic 36px var(--ui-font);letter-spacing:-1px;color:#ffe47c;-webkit-text-stroke:1px #944914;text-shadow:0 3px 0 #a34d11,0 5px 8px #113f2c}.super-banner b{display:block;font:900 italic 45px var(--ui-font);color:#fff5bf;text-shadow:0 3px 0 #c48a29,0 5px 8px #002d22}.golden-mode .main-score{box-shadow:none;filter:drop-shadow(0 0 12px #ffdd74)}@keyframes letter-pop{0%{transform:scale(.75)}55%{transform:scale(1.3)}100%{transform:scale(1)}}@keyframes button-breathe{0%,100%{filter:drop-shadow(0 3px 4px #001e1b8c)}50%{filter:drop-shadow(0 2px 7px #ffcf6d55)}}@keyframes super-in{from{opacity:0;transform:scale(.5) rotate(-6deg)}to{opacity:1;transform:scale(1)}}@keyframes super-rays{to{transform:rotate(360deg)}}@media(max-width:500px){.game-header{height:46px}.scoreboard{height:66px}.rival{height:35px}.phone{padding-bottom:env(safe-area-inset-bottom)}.brand{width:147px;height:47px}}@media(max-width:350px){.game-header{height:41px}.brand{width:126px;height:42px}.scoreboard{height:58px}.stat.main-score{height:58px;padding-top:15px}.stat.timer,.stat.combo{height:42px}.timer strong{font-size:21px}.main-score strong{font-size:26px}.combo strong{font-size:22px}.combo>div>span{font-size:8px}.hud-clock{width:19px}.letter-collection{gap:3px}.letter-collection>span{width:19px;font-size:12px}.start-card{padding:65px 23px 24px}.start-card h2{font-size:28px}}@media(max-height:690px){.start-card,.phone[data-scene=forest] .start-card{padding:59px 25px 24px;min-height:0}.start-card h2{font-size:26px;margin:8px 0}.start-card p{font-size:10px;margin:7px 0}.card-bonuses{margin-top:7px}.play-button{margin-top:8px;height:49px;min-height:49px;font-size:20px}.start-card .card-foot{margin-top:7px;font-size:7px}.game-header{height:40px}.brand{height:41px}.scoreboard{height:59px}.stat.main-score{height:59px}.stat.timer,.stat.combo{height:43px}.rival{height:31px}}@media(prefers-reduced-motion:reduce){.play-button,.super-banner,.super-banner:before,.letter-collection>span.found{animation:none!important}}
.main-score strong{font-size:var(--score-size,28px);max-width:100%;white-space:nowrap;text-align:center;letter-spacing:-.8px;font-variant-numeric:tabular-nums;overflow:hidden}

.rival{height:43px;padding:8px 16px 10px 15px}.rival-copy{position:relative;display:grid;grid-template-columns:22px 1fr;column-gap:4px;row-gap:0}.rival-crown{grid-row:1/3;align-self:center}.rival small{grid-column:2;grid-row:1;font:700 8px Arial;letter-spacing:.7px;margin:0;color:#fff3d0}.rival b{grid-column:2;grid-row:2;font-size:14px;line-height:16px;margin:0}.rival>strong{font-size:19px;line-height:24px}.rival-track{left:45px;right:18px;bottom:5px}.rival>strong:after{content:" pts";font:700 8px Arial;letter-spacing:0}

#score{font-size:var(--score-size,28px)!important;line-height:1.1;overflow:visible;max-width:none;padding:0 5px;flex-shrink:0}.rival{height:48px;padding-top:11px;padding-bottom:10px}.rival-copy{row-gap:1px}.rival small{line-height:10px;font-size:8px}.rival b{line-height:17px}.rival.at-top #rival-score{font-size:22px}.rival.at-top #rival-score:after{content:""}.rival.at-top .rival-track{display:none}
