:root{color-scheme:dark;--bg:#121323;--card:#23243b;--muted:#bdb8d2;--border:rgba(255,255,255,.12);--accent:#bea8ff;--ink:#f9f5ff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 8% 8%,#303059 0,transparent 35%),radial-gradient(ellipse at 92% 90%,#2d2341 0,transparent 40%),var(--bg);color:var(--ink);font:15px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
button,a{font:inherit}button{cursor:pointer}a{color:#d8c7ff}a:hover{color:#fff}a:focus-visible,button:focus-visible{outline:3px solid #e1d3ff;outline-offset:4px}
.shell{max-width:1050px;margin:auto;padding:25px 25px 55px}
.header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:5px 0 43px;flex-wrap:wrap}
.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);font-size:22px;font-weight:850;letter-spacing:-.8px;text-decoration:none}
.brand img{width:38px;height:38px;border-radius:10px}
nav{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
nav a{text-decoration:none;color:#c4c0d8;font-size:13px;padding:8px 13px;border-radius:13px;font-weight:750}
nav a:hover,nav a.current{background:#343352;color:#fff}
main{min-height:55vh}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:850;text-transform:uppercase;color:#d4bcff;margin-bottom:8px}
h1{font-size:clamp(37px,5vw,62px);font-weight:900;letter-spacing:-2.7px;line-height:1.08;margin:0 0 14px}
h2{font-size:24px;letter-spacing:-.6px;line-height:1.2;margin:0 0 14px}h3{font-size:17px;letter-spacing:-.2px;margin:0 0 8px}
p{color:#c6c2d8;margin:0 0 17px}strong{color:#f4edff}
.lead{font-size:17px;max-width:650px;line-height:1.65}
.flex-between{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:32px 0}
.panel,.game-box{background:rgba(35,36,59,.9);border:1px solid var(--border);border-radius:23px;padding:24px}
.panel p:last-child{margin-bottom:0}
.btn{border:1px solid #625d83;background:#373653;color:white;border-radius:13px;padding:11px 18px;font-size:14px;font-weight:800}
.btn:hover{background:#4a456c}.btn.primary{background:#bea8ff;color:#241c3d;border-color:#bea8ff}.btn.primary:hover{background:#d6c6ff}
.btn[disabled]{opacity:.5;cursor:default}
.game-frame{display:grid;grid-template-columns:minmax(0,570px) minmax(220px,1fr);align-items:start;gap:22px;margin-top:26px}
.game-box{padding:18px}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:14px}
.stat{padding:12px;background:#34334e;border-radius:13px;text-align:center}
.stat small{display:block;color:#aaa4c3;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;font-weight:850}
.stat span{display:block;font-weight:900;font-size:27px;line-height:1.35;font-variant-numeric:tabular-nums}
.memory-grid,.slide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;aspect-ratio:1;touch-action:manipulation}
.memory-card,.slide-tile{border:0;border-radius:14px;background:#43415d;color:#eee8ff;font-size:clamp(23px,4vw,45px);font-weight:900;display:flex;align-items:center;justify-content:center;min-width:0;transition:background .15s,transform .15s}
.memory-card:hover,.slide-tile:not(:disabled):hover{transform:translateY(-2px)}
.memory-card.face-down{background:linear-gradient(135deg,#7063a0,#494768);color:#e9ddff}
.memory-card.matched{background:#2a665e;color:#f8fff9}
.slide-grid{background:#34334c;padding:9px;border-radius:17px}
.slide-tile{background:#beb0f6;color:#30264f;font-variant-numeric:tabular-nums}
.slide-tile.empty{background:transparent;cursor:default}
.slide-tile:disabled{opacity:1}
.info-line{margin:14px 0 0;color:#c6c2da;font-size:13px;min-height:25px}
.tip-list{padding-left:22px;color:#c5c1db}
.tip-list li{margin-bottom:11px}
.tag{display:inline-block;font-size:11px;letter-spacing:.9px;text-transform:uppercase;border:1px solid #6c648b;background:#393652;color:#e1d5ff;border-radius:20px;padding:3px 10px;font-weight:850;margin-bottom:12px}
.foot{border-top:1px solid rgba(255,255,255,.1);margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;color:#9b96b6;font-size:12px}
.foot a{text-decoration:none;color:#aeadc7}
.note{padding:14px 17px;border-left:3px solid #bea8ff;background:#25233c;color:#d0c9df;border-radius:7px;margin:20px 0}
@media(max-width:760px){.shell{padding:16px 16px 30px}.header{padding-bottom:28px;gap:12px}.game-frame{grid-template-columns:1fr}.panels{grid-template-columns:1fr}.game-box{padding:12px}nav a{padding:7px 10px}.memory-grid,.slide-grid{gap:7px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}