.puzzle-game{--accent:#e9917b;--accent-light:#ffe1cf;--ink:#272b43;--paper:#f7f3ec;background:radial-gradient(circle at 5% 35%,#fff9ee,transparent 32%),var(--paper);min-height:100vh;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.puzzle-game *{box-sizing:border-box}.puzzle-game button{font:inherit;cursor:pointer}.puzzle-game a{color:inherit;text-decoration:none}.puzzle-game .game-shell{max-width:1600px;margin:auto;padding:20px clamp(16px,3vw,48px)}.puzzle-game .game-top{color:#9694a0;letter-spacing:1.3px;border-bottom:1px solid #dedbd5;justify-content:space-between;align-items:center;height:68px;font:800 11px Courier New,monospace;display:flex}.puzzle-game .home-link{color:var(--ink);font:900 21px Courier New,monospace}.puzzle-game .game-layout{grid-template-columns:minmax(240px,1fr) minmax(420px,610px) minmax(190px,.62fr);align-items:start;gap:clamp(20px,3vw,48px);margin:48px 0 70px;display:grid}.puzzle-game .game-intro{padding-top:50px}.puzzle-game .kicker{letter-spacing:1.6px;color:var(--accent);font:900 11px Courier New,monospace}.puzzle-game h1{letter-spacing:-3.8px;margin:22px 0;font-size:clamp(44px,4.4vw,72px);font-weight:900;line-height:1.02}.puzzle-game h1 em{color:var(--accent);font-style:normal}.puzzle-game .game-intro>p:not(.kicker){color:#777987;max-width:390px;font-size:17px;line-height:1.55}.puzzle-game .mode-tabs{background:#eae5df;gap:5px;max-width:360px;margin-top:32px;padding:5px;display:flex}.puzzle-game .mode-tabs button{color:#7e7f8e;letter-spacing:.8px;background:0 0;border:0;flex:1;min-height:45px;font:900 11px Courier New,monospace}.puzzle-game .mode-tabs button.active{color:#fff9ed;background:var(--ink);box-shadow:3px 3px #c9c6c1}.puzzle-game .instruction-card{background:#fffdf8;border:1px solid #e5dfd7;max-width:390px;margin-top:40px;padding:21px;box-shadow:6px 6px #e9e3dc}.puzzle-game .instruction-card strong{letter-spacing:1.2px;font:900 11px Courier New,monospace}.puzzle-game .instruction-card p{color:#787985;margin:13px 0 0;font-size:13px;line-height:1.55}.puzzle-game .play-panel{background:var(--ink);color:#fff9ef;min-width:0;padding:20px;box-shadow:12px 12px #e4ded7}.puzzle-game .panel-top{justify-content:space-between;align-items:center;gap:10px;min-height:62px;display:flex}.puzzle-game .panel-top small,.puzzle-game .score-row small,.puzzle-game .side-stat small,.puzzle-game .path-progress,.puzzle-game .panel-bottom{letter-spacing:1px;font:900 10px Courier New,monospace}.puzzle-game .panel-top small{color:#9bc9b5}.puzzle-game .panel-top h2{letter-spacing:-1px;margin:6px 0 0;font:900 23px Courier New,monospace}.puzzle-game .quiet-button{color:#f5eee4;white-space:nowrap;background:#373b53;border:1px solid #575a70;padding:10px 12px;font:900 10px Courier New,monospace!important}.puzzle-game .score-row{grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0;display:grid}.puzzle-game .score-row>div{background:#373b53;flex-direction:column;gap:5px;padding:11px 13px;display:flex}.puzzle-game .score-row small{color:#a9abba}.puzzle-game .score-row strong{font:900 25px Courier New,monospace}.puzzle-game .panel-bottom{color:#afb1c2;justify-content:space-between;align-items:center;gap:12px;min-height:53px;line-height:1.4;display:flex}.puzzle-game .panel-bottom button{color:#f7c984;font:inherit;white-space:nowrap;background:0 0;border:0}.puzzle-game .panel-bottom button:disabled{opacity:.4;cursor:default}.puzzle-game .side-card{background:var(--accent-light);margin-top:66px;padding:22px;box-shadow:6px 6px #e4d9ce}.puzzle-game .side-card>span{color:var(--accent);font-size:30px}.puzzle-game .side-card h3{margin:14px 0 10px;font-size:22px;line-height:1.12}.puzzle-game .side-card p{color:#877b7b;font-size:13px;line-height:1.55}.puzzle-game .side-stat{border-top:1px solid #d8c6bb;flex-direction:column;gap:6px;margin-top:20px;padding-top:17px;display:flex}.puzzle-game .side-stat small{color:#968988}.puzzle-game .side-stat strong{font:900 31px Courier New,monospace}.puzzle-game .game-footer{color:#a6a1a1;letter-spacing:1px;border-top:1px solid #e0dad3;padding:18px 0;font:900 10px Courier New,monospace}.merge-theme{--accent:#ee9772;--accent-light:#ffeadb}.picross-theme{--accent:#89bcaa;--accent-light:#e0f0e6}.path-theme{--accent:#a794d4;--accent-light:#eee5f5}.puzzle-game .merge-board{aspect-ratio:1;touch-action:none;background:#171b31;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;padding:10px;display:grid}.puzzle-game .merge-cell{color:#fffaf0;background:#353a52;place-items:center;min-width:0;font:900 clamp(22px,4vw,52px) Courier New,monospace;display:grid;box-shadow:inset -4px -4px #0002,inset 4px 4px #fff2}.puzzle-game .merge-cell.tile-2{color:#463b45;background:#e8d2ad}.puzzle-game .merge-cell.tile-4{color:#463b45;background:#ecc594}.puzzle-game .merge-cell.tile-8{background:#f1a474}.puzzle-game .merge-cell.tile-16{background:#eb8c72}.puzzle-game .merge-cell.tile-32{background:#e56e73}.puzzle-game .merge-cell.tile-64{background:#cd678c}.puzzle-game .merge-cell.tile-128{background:#a985c5}.puzzle-game .merge-cell.tile-256{background:#7f9ed4}.puzzle-game .merge-cell.tile-512{background:#74b9c0}.puzzle-game .merge-cell.tile-1024{background:#82c7a2;font-size:clamp(19px,3.2vw,40px)}.puzzle-game .merge-cell.tile-2048{color:#473642;background:#f0c76c;font-size:clamp(19px,3.2vw,40px)}.puzzle-game .direction-pad{justify-content:center;gap:8px;margin:15px 0 0;display:flex}.puzzle-game .direction-pad button{color:#fff;background:#373b53;border:1px solid #51566d;width:47px;height:40px;font-size:22px}.puzzle-game .picross-stage{grid-template-rows:75px auto;grid-template-columns:75px minmax(0,1fr);gap:6px;margin-top:20px;display:grid}.puzzle-game .picross-corner{background:#33374e}.puzzle-game .column-clues{grid-template-columns:repeat(5,1fr);gap:3px;display:grid}.puzzle-game .row-clues{grid-template-rows:repeat(5,1fr);gap:3px;display:grid}.puzzle-game .clue{color:#e8e4ee;background:#33374e;justify-content:center;align-items:center;gap:4px;font:900 clamp(11px,2vw,18px) Courier New,monospace;display:flex}.puzzle-game .clue.column{flex-direction:column;gap:0}.puzzle-game .picross-board{aspect-ratio:1;touch-action:none;background:#171b31;grid-template-columns:repeat(5,1fr);gap:3px;padding:4px;display:grid}.puzzle-game .picross-board button,.puzzle-game .path-board button{color:#8f91a1;touch-action:none;background:#e9e5db;border:0;min-width:0;min-height:0;font-size:clamp(17px,3vw,30px);font-weight:900}.puzzle-game .picross-board button.filled{background:#8bc5b2;box-shadow:inset -5px -5px #0002,inset 5px 5px #fff6}.puzzle-game .picross-board button.correct{background:#f2c476}.puzzle-game .picross-board button.crossed{color:#d77b79}.puzzle-game .tool-row{gap:8px;margin-top:15px;display:flex}.puzzle-game .tool-row button{color:#bfc1cc;background:#363a52;border:1px solid #565a71;flex:1;padding:12px 5px;font:900 10px Courier New,monospace!important}.puzzle-game .tool-row button.active{color:#f6c97b;border-color:#f6c97b}.puzzle-game .path-progress{color:#acafc0;justify-content:space-between;align-items:center;margin:18px 0 12px;display:flex}.puzzle-game .path-progress strong{color:#f7cc84;font-size:17px}.puzzle-game .path-board{aspect-ratio:1;touch-action:none;background:#171b31;grid-template-columns:repeat(6,1fr);gap:4px;padding:7px;display:grid}.puzzle-game .path-board button{color:#fff4e9;background:#373c54}.puzzle-game .path-board button.visited{background:#a994d7;box-shadow:inset -4px -4px #0002,inset 4px 4px #fff3}.puzzle-game .path-board button.current{outline-offset:-5px;outline:3px solid #f8d489}.puzzle-game .path-board button.checkpoint{color:#30324b;background:#f2bd7d}.puzzle-game .path-board button.checkpoint.visited{background:#b3d7ba}.puzzle-game .path-board button.finish{background:#f6df8b}.puzzle-game button:focus-visible,.puzzle-game a:focus-visible{outline-offset:2px;outline:3px solid #f4c46f}.puzzle-game .path-board button{position:relative}.puzzle-game .path-board .path-label{z-index:2;position:relative}.puzzle-game .path-board .path-segment{pointer-events:none;z-index:1;background:#c8b7e9;display:block;position:absolute}.puzzle-game .path-board .path-segment.left,.puzzle-game .path-board .path-segment.right{width:calc(50% + 4px);height:10px;top:calc(50% - 5px)}.puzzle-game .path-board .path-segment.left{left:-4px}.puzzle-game .path-board .path-segment.right{right:-4px}.puzzle-game .path-board .path-segment.up,.puzzle-game .path-board .path-segment.down{width:10px;height:calc(50% + 4px);left:calc(50% - 5px)}.puzzle-game .path-board .path-segment.up{top:-4px}.puzzle-game .path-board .path-segment.down{bottom:-4px}@media (width<=1120px){.puzzle-game .game-layout{grid-template-columns:minmax(210px,1fr) minmax(420px,1.6fr)}.puzzle-game .side-card{grid-column:1/-1;align-items:center;gap:20px;margin-top:0;display:flex}.puzzle-game .side-card h3{min-width:190px}.puzzle-game .side-stat{min-width:130px;margin:0 0 0 auto}}@media (width<=750px){.puzzle-game .game-layout{grid-template-columns:1fr;gap:20px;margin-top:22px}.puzzle-game .game-intro{padding:0}.puzzle-game h1{margin:15px 0;font-size:50px}.puzzle-game .game-intro>p:not(.kicker){max-width:640px;margin-bottom:0}.puzzle-game .instruction-card{display:none}.puzzle-game .play-panel,.puzzle-game .side-card{width:min(100%,600px);margin:auto}.puzzle-game .game-top>span{display:none}}@media (width<=500px){.puzzle-game .game-shell{padding:12px}.puzzle-game h1{font-size:42px}.puzzle-game .game-intro>p:not(.kicker){font-size:14px}.puzzle-game .play-panel{padding:11px;box-shadow:6px 6px #e4ded7}.puzzle-game .panel-top h2{font-size:20px}.puzzle-game .merge-board{gap:5px;padding:6px}.puzzle-game .picross-stage{grid-template-rows:60px auto;grid-template-columns:47px minmax(0,1fr);gap:3px}.puzzle-game .clue{gap:1px;font-size:11px}.puzzle-game .picross-board{gap:2px;padding:2px}.puzzle-game .path-board{gap:2px;padding:4px}.puzzle-game .side-card{display:block}.puzzle-game .side-stat{margin-top:15px}.puzzle-game .panel-bottom{font-size:9px}}
