:root{color-scheme:dark;--bg:#071011;--panel:#0d1d1f;--panel-hi:#10282a;--line:#244a4e;--accent:#75ff2f;--accent-2:#55d7d0;--text:#e9f3ef;--muted:#9ab3ae;--good:#75ff2f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(1000px 600px at 8% -8%,#173b35 0,transparent 56%),radial-gradient(900px 500px at 100% 0,#132e42 0,transparent 48%),var(--bg);color:var(--text)}button,select{font:inherit}.page-shell{width:min(1460px,100%);margin:auto;padding:clamp(18px,3vw,46px)}.game-header{display:flex;gap:30px;align-items:end;justify-content:space-between;margin-bottom:20px}.eyebrow{margin:0 0 6px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.game-header h1{margin:0;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.95;letter-spacing:-.06em}.game-header h1 span{color:var(--accent)}.intro{max-width:670px;margin:16px 0 0;color:var(--muted);line-height:1.55}.controls{display:grid;min-width:min(100%,340px);gap:8px}.controls label{color:var(--muted);font-size:.84rem;font-weight:700}.controls select,.controls button{min-height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;background:var(--panel);color:var(--text)}.controls button{border-color:var(--accent);background:#123235;color:var(--text);font-weight:900;cursor:pointer}.controls button:disabled{cursor:wait;opacity:.6}.status-panel{display:grid;grid-template-columns:repeat(3,minmax(110px,auto)) 1fr;gap:1px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--line);margin-bottom:22px}.status-panel>div,.status-panel p{margin:0;padding:12px 15px;background:rgba(7,16,17,.94)}.status-panel span{display:block;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.status-panel strong{font-size:1.1rem}.status-panel p{align-self:stretch;color:var(--muted);display:flex;align-items:center;justify-content:flex-end;text-align:right}.board-wrap{overflow:auto;padding-bottom:8px}.board{display:grid;grid-template-columns:repeat(8,minmax(72px,1fr));gap:clamp(5px,.75vw,11px);min-width:690px;padding:clamp(7px,1vw,13px);border:1px solid var(--line);border-radius:18px;background:rgba(7,16,17,.72)}.card{position:relative;aspect-ratio:1;border:0;padding:0;border-radius:12px;cursor:pointer;perspective:800px;background:transparent}.card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.card[disabled]{cursor:default}.card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .36s cubic-bezier(.2,.75,.25,1)}.card.is-open .card-inner,.card.is-matched .card-inner{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;border-radius:11px;overflow:hidden}.card-back{background:linear-gradient(135deg,var(--panel-hi),#0a1c1e);border:1px solid #315e5a;color:var(--accent);font-size:clamp(1.4rem,3vw,3rem);font-weight:900}.card-back::before{content:"";position:absolute;inset:12%;border:1px solid rgba(117,255,47,.38);border-radius:50%}.card-front{transform:rotateY(180deg);border:2px solid #bfe4df;background:#fff}.card-front img{width:100%;height:100%;object-fit:cover}.card.is-matched .card-front{border-color:var(--good);box-shadow:0 0 17px rgba(117,255,47,.38)}dialog{max-width:min(420px,calc(100vw - 32px));border:1px solid var(--line);border-radius:18px;background:#0d1d1f;color:var(--text);padding:34px;text-align:center;box-shadow:0 25px 80px #000a}dialog::backdrop{background:#02090bbb}.win-icon{color:var(--accent);font-size:3rem}dialog h2{margin:.2rem 0}dialog p:not(.eyebrow){color:var(--muted);line-height:1.55}dialog button{border:0;border-radius:9px;padding:11px 18px;background:#123235;color:var(--text);font-weight:900;cursor:pointer}@media(max-width:760px){.game-header{align-items:stretch;flex-direction:column}.controls{min-width:0}.status-panel{grid-template-columns:repeat(3,1fr)}.status-panel p{grid-column:1/-1;justify-content:flex-start;text-align:left}.board{min-width:570px}}
