@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2) format("woff2-variations");unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #202840;--ink-soft: #4d5367;--paper: #f7f0dd;--surface: #fffaf0;--surface-strong: #fffdf8;--sun: #f5c84c;--coral: #e75a41;--teal: #41b99e;--violet: #6b78d5;--leaf: #7bac57;--pink: #e883a7;--empty-cell: #e8dfc9;--line: rgb(32 40 64 / 18%);--shadow: 7px 8px 0 var(--ink);--soft-shadow: 0 18px 45px rgb(52 45 30 / 14%);--radius-sm: 12px;--radius-md: 20px;--radius-lg: 30px;font-family:Manrope Variable,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}[data-theme=pastel]{--paper: #f6eff2;--surface: #fff9fb;--surface-strong: #fffdfd;--sun: #f5ce83;--coral: #dd8275;--teal: #7ebfb2;--violet: #9298d2;--leaf: #9fbc83;--pink: #dca0b7;--empty-cell: #e9dce0}[data-theme=dark]{--ink: #f8f1df;--ink-soft: #bbb8ae;--paper: #171b2c;--surface: #242a40;--surface-strong: #303650;--sun: #f4ca58;--coral: #f07158;--teal: #51c6ae;--violet: #8994ed;--leaf: #94bf6f;--pink: #ee91b4;--empty-cell: #353b51;--line: rgb(248 241 223 / 18%);--shadow: 7px 8px 0 #080b14;--soft-shadow: 0 18px 50px rgb(0 0 0 / 35%);color-scheme:dark}[data-theme=high-contrast],[data-high-contrast=true]{--ink: #000;--ink-soft: #111;--paper: #fff;--surface: #fff;--surface-strong: #fff;--sun: #ffe500;--coral: #ff3b18;--teal: #00a67e;--violet: #3558e8;--leaf: #4d9700;--pink: #d91c70;--empty-cell: #d9d9d9;--line: #000;--shadow: 7px 8px 0 #000}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}html{background:var(--paper)}body{min-height:100dvh;overflow-x:hidden}button,input,select{font:inherit}button,select,summary,label{-webkit-tap-highlight-color:transparent}button{color:inherit}button:not(:disabled),select:not(:disabled),summary,label:has(input:not(:disabled)){cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:4px solid var(--sun);outline-offset:3px}h1,h2,h3,p{margin-block-start:0}h1,h2,h3,strong{font-variation-settings:"wght" 720}h1,h2,h3{font-family:Fredoka Variable,sans-serif}h1{margin:5px 0 0;font-size:clamp(3rem,10vw,5.7rem);letter-spacing:-.055em;line-height:.82}h1 span{color:var(--coral)}h2{margin:4px 0 7px;font-size:clamp(2rem,6vw,3.4rem);letter-spacing:-.04em;line-height:1}h3{margin:0 0 8px;font-size:1.45rem}p{color:var(--ink-soft);font-weight:560;line-height:1.55}.eyebrow,.section-kicker,.dialog-eyebrow{display:block;font-size:.72rem;font-variation-settings:"wght" 780;letter-spacing:.16em;text-transform:uppercase}.button{min-height:48px;padding:12px 19px;border:2px solid var(--ink);border-radius:999px;background:var(--surface);font-variation-settings:"wght" 730;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.button:not(:disabled):hover{transform:translateY(-2px)}.button:not(:disabled):active{transform:translateY(2px)}.button--primary{background:var(--sun);box-shadow:4px 5px 0 var(--ink)}.button--secondary{background:var(--surface-strong)}.button--ghost{border-color:transparent;background:transparent}.icon-button{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--surface);font-size:1.7rem;font-weight:600;line-height:1}.mini-grid-mark{display:grid;width:50px;height:50px;grid-template-columns:1fr 1fr;gap:4px;flex:0 0 auto;padding:5px;border:2px solid var(--ink);border-radius:13px;background:var(--surface);box-shadow:4px 4px 0 var(--ink);transform:rotate(-5deg)}.mini-grid-mark i{border:1.5px solid var(--ink);border-radius:4px;background:var(--sun)}.mini-grid-mark i:nth-child(2){background:var(--coral)}.mini-grid-mark i:nth-child(3){background:var(--violet)}.mini-grid-mark i:nth-child(4){border-radius:50%;background:var(--teal)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}[data-reduced-motion=true] *,[data-reduced-motion=true] *:before,[data-reduced-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.settings-screen{min-height:100dvh;padding:max(24px,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(circle at 8% 15%,rgb(245 200 76 / 46%) 0 7%,transparent 22%),radial-gradient(circle at 92% 65%,rgb(65 185 158 / 25%) 0 8%,transparent 25%),linear-gradient(90deg,transparent 49%,rgb(32 40 64 / 4%) 50%,transparent 51%) 0 0 / 28px 28px,var(--paper)}.brand-header{display:flex;width:min(100%,1040px);align-items:center;gap:18px;margin:0 auto 32px}.brand-header h1{font-size:clamp(3rem,8vw,4.5rem)}.brand-header .settings-close{margin-left:auto}.settings-card{width:min(100%,1040px);margin:0 auto;padding:clamp(22px,5vw,48px);border:2px solid var(--ink);border-radius:var(--radius-lg);background:rgb(from var(--surface) r g b / 94%);box-shadow:var(--shadow)}.settings-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:2px solid var(--ink)}.settings-intro p{margin:0}.board-size-preview{display:flex;width:125px;height:100px;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;border:2px solid var(--ink);border-radius:22px 32px 20px 29px;background:linear-gradient(rgb(32 40 64 / 11%) 2px,transparent 2px),linear-gradient(90deg,rgb(32 40 64 / 11%) 2px,transparent 2px),var(--sun);background-size:16px 16px;box-shadow:5px 6px 0 var(--ink);font-family:Fredoka Variable,sans-serif;font-size:1.55rem;transform:rotate(2deg)}.board-size-preview strong,.board-size-preview span{padding:2px;background:var(--sun)}.setting-group{min-width:0;margin:0;padding:28px 0;border:0;border-bottom:1px solid var(--line)}.setting-group legend{margin-bottom:13px;padding:0;font-size:.78rem;font-variation-settings:"wght" 780;letter-spacing:.13em;text-transform:uppercase}.segmented-control,.choice-cards{display:grid;gap:10px}.board-size-control{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented-control button,.choice-cards button{min-width:0;border:2px solid var(--line);color:var(--ink);background:var(--surface-strong);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease}.segmented-control button:hover,.choice-cards button:hover{border-color:var(--ink);transform:translateY(-2px)}.segmented-control button.is-active,.choice-cards button.is-active{border-color:var(--ink);background:var(--sun);box-shadow:4px 4px 0 var(--ink);transform:translate(-2px,-2px)}.segmented-control button{min-height:52px;padding:11px 13px;border-radius:14px;font-variation-settings:"wght" 700}.board-size-control button{display:grid;gap:2px;text-align:left}.board-size-control button strong{font-family:Fredoka Variable,sans-serif;font-size:1.18rem}.board-size-control button span,.choice-cards button span{color:var(--ink-soft);font-size:.72rem;font-weight:560}.choice-cards--three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-cards button{display:grid;min-height:88px;align-content:center;gap:5px;padding:16px;border-radius:17px;text-align:left}.choice-cards button strong{font-family:Fredoka Variable,sans-serif;font-size:1.04rem}.mode-cards button{position:relative;padding-left:54px}.mode-cards button.is-active{transform:translateY(-2px)}.mode-cards button>i{position:absolute;left:14px;display:grid;width:29px;height:29px;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--surface);font-style:normal;font-size:.75rem;font-weight:800}.setting-group--inline .segmented-control{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.setting-group--inline .segmented-control:has(button:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.advanced-settings{border-bottom:1px solid var(--line)}.advanced-settings summary{display:flex;min-height:82px;align-items:center;justify-content:space-between;gap:18px;list-style:none}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary span{display:grid;gap:3px}.advanced-settings summary small,.select-row small,.toggle-row small{color:var(--ink-soft);font-size:.76rem;font-weight:550;line-height:1.35}.advanced-settings summary>i{display:grid;width:34px;height:34px;place-items:center;border:2px solid var(--ink);border-radius:50%;font-style:normal;font-size:1.4rem;transition:transform .16s ease}.advanced-settings[open] summary>i{transform:rotate(45deg)}.advanced-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}.select-row,.toggle-row{position:relative;display:flex;min-height:78px;align-items:center;justify-content:space-between;gap:14px;padding:14px;border-bottom:1px solid var(--line)}.select-row:nth-child(odd),.toggle-row:nth-child(odd){border-right:1px solid var(--line)}.select-row>span,.toggle-row>span{display:grid;gap:3px}.select-row select{max-width:200px;padding:9px 34px 9px 11px;border:2px solid var(--ink);border-radius:11px;color:var(--ink);background:var(--surface-strong);font-size:.78rem;font-weight:680}.toggle-row input{position:absolute;width:1px;height:1px;opacity:0}.toggle-row>i{position:relative;width:48px;height:28px;flex:0 0 auto;border:2px solid var(--ink);border-radius:999px;background:var(--empty-cell)}.toggle-row>i:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border:2px solid var(--ink);border-radius:50%;background:var(--surface);content:"";transition:transform .15s ease}.toggle-row input:checked+i{background:var(--teal)}.toggle-row input:checked+i:after{transform:translate(20px)}.toggle-row input:focus-visible+i{outline:4px solid var(--sun);outline-offset:3px}.settings-footer{display:flex;align-items:center;gap:20px;padding-top:30px}.start-button{display:flex;min-width:220px;align-items:center;justify-content:space-between;gap:24px;padding-inline:24px}.start-button span{font-size:1.3rem}.settings-footer>small{color:var(--ink-soft);font-size:.72rem}.stats-strip{display:grid;width:min(100%,850px);grid-template-columns:repeat(4,1fr);margin:34px auto 0;padding:18px 22px;border:2px solid var(--ink);border-radius:20px;background:var(--surface);box-shadow:4px 5px 0 var(--ink)}.stats-strip div{display:grid;gap:2px;text-align:center}.stats-strip div+div{border-left:1px solid var(--line)}.stats-strip span{color:var(--ink-soft);font-size:.66rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.stats-strip strong{font-family:Fredoka Variable,sans-serif;font-size:1.2rem}.game-screen{position:relative;display:grid;height:100dvh;min-height:320px;grid-template-rows:auto minmax(0,1fr);overflow:clip;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:radial-gradient(circle at 5% 40%,rgb(245 200 76 / 33%) 0 5%,transparent 20%),radial-gradient(circle at 97% 75%,rgb(65 185 158 / 22%) 0 5%,transparent 22%),linear-gradient(35deg,transparent 0 47%,rgb(32 40 64 / 2.5%) 48% 52%,transparent 53%) 0 0 / 26px 26px,var(--paper);isolation:isolate}.game-screen:before,.game-screen:after{position:absolute;z-index:-1;width:120px;height:120px;border:2px solid var(--ink);border-radius:28px;content:"";opacity:.08;transform:rotate(18deg)}.game-screen:before{top:-58px;right:8%;background:var(--coral)}.game-screen:after{bottom:-72px;left:7%;border-radius:50%;background:var(--violet)}.game-header{display:grid;width:min(100%,1120px);grid-template-columns:minmax(120px,.5fr) minmax(300px,1.3fr) minmax(46px,.5fr);align-items:center;gap:16px;margin:0 auto}.game-logo{display:flex;align-items:center;gap:11px}.game-logo .mini-grid-mark{width:38px;height:38px;gap:3px;padding:4px;border-radius:10px;box-shadow:3px 3px 0 var(--ink)}.game-logo strong{font-family:Fredoka Variable,sans-serif;font-size:1.55rem;letter-spacing:-.05em}.game-logo strong span{color:var(--coral)}.game-menu-button{justify-self:end;font-size:0}.game-menu-button:before{width:19px;height:14px;border-top:3px solid currentColor;border-bottom:3px solid currentColor;content:""}.game-menu-button:after{position:absolute;width:19px;border-top:3px solid currentColor;content:""}.score-panel{display:grid;grid-template-columns:1.25fr repeat(3,1fr);overflow:hidden;border:2px solid var(--ink);border-radius:16px;background:var(--surface);box-shadow:3px 4px 0 var(--ink)}.score-panel>div{display:grid;min-height:48px;align-content:center;padding:5px 12px;text-align:center}.score-panel>div+div{border-left:1px solid var(--line)}.score-panel span{color:var(--ink-soft);font-size:.58rem;font-weight:770;letter-spacing:.09em;text-transform:uppercase}.score-panel strong{font-family:Fredoka Variable,sans-serif;font-size:1rem;line-height:1.1}.score-panel .score-main{background:var(--sun)}.score-panel .score-main strong{font-size:1.25rem}.score-panel .combo-live{background:color-mix(in srgb,var(--teal) 24%,var(--surface));animation:combo-breathe .9s ease-in-out infinite alternate}.game-main{display:grid;width:min(100%,860px);min-height:0;grid-template-rows:auto minmax(0,1fr) auto auto;place-items:center;gap:clamp(5px,1.15dvh,12px);margin:0 auto;padding-top:clamp(5px,1.2dvh,12px)}.status-line{display:flex;min-height:28px;align-items:center;justify-content:center;gap:9px;margin:0;color:var(--ink-soft);font-size:clamp(.72rem,2.6vw,.88rem);font-weight:680;text-align:center}.status-line:before{width:8px;height:8px;flex:0 0 auto;border:2px solid var(--ink);border-radius:50%;background:var(--sun);content:""}.status-line.is-error:before{border-radius:2px;background:repeating-linear-gradient(135deg,var(--coral) 0 3px,var(--surface) 3px 6px)}.status-line.is-celebration{color:var(--ink);font-family:Fredoka Variable,sans-serif;font-size:1rem}.board-frame{display:grid;width:100%;min-height:0;place-items:center}.game-board{--board-pixel-size: min( calc(100vw - 28px) , calc(100dvh - 290px) , 600px);display:grid;width:var(--board-pixel-size);height:var(--board-pixel-size);grid-template-columns:repeat(var(--board-size),minmax(0,1fr));gap:clamp(2px,.62vw,5px);padding:clamp(5px,1vw,9px);border:2px solid var(--ink);border-radius:clamp(15px,4vw,25px);background:color-mix(in srgb,var(--ink) 9%,var(--surface));box-shadow:5px 6px 0 var(--ink),var(--soft-shadow);touch-action:none;-webkit-user-select:none;user-select:none}.board-cell{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 14%,transparent);border-radius:clamp(3px,1.2vw,9px);background:var(--empty-cell);box-shadow:inset 0 1px 1px #ffffff4d;transition:background .1s ease,transform .1s ease,opacity .16s ease}.board-cell.is-occupied{border:1.5px solid var(--ink);box-shadow:inset 0 2px #ffffff3d,inset 0 -3px #2028401f;animation:cell-pop .18s cubic-bezier(.2,1.7,.45,1)}.color-0{--piece-color: var(--coral)}.color-1{--piece-color: var(--teal)}.color-2{--piece-color: var(--violet)}.color-3{--piece-color: var(--sun)}.color-4{--piece-color: var(--leaf)}.color-5{--piece-color: var(--pink)}.board-cell.is-occupied,.shape-piece i.is-filled{background:var(--piece-color)}.board-cell.is-preview-valid{border:2px solid var(--piece-color);background:color-mix(in srgb,var(--piece-color) 9%,var(--empty-cell));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface) 78%,transparent),0 0 0 1px var(--piece-color)}.board-cell.is-preview-invalid{border:2px solid var(--coral);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--coral) 35%,transparent) 0 5px,var(--surface) 5px 9px)}.board-cell.is-preview-invalid:after{position:absolute;inset:20%;background:linear-gradient(45deg,transparent 43%,var(--ink) 44% 56%,transparent 57%);content:""}.board-cell.is-clearing{animation:clear-pop .26s ease-in forwards}.shape-tray{display:grid;width:min(100%,600px);grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,2vw,14px)}.tray-slot{display:grid;height:clamp(74px,13dvh,104px);place-items:center;container-type:size;border:2px dashed color-mix(in srgb,var(--ink) 28%,transparent);border-radius:18px;background:color-mix(in srgb,var(--surface) 72%,transparent);transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.tray-slot.is-used{border-style:solid;opacity:.45}.tray-slot.is-selected{border-color:var(--ink);border-style:solid;background:var(--surface-strong);box-shadow:3px 4px 0 var(--ink)}.shape-button{display:grid;width:100%;height:100%;min-width:0;min-height:0;place-items:center;padding:0;border:2px solid transparent;border-radius:16px;background:transparent;touch-action:none;transition:background .14s ease}.shape-button:hover:not(:disabled){background:color-mix(in srgb,var(--sun) 20%,transparent)}.shape-button.is-selected{background:color-mix(in srgb,var(--sun) 10%,transparent)}.shape-piece{--shape-fluid-unit: clamp(12px, 4vw, 21px);--shape-unit: min(var(--shape-fluid-unit), var(--shape-column-fit), var(--shape-row-fit));display:grid;width:calc(var(--shape-columns) * var(--shape-unit));height:calc(var(--shape-rows) * var(--shape-unit));gap:2px}.shape-piece i{min-width:0;min-height:0;border-radius:clamp(2px,.8vw,5px)}.shape-piece i.is-filled{border:1.5px solid var(--ink);box-shadow:inset 0 1px #ffffff4d,inset 0 -2px #2028401f}.shape-piece--compact{--shape-fluid-unit: 12px}.used-shape-mark{display:grid;width:34px;height:34px;place-items:center;border:2px solid currentColor;border-radius:50%;font-weight:850}.timer{width:min(100%,600px);padding:5px 12px 7px;border:2px solid var(--ink);border-radius:12px;background:var(--surface)}.timer-copy{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;font-size:.68rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase}.timer-copy strong{font-family:Fredoka Variable,sans-serif;font-size:.9rem}.timer-track{height:6px;overflow:hidden;border:1px solid var(--ink);border-radius:999px;background:var(--empty-cell)}.timer-track span{display:block;width:100%;height:100%;border-radius:inherit;background:var(--teal);transform-origin:left;transition:transform .1s linear,background .2s ease}.timer.is-urgent .timer-track span{background:var(--sun)}.timer.is-critical{box-shadow:3px 3px 0 var(--coral)}.timer.is-critical .timer-track span{background:var(--coral)}.drag-ghost{position:fixed;z-index:50;display:grid;place-items:center;pointer-events:none;filter:drop-shadow(0 8px 5px rgb(32 40 64 / 25%));transform:translate(-50%,-110%) scale(1.12)}.score-burst{position:fixed;z-index:30;color:var(--ink);font-family:Fredoka Variable,sans-serif;font-size:1.25rem;pointer-events:none;animation:score-float .65s ease-out forwards}@keyframes cell-pop{0%{opacity:.5;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes clear-pop{45%{opacity:1;transform:scale(1.12) rotate(3deg)}to{opacity:0;transform:scale(.15) rotate(12deg)}}@keyframes combo-breathe{to{background:color-mix(in srgb,var(--teal) 42%,var(--surface))}}@keyframes score-float{to{opacity:0;transform:translateY(-48px) rotate(-4deg)}}.dialog-backdrop{position:fixed;z-index:100;display:grid;overflow:auto;place-items:center;inset:0;padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:#121624ad;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:backdrop-in .18s ease-out}.dialog-panel{position:relative;width:min(100%,520px);max-height:calc(100dvh - 36px);overflow:auto;border:2px solid var(--ink);border-radius:var(--radius-lg);color:var(--ink);background:var(--surface);box-shadow:8px 9px 0 var(--ink),0 35px 80px #00000040;animation:dialog-in .22s cubic-bezier(.2,1.4,.45,1)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 24px 18px;border-bottom:1px solid var(--line)}.dialog-heading h2{margin-bottom:5px;font-size:clamp(2rem,8vw,2.8rem)}.dialog-heading p{max-width:380px;margin:0;font-size:.84rem;line-height:1.45}.dialog-body{padding:22px 24px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 24px 24px}.dialog-eyebrow{margin-bottom:8px;color:var(--coral)}.final-score{display:flex;align-items:baseline;gap:10px;padding:18px 20px;border:2px solid var(--ink);border-radius:20px;background:var(--sun);box-shadow:4px 5px 0 var(--ink)}.final-score span{font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.final-score strong{font-family:Fredoka Variable,sans-serif;font-size:clamp(2rem,10vw,3rem);line-height:1}.final-score em{margin-left:auto;font-family:Fredoka Variable,sans-serif;font-style:normal;font-weight:700;transform:rotate(-3deg)}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:24px 0 0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.result-grid div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.result-grid dt{color:var(--ink-soft);font-size:.7rem;font-weight:650}.result-grid dd{margin:0;font-family:Fredoka Variable,sans-serif;font-weight:700}.tutorial-card{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:20px;min-height:170px;padding:22px;border:2px solid var(--ink);border-radius:24px;background:radial-gradient(circle at 88% 15%,rgb(65 185 158 / 23%),transparent 27%),var(--surface-strong)}.tutorial-mark{display:grid;width:80px;height:80px;place-items:center;border:2px solid var(--ink);border-radius:22px 30px 24px 29px;background:var(--sun);box-shadow:4px 5px 0 var(--ink);font-family:Fredoka Variable,sans-serif;font-size:2.4rem;font-weight:700;transform:rotate(-3deg)}.tutorial-card p{margin:0;font-size:.88rem}.tutorial-dots{display:flex;justify-content:center;gap:7px;margin-top:18px}.tutorial-dots i{width:7px;height:7px;border-radius:50%;background:var(--line);transition:width .16s ease,background .16s ease}.tutorial-dots i.is-current{width:24px;border-radius:99px;background:var(--coral)}.menu-list{display:grid;gap:9px}.menu-list button{display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:18px;padding:12px 15px;border:2px solid var(--line);border-radius:15px;color:var(--ink);background:var(--surface-strong);text-align:left;transition:border-color .13s ease,transform .13s ease,background .13s ease}.menu-list button:hover:not(:disabled){border-color:var(--ink);background:color-mix(in srgb,var(--sun) 22%,var(--surface));transform:translate(3px)}.menu-list button:disabled{cursor:not-allowed;opacity:.42}.menu-list button span{color:var(--ink-soft);font-size:.74rem}.menu-list button strong{font-family:Fredoka Variable,sans-serif}.menu-list button.is-danger strong{color:var(--coral)}.confirm-dialog .dialog-body p{margin:0}.announcement-region{position:fixed;left:50%;bottom:max(15px,env(safe-area-inset-bottom));z-index:90;max-width:calc(100vw - 28px);padding:9px 15px;border:2px solid var(--ink);border-radius:999px;color:var(--ink);background:var(--surface);box-shadow:3px 4px 0 var(--ink);font-size:.78rem;font-weight:700;pointer-events:none;transform:translate(-50%);animation:toast-in .18s ease-out}@keyframes backdrop-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(18px) scale(.96)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}@media(max-width:760px){.settings-screen{padding-inline:max(12px,env(safe-area-inset-left))}.brand-header{margin-bottom:22px}.brand-header .mini-grid-mark{width:43px;height:43px}.settings-card{border-radius:24px;box-shadow:5px 6px 0 var(--ink)}.choice-cards--three{grid-template-columns:1fr}.choice-cards button{min-height:70px}.advanced-grid{grid-template-columns:1fr}.select-row:nth-child(odd),.toggle-row:nth-child(odd){border-right:0}.game-header{grid-template-columns:44px 1fr 44px;gap:8px}.game-logo strong{display:none}.score-panel>div{min-height:43px;padding-inline:6px}.score-panel span{font-size:.5rem}.score-panel strong,.score-panel .score-main strong{font-size:.94rem}.game-screen.has-timer .game-board{--board-pixel-size: min( calc(100vw - 28px) , calc(100dvh - 333px) , 600px)}}@media(max-width:520px){.settings-screen{padding-top:max(18px,env(safe-area-inset-top))}.brand-header{gap:13px}.brand-header h1{font-size:3.2rem}.brand-header .eyebrow{font-size:.6rem}.brand-header .settings-close{min-height:42px;margin-left:auto;padding:8px 12px;font-size:.72rem}.settings-card{padding:20px 16px 24px}.settings-intro{gap:10px;padding-bottom:22px}.settings-intro h2{font-size:2.1rem}.settings-intro p{max-width:210px;font-size:.78rem}.board-size-preview{width:82px;height:74px;font-size:1.05rem;background-size:12px 12px}.setting-group{padding-block:23px}.board-size-control{grid-template-columns:repeat(2,1fr)}.board-size-control button{text-align:center}.mode-cards button{padding-left:55px}.setting-group--inline .segmented-control{grid-template-columns:repeat(2,1fr)}.select-row{align-items:flex-start;flex-direction:column}.select-row select{width:100%;max-width:none}.settings-footer{align-items:stretch;flex-direction:column}.start-button{width:100%}.settings-footer>small{text-align:center}.stats-strip{padding-inline:8px}.stats-strip strong{font-size:.95rem}.stats-strip span{font-size:.52rem}.dialog-heading,.dialog-body,.dialog-actions{padding-inline:18px}.dialog-actions .button{flex:1;padding-inline:12px;font-size:.78rem}.tutorial-card{grid-template-columns:1fr;text-align:center}.tutorial-mark{width:65px;height:65px;margin:auto;font-size:2rem}}@media(max-height:680px)and (orientation:portrait){.game-screen{padding-top:max(7px,env(safe-area-inset-top))}.game-main{gap:4px;padding-top:3px}.game-board{--board-pixel-size: min( calc(100vw - 28px) , calc(100dvh - 258px) , 600px)}.game-screen.has-timer .game-board{--board-pixel-size: min( calc(100vw - 28px) , calc(100dvh - 302px) , 600px)}.tray-slot{height:clamp(65px,11.5dvh,78px)}.status-line{min-height:22px}.shape-piece{--shape-fluid-unit: clamp(11px, 3.6vw, 18px)}}@media(orientation:landscape)and (max-height:650px)and (min-width:620px){.game-screen{grid-template-rows:48px minmax(0,1fr);padding:6px 14px}.game-main{width:min(100%,980px);grid-template-columns:minmax(0,1fr) minmax(220px,280px);grid-template-rows:auto minmax(0,1fr) auto;column-gap:24px;padding:4px 0}.board-frame{grid-row:1 / 4;grid-column:1}.game-board,.game-screen.has-timer .game-board{--board-pixel-size: min( calc(100dvh - 66px) , calc(100vw - 340px) , 570px)}.status-line{grid-row:1;grid-column:2}.shape-tray{width:100%;grid-row:2;grid-column:2;grid-template-columns:1fr;align-self:center}.tray-slot{height:clamp(54px,17dvh,80px)}.timer{width:100%;grid-row:3;grid-column:2}.shape-piece{--shape-fluid-unit: clamp(10px, 2.1vh, 17px)}}@media(min-width:1000px)and (min-height:800px){.game-header{padding-top:10px}.game-main{padding-bottom:10px}.game-board{--board-pixel-size: min( calc(100vw - 28px) , calc(100dvh - 310px) , 620px)}}
