.dice-inquiry .main{overflow-y:auto;display:block}.dice-inquiry .qscroll{max-height:none;overflow:visible}.dice-inquiry .qbox .qt{font-size:19px;line-height:1.5}.dice-inquiry .qbox .ask{font-size:21px}.dice-inquiry .side{width:320px;overflow-y:auto}.dice-inquiry .side-foot{flex:none;overflow:visible}
.di-arena{padding:10px 12px 20px;text-align:center}.dl-source{display:flex;justify-content:center;align-items:center;gap:14px}.dl-source figure{margin:4px 0 10px}.dl-source figcaption{font-size:16px;font-weight:900;margin-bottom:3px}.dl-source svg{display:block;width:150px;height:auto}.dl-source .dl-net{width:220px;max-height:165px}.dl-roll-guide{min-width:92px;padding:10px 8px;border-radius:14px;background:#fff7d9;border:2px solid #e8cb6b}.dl-roll-guide>b{display:block;margin-bottom:7px;font-size:13px;color:#685726}.dl-roll-guide>div{display:flex;max-width:132px;flex-wrap:wrap;justify-content:center;gap:5px}.dl-roll-guide span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff;color:#234921;font-size:24px;font-weight:900;box-shadow:0 2px 0 #dcc36f}.dl-roll-guide em{font-size:20px;letter-spacing:3px;color:#829079;font-style:normal}
.dl-face-key{margin-top:3px;font-size:14px;font-weight:800;color:#42583e}.dl-face-key span{display:block;padding:7px 10px;border-radius:9px;background:#edf5e4;white-space:nowrap}.dl-face-key b{font-size:18px;color:#173b25}
.dl-board{display:grid;grid-template-columns:repeat(var(--cols),minmax(52px,72px));justify-content:center;gap:7px;margin:4px auto 10px}.dl-cell{aspect-ratio:1;border:2px solid #b9cdaa;border-radius:12px;background:#f7faef;display:flex;align-items:center;justify-content:center;position:relative;min-width:0}.dl-cell.route{border-color:#76a84d;background:#edf6df}.dl-cell.wall{background:#71806c;color:#fff;border-color:#566650}.dl-wall{font-weight:900}.dl-start{font-size:13px;font-weight:900}.dl-goal{font-size:27px;color:#dc8729;font-weight:900;line-height:1}.dl-goal small{display:block;font-size:11px;color:#715937}.dl-step{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d7e9c4;font-weight:900;color:#284522}
/* 모의 실행 — 굴러 선 칸에 그때의 윗면을 찍는다. 도착 칸은 목표와 같으면 초록, 다르면 주황. */
.dl-step.rolled{width:40px;height:40px;background:#fff;box-shadow:inset 0 0 0 2px #9ec27e}.dl-step.rolled .dl-pips{width:26px;height:26px;gap:1px}.dl-step.hit{background:#eaf7e0;box-shadow:inset 0 0 0 3px #4f9a3c}.dl-step.miss{background:#fdf0e0;box-shadow:inset 0 0 0 3px #dc8729}.dl-step.now{animation:dlLand .26s cubic-bezier(.3,1.4,.5,1) both}.dl-step.pending{opacity:.4}
.dl-goalmark{position:absolute;top:1px;right:4px;font-size:15px;line-height:1;color:#dc8729;font-style:normal}
@keyframes dlLand{from{transform:scale(.5);opacity:.25}to{transform:scale(1);opacity:1}}
/* 움직임 줄이기 — 튀어오르는 연출만 끈다(찍히는 눈은 그대로 보여야 한다). */
@media (prefers-reduced-motion: reduce){.dl-step.now{animation:none}}.dl-stamp{border:0;background:transparent;width:100%;height:100%;display:grid;place-items:center;cursor:pointer}.dl-given{width:100%;height:100%;display:grid;place-items:center}.dl-stamp b{font-size:28px;color:#75906c}.dl-stamp.sel{outline:4px solid #efaf3b;outline-offset:-4px;border-radius:10px}
/* 어긋난 발자국 — 다른 판의 .bad 와 같은 색(#FBE3D6 · --warn) */
.dl-stamp.bad{background:#FBE3D6;border-radius:10px}.dl-stamp.bad .dl-pips i.on{background:var(--warn)}.dl-stamp.bad b{color:var(--warn)}
.dl-pips{width:36px;height:36px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:2px}.dl-pips i{border-radius:50%}.dl-pips i.on{background:#173b25}.dl-path,.dl-rule{font-size:17px;font-weight:850;color:#3e5b38}.dl-path{letter-spacing:6px}.dl-rule{font-size:14px;line-height:1.5}.dl-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dl-pad .k{min-height:60px;font-size:24px}.dl-answers{gap:9px}
.dl-goal small{display:flex;align-items:center;justify-content:center;gap:3px}.dl-goal small .dl-pips{width:22px;height:22px}.dl-goal small em{font-size:11px;font-style:normal}.dl-pad .k{display:grid;place-items:center}.dl-pad .dl-pips{width:38px;height:38px}
/* ══ 판이 한 화면에 들어오게 ══
   .dice-inquiry .main 은 위에서 안쪽 스크롤 상자(overflow-y:auto)가 된다. 그래서 내용이
   넘쳐도 아무 표시 없이 그냥 잘린다 — 학생 눈에는 「판이 없다 / 눌러도 안 눌린다」로 보인다
   (실제로 잘린 칸은 탭이 .side 로 가서 사라진다). 다른 스테이지는 넘치지 않는다.
   그러니 여기서는 넘치지 않게 맞추는 것이 유일한 방어다 — 값을 키울 때 반드시 다시 잰다. */
@media (min-width:601px){
 .dice-inquiry .di-arena{padding-bottom:10px}.dice-inquiry .dl-source figure{margin:2px 0 6px}
 .dice-inquiry .dl-source svg{width:118px}.dice-inquiry .dl-source .dl-net{width:176px;max-height:132px}
 .dice-inquiry .dl-board{grid-template-columns:repeat(var(--cols),minmax(0,60px));gap:6px}
}
/* 세로로 든 태블릿(800×1280) — main 이 44% 뿐이라 4줄짜리 판(18-4·5·9·10)은
   ★ 한 줄만 남기고 출발 칸까지 잘렸다. 칠교(64%)·피라미드(62%)와 같은 처리로 높이를 주고,
   대신 숫자판을 한 줄로 눕혀(세로에서 .side 는 화면 폭 전체다) 오른쪽을 아낀다. */
@media (orientation:portrait) and (min-width:601px){
 html.is-touch .play.dice-inquiry .main,.play.dice-inquiry .main{flex:0 0 64%}
 .dice-inquiry .dl-pad{grid-template-columns:repeat(6,1fr)}.dice-inquiry .dl-pad .k{min-height:52px}
}
@media(max-width:600px){
 html.is-touch .play.dice-inquiry,.play.dice-inquiry{display:block;height:100%;overflow-y:auto}html.is-touch .dice-inquiry .main,.dice-inquiry .main{width:100%;height:auto;min-height:0;overflow:visible;padding:10px}html.is-touch .dice-inquiry .side,.dice-inquiry .side{width:100%;height:auto;min-height:0;overflow:visible;border-left:0;padding:12px}.dice-inquiry .qscroll{max-height:none!important;overflow:visible;flex:none}.dice-inquiry .qbox{padding:13px}.dice-inquiry .qbox .qt{font-size:18px!important}.dice-inquiry .qbox .ask{font-size:20px!important}.dl-board{grid-template-columns:repeat(var(--cols),minmax(0,58px));gap:5px}.dl-source{gap:7px}.dl-source svg{width:108px}.dl-source .dl-net{width:174px;max-height:132px}.dl-roll-guide{min-width:78px;padding:7px 5px}.dl-roll-guide span{width:29px;height:29px;font-size:20px}.dl-roll-guide em{font-size:17px}.dl-face-key{font-size:13px}.dl-face-key span{padding:5px 8px}.dice-inquiry .dl-pad{grid-template-columns:repeat(6,1fr)}.dice-inquiry .dl-pad .k{min-height:44px}
 /* 폰 360×640 — 판·숫자판·「확인」이 **스크롤 없이 한 화면에** 들어와야 한다.
    한 줄이라도 넘치면 숫자판이 화면 밖으로 밀리는데, 바닥에 붙는(sticky) 확인 버튼은
    그 자리에 그대로 떠 있어 **숫자판을 덮는다** — 눌러도 확인 버튼이 먹는다.
    실제로 그래서 발자국 여섯 판이 폰에서 풀리지 않았다(탭 스모크로 잡았다).
    그러니 세로로 쌓지 말고 **주사위 그림을 판 옆에** 둔다. 폰은 세로로 길고 가로가
    남으므로, 판(5칸=232px)과 그림 칸(90px)이 나란히 들어간다.
    값을 키울 때는 10판 전부 다시 재고 **탭으로 풀어 볼 것** — 자리만 재면 이 사고를 못 잡는다.
    문제 글은 폰 문제 카드로 옮겼다(round.js 의 QCARD_STAGES 에 18). */
 .dice-inquiry .main{padding:6px 8px}.dice-inquiry .di-arena{padding:2px 4px 6px}
 .dice-inquiry .qscroll{margin-bottom:0}.dice-inquiry .qbox{margin-top:4px}
 /* 보스 태그(👑 BOSS · ROUND 10)가 「◀ 문제 읽기」·시도 배지와 두 줄로 접히며 판을 41px 내렸다 */
 .dice-inquiry .rbar{gap:6px;row-gap:3px}.dice-inquiry .rtag{font-size:12.5px;padding:4px 8px}
 .dice-inquiry .hearts .tl{font-size:12px}.dice-inquiry .qhint{font-size:12px}
 /* 그림 | 판 두 칸, 규칙 줄은 아래 한 줄 전체 */
 .dice-inquiry .di-arena{display:grid;grid-template-columns:auto auto;gap:4px 5px;align-items:start;justify-content:center}
 .dice-inquiry .dl-source{flex-direction:column;gap:3px;width:90px}
 .dice-inquiry .dl-source figure{margin:0}.dice-inquiry .dl-source figcaption{font-size:12px;margin-bottom:1px}
 .dice-inquiry .dl-source svg{width:72px}.dice-inquiry .dl-source .dl-net{width:88px;max-height:66px}
 .dice-inquiry .dl-face-key{font-size:11px;margin-top:2px}
 .dice-inquiry .dl-face-key span{white-space:normal;padding:4px 5px;line-height:1.3}
 .dice-inquiry .dl-roll-guide{min-width:0;width:100%;padding:4px 3px}
 .dice-inquiry .dl-roll-guide>b{font-size:11px;margin-bottom:4px}
 .dice-inquiry .dl-roll-guide>div{max-width:none;gap:3px}
 .dice-inquiry .dl-roll-guide span{width:24px;height:24px;font-size:16px}
 /* 칸 44px — 손가락 최소치다. 더 줄이지 말고 그림 칸(90px)이나 위쪽 여백을 줄일 것 */
 .dice-inquiry .dl-board{grid-template-columns:repeat(var(--cols),minmax(0,44px));gap:4px;margin:0}
 .dice-inquiry .dl-rule{grid-column:1/-1;margin-top:2px;font-size:12px;line-height:1.3}
 .dice-inquiry .side{padding:6px 10px}.dice-inquiry .dl-answers{gap:6px}
 .dice-inquiry .side .gbtn{padding:8px;font-size:15px}
 .dice-inquiry .wrongmsg:empty{display:none}
}
