.memory-page{padding-bottom:70px}.memory-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:18px 0 6px}.memory-breadcrumbs a:hover{color:var(--blue)}.memory-intro{padding:16px 0 30px;text-align:center;display:flex;flex-direction:column;align-items:center}.memory-intro .eyebrow{margin-bottom:6px;text-align:center}.memory-intro h1{margin:8px auto 14px;font-size:clamp(2.2rem,4.5vw,3.4rem);letter-spacing:-.035em;text-align:center}.memory-intro p{max-width:680px;margin:0 auto;font-size:15.5px;line-height:1.7;text-align:center}.memory-shell{max-width:760px;margin:0 auto 56px;padding:30px;border-radius:24px;position:relative;box-shadow:0 16px 40px #0f172a0f;background:var(--paper);border:1px solid var(--line)}.memory-player-modes{display:flex;justify-content:center;gap:8px;margin-bottom:22px;background:var(--wash);padding:5px;border-radius:14px;width:fit-content;margin-left:auto;margin-right:auto;border:1px solid var(--line)}.memory-mode-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:10px;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:all .16s ease}.memory-mode-btn:hover{color:var(--ink)}.memory-mode-btn.is-active{background:var(--paper);color:var(--blue);box-shadow:0 2px 8px #0f172a14}.mode-icon-svg{flex-shrink:0}.memory-controls-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.memory-categories{display:flex;gap:7px;flex-wrap:wrap}.memory-cat-btn{border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);padding:7px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;transition:all .16s ease}.memory-cat-btn:hover{border-color:var(--blue)}.memory-cat-btn.is-active{background:#edf2ff;border-color:var(--blue);color:var(--blue)}.cat-svg{flex-shrink:0}.memory-quick-actions{display:flex;gap:8px;align-items:center}.memory-btn-action{min-height:38px;padding:0 13px;font-size:13px;display:inline-flex;align-items:center;gap:6px;border-radius:10px}.btn-svg,.sound-on-icon,.sound-off-icon{width:15px;height:15px;flex-shrink:0}.memory-difficulty-bar{width:100%;margin-bottom:20px}.memory-difficulties{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.memory-diff-btn{border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);padding:10px 14px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:2px;transition:all .16s ease}.memory-diff-btn strong{font-size:13px;font-weight:700}.memory-diff-btn span{font-size:11px;color:var(--muted)}.memory-diff-btn:hover{border-color:var(--blue)}.memory-diff-btn.is-active{background:#edf2ff;border-color:var(--blue);color:var(--blue);box-shadow:0 4px 12px #315ee81f}.memory-diff-btn.is-active span{color:var(--blue);opacity:.85}.memory-daily-banner{width:100%;background:linear-gradient(135deg,#dcfce7,#ecfdf5);border:1px solid #86efac;border-radius:16px;padding:14px 18px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:14px}.daily-banner-info{display:flex;flex-direction:column;gap:3px}.daily-badge{font-size:10px;font-weight:800;color:#15803d;letter-spacing:.06em;display:inline-flex;align-items:center;gap:4px}.daily-banner-info strong{font-size:14px;color:#14532d}.daily-status-tag{font-size:12px;font-weight:600;color:#166534}.daily-status-tag.is-completed{color:#047857;font-weight:800}.exit-daily-btn{min-height:36px;padding:0 12px;font-size:12px;border-radius:8px;display:inline-flex;align-items:center;gap:6px}.memory-stats-bar{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:var(--wash);border:1px solid var(--line);border-radius:16px;padding:12px 14px;text-align:center;margin-bottom:12px}.stat-cell small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin-bottom:3px}.stat-cell strong{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:-.02em}.memory-progress-wrap{width:100%;height:6px;background:var(--line);border-radius:10px;overflow:hidden;margin-bottom:22px}.memory-progress-bar{height:100%;background:linear-gradient(90deg,#315ee8,#10b981);border-radius:10px;transition:width .25s ease-out}.memory-board-wrapper{width:100%;position:relative;margin:0 auto 22px;min-height:320px;display:flex;align-items:center;justify-content:center;overflow-x:auto;padding:6px 2px;-webkit-overflow-scrolling:touch}.memory-grid{--memory-zoom: 1;--base-grid-max: 540px;width:calc(min(100%,var(--base-grid-max)) * var(--memory-zoom, 1));max-width:none;flex-shrink:0;display:grid;gap:calc(12px * var(--memory-zoom, 1));perspective:1000px;user-select:none;touch-action:manipulation;transition:width .15s ease}.memory-grid.grid-easy,.memory-grid.grid-medium{--base-grid-max: 540px;grid-template-columns:repeat(4,1fr)}.memory-grid.grid-hard{--base-grid-max: 660px;grid-template-columns:repeat(6,1fr)}.memory-card{aspect-ratio:1 / 1.08;position:relative;cursor:pointer;border-radius:16px;perspective:1000px;outline:none;transition:transform .18s ease}.memory-card:focus-visible .memory-card-inner{box-shadow:0 0 0 3px #93abff}.memory-card-inner{position:relative;width:100%;height:100%;border-radius:16px;text-align:center;transition:transform .32s cubic-bezier(.2,.85,.25,1);transform-style:preserve-3d}.memory-card.is-flipped .memory-card-inner,.memory-card.is-matched .memory-card-inner{transform:rotateY(180deg)}.card-front{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:16px;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:linear-gradient(135deg,#1e3a8a,#1e40af,#2563eb);border:1.5px solid rgba(255,255,255,.22);box-shadow:0 6px 14px #1e3a8a33,inset 0 0 0 2px #ffffff1f;display:flex;align-items:center;justify-content:center;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.memory-card:hover .card-front{transform:translateY(-2px);border-color:#fff6;box-shadow:0 10px 22px #1e3a8a47}.card-back-pattern{display:flex;align-items:center;justify-content:center}.card-back-emblem{width:36px;height:36px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;color:#ffffffe6}.card-emblem-svg{width:20px;height:20px}.card-back{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:16px;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(180deg);background:linear-gradient(145deg,#fff,#f8fafc);border:1.5px solid #cbd5e1;box-shadow:0 6px 16px #0f172a14;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;overflow:hidden}.memory-card.is-matched .card-back{background:linear-gradient(145deg,#f0fdf4,#dcfce7);border-color:#22c55e;box-shadow:0 4px 14px #22c55e33}.card-matched-badge{position:absolute;top:6px;right:8px;width:18px;height:18px;border-radius:50%;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center}.memory-card.is-hinted{animation:hint-glow 1.4s ease-in-out infinite alternate;z-index:5}.memory-card.is-hinted .card-front,.memory-card.is-hinted .card-back{border-color:#f59e0b!important;box-shadow:0 0 0 3px #f59e0b80,0 8px 24px #f59e0b59!important}@keyframes hint-glow{0%{transform:scale(1)}to{transform:translateY(-3px) scale(1.03)}}.card-symbol{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.card-icon svg{width:clamp(34px,7vw,44px);height:clamp(34px,7vw,44px)}.card-shape svg{width:clamp(34px,7vw,44px);height:clamp(34px,7vw,44px)}.card-number-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.card-number-badge{font-size:clamp(2rem,5.5vw,2.7rem);font-weight:900;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.card-number-sub{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.card-color-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.card-color-swatch{width:clamp(32px,6.5vw,42px);height:clamp(32px,6.5vw,42px);border-radius:50%;box-shadow:0 3px 8px #00000026;border:2px solid #ffffff;display:flex;align-items:center;justify-content:center;color:#fff}.card-color-label{font-size:11px;font-weight:700;color:var(--ink);letter-spacing:-.01em;text-align:center}.memory-overlay{position:absolute;inset:0;background:#0b132bb8;backdrop-filter:blur(6px);border-radius:20px;display:flex;align-items:center;justify-content:center;padding:20px;z-index:20;animation:fade-in .2s ease-out}.memory-overlay[hidden]{display:none}.memory-overlay-box{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:32px 28px;max-width:460px;width:100%;text-align:center;box-shadow:0 20px 50px #00000040;position:relative}.victory-box{max-width:480px;padding:32px 26px}.victory-close-btn{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;border:0;background:var(--wash);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .16s ease}.victory-close-btn:hover{color:var(--ink);background:var(--line)}.victory-trophy-badge{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1.5px solid #f59e0b;color:#b45309;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px #f59e0b40}.victory-mode-badge{display:inline-block;padding:4px 12px;border-radius:20px;background:var(--wash);border:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.victory-box h2{font-size:24px;letter-spacing:-.03em;margin:4px 0 6px}.victory-stars{display:flex;justify-content:center;gap:6px;margin:14px 0 18px}.victory-stars svg.star{color:#e2e8f0;transition:transform .2s ease}.victory-stars svg.star.active{color:#f59e0b;filter:drop-shadow(0 2px 6px rgba(245,158,11,.4))}.victory-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:var(--wash);border-radius:14px;padding:14px;margin-bottom:18px;border:1px solid var(--line)}.victory-stat-item{display:flex;flex-direction:column;gap:2px}.victory-stat-item small{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.victory-stat-item strong{font-size:15px;font-weight:800;color:var(--ink)}.victory-pb-banner{background:#fef3c7;border:1px solid #fde68a;color:#92400e;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:700;margin-bottom:18px;display:flex;align-items:center;justify-content:center;gap:6px}.victory-pb-banner[hidden]{display:none}.victory-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.victory-actions .btn{flex:1 1 120px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;padding:0 16px}.primary-victory-btn{background:var(--blue);color:#fff}.kids-toast{position:absolute;top:20px;left:50%;transform:translate(-50%) translateY(-10px);background:#10b981;color:#fff;border-radius:99px;padding:10px 20px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;box-shadow:0 10px 25px #10b98159;z-index:15;opacity:0;pointer-events:none;transition:all .25s cubic-bezier(.2,.85,.25,1)}.kids-toast[hidden]{display:none}.kids-toast.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.kids-toast-icon{display:flex;align-items:center}.memory-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;flex-wrap:wrap}.toolbar-btn{min-height:44px;padding:0 18px;font-size:13.5px;border-radius:12px;display:inline-flex;align-items:center;gap:7px}.memory-footer-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.memory-help-text{font-size:12.5px;color:var(--muted);margin:0;line-height:1.5}.reset-stats-btn{font-size:12px;color:var(--muted);text-decoration:underline;background:transparent;border:0;cursor:pointer;white-space:nowrap;padding:4px}.reset-stats-btn:hover{color:#ef4444}.share-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(20px);background:#17233b;color:#fff;padding:10px 20px;border-radius:99px;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:all .2s ease;z-index:100}.share-toast.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.wrap.game-article-content.memory-article{max-width:760px;margin:54px auto 48px;line-height:1.72;font-size:16px;color:var(--ink)}.wrap.game-article-content.memory-article h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin:36px 0 14px;text-align:left}.wrap.game-article-content.memory-article h2:first-child{margin-top:0}.wrap.game-article-content.memory-article h3{font-size:18px;line-height:1.3;letter-spacing:-.02em;margin:26px 0 10px;text-align:left}.wrap.game-article-content.memory-article h4{font-size:14px;font-weight:700;margin:0 0 10px;text-align:left}.wrap.game-article-content.memory-article p{font-size:16px;line-height:1.72;margin:0 0 16px;text-align:left}.wrap.game-article-content.memory-article ol,.wrap.game-article-content.memory-article ul{padding-inline-start:24px;margin:0 0 20px}.wrap.game-article-content.memory-article li{font-size:16px;line-height:1.68;margin:0 0 8px;padding-inline-start:2px}.wrap.game-article-content.memory-article a{color:var(--blue);font-weight:600;text-decoration:underline;text-underline-offset:3px}.related-games-section{padding:56px 0 36px;border-top:1px solid var(--line);margin-top:48px}.related-games-head{max-width:620px;margin:0 auto 36px;text-align:center}.related-games-head h2{font-size:clamp(1.8rem,3.2vw,2.4rem);margin:10px 0 12px;letter-spacing:-.03em}.related-games-head p{font-size:15px;line-height:1.65;margin:0 auto}.related-games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.related-card{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;overflow:hidden;border-radius:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.related-card:hover{transform:translateY(-3px);border-color:#cfd8ef;box-shadow:0 14px 34px #17233b14}.related-visual{height:170px;position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#eaf0ff,#f6f3ff)}.related-orbit{position:absolute;width:140px;height:140px;border:1px dashed #cad5fa;border-radius:50%}.related-icon{position:relative;z-index:1;display:grid;gap:6px}.slide-icon{grid-template-columns:repeat(2,42px)}.slide-icon span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#315ee8;font-size:16px;font-weight:800;box-shadow:0 4px 12px #315ee81f}.reaction-icon{grid-template-columns:repeat(2,42px)}.reaction-icon span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;font-size:18px;box-shadow:0 4px 12px #17233b14}.ladder-icon{grid-template-columns:repeat(2,42px)}.ladder-icon span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#315ee8;font-size:16px;font-weight:800;box-shadow:0 4px 12px #315ee81f}.related-card-body{padding:18px;display:flex;flex-direction:column;flex:1}.related-labels{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:2px}.related-labels .pill{font-size:9px;letter-spacing:.04em}.difficulty-label{font-size:10px;color:var(--muted)}.related-card h3{font-size:17px;margin:0 0 8px;letter-spacing:-.02em}.related-card p{font-size:13px;line-height:1.6;margin:0 0 14px;flex:1}.related-play{font-size:13px;font-weight:700;color:var(--blue);display:inline-flex;align-items:center;gap:4px}html[data-theme=dark] .memory-shell{background:#151f3d;border-color:#293858;box-shadow:0 16px 40px #03081759}html[data-theme=dark] .memory-player-modes{background:#101932;border-color:#27375a}html[data-theme=dark] .memory-mode-btn{color:#94a3b8}html[data-theme=dark] .memory-mode-btn:hover{color:#f1f5f9}html[data-theme=dark] .memory-mode-btn.is-active{background:#1e293b;color:#93c5fd;box-shadow:0 2px 8px #0000004d}html[data-theme=dark] .memory-cat-btn,html[data-theme=dark] .memory-diff-btn{background:#111b36;border-color:#2c3e66;color:#e2e8f0}html[data-theme=dark] .memory-cat-btn:hover,html[data-theme=dark] .memory-diff-btn:hover{background:#23355e}html[data-theme=dark] .memory-cat-btn.is-active,html[data-theme=dark] .memory-diff-btn.is-active{background:#263866;border-color:#4b6cb7;color:#a9bcff}html[data-theme=dark] .memory-diff-btn.is-active span{color:#c2d0ff}html[data-theme=dark] .memory-stats-bar{background:#101932;border-color:#27375a}html[data-theme=dark] .memory-progress-wrap{background:#1c2b50}html[data-theme=dark] .card-front{background:linear-gradient(135deg,#0f172a,#172554,#1e3a8a);border-color:#93c5fd47;box-shadow:0 6px 14px #0006,inset 0 0 0 2px #93c5fd14}html[data-theme=dark] .card-back-emblem{background:#93c5fd1a;border-color:#93c5fd4d;color:#93c5fd}html[data-theme=dark] .card-back{background:linear-gradient(145deg,#151f3d,#101932);border-color:#27375a;color:#f1f5f9;box-shadow:0 4px 12px #0000004d}html[data-theme=dark] .card-color-label{color:#f1f5f9}html[data-theme=dark] .memory-card.is-matched .card-back{background:linear-gradient(145deg,#064e3b,#065f46);border-color:#10b981;box-shadow:0 4px 16px #10b98140}html[data-theme=dark] .card-matched-badge{background:#064e3b;color:#6ee7b7}html[data-theme=dark] .memory-overlay-box{background:#141f3d;border-color:#27375a}html[data-theme=dark] .victory-stats-grid{background:#101932;border-color:#27375a}html[data-theme=dark] .victory-trophy-badge{background:linear-gradient(135deg,#451a03,#78350f);border-color:#d97706;color:#fde68a}html[data-theme=dark] .victory-stars svg.star{color:#334155}html[data-theme=dark] .victory-stars svg.star.active{color:#f59e0b}html[data-theme=dark] .victory-pb-banner{background:#451a03;border-color:#78350f;color:#fde68a}html[data-theme=dark] .victory-close-btn{background:#1b294b;color:#94a3b8}html[data-theme=dark] .victory-close-btn:hover{color:#fff;background:#27375a}html[data-theme=dark] .memory-daily-banner{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#047857}html[data-theme=dark] .daily-badge{color:#a7f3d0}html[data-theme=dark] .daily-banner-info strong{color:#f0fdf4}html[data-theme=dark] .daily-status-tag{color:#6ee7b7}html[data-theme=dark] .daily-status-tag.is-completed{color:#a7f3d0}html[data-theme=dark] .related-visual{background:linear-gradient(145deg,#1b294b,#222345)}html[data-theme=dark] .related-orbit{border-color:#35466c}html[data-theme=dark] .related-icon span{background:#263553;color:#c2d0ff;box-shadow:0 8px 20px #03081759}@media(max-width:900px){.related-games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}@media(max-width:768px){.wrap.game-article-content.memory-article{width:calc(100% - 32px);margin-top:48px;margin-bottom:40px;font-size:15px}.wrap.game-article-content.memory-article h2{font-size:21px;margin-top:28px}.wrap.game-article-content.memory-article h3{font-size:17px}.wrap.game-article-content.memory-article p,.wrap.game-article-content.memory-article li{font-size:15px;line-height:1.68}.memory-shell{padding:20px 16px;border-radius:20px}}@media(max-width:640px){.memory-grid.grid-hard{grid-template-columns:repeat(4,1fr);--base-grid-max: 440px}}@media(max-width:560px){.memory-intro{padding:12px 0 22px}.memory-categories{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.memory-cat-btn{width:100%;justify-content:center;padding:9px 8px;font-size:12px}.memory-quick-actions{width:100%;justify-content:space-between}.memory-btn-action{flex:1;justify-content:center}.memory-diff-btn{padding:8px 6px;text-align:center;align-items:center}.memory-diff-btn strong{font-size:12px}.memory-diff-btn span{font-size:9px}.related-games-grid{grid-template-columns:1fr;gap:16px}.related-card{display:grid;grid-template-columns:110px minmax(0,1fr);min-height:150px}.related-visual{height:auto;min-height:150px}.related-orbit{width:96px;height:96px}.related-icon span{width:32px;height:32px;font-size:14px}.related-card-body{padding:14px 12px}.related-card h3{font-size:15px;margin:6px 0 4px}.related-card p{font-size:12px;line-height:1.5;margin-bottom:8px}.related-play{font-size:12px}}@media(max-width:420px){.memory-stats-bar{grid-template-columns:repeat(2,1fr);gap:8px}.memory-toolbar{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%}.toolbar-btn{width:100%;justify-content:center;padding:0 10px;font-size:12.5px}.victory-stats-grid{grid-template-columns:repeat(2,1fr);gap:8px}}@media(max-width:380px){.memory-shell{padding:16px 10px}.memory-grid{gap:8px}.related-card{grid-template-columns:96px minmax(0,1fr)}.related-icon span{width:28px;height:28px;font-size:12px}}@media(prefers-reduced-motion:reduce){.memory-card-inner,.memory-progress-bar,.related-card{transition:none!important;animation:none!important}.memory-card.is-hinted{animation:none!important}}
