@import"https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Sora:wght@500;600;700;800&display=swap";:root{--bg-0: #121017;--bg-1: #19171f;--bg-2: #222029;--surface-0: rgba(18, 16, 23, .44);--surface-1: rgba(25, 23, 31, .62);--surface-2: rgba(34, 32, 41, .72);--stroke: rgba(255, 255, 255, .07);--stroke-strong: rgba(255, 255, 255, .14);--text-main: #f0ece5;--text-soft: #b8b0a6;--text-muted: #857e76;--accent: #d4a65a;--accent-strong: #b88a3e;--accent-soft: rgba(212, 166, 90, .14);--accent-glow: rgba(212, 166, 90, .3);--accent-rose: #d67984;--accent-sage: #7dba8a;--accent-lilac: #9b86d4;--success: #7dba8a;--warning: #d4a65a;--danger: #d67984;--tile-bg: linear-gradient(145deg, #1e1c25, #151320);--tile-text: #f0ece5;--tile-shadow: #0a0810;--surface-inset: rgba(18, 16, 23, .54);--surface-overlay: rgba(18, 16, 23, .84);--surface-modal: rgba(18, 16, 23, .9);--surface-chip: rgba(18, 16, 23, .42);--surface-side: rgba(25, 23, 31, .52);--surface-cell-dim: rgba(25, 23, 31, .58);--path-glow: rgba(212, 129, 106, .24);--path-main: #d4816a;--cursor-glow-1: rgba(212, 129, 106, .16);--cursor-glow-2: rgba(212, 129, 106, .46);--cell-selected-from: #d4a65a;--cell-selected-to: #b88a3e;--cell-selected-shadow: #9a7432;--cell-selected-glow: rgba(212, 166, 90, .32);--cell-found-from: #7dba8a;--cell-found-to: #5fa070;--cell-found-shadow: #4a8558;--cell-found-glow: rgba(125, 186, 138, .2);--cell-hinted-from: #9b86d4;--cell-hinted-to: #7f68bf;--cell-hinted-shadow: #6550a3;--cell-hinted-glow: rgba(155, 134, 212, .26);--cell-celebrate-from: #d67984;--cell-celebrate-to: #bf5f6c;--cell-celebrate-shadow: #a04858;--cell-celebrate-glow: rgba(214, 121, 132, .32);--lilac-border: rgba(155, 134, 212, .34);--lilac-bg: rgba(155, 134, 212, .08);--lilac-bg-strong: rgba(155, 134, 212, .16);--lilac-border-strong: rgba(155, 134, 212, .52);--hint-chip-from: rgba(155, 134, 212, .16);--hint-chip-to: rgba(127, 104, 191, .16);--hint-chip-hover-from: rgba(155, 134, 212, .24);--hint-chip-hover-to: rgba(127, 104, 191, .24);--bg-glow-1: rgba(212, 166, 90, .06);--bg-glow-2: rgba(155, 134, 212, .06);--bg-end: #0d0b12;--radius-xs: 10px;--radius-sm: 14px;--radius-md: 18px;--radius-lg: 24px;--radius-xl: 32px;--space-1: 8px;--space-2: 12px;--space-3: 16px;--space-4: 20px;--space-5: 28px;--touch-target: 56px}:root[data-palette=light]{--bg-0: #faf7f2;--bg-1: #f1ede5;--bg-2: #e6e1d7;--surface-0: rgba(255, 255, 255, .72);--surface-1: rgba(255, 255, 255, .87);--surface-2: rgba(255, 255, 255, .95);--stroke: rgba(42, 38, 35, .12);--stroke-strong: rgba(42, 38, 35, .2);--text-main: #2a2623;--text-soft: #5c5550;--text-muted: #8a827a;--accent: #c47558;--accent-strong: #a85c42;--accent-soft: rgba(196, 117, 88, .12);--accent-glow: rgba(196, 117, 88, .22);--accent-rose: #c97882;--accent-sage: #6aaa7a;--accent-lilac: #9a82bf;--success: #6aaa7a;--warning: #d4a05a;--danger: #c97882;--tile-bg: linear-gradient(145deg, #ffffff, #f5f1ea);--tile-text: #2a2623;--tile-shadow: #c4bdb2;--surface-inset: rgba(230, 225, 215, .62);--surface-overlay: rgba(250, 247, 242, .95);--surface-modal: rgba(250, 247, 242, .97);--surface-chip: rgba(230, 225, 215, .58);--surface-side: rgba(241, 237, 229, .88);--surface-cell-dim: rgba(230, 225, 215, .67);--path-glow: rgba(74, 154, 140, .2);--path-main: #4a9a8c;--cursor-glow-1: rgba(74, 154, 140, .12);--cursor-glow-2: rgba(74, 154, 140, .32);--cell-selected-from: #c47558;--cell-selected-to: #a85c42;--cell-selected-shadow: #8e4a34;--cell-selected-glow: rgba(196, 117, 88, .25);--cell-found-from: #6aaa7a;--cell-found-to: #529065;--cell-found-shadow: #417850;--cell-found-glow: rgba(106, 170, 122, .18);--cell-hinted-from: #9a82bf;--cell-hinted-to: #8068aa;--cell-hinted-shadow: #685596;--cell-hinted-glow: rgba(154, 130, 191, .2);--cell-celebrate-from: #d4a05a;--cell-celebrate-to: #b88840;--cell-celebrate-shadow: #9a7232;--cell-celebrate-glow: rgba(212, 160, 90, .24);--lilac-border: rgba(154, 130, 191, .2);--lilac-bg: rgba(154, 130, 191, .06);--lilac-bg-strong: rgba(154, 130, 191, .11);--lilac-border-strong: rgba(154, 130, 191, .32);--hint-chip-from: rgba(154, 130, 191, .09);--hint-chip-to: rgba(128, 104, 170, .09);--hint-chip-hover-from: rgba(154, 130, 191, .14);--hint-chip-hover-to: rgba(128, 104, 170, .14);--bg-glow-1: rgba(196, 117, 88, .04);--bg-glow-2: rgba(154, 130, 191, .035);--bg-end: #e6e1d7}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%}body{font-family:Manrope,sans-serif;color:var(--text-main);background:radial-gradient(1200px 600px at 10% 10%,var(--bg-glow-1),transparent 50%),radial-gradient(900px 500px at 90% 90%,var(--bg-glow-2),transparent 50%),linear-gradient(135deg,var(--bg-0) 0%,var(--bg-1) 50%,var(--bg-end) 100%);background-attachment:fixed;line-height:1.45;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(circle at center,black 50%,transparent 100%);opacity:.8;z-index:-1}#app{min-height:100vh;padding:clamp(12px,2.5vw,24px);display:flex;justify-content:center}.game-shell{width:min(1200px,100%);display:grid;gap:clamp(12px,2vw,20px);animation:shellEnter .55s ease both}.game-shell.fever-live{filter:drop-shadow(0 0 30px rgba(245,158,11,.15)) saturate(1.2)}.panel-card{background:var(--surface-1);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--stroke);border-radius:var(--radius-lg);box-shadow:0 16px 32px #0000004d,inset 0 1px #ffffff0d}.top-bar{display:grid;gap:var(--space-2);padding:clamp(16px,3vw,24px);animation:riseIn .5s ease both}.top-bar-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.logo{display:grid;gap:4px}.logo .eyebrow{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--accent);text-shadow:0 0 10px var(--accent-glow)}.logo h1{margin:0;font-family:Sora,sans-serif;font-size:clamp(1.65rem,5.7vw,2.4rem);letter-spacing:.01em;background:linear-gradient(135deg,#fff,var(--text-muted));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.help-btn,.settings-btn{width:40px;height:40px;border-radius:50%;flex-shrink:0;transition:all .25s ease}.settings-btn:hover{transform:rotate(45deg)}.settings-btn:active{transform:rotate(45deg) scale(.9)}.stat-card{padding:11px 14px;border-radius:var(--radius-md);border:1px solid var(--stroke);background:var(--surface-inset);display:grid;gap:2px;min-width:92px;box-shadow:inset 0 2px 4px #0003;transition:all .3s ease}.stat-card label{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;color:var(--text-muted)}.stat-card strong{font-family:Sora,sans-serif;font-size:clamp(1.3rem,4.1vw,1.45rem);color:var(--text-main);text-shadow:0 0 8px rgba(255,255,255,.2);transition:transform .15s ease}.score-card.score-pop{animation:scorePop .4s cubic-bezier(.16,1,.3,1)}.score-card.score-pop strong{color:var(--success);text-shadow:0 0 12px rgba(16,185,129,.5)}.score-card.score-drop{animation:scoreDrop .35s ease}.score-card.score-drop strong{color:var(--danger);text-shadow:0 0 12px rgba(239,68,68,.5)}.score-card{position:relative;overflow:visible}.score-float{position:absolute;top:0;right:8px;font-family:Sora,sans-serif;font-size:.78rem;font-weight:800;pointer-events:none;opacity:0;white-space:nowrap}.score-float.score-float-up.active{color:var(--success);text-shadow:0 0 8px rgba(16,185,129,.5);animation:scoreFloatUp .8s ease forwards}.score-float.score-float-down.active{color:var(--danger);text-shadow:0 0 8px rgba(239,68,68,.5);animation:scoreFloatDown .6s ease forwards}.timer-card{position:relative;overflow:hidden}.timer-card:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .4s ease;pointer-events:none}.timer-card.timer-urgent{border-color:#f59e0b80;background:#f59e0b14;animation:timerPulse 1s ease-in-out infinite}.timer-card.timer-urgent:after{opacity:1;background:linear-gradient(135deg,rgba(245,158,11,.08),transparent)}.timer-card.timer-urgent strong{color:var(--warning);text-shadow:0 0 8px rgba(245,158,11,.4)}.timer-card.timer-critical{border-color:#ef444499;background:#ef44441f;animation:timerPulse .5s ease-in-out infinite}.timer-card.timer-critical:after{opacity:1;background:linear-gradient(135deg,rgba(239,68,68,.12),transparent)}.timer-card.timer-critical strong{color:var(--danger);text-shadow:0 0 14px rgba(239,68,68,.6)}.timer-card.timer-critical label{color:var(--danger)}.main-layout{display:grid;gap:clamp(12px,2vw,20px)}.board-section{display:grid;gap:var(--space-3);padding:clamp(14px,2.5vw,22px);align-content:start;animation:riseIn .54s ease both;animation-delay:90ms}.board-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap}.badge{display:inline-flex;align-items:center;min-height:34px;padding:7px 14px;border-radius:999px;border:1px solid var(--accent-soft);background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.88rem;letter-spacing:.01em;box-shadow:0 0 10px var(--accent-soft)}.text-btn{min-height:36px;border:1px solid var(--stroke);border-radius:999px;background:#ffffff0d;color:var(--text-main);font:700 .8rem Manrope,sans-serif;padding:7px 12px;cursor:pointer;transition:all .2s ease}.text-btn:hover{background:#ffffff1a;border-color:var(--stroke-strong)}.text-btn-inline{min-height:30px;padding:4px 10px;font-size:.74rem;color:var(--accent);border-color:var(--accent-soft);background:var(--accent-soft)}.text-btn-inline:hover{background:var(--accent-soft);border-color:var(--accent)}.icon-btn{display:grid;place-items:center;border:1px solid var(--stroke);border-radius:var(--radius-md);background:var(--surface-inset);color:var(--text-muted);cursor:pointer;transition:all .2s ease;box-shadow:inset 0 2px 4px #0003}.icon-btn:hover{background:#ffffff1a;color:var(--text-main);border-color:var(--stroke-strong)}.icon-btn:active{transform:scale(.95)}.admin-link{color:var(--text-soft);font-size:.85rem;font-weight:700;text-decoration:none;border-bottom:1px dashed var(--stroke-strong)}.admin-link:hover{color:var(--text-main);border-bottom-color:var(--text-main)}.quick-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.stats-footer{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--stroke);margin-top:var(--space-1)}.quick-chip{min-height:52px;border-radius:var(--radius-md);border:1px solid var(--stroke);background:var(--surface-chip);padding:8px 12px;display:grid;align-content:center;gap:2px;box-shadow:inset 0 2px 4px #0003;transition:all .3s ease}.quick-chip label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.67rem;font-weight:700}.quick-chip strong{font-family:Sora,sans-serif;font-size:clamp(.95rem,3.2vw,1.1rem);line-height:1.15;color:var(--text-main)}.quick-chip .chip-sub{color:var(--accent-lilac);font:700 .64rem Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase}.quick-chip .chip-sub.fever-live{color:var(--warning);text-shadow:0 0 10px rgba(245,158,11,.5);animation:feverGlow .8s ease-in-out infinite alternate}.combo-chip{position:relative;overflow:hidden}.combo-chip:after{content:"";position:absolute;bottom:0;left:0;height:3px;width:0%;background:var(--accent-lilac);border-radius:0 0 var(--radius-md) var(--radius-md);transition:width .3s ease,background .3s ease}.combo-chip.combo-active{border-color:var(--lilac-border);background:var(--lilac-bg)}.combo-chip.combo-active:after{width:50%;background:var(--accent-lilac)}.combo-chip.combo-active strong{color:var(--accent-lilac)}.combo-chip.combo-high{border-color:#f59e0b80;background:#f59e0b1a;animation:comboGlow 1.5s ease-in-out infinite alternate}.combo-chip.combo-high:after{width:100%;background:var(--warning)}.combo-chip.combo-high strong{color:var(--warning);text-shadow:0 0 8px rgba(245,158,11,.4)}.combo-chip.combo-bump{animation:comboBump .35s ease}.streak-chip.streak-active{border-color:#10b98166;background:#10b9811a}.streak-chip.streak-active strong{color:var(--success)}.hint-chip-btn{cursor:pointer;background:linear-gradient(135deg,var(--hint-chip-from) 0%,var(--hint-chip-to) 100%);border-color:var(--lilac-border-strong);border-width:1.5px;transition:all .2s ease;padding:8px 12px;margin:0;text-align:left;position:relative;box-shadow:inset 0 2px 4px #0003,0 0 12px var(--lilac-bg-strong)}.hint-chip-btn:before{content:"💡";position:absolute;top:6px;right:10px;font-size:.9rem;opacity:.6;transition:opacity .2s ease}.hint-chip-btn:hover{background:linear-gradient(135deg,var(--hint-chip-hover-from) 0%,var(--hint-chip-hover-to) 100%);border-color:var(--lilac-border-strong);box-shadow:inset 0 2px 4px #0003,0 0 20px var(--lilac-border)}.hint-chip-btn:hover:before{opacity:1}.hint-chip-btn:active{transform:scale(.96)}.hint-chip-btn.hint-nudge{animation:hintNudge .6s ease-in-out infinite;border-color:var(--warning);box-shadow:inset 0 2px 4px #0003,0 0 20px #f59e0b66,0 0 40px #f59e0b26;background:linear-gradient(135deg,#f59e0b40,#d4a24c33)}.hint-chip-btn.hint-nudge strong{color:var(--warning)}.hint-chip-btn.hint-nudge:before{opacity:1;animation:hintNudgeIcon .6s ease-in-out infinite}.hint-chip-btn:disabled{opacity:.4;cursor:not-allowed}.hint-chip-btn:disabled:before{opacity:.3}.hint-chip-btn label{cursor:pointer}.hint-chip-btn strong{color:var(--accent-lilac);font-size:clamp(1rem,3.5vw,1.15rem)}.focus-counter{color:var(--accent);font:700 .76rem Sora,sans-serif;letter-spacing:.03em}.progress-track{height:10px;border-radius:999px;background:#0000004d;border:1px solid var(--stroke);overflow:hidden;box-shadow:inset 0 2px 4px #0000004d}#progress-fill{display:block;width:100%;height:100%;transform-origin:left center;transform:scaleX(0);border-radius:inherit;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-lilac) 50%,var(--accent-sage) 100%);box-shadow:0 0 12px var(--accent-glow);transition:transform .18s ease}.board-wrap{position:relative;width:min(100%,620px);margin:0 auto;background:#1e293b80;border-radius:var(--radius-md);padding:10px;border:1px solid rgba(255,255,255,.06)}.board-wrap.shake{animation:boardShake .4s ease-out}.path-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible}.path-stroke{fill:none;stroke-linecap:round;stroke-linejoin:round}.path-stroke-glow{stroke:var(--path-glow);stroke-width:18}.path-stroke-main{stroke:var(--path-main);stroke-width:8;filter:drop-shadow(0 0 4px var(--path-main))}.drag-cursor{position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;transform:translate(-9999px,-9999px);opacity:0;pointer-events:none;z-index:5;background:var(--accent-main);box-shadow:0 0 0 6px var(--cursor-glow-1),0 0 16px var(--cursor-glow-2)}.drag-cursor.active{opacity:1;background:#fff;animation:dragPulse .55s ease-in-out infinite alternate}.board{--grid-size: 4;display:grid;grid-template-columns:repeat(var(--grid-size),minmax(0,1fr));gap:clamp(8px,1.8vw,13px);width:100%;aspect-ratio:1;user-select:none;touch-action:none;transition:filter .28s ease}.board.board-celebrating{filter:brightness(1.1) saturate(1.1);animation:boardCelebrate .55s ease}.board.board-fever{filter:brightness(1.1) drop-shadow(0 0 15px rgba(245,158,11,.2))}.board.board-locked{pointer-events:none}.cell{background:var(--tile-bg);color:var(--tile-text);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);font-family:Sora,sans-serif;font-size:clamp(1.5rem,6.1vw,2.2rem);font-weight:700;display:grid;place-items:center;padding:0;box-shadow:0 6px 0 var(--tile-shadow),0 10px 15px #0000004d;transform:translateY(0);transition:all .12s cubic-bezier(.4,0,.2,1);cursor:pointer}.cell:active{transform:translateY(6px);box-shadow:0 0 0 var(--tile-shadow),0 2px 4px #0000004d}.cell.selected{background:linear-gradient(145deg,var(--cell-selected-from),var(--cell-selected-to));color:#fff;border-color:#fff6;box-shadow:0 6px 0 var(--cell-selected-shadow),0 10px 20px var(--cell-selected-glow);z-index:2;animation:cellSelect .15s ease}.cell.found{background:linear-gradient(145deg,var(--cell-found-from),var(--cell-found-to));color:#fff;border-color:#ffffff4d;box-shadow:0 6px 0 var(--cell-found-shadow),0 10px 15px var(--cell-found-glow)}.cell.hinted{background:linear-gradient(145deg,var(--cell-hinted-from),var(--cell-hinted-to));color:#fff;border-color:#ffffff4d;box-shadow:0 6px 0 var(--cell-hinted-shadow),0 10px 15px var(--cell-hinted-glow);animation:hintPulse .6s ease-in-out infinite alternate}.cell.celebrate{background:linear-gradient(145deg,var(--cell-celebrate-from),var(--cell-celebrate-to));color:#fff;border-color:#fff6;box-shadow:0 6px 0 var(--cell-celebrate-shadow),0 10px 20px var(--cell-celebrate-glow);animation:foundPop .8s ease}.celebration-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:6}.celebration-label{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);white-space:nowrap;border-radius:999px;padding:9px 14px;background:var(--surface-overlay);backdrop-filter:blur(10px);border:1px solid var(--stroke-strong);color:var(--accent);font-family:Sora,sans-serif;font-size:clamp(.86rem,2.7vw,1rem);font-weight:700;letter-spacing:.03em;box-shadow:0 8px 16px #0000004d;animation:burstLabel .94s ease forwards}.celebration-particle{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);opacity:0;font-size:clamp(1rem,3.8vw,1.36rem);animation:burstParticle .95s cubic-bezier(.15,.85,.35,1) forwards;animation-delay:var(--delay, 0ms)}.selection-bar{height:2.6rem;display:flex;align-items:center;justify-content:center;gap:10px;padding:6px 16px;border-radius:var(--radius-md);border:1.5px solid transparent;background:transparent;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.selection-bar.has-word{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 0 16px var(--accent-soft),inset 0 0 12px var(--accent-soft)}.selection-word{text-align:center;font-family:Sora,sans-serif;font-weight:700;font-size:clamp(1.1rem,4vw,1.5rem);letter-spacing:.12em;color:var(--accent);text-shadow:0 0 12px var(--accent-glow)}.selection-count{font:600 .72rem Manrope,sans-serif;color:var(--text-muted);letter-spacing:.04em;white-space:nowrap}.message{min-height:1.4em;text-align:center;font-size:clamp(.96rem,3.4vw,1.05rem);font-weight:700;color:var(--text-soft);transition:color .2s ease}.message.good{color:var(--success);text-shadow:0 0 8px rgba(16,185,129,.3)}.message.bad{color:var(--danger);text-shadow:0 0 8px rgba(239,68,68,.3)}.focus-targets{border-radius:var(--radius-md);border:1px solid var(--lilac-border);background:var(--lilac-bg);box-shadow:inset 0 2px 4px #00000026,0 0 0 1px var(--lilac-bg);padding:10px 12px;display:grid;gap:8px}.focus-target-head{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--text-soft);font:700 .74rem Manrope,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding-bottom:6px;border-bottom:1px solid var(--stroke)}.focus-target-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.focus-target-list li{min-height:46px;padding:0 10px;border-radius:var(--radius-xs);border:1px solid var(--stroke);background:var(--surface-cell-dim);color:var(--text-main);display:grid;place-items:center;font:700 1.05rem Sora,sans-serif;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .3s ease}.focus-target-list li.done{background:#10b98126;color:var(--success);border-color:#10b9814d;animation:targetDone .4s ease;text-decoration:line-through;text-decoration-color:#10b98166}.focus-target-list li:not(.done){border-left:3px solid var(--accent-lilac)}.btn{min-height:var(--touch-target);border:none;border-radius:var(--radius-sm);padding:12px 14px;font:800 clamp(.9rem,3.2vw,1rem) "Manrope",sans-serif;letter-spacing:.01em;cursor:pointer;display:grid;place-items:center;transition:all .15s ease;box-shadow:0 4px #0000004d}.btn:active{transform:translateY(4px);box-shadow:0 0 #0000004d}.btn:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary{background:linear-gradient(135deg,var(--cell-selected-from) 0%,var(--cell-selected-to) 100%);color:#fff;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 4px 0 var(--cell-selected-shadow)}.btn-primary:active{box-shadow:0 0 0 var(--cell-selected-shadow)}.btn-accent{background:linear-gradient(135deg,var(--cell-hinted-from) 0%,var(--cell-hinted-to) 100%);color:#fff;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 0 var(--cell-hinted-shadow)}.btn-accent:active{box-shadow:0 0 0 var(--cell-hinted-shadow)}.btn-muted{background:var(--surface-2);color:var(--text-main);border:1px solid var(--stroke);box-shadow:0 4px 0 var(--tile-shadow)}.side-panel{position:fixed;top:0;right:0;z-index:45;width:min(390px,92vw);height:100vh;padding:14px;overflow:auto;display:grid;gap:var(--space-3);align-content:start;background:var(--surface-overlay);backdrop-filter:blur(24px);border-left:1px solid var(--stroke-strong);box-shadow:-14px 0 30px #00000080;transform:translate(104%);transition:transform .3s cubic-bezier(.16,1,.3,1)}.side-panel.is-open{transform:translate(0)}.settings-backdrop{position:fixed;inset:0;z-index:40;background:#00000080;backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .2s ease}.settings-backdrop.is-open{opacity:1;pointer-events:auto}.side-panel .panel-card{padding:16px;background:var(--surface-side);box-shadow:none}.side-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.side-head h3{margin:0;color:#fff}.side-head .btn{min-height:44px;width:auto;min-width:96px}.panel-card h3{margin:0 0 12px;font-family:Sora,sans-serif;font-size:1rem;letter-spacing:.02em;color:var(--text-main)}.difficulty-switch{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.difficulty-btn{min-height:50px;border-radius:var(--radius-sm);border:1px solid var(--stroke);background:#ffffff0d;color:var(--text-soft);font:700 .9rem Manrope,sans-serif;cursor:pointer;transition:all .2s ease}.difficulty-btn.active{background:var(--accent-strong);color:#fff;border-color:transparent;box-shadow:0 0 15px var(--accent-glow)}.panel-targets{overflow:hidden}.target-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));max-height:270px;overflow:auto;scrollbar-width:thin}.target-list li{min-height:40px;border-radius:var(--radius-xs);border:1px solid var(--stroke);background:#ffffff0d;color:var(--text-main);display:grid;place-items:center;font:700 .82rem Sora,sans-serif;letter-spacing:.06em}.target-list li.done{background:#10b98126;color:var(--success);border-color:#10b9814d}.target-list li.learning-visible{background:var(--lilac-bg-strong);border-color:var(--lilac-border);color:#ddd6fe}.music-control input[type=range]{width:100%;margin-top:10px;accent-color:var(--accent)}.overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#0009;backdrop-filter:blur(12px)}.overlay.hidden{display:none!important}.overlay-card{width:min(480px,100%);padding:clamp(20px,4vw,30px);text-align:center;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.15);background:var(--surface-modal);box-shadow:0 22px 44px #00000080,inset 0 1px #ffffff1a}.overlay-card.overlay-enter{animation:overlayEnter .4s cubic-bezier(.16,1,.3,1) forwards}.overlay-icon{font-size:3rem;margin-bottom:8px;animation:overlayIconBounce .6s ease}.overlay-icon.hidden{display:none}.overlay-card h2{margin:0;font-family:Sora,sans-serif;font-size:clamp(1.5rem,5vw,1.95rem);color:var(--accent);text-shadow:0 0 15px var(--accent-glow)}.overlay-card p{margin:6px 0 8px;font-size:clamp(.98rem,3.5vw,1.1rem);color:var(--text-soft);line-height:1.5}.overlay-card .btn{width:100%}.overlay-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0;padding:10px;border-radius:var(--radius-md);background:#00000040;border:1px solid var(--stroke)}.overlay-stats.hidden{display:none}.stat-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-xs);background:#ffffff08}.stat-icon{font-size:1rem;flex-shrink:0}.stat-label{font-size:.74rem;font-weight:600;color:var(--text-muted);flex:1;text-align:left}.stat-value{font-family:Sora,sans-serif;font-size:.88rem;font-weight:700;color:var(--text-main)}.overlay-stars{display:flex;justify-content:center;gap:8px;margin:4px 0 8px}.overlay-stars .star{font-size:2.4rem;line-height:1;animation:starReveal .4s ease both}.overlay-stars .star-earned{color:var(--warning);text-shadow:0 0 16px rgba(245,158,11,.6);filter:drop-shadow(0 2px 4px rgba(245,158,11,.3))}.overlay-stars .star-empty{color:var(--text-muted);opacity:.3}.overlay-leaderboard{margin:8px 0 12px}.lb-section{display:grid;gap:10px}.lb-rank-badge{text-align:center;font-family:Sora,sans-serif;font-size:1rem;font-weight:700;color:var(--warning);text-shadow:0 0 10px rgba(245,158,11,.4);animation:rankBadgeIn .5s ease both;animation-delay:.2s}.lb-name-prompt{display:grid;gap:8px;padding:12px;border-radius:var(--radius-md);border:1.5px solid var(--accent-soft);background:var(--accent-soft);animation:fadeIn .4s ease both;animation-delay:.3s}.lb-prompt-text{font-size:.82rem;font-weight:700;color:var(--accent);text-align:center;letter-spacing:.04em}.lb-name-row{display:flex;gap:8px}.lb-name-input{flex:1;min-height:44px;padding:8px 12px;border-radius:var(--radius-xs);border:1.5px solid var(--stroke-strong);background:var(--surface-inset);color:var(--text-main);font:700 .9rem Manrope,sans-serif;outline:none;transition:border-color .2s ease}.lb-name-input:focus{border-color:var(--accent);box-shadow:0 0 12px var(--accent-soft)}.lb-name-input::placeholder{color:var(--text-muted);font-weight:500}.lb-save-btn{min-height:44px;min-width:80px;padding:8px 16px;font-size:.85rem}.lb-saved-as{text-align:center;font-size:.85rem;font-weight:700;color:var(--success);padding:8px;border-radius:var(--radius-xs);background:#10b9811a;border:1px solid rgba(16,185,129,.25)}.lb-table{display:grid;gap:4px;padding:8px;border-radius:var(--radius-sm);background:#0003;border:1px solid var(--stroke)}.lb-table .lb-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-xs);transition:background .2s ease}.lb-table .lb-row-you{background:var(--accent-soft);border:1px solid var(--accent-soft)}.lb-table .lb-pos{font-family:Sora,sans-serif;font-size:.78rem;font-weight:700;color:var(--text-muted);min-width:24px}.lb-table .lb-name{flex:1;font-size:.82rem;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-table .lb-score{font-family:Sora,sans-serif;font-size:.82rem;font-weight:700;color:var(--accent)}.overlay-mercy-btn{margin-top:10px;width:100%;font-size:.85rem}.overlay-mercy-btn.hidden{display:none}.hidden{display:none!important}@media (hover: hover){.btn:hover:not(:disabled){filter:brightness(1.1)}.difficulty-btn:hover:not(.active){background:#ffffff1a}.text-btn:hover{background:#ffffff1a}.cell:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--tile-shadow),0 12px 20px #00000059;border-color:#fff3}.cell.selected:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--cell-selected-shadow),0 12px 24px var(--cell-selected-glow)}}@media (max-width: 780px){#app{padding:8px}.game-shell{gap:10px}.top-bar{display:flex;align-items:center;padding:8px 12px;gap:10px}.top-bar-row{display:contents}.logo{flex:1;gap:0}.logo .eyebrow{display:none}.logo h1{font-size:clamp(1.15rem,5vw,1.5rem)}.stats{display:flex;gap:6px}.stat-card{display:flex;flex-direction:row;align-items:center;gap:4px;padding:5px 10px;min-width:0;border-radius:999px}.stat-card label{font-size:.55rem}.stat-card strong{font-size:.85rem}.board-section{padding:10px;gap:10px}.board-head{gap:8px}.badge{min-height:30px;padding:5px 11px;font-size:.79rem}.text-btn{min-height:32px;padding:6px 10px;font-size:.74rem}.text-btn-inline{min-height:26px;padding:3px 9px;font-size:.68rem}.focus-targets{padding:8px 10px;gap:6px}.focus-target-head{font-size:.74rem}.focus-target-list{gap:6px}.focus-target-list li{min-height:36px;font-size:.88rem}.quick-strip{gap:7px}.stats-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:10px}.quick-chip{min-height:48px;padding:6px 8px}.quick-chip label{font-size:.58rem}.quick-chip strong{font-size:clamp(.86rem,3.4vw,.98rem)}.progress-track{height:7px}.selection-bar{height:2rem;padding:4px 12px}.selection-word{font-size:clamp(.92rem,3.2vw,1.08rem)}.target-list{max-height:210px;grid-template-columns:repeat(auto-fill,minmax(74px,1fr))}.overlay-stats{grid-template-columns:1fr}.overlay-icon{font-size:2.5rem}}@media (max-width: 520px){.top-bar{padding:6px 8px;gap:6px}.logo h1{font-size:clamp(1rem,5.5vw,1.3rem)}.stats{gap:4px}.stat-card{padding:4px 7px}.stat-card label{font-size:.5rem}.stat-card strong{font-size:.78rem}.focus-target-list li{min-height:34px;font-size:.82rem}.actions{gap:8px;padding:8px}.btn{min-height:52px;padding:10px;font-size:.86rem}.btn-primary{letter-spacing:.05em}.difficulty-btn{font-size:.82rem}.board{gap:8px}.stats-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:8px}.quick-chip .chip-sub{display:none}}@media (min-width: 980px){#app{padding:clamp(8px,1.5vw,16px)}.game-shell{gap:8px}.top-bar{padding:10px 18px;gap:8px}.top-bar-row{display:contents}.top-bar{display:flex;align-items:center;gap:14px}.logo{flex:1;gap:0}.logo .eyebrow{display:none}.logo h1{font-size:1.5rem}.stats{display:flex;gap:10px}.stat-card{padding:6px 14px;min-width:90px;flex-direction:row;display:flex;align-items:center;gap:8px}.stat-card label{font-size:.65rem}.stat-card strong{font-size:1.15rem}.settings-btn{width:36px;height:36px}.board-section{padding:10px 16px;gap:8px}.quick-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats-footer{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-top:8px;margin-top:4px}.quick-chip{min-height:40px;padding:4px 10px;gap:1px}.quick-chip label{font-size:.58rem}.quick-chip strong{font-size:.92rem}.quick-chip .chip-sub{font-size:.58rem}.focus-targets{padding:6px 8px;gap:5px}.focus-target-list{gap:5px}.focus-target-list li{min-height:34px;font-size:.82rem}.progress-track{height:7px}.selection-bar{height:2.2rem}.main-layout{grid-template-columns:minmax(0,1fr);align-items:start}.board-wrap{width:min(100%,clamp(320px,calc(100vh - 380px),620px));padding:8px}.actions{position:static;bottom:auto;padding:0;border:0;box-shadow:none;border-radius:0;background:transparent;backdrop-filter:none;margin-top:auto}}.tutorial-overlay{position:fixed;inset:0;z-index:55;pointer-events:none}.tutorial-overlay.hidden{display:none!important}.tutorial-backdrop{pointer-events:none;transition:left .35s cubic-bezier(.16,1,.3,1),top .35s cubic-bezier(.16,1,.3,1),width .35s cubic-bezier(.16,1,.3,1),height .35s cubic-bezier(.16,1,.3,1)}.tutorial-tooltip{position:fixed;z-index:56;padding:16px 20px;border-radius:var(--radius-md);background:var(--surface-modal);border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 32px #00000080,inset 0 1px #ffffff1a;pointer-events:auto;animation:tutorialTooltipIn .4s cubic-bezier(.16,1,.3,1) forwards}.tutorial-tooltip.tutorial-tooltip-in{animation:tutorialTooltipIn .4s cubic-bezier(.16,1,.3,1) forwards}.tutorial-text{margin:0 0 14px;font:600 clamp(.95rem,3.5vw,1.1rem) "Manrope",sans-serif;color:var(--text-main);line-height:1.5}.tutorial-btn{width:100%}@keyframes tutorialTooltipIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes boardCelebrate{0%{transform:scale(1)}30%{transform:scale(1.018);filter:brightness(1.25) saturate(1.3)}60%{transform:scale(.997)}to{transform:scale(1);filter:brightness(1) saturate(1)}}@keyframes boardShake{0%{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}to{transform:translate(0)}}@keyframes dragPulse{0%{box-shadow:0 0 0 5px #fff6,0 0 12px #fff9}to{box-shadow:0 0 0 8px #fff3,0 0 20px #fffc}}@keyframes cellSelect{0%{transform:scale(.88);filter:brightness(1.2)}50%{transform:scale(1.04)}to{transform:scale(1);filter:brightness(1)}}@keyframes hintPulse{0%{box-shadow:0 6px 0 var(--cell-hinted-shadow),0 10px 15px var(--cell-hinted-glow)}to{box-shadow:0 6px 0 var(--cell-hinted-shadow),0 10px 25px var(--cell-hinted-glow)}}@keyframes foundPop{0%{transform:scale(1);filter:brightness(1)}20%{transform:scale(1.14);filter:brightness(1.35)}50%{transform:scale(.96);filter:brightness(1.1)}to{transform:scale(1);filter:brightness(1)}}@keyframes targetDone{0%{transform:scale(1);opacity:1}25%{transform:scale(1.08);opacity:.8}50%{transform:scale(.97)}to{transform:scale(1);opacity:.85}}@keyframes burstParticle{0%{opacity:0;transform:translate(-50%,-50%) scale(.55);text-shadow:0 0 10px rgba(255,255,255,.5)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--tx, 0px)),calc(-50% + var(--ty, -90px))) scale(var(--scale, 1))}}@keyframes burstLabel{0%{opacity:0;transform:translate(-50%,-35%) scale(.9)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.03)}to{opacity:0;transform:translate(-50%,-75%) scale(1)}}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes shellEnter{0%{opacity:0}to{opacity:1}}@keyframes timerPulse{0%,to{opacity:1}50%{opacity:.75}}@keyframes comboGlow{0%{box-shadow:inset 0 2px 4px #0003,0 0 8px #f59e0b1a}to{box-shadow:inset 0 2px 4px #0003,0 0 16px #f59e0b40}}@keyframes feverGlow{0%{text-shadow:0 0 8px rgba(245,158,11,.4)}to{text-shadow:0 0 16px rgba(245,158,11,.8)}}@keyframes overlayEnter{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes overlayIconBounce{0%{transform:scale(.3) translateY(20px);opacity:0}50%{transform:scale(1.15) translateY(-5px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes comboBump{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes scorePop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes scoreDrop{0%{transform:scale(1)}30%{transform:scale(.94)}to{transform:scale(1)}}@keyframes scoreFloatUp{0%{opacity:1;transform:translateY(0) scale(1.15)}40%{opacity:1}to{opacity:0;transform:translateY(-28px) scale(.9)}}@keyframes scoreFloatDown{0%{opacity:1;transform:translateY(0) scale(1.1)}to{opacity:0;transform:translateY(12px) scale(.85)}}@keyframes hintNudge{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes hintNudgeIcon{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes starReveal{0%{opacity:0;transform:scale(.3) rotate(-30deg)}60%{transform:scale(1.3) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes rankBadgeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.star-display{display:flex;justify-content:center;gap:8px;margin:8px 0 4px;font-size:1.8rem;line-height:1}.star-display .star{display:inline-block;transition:transform .3s ease,opacity .3s ease}.star-display .star-earned{color:#f59e0b;text-shadow:0 0 12px rgba(245,158,11,.5);animation:starPop .4s ease both}.star-display .star-empty{color:var(--text-muted);opacity:.4}.star-display .star:nth-child(2){animation-delay:.1s}.star-display .star:nth-child(3){animation-delay:.2s}@keyframes starPop{0%{transform:scale(.3) rotate(-20deg);opacity:0}60%{transform:scale(1.2) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.overlay-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}.overlay-buttons .btn-sm{font-size:.8rem;padding:6px 14px;border-radius:8px}.btn-accent{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;border:none;cursor:pointer;font-weight:600}.btn-accent:hover{filter:brightness(1.1)}.btn-sm{font-size:.8rem;padding:6px 14px}.toast-container{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:320px}.toast{background:var(--surface-modal, rgba(15, 23, 42, .95));border:1px solid var(--stroke-strong);border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 20px #0006;pointer-events:auto;transition:transform .3s ease,opacity .3s ease}.toast-title{font-size:.9rem;font-weight:700;color:var(--text-main)}.toast-msg{font-size:.78rem;color:var(--text-soft)}.toast-enter{transform:translate(100%);opacity:0}.toast-visible{transform:translate(0);opacity:1}.toast-exit{transform:translate(100%);opacity:0}.login-modal,.leaderboard-modal{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:#0009;backdrop-filter:blur(4px)}.login-modal.hidden,.leaderboard-modal.hidden{display:none}.login-modal-card{background:var(--surface-modal, rgba(15, 23, 42, .95));border:1px solid var(--stroke-strong);border-radius:16px;padding:28px 24px;max-width:340px;width:90%;text-align:center;display:flex;flex-direction:column;gap:12px}.login-modal-card h3{font-size:1.2rem;color:var(--text-main);margin:0}.login-modal-card p{font-size:.85rem;color:var(--text-soft);margin:0}.leaderboard-modal-card{background:var(--surface-modal, rgba(15, 23, 42, .95));border:1px solid var(--stroke-strong);border-radius:16px;padding:20px;max-width:420px;width:92%;max-height:80vh;display:flex;flex-direction:column;gap:12px}.leaderboard-header{display:flex;justify-content:space-between;align-items:center}.leaderboard-header h3{font-size:1.1rem;color:var(--text-main);margin:0}.leaderboard-tabs{display:flex;gap:4px;background:var(--surface-inset);border-radius:10px;padding:3px}.leaderboard-tab{flex:1;padding:7px 12px;border:none;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600;border-radius:8px;cursor:pointer;transition:background .2s,color .2s}.leaderboard-tab.active{background:var(--accent-soft);color:var(--accent)}.leaderboard-content{overflow-y:auto;max-height:50vh;-webkit-overflow-scrolling:touch}.leaderboard-loading,.leaderboard-empty{text-align:center;padding:24px 0;color:var(--text-muted);font-size:.85rem}.lb-list{display:flex;flex-direction:column;gap:4px}.lb-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:var(--surface-0);transition:background .2s}.lb-row.lb-me{background:var(--accent-soft);border:1px solid var(--accent)}.lb-rank{font-weight:700;font-size:.85rem;color:var(--text-muted);min-width:24px;text-align:center}.lb-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.lb-avatar-placeholder{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:.9rem}.lb-name{flex:1;font-size:.85rem;font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-stars{font-size:.7rem;color:#f59e0b;letter-spacing:1px}.lb-score{font-weight:700;font-size:.9rem;color:var(--accent);min-width:40px;text-align:right}.stats-dashboard .stat-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--stroke)}.stats-dashboard .stat-row:last-child{border-bottom:none}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.achievement-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:10px;background:var(--surface-0);border:1px solid var(--stroke);text-align:center;transition:transform .2s,box-shadow .2s}.achievement-badge:hover{transform:translateY(-1px)}.achievement-unlocked{border-color:var(--accent);box-shadow:0 0 8px var(--accent-soft)}.achievement-locked{opacity:.45;filter:grayscale(.6)}.achievement-icon{font-size:1.5rem;line-height:1}.achievement-title{font-size:.68rem;font-weight:600;color:var(--text-soft);line-height:1.2}.account-section{display:flex;flex-direction:column;gap:8px}.account-info{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--text-main)}.account-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.text-muted{color:var(--text-muted);font-size:.82rem}[data-palette=light] body:before{background-image:linear-gradient(rgba(54,48,39,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(54,48,39,.025) 1px,transparent 1px);opacity:.5}[data-palette=light] .logo h1{background:linear-gradient(135deg,#2a2623,#8a827a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}[data-palette=light] .panel-card{background:#ffffffd1;border-color:#00000014;box-shadow:0 2px 12px #00000012,0 0 0 1px #0000000a}[data-palette=light] .stat-card{background:#f1ede5c7;border-color:#0000000f;box-shadow:inset 0 1px 3px #0000000d}[data-palette=light] .stat-card strong{text-shadow:none}[data-palette=light] .board-wrap{background:#e4e0d48c;border-color:#00000017}[data-palette=light] .cell{border-color:#0000001a;box-shadow:0 3px 0 var(--tile-shadow),0 4px 12px #0000001a}[data-palette=light] .cell:active{box-shadow:0 0 0 var(--tile-shadow),0 1px 3px #00000014}[data-palette=light] .cell.selected{border-color:#ffffff80;box-shadow:0 3px 0 var(--cell-selected-shadow),0 6px 16px var(--cell-selected-glow)}[data-palette=light] .cell.found{border-color:#fff6;box-shadow:0 3px 0 var(--cell-found-shadow),0 6px 12px var(--cell-found-glow)}[data-palette=light] .cell.hinted{border-color:#fff6;box-shadow:0 3px 0 var(--cell-hinted-shadow),0 6px 12px var(--cell-hinted-glow)}[data-palette=light] .cell.celebrate{border-color:#ffffff80;box-shadow:0 3px 0 var(--cell-celebrate-shadow),0 6px 16px var(--cell-celebrate-glow)}[data-palette=light] .progress-track{background:#00000012}[data-palette=light] .focus-targets{border-color:#c4755838;background:#c475580d;box-shadow:inset 0 1px 3px #0000000d,0 0 0 1px #c4755814}[data-palette=light] .focus-target-list li{background:#ffffffe0;border-color:#2a272221;box-shadow:0 1px 3px #0000000f}[data-palette=light] .side-panel{background:var(--surface-side);box-shadow:-8px 0 24px #00000014}[data-palette=light] .side-panel .panel-card{background:#fff9}[data-palette=light] .settings-backdrop{background:#1a1d2e40}[data-palette=light] .difficulty-btn{background:#0000000a;border-color:#0000001a;color:var(--text-soft)}[data-palette=light] .difficulty-btn.active{background:var(--accent-strong);color:#fff;border-color:transparent}@media (hover: hover){[data-palette=light] .difficulty-btn:hover:not(.active){background:#00000012}[data-palette=light] .text-btn:hover{background:#0000000d}[data-palette=light] .btn-muted:hover:not(:disabled){background:#00000014}}[data-palette=light] .btn-muted{background:#0000000d;border-color:#00000014;color:var(--text-soft)}[data-palette=light] .btn-accent{background:linear-gradient(135deg,#c47558,#a85c42)}[data-palette=light] .celebration-label{box-shadow:0 4px 12px #0000001a}[data-palette=light] .toast{background:#fffffff5;border-color:#00000014;color:var(--text-main);box-shadow:0 4px 16px #0000001a}[data-palette=light] .star-display .star-earned{color:var(--warning);text-shadow:0 0 8px rgba(212,160,90,.28)}[data-palette=light] .leaderboard-tab.active{background:#c475581f;color:var(--accent-strong)}[data-palette=light] .lb-row.lb-me{background:#c4755814;border-color:var(--accent-strong)}[data-palette=light] .lb-score{color:var(--accent-strong)}[data-palette=light] .achievement-unlocked{border-color:var(--accent-strong);box-shadow:0 0 8px var(--accent-soft)}[data-palette=light] .hint-btn{box-shadow:0 2px 0 var(--tile-shadow),0 3px 8px #0000000f}[data-palette=light] .score-float.score-float-up.active{text-shadow:0 0 6px rgba(106,170,122,.32)}[data-palette=light] .score-float.score-float-down.active{text-shadow:0 0 6px rgba(201,120,130,.32)}
