:root{--ink:#18354a;--navy:#172b3a;--navy-deep:#10232f;--sky:#a7d8f0;--cyan:#5bbfda;--coral:#e6696a;--orange:#f0a34c;--cream:#fff6dc;--slate:#7c9aae;--clay:#d98273;--error-background:#65323d;--error-border:#f29a92;--error-foreground:#fff4e8;--panel:#ffffffeb;--panel-border:#ffffffb8;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;background:#102b39;font-family:Inter,ui-rounded,SF Pro Rounded,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{background:#102b39;min-width:320px;min-height:100%}body{background:#102b39;min-width:320px;min-height:100vh;margin:0}body.game-active{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 12% 8%,#5bbfda17,#0000 30%),radial-gradient(circle at 90% 90%,#e6696a12,#0000 32%),#0b1b25;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:#8a532b;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .35rem;font-size:.68rem;font-weight:850}.primary-button,.secondary-button{cursor:pointer;border-radius:14px;min-height:44px;padding:11px 16px;font-weight:850}.primary-button{color:var(--navy);background:var(--orange);border:0;box-shadow:0 5px #be7330}.primary-button:active{transform:translateY(3px);box-shadow:0 2px #be7330}.secondary-button{color:var(--ink);background:#ffffffad;border:1px solid #18354a2e}.app-state-screen,.portrait-orientation-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.app-state-card,.portrait-orientation-card{text-align:center;background:#ffffffe0;border:1px solid #ffffffc7;border-radius:32px;width:min(100%,440px);padding:clamp(28px,7vw,46px);box-shadow:0 24px 60px #18354a2b}.app-state-card h1,.portrait-orientation-card h1{color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(2rem,8vw,3.2rem);line-height:.98}.app-state-card>p:not(.eyebrow),.portrait-orientation-card>p:not(.eyebrow){margin:18px auto 22px;line-height:1.55}.portrait-orientation-icon{color:#fff;background:var(--coral);border-radius:24px;place-items:center;width:72px;height:72px;margin:0 auto 18px;font-size:2.4rem;font-weight:900;display:grid;transform:rotate(-12deg)}.loading-mark{justify-content:center;align-items:end;gap:7px;height:68px;margin-bottom:18px;display:flex}.loading-mark i{background:var(--cyan);border-radius:10px;width:36px;height:36px;animation:.9s ease-in-out infinite alternate loading-block;display:block}.loading-mark i:nth-child(2){background:var(--coral);height:52px;animation-delay:.12s}.loading-mark i:nth-child(3){background:var(--orange);height:44px;animation-delay:.24s}@keyframes loading-block{to{transform:translateY(-8px)rotate(3deg)}}.game-shell{width:min(100%,650px);height:100dvh;min-height:100dvh;padding:max(18px, env(safe-area-inset-top)) 20px max(18px, env(safe-area-inset-bottom));overscroll-behavior:none;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.game-shell--shake-shaking{animation:.12s linear infinite shake-screen-rumble}.game-shell--shake-shaking:after{content:"";z-index:44;pointer-events:none;background:radial-gradient(circle at 50% 52%,#0000 42%,#53cbff29),#ffffff06;border:3px solid #87e5ff59;animation:.42s ease-in-out infinite alternate shake-screen-flash;position:absolute;inset:0;box-shadow:inset 0 0 42px #5bccff40}.game-header{justify-content:space-between;align-items:end;gap:14px;margin-bottom:10px;display:flex}.game-title{min-width:0}.game-logo-title{width:clamp(170px,42vw,250px);margin:0;line-height:0}.game-logo-title img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 5px 8px #04042347);width:100%;height:auto;display:block}.player-name{color:#bdb7e3;margin:0 0 2px;font-size:.78rem;font-weight:800}.header-actions{align-items:center;gap:8px;padding-bottom:3px;display:flex}.navigation-menu{flex:none;position:relative}.navigation-menu-button{color:#e8e4fa;cursor:pointer;background:#ffffff17;border:0;border-radius:11px;place-items:center;width:40px;height:40px;padding:0;display:grid}.navigation-menu-button:hover,.navigation-menu-button[aria-expanded=true]{background:#ffffff2b}.navigation-menu-button:disabled{opacity:.48;cursor:default}.navigation-menu-button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.hamburger-icon{gap:4px;width:19px;display:grid}.hamburger-icon i{background:currentColor;border-radius:999px;width:100%;height:2px;transition:transform .12s,opacity .12s;display:block}.navigation-menu-button[aria-expanded=true] .hamburger-icon i:first-child{transform:translateY(6px)rotate(45deg)}.navigation-menu-button[aria-expanded=true] .hamburger-icon i:nth-child(2){opacity:0}.navigation-menu-button[aria-expanded=true] .hamburger-icon i:last-child{transform:translateY(-6px)rotate(-45deg)}.navigation-menu-panel{z-index:30;border:1px solid var(--panel-border);background:#10232ffa;border-radius:14px;gap:4px;width:190px;padding:7px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 16px 42px #04121a80}.navigation-menu-panel button{color:#e9e6fa;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px;font-size:.8rem;font-weight:800}.navigation-menu-panel button:hover{background:#ffffff1a}.navigation-menu-panel button[aria-current=page]{color:var(--navy);background:var(--orange)}.navigation-menu-divider{background:#ffffff21;height:1px;margin:3px 5px}.navigation-menu-panel .navigation-signout{color:#f4b3b3}.game-navigation-shell{overflow-y:auto}.game-navigation-view{width:min(100%,520px);padding:24px 0 max(28px, env(safe-area-inset-bottom));margin:auto}.game-navigation-view>.eyebrow{color:var(--orange);margin-bottom:5px}.game-navigation-view h2{color:var(--cream);letter-spacing:-.055em;margin:0;font-size:clamp(2rem,8vw,3rem);line-height:.95}.game-navigation-intro{color:#fff6dcb3;max-width:390px;margin:14px 0 22px;line-height:1.5}.game-navigation-actions{gap:9px;display:grid}.game-navigation-actions button{width:100%;color:var(--cream);text-align:left;cursor:pointer;background:#ffffff13;border:1px solid #fff6dc21;border-radius:15px;gap:3px;padding:13px 15px;display:grid}.game-navigation-actions button:hover,.game-navigation-actions button:focus-visible{background:#ffffff21}.game-navigation-actions button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.game-navigation-actions button.navigation-primary{color:var(--navy);background:var(--orange);border-color:#ffc56f7a;box-shadow:0 5px #be7330}.game-navigation-actions span{color:#fff6dc94;font-size:.74rem}.game-navigation-actions .navigation-primary span{color:#18354ab3}.game-navigation-version{color:#fff6dc80;text-align:center;margin:18px 0 0;font-size:.7rem;font-weight:800}.text-button{color:var(--cream);cursor:pointer;background:#ffffff14;border:0;border-radius:10px;padding:8px 10px;font-size:.78rem;font-weight:800}.text-button:hover{background:#ffffff29}.text-button:disabled{opacity:.48;cursor:default}.sound-button{color:#dffaff;background:radial-gradient(circle at 32% 24%,#73e1ff3d,#0000 48%),linear-gradient(145deg,#465dc9c7,#251c69e6);border:1px solid #7bdeff47;border-radius:13px;flex:none;place-items:center;width:40px;height:40px;padding:7px;transition:transform .14s,filter .14s,background .14s;display:grid;box-shadow:inset 0 1px #ffffff2b,0 5px 13px #0708303d}.sound-button:hover{filter:brightness(1.12)}.sound-button:active{transform:scale(.94)}.sound-button:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.sound-button--muted{color:#ffd9e5;background:radial-gradient(circle at 32% 24%,#ff97c333,#0000 48%),linear-gradient(145deg,#6d43acd1,#361f6beb);border-color:#ff96bd4d}.sound-icon{filter:drop-shadow(0 2px 3px #050b346b);width:100%;height:100%;overflow:visible}.sound-icon-speaker{fill:currentColor;stroke:#5bd0ffeb;stroke-width:.8px;stroke-linejoin:round}.sound-icon-waves,.sound-icon-muted{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}.sound-icon-muted{color:#ff91b7}.score-strip{border:1px solid var(--panel-border);background:var(--panel);border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;min-height:67px;margin-bottom:14px;padding:9px 18px;display:grid;box-shadow:0 14px 32px #06051d2e}.score-strip>div:first-child{text-align:left}.score-strip>div{min-width:0}.score-strip>div:last-child{text-align:right}.score-strip span{color:#bcb6dc;letter-spacing:.1em;text-transform:uppercase;font-size:.67rem;font-weight:900;display:block}.score-strip strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:1.55rem;display:block}.score-strip .score-value--compact{letter-spacing:-.02em;font-size:1.15rem}.score-strip-status{flex-wrap:wrap;flex:0 0 68px;place-content:center;align-items:center;gap:4px 8px;min-width:0;min-height:68px;margin-bottom:4px;display:flex}.combo-badge{color:#3b2157;background:linear-gradient(135deg,#ff9ec8,#ffe47a);border-radius:999px;align-items:center;gap:7px;padding:6px 9px 6px 11px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:.9rem;animation:.26s ease-out combo-pop;display:flex}.combo-badge .combo-badge-label{color:inherit;font:inherit;letter-spacing:normal;text-transform:none;white-space:nowrap;line-height:1}.combo-badge .combo-grace{min-width:27px;color:inherit;letter-spacing:0;background:#4b225824;border-radius:999px;align-items:center;gap:2px;padding:3px 5px;font-size:.7rem;line-height:1;display:flex;box-shadow:inset 0 1px 2px #411b4d24}.combo-grace-life{color:#9d376a;text-align:center;text-shadow:0 1px #ffffff59;width:.75rem;font-style:normal;display:block}.combo-grace-life--available{color:#e72c72;filter:drop-shadow(0 1px 2px #b1236140)}.combo-grace-life--spent{color:#51275b70}.combo-grace-life--just-spent{animation:.42s ease-out both combo-life-spend}.combo-badge--warning{animation:.62s ease-out combo-warning-pulse;box-shadow:0 0 0 2px #fff49d40,0 4px 14px #d641704d}.diamond-badge{color:#ecfbff;white-space:nowrap;background:linear-gradient(135deg,#1374d3,#31c9ef);border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(.66rem,2.4vw,.82rem);font-weight:900;display:flex;box-shadow:inset 0 2px #ffffff4d,0 4px 12px #199cde40}.gold-badge{color:#4a2800;white-space:nowrap;background:linear-gradient(135deg,#fff0a6,#f7b928 48%,#d9870a);border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(.66rem,2.4vw,.82rem);font-weight:900;display:flex;box-shadow:inset 0 2px #ffffff9e,0 4px 13px #df991957}.score-strip-status .rush-multiplier{color:inherit;letter-spacing:0;text-transform:none;background:#fff3;border-radius:999px;padding:2px 5px;font-size:.72em;font-weight:900;line-height:1;display:inline-block;box-shadow:inset 0 1px #ffffff3d}.final-results-button{white-space:nowrap;min-height:44px;color:var(--navy);background:var(--orange);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 13px;font-size:.78rem;font-weight:900;display:inline-flex;box-shadow:0 4px #be7330}.final-results-button>span{font:inherit;color:inherit;letter-spacing:0;display:inline}.board-stage{isolation:isolate;touch-action:none;width:100%;position:relative}.board{--gap:clamp(3px, .9vw, 6px);aspect-ratio:1;gap:var(--gap);touch-action:none;background:#0707226e;border:1px solid #ffffff1f;border-radius:clamp(16px,4vw,25px);grid-template-columns:repeat(8,1fr);width:100%;padding:clamp(7px,1.8vw,12px);display:grid;box-shadow:inset 0 2px 6px #0000004d,0 24px 50px #0603244d}.cell{aspect-ratio:1;background:#ffffff13;border-radius:clamp(4px,1.2vw,9px);transition:transform .12s,opacity .12s,background .1s;position:relative;box-shadow:inset 0 2px 2px #ffffff05}.cell--filled,.piece-block{background:var(--block-base);box-shadow:inset 0 4px #ffffff45,inset 0 -5px #30194b33,0 3px 5px #04031e40}.cell--filled:after,.cell--preview-valid:after,.piece-block:after{content:"";background:linear-gradient(145deg,#ffffff29,#0000 58%);border-radius:22%;position:absolute;inset:13%}.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--filled:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--preview-valid:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .piece-block:before{content:"";z-index:0;border-radius:inherit;background:linear-gradient(155deg, #ffffff80, transparent 35%), var(--combo-block-base);opacity:1;pointer-events:none;animation:.52s cubic-bezier(.2,.85,.25,1) both combo-color-enter;position:absolute;inset:0;box-shadow:inset 0 4px #fff6,inset 0 -5px #34195b38,0 0 11px #ff84e047}.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .cell--filled:before,.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .cell--preview-valid:before,.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .piece-block:before{animation:1.8s ease-in both combo-color-exit}.game-shell--diamond .cell--filled,.game-shell--diamond .cell--preview-valid,.game-shell--diamond .piece-block{--block-base:linear-gradient(135deg, transparent 46%, #e7fdff9e 47% 51%, transparent 52%), conic-gradient(from 218deg at 50% 48%, #123399, #087ee8, #5cf2ff, #168fdc, #24209a, #0dcfe8, #123399);outline-offset:-1px;background:linear-gradient(135deg,#0000 46%,#e7fdff9e 47% 51%,#0000 52%),conic-gradient(from 218deg at 50% 48%,#123399,#087ee8,#5cf2ff,#168fdc,#24209a,#0dcfe8,#123399);outline:1px solid #99f2ffa8;box-shadow:inset 0 4px #e2fdffb3,inset 0 -6px #071c6f80,inset 4px 0 8px #24e0ff33,0 0 13px #2bd2ff80,0 4px 7px #04031e5c}.game-shell--diamond .cell--filled:after,.game-shell--diamond .cell--preview-valid:after,.game-shell--diamond .piece-block:after{background:linear-gradient(145deg,#ffffffa8,#0000 37%),linear-gradient(35deg,#0000 48%,#dafbff59 49% 52%,#0000 53%),linear-gradient(145deg,#0000 52%,#051f7e52 53%);border-radius:18%;inset:10%}.game-shell--gold .cell--filled,.game-shell--gold .cell--preview-valid,.game-shell--gold .piece-block{--block-base:linear-gradient(132deg, transparent 44%, #fff9cab8 45% 50%, transparent 51%), conic-gradient(from 218deg at 50% 48%, #7b3500, #d98500, #ffe04b, #fff1a0, #dc8b05, #773000, #ffc52b, #7b3500);outline-offset:-1px;background:linear-gradient(132deg,#0000 44%,#fff9cab8 45% 50%,#0000 51%),conic-gradient(from 218deg at 50% 48%,#7b3500,#d98500,#ffe04b,#fff1a0,#dc8b05,#773000,#ffc52b,#7b3500);outline:1px solid #ffdd5bc2;box-shadow:inset 0 4px #fff8c2d1,inset 0 -6px #6828007a,inset 4px 0 8px #ffe04c3d,0 0 14px #ffb11785,0 4px 7px #33150061}.game-shell--gold .cell--filled:after,.game-shell--gold .cell--preview-valid:after,.game-shell--gold .piece-block:after{background:linear-gradient(145deg,#ffffffb8,#0000 36%),linear-gradient(35deg,#0000 48%,#fff3ab70 49% 52%,#0000 53%),linear-gradient(145deg,#0000 52%,#6728004d 53%);border-radius:18%;inset:10%}.game-shell--diamond .cell--filled:before,.game-shell--diamond .cell--preview-valid:before,.game-shell--diamond .piece-block:before,.game-shell--gold .cell--filled:before,.game-shell--gold .cell--preview-valid:before,.game-shell--gold .piece-block:before{content:"";z-index:2;border-radius:inherit;opacity:0;pointer-events:none;background:linear-gradient(112deg,#0000 24%,#ffffffc7 43%,#0000 61%) 140% 0/240% 100%;animation:3.2s ease-in-out infinite rush-block-shimmer;position:absolute;inset:0}.special-item-icon{z-index:4;pointer-events:none;filter:drop-shadow(0 2px 2px #0915469e);width:64%;height:64%;animation:1.1s ease-in-out infinite shake-item-wiggle;position:absolute;inset:18%}.special-item-icon--popcorn{width:74%;height:74%;animation-name:popcorn-item-bounce;inset:13%}.special-item-icon--inventory-drag{filter:drop-shadow(0 3px 3px #091546b3)drop-shadow(0 0 7px #75e2ffcc);width:76%;height:76%;inset:12%}.cell--inventory-target{background:#68ddff2e;transform:scale(.95);box-shadow:inset 0 0 0 2px #97edffb8,0 0 13px #3dc5f466}.cell--shake-falling{z-index:5;transition:none;animation:.7s cubic-bezier(.42,0,.82,.28) both shake-block-fall}.game-shell--popcorn-windup .board{animation:.22s ease-in both popcorn-board-windup}.cell--popcorn-popping{z-index:6;animation:popcorn-cell-pop .54s calc(var(--pop-order) * 20ms) cubic-bezier(.2, .8, .28, 1.15) both}.popcorn-burst{z-index:8;pointer-events:none;position:absolute;inset:50%}.popcorn-burst i{--kernel:0;aspect-ratio:1;opacity:0;width:26%;animation:popcorn-kernel-burst .5s calc(var(--pop-order) * 20ms + .105s) ease-out both;background:#fff4bd;border-radius:60% 45% 55% 42%;position:absolute;box-shadow:inset -1px -1px #e6a842,0 0 5px #ffef98cc}.popcorn-burst i:first-child{--kernel-x:-28px;--kernel-y:-24px}.popcorn-burst i:nth-child(2){--kernel-x:27px;--kernel-y:-29px}.popcorn-burst i:nth-child(3){--kernel-x:-25px;--kernel-y:27px}.popcorn-burst i:nth-child(4){--kernel-x:30px;--kernel-y:23px}.cell--preview-valid{background:var(--block-base);opacity:1;transform:scale(.96);box-shadow:inset 0 4px #ffffff45,inset 0 -5px #30194b33,0 3px 5px #04031e40,0 0 0 2px #ffffff2e}.cell--preview-invalid{background:#ff688799;transform:scale(.92)}.cell--clearing{z-index:2;animation:.22s ease-in forwards clear-flash}.board--multi-clear{animation:.26s ease-out board-clear-pulse}.board--perfect-clear{animation:.72s ease-out perfect-board-pulse}.move-feedback{z-index:8;color:#fff;text-align:center;text-shadow:0 2px 8px #260d458c;pointer-events:none;background:#1f164dd1;border:1px solid #ffffff42;border-radius:999px;gap:1px;min-width:max-content;padding:8px 14px;animation:.42s cubic-bezier(.2,.95,.3,1.12) both score-burst;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 30px #08052457}.move-feedback strong{text-transform:uppercase;font-size:clamp(1rem,4.5vw,1.45rem);line-height:1.05}.move-feedback span{color:#ffe879;font-size:.84rem;font-weight:900}.move-feedback--placement{background:#1f164dad;padding:5px 10px;top:72%}.move-feedback--multi{background:linear-gradient(135deg,#ea4299eb,#6448e2f0);animation-name:multi-score-burst}.move-feedback--board-clear{z-index:12;color:#31194f;text-shadow:none;background:linear-gradient(135deg,#fff8a1,#ffae68 50%,#ff8bd3);padding:10px 20px;animation:3.75s cubic-bezier(.2,.9,.28,1.12) both perfect-label-pop;top:auto;bottom:7%;box-shadow:0 12px 35px #ff73be6b}.item-feedback{z-index:9;color:#2b2454;pointer-events:none;background:linear-gradient(135deg,#e4fbff,#80dfff);border:1px solid #ffffff5c;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;animation:.26s ease-out both item-feedback-pop;display:flex;position:absolute;top:6%;right:4%;box-shadow:0 10px 24px #04134147}.item-feedback img{width:25px;height:25px}.item-feedback strong{font-size:.78rem}.move-feedback--board-clear strong{font-size:clamp(1.25rem,5vw,2rem)}.move-feedback--board-clear span{color:#602667;font-size:.95rem}.perfect-clear-celebration{z-index:7;pointer-events:none;place-items:center;animation:3.75s ease-out both celebration-container;display:grid;position:absolute;inset:-3%;overflow:visible}.perfect-clear-celebration img{z-index:2;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border:2px solid #fff9;border-radius:clamp(18px,5vw,32px);width:94%;animation:3.75s cubic-bezier(.16,.9,.25,1.08) both celebration-image-pop;position:relative;box-shadow:0 20px 65px #ff68b67a,0 0 40px #ffe37566}.perfect-clear-glow{z-index:1;filter:blur(22px);opacity:0;background:conic-gradient(from 20deg,#ffe774,#ff75bc,#a781ff,#6ce5ff,#ffe774);border-radius:50%;animation:1.65s ease-out both perfect-glow;position:absolute;inset:-10%}.perfect-clear-sparks{z-index:4;position:absolute;inset:50%}.perfect-clear-sparks i{--spark-angle:0deg;--spark-delay:0s;aspect-ratio:1;opacity:0;width:clamp(6px,1.8vw,12px);animation:spark-fly 1.05s var(--spark-delay) ease-out both;transform:rotate(var(--spark-angle)) translateX(0) rotate(calc(-1 * var(--spark-angle)));background:#fff3a3;border-radius:3px;position:absolute;box-shadow:0 0 12px #fff,0 0 22px #ffcf50}.diamond-transition{z-index:10;color:#fff;text-align:center;text-shadow:0 3px 14px #111c58cc;pointer-events:none;isolation:isolate;border-radius:clamp(18px,5vw,30px);place-content:center;justify-items:center;gap:4px;animation:.76s ease-in-out both diamond-transition-veil;display:grid;position:absolute;inset:-4%;overflow:hidden}.diamond-transition--entering{animation-duration:2.25s}.diamond-transition:before{content:"";z-index:-1;background:radial-gradient(circle,#e1fbfff5 0 8%,#47c5ffc7 27%,#2d55d24d 52%,#0000 72%),conic-gradient(from 25deg,#0000,#fff9,#0000 28%);animation:.76s ease-in-out both diamond-transition-sweep;position:absolute;inset:-25%}.diamond-transition--entering:before{animation-duration:2.25s}.rush-splash{z-index:1;object-fit:contain;filter:drop-shadow(0 16px 24px #070c3e85)drop-shadow(0 0 18px #5edaff73);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:min(100%,560px);max-height:100%;animation:2.25s cubic-bezier(.16,.86,.24,1.05) both rush-splash;position:relative}.gold-rush-splash{filter:drop-shadow(0 16px 24px #451e0080)drop-shadow(0 0 20px #ffbf2a80)}.diamond-transition>span{filter:drop-shadow(0 0 12px #e7fcffe6);font-size:clamp(2rem,11vw,4.4rem);line-height:.9}.diamond-transition>strong{letter-spacing:.03em;background:#1f3997b8;border:1px solid #ffffff75;border-radius:999px;padding:7px 13px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(.86rem,3.5vw,1.2rem);box-shadow:0 9px 24px #0d1f6959}.diamond-transition--leaving{animation-direction:reverse}.game-shell--diamond-entering .board,.game-shell--diamond-leaving .board{animation:.76s ease-in-out both diamond-board-transition}.gold-transition{z-index:10;color:#fff9d2;text-align:center;text-shadow:0 3px 14px #4a2300e0;pointer-events:none;isolation:isolate;border-radius:clamp(18px,5vw,30px);place-content:center;justify-items:center;gap:4px;animation:.76s ease-in-out both gold-transition-veil;display:grid;position:absolute;inset:-4%;overflow:hidden}.gold-transition--entering{animation-duration:2.25s}.gold-transition:before{content:"";z-index:-1;background:radial-gradient(circle,#fffbd2fa 0 8%,#ffc735d1 27%,#b160034d 52%,#0000 72%),conic-gradient(from 25deg,#0000,#ffffffb8,#0000 28%);animation:.76s ease-in-out both gold-transition-sweep;position:absolute;inset:-25%}.gold-transition--entering:before{animation-duration:2.25s}.gold-transition>span{filter:drop-shadow(0 0 12px #ffee80f2);font-size:clamp(2rem,11vw,4.4rem);line-height:.9}.gold-transition>strong{color:#4a2800;letter-spacing:.03em;background:#ffd553e6;border:1px solid #ffffff85;border-radius:999px;padding:7px 13px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(.86rem,3.5vw,1.2rem);box-shadow:0 9px 24px #6b390052}.gold-transition--leaving{animation-direction:reverse}.game-shell--gold-entering .board,.game-shell--gold-leaving .board{animation:.76s ease-in-out both gold-board-transition}.combo-transition{z-index:11;color:#fff;text-align:center;text-shadow:0 3px 16px #2a0f4ec7;pointer-events:none;isolation:isolate;border-radius:clamp(18px,5vw,30px);place-content:center;justify-items:center;gap:5px;animation:1.05s ease-out both combo-milestone-veil;display:grid;position:absolute;inset:-4%;overflow:hidden}.combo-transition:before{content:"";z-index:-1;background:radial-gradient(circle, #ffffffeb 0 6%, #ff80dc94 25%, #6a55f538 48%, transparent 70%), conic-gradient(from 10deg, transparent 0 12%, #fff099ad 15%, transparent 20% 42%, #5be8ff94 46%, transparent 52%);animation:1.05s cubic-bezier(.16,.78,.22,1) both combo-milestone-sweep;position:absolute;inset:-28%}.combo-transition>span{filter:drop-shadow(0 0 14px #fff4a9f2);font-size:clamp(2.3rem,12vw,5rem);line-height:.8;animation:.62s cubic-bezier(.2,.9,.3,1.18) both combo-milestone-star}.combo-transition>strong{letter-spacing:.03em;background:linear-gradient(135deg,#833fd0e6,#e14da4e0);border:1px solid #ffffff80;border-radius:999px;padding:8px 15px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(1rem,4.3vw,1.5rem);box-shadow:0 10px 28px #2c0f5961,inset 0 2px #ffffff3d}.combo-transition-sparks{position:absolute;inset:50%}.combo-transition-sparks i{--combo-spark-angle:0deg;--combo-spark-delay:0s;aspect-ratio:1;opacity:0;width:clamp(6px,1.8vw,11px);animation:combo-spark-fly .72s var(--combo-spark-delay) ease-out both;transform:rotate(var(--combo-spark-angle)) translateX(0) rotate(calc(-1 * var(--combo-spark-angle)));background:#fff3a6;border-radius:50%;position:absolute;box-shadow:0 0 10px #fff,0 0 20px #ff78d1}.combo-transition--lost{color:#e7e3f3;animation:1.8s ease-out both combo-lost-veil}.combo-transition--lost:before{background:radial-gradient(circle,#796bae3d,#0000 68%);animation:1.8s ease-out both combo-lost-wave}.combo-transition--lost>span{filter:none;font-size:clamp(1.8rem,8vw,3.2rem);animation:1.8s ease-out both combo-lost-icon}.combo-transition--lost>strong{background:#2a234ec7;border-color:#e7e3f333;font-size:clamp(.82rem,3.4vw,1.05rem);box-shadow:0 8px 22px #07052047}.game-shell--combo-milestone .board,.game-shell--combo-milestone .tray{animation:.72s cubic-bezier(.2,.8,.25,1) both combo-playfield-pop}.game-shell--combo-lost .board,.game-shell--combo-lost .tray{animation:1.8s ease-out both combo-playfield-release}.new-best-celebration{z-index:60;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));pointer-events:none;isolation:isolate;place-items:center;animation:3.6s ease-out both new-best-overlay;display:grid;position:fixed;inset:0;overflow:hidden}.new-best-celebration img{z-index:2;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 24px 34px #0a042b8c);width:min(88vw,560px);max-height:min(88dvh,720px);animation:3.6s cubic-bezier(.16,.9,.25,1.08) both new-best-art;position:relative}.new-best-shine{z-index:1;aspect-ratio:1;filter:blur(2px);background:repeating-conic-gradient(from 8deg,#ffee5d6b 0deg 8deg,#0000 8deg 22deg),radial-gradient(circle,#ff69c48c,#6a5cff47 42%,#0000 70%);border-radius:50%;width:min(125vw,760px);animation:3.6s ease-out both new-best-shine;position:absolute}.tray{--tray-height:clamp(104px, 23vw, 142px);height:var(--tray-height);flex:0 0 var(--tray-height);touch-action:none;overscroll-behavior:none;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(70px,.72fr);align-items:stretch;gap:clamp(5px,1.8vw,12px);padding:13px 4px 3px;display:grid}.tray-slot{grid-template-rows:minmax(0,1fr);place-items:stretch stretch;min-width:0;min-height:0;display:grid}.tray-slot--invalid{animation:.25s ease-in-out invalid-shake}.piece{--tray-cell:clamp(14px, 4.2vw, 21px);appearance:none;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:0 0;border:0;place-items:center;width:100%;min-width:0;max-width:100%;padding:10px;display:grid}.piece:active{cursor:grabbing}.piece-grid{grid-template-columns:repeat(var(--piece-cols), var(--tray-cell));grid-template-rows:repeat(var(--piece-rows), var(--piece-cell-height,var(--tray-cell)));column-gap:var(--piece-column-gap,2px);row-gap:var(--piece-row-gap,2px);display:grid}.piece-block{pointer-events:none;border-radius:5px;position:relative}.piece-gap{pointer-events:none}.piece--source-hidden .piece-grid{opacity:0}.inventory-slot{background:#110e443d;border:1px dashed #bde0ff57;border-radius:14px;place-items:stretch stretch;min-width:0;min-height:0;padding:5px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff0d}.inventory-slot--filled{background:linear-gradient(160deg,#40b4e833,#1d1a5b66);border-style:solid;border-color:#80e0ff8c;box-shadow:inset 0 1px #ffffff21,0 6px 18px #09114133}.inventory-empty{color:#918bb7;text-align:center;place-content:center;gap:2px;min-height:0;font-size:clamp(.58rem,2vw,.72rem);font-weight:800;display:grid}.inventory-empty>span{opacity:.48;font-size:1.15rem;font-weight:500;line-height:.9}.inventory-item{color:#eafaff;appearance:none;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:0 0;border:0;grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:0;min-width:0;min-height:0;padding:2px;display:grid}.inventory-item:active{cursor:grabbing}.inventory-item:focus-visible{outline-offset:1px;border-radius:9px;outline:2px solid #bcefff}.inventory-item img{pointer-events:none;filter:drop-shadow(0 3px 4px #0812438c);width:min(76%,48px);min-width:31px;max-height:52px;animation:1.1s ease-in-out infinite shake-item-wiggle}.inventory-slot--popcorn .inventory-item img{animation-name:popcorn-item-bounce}.inventory-item strong{font-size:clamp(.62rem,2.2vw,.78rem);line-height:1.05}.inventory-item--source-hidden img,.inventory-item--source-hidden strong{opacity:0}.game-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:25px;display:grid}.app-version{color:#9690be;white-space:nowrap;font-size:.62rem;font-weight:800}.save-status{text-align:center;color:#aaa4cd;place-items:center;min-height:25px;font-size:.74rem;font-weight:800;display:grid}.save-status--error{color:#ffc1d5}.save-status--conflict{color:#ffe193}.dev-controls{left:max(8px, env(safe-area-inset-left));bottom:max(8px, env(safe-area-inset-bottom));z-index:45;color:#e9e6fa;background:#1c1645f0;border:1px solid #fff3;border-radius:10px;padding:5px 7px;font-size:.7rem;position:fixed;box-shadow:0 8px 24px #04031e57}.dev-controls summary{cursor:pointer;font-weight:900}.dev-controls button{color:#172456;cursor:pointer;background:#82e4ff;border:0;border-radius:7px;width:100%;margin-top:5px;padding:7px 9px;font-size:.7rem;font-weight:900;display:block}.dev-controls button:disabled{opacity:.5;cursor:default}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c082ab8;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.game-over-card{z-index:52;text-align:center;background:linear-gradient(145deg,#342b76,#211b50);border:1px solid #ffffff30;border-radius:28px;width:min(100%,390px);max-height:calc(100dvh - 44px);padding:36px;animation:.3s cubic-bezier(.2,.9,.25,1.15) modal-pop;position:relative;overflow:auto;box-shadow:0 30px 90px #04021a8c}.game-over-card h2{font-size:2.5rem}.final-score{color:#ffe172;margin:15px 0 0;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:3.8rem;line-height:1}.game-over-card .primary-button{width:100%;margin-top:14px}.leaderboard-game-over-card{width:min(100%,430px);padding:27px;overflow-x:hidden}.leaderboard-game-over-card.made-top-five{border-color:#ffe56fc7;animation:.56s cubic-bezier(.18,.9,.24,1.16) both leaderboard-card-arrival;box-shadow:0 30px 90px #04021a99,0 0 42px #ffc14657}.leaderboard-game-over-card .final-score{margin-top:9px;font-size:clamp(2.8rem,14vw,3.6rem)}.game-over-best{color:#d9d4ed;margin:6px 0 15px;font-weight:800}.top-five-badge{color:#3a2056;text-transform:uppercase;background:linear-gradient(135deg,#fff48a,#ffad58 55%,#ff8ecb);border:2px solid #ffffffa3;border-right:0;border-radius:999px 0 0 999px;align-items:center;gap:7px;padding:8px 13px 8px 15px;font-size:.78rem;font-weight:950;animation:.62s cubic-bezier(.18,.9,.24,1.2) .18s both top-five-badge-slam;display:flex;position:absolute;top:18px;right:-2px;box-shadow:0 8px 25px #ff934e61}.top-five-badge strong{font-size:1.15rem}.game-over-leaderboard{text-align:left;background:#09072c57;border:1px solid #ffffff1a;border-radius:17px;padding:12px}.game-over-leaderboard-heading{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.game-over-leaderboard-heading h3{margin:0;font-size:1rem}.game-over-leaderboard-heading span{color:#bdb7dc;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:900}.game-over-leaderboard-message{color:#c6c1df;text-align:center;margin:14px 4px;font-size:.8rem;font-weight:750}.game-over-leaderboard ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.game-over-leaderboard li{color:#dcd8ee;background:#ffffff0e;border-radius:10px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;min-height:32px;padding:5px 9px;font-size:.78rem;display:grid;position:relative;overflow:hidden}.game-over-leaderboard li>*{z-index:1;position:relative}.game-over-leaderboard li>span:first-child{color:#9d96c2;font-weight:900}.game-over-leaderboard li>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-over-leaderboard li>span:last-child{color:#ffe172;font-weight:900}.game-over-leaderboard li.is-current-player{box-shadow:inset 0 0 0 2px #ffe1728a}.game-over-leaderboard li.top-five-arrival{color:#392052;background:linear-gradient(100deg,#ffe674,#ffb267 55%,#ff94ca);animation:.65s cubic-bezier(.16,.9,.24,1.12) .43s both leaderboard-row-arrival;box-shadow:0 5px 18px #ffac4c42}.game-over-leaderboard li.top-five-arrival>span:first-child,.game-over-leaderboard li.top-five-arrival>span:last-child{color:#512963}.game-over-leaderboard li.top-five-arrival:after{content:"";background:linear-gradient(105deg,#0000 25%,#ffffffb8 48%,#0000 70%);animation:.85s ease-out .85s both leaderboard-row-shine;position:absolute;inset:0;transform:translate(-130%)}.game-over-actions{grid-template-columns:1fr 1fr;gap:9px;margin-top:13px;display:grid}.game-over-actions .primary-button{width:auto;margin:0;padding:11px 12px;box-shadow:0 5px #b95a2d}.game-over-actions--with-score-action .game-over-score-action{grid-column:1/-1}.secondary-button{color:#ece9f8;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:13px;padding:11px 12px;font-weight:900}.secondary-button:hover{background:#ffffff24}.leaderboard-celebration{z-index:51;pointer-events:none;position:fixed;inset:0;overflow:hidden}.leaderboard-rays{aspect-ratio:1;background:repeating-conic-gradient(from 5deg,#ffe85b57 0deg 8deg,#0000 8deg 22deg);border-radius:50%;width:min(130vw,760px);animation:1.2s ease-out both leaderboard-rays-bloom;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.leaderboard-celebration>i{--leader-spark-angle:0deg;--leader-spark-delay:0s;aspect-ratio:1;opacity:0;width:10px;animation:leaderboard-spark-fly .78s var(--leader-spark-delay) ease-out both;background:#fff18a;border-radius:3px;position:absolute;top:48%;left:50%;box-shadow:0 0 12px #fff,0 0 22px #ff9fcf}.account-modal-backdrop{z-index:80;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));background:radial-gradient(circle at 12% 8%,#5bbfda29,#0000 30%),radial-gradient(circle at 90% 90%,#e6696a1f,#0000 32%),radial-gradient(#fff6dc0f .7px,#0000 .7px) 0 0/11px 11px,#0b1b25;place-items:center;display:grid;position:fixed;inset:0}.account-dialog{width:min(100%,470px);max-height:calc(100dvh - 32px);color:var(--cream);background:radial-gradient(circle at 10% 0, #5bbfda33, transparent 34%), var(--navy);border:1px solid #fff6dc2e;border-radius:28px;padding:31px;animation:.25s cubic-bezier(.2,.9,.25,1.1) modal-pop;position:relative;overflow:auto;box-shadow:0 34px 90px #04121a9e}.account-dialog h2{margin:3px 42px 14px 0;font-size:clamp(1.8rem,8vw,2.35rem)}.account-dialog>.eyebrow{color:var(--orange)}.dialog-close{width:38px;height:38px;color:var(--cream);cursor:pointer;background:#ffffff13;border:1px solid #fff6dc24;border-radius:12px;place-items:center;padding:0;font-size:0;display:grid;position:absolute;top:16px;right:16px}.dialog-close>span:first-child{font-size:1.55rem;line-height:1;display:block;transform:translateY(-1px)}.account-signed-out,.profile-form{gap:12px;display:grid}.account-dialog button:disabled{opacity:.55;cursor:not-allowed}.account-signed-out>p{color:#fff6dcbd;margin:0;line-height:1.5}.account-benefits{flex-wrap:wrap;gap:7px;margin:1px 0 4px;padding:0;list-style:none;display:flex}.account-eligibility{gap:8px;font-size:.85rem;line-height:1.5;display:grid}.account-eligibility label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.account-eligibility input[type=checkbox]{width:20px;height:20px;accent-color:var(--cyan);flex:0 0 20px;margin:2px 0 0}.account-eligibility p{color:#fff6dcbd;margin:0}.account-eligibility a{color:var(--cyan);text-decoration:underline}.account-benefits li{color:var(--navy);background:var(--cyan);border:0;border-radius:8px;padding:6px 9px;font-size:.72rem;font-weight:850;box-shadow:0 3px #04121a52}.account-benefits li:nth-child(2){background:var(--orange)}.account-benefits li:nth-child(3){background:var(--coral)}.google-sign-in{min-height:48px;color:var(--navy);background:var(--cream);cursor:pointer;border:0;border-radius:14px;padding:11px 16px;font-weight:900}.email-sign-in{min-height:48px;color:var(--cream);cursor:pointer;background:#ffffff0f;border:2px solid #fff6dcb8;border-radius:14px;padding:10px 16px;font-weight:900}.sign-in-divider{color:#fff6dc80;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:.78rem;font-weight:800;display:grid}.sign-in-divider:before,.sign-in-divider:after{content:"";background:#fff6dc29;height:1px}.google-sign-in span{color:#fff;background:#4285f4;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:10px;display:inline-grid}.oauth-redirect-status{color:#fff6dcb3;margin:0;font-size:.78rem;line-height:1.45}.oauth-redirect-status a{color:var(--orange);text-underline-offset:2px;font-weight:850;text-decoration:underline}.profile-form label,.email-sign-in-form label,.email-code-form label{font-weight:900}.profile-form input,.email-sign-in-form input,.email-code-form input{width:100%;color:var(--ink);font:inherit;background:#fffdf4;border:2px solid #fff6dcb8;border-radius:13px;padding:12px 14px}.email-code-form input{text-align:center;letter-spacing:.28em;font-size:1.45rem;font-weight:900}.profile-form p,.email-sign-in-form p,.account-local-note{color:#fff6dcad;margin:0;font-size:.82rem;line-height:1.45}.email-sign-in-form,.email-code-step,.email-code-form{gap:11px;display:grid}.email-code-step>p{color:#fff6dcc7;overflow-wrap:anywhere;margin:0;line-height:1.5}.account-inline-back,.email-resend>button{color:var(--orange);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:3px 0;font-size:.8rem;font-weight:850}.email-resend{gap:7px;margin-top:3px;display:grid}.email-resend>button:disabled,.account-inline-back:disabled{cursor:default;opacity:.52}.turnstile-field{min-height:38px}.turnstile-field>div{max-width:100%}.local-bot-check,.email-code-step .local-email-code{color:var(--cream);background:#ffffff12;border-radius:9px;margin:0;padding:8px 10px;font-size:.76rem;line-height:1.4}.email-code-step .local-email-code{color:var(--navy);background:var(--cyan);font-weight:900}.account-required-note{border-left:3px solid var(--orange);color:#fff6dce0;margin:0 0 14px;padding:3px 0 3px 11px;line-height:1.45}.account-secondary-actions{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.account-secondary-actions button{color:#fff6dcd1;cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:800}.account-secondary-actions .danger-link{color:#f4b3b3}.account-local-note{margin-top:4px}.app-error{border:1px solid var(--error-border);color:var(--error-foreground);background:var(--error-background);border-radius:12px;margin:14px 0 0;padding:10px 12px;font-size:.84rem;font-weight:750;line-height:1.45}.app-error+button{margin-top:12px}.field-error{color:#ffc0c0;margin:-3px 0 0;font-size:.78rem;font-weight:800;line-height:1.4}.email-sign-in-form input[aria-invalid=true]{border-color:var(--coral);outline-color:var(--coral)}.session-choice-dialog>p:not(.eyebrow){color:#fff6dcc7;margin:0;line-height:1.5}.session-choice-actions{gap:11px;margin-top:20px;display:grid}.session-choice-actions>p{color:#fff6dcad;text-align:center;margin:-3px 0 0;font-size:.78rem}.personal-rank{color:#fff6dcc2;background:var(--navy-deep);border-radius:14px;align-items:baseline;gap:8px;margin:0 0 15px;padding:12px 14px;display:flex}.personal-rank strong{color:var(--orange);font-size:1.3rem}.personal-rank span{margin-left:auto;font-size:.78rem}.leaderboard-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-list li{background:var(--navy-deep);border:1px solid #fff6dc14;border-radius:14px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:10px 13px 10px 10px;display:grid}.leaderboard-list li.is-you{border-color:#f0a34cb3;box-shadow:inset 0 0 0 1px #f0a34c52}.leaderboard-rank{width:42px;min-height:39px;color:var(--navy);background:var(--orange);border-radius:12px;place-items:center;font-weight:950;display:grid}.leaderboard-player,.leaderboard-score{min-width:0;display:grid}.leaderboard-player strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-player small,.leaderboard-score small{color:#fff6dc85;font-size:.68rem}.leaderboard-score{text-align:right}.leaderboard-score strong{color:var(--orange);font-size:1.12rem}.leaderboard-more{width:100%;margin-top:13px}.run-status{color:#fff6dcb8;background:#ffffff12;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:.68rem;font-weight:850;display:inline-flex}.run-status--ranked,.run-status--verified{color:var(--navy);background:var(--orange)}.run-status--pending{color:var(--navy);background:var(--cyan)}.run-status--failed{color:var(--cream);background:var(--coral)}.account-header-button{text-overflow:ellipsis;white-space:nowrap;max-width:110px;overflow:hidden}.leaderboard-header-button{width:36px;height:36px;color:var(--orange);place-items:center;padding:0;font-size:1rem;display:grid}.account-page .trophy-collection{gap:10px;margin:14px 0}.account-page .trophy-placeholder{grid-template-columns:42px minmax(0,1fr);gap:9px;min-height:0}.account-page .trophy-placeholder .skeleton-art{border-radius:12px;width:42px;height:42px}.account-page .personal-games{margin-top:14px}.account-page .personal-games>li{min-height:0}.account-page .personal-games-content .personal-game-body>.skeleton{margin:4px 0}@media (width<=430px){.account-dialog{padding:25px 18px 20px}.leaderboard-list li{grid-template-columns:40px minmax(0,1fr) auto;gap:7px}.leaderboard-rank{width:36px}.leaderboard-header-button{display:none}.account-header-button{max-width:72px}}@keyframes loading-bounce{to{border-radius:50%;transform:translateY(-14px)rotate(25deg)}}@keyframes shake-screen-rumble{0%{transform:translate(0)rotate(0)}18%{transform:translate(-3px,2px)rotate(-.22deg)}36%{transform:translate(3px,-2px)rotate(.18deg)}54%{transform:translate(-2px,-3px)rotate(-.16deg)}72%{transform:translate(2px,3px)rotate(.2deg)}to{transform:translate(0)rotate(0)}}@keyframes shake-screen-flash{0%{opacity:.25;filter:brightness()}to{opacity:.8;filter:brightness(1.25)}}@keyframes shake-block-fall{0%{transform:translateY(0)}82%{transform:translateY(var(--shake-fall-distance))}90%{transform:translateY(calc(var(--shake-fall-distance) - 5px))}to{transform:translateY(var(--shake-fall-distance))}}@keyframes popcorn-board-windup{0%{filter:brightness();transform:scale(1)}to{filter:brightness(1.12)saturate(1.08);transform:scale(.988)}}@keyframes popcorn-cell-pop{0%{opacity:1;filter:brightness();transform:scale(1)}34%{opacity:1;filter:brightness(1.35)saturate(1.08);transform:scale(1.28)}52%{opacity:1;filter:brightness(2.2)saturate(.72);transform:scale(1.56)}68%{opacity:.9;filter:brightness(2.6);transform:scale(.76)}to{opacity:0;filter:brightness(2.8);transform:scale(.08)}}@keyframes popcorn-kernel-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(0)}20%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--kernel-x)), calc(-50% + var(--kernel-y))) scale(.85) rotate(140deg)}}@keyframes combo-color-enter{0%{opacity:0;filter:brightness(1.8)saturate(.7)}62%{opacity:1;filter:brightness(1.22)saturate(1.2)}to{opacity:1;filter:none}}@keyframes combo-color-exit{0%{opacity:1;filter:brightness(1.08)saturate(1.12)}to{opacity:0;filter:brightness(.92)saturate(.55)}}@keyframes rush-block-shimmer{0%,58%,to{opacity:0;background-position:140% 0}68%{opacity:.72}82%{opacity:0;background-position:-140% 0}}@keyframes combo-milestone-veil{0%,to{opacity:0}15%,72%{opacity:1}}@keyframes combo-milestone-sweep{0%{opacity:0;transform:scale(.2)rotate(-30deg)}42%{opacity:1;transform:scale(1)rotate(4deg)}to{opacity:0;transform:scale(1.28)rotate(22deg)}}@keyframes combo-milestone-star{0%{opacity:0;transform:scale(.2)rotate(-25deg)}68%{opacity:1;transform:scale(1.16)rotate(4deg)}to{opacity:1;transform:scale(1)}}@keyframes combo-spark-fly{0%{opacity:0;transform:rotate(var(--combo-spark-angle)) translateX(0) rotate(calc(-1 * var(--combo-spark-angle))) scale(.3)}22%{opacity:1}to{opacity:0;transform:rotate(var(--combo-spark-angle)) translateX(clamp(115px, 32vw, 210px)) rotate(calc(-1 * var(--combo-spark-angle))) scale(1)}}@keyframes combo-lost-veil{0%,to{opacity:0}18%,62%{opacity:.92}}@keyframes combo-lost-wave{0%{opacity:0;transform:scale(.7)}45%{opacity:1}to{opacity:0;transform:scale(1.15)}}@keyframes combo-lost-icon{0%{opacity:0;transform:scale(1.35)}35%{opacity:1}to{opacity:.4;transform:scale(.82)}}@keyframes combo-playfield-pop{0%,to{filter:none;transform:scale(1)}42%{filter:brightness(1.25)saturate(1.2);transform:scale(1.014)}}@keyframes combo-playfield-release{0%,to{filter:none}45%{filter:brightness(.88)saturate(.62)}}@keyframes combo-pop{0%{transform:scale(.65)rotate(-6deg)}to{transform:scale(1)}}@keyframes combo-life-spend{0%{color:#fff3a3;transform:scale(1.35)}55%{opacity:.4;transform:scale(.72)rotate(-12deg)}to{opacity:1;transform:scale(1)}}@keyframes combo-warning-pulse{0%,to{transform:scale(1)}45%{filter:brightness(1.12);transform:scale(1.06)}}@keyframes clear-flash{45%{filter:brightness(1.7);transform:scale(1.12)}to{opacity:0;transform:scale(.05)}}@keyframes board-clear-pulse{45%{filter:brightness(1.12);transform:scale(1.018)}}@keyframes shake-item-wiggle{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)scale(1.06)}}@keyframes popcorn-item-bounce{0%,to{transform:translateY(0)rotate(-2deg)}45%{transform:translateY(-4%)rotate(2deg)scale(1.05)}}@keyframes item-feedback-pop{0%{opacity:0;transform:translateY(-6px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes perfect-board-pulse{35%{filter:brightness(1.3)saturate(1.18);transform:scale(1.025)}to{filter:brightness(1.08)}}@keyframes score-burst{0%{opacity:0;transform:translate(-50%,-35%)scale(.55)}55%{opacity:1;transform:translate(-50%,-52%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes multi-score-burst{0%{opacity:0;transform:translate(-50%,-42%)scale(.45)rotate(-7deg)}60%{opacity:1;transform:translate(-50%,-52%)scale(1.12)rotate(2deg)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes celebration-container{0%,to{opacity:0}10%,78%{opacity:1}}@keyframes celebration-image-pop{0%{clip-path:circle(8% at 50% 58%);filter:brightness(1.7);transform:scale(.48)rotate(-8deg)}22%{clip-path:circle(74%);filter:brightness(1.12);transform:scale(1.06)rotate(2.5deg)}34%,76%{clip-path:circle(74%);filter:brightness();transform:scale(1)rotate(0)}to{clip-path:circle(74%);filter:brightness(1.05);transform:scale(.94)translateY(-4%)}}@keyframes diamond-transition-veil{0%,to{opacity:0}30%,58%{opacity:1}}@keyframes diamond-transition-sweep{0%{opacity:0;transform:scale(.25)rotate(-28deg)}44%{opacity:1;transform:scale(1)rotate(4deg)}to{opacity:0;transform:scale(1.3)rotate(28deg)}}@keyframes rush-splash{0%,to{opacity:0}0%{transform:scale(.45)rotate(-5deg)}22%{opacity:1;transform:scale(1.04)rotate(1deg)}34%,76%{opacity:1;transform:scale(1)rotate(0)}to{transform:scale(.92)translateY(-3%)}}@keyframes diamond-board-transition{0%,to{filter:none;transform:scale(1)}42%{filter:brightness(1.32)saturate(1.18);transform:scale(1.018)}}@keyframes gold-transition-veil{0%,to{opacity:0}30%,58%{opacity:1}}@keyframes gold-transition-sweep{0%{opacity:0;transform:scale(.25)rotate(-28deg)}44%{opacity:1;transform:scale(1)rotate(4deg)}to{opacity:0;transform:scale(1.3)rotate(28deg)}}@keyframes gold-board-transition{0%,to{filter:none;transform:scale(1)}42%{filter:brightness(1.38)saturate(1.15);transform:scale(1.018)}}@keyframes perfect-label-pop{0%,8%{opacity:0;transform:translate(-50%,35%)scale(.5)}28%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-20%)scale(.92)}}@keyframes perfect-glow{0%{opacity:0;transform:scale(.2)rotate(0)}30%{opacity:.7}to{opacity:0;transform:scale(1.1)rotate(45deg)}}@keyframes spark-fly{0%{opacity:0;transform:rotate(var(--spark-angle)) translateX(10px) rotate(calc(-1 * var(--spark-angle))) scale(.3)}18%{opacity:1}to{opacity:0;transform:rotate(var(--spark-angle)) translateX(clamp(130px, 39vw, 260px)) rotate(calc(-1 * var(--spark-angle))) scale(.9)}}@keyframes new-best-overlay{0%,to{opacity:0}10%,82%{opacity:1}}@keyframes new-best-art{0%{opacity:0;transform:scale(.38)rotate(-9deg)translateY(12%)}18%{opacity:1;transform:scale(1.06)rotate(1.5deg)translateY(-1%)}30%,78%{opacity:1;transform:scale(1)rotate(0)translateY(0)}to{opacity:0;transform:scale(.92)rotate(1deg)translateY(-5%)}}@keyframes new-best-shine{0%{opacity:0;transform:scale(.2)rotate(-18deg)}24%{opacity:.9}to{opacity:0;transform:scale(1.25)rotate(34deg)}}@keyframes reduced-celebration-fade{0%,to{opacity:0}12%,86%{opacity:1}}@keyframes invalid-shake{25%{transform:translate(-8px)}50%{transform:translate(7px)}75%{transform:translate(-4px)}}@keyframes modal-pop{0%{opacity:0;transform:translateY(20px)scale(.9)}}@keyframes leaderboard-card-arrival{0%{opacity:0;transform:translateY(32px)scale(.84)rotate(-2deg)}70%{transform:translateY(-3px)scale(1.015)rotate(.4deg)}to{opacity:1;transform:none}}@keyframes top-five-badge-slam{0%{opacity:0;transform:translate(80%)rotate(8deg)scale(.7)}70%{transform:translate(-5%)rotate(-2deg)scale(1.08)}to{opacity:1;transform:none}}@keyframes leaderboard-row-arrival{0%{opacity:0;transform:translate(-45px)scale(.82)}72%{transform:translate(5px)scale(1.035)}to{opacity:1;transform:none}}@keyframes leaderboard-row-shine{to{transform:translate(130%)}}@keyframes leaderboard-rays-bloom{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)rotate(-20deg)}35%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%)scale(1.15)rotate(28deg)}}@keyframes leaderboard-spark-fly{0%{opacity:0;transform:rotate(var(--leader-spark-angle)) translateX(10px) rotate(calc(-1 * var(--leader-spark-angle))) scale(.3)}18%{opacity:1}to{opacity:0;transform:rotate(var(--leader-spark-angle)) translateX(min(44vw, 280px)) rotate(calc(-1 * var(--leader-spark-angle))) scale(.9)}}@media (height<=900px) and (width>=500px){.game-shell{width:min(100%,540px,100dvh - 240px);padding-top:10px}.game-logo-title{width:190px}.score-strip{min-height:54px;margin-bottom:8px}.tray{--tray-height:90px;padding-top:6px}.piece{--tray-cell:13px;--piece-column-gap:2px;--piece-row-gap:2px;padding:4px}}@media (width>=500px) and (height>=901px){.game-shell{width:min(100%,650px,100dvh - 370px)}}@media (width<=430px){.game-shell{padding-left:12px;padding-right:12px}.game-header{align-items:center}.player-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.header-actions{gap:4px}.text-button{padding:7px;font-size:.7rem}.game-logo-title{width:clamp(150px,43vw,180px)}.sound-button{border-radius:11px;width:34px;height:34px;padding:6px}.login-card{border-radius:24px;padding:30px 24px}.tray{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(62px,.68fr);gap:5px}.piece{--tray-cell:clamp(11px, 3.8vw, 16px);padding-left:2px;padding-right:2px}}@media (width<=720px){.account-header{gap:12px}.account-columns,.admin-create-form{grid-template-columns:1fr}.admin-create-form .primary-button{justify-self:stretch}}@media (width<=430px){.account-shell{padding-left:12px;padding-right:12px}.account-card{border-radius:21px;padding:20px 16px}.stats-grid{gap:8px}.stats-grid div{padding:13px 11px}.leaderboard-list li{grid-template-columns:38px minmax(0,1fr) auto;gap:8px;padding-right:11px}.leaderboard-rank{border-radius:11px;width:36px}.leaderboard-score strong{font-size:1.08rem}.leaderboard-date{font-size:.65rem}.leaderboard-switcher button{padding-inline:7px;font-size:.74rem}.personal-games-list>li{grid-template-columns:38px minmax(0,1fr);gap:8px}.personal-game-heading{flex-direction:column;align-items:start;gap:3px}.personal-game-heading .leaderboard-date{text-align:left}.personal-game-stats{gap:5px 10px}.admin-user-heading{flex-direction:column;align-items:start;gap:7px}.account-dialog{padding:24px 19px}.leaderboard-game-over-card{padding:23px 18px 18px}.top-five-badge{top:14px}}@media (width<=499px) and (height<=700px){.game-shell{padding-top:max(8px, env(safe-area-inset-top));padding-bottom:max(8px, env(safe-area-inset-bottom))}.game-header{margin-bottom:5px}.game-logo-title{width:150px}.player-name{font-size:.64rem}.score-strip{border-radius:14px;min-height:48px;margin-bottom:7px;padding:5px 14px}.score-strip strong{font-size:1.25rem}.board{--gap:3px;border-radius:14px;padding:6px}.tray{--tray-height:76px;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(62px,.68fr);gap:5px;padding-top:4px}.piece{--tray-cell:clamp(9.5px, 3vw, 11px);--piece-column-gap:1px;--piece-row-gap:1px;padding:3px 2px}.inventory-slot{border-radius:11px;padding:4px 3px 3px}.inventory-item img{width:min(68%,34px);min-width:24px;max-height:32px}.game-footer,.save-status{min-height:18px}.save-status{font-size:.66rem}.app-version{font-size:.56rem}}@media (width<=350px) and (height<=600px){.login-shell{padding:10px}.login-card{border-radius:22px;padding:20px}.eyebrow{font-size:.67rem}.login-logo-title{width:min(100%,300px)}.login-intro{margin:11px 0 14px;font-size:.88rem;line-height:1.35}.login-card form{gap:11px}.login-card label{gap:4px;font-size:.88rem}.login-card input{padding:9px 11px}.login-card .primary-button{padding:11px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}.perfect-clear-celebration,.move-feedback--board-clear{animation:3.75s ease-out both reduced-celebration-fade!important}.perfect-clear-celebration img{clip-path:none;filter:none;transform:none;animation:none!important}.perfect-clear-glow,.perfect-clear-sparks{display:none}.special-item-icon,.item-feedback,.inventory-item img{animation:none!important}.game-shell--diamond .cell--filled:before,.game-shell--diamond .cell--preview-valid:before,.game-shell--diamond .piece-block:before,.game-shell--gold .cell--filled:before,.game-shell--gold .cell--preview-valid:before,.game-shell--gold .piece-block:before{opacity:.16;background-position:20% 0;animation:none!important}.diamond-transition,.diamond-transition:before,.game-shell--diamond-entering .board,.game-shell--diamond-leaving .board{animation:.76s ease-out both reduced-diamond-transition!important}.diamond-transition--entering,.diamond-transition--entering:before,.rush-splash{animation:2.25s ease-out both reduced-diamond-transition!important}.gold-transition,.gold-transition:before,.game-shell--gold-entering .board,.game-shell--gold-leaving .board{animation:.76s ease-out both reduced-gold-transition!important}.gold-transition--entering,.gold-transition--entering:before{animation:2.25s ease-out both reduced-gold-transition!important}.combo-transition--milestone,.combo-transition--milestone:before,.combo-transition--milestone>span,.game-shell--combo-milestone .board,.game-shell--combo-milestone .tray{animation:1.05s ease-out both reduced-combo-transition!important}.combo-transition--lost,.combo-transition--lost:before,.combo-transition--lost>span,.game-shell--combo-lost .board,.game-shell--combo-lost .tray{animation:1.8s ease-out both reduced-combo-transition!important}.combo-transition-sparks{display:none}.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--filled:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--preview-valid:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .piece-block:before{animation:.52s ease-out both reduced-combo-color!important}.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .cell--filled:before,.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .cell--preview-valid:before,.game-shell--combo-lost:not(.game-shell--diamond):not(.game-shell--gold) .piece-block:before{animation-duration:1.8s!important;animation-direction:reverse!important}.game-shell--shake-shaking{animation:none!important}.game-shell--shake-shaking:after{animation:.25s ease-out both reduced-shake-glow!important}.cell--shake-falling{animation:.16s ease-out both reduced-shake-settle!important}.game-shell--popcorn-windup .board{animation:.1s ease-out both reduced-popcorn-glow!important}.cell--popcorn-popping{animation:.28s ease-out both reduced-popcorn-fade!important}.popcorn-burst{display:none}.new-best-celebration{animation:3.6s ease-out both reduced-celebration-fade!important}.new-best-celebration img{filter:none;transform:none;animation:none!important}.new-best-shine,.leaderboard-rays,.leaderboard-celebration>i{display:none}.leaderboard-list li,.personal-games-list>li,.leaderboard-game-over-card.made-top-five,.top-five-badge,.game-over-leaderboard li.top-five-arrival,.game-over-leaderboard li.top-five-arrival:after{animation:none!important}}@keyframes reduced-diamond-transition{0%,to{opacity:0}35%,65%{opacity:.72}}@keyframes reduced-gold-transition{0%,to{opacity:0}35%,65%{opacity:.72}}@keyframes reduced-combo-transition{0%,to{opacity:0}35%,65%{opacity:.72}}@keyframes reduced-combo-color{0%{opacity:0}to{opacity:1}}@keyframes reduced-shake-glow{0%,to{opacity:0}45%{opacity:.55}}@keyframes reduced-shake-settle{0%{opacity:1}to{opacity:.25}}@keyframes reduced-popcorn-glow{0%{filter:brightness()}to{filter:brightness(1.2)sepia(.18)}}@keyframes reduced-popcorn-fade{0%{opacity:1;filter:brightness(1.25)}to{opacity:0;filter:brightness(1.7)}}.game-shell{isolation:isolate;color:var(--cream);background:radial-gradient(circle at 15% 2%, #5bbfda33, transparent 31%), radial-gradient(circle at 92% 94%, #e6696a29, transparent 34%), var(--navy);box-shadow:0 0 0 1px #ffffff0a,0 24px 80px #18354a38}.game-shell:before{content:"";z-index:-1;opacity:.16;pointer-events:none;background-image:radial-gradient(#fff6dc57 .7px,#0000 .7px);background-size:11px 11px;position:absolute;inset:0}.game-header{align-items:center}.game-title{text-align:center}.game-title .eyebrow{color:#fff6dc99;margin-bottom:0;font-size:.55rem}.game-logo-title{width:auto;color:var(--cream);letter-spacing:-.075em;margin:0;font-size:clamp(1.9rem,6.7vw,2.4rem);font-weight:900;line-height:.9}.game-logo-title span{color:var(--orange)}.header-actions{padding:0}.text-button,.sound-button{min-height:40px;color:var(--cream);box-shadow:none;white-space:nowrap;background:#ffffff13;border:1px solid #fff6dc21}.text-button:hover,.sound-button:hover{filter:none;background:#ffffff21}.sound-button--muted{color:#f4b3b3;background:#e6696a1f}.sound-icon{filter:none}.sound-icon-speaker{stroke:#fff6dc73}.sound-icon-waves{color:var(--cyan)}.score-strip{color:var(--ink);background:#ffffffe8;border-color:#ffffffb3;box-shadow:0 10px 24px #04121a2e}.score-strip span{color:#18354a9e}.score-strip strong{color:var(--ink)}.board-stage{flex:auto;align-items:center;min-height:0;display:grid}.board{background:var(--navy-deep);border:1px solid #ffffff17;box-shadow:inset 0 2px 8px #00000045,0 19px 34px #04121a47}.cell{box-shadow:none;background:#fff1}.cell--filled,.cell--preview-valid,.piece-block{background:var(--block-base);box-shadow:inset 0 4px #ffffff3d,inset 0 -3px #10232f2e,0 3px #0512192e}.cell--filled:after,.cell--preview-valid:after,.piece-block:after{display:none}.block--coral{--block-base:#e6696a}.block--gold{--block-base:#f0a34c}.block--green{--block-base:#79bd87}.block--blue{--block-base:#668cc0}.block--purple{--block-base:var(--slate)}.block--cyan{--block-base:#5bbfda}.block--pink{--block-base:var(--clay)}.inventory-slot{box-shadow:none;background:#10232f85;border-color:#fff6dc3b}.inventory-empty{color:#fff6dc7a}.inventory-slot--filled{box-shadow:none;background:#5bbfda21;border-color:#5bbfda9e}.inventory-slot--popcorn{background:#f0a34c21;border-color:#f0a34ca6}.game-notices{top:max(132px, calc(env(safe-area-inset-top) + 112px));z-index:42;pointer-events:none;justify-items:end;gap:7px;display:grid;position:absolute;right:20px}.game-notices>*{pointer-events:auto}.storage-error{border:1px solid var(--error-border);max-width:260px;color:var(--error-foreground);text-align:center;background:var(--error-background);border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:850;box-shadow:0 9px 24px #04121a42}.update-button{color:var(--navy);background:var(--orange);cursor:pointer;border:0;border-radius:999px;padding:5px 8px;font-size:.62rem;font-weight:850}.modal-backdrop{background:#0b1b25b8}.game-over-card{color:var(--ink);background:#fffffff2;border-color:#ffffffc7;box-shadow:0 30px 80px #04121a61}.game-over-card h2{color:var(--navy);letter-spacing:-.055em;margin:0}.final-score{color:var(--coral)}.game-over-best{color:#18354ab8}.game-over-copy{color:#18354ab8;line-height:1.45}.game-over-actions .primary-button{box-shadow:0 5px #be7330}.game-over-actions .secondary-button{color:var(--navy);background:var(--cream);border:2px solid #18354ab8;box-shadow:0 5px #18354a47}.game-over-actions .secondary-button:hover,.game-over-actions .secondary-button:focus-visible{border-color:var(--navy);background:#fffdf4}.game-over-actions .secondary-button:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.game-over-actions .secondary-button:active{transform:translateY(3px);box-shadow:0 2px #18354a47}.move-feedback,.move-feedback--placement{color:var(--cream);text-shadow:0 2px 8px #04121a7a;background:#10232fe0;box-shadow:0 12px 30px #04121a52}.move-feedback span{color:var(--sky)}.move-feedback--multi{background:linear-gradient(135deg,#e6696af5,#f0a34cf5)}.move-feedback--board-clear{color:var(--navy);text-shadow:none;background:linear-gradient(135deg, var(--cream), var(--orange));box-shadow:0 12px 35px #f0a34c57}.move-feedback--board-clear span{color:#75401f}.item-feedback{color:var(--navy);background:linear-gradient(135deg, #dff4fb, var(--sky));box-shadow:0 10px 24px #04121a47}.item-feedback--popcorn{color:var(--navy);background:linear-gradient(135deg, var(--cream), var(--orange));box-shadow:0 10px 24px #703a193d}.cell--preview-invalid{background:#e6696aa3}.perfect-clear-celebration img{box-shadow:0 20px 65px #e6696a61,0 0 40px #f0a34c57}.perfect-clear-glow{background:conic-gradient(from 20deg, var(--cream), var(--orange), var(--coral), var(--cyan), var(--cream))}.combo-transition>strong{background:linear-gradient(135deg,#e6696af0,#f0a34cf0);box-shadow:0 10px 28px #04121a57,inset 0 2px #ffffff3d}.combo-transition{text-shadow:0 3px 16px #04121aad}.combo-transition:before{background:radial-gradient(circle, #ffffffeb 0 6%, #f0a34c8f 25%, #e6696a33 48%, transparent 70%), conic-gradient(from 10deg, transparent 0 12%, #fff6dcad 15%, transparent 20% 42%, #5bbfda94 46%, transparent 52%)}.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--filled:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .cell--preview-valid:before,.game-shell--combo:not(.game-shell--diamond):not(.game-shell--gold) .piece-block:before{box-shadow:inset 0 4px #fff6,inset 0 -5px #10232f38,0 0 11px #f0a34c47}.combo-transition-sparks i{background:var(--cream);box-shadow:0 0 10px #fff, 0 0 20px var(--orange)}.combo-transition--lost{color:#fff6dcc7}.combo-transition--lost:before{background:radial-gradient(circle,#7c9aae3d,#0000 68%)}.combo-transition--lost>strong{background:#10232fd1;border-color:#fff6dc33;box-shadow:0 8px 22px #04121a47}.new-best-shine{background:repeating-conic-gradient(from 8deg,#fff6dc61 0deg 8deg,#0000 8deg 22deg),radial-gradient(circle,#f0a34c80,#5bbfda47 42%,#0000 70%)}.celebration-title{z-index:6;min-width:max-content;color:var(--navy);text-align:center;text-shadow:none;background:var(--cream);letter-spacing:-.02em;white-space:nowrap;border:2px solid #ffffffd1;border-radius:999px;margin:0;padding:9px 18px;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:clamp(1rem,4.6vw,1.55rem);font-weight:950;line-height:1;position:absolute;bottom:7%;left:50%;transform:translate(-50%);box-shadow:0 7px #18354a4d,0 16px 34px #04121a4d}.perfect-clear-celebration .celebration-title{top:7%;bottom:auto}.new-best-celebration .celebration-title{bottom:max(8%, calc(env(safe-area-inset-bottom) + 18px))}.diamond-transition>.celebration-title,.gold-transition>.celebration-title{color:var(--navy);text-shadow:none;background:var(--cream);letter-spacing:-.02em;border:2px solid #ffffffd1;font-size:clamp(1rem,4.6vw,1.55rem);box-shadow:0 7px #18354a4d,0 16px 34px #04121a4d}.perfect-clear-celebration img,.new-best-celebration img,.rush-splash{object-fit:contain;filter:drop-shadow(0 18px 28px #04121a57)}.dev-controls{color:var(--cream);background:#10232ff5}.dev-controls button{color:var(--navy);background:var(--cyan)}.dev-controls button+button{background:var(--orange)}@media (width<=520px){.game-shell{padding-inline:12px}.game-header{gap:8px}.game-title .eyebrow{display:none}.header-actions{gap:5px}.header-actions>.text-button:last-child{padding-inline:8px;font-size:.69rem}.game-notices{top:max(122px, calc(env(safe-area-inset-top) + 102px));right:12px}}@media (height<=900px) and (width>=500px){.game-header{gap:8px}.game-title .eyebrow,.leaderboard-header-button{display:none}.game-logo-title{font-size:1.9rem}.text-button,.sound-button{min-height:36px}.text-button{padding:7px 8px;font-size:.72rem}.sound-button{width:36px;height:36px}.account-header-button{max-width:80px}}@media (width<=370px){.game-logo-title{font-size:1.75rem}}.game-shell[data-game-mode=practice]{--mode-accent:#b2c5cd;--mode-card:#dbe5eb;--mode-border:#9bb1bf}.game-shell[data-game-mode=endless]{--mode-accent:#86dce5;--mode-card:#bce8eb;--mode-border:#54b9c6}.game-shell[data-game-mode=weekly]{--mode-accent:#f3bc65;--mode-card:#ffe1aa;--mode-border:#e9aa49}.game-shell[data-game-mode]{padding-top:max(8px, var(--game-safe-top,env(safe-area-inset-top)));padding-bottom:max(8px, var(--game-safe-bottom,env(safe-area-inset-bottom)))}.game-shell[data-game-mode] .game-header{flex:none;margin-bottom:8px}.game-shell[data-game-mode] .game-title{text-align:left;align-items:center;gap:12px;display:flex}.game-shell[data-game-mode] .game-title .eyebrow{display:none}.game-mode-label{max-width:85px;color:var(--mode-accent);text-align:left;margin:0;font-size:.72rem;font-weight:800;line-height:1.25}.game-shell[data-game-mode] .score-strip{border:2px solid var(--mode-border);background:var(--mode-card);flex:none;min-height:64px;margin-bottom:0;padding-block:7px}.game-shell[data-game-mode] .score-strip>div>span{color:#375262}.game-shell[data-game-mode] .score-strip strong{line-height:1.15}.game-shell[data-game-mode] .score-strip-status{flex-shrink:0;flex-basis:38px;gap:4px 6px;min-height:38px;margin-bottom:0}@supports (container-type:size){.game-shell[data-game-mode] .board-stage{flex:1 1 0;place-items:center;container-type:size}.game-shell[data-game-mode] .board{width:min(100%,100cqh)}}@media (height<=700px) and (width<=499px){.game-shell[data-game-mode] .game-header{margin-bottom:5px}.game-shell[data-game-mode] .score-strip{min-height:56px;padding-block:5px}}@media (width<=340px){.game-shell[data-game-mode] .game-title{gap:8px}.game-mode-label{max-width:70px;font-size:.65rem}.game-shell[data-game-mode] .score-strip-status{flex-basis:68px;min-height:68px}}.season-finale{color:#f8f0dc;background:radial-gradient(at 50% 4%,#365463 0%,#102e3d 67%);border:1px solid #fbc47b80;border-radius:24px;width:min(100vw,760px);max-width:none;max-height:100dvh;margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;box-shadow:0 28px 100px #061b26cc}.season-finale::backdrop{background:#04141dd9}.season-finale-content{text-align:center;isolation:isolate;justify-items:center;padding:clamp(20px,5vw,36px);display:grid;position:relative}.season-finale-confetti{object-fit:contain;pointer-events:none;opacity:.65;z-index:-1;width:100%;height:min(66vw,440px);animation:1.2s ease-out both season-finale-confetti;position:absolute;top:-3%}.season-finale-kicker{color:#ffc976;letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.season-finale h2{color:#fff0c5;text-shadow:0 5px #071e2a;margin:8px 0 4px;font-size:clamp(2.2rem,7vw,3.8rem);line-height:1.05}.season-finale-intro{color:#d1e5e9;margin:0}.season-finale-art{width:min(100%,350px);height:clamp(140px,28vw,250px);margin:6px 0 0;overflow:hidden}.season-finale-art img{object-fit:contain;width:100%;height:100%;animation:.8s cubic-bezier(.16,.9,.25,1.1) both season-finale-podium;display:block}.season-finale h3{color:#ffdb9a;margin:4px 0 12px;font-size:1rem}.season-finale-podium{gap:8px;width:min(100%,540px);margin:0;padding:0;list-style:none;display:grid}.season-finale-podium li{text-align:left;background:#112d3bdf;border:1px solid #b5d9e233;border-radius:12px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:48px;padding:8px 14px;animation:.45s ease-out both season-finale-reveal;display:grid}.season-finale-podium li:first-child{animation-delay:.25s}.season-finale-podium li:nth-child(2){animation-delay:.5s}.season-finale-podium li:nth-child(3){animation-delay:.75s}.season-finale-podium li strong{overflow-wrap:anywhere}.season-finale-podium li>span:last-child{color:#d4e4e8;font-size:.82rem}.season-finale-place{color:#ffc976;font-weight:900}.season-finale-personal{background:#ffd27b15;border:2px solid #ffd27b;border-radius:16px;justify-items:center;width:min(100%,540px);margin:16px 0;padding:14px;animation:.5s ease-out 1s both season-finale-reveal;display:grid}.season-finale-personal p{color:#ffdc9e;margin:0;font-weight:800}.season-finale-personal strong{font-size:2.2rem;line-height:1.1}.season-finale-personal small{color:#d6e7e9}.season-finale .primary-button{width:min(100%,540px);min-height:52px}.season-finale .app-error{width:min(100%,540px)}.season-finale :focus-visible{outline-offset:3px;outline:3px solid #ffe0a0}.season-deadline-notice,.season-start-notice{color:#fff0d4;background:#56371f;border:1px solid #f6ba65;border-radius:12px;padding:10px 14px;font-size:.85rem;line-height:1.45}.season-deadline-notice{box-sizing:border-box;width:100%;margin:0 0 14px}.season-start-notice{margin:12px 0}.season-board-heading{margin:10px 0 22px}.season-board-heading .season-board-context{color:#b9d7de;margin:0 0 4px;font-size:.78rem}.leaderboard-page .season-board-heading h2{margin:0}.season-current-link{color:#ffda9e;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:10px 0 0;padding:0;font-size:.85rem;text-decoration:underline}.season-board-status{color:#ffdda0;margin:0 0 12px;font-size:.8rem}.season-history{border-top:1px solid #b5d9e233;margin-top:clamp(72px,16vh,144px);padding-top:20px}.season-history h3{color:#ffdb9a;margin:0 0 12px;font-size:1rem}.season-history-list{gap:8px;display:grid}.season-history-list button{color:#fff1d4;min-height:54px;font:inherit;text-align:left;cursor:pointer;background:#173746;border:1px solid #b5d9e244;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.season-history-list button[aria-current=page]{border-color:#ffd27b}.season-history-list button span{color:#c3dbe0;font-size:.78rem}@keyframes season-finale-podium{0%{opacity:0;transform:translateY(30px)scale(.88)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes season-finale-confetti{0%{opacity:0;transform:translateY(-24px)scale(.9)}to{opacity:.65;transform:translateY(0)scale(1)}}@keyframes season-finale-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=520px){.season-finale{border:0;border-radius:0;width:100vw;height:100dvh}.season-finale-content{padding:max(20px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom))}.season-finale-art{height:min(36vw,190px)}.season-finale-podium li{grid-template-columns:34px minmax(0,1fr);gap:4px 8px}.season-finale-podium li>span:last-child{grid-column:2}}@media (prefers-reduced-motion:reduce){.season-finale-confetti,.season-finale-art img,.season-finale-podium li,.season-finale-personal{animation:none}}.admin-page{overscroll-behavior:contain;color:#fff7df;min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(40px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:radial-gradient(circle at 12% 0,#47a0b23d,#0000 34rem),#102b37;overflow-y:auto}@media (display-mode:standalone){.admin-page:before{content:"";z-index:10;height:env(safe-area-inset-top);pointer-events:none;background:radial-gradient(circle at 12% 0,#47a0b23d,#0000 34rem),#102b37;position:fixed;inset:0 0 auto}}.admin-page-content{width:min(100%,1100px);margin:0 auto}.admin-header,.admin-section-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.admin-header{margin-bottom:28px}.admin-header h1{margin:6px 0 8px;font-size:clamp(38px,7vw,58px);line-height:1}.admin-header p:last-child,.admin-section-intro,.admin-data-note{color:#bad1d6;line-height:1.55}.admin-page .eyebrow{color:#f3b65a}.admin-section{background:#193b49f0;border:1px solid #52717c;border-radius:24px;margin-bottom:22px;padding:clamp(20px,4vw,34px);box-shadow:0 22px 55px #03131b38}.admin-section h2{margin:5px 0 10px;font-size:clamp(25px,4vw,34px)}.admin-season-section{border-top:3px solid #f3b65a}.admin-season-statuses{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:24px 0;display:grid}.admin-season-statuses article{background:#102f3b;border:1px solid #4b6f79;border-radius:18px;align-content:start;gap:9px;padding:18px;display:grid}.admin-season-statuses strong{font-size:23px}.admin-season-statuses small,.admin-season-form small,.admin-confirm-dialog small{color:#b9d0d5;line-height:1.45}.admin-status{color:#102b37;letter-spacing:.08em;text-transform:uppercase;background:#82dce6;border-radius:999px;justify-self:start;padding:5px 9px;font-size:12px;font-weight:900}.admin-status--grace{background:#f5c06d}.admin-season-form{grid-template-columns:minmax(0,1fr) minmax(240px,1fr);gap:16px;margin-top:26px;display:grid}.admin-season-form label,.admin-confirm-dialog label{color:#eaf2ee;gap:8px;min-width:0;font-weight:800;display:grid}.admin-season-form input,.admin-season-form select,.admin-confirm-dialog input{box-sizing:border-box;color:#fff7df;width:100%;min-width:0;max-width:100%;min-height:50px;font:inherit;background:#0d2935;border:1px solid #71929a;border-radius:13px;padding:11px 13px}.admin-warning,.admin-success{border-radius:13px;grid-column:1/-1;margin:0;padding:13px 15px;line-height:1.45}.admin-warning{color:#ffe0a4;background:#63481866;border:1px solid #e3ae58}.admin-success{box-sizing:border-box;color:#dcfff2;background:#185844;border:1px solid #68c5a6;width:min(100%,1100px);margin:0 auto 18px;font-weight:800}.admin-form-actions,.admin-dialog-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px;margin-top:4px;display:flex}.admin-page .danger-button{color:#ffe8e5;min-height:50px;font:inherit;background:#6b3039;border:1px solid #de8d91;border-radius:14px;padding:12px 17px;font-weight:800}.admin-range{background:#0d2b36;border-radius:14px;flex-wrap:wrap;gap:6px;padding:5px;display:flex}.admin-range button{color:#c8dce0;min-height:40px;font:inherit;background:0 0;border:0;border-radius:10px;padding:7px 11px;font-size:13px;font-weight:800}.admin-range button[aria-pressed=true]{color:#102b37;background:#f3b65a}.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 16px;display:grid}.admin-metric{background:#102f3b;border-radius:17px;min-width:0;padding:18px}.admin-metric dt{color:#b8d0d4;font-size:13px}.admin-metric dd{color:#ffce7e;overflow-wrap:anywhere;margin:7px 0 0;font-size:clamp(26px,5vw,40px);font-weight:900;line-height:1}.admin-metric small{color:#8fe0e9;margin-top:7px;display:block}.admin-chart{margin:28px 0 0}.admin-chart figcaption{margin-bottom:12px;font-weight:800}.admin-bars{border-bottom:1px solid #739099;align-items:end;gap:4px;height:130px;padding-top:10px;display:flex}.admin-bars span{background:linear-gradient(#7bdddf,#3b9db4);border-radius:4px 4px 0 0;flex:1;min-width:3px}.admin-dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#04131ad1;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.admin-confirm-dialog{box-sizing:border-box;color:#fff7df;background:#173b48;border:1px solid #6d929a;border-top:4px solid #f3b65a;border-radius:24px;width:min(100%,560px);padding:clamp(22px,5vw,34px);box-shadow:0 25px 80px #00000073}.admin-confirm-dialog h2{margin:7px 0 12px;font-size:clamp(27px,6vw,38px)}.admin-confirm-dialog>p,.admin-code-sent{line-height:1.55}.admin-review-details{gap:9px;margin:20px 0;display:grid}.admin-review-details>div{background:#0e2c37;border-radius:12px;gap:3px;padding:12px;display:grid}.admin-review-details dt{color:#b8d0d4;font-size:12px}.admin-review-details dd{overflow-wrap:anywhere;margin:0;font-weight:800}.admin-confirm-dialog form{gap:13px;display:grid}.admin-confirm-dialog .app-error,.admin-error-actions .app-error{margin:16px 0}.admin-error-actions{margin-bottom:18px}.admin-page :focus-visible,.admin-confirm-dialog :focus-visible{outline-offset:3px;outline:3px solid #85deea}@media (width<=720px){.admin-section-heading,.admin-season-form{grid-template-columns:1fr}.admin-section-heading{display:grid}.admin-range{box-sizing:border-box;width:100%}.admin-range button{flex:1}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=430px){.admin-page{padding-inline:14px}.admin-header{gap:12px}.admin-section{border-radius:20px;padding:19px 16px}.admin-metrics{grid-template-columns:1fr}.admin-form-actions,.admin-dialog-actions{grid-template-columns:1fr;display:grid}.admin-form-actions button,.admin-dialog-actions button{width:100%}}.weekly-result-dialog>.primary-button{width:100%;margin-top:16px}.start-screen{background:radial-gradient(circle at 15% 2%, #5bbfda2e, transparent 40%), var(--navy);min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 20px 32px;grid-template-columns:minmax(0,1fr);place-items:center;display:grid}.start-card{color:#ecf4f5;width:min(100%,560px);min-width:0}.start-header,.start-footer{justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;display:flex}.start-header a{color:inherit;font-size:24px;font-weight:900;text-decoration:none}.start-card h1{margin:8px 0 12px;font-size:clamp(36px,8vw,52px);line-height:1.05}.start-card p{line-height:1.6}.start-modes{gap:14px;margin:28px 0 20px;display:grid}.start-mode{text-align:left;color:#fff;background:#264b56;border:1px solid #749b9d;border-radius:20px;gap:9px;min-height:128px;padding:24px 52px 24px 24px;display:grid;position:relative}.start-mode--weekly{background:#42425f;border-color:#8c80b0}.start-mode strong{font-size:23px}.start-mode span{font-size:15px;line-height:1.5}.start-mode b{font-size:25px;position:absolute;top:24px;right:22px}.start-mode:disabled{opacity:.5;cursor:default}.start-resume{width:100%;margin-top:20px}.start-footer{color:#bbd0d6;margin:28px 0 0;font-size:13px}.start-footer button{color:inherit;background:0 0;border:0;text-decoration:underline}.start-deadline{color:#bbd0d6;font-size:13px}.start-screen button:focus-visible,.start-screen a:focus-visible{outline-offset:4px;outline:3px solid #ffdb80}.start-card .eyebrow{color:var(--orange)}.saved-score-notice{background:var(--navy);color:var(--cream);padding:20px}.saved-score-notice .app-error{margin-top:0}.start-header>button{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:60%;overflow:hidden}.start-header>a{flex-shrink:0}.account-page{overscroll-behavior:contain;color:#fff7df;height:100dvh;padding:max(28px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:radial-gradient(at 0 0,#224a56 0,#0000 55%),#102b37;overflow-y:auto}.account-page-content{max-width:820px;margin:auto}.account-page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.account-page-header h1{overflow-wrap:anywhere;outline:none;margin:10px 0;font-size:clamp(30px,6vw,48px);line-height:1.1}.account-page-header p{color:#b8d0d4}.account-back{color:#fff7df;background:#ffffff0c;border:1px solid #68848a;border-radius:16px;min-width:48px;min-height:48px;font-size:26px}.account-section{background:#193b49;border:1px solid #52717c;border-radius:24px;margin-bottom:18px;padding:clamp(20px,4vw,32px)}.account-section h2{margin:0 0 12px;font-size:24px}.account-section p{line-height:1.55}.account-muted,.account-section>small{color:#b8d0d4}.account-section .eyebrow{color:#f3b65a}.trophy-shelf{background:linear-gradient(120deg,#254957,#203847);border-top:3px solid #efb45c}.trophy-collection{flex-wrap:wrap;gap:16px;margin:24px 0;display:flex}.trophy-collection .trophy{background:#102b3755;border:1px solid #718286;border-radius:18px;flex:180px;padding:16px}.trophy summary{cursor:pointer;list-style:none}.trophy summary::-webkit-details-marker{display:none}.trophy-collection summary{grid-template-columns:80px auto;justify-content:center;align-items:center;gap:8px;display:grid}.trophy-collection summary strong{text-align:center;grid-column:1/-1;font-size:17px}.trophy img{object-fit:contain}.trophy-count{white-space:nowrap;font-weight:800}.trophy-description{padding-top:14px;font-size:14px;line-height:1.5}.trophy-description p{margin:6px 0}.player-trophies{vertical-align:middle;flex-wrap:wrap;gap:6px;margin-left:6px;display:inline-flex}.player-trophies:empty{display:none}.player-trophies summary{align-items:center;gap:2px;min-height:44px;font-size:12px;display:flex}.player-trophies .trophy-description{background:#143540;border:1px solid #779ca2;border-radius:12px;max-width:240px;padding:12px}.lifetime-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0;display:grid}.lifetime-stats>div{background:#0b2935;border-radius:16px;padding:20px 16px}.lifetime-stats dt{color:#b8d0d4;font-size:14px}.lifetime-stats dd{overflow-wrap:anywhere;color:#ffce7e;margin:6px 0 0;font-size:clamp(28px,5vw,40px);font-weight:800}@media (width<=360px){.lifetime-stats{grid-template-columns:1fr}}.personal-games{margin:24px 0 0;padding:0;list-style:none}.personal-games>li{border-top:1px solid #496572;gap:14px;padding:18px 0;display:flex}.personal-game-rank{color:#153340;background:#efb45c;border-radius:12px;flex:0 0 32px;place-items:center;width:32px;height:36px;font-weight:800;display:grid}.personal-game-body{flex:1;min-width:0}.personal-game-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.personal-game-heading strong{font-size:22px}.personal-game-heading small,.personal-game-heading time{color:#b8d0d4;font-size:13px;font-weight:400}.personal-game-stats{flex-wrap:wrap;gap:12px 24px;margin:14px 0 0;display:flex}.personal-game-stats dt{color:#b8d0d4;font-size:12px}.personal-game-stats dd{margin:4px 0 0;font-weight:700}.account-page .profile-form{max-width:520px}.account-page .profile-form input{box-sizing:border-box;width:100%}.account-page-footer{color:#b8d0d4;flex-wrap:wrap;justify-content:space-between;gap:14px;padding:12px 4px;font-size:14px;display:flex}.account-page-footer a{color:#ffce7e}.account-page :focus-visible:not(h1),.trophy summary:focus-visible{outline-offset:4px;outline:3px solid #81d8e8}.leaderboard-player{align-content:center;gap:4px;display:grid}.leaderboard-player>strong{min-width:0}.leaderboard-player .player-trophies{margin-left:0}@media (width<=480px){.trophy-collection{gap:12px}.trophy-collection .trophy{flex-basis:100px;padding:12px}.trophy-collection summary{grid-template-columns:64px auto;gap:4px}.trophy-collection summary img{width:64px;height:64px}.trophy-collection summary strong{font-size:14px}}.skeleton{vertical-align:middle;background:#a5cedb24;border-radius:6px;width:100%;min-width:1.5rem;height:1em;display:inline-block}.skeleton-art{border-radius:18px;width:80px;height:80px}.account-data-status{color:#b8d0d4;min-height:28px}.account-data-status--error{padding-bottom:18px}.account-data-status p{margin-top:0}.account-trophies-content{display:flow-root}.trophy-placeholder{place-items:center;gap:12px;min-height:150px;display:grid}.account-data .lifetime-stats dd .skeleton{max-width:100px}.account-data .account-section>small{display:block}.personal-games-content{display:flow-root}.personal-game-body>.skeleton{max-width:70%;margin:8px 0;display:block}.account-action-status{min-height:52px}@media (width<=480px){.skeleton-art{width:64px;height:64px}}.start-screen,.game-navigation-shell{background:radial-gradient(at 20% 5%,#17607766,#0000 48%),radial-gradient(at 95% 90%,#f0a34c14,#0000 40%),#102b39}.start-screen{padding-top:max(20px, env(safe-area-inset-top))}.start-card{width:min(100%,540px);position:relative}.start-header{margin-bottom:0}.start-wordmark span{color:var(--orange)}.start-logo{filter:drop-shadow(0 10px 18px #00182055);width:clamp(130px,23vh,205px);height:auto;margin:-4px auto 8px;display:block}.start-card>.eyebrow,.start-card>h1,.start-card>h1+p{text-align:center}.start-card>h1{color:var(--cream);font-size:clamp(2rem,7vw,2.8rem)}.start-card>h1+p{color:#c0d5d9;margin:0}.start-card>.eyebrow{margin:0;font-size:.68rem}.start-modes{gap:15px;margin-top:24px}.start-mode{--mode-accent:#60d5ec;border:1px solid #9beaff70;border-left:5px solid var(--mode-accent);background:radial-gradient(at 90% 0,#60d5ec25,#0000 65%),linear-gradient(145deg,#245568,#183f50);min-height:110px;padding:20px 52px 20px 22px;box-shadow:inset 0 2px #ffffff15,0 5px #071d2a,0 12px 20px #00182030}.start-mode--weekly{--mode-accent:#ffc869;background:radial-gradient(at 90% 0,#ffc86925,#0000 65%),linear-gradient(145deg,#514667,#30394e);border-color:#ffc86970}.start-ranked-invite{text-align:center;background:radial-gradient(at 100% 0,#ffc86924,#0000 70%),#203f4e;border:1px solid #ffc86980;border-radius:20px;padding:22px}.start-ranked-invite h2{color:var(--cream);margin:6px 0 10px;font-size:clamp(1.4rem,5vw,1.75rem)}.start-ranked-invite>p{color:#d2e2e5;margin:0;font-size:.88rem;line-height:1.55}.start-ranked-invite>.primary-button{width:100%;margin-top:18px}.start-ranked-invite>.start-sign-in{margin-top:10px;font-size:.8rem}.start-sign-in button{color:#ffd285;min-height:44px;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:4px;font-weight:800;text-decoration:underline}.start-mode--practice{min-height:86px;padding-block:15px}.start-mode strong{color:var(--cream);font-size:1.25rem}.start-mode span{color:#d2e2e5;font-size:.86rem}.start-mode b{color:var(--mode-accent);background:#071d2a60;border-radius:10px;padding:3px 8px;font-size:22px}.start-resume,.start-card .primary-button{color:#193444;background:linear-gradient(170deg,#ffd285,#f3a545)}.start-card,.game-navigation-view{animation:.26s ease-out both menu-arrive}.menu-logo img{width:100px;height:auto}.game-navigation-actions{gap:13px}.game-navigation-actions button{background:linear-gradient(150deg,#2d5363,#1c3b4b);border-color:#80cddd40;border-radius:18px;padding:16px 18px;box-shadow:inset 0 1px #ffffff18,0 4px #071e2b}.game-navigation-actions button.navigation-primary{background:linear-gradient(165deg,#ffd384,#efa348)}.game-navigation-actions span{color:#c0d5d9}.game-navigation-actions strong{font-size:1.05rem}.start-screen button,.game-navigation-actions button,.account-dialog button,.game-over-card button{transition:transform .16s,box-shadow .16s,background .16s}@media (hover:hover){.start-mode:not(:disabled):hover,.game-navigation-actions button:hover{transform:translateY(-2px)}}.start-screen button:not(:disabled):active,.game-navigation-actions button:active,.account-dialog button:not(:disabled):active,.game-over-card button:not(:disabled):active{transform:translateY(2px)scale(.99)}.account-dialog{background:radial-gradient(at 0 0,#2a667270,#0000 60%),#153343;border-top:3px solid #70d2e1}.account-dialog::backdrop,.game-over-card::backdrop,.starting-game::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#051923dc}.block-loader{color:#d1e4e8;align-items:center;gap:12px;margin:18px 0;font-size:.85rem;line-height:1.5;display:flex}.block-loader-pieces{flex:none;grid-template-columns:repeat(3,14px);gap:3px;display:grid}.block-loader-pieces i{aspect-ratio:1;background:#64d9ef;border-radius:4px;animation:1.1s ease-in-out infinite loader-pop;box-shadow:inset 0 2px #fff6,inset 0 -2px #00182033}.block-loader-pieces i:nth-child(2){background:#ffbc4f;animation-delay:.1s}.block-loader-pieces i:nth-child(3){background:#fa798a;animation-delay:.2s}.starting-game{width:min(90vw,350px);color:var(--cream);text-align:center;background:radial-gradient(at 50% 0,#285a6a,#102c3d);border:1px solid #7fd8e655;border-radius:28px;padding:32px 24px;box-shadow:0 20px 80px #0006}.starting-game .block-loader{color:var(--cream);flex-direction:column;font-size:1.5rem;font-weight:900}.starting-game .block-loader-pieces{grid-template-columns:repeat(3,42px);gap:7px;width:140px;margin:18px 0;transform:rotate(-8deg)}.starting-game .block-loader-pieces i{border-radius:10px;box-shadow:inset 0 3px #fff7,inset 0 -5px #00182033,0 5px #00182044}.starting-game>p:last-child{color:#bcd3d9;font-size:.85rem}.game-shell:not(.game-navigation-shell)>.board-stage{animation:.26s ease-out board-arrive}.game-over-card{width:min(100% - 32px,410px);color:var(--cream);background:radial-gradient(at 50% 0,#45616a80,#0000 60%),#153343;border-top:3px solid #ffc869;padding:28px}.game-over-card h2{margin-top:8px}.game-over-card .final-score{color:#ffd27b;text-shadow:0 4px #071d2a;font-size:clamp(3.1rem,12vw,4rem)}.game-over-card .game-over-copy{color:#c3d8dc;font-size:.82rem;line-height:1.5}.game-over-actions{grid-template-columns:1fr;gap:12px;margin-top:24px}.game-over-actions .primary-button{color:#18354a;background:linear-gradient(170deg,#ffdb94,#f4ab50);min-height:55px;font-size:1.18rem;box-shadow:inset 0 2px #fff6,0 5px #b57532,0 10px 26px #ffba4a20}.game-over-actions .primary-button span{margin-left:8px}.game-over-actions .secondary-button{color:#e3eef0;background:#ffffff0b;border:1px solid #b5d9e233}.final-board-link,.score-retry{color:#bdd3d9;text-underline-offset:4px;cursor:pointer;background:0 0;border:none;padding:12px 8px;font-size:.8rem;text-decoration:underline}.score-retry{margin:5px auto 0;display:block}.game-over-card button:focus-visible,.leaderboard-screen :focus-visible:not(h1){outline-offset:3px;outline:3px solid #ffce79}.game-shell--finished .board-stage{filter:saturate(.5)brightness(.78);transition:filter .28s}.game-shell--finished .board-stage *,.game-shell--finished .board-stage :before,.game-shell--finished .board-stage :after,.game-shell--finished:before,.game-shell--finished:after{animation-play-state:paused!important}.leaderboard-carousel{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;display:flex;overflow:auto hidden}.leaderboard-carousel::-webkit-scrollbar{display:none}.leaderboard-page{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0;position:relative}.leaderboard-page-scroll{overscroll-behavior-y:contain;height:min(470px,100dvh - 240px);padding:10px 24px 20px;overflow-y:auto}.leaderboard-page h2{color:#82dcea;margin:4px 0 20px;font-size:1.55rem}.leaderboard-page--weekly h3{color:#ffd28a}.leaderboard-page .eyebrow{color:#c1d5dc;font-size:.65rem}.leaderboard-page .personal-rank{background:#65d2e50c;border:1px solid #72d8e733;border-radius:12px;margin:0 0 16px;padding:12px 14px}.personal-rank-summary{width:100%}.personal-rank-line,.challenge-progress,.weekly-countdown-labels{justify-content:space-between;align-items:center;gap:12px;display:flex}.personal-rank-line{font-size:.85rem}.personal-rank-line>span{font-size:inherit;margin-left:0}.personal-rank-line strong{color:#ffd27b;font-size:1.15rem}.challenge-progress{margin-top:8px}.challenge-progress small{white-space:nowrap;color:#d1e1e5;font-size:.75rem}.challenge-progress progress{appearance:none;color:#ffd27b;background:#ffffff18;border:0;border-radius:999px;width:100%;min-width:0;height:6px;overflow:hidden}.challenge-progress progress::-webkit-progress-bar{background:#ffffff18}.challenge-progress progress::-webkit-progress-value{background:#ffd27b;border-radius:999px}.challenge-progress progress::-moz-progress-bar{background:#ffd27b;border-radius:999px}.personal-rank p{margin:0;line-height:1.5}.weekly-countdown{color:#c3d8dc;margin-top:20px}.weekly-countdown-labels{font-size:.8rem}.weekly-day-track{gap:5px;margin:8px 0;display:flex}.weekly-day-track>span{background:#ffffff18;border-radius:3px;flex:1;height:7px;overflow:hidden}.weekly-day-track i{background:#ffd27b;height:100%;display:block}.weekly-countdown small{text-align:right;font-variant-numeric:tabular-nums;font-size:.75rem;display:block}.leaderboard-page .leaderboard-list{gap:8px}.leaderboard-page .leaderboard-list li{background:#ffffff07;border:1px solid #c2e8ed18;border-radius:12px}.leaderboard-page .leaderboard-list li.is-you{background:#65d2e51a;border-color:#65d2e566}.leaderboard-page .leaderboard-medal{color:#44311b;background:linear-gradient(150deg,#ffe2a0,#e8ac43);border-radius:12px;box-shadow:inset 0 2px #fff8,0 3px #956229}.leaderboard-page .leaderboard-medal--2{background:linear-gradient(150deg,#e4f2f5,#9dbbc8);box-shadow:inset 0 2px #fff8,0 3px #567381}.leaderboard-page .leaderboard-medal--3{background:linear-gradient(150deg,#f5c099,#cb8f60);box-shadow:inset 0 2px #fff8,0 3px #865434}.leaderboard-empty{color:#c3d8dc;line-height:1.6}.leaderboard-pager{background:#0c2534;border-top:1px solid #d0eff322;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px 18px;display:flex}.leaderboard-pager button{width:44px;height:44px;color:var(--cream);cursor:pointer;background:#244755;border:1px solid #9bdae744;border-radius:13px;flex-shrink:0;font-size:1.2rem}.leaderboard-pager button[aria-disabled=true]{opacity:.3;cursor:default}.leaderboard-pager>div{text-align:center;gap:5px;font-size:.75rem;display:grid}.leaderboard-pager small{color:#b3cbd1;font-size:.65rem}.leaderboard-page-indicator{justify-content:center;gap:5px;display:flex}.leaderboard-page-indicator i{background:#65828d;border-radius:5px;width:6px;height:6px;transition:width .18s}.leaderboard-page-indicator .is-active{background:#ffc869;width:22px}@keyframes menu-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes board-arrive{0%{opacity:.3;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}@keyframes loader-pop{0%,65%,to{transform:scale(1)}25%{transform:translateY(-5px)scale(1.12)}}@media (width<=380px){.start-screen{padding-inline:16px}.start-mode{padding:17px 48px 17px 17px}.leaderboard-page-scroll{padding-inline:14px}.game-over-card{padding:22px}}@media (height<=740px){.start-logo{width:124px}.start-card>h1{margin:8px 0}.start-modes{margin-top:18px}.start-mode{min-height:95px;padding-block:15px}}@media (prefers-reduced-motion:reduce){.start-card,.game-navigation-view,.account-dialog,.game-over-card,.block-loader-pieces i,.game-shell:not(.game-navigation-shell)>.board-stage{animation:none}.start-screen *,.game-navigation-shell *,.account-dialog *,.game-over-card *,.game-shell--finished .board-stage{transition:none!important}}.game-over-card h2{color:var(--cream)}.game-over-card .eyebrow{color:#ffc869}.game-over-card .game-over-best{color:#c9dde1}.leaderboard-page .leaderboard-rank:not(.leaderboard-medal){color:#c6dce1;background:#ffffff0b}.start-mode:after{content:"";background:var(--mode-accent);width:9px;height:9px;box-shadow:12px 0 var(--mode-accent), 12px -12px var(--mode-accent);opacity:.35;pointer-events:none;border-radius:3px;position:absolute;bottom:18px;right:25px;transform:rotate(-12deg)}.game-navigation-actions button{grid-template-columns:42px minmax(0,1fr);column-gap:14px}.game-navigation-actions button>strong,.game-navigation-actions button>span{grid-column:2}.menu-action-icon{flex-shrink:0;width:26px;height:26px}.game-navigation-actions .menu-action-icon{box-sizing:content-box;color:#ffd384;background:#ffffff0d;border-radius:13px;grid-area:1/1/3;align-self:center;padding:8px}.game-navigation-actions .menu-action-icon--trophy{color:#ffd384}.game-navigation-actions .menu-action-icon--account{color:#bdb5ff}.game-navigation-actions .menu-action-icon--sound,.game-navigation-actions .menu-action-icon--muted{color:#93dfca}.game-navigation-actions .menu-action-icon--share{color:#91d7f4}.game-navigation-actions .navigation-primary .menu-action-icon{color:var(--navy);background:#ffffff30}.start-update{text-align:left;justify-content:center;align-items:center;gap:14px;width:100%;margin:18px 0;padding:16px;display:flex}.start-update strong,.start-update small{display:block}.start-update small{margin-top:3px;font-weight:500}.leaderboard-screen{height:100dvh;color:var(--cream);padding:max(28px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 0 max(18px, env(safe-area-inset-left));background:radial-gradient(at 0 0,#224a56 0,#0000 55%),#102b37}.leaderboard-screen-content{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);max-width:820px;height:100%;margin:auto;display:grid}.leaderboard-screen-header{margin-bottom:12px}.leaderboard-screen-header .eyebrow{color:var(--orange)}.leaderboard-screen .leaderboard-carousel{min-width:0;min-height:0}.leaderboard-screen .leaderboard-page-scroll{scrollbar-gutter:stable;height:100%;padding:12px 4px 24px}.leaderboard-screen .leaderboard-pager{padding-bottom:max(18px, env(safe-area-inset-bottom))}.leaderboard-screen .personal-rank{background:#ffd27b0a;border:0;border-left:3px solid #ffd27b;border-radius:0 10px 10px 0;min-height:52px;padding:10px 12px}.leaderboard-screen .leaderboard-page--weekly .personal-rank{min-height:76px}.leaderboard-screen .leaderboard-list li>div{gap:14px;display:grid}.start-weekly-slot{min-height:68px;display:flow-root}.start-weekly-slot .skeleton{margin:4px 0}.leaderboard-screen .leaderboard-list{align-content:start}.start-screen{align-items:start}.start-account-status{display:flow-root}.start-weekly-slot .weekly-countdown{margin-top:0}.start-account-status[hidden]{display:none}.leaderboard-name{align-items:baseline;gap:8px;min-width:0;display:flex}.leaderboard-name>strong{min-width:0}.leaderboard-name>small{color:#9bd9df;flex-shrink:0;font-size:.65rem}
