/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#f6f0e8;--muted:#9b9caf;--deep:#090d1a;--panel:#111527;--line:#ffffff1c;--accent:#f29a72;--accent-strong:#f36f58;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{background:var(--deep);min-width:320px}body{background:radial-gradient(circle at 12% 13%, #7a4e8e26, transparent 35%), radial-gradient(circle at 88% 78%, #f26f5817, transparent 34%), var(--deep);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}button{color:inherit;font:inherit}button:focus-visible,[role=application]:focus-visible{outline-offset:3px;outline:2px solid #ffc1a6}.game-shell{isolation:isolate;grid-template-columns:minmax(340px,.78fr) minmax(600px,1.22fr);min-height:100vh;display:grid;position:relative;overflow:hidden}.game-shell:before{z-index:-2;content:"";background-image:linear-gradient(115deg,#0000 0 48%,#ffffff06 48% 48.1%,#0000 48.1%);position:absolute;inset:0}.ambient{z-index:-1;filter:blur(110px);opacity:.16;pointer-events:none;border-radius:50%;width:28rem;height:28rem;position:absolute}.ambient-one{background:#8f4d95;top:-15rem;left:29%}.ambient-two{background:#e66150;bottom:-14rem;right:-14rem}.brand-panel{border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(2rem,5vw,5.5rem);display:flex}.brand-row,.game-header,.action-row,.game-footer,.score-cluster,.direction-row,.overlay-actions{align-items:center;display:flex}.brand-row{gap:.85rem}.brand-glyph{color:#f6bfaa;width:2rem;height:2rem;font-family:var(--serif);border:1px solid #fff6;border-radius:50%;place-items:center;font-size:1.2rem;font-style:italic;display:grid}.eyebrow,.edition,.live-dot,.score-box span,.overlay-kicker,.game-footer{letter-spacing:.16em;text-transform:uppercase}.eyebrow{color:#c9c7d2;font-size:.68rem;font-weight:700}.edition{color:var(--accent);margin:0 0 1.35rem;font-size:.63rem;font-weight:800}.brand-copy h1{max-width:7.5ch;font-family:var(--serif);letter-spacing:-.065em;margin:0;font-size:clamp(3.6rem,6.5vw,7.4rem);font-weight:400;line-height:.82}.intro{max-width:31rem;color:var(--muted);margin:2.25rem 0 0;font-size:clamp(.9rem,1.25vw,1.06rem);line-height:1.75}.desktop-hint{color:#77798e;align-items:center;gap:1.1rem;font-size:.72rem;display:flex}.hint-keys{grid-template-rows:repeat(2,1.6rem);grid-template-columns:repeat(3,1.6rem);gap:.18rem;display:grid}.hint-keys i{border:1px solid var(--line);border-radius:.35rem;place-items:center;font-size:.58rem;font-style:normal;display:grid}.hint-keys i:first-child{grid-column:2}.hint-keys i:nth-child(2){grid-column:1}.play-panel{flex-direction:column;width:min(100%,58rem);min-height:100vh;margin:0 auto;padding:clamp(1.5rem,4vw,4.5rem) clamp(1.25rem,5vw,5.75rem) 1.65rem;display:flex}.game-header{justify-content:space-between;gap:2rem}.game-title{align-items:flex-end;gap:1rem;display:flex}.game-number{font-family:var(--serif);letter-spacing:-.08em;font-size:clamp(3.2rem,6vw,5.8rem);line-height:.8}.live-dot{color:var(--muted);align-items:center;gap:.45rem;padding-bottom:.35rem;font-size:.56rem;font-weight:800;display:flex}.live-dot:before{content:"";background:#f49b74;border-radius:50%;width:.4rem;height:.4rem;box-shadow:0 0 0 .25rem #f49b741f}.score-cluster{gap:.5rem}.score-box{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff09;border-radius:.85rem;min-width:6.2rem;padding:.75rem 1rem;position:relative}.score-box span{color:#85869a;margin-bottom:.25rem;font-size:.52rem;font-weight:800;display:block}.score-box strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.score-box em{color:#ffad8c;font-size:.7rem;font-style:normal;font-weight:800;animation:1s forwards score-rise;position:absolute;top:50%;right:.8rem}.best-score{background:#f29a7211}.action-row{justify-content:flex-end;gap:.7rem;margin:1.7rem 0 1rem}.text-button,.primary-button{cursor:pointer;border-radius:999px;min-height:2.55rem;font-size:.72rem;font-weight:750;transition:transform .18s,border-color .18s,background .18s,opacity .18s}.text-button{border:1px solid var(--line);color:#acaebb;background:0 0;padding:0 1.1rem}.text-button span{margin-right:.35rem;font-size:1rem}.text-button:disabled{cursor:not-allowed;opacity:.35}.primary-button{background:var(--ink);color:#131627;border:1px solid #f6f0e8e6;padding:0 1.25rem}.text-button:not(:disabled):hover,.primary-button:hover,.direction-row button:hover{transform:translateY(-2px)}.board-wrap{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:clamp(1.1rem,2vw,1.65rem);width:min(100%,35rem);margin:auto;position:relative}.board-wrap:before{z-index:-1;filter:blur(52px);content:"";background:#81498729;border-radius:50%;position:absolute;inset:18% -12%}.board{aspect-ratio:1;border-radius:inherit;background:linear-gradient(145deg,#ffffff0e,#0000 38%),#15192a;border:1px solid #ffffff21;grid-template-columns:repeat(4,1fr);gap:clamp(.45rem,1.2vw,.8rem);padding:clamp(.55rem,1.4vw,.9rem);display:grid;box-shadow:0 2.2rem 5rem #00000045,inset 0 1px #ffffff09}.tile{min-width:0;font-family:var(--sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums;border-radius:clamp(.65rem,1.2vw,1rem);place-items:center;font-size:clamp(1.3rem,4vw,3.2rem);font-weight:780;display:grid}.tile-empty{background:#ffffff0c;box-shadow:inset 0 1px #ffffff06}.tile-filled{color:#2b2030;animation:.21s cubic-bezier(.17,.86,.3,1.32) tile-enter;box-shadow:inset 0 1px #fff6,0 .7rem 1.4rem #00000021}.tile[data-value="2"]{background:#d8d0d4}.tile[data-value="4"]{background:#f0ded1}.tile[data-value="8"]{background:#efb177}.tile[data-value="16"]{background:#f38e6d}.tile[data-value="32"]{background:#ef6f64}.tile[data-value="64"]{color:#fff3e9;background:#e84f59}.tile[data-value="128"]{color:#3d2435;background:#dba0ae;font-size:clamp(1.1rem,3.4vw,2.65rem)}.tile[data-value="256"]{color:#fff5ed;background:#bb7eae;font-size:clamp(1.1rem,3.4vw,2.65rem)}.tile[data-value="512"]{color:#fff7ef;background:#8a69a4;font-size:clamp(1.1rem,3.4vw,2.65rem)}.tile[data-value="1024"]{color:#fff9f0;background:#66569c;font-size:clamp(.92rem,3vw,2.2rem)}.tile[data-value="2048"]{color:#422734;background:linear-gradient(145deg,#ffd67f,#f49a58);font-size:clamp(.92rem,3vw,2.2rem);box-shadow:0 0 2.2rem #ffbc6785,inset 0 1px #ffffff8f}.tile[data-value]:not([data-value="2"],[data-value="4"],[data-value="8"],[data-value="16"],[data-value="32"],[data-value="64"],[data-value="128"],[data-value="256"],[data-value="512"],[data-value="1024"],[data-value="2048"]){color:#fffaf4;background:linear-gradient(145deg,#ffd67f,#a86bb0);font-size:clamp(.76rem,2.4vw,1.8rem)}.game-overlay{border-radius:inherit;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#090d1adb;flex-direction:column;justify-content:center;align-items:center;padding:2rem;animation:.26s both overlay-in;display:flex;position:absolute;inset:0}.overlay-kicker{color:#f3a681;font-size:.6rem;font-weight:800}.game-overlay h2{font-family:var(--serif);letter-spacing:-.055em;margin:.7rem 0 0;font-size:clamp(2.5rem,7vw,5rem);font-weight:400}.game-overlay p{color:#aab;max-width:28rem;margin:1rem 0 1.6rem;font-size:.85rem;line-height:1.6}.overlay-actions{gap:.65rem}.overlay-actions button{color:#161827;cursor:pointer;background:#f4eee8;border:1px solid #ffffff2e;border-radius:999px;min-height:2.6rem;padding:0 1.2rem;font-size:.72rem;font-weight:800}.overlay-actions button:first-child:not(:last-child){color:var(--ink);background:0 0}.direction-row{justify-content:center;gap:.4rem;margin-top:1rem}.direction-row button{border:1px solid var(--line);color:#a7a8b6;cursor:pointer;background:#ffffff08;border-radius:.7rem;place-items:center;width:2.3rem;height:2.3rem;transition:transform .18s,background .18s;display:grid}.game-footer{color:#626477;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1rem;font-size:.48rem;font-weight:800}@keyframes tile-enter{0%{opacity:.4;transform:scale(.84)}to{opacity:1;transform:scale(1)}}@keyframes score-rise{0%{opacity:0;transform:translateY(.2rem)}25%{opacity:1}to{opacity:0;transform:translateY(-1.4rem)}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@media (width<=1050px){.game-shell{grid-template-columns:1fr;overflow:visible}.brand-panel{border-right:0;min-height:auto;padding:1.4rem 1.35rem 0}.brand-copy,.desktop-hint{display:none}.play-panel{min-height:calc(100vh - 4.5rem);padding-top:1.1rem}}@media (width<=620px){.brand-panel{padding-inline:1rem}.play-panel{min-height:calc(100svh - 4rem);padding:.85rem .85rem 1rem}.game-header{align-items:flex-end;gap:.65rem}.game-title{display:block}.game-number{font-size:clamp(3.25rem,17vw,5rem)}.live-dot{margin-top:.55rem;padding-bottom:0}.score-cluster{gap:.3rem}.score-box{border-radius:.7rem;min-width:4.65rem;padding:.6rem .68rem}.score-box strong{font-size:.92rem}.score-box em{display:none}.action-row{margin:1rem 0 .7rem}.text-button,.primary-button{min-height:2.35rem;font-size:.66rem}.board{gap:.43rem;padding:.5rem}.tile{border-radius:.65rem;font-size:clamp(1.45rem,8.5vw,2.7rem)}.game-footer{display:none}}@media (height<=760px) and (width>=1051px){.brand-panel,.play-panel{padding-top:2rem;padding-bottom:1.2rem}.brand-copy h1{font-size:clamp(3.6rem,6vw,5.5rem)}.intro{margin-top:1.4rem}.board-wrap{width:min(70vh,31rem)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
