/* Block Shifter: wooden puzzle board — warm wood, cream panels, orange buttons */
.game.block-shifter { --g-bg: #f6e3c4; --g-ink: #3d2410; --g-muted: #6b4a2c; --g-accent: #e58c26; --g-display: "Titan One", "Arial Black", sans-serif; --g-body: "Nunito", system-ui, sans-serif; --wood: #d8ae6f; --brown: #6b3f12; --cream: #fbe9cf; }
.block-shifter .game-hero { background: repeating-linear-gradient(90deg, rgba(107, 63, 18, 0.07) 0 2px, transparent 2px 38px, rgba(107, 63, 18, 0.05) 38px 41px, transparent 41px 90px), var(--wood); }
.block-shifter .game-hero-copy h1 { color: var(--g-accent); -webkit-text-stroke: 3px var(--brown); paint-order: stroke fill; text-shadow: 0 5px 0 var(--brown); }
.block-shifter .game-hero-copy h1 span { color: var(--cream); }
.block-shifter .game-hero-copy .game-icon { border: 4px solid var(--brown); }
.block-shifter .game-hero-copy .lede { color: var(--g-ink); font-weight: 600; }
.block-shifter .game-hero-media img { width: 44%; max-width: 240px; border: 5px solid var(--brown); border-radius: 18px; }
.block-shifter .game-hero-media img:last-child { margin-bottom: 40px; }
.block-shifter .panel { background: var(--cream); border: 5px solid var(--brown); border-radius: 22px; padding: 32px; box-shadow: 0 6px 0 var(--brown); }
.block-shifter .feature { background: #fff7ea; border: 3px solid #e7c393; border-radius: 16px; }
.block-shifter .feature p { color: var(--g-muted); }
.block-shifter .block { width: 48px; height: 48px; border-radius: 10px; }
.block-shifter .block.moving { background: #43a836; border: 5px solid #8fd583; }
.block-shifter .block.solid { background: #75797d; border: 5px solid #b5b8bb; }
.block-shifter .block.phantom { background: #b6b1ab; border: 5px solid #d8d4cf; opacity: 0.7; }
.block-shifter .block.finish { background: #dcc9b3; box-shadow: inset 0 0 0 5px #43a836, inset 0 0 0 10px #dcc9b3, inset 0 0 0 15px #43a836; }
.block-shifter .shots img { border: 4px solid var(--brown); border-radius: 16px; }
.block-shifter .feature-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
