@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;650;700&family=Outfit:wght@400;500;600;650;700;750;800;900&display=swap');
:root{--ink:#292332;--muted:#797382;--paper:#f7f5ed;--purple:#7953e9;--lime:#d7f77a;--coral:#ff998b;--line:#e6e1da;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 75% 50%,#e8dfff55 0,transparent 38%);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--purple);outline-offset:5px}button{touch-action:manipulation}a{text-decoration:none;color:inherit}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}#particles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:40}.header{height:110px;max-width:1440px;margin:auto;padding:0 64px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:Outfit,sans-serif;font-size:29px;font-weight:800;letter-spacing:-1.4px;display:flex;align-items:center;gap:11px}.brand-light{font-weight:500}.brand-period{font-size:11px;vertical-align:top;display:inline-block;margin:4px 0 0 3px}.brand-mark{display:grid;grid-template-columns:repeat(2,11px);gap:3px;transform:rotate(-10deg)}.brand-mark i{width:11px;height:11px;border-radius:50%;background:var(--purple)}.brand-mark i:nth-child(2){background:var(--coral)}.brand-mark i:nth-child(3){background:#b0d957}.header-tag{font-size:10px;letter-spacing:2.2px;font-weight:700;display:flex;align-items:center;gap:9px}.header-tag>span{width:6px;height:6px;border-radius:50%;background:var(--purple)}nav{display:flex;align-items:center;gap:12px}button{transition:transform .18s,background .18s,box-shadow .18s}.nav-button{border:0;background:none;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:650;margin-right:8px}.nav-button svg{width:17px;height:17px}.icon-button{width:37px;height:37px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #ded9d3;background:transparent;border-radius:50%}.icon-button:hover,.nav-button:hover{background:#ebe5f5;transform:translateY(-2px)}.icon-button svg{width:17px;height:17px}.help-button{font-size:19px;font-weight:600}.main{max-width:1190px;padding:42px 40px 65px;margin:0 auto;display:grid;grid-template-columns:1fr 470px;gap:72px;align-items:center}.intro{padding-bottom:30px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;display:flex;gap:9px;align-items:center}.tiny-spark{font-size:22px;color:var(--purple);display:inline-block;animation:turn 25s linear infinite}h1{font-family:Outfit,sans-serif;font-size:69px;font-weight:750;line-height:1.06;letter-spacing:-3.8px;margin:25px 0 32px}.big-pop{display:inline-block;position:relative;font-size:77px;font-weight:900;white-space:nowrap;letter-spacing:-3px}.title-dot{color:var(--purple)}.big-pop svg{position:absolute;width:101%;height:30px;left:0;bottom:-19px;stroke:var(--purple);stroke-width:5}.intro-copy{font-size:14px;line-height:1.9;color:#77717d;margin:0 0 28px}.rules-strip{display:flex;align-items:center;gap:15px;font-size:10px;font-weight:700;letter-spacing:1.4px}.rules-strip b{color:var(--purple);font-size:9px;margin-right:4px}.rules-strip i{font-size:16px;color:#c2b8ca;font-style:normal}.mini-demo{margin:36px 0 40px;display:flex;align-items:center;gap:16px}.demo-bubble{border-radius:50%;display:flex;align-items:center;justify-content:center;width:49px;height:49px;font-family:Outfit,sans-serif;font-size:23px;font-weight:800;border:1px solid #00000008;box-shadow:inset -2px -5px 0 #00000010,inset 2px 3px 1px #ffffffaa,0 5px 0 #2923320b;animation:float 3.7s ease-in-out infinite}.one{background:var(--lime)}.two{background:var(--coral);animation-delay:-1.5s}.demo-link{color:#aaa1b1;font-size:21px}.demo-wow{font-family:Outfit,sans-serif;font-weight:900;color:var(--purple);font-size:21px;transform:rotate(-8deg);position:relative}.demo-wow svg{position:absolute;width:25px;height:33px;right:-30px;top:-17px;stroke:var(--purple);stroke-width:2;transform:rotate(10deg)}.personal-best{border-top:1px solid var(--line);padding-top:25px;display:flex;gap:12px;align-items:center;max-width:355px}.best-icon{width:37px;height:37px;border-radius:12px;background:#ece6fb;color:var(--purple);display:flex;align-items:center;justify-content:center}.best-icon svg{width:19px;height:19px}.small-label{font-size:9px;font-weight:700;letter-spacing:1.8px;color:#8a8196}.personal-best p{margin:6px 0 0;font-size:11px;color:#817887}.personal-best strong{color:var(--ink)}.personal-best p>span{margin:0 7px}.intro-note{font-size:10px;color:#aaa1aa;margin-top:28px}.game-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;font-size:9px;letter-spacing:1.2px;font-weight:700}.game-topline>span:first-child{display:flex;gap:7px;align-items:center}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--purple);box-shadow:0 0 0 4px #7953e910}.session-label{font-size:8px;color:#99909f;letter-spacing:1px}.game-card{border:1px solid #e7e0ec;border-radius:25px;background:#fffdfb;padding:25px;box-shadow:0 14px 0 -8px #e6dfee,0 22px 50px -20px #6e518633;position:relative}.game-heading{display:flex;align-items:center;justify-content:space-between;margin:0 1px 20px}.game-heading h2{font-family:Outfit,sans-serif;font-size:24px;letter-spacing:-.65px;margin:4px 0 0;font-weight:650}.run-progress{display:flex;align-items:center}.run-progress span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#f2eef6;color:#aaa0b4;font-size:10px;font-weight:700}.run-progress i{width:13px;height:1px;background:#e9e1f0}.run-progress .active{background:var(--purple);color:white;box-shadow:0 0 0 4px #f1eafc}.run-progress .done{background:var(--lime);color:#3e4c25}.budget-row{height:42px;border-radius:12px;background:#f6f2fc;display:flex;align-items:center;padding:0 12px;gap:12px;margin-bottom:14px}.budget-row>span:first-child{font-size:8px;font-weight:700;letter-spacing:1.3px;color:#6f627e}.tap-tokens{display:flex;gap:7px}.tap-tokens span{display:grid;place-items:center;color:var(--purple);font-size:22px;width:21px;transition:all .3s}.tap-tokens span.spent{color:#dcd3e6;transform:scale(.72) rotate(90deg)}.bubble-count{margin-left:auto;font-size:10px;color:#8a7f97}.bubble-count strong{font-size:12px;color:#665773}.board-wrap{position:relative;background:#f0e9fc;border:1px solid #e8ddf7;border-radius:19px;padding:15px;overflow:hidden}.board{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;aspect-ratio:1;position:relative;z-index:1}.cell{position:relative;min-width:0;min-height:0;display:grid;place-items:center;border-radius:50%;background:#e9e0f53d}.bubble{position:absolute;inset:2px;border:0;border-radius:50%;display:grid;place-items:center;font-family:Outfit,sans-serif;font-weight:800;font-size:25px;color:#2c3133;box-shadow:inset 0 -6px 2px #00000013,inset 1px 3px 1px #ffffff9e,0 5px 0 #4c386816,0 8px 9px #4c38680b;transition:background .18s,transform .18s;animation:appear .45s cubic-bezier(.2,1.6,.4,1) backwards;animation-delay:calc(var(--i) * 12ms);isolation:isolate;user-select:none}.bubble:before{content:'';position:absolute;top:10%;left:19%;width:28%;height:12%;background:#ffffff6b;transform:rotate(-35deg);border-radius:50%;pointer-events:none}.bubble:after{content:'';position:absolute;width:6%;height:6%;border-radius:50%;background:#ffffff75;top:23%;left:13%}.bubble[data-value="1"]{background:#d9f77f}.bubble[data-value="2"]{background:#ff9c8d}.bubble[data-value="3"]{background:#bca0f4;color:#3c2863}.bubble:hover:not(:disabled){transform:translateY(-4px) scale(1.06);filter:brightness(1.04);box-shadow:inset 0 -6px 2px #00000013,inset 1px 3px 1px #ffffff9e,0 9px 0 #4c386814,0 12px 12px #4c38681f}.bubble:active:not(:disabled){transform:translateY(3px) scale(.91)}.bubble.hit{animation:hit .25s ease-out}.bubble.burst{animation:burst .22s ease-in forwards;pointer-events:none}.bubble.hinted{outline:3px dashed var(--purple);outline-offset:6px;animation:hint 1.1s ease-in-out infinite}.bubble.idle-wiggle{animation:wiggle .5s ease-in-out}.board-decoration{position:absolute;color:#cfbfe9;font-size:24px;pointer-events:none}.decor-a{top:8px;right:5px}.decor-b{bottom:4px;left:3px;font-size:17px}.chain-callout{position:absolute;z-index:5;left:50%;top:40%;transform:translate(-50%,-50%) rotate(-8deg) scale(0);font-family:Outfit,sans-serif;font-size:35px;font-weight:900;color:white;-webkit-text-stroke:1px #7953e9;text-shadow:0 3px #7953e9,0 6px 15px #5e327755;white-space:nowrap;pointer-events:none}.chain-callout.show{animation:callout .95s ease-out forwards}.board-caption{text-align:center;min-height:41px;padding:14px 0 10px;font-size:11px;color:#92839e}.tool-row{display:flex;gap:9px}.tool-button{flex:1;border-radius:10px;border:1px solid #e7e0ec;background:#fffdfb;padding:10px 5px;font-size:11px;font-weight:600;display:flex;justify-content:center;align-items:center;gap:6px}.tool-button svg{width:15px;height:15px}.tool-button:hover:not(:disabled){transform:translateY(-2px);background:#f0e9fc}.tool-button:disabled{opacity:.35}.hint-button{background:#f2edfc;border-color:#e9e1f7;color:#7451c7;flex:1.35}.free-tag{font-size:6px;letter-spacing:.6px;border-radius:3px;background:#e3d8f8;padding:3px}.under-game{display:flex;align-items:center;gap:14px;margin:23px 2px 0;color:#958b9e;font-size:8px;letter-spacing:.6px;font-weight:600}.under-game>span{display:flex;align-items:center;gap:5px}.value-dot{width:8px;height:8px;border-radius:50%}.dot-1{background:#bfdd6a}.dot-2{background:var(--coral)}.dot-3{background:#bca0f4}.under-game button{border:0;background:none;font-size:9px;margin-left:auto;padding:0;color:#81728f}.footer{border-top:1px solid var(--line);max-width:1312px;margin:0 auto;min-height:70px;display:flex;align-items:center;gap:25px;font-size:8px;letter-spacing:1.4px;font-weight:600;color:#99909c}.footer>span:first-child{display:flex;align-items:center;gap:8px}.footer-spark{font-size:16px;color:#aa98ca}.footer button{margin-left:auto;border:0;background:transparent;font-size:9px;color:#93849e}.footer-right{margin-left:18px}.result-overlay{position:absolute;inset:0;background:#f5effbeF;backdrop-filter:blur(7px);z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:25px;text-align:center;animation:result-in .3s ease-out}.result-emblem{width:76px;height:76px;display:grid;place-items:center;border-radius:26px;background:var(--lime);font-size:39px;margin-bottom:14px;box-shadow:0 7px 0 #c3dc6e;transform:rotate(-8deg)}.result-emblem.fail{background:#ffd1c7;box-shadow:0 7px 0 #eeb9ad}.result-overlay h3{font-family:Outfit,sans-serif;font-size:34px;letter-spacing:-1.1px;margin:5px 0 8px;font-weight:800}.result-overlay p{font-size:12px;color:#85748f;line-height:1.7;margin:0 0 18px}.result-badges{display:flex;gap:7px;margin:0 0 20px}.result-badges span{padding:7px 10px;font-size:9px;font-weight:700;border-radius:20px;background:#e5daf8;color:#7451ba}.primary-button{border:0;color:white;background:var(--purple);border-radius:12px;padding:14px 22px;display:flex;align-items:center;justify-content:center;gap:22px;font-weight:700;font-size:13px;box-shadow:0 5px 0 #5938bb;min-height:45px}.primary-button:hover{transform:translateY(-2px);background:#875ef9;box-shadow:0 7px 0 #5938bb}.primary-button:active{transform:translateY(3px);box-shadow:0 2px 0 #5938bb}.primary-button svg{width:17px;height:17px}.secondary-button{background:none;border:0;color:#8e7d9d;font-size:11px;padding:15px 10px 0}.modal{border:1px solid #e9e0f1;border-radius:24px;background:var(--paper);color:var(--ink);padding:28px;max-width:445px;width:calc(100% - 32px);box-shadow:0 25px 100px #32214140;max-height:90dvh;overflow:auto}.modal::backdrop{background:#24163369;backdrop-filter:blur(5px)}.modal[open]{animation:result-in .25s ease-out}.modal-heading{display:flex;align-items:center;justify-content:space-between}.modal h2{font-family:Outfit,sans-serif;font-size:37px;line-height:1.08;letter-spacing:-1.3px;margin:15px 0 27px}.help-step{display:flex;gap:15px;margin-bottom:22px}.help-number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--lime);display:grid;place-items:center;font-family:Outfit,sans-serif;font-weight:800}.help-step:nth-of-type(3) .help-number{background:var(--coral)}.help-step:nth-of-type(4) .help-number{background:#bda4f1}.help-step h3{font-size:13px;margin:1px 0 5px}.help-step p{font-size:12px;color:#807387;margin:0;line-height:1.6}.modal .primary-button{width:100%;margin-top:25px}.modal-footnote{text-align:center;font-size:10px;color:#98899f;margin:18px 0 0}.collection-modal{max-width:520px}.collection-description{color:#8a7d94;font-size:12px;line-height:1.7;margin-top:-10px}.collection-legend{font-size:10px}.collection-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:22px}.level-button{aspect-ratio:1;border:1px solid #e5dcec;border-radius:12px;background:white;font-family:Outfit,sans-serif;font-size:17px;position:relative}.level-button:hover{transform:translateY(-3px);border-color:var(--purple)}.level-button.cleared{background:#e6f8b7;border-color:#d4e8a4}.level-button.optimal{background:#e5d9fd;border-color:#d4c2f5}.level-button .medal{position:absolute;right:5px;top:3px;font-size:9px;color:#71519b}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,30px);opacity:0;pointer-events:none;background:#302636;color:white;border-radius:12px;padding:12px 20px;font-size:12px;z-index:100;transition:all .3s;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes appear{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes float{50%{transform:translateY(-6px) rotate(5deg)}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes burst{40%{transform:scale(1.23)}100%{opacity:0;transform:scale(.2)}}@keyframes hit{35%{transform:scale(.82,1.12)}65%{transform:scale(1.1,.9)}100%{transform:scale(1)}}@keyframes hint{50%{transform:scale(1.08);outline-offset:3px}}@keyframes callout{0%{opacity:0;transform:translate(-50%,-30%) rotate(-8deg) scale(.4)}20%,60%{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1)}100%{opacity:0;transform:translate(-50%,-90%) rotate(-4deg) scale(1.1)}}@keyframes wiggle{25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}@keyframes result-in{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1450px){.main{padding-top:65px;padding-bottom:85px}}@media(max-width:1180px){.header{padding:0 35px}.main{gap:40px;padding-left:35px;padding-right:35px;grid-template-columns:1fr 440px}h1{font-size:59px}.big-pop{font-size:66px}.footer{margin:0 35px}}@media(max-width:950px){.header-tag{display:none}.main{gap:25px;grid-template-columns:1fr 420px;padding-top:25px}h1{font-size:49px}.big-pop{font-size:54px}.intro-copy{font-size:12px}.rules-strip{gap:9px;font-size:8px}.mini-demo{gap:12px}.demo-wow{font-size:18px}.personal-best p{font-size:9px}.header{height:90px}.game-card{padding:22px}}@media(max-width:760px){.header{height:76px;padding:0 22px}.brand{font-size:25px}.header nav{gap:8px}.nav-button{margin-right:0}.nav-button span{display:none}.icon-button{width:33px;height:33px}.main{display:flex;flex-direction:column;padding:15px 18px 30px;gap:25px;max-width:490px}.intro{padding:0;width:100%;text-align:center}.eyebrow{justify-content:center;font-size:8px}.tiny-spark{font-size:17px}h1{font-size:34px;letter-spacing:-1.5px;line-height:1;margin:14px 0 10px}h1 br{display:none}.big-pop{font-size:37px;letter-spacing:-1px;margin-left:8px}.big-pop svg{height:17px;bottom:-13px;stroke-width:5}.intro-copy{font-size:11px;line-height:1.6;margin:21px 0 0}.intro-copy br{display:none}.rules-strip,.mini-demo,.personal-best,.intro-note{display:none}.game-section{width:100%}.game-topline{font-size:8px}.game-card{padding:20px;border-radius:22px}.game-heading h2{font-size:24px}.game-heading{margin-bottom:17px}.board-wrap{padding:12px}.board{gap:8px}.bubble{font-size:25px}.under-game{margin-top:20px;font-size:7px;gap:11px}.footer{margin:0 20px;min-height:60px;font-size:6px;gap:10px}.footer-right{display:none}.footer button{font-size:8px;white-space:nowrap}.result-overlay h3{font-size:31px}.result-emblem{width:64px;height:64px;font-size:34px;border-radius:20px}.result-badges{margin-bottom:15px}.result-overlay{padding:20px}.result-overlay p{font-size:11px;margin-bottom:13px}.modal .eyebrow{justify-content:flex-start}}@media(max-width:370px){.main{padding-left:12px;padding-right:12px}.game-card{padding:15px}h1{font-size:29px}.big-pop{font-size:32px}.board-wrap{padding:9px}.board{gap:6px}.bubble{font-size:22px}.result-overlay h3{font-size:27px}.result-emblem{width:52px;height:52px;font-size:27px}.under-game{gap:8px}.result-badges span{font-size:8px;padding:5px 8px}}
body.reduced *,body.reduced *:before,body.reduced *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.reduced .chain-callout{display:none}body.reduced .bubble.burst{opacity:0}body.reduced .toast.show{transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){body:not(.motion-full) *,body:not(.motion-full) *:before,body:not(.motion-full) *:after{animation:none!important;transition:none!important}body:not(.motion-full) .chain-callout{display:none}}
#practice-exit{border:0;background:#eae0fb;color:#7451ba;border-radius:8px;padding:5px 8px;font-size:9px;font-weight:600}#practice-exit:disabled{opacity:.4}
@media(min-width:761px) and (max-height:800px){.header{height:76px}.main{padding-top:10px;padding-bottom:25px;grid-template-columns:1fr 390px;max-width:1100px;gap:90px}.game-card{padding:18px}.board-wrap{padding:10px}.board{gap:8px}.game-heading{margin-bottom:12px}.game-heading h2{font-size:22px}.budget-row{height:35px;margin-bottom:10px}.board-caption{min-height:34px;padding:11px 0 7px}.tool-button{padding:9px 5px}.under-game{margin-top:18px}.game-topline{margin-bottom:10px}.intro{padding-bottom:10px}h1{font-size:60px}.big-pop{font-size:68px}.mini-demo{margin:28px 0}.intro-note{margin-top:18px}.footer{min-height:55px}.result-overlay h3{font-size:28px}.result-emblem{width:57px;height:57px;font-size:30px;border-radius:19px;margin-bottom:10px}.result-overlay p{font-size:11px}.result-badges{margin-bottom:14px}.result-overlay{padding:18px}}
.run-progress{flex-direction:column;gap:5px;min-width:48px}.run-progress .active{width:35px;height:35px;font-family:Outfit,sans-serif;font-size:16px}.run-progress small{font-size:7px;letter-spacing:1px;color:#a090ac;font-weight:700}.score-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#eff5dc;border:1px solid #e4ebcf;border-radius:12px;padding:9px 0;margin-bottom:15px}.score-strip>div{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.score-strip>div+div{border-left:1px solid #e2e9ce}.score-strip strong{font-family:Outfit,sans-serif;font-size:22px;font-weight:700;color:#61733c;line-height:1.1}.score-strip span{font-size:7px;color:#9aab78;font-weight:700;letter-spacing:.6px}.score-bump{animation:score-bump .4s cubic-bezier(.2,1.5,.4,1)}.music-on{background:#ede6fa;color:#7953c0;border-color:#d9cbee}.board.settled .bubble{animation:none}.board.settled .bubble.hinted{animation:hint 1.1s ease-in-out infinite}.board.settled .bubble.hit{animation:hit .25s ease-out}.board.settled .bubble.burst,.bubble.burst{animation:jelly-pop .16s ease-in forwards}.board.settled .bubble.idle-wiggle{animation:wiggle .5s ease-in-out}.bubble.burst{z-index:3;box-shadow:0 0 16px 4px #ffffffaa,inset 0 0 12px #ffffff99}.board-wrap.chain-impact{animation:chain-jolt .26s ease-out;box-shadow:0 0 0 3px rgb(154 117 231 / 14%),0 0 calc(10px + var(--chain-power,0)*16px) rgb(161 122 232 / 23%),inset 0 0 25px #d7bdf54d}.chain-callout{font-size:32px;line-height:1.08;text-shadow:0 3px #7953e9,0 7px 17px #5e327755;top:42%;letter-spacing:-1px}.chain-callout small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:1.3px;margin-top:7px;background:#7953e9e8;padding:6px 11px;border-radius:20px;white-space:nowrap;text-shadow:none;-webkit-text-stroke:0}.chain-callout.show{animation:combo-rise .9s ease-out forwards}.budget-row.last-tap{background:#fff0e8}.budget-row.last-tap .tap-tokens span:not(.spent){color:#d37657}.classic-help{border-top:1px solid var(--line);padding-top:8px}.classic-help h3{font-size:12px;margin:14px 0 5px}.classic-help p,.retry-dialog p{font-size:12px;line-height:1.7;color:#89758f}.retry-dialog .secondary-button{display:block;margin:10px auto 0;padding:12px}.tool-button{min-height:42px}.result-overlay{animation:result-in .35s cubic-bezier(.2,1.2,.4,1)}
@keyframes jelly-pop{0%{transform:scale(1)}36%{transform:scale(1.4,1.15);filter:brightness(1.3)}65%{transform:scale(1.12,1.45)}100%{transform:scale(.12);opacity:0}}
@keyframes chain-jolt{0%,100%{transform:translate(0,0)}24%{transform:translate(calc(var(--chain-shift,0px)*-1),var(--chain-shift,0px))}50%{transform:translate(var(--chain-shift,0px),calc(var(--chain-shift,0px)*-.6))}75%{transform:translate(calc(var(--chain-shift,0px)*-.45),0)}}
@keyframes combo-rise{0%{opacity:0;transform:translate(-50%,-30%) rotate(-7deg) scale(.5)}18%{opacity:1;transform:translate(-50%,-50%) rotate(-5deg) scale(1.13)}32%,65%{opacity:1;transform:translate(-50%,-50%) rotate(-5deg) scale(1)}100%{opacity:0;transform:translate(-50%,-85%) rotate(-2deg) scale(1.05)}}
@keyframes score-bump{35%{transform:scale(1.2);color:#7953e9}100%{transform:scale(1)}}
body.reduced .board-wrap.chain-impact{animation:none;transform:none;box-shadow:none}body.reduced .bubble.burst{box-shadow:none}
@media(max-width:760px){.header nav{gap:6px}.header{padding:0 18px}.header .brand{font-size:23px}.score-strip{padding:8px 0;margin-bottom:13px}.score-strip strong{font-size:20px}.score-strip span{font-size:6px}.game-topline{font-size:7px}.session-label{font-size:6px}.chain-callout{font-size:27px}.chain-callout small{font-size:8px}.result-overlay h3{font-size:27px}.result-emblem{width:50px;height:50px;font-size:29px;border-radius:18px;margin-bottom:12px}.result-overlay p{font-size:10px}.result-badges{margin-bottom:13px}.result-badges span{font-size:8px;padding:6px 8px}.primary-button{padding:12px 17px;font-size:12px}.secondary-button{font-size:10px}.collection-grid{gap:8px}.game-heading{margin-bottom:13px}.intro-copy{font-size:10px}}
@media(min-width:761px) and (max-height:800px){.header{height:66px}.main{padding-top:4px;grid-template-columns:1fr 360px}.game-card{padding:17px}.game-heading{margin-bottom:11px}.game-heading>div:first-child{line-height:1}.game-heading h2{line-height:1.2}.score-strip{padding:7px 0;margin-bottom:12px}.score-strip strong{font-size:19px}.score-strip span{font-size:6px}.run-progress .active{width:30px;height:30px;font-size:14px}.run-progress{gap:4px}.run-progress small{font-size:6px}.game-topline{font-size:8px}.session-label{font-size:6px}.result-overlay h3{font-size:25px}.result-emblem{width:44px;height:44px;border-radius:15px;font-size:27px;margin-bottom:10px}.result-overlay p{font-size:10px}.result-badges{margin-bottom:12px}.result-badges span{font-size:7px;padding:6px 8px}.result-overlay .primary-button{min-height:40px;padding:11px 18px;font-size:12px}.result-overlay .secondary-button{font-size:9px;padding-top:13px}.chain-callout{font-size:28px}.chain-callout small{font-size:8px}}
