:root{--ink:#26384a;--paper:#fffdf5;--berry:#e85b67;--leaf:#5aa06e;--gold:#f1be4e}main.pairs-page{width:100%;max-width:none;min-height:calc(100svh - 58px);padding:clamp(22px,3vw,44px) clamp(14px,3vw,52px) 54px;background:#f5e6af url("assets/fruit-orchard.png") center/cover fixed}.game-shell{width:100%;margin:0;padding:clamp(18px,2.5vw,34px);border:1px solid #fff9e8;background:#fffdf5ed;box-shadow:0 18px 48px #57431b33;border-radius:28px}.game-heading{display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.eyebrow{margin:0 0 3px;color:#c64d58;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.game-heading h1{margin:0;color:var(--ink);font-size:clamp(42px,7vw,68px);letter-spacing:-.07em;line-height:.9}.game-heading p:not(.eyebrow){margin:11px 0 0;color:#67757c}.new-game,dialog button{border:0;border-radius:999px;padding:11px 16px;background:var(--ink);color:#fff;font:inherit;font-weight:750;cursor:pointer;white-space:nowrap}.new-game span{font-size:17px}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin:26px 0 9px;border:1px solid #e9dfcf;border-radius:16px;overflow:hidden;background:#fff}.stats div{padding:10px 18px;border-right:1px solid #e9dfcf}.stats div:last-child{border:0}.stats span,.stats small{display:block;color:#809093;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.stats strong{display:block;margin-top:1px;color:var(--ink);font-size:24px;line-height:1.1}.stats strong small{display:inline;font-size:13px;letter-spacing:0}.message{min-height:22px;margin:12px 1px 16px;color:#576b70;font-weight:650}.board{display:grid;grid-template-columns:repeat(8,1fr);gap:clamp(6px,1vw,11px)}.card{aspect-ratio:.76;border:0;padding:0;background:transparent;perspective:700px;cursor:pointer}.card-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.75,.3,1)}.card.flipped .card-inner,.card.matched .card-inner{transform:rotateY(180deg)}.card-back,.card-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:13px;backface-visibility:hidden;overflow:hidden}.card-back{gap:3px;background:linear-gradient(145deg,#e96770,#c83f57);border:3px solid #fff8e3;box-shadow:0 3px 0 #a9324b,0 7px 11px #7933442e;color:#fff0c5;text-shadow:0 1px #8e3042}.card-back:before,.card-back:after{content:"";position:absolute;width:90%;height:70%;border:1px solid #fff4c977;border-radius:45%;transform:rotate(36deg)}.card-back:after{transform:rotate(-36deg)}.card-back i{font-size:clamp(16px,2.5vw,27px);font-style:normal}.card-back b{font-size:clamp(8px,1.2vw,12px);letter-spacing:.06em}.card-face{transform:rotateY(180deg);background:linear-gradient(145deg,#fffdf2,#ffedb4);border:3px solid #fff;box-shadow:0 3px 0 #e1c87c,0 7px 11px #80672222;color:#394d57}.fruit{font-size:clamp(27px,4.3vw,55px);line-height:1;filter:drop-shadow(0 2px 1px #a16e2866)}.face-eyes{margin-top:-.45em;font-size:clamp(10px,1.6vw,18px);font-weight:900;letter-spacing:-.16em;color:#4f3a35}.card-face small{margin-top:6px;font-size:clamp(7px,1vw,11px);font-weight:800}.card.matched{animation:pop .45s ease}.card.matched .card-face{background:linear-gradient(145deg,#e4f5c6,#b9e1aa);box-shadow:0 3px 0 #7db46f,0 0 0 3px #fff}.card:focus-visible{outline:3px solid #284f67;outline-offset:3px;border-radius:13px}@keyframes pop{50%{transform:scale(1.08)}}dialog{border:0;border-radius:24px;max-width:350px;padding:30px;text-align:center;box-shadow:0 20px 60px #172b3c66}dialog::backdrop{background:#24394a88}.trophy{font-size:60px}dialog h2{margin:6px 0;font-size:27px;color:var(--ink)}dialog p:not(.eyebrow){color:#637177}dialog button{background:var(--berry);margin-top:6px}.site-footer{background:#fffdf5}@media(max-width:680px){main.pairs-page{padding:15px 8px 35px;background-attachment:scroll}.game-shell{border-radius:18px;padding:17px 12px}.game-heading h1{font-size:47px}.game-heading p:not(.eyebrow){font-size:13px}.new-game{padding:9px 12px;font-size:12px}.stats{margin-top:19px}.stats div{padding:8px 10px}.stats strong{font-size:20px}.board{gap:5px}.card-back,.card-face{border-radius:9px}.card-back{border-width:2px}.card-face{border-width:2px}.card-face small{margin-top:2px}}
