.memory-game{padding:24px;background:#101010;color:#f1f1eb}.memory-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.memory-eyebrow{font:700 11px ui-monospace,monospace;letter-spacing:2px;color:#7fe4c1}.memory-heading h2{font-size:clamp(22px,3vw,34px);letter-spacing:-1px;margin:8px 0}.memory-heading p{font-size:13px;line-height:1.6;color:#abb4af;max-width:550px;margin:0}.memory-scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.memory-scoreboard>div{padding:14px 16px;background:#171c19;border:1px solid #38453c;border-radius:8px;box-shadow:0 3px 0 #070a08}.memory-scoreboard small{display:block;color:#b6c6bc;font-size:11px;text-transform:uppercase;letter-spacing:1px;line-height:1.4}.memory-scoreboard strong{display:block;color:#beff76;font:700 26px ui-monospace,monospace;margin-top:8px}.memory-status{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#19221d;border:1px solid #34483b;border-radius:7px;padding:13px 16px;margin-bottom:18px;min-height:54px;font-size:13px;line-height:1.5}.memory-status.is-win{background:#21381b;color:#cbffa3;border-color:#75a657}.memory-status.is-loss{background:#361e29;color:#ffc5dc;border-color:#93526b}.memory-board{display:grid;grid-template-columns:repeat(var(--memory-columns,4),minmax(0,1fr));gap:13px;max-width:1050px;margin:0 auto}.memory-card{display:block;position:relative;aspect-ratio:1/1.2;min-width:0;padding:0;background:transparent;border:0;color:inherit;text-align:left;border-radius:8px;perspective:800px;touch-action:manipulation;cursor:pointer}.memory-card:disabled{opacity:1!important;cursor:default}.memory-card:focus-visible{outline:3px solid #beff76;outline-offset:4px}.memory-card-inner{display:block;width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .25s ease}.memory-card.is-up .memory-card-inner{transform:rotateY(180deg)}.memory-back,.memory-front{position:absolute;inset:0;display:flex;overflow:hidden;border-radius:8px;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 4px 0 #070a08;border:1px solid #466b5b}.memory-back{background:repeating-linear-gradient(135deg,#16342b 0,#16342b 9px,#193b31 9px,#193b31 18px);flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;color:#a4ffd4;font:800 clamp(10px,1.5vw,18px) ui-monospace,monospace;letter-spacing:3px}.memory-back-mark{background:#89ffb2;color:#082718;width:38%;aspect-ratio:1;display:grid;place-items:center;font-size:clamp(24px,4vw,48px);border:3px solid #b6ffcb;box-shadow:5px 5px 0 #051a12;line-height:1}.memory-back i{font-style:normal;opacity:.5;font-size:12px}.memory-front{transform:rotateY(180deg);display:block;background:#000;border-color:#666}.memory-front>img{display:block;width:100%;height:calc(100% - 40px);object-fit:contain;background:#000;image-rendering:pixelated}.memory-front .media-empty,.memory-unloaded{display:block;width:100%;height:calc(100% - 40px);background:#0b0d0c}.memory-chain{position:absolute;left:7px;top:7px;z-index:2;border-radius:3px;padding:4px 6px;font:750 9px ui-monospace,monospace;letter-spacing:.7px}.memory-chain.is-rh{background:#85e7c4;color:#06342b}.memory-chain.is-ink{background:#ff8fbd;color:#3b0720}.memory-card-footer{height:40px;background:#050505;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:0 9px;font:12px ui-monospace,monospace;color:#f3f3ef;border-top:1px solid #292929}.memory-card-footer b{font-size:10px;letter-spacing:.5px}.memory-match-check{position:absolute;right:7px;top:7px;background:#c0ff82;color:#19390d;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:800}.memory-card.is-matched .memory-front{border-color:#beff76;box-shadow:0 0 0 1px #beff76,0 4px 0 #0d1907}.memory-rules{border-top:1px solid #344138;margin-top:22px;padding-top:15px;font-size:13px;color:#b4c2b8}.memory-rules summary{cursor:pointer;color:#cfffac;font-weight:650}.memory-rules p{line-height:1.9;max-width:850px}.memory-ranking{margin-top:28px;padding-top:22px;border-top:1px solid #344138}.memory-ranking-head{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.memory-ranking h3{margin:0;font:700 18px ui-monospace,monospace}.memory-ranking-head>span{font-size:12px;color:#b8c7bc}.memory-ranking form{max-width:560px;margin:18px 0 8px}.memory-ranking label{display:block;font-size:12px;margin-bottom:7px;color:#d3dfd5}.memory-ranking form>div{display:flex;gap:8px}.memory-ranking input{width:100%;min-width:0;color:#f3f3ed;background:#1b251f;border:1px solid #49624f;border-radius:5px;padding:10px 12px}.memory-ranking form small,.memory-ranking-message,.memory-ranking-empty{font-size:12px;color:#acbfb0;line-height:1.7}.memory-ranking form small{display:block;margin-top:7px}.memory-ranking-message{min-height:20px}.memory-ranking-list{list-style:decimal;margin:12px 0 0;padding-left:28px;max-width:700px}.memory-ranking-list li{padding:11px 8px;border-bottom:1px solid #2b372e}.memory-ranking-list li::marker{color:#86e9be;font:12px ui-monospace,monospace}.memory-ranking-list li>strong{font-size:13px;overflow-wrap:anywhere}.memory-ranking-list li>span{float:right;text-align:right;font:12px ui-monospace,monospace;color:#d0ffa8}.memory-ranking-list li small{display:block;font:10px ui-monospace,monospace;color:#afbeb2;margin-top:4px}.memory-ranking-list li:after{content:'';display:block;clear:both}@media(max-width:790px){.memory-game{padding:18px 14px}.memory-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.memory-scoreboard>div{padding:11px 9px}.memory-scoreboard small{font-size:9px;letter-spacing:.3px}.memory-scoreboard strong{font-size:22px}.memory-card-footer{height:34px;padding:0 6px;font-size:10px}.memory-card-footer b{font-size:8px}.memory-front>img{height:calc(100% - 34px)}.memory-chain{font-size:7px;left:4px;top:4px;padding:3px 4px}.memory-status{flex-wrap:wrap}.memory-heading{gap:10px}.memory-heading .btn{font-size:12px;padding:9px 11px}}@media(max-width:450px){.memory-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.memory-scoreboard{gap:6px}.memory-scoreboard strong{font-size:19px}.memory-scoreboard small{font-size:8px}.memory-card{aspect-ratio:1/1.28}.memory-back{letter-spacing:1px;font-size:10px}.memory-back-mark{font-size:27px}.memory-ranking-head>span{font-size:11px}.memory-chain{font-size:7px}.memory-card-footer b{font-size:7px}}@media(prefers-reduced-motion:reduce){.memory-card-inner{transition:none}}
