.memory-page{max-width:1300px;margin:auto}.memory-page .page-header{margin-bottom:20px}.memory-themes{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:20px 0}.memory-theme{display:flex;align-items:center;gap:8px;border:1px solid #ffffff55;border-radius:16px;padding:10px 18px;background:#0c48a8;color:#fff;font-weight:900;min-height:52px}.memory-theme .i3d{width:32px;height:32px}.memory-theme[aria-pressed=true]{background:#ffe500;color:#073f93;border-color:#fff186;box-shadow:0 5px 18px #00216b33}.memory-stage{max-width:960px!important;width:100%;margin:auto;padding:24px!important;border:1px solid #6dbeff66;border-radius:26px;background:linear-gradient(160deg,#074fac,#073273)}.memory-stage .scoreboard{max-width:820px;margin:auto}.memory-grid{max-width:820px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px auto}.memory-card{min-width:0;aspect-ratio:1.12;padding:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:18px;border:2px solid #83c5ff;background:radial-gradient(circle at 50% 25%,#329fff,#125fca 55%,#083783);box-shadow:0 5px 0 #033377,0 9px 18px #001e6533;transition:transform .16s,border-color .16s}.memory-card:not(:disabled):hover{transform:translateY(-3px)}.memory-back{display:flex;flex-direction:column;align-items:center;gap:5px;color:#dff6ff;font-size:12px;letter-spacing:2px}.memory-card .memory-back .i3d{width:66px;height:66px}.memory-picture{display:block;width:100%;flex:1;min-height:0;overflow:hidden;background:#eef6ff}.memory-picture img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.memory-logo{padding:13px;background:white}.memory-logo img{object-fit:contain;object-position:center}.memory-caption{display:flex;align-items:center;justify-content:center;width:100%;min-height:38px;padding:5px 6px;background:white;color:#12386e;font-size:12px;line-height:1.2;font-weight:900}.memory-card.matched{opacity:1;border-color:#8affe0;box-shadow:0 5px 0 #087c69}.memory-card.matched .memory-caption{background:#b4ffe4}.memory-card.matched .memory-caption:before{content:'✓';margin-right:5px;color:#08754e}.memory-tip{font-size:12px;line-height:1.7;margin:18px 0 0;color:#d8edff}.image-unavailable:before{content:'⚽';font-size:42px}.memory-credits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.memory-credits section{padding:18px;border:1px solid #ffffff44;border-radius:16px;font-size:12px}.memory-credits img{width:110px;height:85px;object-fit:contain;background:#fff;border-radius:8px;margin-bottom:12px}.memory-credits h3{font-size:17px}.memory-credits p{line-height:1.5}@media(max-width:600px){.memory-stage{padding:14px!important}.memory-grid{gap:9px;grid-template-columns:repeat(3,minmax(0,1fr))}.memory-card{aspect-ratio:.9;border-radius:12px}.memory-caption{font-size:10px;min-height:36px}.memory-logo{padding:9px}.memory-theme{gap:4px;padding:8px 11px;font-size:12px}.memory-theme .i3d{width:25px;height:25px}.memory-card .memory-back .i3d{width:44px;height:44px}.memory-back{font-size:9px;letter-spacing:1px}.memory-credits{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.memory-card{transition:none}.memory-card:not(:disabled):hover{transform:none}}
.memory-card{position:relative;isolation:isolate}.magic-card-back{position:relative;width:100%;height:100%;justify-content:center;gap:8px;background:radial-gradient(ellipse at center,#459eff66,transparent 70%);overflow:hidden}.memory-back .memory-brand{position:relative;z-index:2;width:84%;height:auto;object-fit:contain;filter:drop-shadow(0 5px 8px #001c6988);transform:rotate(-5deg)}.magic-card-stars{position:relative;z-index:2;letter-spacing:8px;color:#fff0a2;font-size:19px;text-shadow:0 0 14px #ffe377}.card-orbit{position:absolute;width:82%;height:82%;border:1px solid #ffe49077;border-radius:50%;transform:rotate(-20deg);box-shadow:0 0 22px #ffe49022,inset 0 0 20px #7ceaff33}.magic-card-back:before,.magic-card-back:after{content:'✦';position:absolute;color:#ffe77c;font-size:24px;text-shadow:0 0 14px #ffe500;top:8%;left:9%}.magic-card-back:after{top:auto;left:auto;right:9%;bottom:9%;font-size:17px}.memory-card.open{animation:magic-reveal .38s ease-out}.memory-card.matched{animation:pair-glow 1.15s ease-out}.pair-magic{position:absolute;inset:0;pointer-events:none;z-index:4;overflow:hidden}.pair-magic i{position:absolute;left:50%;top:45%;font-style:normal;font-size:30px;color:#ffd943;text-shadow:0 0 12px #fff8b0;opacity:0;animation:pair-stars 1.4s ease-out both;--tx:-65px;--ty:-60px}.pair-magic i:nth-child(2){--tx:65px;--ty:-65px;animation-delay:.08s}.pair-magic i:nth-child(3){--tx:0px;--ty:-80px;animation-delay:.14s}.pair-magic i:nth-child(4){--tx:-65px;--ty:55px;animation-delay:.06s}.pair-magic i:nth-child(5){--tx:70px;--ty:50px;animation-delay:.12s}.memory-cheer{min-height:54px;display:flex;justify-content:center;align-items:center;gap:10px;max-width:820px;margin:16px auto 0!important;padding:10px 14px;border-radius:16px;line-height:1.4;font-size:15px}.memory-cheer.celebrating{background:linear-gradient(110deg,#ffdf66,#fff4b8);color:#12467b;box-shadow:0 5px 20px #001d6044;animation:cheer-pop .65s ease-out}.memory-cheer.celebrating:before{content:'✨';font-size:26px;flex-shrink:0}@keyframes magic-reveal{from{transform:perspective(650px) rotateY(-65deg) scale(.93)}to{transform:perspective(650px) rotateY(0) scale(1)}}@keyframes pair-glow{0%{transform:scale(1)}35%{transform:scale(1.045);box-shadow:0 0 28px #ffe77c}100%{transform:scale(1)}}@keyframes pair-stars{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}20%{opacity:1}100%{opacity:0;transform:translate(var(--tx),var(--ty)) scale(1.25) rotate(40deg)}}@keyframes cheer-pop{0%{transform:scale(.9);opacity:.4}65%{transform:scale(1.025);opacity:1}100%{transform:scale(1)}}html[data-motion=off] .memory-card,html[data-motion=off] .memory-cheer,html[data-motion=off] .pair-magic i{animation:none!important}html[data-motion=off] .pair-magic{display:none}@media(prefers-reduced-motion:reduce){.memory-card,.memory-cheer,.pair-magic i{animation:none!important}.pair-magic{display:none}}@media(max-width:600px){.memory-cheer{font-size:12px;min-height:58px}.magic-card-stars{font-size:13px;letter-spacing:4px}}
