.bingo{max-width:calc(880px + 2 * var(--gutter));margin-inline:auto;padding:calc(clamp(40px,6vw,80px)) var(--gutter) calc(clamp(72px,10vw,120px))}.bingo-cell,.bingo__head{text-align:center}.bingo__title{margin-top:8px;font-size:calc(clamp(40px,6vw,64px));line-height:1;letter-spacing:-.04em}.bingo__lead{max-width:44ch;margin:16px auto 0;font-size:17px;color:var(--text-2)}.bingo-status{min-height:44px;display:grid;place-items:center;margin:24px 0 12px}.bingo-status__content{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:15px;font-weight:650}.bingo-status__content .ico{fill:currentColor}.bingo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.bingo-cell{position:relative;aspect-ratio:1;display:grid;place-items:center;padding:8px;border:1px solid var(--line);border-radius:var(--r);background:var(--sheet);color:var(--text);font:inherit;font-size:14px;font-weight:600;line-height:1.25;cursor:pointer;transition:background-color .15s,border-color .15s}.bingo-cell:hover{border-color:var(--line-strong);background:var(--raise)}.bingo-cell--dense{font-size:13px}.bingo-cell.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--sheet))}.bingo-cell.is-selected:after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.bingo-cell__text{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.bingo-cell__tip{position:absolute;left:50%;bottom:calc(100% + 8px);z-index:5;width:max-content;max-width:220px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--sheet);color:var(--text-2);font-size:13px;font-weight:450;line-height:1.4;text-align:left;opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:opacity .15s,transform .15s,visibility .15s;pointer-events:none}.bingo-cell:focus-visible .bingo-cell__tip,.bingo-cell:hover .bingo-cell__tip{opacity:1;visibility:visible;transform:translate(-50%)}.bingo__credit{margin-top:24px;text-align:center;font-size:13px;color:var(--text-3)}.bingo__credit a{color:var(--text-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-strong)}.bingo__credit a:hover{color:var(--text)}@media(max-width:640px){.bingo-grid{gap:4px}.bingo-cell{padding:4px 3px;border-radius:6px;font-size:10px;font-weight:600;line-height:1.2}.bingo-cell--dense{font-size:9px}.bingo-cell__tip{display:none}}