.mn-extra{width:100%;max-width:650px;margin:auto;padding:20px;background:linear-gradient(145deg,#131e36,#0a0e1d);border:1px solid #354969;border-radius:18px;box-sizing:border-box}.mn-extra-hud{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#aeefff;font-size:13px;font-variant-numeric:tabular-nums}.mn-extra-help{font-size:13px;line-height:1.6;margin:14px 0 20px!important;color:#bfcce0!important}.mn-memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mn-memory-card{position:relative;aspect-ratio:4/3;min-width:0;padding:0;border:1px solid #456284;border-radius:10px;background:#132642;color:#9aeaff;overflow:hidden;touch-action:manipulation;box-shadow:0 5px 12px #0004}.mn-card-back,.mn-card-front{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;transition:transform .22s,opacity .22s}.mn-card-back{font-size:clamp(25px,5vw,50px);font-weight:900;font-style:italic;background:linear-gradient(130deg,#1c597350,#34247f50)}.mn-card-front{opacity:0;transform:rotateY(90deg);background:#0a111f}.mn-card-front img{width:100%;height:100%;object-fit:contain;pointer-events:none}.mn-memory-card.is-open .mn-card-front{opacity:1;transform:rotateY(0)}.mn-memory-card.is-open .mn-card-back{opacity:0;transform:rotateY(-90deg)}.mn-memory-card.is-matched{border-color:#80ffd2;box-shadow:0 0 12px #80ffd230}.mn-memory-card:disabled{opacity:1}.game-memory .arcade-card-visual{background:radial-gradient(ellipse,#7377ff55,transparent 70%)}@media(max-width:600px){.mn-extra{padding:14px}.mn-memory-grid{gap:7px}.mn-extra-hud{font-size:11px}}

.mn-extra{display:flex;flex-direction:column}.mn-extra-restart{order:10;align-self:center;margin-top:22px;min-height:44px}
.mn-memory-card{min-height:48px}

.mn-memory-card:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.mn-card-back,.mn-card-front{transition:none}}
/* Explicit frame geometry prevents image intrinsic size and button layout from shifting faces. */
.mn-arcade .mn-memory-card{display:block;box-sizing:border-box}
.mn-arcade .mn-memory-card>.mn-card-front,.mn-arcade .mn-memory-card>.mn-card-back{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;margin:0;padding:0}
.mn-arcade .mn-memory-card>.mn-card-front{display:block}
.mn-arcade .mn-memory-card>.mn-card-front>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;max-width:none;max-height:none;margin:0;padding:0;object-fit:contain;object-position:50% 50%;transform:none}

.mn-memory-badge{position:absolute;right:4px;bottom:4px;background:#081021;color:white;border:1px solid white;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-weight:bold;font-size:14px}
