.memory-container{text-align:center}.game-title{margin-bottom:6px;font-size:28px;font-weight:800}.game-subtitle{color:var(--text-dim);margin-bottom:24px;font-size:14px}.game-stats{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:18px;display:flex}.stat{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;min-width:92px;padding:8px 14px}.stat-label{color:var(--text-dim);font-size:12px;display:block}.stat-value{font-size:16px;font-weight:700}.game-actions{justify-content:center;gap:12px;margin-bottom:26px;display:flex}.btn{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:none;border-radius:999px;padding:10px 26px;font-size:15px;font-weight:600;transition:transform .15s,background .2s,box-shadow .2s}.btn:active{transform:scale(.94)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 4px 14px #4f6ef759}.btn-ghost{background:var(--bg-card);color:var(--accent);border:1px solid var(--accent)}.btn-ghost:hover{background:var(--bg-hover)}.board{grid-template-columns:repeat(4,1fr);gap:10px;max-width:520px;margin:0 auto;display:grid}.card{aspect-ratio:1;cursor:pointer;perspective:800px;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:transform .15s;position:relative}.card:active{transform:scale(.95)}.card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s;position:relative}.card.flipped .card-inner{transform:rotateY(180deg)}.card-face{backface-visibility:hidden;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card-back{background:linear-gradient(135deg, var(--accent), #a78bfa);color:#ffffffe6;border:1px solid #0000;font-size:24px}.card-front{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);font-size:36px;transform:rotateY(180deg)}.card.matched{cursor:default}.card.matched .card-inner{transform:rotateY(180deg)}.card.matched .card-front{color:#10b981;background:#e8f8ef;border-color:#34d399;animation:.45s pop}.card.mismatch{animation:.45s shake}@keyframes pop{0%{transform:rotateY(180deg)scale(.6)}60%{transform:rotateY(180deg)scale(1.12)}to{transform:rotateY(180deg)scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.modal-overlay{z-index:200;background:#1f293780;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-overlay[hidden]{display:none}.modal{background:var(--bg-card);text-align:center;border-radius:20px;width:100%;max-width:360px;padding:32px 28px 28px;animation:.35s modal-in;box-shadow:0 20px 50px #1f293747}.modal-emoji{margin-bottom:6px;font-size:52px}.modal-title{margin-bottom:6px;font-size:22px}.modal-stars{letter-spacing:4px;margin-bottom:18px;font-size:26px}.modal-stats{justify-content:center;gap:12px;margin-bottom:12px;display:flex}.modal-record{color:var(--accent);min-height:20px;margin-bottom:20px;font-size:14px;font-weight:600}@keyframes modal-in{0%{opacity:0;transform:scale(.8)translateY(24px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width>=640px){.game-title{font-size:32px}.game-subtitle{font-size:15px}.board{gap:14px}.card-face{border-radius:14px}.card-back{font-size:30px}.card-front{font-size:48px}.stat-value{font-size:17px}}
