.memory-shell{--board-padding:clamp(8px, 2.4vw, 14px);--board-gap:clamp(5px, 1.5vw, 8px);flex-direction:column;width:min(100vw,520px);min-height:100vh;margin:0 auto;padding:clamp(16px,4vw,22px) clamp(12px,3.5vw,16px);display:flex}.memory-tile:focus-visible,.start-button:focus-visible{outline-offset:3px;outline:4px solid #57c6bac7}.memory-hud{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.hud-item,.memory-hud>div{text-align:center;justify-items:center;min-width:0;padding:9px 6px;display:grid}.memory-hud span{color:#5e7775;overflow-wrap:anywhere;font-size:.78rem;line-height:1.15;display:block}.memory-hud strong{color:#173032;justify-content:center;align-items:center;gap:5px;font-size:1.25rem;line-height:1.15;display:inline-flex}.heart-icons{white-space:nowrap;flex-flow:row;flex:none;justify-content:center;align-items:center;gap:2px;display:inline-flex}.heart-icon{object-fit:contain;filter:drop-shadow(0 1px 1px #0f3b3729);width:clamp(18px,5vw,24px);height:clamp(18px,5vw,24px);display:block}.heart-icon.is-empty{opacity:.82}.memory-board{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:repeat(5,minmax(0,1fr))}.memory-board.is-preview{filter:saturate(.9)}.memory-board-action{inset:var(--board-padding);z-index:2;pointer-events:none;place-items:center;display:grid;position:absolute}.memory-board-action .start-button{pointer-events:auto;min-width:180px;min-height:60px;font-size:1.2rem}.memory-tile{aspect-ratio:1;min-height:44px;transition:background .14s,border-color .14s,box-shadow .14s,filter .14s,transform .14s}.memory-tile:disabled{opacity:.72}.memory-tile:not(:disabled):active{transform:translateY(2px);box-shadow:0 1px #8fbdb7}.memory-tile.is-lit{border-color:var(--game-color-state-show);filter:saturate(1.13);background:#e7fff8;transform:translateY(1px)scale(1.02);box-shadow:0 3px #34a99d,0 0 0 4px #72d6c961,0 10px 24px #34a99d40}.memory-tile.is-lit:disabled{opacity:1}.memory-tile.is-input{border-color:var(--game-color-state-correct);filter:saturate(1.1);background:#fff5bd;transform:translateY(2px)scale(.99);box-shadow:0 2px #d69d23,0 0 0 4px #f1bf3557,0 10px 24px #d69d2338}.memory-tile.is-input:disabled{opacity:1}.memory-tile.is-wrong{border-color:var(--game-color-state-wrong);filter:saturate(1.12);background:#ffe0df;transform:translateY(2px)scale(.99);box-shadow:0 2px #b93f3f,0 0 0 4px #e15b5b57,0 10px 24px #b93f3f38}.memory-tile.is-wrong:disabled{opacity:1}.start-button{min-width:108px}.memory-result{justify-items:center;gap:8px;margin:0;padding:0}.memory-result h2{color:#0b6862;margin:0 0 2px;font-size:1.45rem}.memory-result p{color:#395856;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0;font-weight:700;display:flex}.memory-result .start-button{margin-top:6px;padding-inline:24px}@media (width<=520px){.memory-shell{width:min(100vw - 20px,520px);padding:14px 10px 20px}}@media (hover:hover) and (pointer:fine){.memory-tile:not(:disabled):hover{background:#fff3db;border-color:#f2a84f}}@media (width<=420px){.memory-shell{--panel-border:2px;--board-padding:8px;--board-gap:5px;padding-inline:10px}.memory-hud{gap:6px}.start-button{flex:120px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.memory-tile.is-lit,.memory-tile.is-input,.memory-tile.is-wrong{transform:none}}
