:root{font-family:ui-rounded,SF Pro Rounded,ui-sans-serif,system-ui,sans-serif;color:#f7f9ff;background:#090d18;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 70% -10%,#1b2948 0,transparent 32rem),#090d18}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}.app-shell{width:min(1180px,100%);min-height:100vh;margin:auto;padding:calc(20px + env(safe-area-inset-top)) clamp(18px,4vw,48px) calc(34px + env(safe-area-inset-bottom))}.site-header{height:48px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900;letter-spacing:.08em;color:#f7f9ff;text-decoration:none}.brand span{color:#70f0c2}.icon-button,.close-button{width:44px;height:44px;border:1px solid #273149;border-radius:50%;background:#12192a;color:#f7f9ff;font-size:1.25rem}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;min-height:390px;padding:54px 0 34px}.eyebrow{margin:0 0 8px;color:#70f0c2;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.hero h1,.game-title h1,.not-found h1{margin:0;font-size:clamp(2.7rem,6vw,5.7rem);line-height:.98;letter-spacing:-.065em}.hero h1 em{color:#70f0c2;font-style:normal}.hero-copy{max-width:470px;color:#a8b1c5;font-size:1.08rem;line-height:1.6;margin:24px 0}.primary-button,.secondary-button{min-height:44px;padding:10px 16px;border-radius:12px;border:1px solid transparent;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:12px;justify-content:center}.primary-button{background:#70f0c2;color:#071712}.secondary-button{background:#12192a;color:#f7f9ff;border-color:#273149}.hero-orb{justify-self:center;width:min(290px,62vw);aspect-ratio:1;border-radius:34% 66% 45% 55%;display:grid;place-items:center;background:linear-gradient(135deg,#70f0c2,#8b7cff);box-shadow:0 20px 80px #70f0c23b;transform:rotate(-12deg)}.hero-orb span{font-size:clamp(3rem,9vw,6.5rem);font-weight:900;color:#090d18;transform:rotate(12deg)}.section{margin-top:44px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.section h2,.related h2{margin:0;font-size:1.65rem;letter-spacing:-.04em}.search{display:flex;gap:8px;align-items:center;color:#a8b1c5;background:#12192a;border:1px solid #273149;border-radius:12px;padding:0 12px;height:44px}.search input{width:150px;border:0;outline:0;background:transparent;color:#f7f9ff}.filters{display:flex;gap:8px;overflow:auto;padding:20px 0}.filter{min-height:40px;white-space:nowrap;padding:0 14px;border:1px solid #273149;border-radius:999px;background:transparent;color:#a8b1c5}.filter.is-active{background:#f7f9ff;color:#090d18;border-color:#f7f9ff}.games-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.game-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);gap:16px;overflow:auto;padding:16px 2px 5px}.game-card{min-width:0;border:1px solid #273149;border-radius:18px;background:#12192a;overflow:hidden;box-shadow:0 8px 25px #0000001c;transition:transform .16s ease,border-color .16s ease}.game-card:hover{transform:translateY(-3px);border-color:#52617f}.game-card a{color:inherit;text-decoration:none}.cover{height:132px;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 80%,#10162a),#182039);overflow:hidden}.cover:before,.cover:after{content:"";position:absolute;border:1px solid #ffffff36;border-radius:50%;width:85%;aspect-ratio:1}.cover:after{width:48%;transform:translate(55%,45%)}.cover span{position:relative;z-index:1;color:#090d18;font-size:2.3rem;font-weight:900;letter-spacing:-.1em}.cover small{position:absolute;z-index:1;right:9px;bottom:8px;padding:3px 6px;border-radius:6px;background:#090d18bd;color:#f7f9ff;font-size:.64rem}.card-info{padding:13px 14px 15px}.card-info p,.card-info span{margin:0;color:#a8b1c5;font-size:.75rem}.card-info h3{margin:4px 0 8px;font-size:1.05rem}.play-page{padding-top:25px}.back-link{display:inline-block;color:#a8b1c5;margin-bottom:24px;text-decoration:none}.game-title{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:25px}.game-title h1{font-size:clamp(2.6rem,5vw,4.5rem)}.game-title>div>p:not(.eyebrow){color:#a8b1c5;margin:8px 0 0}.play-actions{display:flex;gap:8px;flex-wrap:wrap}.stage-wrap{position:relative;min-height:430px;border:1px solid #273149;border-radius:22px;background:#12192a;overflow:hidden;display:grid;place-items:center}.game-stage{width:100%;min-height:430px;display:grid;place-items:center;padding:clamp(16px,4vw,36px)}.stage-loading,.stage-message{color:#a8b1c5}.pause-overlay{position:absolute;inset:0;z-index:3;display:grid;place-content:center;justify-items:center;gap:14px;background:#090d18dd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.pause-overlay p{font-size:2rem;font-weight:900;margin:0}.help-sheet{position:fixed;z-index:5;inset:auto max(18px,4vw) 20px auto;width:min(350px,calc(100vw - 36px));padding:24px;border:1px solid #273149;border-radius:18px;background:#182038;box-shadow:0 20px 50px #0009}.help-sheet h2{margin:0 0 8px}.help-sheet>p:last-child{color:#a8b1c5;line-height:1.5}.close-button{float:right}.related{margin-top:38px}.merge-game{width:min(100%,440px);display:grid;gap:14px}.game-hud{display:flex;justify-content:space-between;color:#a8b1c5;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.game-hud strong{display:block;color:#f7f9ff;font-size:1.35rem;letter-spacing:0}.merge-board{width:min(100%,440px);aspect-ratio:1;display:grid;grid-template:repeat(4,1fr)/repeat(4,1fr);gap:9px;padding:9px;border-radius:18px;background:#273149;touch-action:none;outline:0}.merge-board:focus-visible{outline:3px solid #70F0C2;outline-offset:4px}.merge-tile{min-width:0;display:grid;place-items:center;border-radius:10px;background:#182039;color:#f7f9ff;font-size:clamp(1.15rem,7vw,2.4rem);font-weight:900;letter-spacing:-.08em}.tile-2{background:#e8f9f1;color:#17241f}.tile-4{background:#baf4df;color:#17241f}.tile-8{background:#70f0c2;color:#17241f}.tile-16{background:#a2d4ff;color:#17243c}.tile-32{background:#8b7cff}.tile-64{background:#b99bff}.tile-128,.tile-256{background:#ffb06b;color:#401a15}.tile-512,.tile-1024,.tile-2048{background:#ff6b7a}.game-status{min-height:1.2em;margin:0;text-align:center;color:#70f0c2;font-size:.9rem}.not-found{display:grid;justify-items:start;gap:15px;padding:22vh 0}.not-found h1{font-size:clamp(2.4rem,6vw,5rem)}[hidden]{display:none!important}@media(max-width:720px){.hero{grid-template-columns:1fr;min-height:0;padding-top:45px}.hero-orb{display:none}.games-grid{grid-template-columns:repeat(2,1fr);gap:12px}.cover{height:112px}.game-title{display:block}.play-actions{margin-top:20px}.stage-wrap,.game-stage{min-height:390px}.section-heading{align-items:flex-start}.search{flex:1}.search input{min-width:0;width:100%}}@media(max-width:380px){.app-shell{padding-inline:14px}.games-grid{gap:9px}.card-info{padding:10px}.cover{height:96px}.play-actions>*{flex:1}.merge-board{gap:6px;padding:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
