:root{color:#fff;font-synthesis:none;text-rendering:optimizelegibility;--ink:#211c4f;--panel:#ffffff1c;--panel-border:#ffffff26;background:#17153b;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}.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}body{background:radial-gradient(circle at 15% 8%,#6f5dff70,#0000 34rem),radial-gradient(circle at 88% 86%,#ff5ca847,#0000 30rem),linear-gradient(150deg,#18153e 0%,#29215f 52%,#1c3c6a 100%);min-width:320px;min-height:100dvh;margin:0}body.game-active{overscroll-behavior:none;width:100%;height:100dvh;overflow:hidden}body.game-active,body.game-active *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}h1,h2{letter-spacing:-.035em;margin:0;font-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif}.login-shell,.loading-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#191442b8;border-radius:30px;width:min(100%,420px);padding:38px;box-shadow:0 26px 80px #0302197a}.brand-mark{grid-template-columns:repeat(2,27px);gap:4px;width:max-content;margin-bottom:24px;display:grid;rotate:-5deg}.brand-mark span{background:linear-gradient(145deg,#ffe46f,#ff9d2f);border-radius:8px;width:27px;height:27px;box-shadow:inset 0 -5px #963d1740,0 6px 14px #ffab3440}.brand-mark span:nth-child(2){background:linear-gradient(145deg,#fe86bd,#ef3c92)}.brand-mark span:nth-child(3){background:linear-gradient(145deg,#70e3ff,#328be8)}.brand-mark span:nth-child(4){background:linear-gradient(145deg,#8ff5a0,#2fc76b)}.eyebrow{color:#bdb2ff;letter-spacing:.13em;text-transform:uppercase;margin:0 0 5px;font-size:.78rem;font-weight:800}.login-card h1{font-size:clamp(3rem,14vw,4.4rem);line-height:.95}.login-intro{color:#d3d0eb;margin:18px 0 24px;line-height:1.55}.login-card form{gap:17px;display:grid}.login-card label{color:#e9e7f8;gap:7px;font-weight:800;display:grid}.login-card input{width:100%;color:var(--ink);background:#fff;border:2px solid #0000;border-radius:14px;outline:none;padding:13px 14px}.login-card input:focus{border-color:#8e7dff;box-shadow:0 0 0 4px #8e7dff38}.form-error{color:#ffb9d4;margin:-4px 0 0;font-weight:700}.form-success{color:#9ff0b1;margin:0;font-weight:800}.form-notice{color:#ffe9a6;background:#ffe16b1a;border-radius:12px;margin:-8px 0 18px;padding:11px 13px;font-weight:750;line-height:1.4}.primary-button{color:#231a4b;cursor:pointer;background:linear-gradient(135deg,#ffe16b,#ff9e42);border:0;border-radius:15px;padding:14px 20px;font-weight:900;transition:transform .12s,box-shadow .12s;box-shadow:0 8px #b95a2d,0 14px 28px #ff964038}.primary-button:hover{transform:translateY(-2px);box-shadow:0 10px #b95a2d,0 16px 30px #ff96404d}.primary-button:active{transform:translateY(5px);box-shadow:0 3px #b95a2d}.primary-button:disabled{opacity:.65;cursor:wait}.loading-screen{color:#d9d4ff;align-content:center;gap:16px;font-weight:800}.loading-pop{background:#ffe16b;border-radius:9px;width:32px;height:32px;animation:.8s ease-in-out infinite alternate loading-bounce}.account-shell{width:min(100%,980px);min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 20px max(32px, env(safe-area-inset-bottom));margin:0 auto}.account-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex;position:relative}.account-header>.navigation-menu{position:static}.account-header .navigation-menu-panel{top:calc(100% + 7px)}.account-header h1{font-size:clamp(2.4rem,8vw,4.3rem);line-height:.95}.account-player{color:#bdb7e3;margin:7px 0 0;font-size:.8rem;font-weight:800}.admin-user-actions button,.dialog-actions>button:not(.primary-button):not(.danger-fill-button){color:#e5e1fa;cursor:pointer;background:#ffffff17;border:0;border-radius:10px;padding:9px 11px;font-size:.78rem;font-weight:850}.admin-user-actions button:hover,.dialog-actions>button:hover{background:#ffffff2b}.account-card{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#191442b8;border-radius:25px;padding:clamp(22px,5vw,34px);box-shadow:0 24px 65px #03021952}.account-card h2,.account-dialog h2{font-size:clamp(1.6rem,5vw,2.2rem)}.account-columns{grid-template-columns:1.1fr .9fr;align-items:start;gap:18px;display:grid}.page-message{color:#c4bfdf;margin:20px 0 0;font-weight:750}.account-form{gap:15px;margin-top:20px;display:grid}.account-form label{color:#e9e7f8;gap:6px;font-weight:800;display:grid}.account-form input{width:100%;min-width:0;color:var(--ink);background:#fff;border:2px solid #0000;border-radius:13px;outline:none;padding:12px 13px}.account-form input:focus{border-color:#8e7dff;box-shadow:0 0 0 4px #8e7dff38}.account-form .primary-button{justify-self:start}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:20px 0 0;display:grid}.stats-grid div{background:#ffffff12;border-radius:16px;min-width:0;padding:16px}.stats-grid dt{color:#bab4db;letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:900}.stats-grid dd{color:#ffe172;margin:4px 0 0;font-size:clamp(1.35rem,6vw,2rem);font-weight:900}.leaderboard-card{width:min(100%,650px);margin:0 auto}.leaderboard-list{counter-reset:none;gap:10px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-list li{background:#ffffff12;border-radius:18px;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:66px;padding:10px 16px 10px 10px;display:grid}.leaderboard-list li.is-current-player{box-shadow:inset 0 0 0 2px #ffe1729e}.leaderboard-list li>strong{text-overflow:ellipsis;font-size:1.12rem;overflow:hidden}.leaderboard-list li>span:last-child{color:#ffe172;font-size:1.3rem;font-weight:900}.leaderboard-rank{aspect-ratio:1;color:#302052;background:linear-gradient(135deg,#ffe172,#ff9f68);border-radius:13px;place-items:center;width:42px;font-weight:950;display:grid}.admin-create-card{margin-bottom:18px}.admin-create-form{grid-template-columns:1fr 1fr 1fr auto;align-items:end}.admin-create-form .primary-button{white-space:nowrap;min-height:47px}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading>span{color:#302052;background:#ffe172;border-radius:999px;padding:6px 10px;font-weight:900}.admin-user-list{gap:12px;margin-top:20px;display:grid}.admin-user{background:#fff1;border-radius:18px;padding:18px}.admin-user.is-inactive{opacity:.72}.admin-user-heading{justify-content:space-between;align-items:start;gap:15px;display:flex}.admin-user-heading h3{margin:0;font-size:1.2rem}.admin-user-heading p{color:#bdb7d9;margin:4px 0 0;font-size:.78rem;font-weight:750}.admin-user-heading>strong{color:#ffe172;white-space:nowrap}.admin-user-stats{flex-wrap:wrap;gap:10px 20px;margin:15px 0;display:flex}.admin-user-stats div{gap:5px;display:flex}.admin-user-stats dt{color:#aaa4ca;font-size:.74rem;font-weight:800}.admin-user-stats dd{margin:0;font-size:.78rem;font-weight:900}.admin-user-actions{flex-wrap:wrap;gap:7px;display:flex}.admin-user-actions .danger-button{color:#ffc1d5;background:#ff5e8b1c}.self-account-note{color:#c1bbdc;margin:10px 0 0;font-size:.78rem;font-weight:750}.account-dialog{border:1px solid var(--panel-border);background:linear-gradient(145deg,#342b76,#211b50);border-radius:25px;width:min(100%,450px);max-height:calc(100dvh - 44px);padding:30px;overflow:auto;box-shadow:0 30px 90px #04021a8c}.account-dialog>p:not(.eyebrow){color:#d0cce5;line-height:1.5}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:5px;display:flex}.dialog-actions .primary-button{padding:10px 15px;box-shadow:0 5px #b95a2d}.danger-fill-button{color:#fff;cursor:pointer;background:#d83d6b;border:0;border-radius:11px;padding:10px 14px;font-weight:900}.danger-text{color:#ff9fbd}.portrait-orientation-screen{width:100%;height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));place-items:center;display:grid;overflow:hidden}.portrait-orientation-card{border:1px solid var(--panel-border);text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#191442c2;border-radius:28px;width:min(100%,460px);padding:30px;box-shadow:0 26px 80px #0302197a}.portrait-orientation-card h1{font-size:clamp(2rem,6vw,3.4rem);line-height:1}.portrait-orientation-card p:last-child{color:#d3d0eb;margin:16px auto 0;line-height:1.5}.portrait-orientation-icon{color:#322056;background:linear-gradient(135deg,#ff9ec8,#ffe47a);border-radius:18px;place-items:center;width:58px;height:58px;margin:0 auto 16px;font-size:2.2rem;font-weight:900;display:grid;box-shadow:0 10px 24px #ff87be47}.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-header h1{font-size:clamp(2rem,8vw,3.4rem);line-height:1}.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-offset:2px;outline:3px solid #ffe172}.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:#1d1746fa;border-radius:14px;gap:4px;width:190px;padding:7px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 16px 42px #05031d80}.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:#342052;background:#ffe172}.navigation-menu-divider{background:#ffffff21;height:1px;margin:3px 5px}.navigation-menu-panel .navigation-signout{color:#ffc3d7}.text-button{color:#d9d5f5;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{place-items:center;min-width:38px;min-height:38px;padding:6px;font-size:1rem;display:grid}.score-strip{border:1px solid var(--panel-border);background:var(--panel);border-radius:18px;grid-template-columns:1fr auto 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: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-family:ui-rounded,Arial Rounded MT Bold,system-ui,sans-serif;font-size:1.55rem}.score-strip-status{flex-wrap:wrap;justify-content:center;gap:4px;min-width:0;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;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;box-shadow:inset 0 2px #ffffff4d,0 4px 12px #199cde40}.final-results-button{color:#342052;cursor:pointer;background:linear-gradient(135deg,#ffe172,#ffad69);border:0;border-radius:999px;padding:8px 13px;font-size:.78rem;font-weight:900;box-shadow:0 4px 12px #ffb45438}.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%}.block--coral{--block-base:linear-gradient(145deg, #ff8a78, #ed456b)}.block--gold{--block-base:linear-gradient(145deg, #ffe06a, #f79b32)}.block--green{--block-base:linear-gradient(145deg, #79e88b, #27bd72)}.block--blue{--block-base:linear-gradient(145deg, #76a4ff, #5261ed)}.block--purple{--block-base:linear-gradient(145deg, #c17bff, #7547db)}.block--cyan{--block-base:linear-gradient(145deg, #68e2ff, #269bdc)}.game-shell--combo:not(.game-shell--diamond) .cell--filled:before,.game-shell--combo:not(.game-shell--diamond) .cell--preview-valid:before,.game-shell--combo:not(.game-shell--diamond) .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) .cell--filled:before,.game-shell--combo-lost:not(.game-shell--diamond) .cell--preview-valid:before,.game-shell--combo-lost:not(.game-shell--diamond) .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%, #ffffff2e 47% 53%, transparent 54%), linear-gradient(42deg, #86e9ff, #258ee5 52%, #3752c9);box-shadow:inset 0 4px #ffffff73,inset 0 -5px #0f348952,0 0 10px #36c2ff42,0 3px 5px #04031e40}.game-shell--diamond .cell--filled:after,.game-shell--diamond .cell--preview-valid:after,.game-shell--diamond .piece-block:after{background:linear-gradient(145deg,#fff6,#0000 42%),linear-gradient(35deg,#0000 49%,#ffffff29 50% 53%,#0000 54%);border-radius:18%;inset:10%}.shake-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%}.shake-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}.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:2.5s 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:2.5s 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:2.5s 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.1s 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 .7s 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: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>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}.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:2.4s 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:2.4s 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:2.4s 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, 27px);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-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;margin-top:5px;padding:7px 9px;font-size:.7rem;font-weight:900}.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}.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}@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 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 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 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 diamond-board-transition{0%,to{filter:none;transform:scale(1)}42%{filter:brightness(1.32)saturate(1.18);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<=720px) and (width>=500px){.game-shell{width:min(100%,540px,100dvh - 240px);padding-top:10px}.game-header h1{font-size:2rem}.score-strip{min-height:54px;margin-bottom:8px}.tray{--tray-height:90px;padding-top:6px}.piece{--tray-cell:16px;padding:6px}}@media (width>=500px) and (height>=721px){.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}.sound-button{min-width:32px;min-height:32px;padding:4px;font-size:.88rem}.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-list li>span:last-child{font-size:1.08rem}.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-header h1{font-size:1.85rem}.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(11px, 3.8vw, 17px);gap:1px;padding:6px}.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}.brand-mark{grid-template-columns:repeat(2,23px);gap:3px;margin-bottom:13px}.brand-mark span{border-radius:7px;width:23px;height:23px}.eyebrow{font-size:.67rem}.login-card h1{font-size:2.65rem}.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:2.5s 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}.shake-item-icon,.item-feedback,.inventory-item img{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}.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) .cell--filled:before,.game-shell--combo:not(.game-shell--diamond) .cell--preview-valid:before,.game-shell--combo:not(.game-shell--diamond) .piece-block:before{animation:.52s ease-out both reduced-combo-color!important}.game-shell--combo-lost:not(.game-shell--diamond) .cell--filled:before,.game-shell--combo-lost:not(.game-shell--diamond) .cell--preview-valid:before,.game-shell--combo-lost:not(.game-shell--diamond) .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}.new-best-celebration{animation:2.4s 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-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-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}}
