/* ── 큐비트 놀이판 /qubit/ ────────────────────────────────
   binary.css(판·관문·조작줄)를 그대로 얹고, 큐비트 고유 부품만 여기 둔다. */

.qb-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 10px}
.qb-box{padding:14px 12px 12px;border:1px solid var(--ink-3,rgba(140,160,200,.14));border-radius:11px;
  display:flex;flex-direction:column;align-items:center;gap:8px}
.qb-box-h{margin:0 0 2px;font-size:12px;letter-spacing:.06em;opacity:.6;text-transform:uppercase}
.qb-box .bn-ctrl{margin-top:2px}
.qb-bigbit{width:96px;padding:14px 4px 12px}

.qb-dial{width:120px;height:120px;display:block}
.qb-dial-ring{fill:none;stroke:var(--ink-3,rgba(140,160,200,.3));stroke-width:1.5}
.qb-dial-t{font-size:11px;fill:currentColor;opacity:.6}
.qb-needle{stroke:var(--brass,#c8a86b);stroke-width:3;stroke-linecap:round;transition:transform .2s;
  transform-origin:60px 60px}
.qb-dial-pin{fill:var(--brass,#c8a86b)}
.qb-range{width:100%;max-width:220px;accent-color:var(--brass,#c8a86b)}
.qb-prob{margin:0;font-size:13.5px;font-family:'IBM Plex Mono',monospace;opacity:.85}
.qb-one{margin:0;min-height:1.6em;font-family:'Gowun Batang',serif;font-size:20px;color:var(--brass,#c8a86b)}
.qb-mini{margin:0;font-size:12px;opacity:.6;text-align:center}

/* 결과 막대 */
.qb-hist{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:4px}
.qb-hist4{grid-template-columns:repeat(4,1fr);margin-top:12px}
.qb-h{display:flex;flex-direction:column;align-items:center;gap:4px}
.qb-h-bar{width:100%;height:70px;display:flex;align-items:flex-end;border-bottom:1px solid var(--ink-3,rgba(140,160,200,.3))}
.qb-h-fill{width:100%;background:var(--brass,#c8a86b);opacity:.85;border-radius:3px 3px 0 0;transition:height .3s}
.qb-h-fill.is-zero{background:transparent}
.qb-h-lab{font-family:'IBM Plex Mono',monospace;font-size:12px;opacity:.8}
.qb-h-n{font-size:11px;opacity:.55}

/* 판 2 */
.qb-coin{margin:6px 0;font-family:'Gowun Batang',serif;font-size:34px;color:var(--cyan,#6fb7c9)}
.qb-amp{width:100%;display:flex;flex-direction:column;gap:7px;margin:4px 0}
.qb-amp-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:12px}
.qb-amp-row span{opacity:.7;white-space:nowrap}
.qb-amp-row b{font-family:'IBM Plex Mono',monospace;font-weight:500;min-width:52px;text-align:right}
.qb-amp-bar{position:relative;height:14px;border-radius:7px;background:rgba(140,160,200,.12);overflow:hidden}
.qb-amp-bar::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(140,160,200,.4)}
.qb-amp-fill{position:absolute;top:0;bottom:0;background:var(--brass,#c8a86b);transition:.25s}
.qb-amp-fill.is-neg{background:var(--cyan,#6fb7c9)}

/* 판 3 */
.qb-count{margin-top:22px;padding-top:16px;border-top:1px dashed var(--ink-3,rgba(140,160,200,.2));
  display:flex;flex-direction:column;align-items:center;gap:8px}
.qb-count-n{margin:0;font-size:14px;text-align:center}
.qb-count-n b{font-family:'Gowun Batang',serif;font-size:20px;color:var(--brass,#c8a86b);word-break:break-all}

@media (max-width:560px){
  .qb-pair{grid-template-columns:1fr}
  .qb-hist4{grid-template-columns:repeat(4,1fr)}
}

/* ── 따라하기·뜻·판 4 (2026-09-02, 중학생 눈높이 개편) ── */
.qb-steps{margin:0 0 16px;padding:12px 14px 12px 30px;border-left:2px solid var(--brass,#c8a86b);
  background:rgba(200,168,107,.05);border-radius:0 9px 9px 0;font-size:13.5px;line-height:1.75}
.qb-steps li{margin:2px 0}
.qb-mean{margin:12px 0 0;padding:11px 13px;border-radius:8px;font-size:13.5px;line-height:1.7;
  background:rgba(111,183,201,.08);border:1px solid rgba(111,183,201,.28);min-height:1.7em;transition:.2s}
.qb-mean.is-idle{opacity:.45;font-style:italic}
.qb-ctrl-col{flex-direction:column;align-items:stretch;width:100%}
.qb-ctrl-col button{text-align:left}
.qb-ctrl-col button.is-done{border-color:var(--brass,#c8a86b);opacity:.7}

.qb-cands{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 14px}
.qb-cand{border:1px solid var(--ink-3,rgba(140,160,200,.16));border-radius:10px;padding:10px 6px 8px;
  display:flex;flex-direction:column;align-items:center;gap:6px;transition:.2s}
.qb-cand .qc-box{font-size:26px;line-height:1}
.qb-cand .qc-lab{font-family:'IBM Plex Mono',monospace;font-size:11.5px;opacity:.6}
.qb-cand .qc-vbar{width:100%;height:56px;position:relative;border-top:1px solid rgba(140,160,200,.35);
  border-bottom:1px solid rgba(140,160,200,.35)}
.qb-cand .qc-vbar::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(140,160,200,.4)}
.qb-cand .qc-vfill{position:absolute;left:25%;right:25%;background:var(--brass,#c8a86b);border-radius:3px;transition:.25s}
.qb-cand .qc-vfill.is-neg{background:var(--cyan,#6fb7c9)}
.qb-cand .qc-p{font-family:'IBM Plex Mono',monospace;font-size:12px}
.qb-cand.is-opened{border-color:rgba(140,160,200,.4);background:rgba(140,160,200,.06)}
.qb-cand.is-found{border-color:var(--brass,#c8a86b);background:rgba(200,168,107,.12)}
@media (max-width:560px){.qb-cand .qc-box{font-size:22px}}

/* ── 2026-10-01 그림판으로 손봄 ─────────────────────────── */
.qb-hide{position:absolute!important;width:1px;height:1px;opacity:0;pointer-events:none}
/* 보통 스위치 = 이진법 판의 전구 */
.qb-bulb{position:relative;display:block;margin:6px auto 4px;width:96px;padding:6px 0 0;border:0;background:none;cursor:pointer}
.qb-bulb img{display:block;width:100%;height:auto;pointer-events:none}
.qb-bulb .bn-digit{position:absolute;left:50%;bottom:4px;transform:translateX(-50%);font-family:var(--mono);font-size:15px;color:var(--chalk);background:var(--ink-2);border:1px solid var(--ink-3);border-radius:6px;padding:1px 8px}
/* 큐비트 = 놋쇠 다이얼 — 바늘을 손가락으로 돌린다 */
.qb-dial2{position:relative;width:min(220px,70%);aspect-ratio:1;margin:6px auto 8px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.qb-dial2.is-drag{cursor:grabbing}
.qb-dial2:focus-visible{outline:2px solid var(--brass);outline-offset:4px;border-radius:50%}
.qb-face{display:block;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}
.qb-needle2{position:absolute;left:50%;top:50%;height:82%;width:auto;transform:translate(-50%,-50%);transform-origin:50% 50%;pointer-events:none;transition:transform .12s;filter:drop-shadow(1px 2px 2px rgba(0,0,0,.35))}
.qb-dt{position:absolute;left:50%;transform:translateX(-50%);font-size:12px;font-weight:600;color:#5b4a2a;pointer-events:none}
.qb-dt-top{top:15%}.qb-dt-bot{bottom:15%}
/* 동전 */
.qb-coin2{text-align:center;margin:6px 0}
.qb-coin2 img{width:120px;height:120px;display:block;margin:0 auto 4px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}
.qb-coin2 img.is-flip{animation:qb-flip .5s ease-in-out}
@keyframes qb-flip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg) translateY(-14px)}100%{transform:rotateY(0)}}
.qb-coin2 span{font-size:14px;color:var(--chalk)}
/* 보물 상자 */
.qb-cand .qc-box{width:64px;height:64px;object-fit:contain;display:block;margin:0 auto 2px;transition:transform .3s}
.qb-cand.is-found .qc-box{transform:scale(1.12);filter:drop-shadow(0 0 12px rgba(255,210,100,.7))}
@media (prefers-reduced-motion:reduce){.qb-coin2 img.is-flip{animation:none}.qb-needle2{transition:none}}
