.game-wrap{max-width:1040px;margin:auto;padding:28px 24px}.game-heading h1{margin-bottom:12px}.game-heading p{color:var(--muted);max-width:620px}.game-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:start;margin-top:24px}.pond-picture{border-radius:22px;overflow:hidden;background:var(--sky);border:1px solid #c7dde4}.pond-picture img{width:100%}.pond-picture figcaption{padding:18px 20px;font-size:.95rem;color:var(--muted)}.pond-picture{margin:0}.game-panel{background:white;border:1px solid var(--line);border-radius:24px;padding:24px}.game-progress{margin:0 0 10px;font-weight:750;color:var(--leaf)}.game-message{min-height:3.3em;margin-bottom:14px;color:var(--ink)}.pair-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pair-card{position:relative;display:grid;place-items:center;min-width:0;min-height:128px;width:100%;padding:10px 6px;border:3px solid #8ab6c5;border-radius:18px;background:var(--sky);color:var(--pond);box-shadow:0 4px 0 #c7dde4;cursor:pointer;transition:background .18s,box-shadow .18s}.pair-card:hover{background:#d8edf4}.pair-card:active{box-shadow:0 1px 0 #c7dde4}.pair-card .card-front,.pair-card .card-back{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%}.pair-card svg{display:block;width:80px;max-width:100%;height:80px;pointer-events:none}.pair-card .card-back svg{width:60px;height:60px}.card-number{font-size:1rem;font-weight:800}.friend-name{font-size:.8rem;line-height:1.3;font-weight:750}.pair-card[data-state="open"]{background:var(--paper);border-color:var(--pond)}.pair-card[data-state="matched"]{background:var(--soft-leaf);border-color:var(--leaf);box-shadow:0 4px 0 #d5e5cd;color:var(--leaf)}.match-label{font-size:.75rem;font-weight:750}.game-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.game-win{background:var(--soft-leaf);padding:18px;border-radius:18px;margin-top:24px}.game-win h2{font-size:1.25rem;margin-bottom:8px;color:var(--leaf)}.game-win p{margin:0}.game-help{margin-top:24px;color:var(--muted)}.game-help summary{cursor:pointer;font-weight:750;min-height:44px;padding:8px 0}.game-help ol{padding-left:24px}.game-help li{margin:8px 0}
@media(max-width:760px){.game-wrap{padding:24px 16px}.game-layout{grid-template-columns:1fr;gap:20px}.pond-picture{display:none}.game-panel{padding:20px}.game-heading h1{font-size:1.8rem}}
@media(max-width:380px){.game-panel{padding:16px}.pair-grid{gap:10px}.pair-card{min-height:114px;border-radius:14px}.pair-card svg{width:65px;height:65px}.game-controls .button{flex:1 1 auto}}
@media(prefers-reduced-motion:reduce){.pair-card{transition:none}}
