.memory-panel{position:relative}.memory-modes{display:flex;justify-content:center;gap:6px;margin:0 auto 16px;padding:4px;border-radius:12px;background:#f2f2ff;max-width:350px}.mode-button{flex:1;border:0;border-radius:9px;background:transparent;padding:11px 7px;color:#5d60ac;font-weight:800;font-size:12px;cursor:pointer}.mode-button.active{background:var(--royal);color:#fff;box-shadow:0 3px 8px #151c702a}
.memory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;max-width:505px;margin:auto}.memory-card{position:relative;width:100%;aspect-ratio:1/1.1;border:0;padding:0;background:transparent;cursor:pointer;perspective:650px;touch-action:manipulation}.memory-card .inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .43s cubic-bezier(.2,.82,.23,1);border-radius:13px}.memory-card.flipped .inner,.memory-card.matched .inner{transform:rotateY(180deg)}.memory-face{position:absolute;inset:0;display:grid;place-items:center;border-radius:13px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.memory-back{color:#fff;background:linear-gradient(145deg,#4650ff,#242ae0);box-shadow:inset 0 0 0 3px #fff3,0 5px 0 #1e269b;font:900 42px Nunito,system-ui,sans-serif}.memory-back::after{content:"✦";position:absolute;bottom:12px;right:12px;color:#ffffff50;font-size:15px}.memory-front{background:#fff8e6;box-shadow:inset 0 0 0 3px #efddb8,0 5px 0 #d5bd93;transform:rotateY(180deg)}.memory-front svg{width:82%;height:82%;filter:drop-shadow(0 3px 3px #5c351d24)}.memory-card.matched .memory-front{background:#e6f8df;box-shadow:inset 0 0 0 3px #9acf9b,0 5px 0 #93bc90;animation:matchedPulse .48s ease}.memory-card:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:13px}.memory-card:disabled{cursor:default}.memory-panel .game-note{min-height:20px;margin:15px 0 0}.memory-panel .overlay-shade{border-radius:23px}.memory-panel .game-actions{padding-top:8px}
@keyframes matchedPulse{0%,100%{transform:scale(1) rotateY(180deg)}45%{transform:scale(1.07) rotateY(180deg)}}
@media(max-width:550px){.memory-grid{gap:7px}.memory-back{font-size:32px;border-radius:9px}.memory-face,.memory-card .inner{border-radius:9px}.memory-modes{margin-bottom:11px}.mode-button{font-size:10px;padding:9px 4px}}
@media(prefers-reduced-motion:reduce){.memory-card .inner{transition:none}}
