/* ── point_parallel_perpendicular_choice2_4（点を通る平行・すい直な線を選ぼう、単元仕様書 v1.2）── */
/* 画面：図の下に候補a〜dの選択と回答案内を置く（§5-3・§7 画面表示）。320×568でも図を幅内に保ち、横スクロールを出さない。 */
.ppc-main{display:flex;justify-content:center;margin:6px 0 4px;max-width:100%}
.ppc-figure{margin:0;display:flex;flex-direction:column;align-items:center;max-width:100%}
.ppc-figure-name{font-weight:700;font-size:1rem;line-height:1.2;margin:0 0 2px}
.ppc-main .ppc-figure-svg{display:block;width:min(76vw,300px);height:min(76vw,300px);flex:none}
.ppc-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:360px;margin:6px auto 4px}
.ppc-choice-btn{min-height:56px;padding:4px 2px;border:2px solid #94a3b8;border-radius:10px;background:#fff;color:#111827;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;line-height:1.1}
.ppc-choice-letter{font-size:1.5rem;font-weight:700}
.ppc-choice-op{font-size:.78rem;font-weight:700;color:#475569}
.ppc-choice-btn:focus-visible{outline:3px solid #1d4ed8;outline-offset:2px}
.ppc-choice-btn.ppc-selected{border:4px solid #1d4ed8;padding:2px 0;background:#dbeafe}
.ppc-choice-btn:disabled{cursor:default;opacity:1;color:#111827}
.ppc-choice-btn:disabled .ppc-choice-op{visibility:hidden}
.ppc-choice-btn.ppc-correct{border:4px solid #15803d;padding:2px 0;background:#dcfce7}
.ppc-choice-btn.ppc-wrong{border:4px dashed #b91c1c;padding:2px 0;background:repeating-linear-gradient(135deg,#fff1f2 0 6px,#fecdd3 6px 9px)}
.ppc-response{margin:4px 0 2px;font-weight:700;text-align:center}
.feedback.has-text.ppc-feedback{height:auto;min-height:40px;padding:4px 0;text-align:center;line-height:1.45}
.ppc-answer-line{margin:4px 0 2px;font-weight:700}
.ppc-expl-text{margin:2px 0 6px}
#page-quiz.active:has(.ppc-main) #hint-area .kp-card{display:flex;align-items:flex-start;gap:8px}
#page-quiz.active:has(.ppc-main) #hint-area .kp-head{margin-bottom:0;flex:none}
#page-quiz.active:has(.ppc-main) #hint-area .kp-title:empty{display:none}
#page-quiz.active:has(.ppc-main) #hint-area .kp-body{flex:1;min-width:0;padding-left:0}

/* 印刷：A4縦・2列・1ページ（§7。用紙の余白10mm、本文190×277mm）。 */
.ppc-print-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}
.ppc-print-head{display:flex;flex-direction:column;gap:0;height:23.3mm;flex:none;box-sizing:border-box}
.ppc-print-title{margin:0;height:7mm;font-size:14pt;font-weight:700;line-height:7mm;white-space:nowrap}
.ppc-print-fields{display:flex;gap:5mm;align-items:center;height:6mm;margin-top:1mm;font-size:12.5pt}
.ppc-print-field{display:inline-flex;align-items:center;gap:1.5mm}
.ppc-print-field-box{display:inline-block;box-sizing:border-box;height:6mm;border:0.3mm solid #000}
.ppc-field-name .ppc-print-field-box{width:60mm}
.ppc-field-date .ppc-print-field-box{width:35mm}
.ppc-field-score .ppc-print-field-box{width:25mm}
.ppc-print-howrow{display:flex;justify-content:space-between;align-items:center;height:5.3mm;margin-top:1.5mm;font-size:12.5pt;line-height:5.3mm;white-space:nowrap}
.ppc-print-edition{font-weight:700}
.ppc-print-grid{display:grid;grid-template-columns:92mm 92mm;column-gap:2mm;flex:none;height:212.5mm}
.ppc-print-col{display:grid;grid-template-rows:repeat(5,42.5mm)}
.ppc-print-cell{display:grid;grid-template-columns:31mm 54.5mm;column-gap:2.5mm;align-items:start;height:42.5mm;overflow:hidden;box-sizing:border-box}
.ppc-print-left{display:flex;flex-direction:column;gap:1mm}
.ppc-print-headline{display:flex;align-items:baseline;gap:1mm;height:5.3mm;line-height:5.3mm;white-space:nowrap}
.ppc-print-no{font-weight:700;font-size:12.5pt}
.ppc-print-figname{font-weight:700;font-size:9pt}
.ppc-print-left .ppc-figure-svg{display:block;width:31mm;height:31mm;flex:none}
.ppc-print-right{display:flex;flex-direction:column;gap:1.5mm}
.ppc-print-prompt{margin:0;font-size:12.5pt;line-height:5.3mm;overflow-wrap:break-word}
.ppc-print-letters{display:flex;gap:3mm}
.ppc-print-letter{display:inline-flex;align-items:center;justify-content:center;width:7mm;height:7mm;font-size:12.5pt;font-weight:700;line-height:1}
.ppc-print-answers{border-top:0.35mm dashed #000;flex:none;padding-top:0;box-sizing:border-box}
.ppc-print-answers-title{font-weight:700;font-size:12.5pt;height:5.3mm;line-height:5.3mm}
.ppc-print-answers-grid{display:grid;grid-template-columns:92mm 92mm;column-gap:2mm}
.ppc-print-answer-col{list-style:none;margin:0;padding:0}
.ppc-print-answer{font-size:10pt;line-height:4.5mm;height:4.5mm;white-space:nowrap}
.ppc-app-pdf-page .ppc-print-page{box-shadow:none;margin:0}

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