.bp [hidden]{display:none!important}.bp{max-width:460px;margin:0 auto}.bp-scores{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.bp-score{flex:1 1 68px;padding:6px 8px;border-radius:8px;background:var(--panel);border:1px solid var(--line);text-align:center;line-height:1.2}.bp-score span{display:block;font-size:11px;color:var(--muted)}.bp-score b{font-size:19px;font-variant-numeric:tabular-nums}.bp-score.is-hot b{color:var(--accent)}.bp-actions{display:flex;gap:8px;margin-bottom:10px}.bp-actions .btn{flex:1}.bp-boardwrap{position:relative}.bp-board{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;padding:6px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);touch-action:manipulation;-webkit-user-select:none;user-select:none}.bp-board.is-armed{touch-action:none}.bp-cell{aspect-ratio:1;border-radius:4px;background:var(--panel);transition:background-color 90ms ease}.bp-cell.on{background:var(--accent)}.bp-cell.ok{background:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:inset 0 0 0 2px var(--accent)}.bp-cell.bad{background:color-mix(in srgb,var(--err) 30%,transparent);box-shadow:inset 0 0 0 2px var(--err)}.bp-cell.clearing{background:var(--text);animation:bp-flash .17s ease-out}@keyframes bp-flash{0%{transform:scale(1)}to{transform:scale(.72)}}@media(prefers-reduced-motion:reduce){.bp-cell.clearing{animation:none}}.bp-tray{display:flex;gap:8px;margin-top:10px}.bp-slot{flex:1;display:flex;align-items:center;justify-content:center;min-height:74px;padding:8px;border-radius:10px;background:var(--panel);border:1px solid var(--line);cursor:pointer;-webkit-tap-highlight-color:transparent}.bp-slot.is-sel{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.bp-slot.is-used{opacity:.35;cursor:default}.bp-slot.is-dead{opacity:.5}.bp-mini{display:grid;gap:2px}.bp-mini i{display:block;width:11px;height:11px;border-radius:2px}.bp-mini i.on{background:var(--accent)}.bp-hint{margin:10px 0 0;font-size:13px;color:var(--muted)}.bp-over{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:10px;background:color-mix(in srgb,var(--bg) 88%,transparent);text-align:center}.bp-over-title{margin:0;font-size:24px;font-weight:700}.bp-over-sub{margin:0;font-size:14px;color:var(--muted)}.bp-over-btns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
