.app{--accent-a: #7cf6c8;--accent-b: #34d399;--accent-ink: #07120d;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem}.app[data-theme=classic]{--accent-a: #b6ff7a;--accent-b: #5fd836;--accent-ink: #052005}.app[data-theme=mono]{--accent-a: #fafafa;--accent-b: #b9b9b9;--accent-ink: #141414}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-picker{display:inline-flex;align-items:center}.theme-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--accent-a) 35%,transparent);background:color-mix(in srgb,var(--accent-b) 8%,transparent);color:#cdeede;font-size:.85rem;font-weight:600;letter-spacing:.02em;padding:.4rem 1.6rem .4rem .9rem;border-radius:8px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--accent-a) 50%),linear-gradient(135deg,var(--accent-a) 50%,transparent 50%);background-position:calc(100% - 14px) center,calc(100% - 9px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;transition:border-color .15s ease,background-color .15s ease}.theme-select:hover{border-color:color-mix(in srgb,var(--accent-a) 60%,transparent)}.theme-select option{background:#11161b;color:#e6edf3}.hud{display:flex;flex-direction:column;align-items:center;gap:.5rem}.title{margin:0;font-size:2rem;letter-spacing:.4em;font-weight:800;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.hud-stats{display:flex;gap:1.5rem;font-size:.95rem;color:#9fb0bf}.stat strong{color:#e6edf3}.stat-combo.combo-active{font-weight:700;color:#0b0f14;background:linear-gradient(135deg,#ffd166,#ff8c42);padding:.1rem .5rem;border-radius:999px;box-shadow:0 0 10px #ff914299;animation:combo-pulse .6s ease-in-out infinite alternate}@keyframes combo-pulse{0%{transform:scale(1);box-shadow:0 0 6px #ff914273}to{transform:scale(1.12);box-shadow:0 0 14px #ff9142cc}}.stat-daily strong{color:#7ee787}.controls{display:flex;gap:.6rem;margin-top:.25rem}.settings{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem;margin-top:.35rem;padding:.5rem .9rem;border-radius:10px;border:1px solid rgba(255,255,255,.06);background:#ffffff05}.presets{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin-top:.35rem;padding:.4rem .9rem;border-radius:10px;border:1px solid rgba(124,246,200,.16);background:#34d3990d}.presets-title{font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.1em;color:#8da0b0}.presets-active{font-size:.74rem;font-weight:700;letter-spacing:.03em;color:#7cf6c8;white-space:nowrap}.preset-buttons{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center}.preset-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;flex-direction:column;align-items:flex-start;gap:0;text-align:left;padding:.3rem .7rem;border-radius:8px;border:1px solid rgba(124,246,200,.28);background:#ffffff05;color:#cdeede;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .05s ease,box-shadow .15s ease}.preset-card:hover{background:#34d39924;border-color:#7cf6c899}.preset-card:active{transform:translateY(1px)}.preset-card.is-active{border-color:transparent;background:linear-gradient(135deg,var(--accent-a),var(--accent-b));color:#07120d;box-shadow:0 3px 14px #34d39952}.preset-name{font-weight:700;font-size:.82rem;letter-spacing:.02em}.preset-desc{font-size:.62rem;line-height:1.1;opacity:.8;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setting{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;color:#9fb0bf;letter-spacing:.02em}.setting-label{font-weight:600;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:#8da0b0}.setting-toggle{cursor:pointer}.toggle-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:34px;height:18px;border-radius:999px;background:#ffffff1f;border:1px solid color-mix(in srgb,var(--accent-a) 30%,transparent);cursor:pointer;transition:background .15s ease}.toggle-input:after{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#cdeede;transition:transform .15s ease}.toggle-input:checked{background:linear-gradient(90deg,var(--accent-a),var(--accent-b))}.toggle-input:checked:after{transform:translate(16px);background:var(--accent-ink)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(124,246,200,.35);background:#34d39914;color:#cdeede;font-size:.85rem;font-weight:600;letter-spacing:.02em;padding:.4rem 1rem;border-radius:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .05s ease}.btn:hover:not(:disabled){background:#34d3992e;border-color:#7cf6c899}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(90deg,var(--accent-a),var(--accent-b));border-color:transparent;color:#07120d;font-size:.95rem;padding:.55rem 1.6rem}.btn-primary:hover:not(:disabled){filter:brightness(1.08);background:linear-gradient(90deg,var(--accent-a),var(--accent-b))}.play-area{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:1.25rem}.board-wrap{position:relative;display:inline-block;line-height:0}.leaderboard{min-width:220px;align-self:stretch;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent-a) 22%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-b) 6%,rgba(15,20,25,.92)),#0f1419eb);box-shadow:0 18px 50px #00000073}.leaderboard-title{margin:0;font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.leaderboard-empty{margin:0;font-size:.8rem;color:#6b7c8a;line-height:1.4}.leaderboard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;counter-reset:leader}.leader-row{display:grid;grid-template-columns:1.6rem 1fr auto;align-items:center;gap:.6rem;padding:.45rem .6rem;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);font-size:.85rem}.leader-row:first-child{background:color-mix(in srgb,var(--accent-a) 12%,rgba(255,255,255,.03));border-color:color-mix(in srgb,var(--accent-a) 35%,transparent)}.leader-rank{font-weight:800;font-size:.78rem;color:var(--accent-a);text-align:center}.leader-score{font-weight:700;color:#e6edf3;font-variant-numeric:tabular-nums}.leader-date{font-size:.72rem;color:#6b7c8a;white-space:nowrap}.side-panels{display:flex;flex-direction:column;gap:1.25rem;min-width:220px}.stats-panel,.achievements{display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent-a) 22%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--accent-b) 6%,rgba(15,20,25,.92)),#0f1419eb);box-shadow:0 18px 50px #00000073}.panel-title{margin:0;font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:0}.stat-cell{display:flex;flex-direction:column;gap:.15rem;padding:.55rem .65rem;border-radius:9px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.stat-cell-label{margin:0;font-size:.66rem;text-transform:uppercase;letter-spacing:.09em;color:#6b7c8a}.stat-cell-value{margin:0;font-size:1.35rem;font-weight:800;color:#e6edf3;font-variant-numeric:tabular-nums}.achievement-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.achievement-row{display:grid;grid-template-columns:1.4rem 1fr;align-items:center;gap:.6rem;padding:.45rem .6rem;border-radius:9px;background:#ffffff06;border:1px solid rgba(255,255,255,.05);transition:background .15s ease,border-color .15s ease,opacity .15s ease}.achievement-row.is-locked{opacity:.5}.achievement-row.is-unlocked{background:color-mix(in srgb,var(--accent-a) 12%,rgba(255,255,255,.03));border-color:color-mix(in srgb,var(--accent-a) 38%,transparent)}.achievement-badge{font-size:1rem;text-align:center;color:#6b7c8a}.achievement-row.is-unlocked .achievement-badge{color:var(--accent-a)}.achievement-text{display:flex;flex-direction:column;gap:.05rem;min-width:0}.achievement-title{font-size:.85rem;font-weight:700;color:#e6edf3}.achievement-desc{font-size:.72rem;color:#8da0b0;line-height:1.3}.achievement-toast{position:fixed;top:1.25rem;left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:.75rem;padding:.7rem 1.1rem;border-radius:12px;background:linear-gradient(135deg,var(--accent-a),var(--accent-b));color:var(--accent-ink);box-shadow:0 16px 44px #00000080;animation:toast-in .25s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.achievement-toast-badge{font-size:1.3rem}.achievement-toast-text{display:flex;flex-direction:column;line-height:1.2}.achievement-toast-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;opacity:.8}.achievement-toast-title{font-size:.95rem;font-weight:800}.snake-board{border-radius:12px;box-shadow:0 0 0 1px #ffffff0f,0 18px 50px #0000008c;display:block}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#060a0e9e;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:overlay-in .18s ease-out}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.overlay-card{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 2.5rem;border-radius:16px;background:#0f1419eb;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 60px #0000008c;text-align:center;line-height:1.3}.overlay-title{margin:0;font-size:1.8rem;font-weight:800;letter-spacing:.08em;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.overlay-scores{display:flex;gap:2rem}.overlay-score{display:flex;flex-direction:column;gap:.2rem}.overlay-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#6b7c8a}.overlay-value{font-size:1.8rem;font-weight:800;color:#e6edf3}.overlay-sub{margin:0;font-size:.8rem;color:#6b7c8a}.overlay-actions{display:flex;gap:.6rem;align-items:center;justify-content:center}.overlay-share-confirm{margin:0;font-size:.85rem;font-weight:700;letter-spacing:.02em;color:#4ade80}.hint{margin:0;font-size:.85rem;color:#6b7c8a}.overlay-fixed{position:fixed;z-index:50;border-radius:0;padding:1.5rem}.overlay-confirm{z-index:60}.help-card{position:relative;align-items:stretch;text-align:left;max-width:30rem;width:min(92vw,30rem);max-height:88vh;overflow-y:auto;gap:.75rem}.help-card .overlay-title{text-align:center}.overlay-close{position:absolute;top:.6rem;right:.6rem;width:2rem;height:2rem;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#c6d2dc;font-size:.9rem;cursor:pointer;line-height:1}.overlay-close:hover{background:#ffffff1a}.help-section{display:flex;flex-direction:column;gap:.35rem}.help-heading{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-a, #4be3c0)}.help-list{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:#c6d2dc;line-height:1.4}.help-keys{display:inline-block;padding:.05rem .4rem;border-radius:6px;background:#ffffff14;border:1px solid rgba(255,255,255,.08);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:#e6edf3}.help-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-top:.25rem}.overlay-sub-wide{max-width:26rem;text-align:center}.btn-danger{border-color:#ff5a5a66;color:#ffb4b4}.btn-danger:hover:not(:disabled){background:#ff5a5a29;border-color:#ff5a5a99}.dpad{display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px);gap:.4rem;justify-content:center;margin-top:.25rem;touch-action:none}.dpad-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--accent-ink);background:linear-gradient(160deg,var(--accent-a),var(--accent-b));border:1px solid color-mix(in srgb,var(--accent-a) 60%,transparent);border-radius:12px;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;box-shadow:0 4px 14px #00000059,inset 0 1px #ffffff4d;transition:transform .05s ease,filter .15s ease}.dpad-btn:hover{filter:brightness(1.08)}.dpad-btn:active{transform:translateY(1px) scale(.97);filter:brightness(.95)}.dpad-up{grid-column:2;grid-row:1}.dpad-left{grid-column:1;grid-row:2}.dpad-right{grid-column:3;grid-row:2}.dpad-down{grid-column:2;grid-row:3}@media (max-width: 480px){.app{padding:.75rem}.play-area{gap:.75rem}.leaderboard,.side-panels{min-width:0;width:100%}.dpad{grid-template-columns:repeat(3,64px);grid-template-rows:repeat(3,64px)}}.start-screen{z-index:70;background:radial-gradient(120% 120% at 50% 0%,rgba(34,211,238,.16),transparent 60%),radial-gradient(120% 120% at 50% 100%,rgba(167,139,250,.16),transparent 60%),#060a0eeb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.start-card{gap:.75rem;width:min(92vw,26rem);padding:2.4rem 2.5rem;border:1px solid rgba(255,255,255,.1);background:#0f1419e6;box-shadow:0 24px 70px #0009,0 0 0 1px #22d3ee14 inset}.start-logo{font-size:3.2rem;line-height:1;filter:drop-shadow(0 6px 16px rgba(34,211,238,.35));animation:start-logo-bob 2.4s ease-in-out infinite}@keyframes start-logo-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.start-title{margin:0;font-size:2.6rem;font-weight:900;letter-spacing:.18em;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent}.start-tagline{margin:0;font-size:.95rem;color:#9fb0bd}.start-play{margin-top:.4rem;font-size:1.05rem;padding:.7rem 2.4rem}.start-hint{margin:0;font-size:.78rem;color:#6b7c8a}.start-presets{margin-top:.9rem;width:100%;display:flex;flex-direction:column;gap:.5rem}.start-presets-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#6b7c8a}.start-preset-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem}.start-preset-btn{font-size:.8rem;padding:.4rem .9rem}.overlay-countdown{background:#060a0e80}.countdown-number{font-size:clamp(4rem,22vw,9rem);font-weight:900;line-height:1;background:linear-gradient(90deg,var(--accent-a),var(--accent-b));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 40px rgba(34,211,238,.25);animation:countdown-pop .6s ease-out}@keyframes countdown-pop{0%{opacity:0;transform:scale(.5)}35%{opacity:1;transform:scale(1.1)}to{opacity:.85;transform:scale(1)}}:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh;background:radial-gradient(circle at 50% 0%,#131a22,#080b0f 70%);color:#e6edf3}#root{min-height:100vh;display:flex;align-items:center;justify-content:center}
