.bpc{--bpc-ink:#173f43;--bpc-accent:#005f64;color:var(--bpc-ink);font:16px/1.5 system-ui,sans-serif;max-width:960px;margin:auto;padding:clamp(12px,3vw,28px);background:#f8f5eb;border:1px solid #c9d6cf;border-radius:16px}.bpc h2{font-size:clamp(26px,4vw,36px);line-height:1.15;margin:0 0 12px}.bpc p{max-width:75ch}.bpc button{font:inherit;cursor:pointer;color:inherit}.bpc button:focus-visible,.bpc input:focus-visible{outline:3px solid #ad4307;outline-offset:3px}.bpc-controls{display:flex;flex-wrap:wrap;gap:8px}.bpc-controls button{border:1px solid #72958d;background:#fffdf6;border-radius:8px;min-height:44px;padding:8px 15px;font-weight:650}.bpc-controls button:disabled{opacity:.5;cursor:default}.bpc-status{min-height:28px;font-weight:650}.bpc-board-scroll{overflow-x:auto;padding:4px 8px 8px 0}.bpc-mahjong{position:relative;height:426px;min-width:408px;max-width:680px;margin:auto;background:#dbe8dc;border-radius:12px}.bpc .bpc-tile{position:absolute;width:calc(12.5% - 6px);height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #668d7d;border-bottom:5px solid #6f9081;border-radius:7px;background:#fffdf2;box-shadow:2px 3px 0 #44675b;padding:2px;touch-action:manipulation}.bpc-tile svg{width:38px;height:38px;stroke:#12616a;stroke-width:2.4;fill:none;stroke-linejoin:round;stroke-linecap:round}.bpc-tile span{font-size:11px;font-weight:750}.bpc .bpc-tile.blocked{background:#e0e2d3;border-color:#77847b}.bpc .bpc-tile.selected{background:#ffd980;border:3px solid #9a4b0b}.bpc .bpc-tile.hint{background:#ecf6fd;border:3px dashed #005a96}.bpc-crossword-wrap{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:28px;align-items:start}.bpc-grid{display:grid;grid-template-columns:repeat(5,1fr);border:2px solid #173f43;background:#173f43;gap:1px}.bpc-cell{position:relative;aspect-ratio:1;background:white;display:block;min-width:0}.bpc-cell>span{position:absolute;left:4px;top:0;font-size:12px;font-weight:700;pointer-events:none;z-index:1}.bpc-cell input{position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;border:0;border-radius:0;background:transparent;text-align:center;text-transform:uppercase;font:700 clamp(24px,5vw,36px)/1 system-ui;color:#163f43;padding:10px 0 0}.bpc-cell.word{background:#d9edeb}.bpc-cell.active{background:#ffd980}.bpc-cell.incorrect{outline:3px dashed #a43219;outline-offset:-5px}.bpc-clues{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bpc-clues h3{margin:0 0 8px;font-size:19px}.bpc-clues button{display:block;text-align:left;background:none;border:0;border-left:3px solid transparent;width:100%;padding:7px;min-height:44px;font-size:15px}.bpc-clues button.active{background:#d9edeb;border-left-color:#005f64}.bpc-current{background:#e3eade;padding:12px;border-radius:8px;font-weight:650}.bpc-help{font-size:14px}.bpc [aria-disabled=true]{cursor:not-allowed}@media(max-width:700px){.bpc-crossword-wrap{grid-template-columns:1fr}.bpc-grid{width:min(100%,360px);margin:auto}.bpc-clues{gap:8px}.bpc-mahjong{height:426px}}@media(prefers-reduced-motion:reduce){.bpc *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.bpc-block{background:#173f43;aspect-ratio:1}
