/* ── decimal_nested_inverse2_5（小数の入れ子式を外側から逆算しよう、単元仕様書 v1.3）── */
/* 画面：問題文の下に手順の行（A群・C群）、式（B群・C群）、答えの欄、回答案内、テンキー、こたえるボタン（§5-3・§7 画面表示）。 */
.dni-main{display:flex;flex-direction:column;align-items:center;gap:8px;margin:4px 0 8px;max-width:100%}
.dni-steps{max-width:100%;padding:4px 22px 4px 4px;box-sizing:border-box}
.dni-sblk{position:relative;width:fit-content;max-width:100%;box-sizing:border-box;padding:3px 7px;border:2px solid transparent;border-radius:6px}
.dni-step{font-size:1.15rem;line-height:1.6;font-weight:700;color:#0f172a;overflow-wrap:anywhere}
.dni-eq{position:relative;margin:0;max-width:100%;padding:6px 22px 6px 8px;box-sizing:border-box;font-size:1.3rem;line-height:2.1;font-weight:700;color:#0f172a;text-align:center;overflow-wrap:normal;word-break:keep-all}
.dni-num,.dni-box{white-space:nowrap}
.dni-box{display:inline}
.dni-op{padding:0 1px}
.dni-blk{position:relative;border:2px solid transparent;border-radius:5px;padding:1px 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* ヒントの囲み：色にたよらない実線のわく（§6・§7）。矢印は囲みの右上のすぐ外に小さく置く（v1.2）。 */
.dni-sblk.dni-framed,.dni-blk.dni-framed{border:2px solid #1e293b}
.dni-arrow{position:absolute;top:-12px;right:-18px;width:16px;height:16px;color:#b45309;line-height:0;pointer-events:none}
.dni-arrow svg{display:block}
.dni-fields{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin:6px auto 2px}
.dni-field-label{font-weight:700;font-size:1.2rem}
.dni-input{width:7em;max-width:55vw;min-height:44px;font-size:1.4rem;padding:4px 8px;border:3px solid #1d4ed8;background:#eff6ff;border-radius:10px;text-align:center;font-family:inherit;box-sizing:border-box}
.dni-input:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
.dni-input:disabled{background:#f8fafc;color:#111827;opacity:1;border-color:#94a3b8}
.dni-input.dni-input-ok{border:3px solid #15803d;background:#dcfce7}
.dni-input.dni-input-ng{border:3px dashed #b91c1c;background:#fff1f2}
.dni-guide{margin:6px auto 4px;font-weight:700;text-align:center;max-width:32em}
.dni-msg{margin:2px auto 0;color:#b91c1c;font-weight:700;font-size:1rem;text-align:center;max-width:32em}
.dni-msg:empty{display:none}
.feedback.has-text.dni-feedback{height:auto;min-height:40px;padding:4px 0;text-align:center;line-height:1.45}
.dni-correct{margin:2px 0 6px;font-weight:700;font-size:1rem}
.dni-expl-text{margin:4px 0 6px;overflow-wrap:anywhere;font-size:1rem}
#page-quiz.active:has(.dni-main) #hint-area .kp-card{display:flex;align-items:flex-start;gap:8px}
#page-quiz.active:has(.dni-main) #hint-area .kp-head{margin-bottom:0;flex:none}
#page-quiz.active:has(.dni-main) #hint-area .kp-title:empty{display:none}
#page-quiz.active:has(.dni-main) #hint-area .kp-body{flex:1;min-width:0;padding-left:0;overflow-wrap:anywhere}
@media (max-width:420px){
  .dni-step{font-size:1.02rem}
  .dni-eq{font-size:1.12rem}
}

/* 印刷：A4縦・2列・1ページ（§7。用紙の余白10mm、本文190×277mm、各列91mm・列の間4mm、各問の領域は幅91mm・高さ42mm）。 */
.dni-pr-page{width:190mm;height:277mm;box-sizing:border-box;display:flex;flex-direction:column;padding:0;margin:0 auto 8mm;overflow:hidden;background:#fff;color:#000;font-family:'Atkinson Hyperlegible','BIZ UDPGothic','Yu Gothic','Meiryo',sans-serif}
.dni-pr-head-area{display:flex;flex-direction:column;flex:none;box-sizing:border-box;width:190mm}
.dni-pr-title{box-sizing:border-box;margin:0;height:9mm;font-size:14.3pt;font-weight:700;line-height:7.8mm;text-align:center;white-space:nowrap;padding:0;border:1.5pt solid #666;background:#ffffcc;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.dni-pr-instruction{margin:0 0 1mm;font-size:12.6pt;line-height:5.3mm;width:186mm}
.dni-pr-problems{display:grid;grid-template-columns:91mm 91mm;column-gap:4mm;flex:none}
.dni-pr-col{display:grid;grid-template-rows:repeat(5,42mm)}
.dni-pr-cell{box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;width:91mm;height:42mm;padding-top:0}
/* 問と問のさかいめに点線（次の問の番号と前の問の答えのわくを見分ける）。線は背景で描き、各問の高さ42mm（1行目7mm・2行目以下30mm・余り5mm。§7）を減らさない。 */
.dni-pr-cell+.dni-pr-cell{background-image:linear-gradient(to right,#888 50%,transparent 50%);background-size:1.2mm 0.3mm;background-repeat:repeat-x;background-position:left top;print-color-adjust:exact;-webkit-print-color-adjust:exact}
.dni-pr-head{display:flex;justify-content:space-between;align-items:center;height:7mm;flex:none;font-size:12.6pt;font-weight:700;white-space:nowrap}
.dni-pr-ansbox{display:flex;align-items:center;gap:1mm}
.dni-pr-box{display:inline-block;box-sizing:border-box;width:22mm;height:7mm;border:0.35mm solid #333}
.dni-pr-line{margin:0;height:5mm;font-size:12.6pt;line-height:5mm;white-space:nowrap}
.dni-pr-answers{flex:none;box-sizing:border-box;margin-top:1mm}
.dni-pr-dashed{box-sizing:content-box;display:block;height:0;margin:0 0 1mm;padding:0;border:0;border-top:2pt dashed #aaa}
.dni-pr-answers-title{font-weight:700;font-size:12.6pt;height:5.5mm;line-height:5.5mm}
.dni-pr-answer-grid{display:grid;grid-template-columns:repeat(5,36mm);column-gap:1.5mm}
.dni-pr-ans{margin:0;font-size:10.2pt;line-height:4.6mm;height:4.6mm;white-space:nowrap}
.dni-app-pdf-page .dni-pr-page{box-shadow:none;margin:0}

#pr-sheet[data-unit="decimal_nested_inverse2_5"]{width:190mm;max-width:none;padding:0;margin:calc(12px + 10mm) auto;background:transparent;box-shadow:none}
#pr-sheet[data-unit="decimal_nested_inverse2_5"]>:not(#pr-problems){display:none!important}
#pr-sheet[data-unit="decimal_nested_inverse2_5"]>#pr-problems{display:block}
/* 画面のプレビューでは、用紙の余白10mmを白い縁で見せる（印刷の寸法は変えない）。 */
#pr-sheet[data-unit="decimal_nested_inverse2_5"] .dni-pr-page{box-shadow:0 0 0 10mm #fff,0 0 4px 10mm rgba(0,0,0,.12);margin-bottom:calc(8mm + 10mm)}
@media print{
  #page-print #pr-sheet[data-unit="decimal_nested_inverse2_5"]{width:auto!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important;box-shadow:none!important}
  #page-print #pr-sheet[data-unit="decimal_nested_inverse2_5"]>:not(#pr-problems){display:none!important}
  #page-print #pr-sheet[data-unit="decimal_nested_inverse2_5"]>#pr-problems{display:block!important}
  #page-print #pr-sheet[data-unit="decimal_nested_inverse2_5"] .dni-pr-page{display:flex!important;margin:0!important;box-shadow:none!important;break-after:auto;page-break-after:auto}
}
