/* 워크북·연습문제·상세분석 조판과 인쇄(@media print) 스타일 — index.html 인라인 <style>에서 옮김(로드 위치 그대로). */
/* 워크북·연습문제 인쇄 스타일 — 화이트 + 네이비 테마, 본문은 검정 고정.
   테마는 이 한 블록의 토큰으로만 바뀐다(아래 130여 개 규칙이 전부 var()를 쓴다). */
#wbPrintArea{ --wb-css-ver:20;  /* ★teachers-lab.js의 WB_CSS_VER와 같아야 한다 — 조판 CSS·JS 짝이 바뀌면 둘 다 올린다 */
  color:#000; font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR','Segoe UI',sans-serif; font-size:10.5pt; line-height:1.72; font-weight:500;
  --wb-pad-v:18mm;   /* A4 상하 여백 — 인쇄·측정·연습문제 칼럼 높이가 전부 이 값을 쓴다 */
  --wbc-ink:#000; --wbc-ink-soft:#000; --wbc-hint:#000; --wbc-ac:#1B4079; --wbc-line:#1B4079; --wbc-line-soft:#A5BAD9; --wbc-band:#ECF1F9; --wbc-en:'Pretendard Variable','Pretendard','Apple SD Gothic Neo','Malgun Gothic','Segoe UI',sans-serif; }
#wbPrintArea .wb-page{ position:relative; background:#fff; margin:0 0 8mm; padding:0; page-break-after:always; break-after:page; display:flex; flex-direction:column; }
#wbPrintArea .wb-page:last-child{ page-break-after:auto; break-after:auto; margin-bottom:0; }
#wbPrintArea .wb-hd{ position:relative; display:flex; align-items:flex-end; justify-content:space-between; gap:6mm; padding:2.4mm 0 2.6mm; margin:0 0 3mm; border-top:1.8pt solid var(--wbc-ac); border-bottom:1.8pt solid var(--wbc-ac); }
#wbPrintArea .wb-hd-l{ flex:1 1 0; min-width:0; }
#wbPrintArea .wb-hd-type{ position:relative; padding-left:3.4mm; font-size:15.5pt; font-weight:800; letter-spacing:-.2pt; line-height:1.18; color:var(--wbc-ac); }
#wbPrintArea .wb-hd-type::before{ content:""; position:absolute; left:0; top:.4mm; bottom:.4mm; width:5pt; background:var(--wbc-ac); border-radius:1px; }
#wbPrintArea .wb-hd-passage{ display:block; margin-top:1.2mm; font-size:10.5pt; font-weight:600; color:var(--wbc-ink-soft); letter-spacing:-.1pt; }
/* 번호 위 / 제목 아래로 세로 배치 — 가로로 나열하면 우측 출처가 길 때 제목이 밀려 줄바꿈된다. */
#wbPrintArea .wb-hd-num{ flex:0 1 auto; min-width:0; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; gap:.6mm; padding:0 3mm; }
#wbPrintArea .wb-hd-name{ font-weight:800; font-size:13pt; letter-spacing:.2pt; color:var(--wbc-ac); white-space:nowrap; }
#wbPrintArea .wb-hd-title{ font-size:13pt; font-weight:800; letter-spacing:.2pt; color:var(--wbc-ink); text-align:center; line-height:1.25; }
#wbPrintArea .wb-ko-cue{ margin-top:.8mm; font-size:9.5pt; line-height:1.5; color:var(--wbc-ink-soft); }
    /* 좌측 스페이서와 같은 비율(1 1 0) — 그래야 가운데 칸이 페이지 정중앙에 온다.
       min-width:0 이 있어야 긴 출처가 칸을 밀어내지 않고 안에서 줄바꿈된다. */
    #wbPrintArea .wb-hd-meta{ flex:1 1 0; min-width:0; text-align:right; font-size:9.5pt; line-height:1.5; }
/* 부교재 출처 — 헤더 우측 상단에 작게. 번호만으로는 어느 교재 몇 강인지 알 수 없어서 붙인다. */
#wbPrintArea .wb-hd-src{ display:block; font-size:7.2pt; font-weight:600; letter-spacing:-.1pt; line-height:1.4; color:var(--wbc-ac); opacity:.75; text-align:right; }
/* 교재 / 단원·문항 / 원출처를 각각 한 줄로. 한 덩어리로 두면 단어 중간이 끊긴다. */
#wbPrintArea .wb-hd-src i{ display:block; font-style:normal; }
/* 출처가 제목 옆에 안 들어가면(_wbFitHeaders) 제목 아래 줄 오른쪽에 한 줄로 */
#wbPrintArea .wb-hd-probe .wb-hd-src i{ display:inline-block; white-space:nowrap; }
#wbPrintArea .wb-hd.wb-hd-stack{ flex-wrap:wrap; row-gap:1mm; }
#wbPrintArea .wb-hd-stack .wb-hd-l{ display:none; }
#wbPrintArea .wb-hd-stack .wb-hd-num{ flex:1 1 100%; }
#wbPrintArea .wb-hd-stack .wb-hd-meta{ flex:1 1 100%; }
#wbPrintArea .wb-hd-stack .wb-hd-src i{ display:inline; }
#wbPrintArea .wb-hd-stack .wb-hd-src i + i::before{ content:" · "; }
#wbPrintArea .wb-field{ display:inline-block; margin-left:4mm; color:var(--wbc-ink-soft); font-weight:600; }
#wbPrintArea .wb-field::after{ content:""; display:inline-block; width:24mm; border-bottom:.8pt solid var(--wbc-line-soft); margin-left:1.2mm; vertical-align:-1pt; }
#wbPrintArea .wb-badge{ display:inline-block; padding:1.1mm 3mm; background:var(--wbc-ac); color:#fff; font-size:9pt; font-weight:800; letter-spacing:.3pt; border-radius:2px; }
#wbPrintArea .wb-body{ flex:1 1 auto; }
#wbPrintArea .wb-sheet{ margin:0 0 6mm; }
#wbPrintArea .wb-sheet + .wb-sheet{ margin-top:6mm; padding-top:5mm; border-top:.8pt dashed var(--wbc-line-soft); }
#wbPrintArea .wb-ptitle{ display:table; margin:0 auto 4mm; max-width:100%; font-size:12pt; font-weight:800; letter-spacing:-.15pt; padding:0 2mm 1.1mm; text-align:center; color:var(--wbc-ac); border-bottom:3px double var(--wbc-ac); }
/* 지문연습(수업용) — 좌 영어 / 우 해석 2단, 양쪽 줄맞춤. 한글 해석 −2pt(8.5pt) */
#wbPrintArea .wb-dual{ margin-top:1mm; }
/* 문장 간격은 _wbFitGap이 페이지마다 계산해 --wb-gap으로 넣는다(연속 자동).
   기존 3단계 계단(15/9/6mm)은 8문장 경계에서 7문장보다 짧아지는 역전을 만들었고
   10문장은 304mm로 A4를 넘겼다. 변수 미설정 시 폴백 9mm. */
#wbPrintArea .wb-drow{ display:grid; grid-template-columns:6.5mm 1.6fr 1fr; column-gap:6mm; align-items:start; padding:0; margin-bottom:var(--wb-gap, 9mm); break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-drow:last-child{ margin-bottom:0; }
#wbPrintArea .wb-dnum{ grid-column:1; align-self:start; margin-top:.4mm; display:inline-flex; align-items:center; justify-content:center; min-width:6mm; height:5.4mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-weight:800; font-size:9pt; line-height:1; }
#wbPrintArea .wb-den{ grid-column:2; font-family:var(--wbc-en); font-size:10.5pt; line-height:1.8; color:var(--wbc-ink); text-align:justify; word-spacing:.2pt; }
#wbPrintArea .wb-dko{ grid-column:3; font-size:8.5pt; line-height:1.85; color:var(--wbc-ink-soft); padding-left:6mm; border-left:.6pt dotted var(--wbc-line-soft); text-align:justify; }
/* 단어 유형 — 번호 · 단어 · 뜻(학생용은 빈칸) */
#wbPrintArea .wb-wordlist{ margin-top:1mm; }
#wbPrintArea .wb-wrow{ display:grid; grid-template-columns:7mm 42% 1fr; column-gap:4mm; align-items:baseline; padding:2.6mm 0; border-bottom:.4pt dotted var(--wbc-line-soft); break-inside:avoid; }
#wbPrintArea .wb-wrow:last-child{ border-bottom:0; }
#wbPrintArea .wb-wnum{ font-weight:800; font-size:9pt; color:var(--wbc-ac); }
#wbPrintArea .wb-wen{ font-family:var(--wbc-en); font-weight:600; font-size:10.5pt; color:var(--wbc-ink); }
#wbPrintArea .wb-wko{ font-size:8.5pt; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-wblank{ border-bottom:.6pt solid var(--wbc-line-soft); align-self:stretch; min-height:5mm; }
/* 동·반의어 시험지: 번호·단어·동의어·반의어 4단 */
#wbPrintArea .wb-syn .wb-wrow{ grid-template-columns:7mm 26% 1fr 1fr; }
/* 기본 단어장: 번호·단어·뜻·동의어·반의어 5단(전부 표시) */
#wbPrintArea .wb-ref .wb-wrow{ grid-template-columns:7mm 18% 22% 1fr 1fr; }
#wbPrintArea .wb-wsa{ font-family:var(--wbc-en); font-size:9.6pt; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-whead{ border-bottom:1pt solid var(--wbc-ac); }
#wbPrintArea .wb-whead .wb-wen, #wbPrintArea .wb-whead .wb-wsa{ font-size:8.6pt; font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-item{ position:relative; padding:1.6mm 0 1.6mm 9mm; border-bottom:.4pt dotted var(--wbc-line-soft); break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-item:last-child{ border-bottom:0; }
#wbPrintArea .wb-num{ position:absolute; left:0; top:1.9mm; display:inline-flex; align-items:center; justify-content:center; min-width:6mm; height:6mm; padding:0 .4mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-size:9pt; font-weight:800; line-height:1; }
#wbPrintArea .wb-text{ display:block; }
#wbPrintArea .wb-en{ font-family:var(--wbc-en); font-size:11pt; line-height:1.78; color:var(--wbc-ink); word-spacing:.2pt; }
#wbPrintArea .wb-ko{ margin-top:1.4mm; font-size:9pt; line-height:1.6; color:var(--wbc-ink-soft); border-left:2.4pt solid var(--wbc-line-soft); padding-left:2.6mm; }
#wbPrintArea .wb-ko-cloze{ font-size:9.5pt; line-height:2; color:var(--wbc-ink); }
#wbPrintArea .wb-hint{ margin-top:1mm; font-size:8.5pt; line-height:1.5; color:var(--wbc-hint); }
#wbPrintArea .wb-hint::before{ content:"※ "; font-weight:700; color:var(--wbc-ac); }
#wbPrintArea .wb-tag{ font-weight:700; color:var(--wbc-ac); }
#wbPrintArea .wb-blank{ display:inline-block; min-width:22mm; padding:0 1.4mm; margin:0 .3mm; border-bottom:1pt solid var(--wbc-ac); text-align:center; color:var(--wbc-hint); font-family:var(--wbc-en); font-style:italic; vertical-align:baseline; }
#wbPrintArea .wb-bi{ font-style:italic; }
#wbPrintArea .wb-blank-init{ text-align:left; font-style:normal; padding-left:.8mm; }
/* 정답지 구분 페이지 */
#wbPrintArea .wb-adiv-page{ align-items:center; justify-content:center; }
#wbPrintArea .wb-adiv{ margin:auto; font-family:var(--wbc-en); font-size:26pt; font-weight:800; letter-spacing:1.5pt; color:var(--wbc-ac); border-top:2.2pt solid var(--wbc-ac); border-bottom:2.2pt solid var(--wbc-ac); padding:6mm 14mm; }
#wbPrintArea .wb-answers .wb-body{ padding-top:3mm; }
#wbPrintArea .wb-anskey{ display:flex; flex-direction:column; gap:2.6mm; }
/* 정답 블록 — 지문·종류 하나가 한 덩어리. 페이지가 찰 때만 다음 장으로 넘어간다. */
#wbPrintArea .wb-ansblock{ break-inside:avoid; page-break-inside:avoid; margin-bottom:5mm; }
#wbPrintArea .wb-ansblock:last-child{ margin-bottom:0; }
#wbPrintArea .wb-ansblock-h{ font-size:9pt; font-weight:800; letter-spacing:-.1pt; color:var(--wbc-ac); border-bottom:1pt solid var(--wbc-line-soft); padding-bottom:1mm; margin-bottom:1.8mm; }
#wbPrintArea .wb-ansrow{ display:flex; gap:3mm; align-items:flex-start; break-inside:avoid; }
#wbPrintArea .wb-ansnum{ flex:0 0 6.5mm; text-align:center; font-family:var(--wbc-en); font-weight:800; font-size:9.5pt; color:#fff; background:var(--wbc-ac); border-radius:2px; padding:.4mm 0; line-height:1.5; }
#wbPrintArea .wb-anstext{ flex:1 1 auto; font-size:10.5pt; line-height:1.55; color:var(--wbc-ink); font-weight:500; }
#wbPrintArea .wb-anstext b{ font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-ans{ display:inline-block; padding:0 .6mm; margin:0 .2mm; font-weight:800; color:var(--wbc-ac); border-bottom:1.4pt solid var(--wbc-ac); font-family:var(--wbc-en); }
#wbPrintArea .wb-choice{ display:inline; margin:0 .3mm; font-family:var(--wbc-en); font-weight:600; color:var(--wbc-ink); }
#wbPrintArea .wb-opt{ font-size:10pt; font-weight:600; color:var(--wbc-ink); }
#wbPrintArea .wb-opt.correct{ background:var(--wbc-ac); color:#fff; font-weight:800; padding:0 1mm; border-radius:2px; }
#wbPrintArea .wb-verbcue{ font-size:8.4pt; font-weight:700; color:var(--wbc-hint); vertical-align:1pt; margin-left:.4mm; }
#wbPrintArea .wb-wrong{ text-decoration:underline wavy var(--wbc-ac); text-underline-offset:2.4pt; font-weight:700; color:var(--wbc-ink); font-family:var(--wbc-en); }
#wbPrintArea .wb-writeline{ height:6mm; margin:1.4mm 0 .6mm; border-bottom:.8pt solid var(--wbc-line-soft); }
#wbPrintArea .wb-writeline + .wb-writeline{ margin-top:2.4mm; }
/* 영어빈칸_David — 관사·전치사·문장부호만 남기고 나머지 단어는 낱개 빈칸 */
/* 줄 간격은 손으로 써 넣을 자리라 넉넉히(2.55) — 밑줄과 윗줄 글자가 붙으면 못 쓴다. */
/* 좌우 간격도 빈칸 폭과 같이 20% 넓힌다(word-spacing +.2mm ≒ 11pt 공백의 20%). */
#wbPrintArea .wb-dv-line{ font-family:var(--wbc-en); font-size:11pt; line-height:2.55; color:var(--wbc-ink); word-spacing:.2mm; }
#wbPrintArea .wb-dvb{ display:inline-block; height:5.2mm; margin:0 .48mm; vertical-align:-1.6mm; border-bottom:.9pt solid var(--wbc-line); }
#wbPrintArea .wb-dv-ans{ font-weight:800; color:var(--wbc-ac); text-decoration:underline; text-decoration-color:var(--wbc-line-soft); text-underline-offset:2.6pt; }
/* 유형별 지시문 */
#wbPrintArea .wb-inst{ margin:0 0 4mm; padding-bottom:1.6mm; font-size:9.5pt; font-weight:700; color:var(--wbc-ink-soft); border-bottom:1pt dashed var(--wbc-line-soft); }
#wbPrintArea .wb-inst::before{ content:"Q "; font-weight:800; color:var(--wbc-ac); }
/* 독해 확인(우리말): 지문 + 주제/내용 2문항 + 한글 요약 빈칸을 한 페이지에 구성 */
#wbPrintArea .wb-reading{ display:flex; flex-direction:column; gap:4mm; }
#wbPrintArea .wb-r-passage{ position:relative; padding:4.5mm 5mm 4mm; border:1pt solid var(--wbc-line-soft); background:#fff; font-family:var(--wbc-en); font-size:9.35pt; line-height:1.68; text-align:justify; color:var(--wbc-ink); }
#wbPrintArea .wb-r-passage>span{ position:absolute; top:-2.6mm; left:4mm; padding:0 1.6mm; background:#fff; color:var(--wbc-ac); font-size:7.8pt; font-weight:800; letter-spacing:.7pt; }
/* 간격은 _wbFitGap이 페이지마다 계산해 넣는다(남는 공간을 문항·답란으로 분배). */
#wbPrintArea .wb-r-questions{ display:grid; grid-template-columns:1fr; gap:var(--wb-rq-gap, 3mm); }
#wbPrintArea .wb-r-q{ min-width:0; padding:3mm 3.4mm; border:.8pt solid var(--wbc-line-soft); border-top:2pt solid var(--wbc-ac); break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-r-qhead{ display:flex; align-items:flex-start; gap:2.2mm; font-size:9.7pt; line-height:1.5; font-weight:750; color:var(--wbc-ink); }
#wbPrintArea .wb-r-qhead>b{ flex:0 0 5.3mm; height:5.3mm; display:inline-flex; align-items:center; justify-content:center; border-radius:2px; background:var(--wbc-ac); color:#fff; font-size:8.7pt; line-height:1; }
#wbPrintArea .wb-r-lines{ margin-top:2.2mm; display:flex; flex-direction:column; gap:var(--wb-rline-gap, 3mm); }
#wbPrintArea .wb-r-lines i{ display:block; height:4.2mm; border-bottom:.7pt solid var(--wbc-line-soft); }
#wbPrintArea .wb-r-answer{ margin-top:2.2mm; padding:2mm 2.5mm; background:var(--wbc-band); font-size:9pt; line-height:1.55; color:var(--wbc-ink); }
#wbPrintArea .wb-r-answer>span{ margin-right:2mm; color:var(--wbc-ac); font-weight:800; }
#wbPrintArea .wb-r-answer small{ display:block; margin-top:1mm; color:var(--wbc-ink-soft); font-size:7.9pt; font-weight:650; }
#wbPrintArea .wb-r-summary{ grid-column:1 / -1; }
#wbPrintArea .wb-r-summarybox{ margin-top:2.5mm; padding:3mm 3.5mm; background:var(--wbc-band); font-size:9.6pt; line-height:2; color:var(--wbc-ink); word-break:keep-all; }
#wbPrintArea .wb-r-sumblank{ display:inline-flex; align-items:baseline; gap:1mm; margin:0 .7mm; white-space:nowrap; color:var(--wbc-ac); }
#wbPrintArea .wb-r-sumblank>span{ display:inline-block; min-width:27mm; border-bottom:1pt solid var(--wbc-ac); }
#wbPrintArea .wb-r-sumans{ display:inline-block; margin:0 .7mm; padding:0 1mm; color:var(--wbc-ac); font-weight:800; border-bottom:1pt solid var(--wbc-ac); }
#wbPrintArea .wb-r-key{ display:block; margin-top:.8mm; color:var(--wbc-ink-soft); font-size:8.2pt; font-weight:600; }
#wbPrintArea .wb-r-empty{ padding:12mm; border:1pt dashed var(--wbc-line-soft); color:var(--wbc-hint); text-align:center; }
/* 어색한 곳: 지문 산문 + 정답란 */
#wbPrintArea .wb-passage-prose{ font-family:var(--wbc-en); font-size:11pt; line-height:2.05; color:var(--wbc-ink); text-align:justify; font-weight:500; }
#wbPrintArea .wb-awkey{ margin-top:9mm; display:flex; flex-direction:column; gap:5.5mm; }
#wbPrintArea .wb-awrow{ display:flex; align-items:baseline; gap:2.5mm; font-size:10.5pt; }
#wbPrintArea .wb-awn{ flex:0 0 auto; font-family:var(--wbc-en); font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-awline{ flex:1 1 0; min-width:40mm; border-bottom:.9pt solid var(--wbc-line); align-self:flex-end; height:5mm; }
#wbPrintArea .wb-awfill{ flex:1 1 0; border-bottom:.9pt solid var(--wbc-line-soft); padding:0 1mm 1mm; }
#wbPrintArea .wb-awarrow{ flex:0 0 auto; color:var(--wbc-ac); font-weight:800; }
/* 영작: 키워드 뱅크 + 부분 빈칸 */
#wbPrintArea .wb-kwbank{ display:flex; flex-wrap:wrap; gap:1.5mm 2mm; margin:2mm 0 1mm; }
#wbPrintArea .wb-kw{ font-family:var(--wbc-en); font-size:9.5pt; font-weight:700; color:var(--wbc-ac); background:var(--wbc-band); border:1pt solid var(--wbc-line-soft); border-radius:3px; padding:.3mm 2.2mm; }
#wbPrintArea .wb-compose-en{ font-family:var(--wbc-en); font-size:10.5pt; line-height:2.05; color:var(--wbc-ink); margin-top:2mm; font-weight:500; }
#wbPrintArea .wb-vocab{ margin-top:4mm; border:1pt solid var(--wbc-ac); border-radius:2px; overflow:hidden; break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-vocab-h{ padding:1.4mm 3mm; background:var(--wbc-band); border-bottom:1pt solid var(--wbc-ac); font-size:9.5pt; font-weight:800; letter-spacing:.4pt; color:var(--wbc-ac); font-family:var(--wbc-en); }
#wbPrintArea .wb-vocab-h::before{ content:"▪ "; }
#wbPrintArea .wb-vrow{ display:flex; align-items:baseline; gap:3mm; padding:1.3mm 3mm; font-size:9.6pt; line-height:1.45; border-bottom:.4pt dotted var(--wbc-line-soft); }
#wbPrintArea .wb-vrow:last-child{ border-bottom:0; }
#wbPrintArea .wb-vw{ flex:0 0 40mm; font-family:var(--wbc-en); font-weight:700; color:var(--wbc-ink); }
#wbPrintArea .wb-vm{ flex:1 1 auto; font-size:9pt; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-ft{ margin-top:6mm; padding-top:2mm; border-top:1pt solid var(--wbc-line-soft); display:flex; align-items:center; justify-content:flex-start; font-size:8.4pt; color:var(--wbc-ac); letter-spacing:.2pt; }
#wbPrintArea .wb-ft span{ font-weight:700; }
/* 수업용 하단 Note 영역(고정 높이 확보) */
#wbPrintArea .wb-ft.wb-note{ min-height:26mm; align-items:flex-start; }
/* 빈칸완성(우리말/영문): 문장 사이 한 칸 띄우기 */
/* 문장 사이 한 칸 공백 — 수업용·어색한곳·단어 제외 전 유형 */
#wbPrintArea .wb-k-blank_ko .wb-item, #wbPrintArea .wb-k-blank_en .wb-item,
#wbPrintArea .wb-k-blank_david .wb-item,
#wbPrintArea .wb-k-translate .wb-item, #wbPrintArea .wb-k-verb .wb-item,
#wbPrintArea .wb-k-grammar .wb-item, #wbPrintArea .wb-k-compose .wb-item{ margin-bottom:var(--wb-item-gap, 5mm); border-bottom:none; padding-bottom:0; }
#wbPrintArea .wb-k-blank_ko .wb-item:last-child, #wbPrintArea .wb-k-blank_en .wb-item:last-child,
#wbPrintArea .wb-k-blank_david .wb-item:last-child,
#wbPrintArea .wb-k-translate .wb-item:last-child, #wbPrintArea .wb-k-verb .wb-item:last-child,
#wbPrintArea .wb-k-grammar .wb-item:last-child, #wbPrintArea .wb-k-compose .wb-item:last-child{ margin-bottom:0; }
/* 넘침 분할(_wbPaginate) 측정용: 인쇄와 동일한 210mm+14/12mm 패딩으로 오프스크린 측정 */
#wbPrintArea.wb-measuring{ display:block !important; position:absolute !important; left:-99999px !important; top:0 !important; width:210mm !important; background:#fff; visibility:hidden; }
/* ★인쇄용 .wb-page 패딩과 반드시 같은 값이어야 한다 — 어긋나면 측정보다 실제가 길어져 넘친다.
   같이 바꿀 곳: @media print의 .wb-page 패딩, _wbPaginate의 PAD_V, _wbDetailFit의 contentPerPage,
   리뷰 _rvSplitToPages(WB_PAD_V 사용)·리뷰 미리보기 .rv-prev-frame .rv-page 패딩. */
#wbPrintArea.wb-measuring .wb-page{ width:210mm; padding:var(--wb-pad-v) 12mm; box-sizing:border-box; margin:0; }
/* ── 연습문제(모의고사 변형 스타일, 2단 시험지) ── */
/* 높이는 반드시 A4 − 상하 여백이어야 한다. 269mm로 박아두면 여백을 바꿀 때마다 어긋나
   페이지가 297mm를 넘는다(여백 18mm일 때 269+36=305mm).
   끝의 -2mm는 안전 여유 — 정확히 297mm면 page-break와 만나 유령 빈 페이지가 생긴다. */
#wbPrintArea .pq-cols{ column-count:2; column-gap:8mm; column-rule:.5pt solid var(--wbc-line-soft); height:calc(297mm - var(--wb-pad-v) * 2 - 2mm); column-fill:auto; overflow:hidden; }
#wbPrintArea .pq-head{ column-span:all; margin-bottom:5mm; }
#wbPrintArea .pq-head-bar{ display:flex; justify-content:space-between; align-items:baseline; gap:6mm; border-top:1.8pt solid var(--wbc-ac); border-bottom:1.8pt solid var(--wbc-ac); padding:2.4mm 1mm; }
#wbPrintArea .pq-title{ font-size:14pt; font-weight:800; color:var(--wbc-ac); letter-spacing:-.2pt; }
#wbPrintArea .pq-meta{ font-size:9.5pt; font-weight:600; color:var(--wbc-ink-soft); white-space:nowrap; }
#wbPrintArea .pq-q{ break-inside:avoid; margin-bottom:8mm; }
#wbPrintArea .pq-src{ font-size:7.8pt; font-weight:700; color:var(--wbc-hint); margin-bottom:.8mm; }
#wbPrintArea .pq-stem{ font-size:9.8pt; font-weight:700; line-height:1.5; color:var(--wbc-ink); margin-bottom:1.6mm; word-break:keep-all; }
#wbPrintArea .pq-num{ color:var(--wbc-ac); }
#wbPrintArea .pq-body{ font-family:var(--wbc-en); font-size:9.4pt; line-height:1.62; text-align:justify; color:var(--wbc-ink); }
#wbPrintArea .pq-body u, #wbPrintArea .pq-box u{ text-underline-offset:1.6pt; }
#wbPrintArea .pq-box{ border:.8pt solid var(--wbc-line-soft); border-radius:2px; padding:1.8mm 2.6mm; margin:1.8mm 0; font-family:var(--wbc-en); font-size:9.2pt; line-height:1.55; text-align:justify; }
#wbPrintArea .pq-box-label{ font-weight:800; color:var(--wbc-ac); font-size:8.6pt; }
#wbPrintArea .pq-opts{ margin-top:1.8mm; }
#wbPrintArea .pq-opt{ font-family:var(--wbc-en); font-size:9.4pt; line-height:1.5; padding-left:1.35em; text-indent:-1.35em; margin-bottom:.8mm; color:var(--wbc-ink); }
#wbPrintArea .pq-ansline{ display:flex; align-items:flex-end; gap:1.5mm; margin-top:2.4mm; }
#wbPrintArea .pq-ansline .pq-arrow{ flex:0 0 auto; font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .pq-ansline .ln{ flex:1 1 0; border-bottom:.8pt solid var(--wbc-ink-soft); height:6.5mm; }
#wbPrintArea .pq-a{ break-inside:avoid; margin-bottom:4.5mm; }
#wbPrintArea .pq-a-head{ font-size:9.8pt; font-weight:800; color:var(--wbc-ink); }
#wbPrintArea .pq-a-exp{ font-size:8.8pt; line-height:1.6; color:var(--wbc-ink-soft); margin-top:.8mm; text-align:justify; }
/* ── 상세분석 v11: 우측 사이드바(주제·흐름·TIP + 개념도, float) / 좌측 문장 흐름(문장·직독직해·독해흐름 하단) ── */
#wbPrintArea .wb-dt-shd{ padding:1.4mm 3mm; background:var(--wbc-band); border-bottom:1pt solid var(--wbc-ac); font-size:9.6pt; font-weight:800; letter-spacing:.4pt; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-shd::before{ content:"▪ "; }
/* 왼쪽 지문(고정 폭 칼럼 — 페이지 넘어가도 유지) / 오른쪽 정보(float) 완전 분리. 오른쪽 폰트=왼쪽 영어의 ~70% */
/* 상세분석 본문 전체의 연속 배율 — 밀도 클래스(wb-dtz1~4)는 4단계 '계단'이라
   1%만 줄이면 2쪽에 들어가는 상황에서도 5%씩 뛰어 지면을 버리거나 넘쳤다.
   zoom 은 transform 과 달리 레이아웃 높이까지 줄여서, _wbDetailFitPage 가 이 값을
   이분 탐색해 '2쪽에 들어가는 가장 큰 배율'을 찾는다. 기본값 1 = 원래 크기. */
#wbPrintArea .wb-dt-sents{ display:flow-root; width:100%; zoom:var(--wb-dt-scale, 1); }
/* 정리 밴드 — 문장 뒤 전폭 2단(주제·제목·TIP | 글의 흐름·개념 구조) + 아래 요약.
   예전엔 우측 float 레일이었는데, 쪽을 넘기면 좌/우 분할이 풀려 1쪽과 2쪽 조판이 달라졌고
   좁은 칼럼이 문장 높이를 30% 키웠다. 전폭 흐름으로 바꿔 두 문제를 함께 없앤다. */
/* clear:both — 키워드 레일(float) 옆에 끼면 밴드가 좁아지며 오히려 높아진다(측정도 같이 틀어진다). */
#wbPrintArea .wb-dt-brief{ clear:both; margin:0; font-size:7.8pt; break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-dt-briefgrid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(0, 1fr)); column-gap:5mm; align-items:start; }
#wbPrintArea .wb-dt-info{ border:1pt solid var(--wbc-line-soft); border-radius:3px; overflow:hidden; }
#wbPrintArea .wb-dt-irow{ padding:1.6mm 2.6mm; border-bottom:.5pt dotted var(--wbc-line-soft); font-size:7.8pt; line-height:1.5; }   /* 라벨 줄바꿈 후 내용(블록) */
#wbPrintArea .wb-dt-irow:last-child{ border-bottom:0; }
#wbPrintArea .wb-dt-ik{ display:inline-block; margin-bottom:1mm; text-align:center; font-size:6.6pt; font-weight:800; color:#fff; background:var(--wbc-ac); border-radius:2px; padding:.4mm 2mm; line-height:1.2; }
#wbPrintArea .wb-dt-iktip{ background:var(--wbc-ac); letter-spacing:.5pt; }
#wbPrintArea .wb-dt-ikclaim{ background:var(--wbc-ac); }   /* 필자 주장·함축 */
#wbPrintArea .wb-dt-ikblank{ background:var(--wbc-ac); }   /* 빈칸 예상 포인트 */
#wbPrintArea .wb-dt-iv{ display:block; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-bg{ line-height:1.55; color:var(--wbc-ink); text-align:justify; }
/* 글의 흐름 · 개념 구조 — 예전의 '흐름 박스'와 '핵심 개념 구조'를 합친 한 박스.
   각 노드 = 단계 라벨(도입·전개·결론) + 요지, 노드 사이 = ▼ + 관계어(왜냐하면·그러나·따라서). */
#wbPrintArea .wb-dt-cmap{ border:1pt solid var(--wbc-ac); border-radius:3px; overflow:hidden; break-inside:avoid; }
#wbPrintArea .wb-dt-cshd{ padding:1.2mm 2.6mm; background:var(--wbc-band); border-bottom:1pt solid var(--wbc-ac); font-size:7.6pt; font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-cshd::before{ content:"▪ "; }
#wbPrintArea .wb-dt-cbody{ padding:3.4mm 2.4mm 4mm; text-align:center; }   /* 기본(세로): 박스→▼→박스 */
#wbPrintArea .wb-dt-cdarrow::before{ content:"▼"; }
/* 정리 밴드 안에서는 가로 흐름 — 노드를 나란히 눕혀 세로 지면을 3분의 1로 줄인다 */
#wbPrintArea .wb-dt-brief .wb-dt-cbody{ display:flex; align-items:stretch; padding:2.6mm 2.4mm 3mm; }
#wbPrintArea .wb-dt-brief .wb-dt-cnode{ flex:1 1 0; min-width:0; display:flex; flex-direction:column; align-items:center; justify-content:center; }
#wbPrintArea .wb-dt-brief .wb-dt-cdown{ flex:0 0 auto; min-width:12mm; min-height:0; flex-direction:column; justify-content:center; gap:.4mm; padding:0 1mm; }
#wbPrintArea .wb-dt-brief .wb-dt-cdarrow::before{ content:"▶"; }
#wbPrintArea .wb-dt-cnode{ display:block; border:1.2pt solid var(--wbc-ac); border-radius:3px; background:#fff; padding:1.3mm 2.2mm; text-align:center; }
#wbPrintArea .wb-dt-cstage{ display:inline-block; margin-bottom:.9mm; padding:.3mm 1.8mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-size:6.6pt; font-weight:800; letter-spacing:.2pt; line-height:1.2; }
#wbPrintArea .wb-dt-ctext{ display:block; font-size:7.2pt; font-weight:700; line-height:1.32; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-cfin{ background:var(--wbc-ac); border-color:var(--wbc-ac); }
#wbPrintArea .wb-dt-cfin .wb-dt-cstage{ background:#fff; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-cfin .wb-dt-ctext{ color:#fff; }
#wbPrintArea .wb-dt-cdown{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1mm; min-height:7mm; padding:1mm 0; }   /* ▼는 위, 라벨은 아래 줄 — 같은 선상 금지 */
#wbPrintArea .wb-dt-cdarrow{ color:var(--wbc-ac); font-weight:800; font-size:9pt; line-height:1; }
#wbPrintArea .wb-dt-cdlabel{ font-size:6pt; font-weight:700; color:var(--wbc-ac); background:var(--wbc-band); border-radius:2px; padding:.3mm 1.4mm; }
/* 주제·제목(영/한) — 통합 정보 박스 안 */
#wbPrintArea .wb-dt-en2{ display:block; font-family:var(--wbc-en); font-weight:700; font-size:7.8pt; line-height:1.4; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-ko2{ display:block; margin-top:.5mm; font-size:7pt; line-height:1.4; color:var(--wbc-ink-soft); }
/* 요약 Summary — 통합으로 비운 자리를 채우는 새 항목(참조 교재에는 있고 우리에겐 없던 것) */
#wbPrintArea .wb-dt-brief .wb-dt-sum{ margin-top:0; }
#wbPrintArea .wb-dt-brief .wb-dt-cmap{ margin-top:4mm; }
#wbPrintArea .wb-dt-sum{ margin-top:4mm; border:1pt solid var(--wbc-ac); border-radius:3px; overflow:hidden; break-inside:avoid; }
#wbPrintArea .wb-dt-sum .wb-dt-cshd i{ margin-left:1.4mm; font-style:italic; font-weight:600; font-size:6.6pt; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-sumbody{ padding:1.8mm 2.4mm; }
#wbPrintArea .wb-dt-sumen{ font-family:var(--wbc-en); font-size:7.6pt; font-weight:600; line-height:1.45; color:var(--wbc-ink); text-align:justify; }
#wbPrintArea .wb-dt-sumko{ margin-top:1.2mm; padding-top:1.2mm; border-top:.5pt dotted var(--wbc-line-soft); font-size:7pt; line-height:1.45; color:var(--wbc-ink-soft); text-align:justify; }
/* 이어지는 쪽의 한 줄 머리글 — 같은 지문이 계속되는 쪽이라 전체 헤더(약 21mm)를 되풀이하지 않는다.
   ★ 높이(여백 포함)는 JS의 WB_DT_RUNNER(6mm)와 맞춰야 한다. 어긋나면 분할 계산이 틀어진다. */
#wbPrintArea .wb-dt-runner{ padding:0 0 1mm; margin:0 0 3mm; border-bottom:.8pt solid var(--wbc-line-soft);
  font-size:7.6pt; font-weight:700; letter-spacing:-.1pt; color:var(--wbc-ink-soft); text-align:right; }
/* 파트 배너 — 분석면(1쪽) → 학습면(2쪽) 전환을 명시. 조판이 달라지는 이유를 지면에서 설명한다. */
#wbPrintArea .wb-dt-partbar{ display:flex; align-items:center; gap:2.6mm; margin:1.4mm 0 0; break-after:avoid; page-break-after:avoid; }
#wbPrintArea .wb-dt-partbar::before, #wbPrintArea .wb-dt-partbar::after{ content:""; flex:1 1 0; border-top:1.2pt solid var(--wbc-ac); }
#wbPrintArea .wb-dt-parttx{ flex:0 0 auto; font-size:8.8pt; font-weight:800; letter-spacing:-.1pt; color:var(--wbc-ac); white-space:nowrap; }
#wbPrintArea .wb-dt-partn{ margin-right:1.6mm; padding:.3mm 1.8mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-size:7pt; font-weight:800; letter-spacing:.3pt; vertical-align:.6pt; }
#wbPrintArea .wb-dt-partbar i{ margin-left:1.4mm; font-style:italic; font-weight:600; font-size:7pt; color:var(--wbc-ink-soft); letter-spacing:.2pt; }
/* 좌측 문장 흐름(각 문장 = BFC 블록 → float 옆/아래로 흐름) */
/* 본문 오른쪽 키워드 레일 — 본문 폭을 묶으면서 생긴 여백을 쓴다.
   ★position:absolute — 흐름 밖으로 뺀다. float이던 시절엔 레일이 길수록 .wb-dt-sents(BFC)가
   같이 늘어나, 본문에는 자리가 남는데도 브라우저가 컨테이너를 쪼개 마지막 문장을
   헤더 없는 쪽으로 넘겼다(2026-08-21 실측: 본문이 242mm에서 끊겼다. 한계는 279mm).
   흐름 밖에 두면 레일 높이가 쪽수 계산에 아예 영향을 주지 않는다.
   본문 폭은 float 회피가 아니라 .wb-dt-s의 max-width가 잡는다.
   ★폭은 밀도 단계와 짝을 이룬다 — 레일 + 여백 5mm + 본문 max-width = 186mm.
   여백을 빼면 본문이 구분선에 딱 붙어 글자가 잘린 것처럼 보인다(실측). */
/* box-sizing:border-box — width에 padding·border가 포함돼야 본문 폭(max-width)과 정확히 짝이 맞는다.
   안 그러면 레일 아래쪽 문장만 4mm 더 넓어져 칼럼 경계가 어긋난다. */
#wbPrintArea .wb-dt-rail{ position:absolute; right:12mm; bottom:var(--wb-pad-v); box-sizing:border-box; width:46mm; padding-left:5mm; border-left:1.2pt solid var(--wbc-line-soft); }
#wbPrintArea .wb-page.wb-dtz1 .wb-dt-rail{ width:50mm; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-rail{ width:56mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-rail{ width:62mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-rail{ width:68mm; }
/* 본문 아래 표현 밴드 — 참고 표현 | 구·절 표현 2단. 레일을 대신한다(본문은 전폭). */
#wbPrintArea .wb-dt-band{ display:grid; grid-template-columns:1fr 1fr; gap:0 7mm; margin:2mm 0 0; padding-top:2.6mm;
  border-top:1.2pt solid var(--wbc-line-soft); break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-dt-band .wb-dt-bcol + .wb-dt-bcol{ padding-left:7mm; border-left:.8pt solid var(--wbc-line-soft); }
#wbPrintArea .wb-dt-band .wb-dt-railhd2{ margin-top:0; }
#wbPrintArea .wb-dt-railhd{ margin-bottom:1.6mm; padding-bottom:.8mm; border-bottom:1pt solid var(--wbc-ac); font-size:8pt; font-weight:800; letter-spacing:-.1pt; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-railhd::before{ content:"▪ "; }
#wbPrintArea .wb-dt-railhd2{ margin-top:5mm; }
#wbPrintArea .wb-dt-kw{ font-family:var(--wbc-en); font-size:8.2pt; font-weight:600; line-height:1.5; color:var(--wbc-ink); padding:.5mm 0; overflow-wrap:break-word; }
#wbPrintArea .wb-dt-kw::before{ content:"· "; color:var(--wbc-ac); font-weight:800; }
#wbPrintArea .wb-dt-xw{ padding:1.1mm 0; line-height:1.38; overflow-wrap:break-word; border-bottom:.4pt dotted var(--wbc-line-soft); }
#wbPrintArea .wb-dt-xw:last-child{ border-bottom:0; }
#wbPrintArea .wb-dt-xw b{ font-family:var(--wbc-en); font-size:8.2pt; font-weight:700; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-xko{ margin-left:1.6mm; font-size:7.2pt; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-xp{ display:block; margin-top:.5mm; font-family:var(--wbc-en); font-size:7.8pt; font-weight:600; line-height:1.34; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-xpk{ display:block; font-size:7pt; line-height:1.34; color:var(--wbc-ink-soft); }
/* 번호를 문장 옆에 두는 2단 그리드 — 번호만 있던 줄이 없어져 문장당 5~6mm를 아낀다 */
/* ★max-width는 레일 폭과 짝(합 186mm). 이걸 안 걸면 문장 폭이 '레일 높이'에 따라 달라진다
   — 레일이 짧으면 그 아래 문장만 넓어지고, 레일을 쪽 끝까지 늘리면 전부 좁아져 넘친다.
   폭을 고정해 두면 레일 높이를 나중에 바꿔도 측정이 흔들리지 않는다. */
/* 주제문 — 글의 논지를 담은 문장. 번호 열에 색을 채우고 왼쪽에 가는 세로선을 둔다.
   본문 글자에는 손대지 않는다(형광·밑줄과 겹쳐 읽기가 어려워지므로). */
#wbPrintArea .wb-dt-s.wb-dt-topic{ border-left:1.8pt solid var(--wbc-ac); padding-left:2.4mm; margin-left:-4.2mm; }
#wbPrintArea .wb-dt-s.wb-dt-topic .wb-dt-n{ background:var(--wbc-ac); color:#fff; }
#wbPrintArea .wb-dt-s.wb-dt-topic .wb-dt-n::after{ content:"주제문"; position:absolute; left:50%; top:100%;
  transform:translateX(-50%); margin-top:.6mm; font-size:5.4pt; font-weight:800; letter-spacing:-.2pt;
  color:var(--wbc-ac); white-space:nowrap; }
#wbPrintArea .wb-dt-s.wb-dt-topic .wb-dt-n{ position:relative; }
#wbPrintArea .wb-dt-tbadge{ padding:.2mm 1.2mm; background:var(--wbc-ac); color:#fff; border-radius:2px;
  font-size:7pt; font-weight:800; letter-spacing:-.2pt; margin-right:1.2mm; }
#wbPrintArea .wb-dt-s{ display:grid; grid-template-columns:6.4mm 1fr; column-gap:2.6mm; align-items:start; max-width:none; margin-bottom:var(--wb-dt-gap, 9mm); break-inside:avoid; page-break-inside:avoid; }
/* 밀도 단계별 본문 폭 제한은 우측 레일이 있던 시절의 것 — 레일을 없앤 뒤로는 전폭을 쓴다. */
#wbPrintArea .wb-dt-sbody{ min-width:0; }
/* 마지막 항목의 아래 여백은 지운다 — 쪽 끝에서 쓸데없이 5mm를 잡아먹고, 그만큼 한계에 가까워진다 */
#wbPrintArea .wb-dt-sents > *:last-child{ margin-bottom:0; }
#wbPrintArea .wb-page.wb-dense{ --wb-dt-gap:7.5mm; }
#wbPrintArea .wb-page.wb-tight{ --wb-dt-gap:6mm; }
#wbPrintArea .wb-dt-n{ display:inline-flex; align-items:center; justify-content:center; align-self:start; min-width:6.4mm; height:5.4mm; margin-top:.6mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-weight:800; font-size:9pt; line-height:1; }
/* 본문 영어 — 줄 길이(measure)를 140mm로 묶는다.
   전폭 177mm에서는 한 줄이 90~95자였는데, 이어 읽기 좋은 범위는 45~75자다.
   긴 줄에서는 줄바꿈 때 눈이 다음 줄 첫머리를 놓쳐서, 줄간격을 더 벌릴수록 오히려 나빠진다.
   140mm로 줄이면 최장 66자가 되고, 그만큼 글자를 키우고 행간은 정상 범위(1.78)로 되돌린다.
   줄이 66~76자로 짧아진 뒤로는 양쪽 정렬을 해도 단어 간격이 벌어지지 않는다(90자일 때가 문제였다).
   오른쪽에 남는 폭은 핵심 키워드 레일(.wb-dt-rail)이 쓴다. */
#wbPrintArea .wb-dt-en{ font-family:var(--wbc-en); max-width:none; font-size:11.2pt; line-height:1.78; color:var(--wbc-ink); text-align:justify; overflow-wrap:break-word; }
#wbPrintArea .wb-dt-en .wb-pv{ position:relative; }
#wbPrintArea .wb-dt-en .wb-pv::after{ content:"V"; position:absolute; left:50%; bottom:-.82em; transform:translateX(-50%); font-size:6pt; font-weight:800; color:var(--wbc-ac); line-height:1; }
#wbPrintArea .wb-dt-lit{ max-width:none; margin-top:1.6mm; font-size:9pt; line-height:1.6; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-litlabel{ font-size:7pt; font-weight:800; color:var(--wbc-ac); background:var(--wbc-band); border-radius:2px; padding:.2mm 1.4mm; margin-right:1.4mm; vertical-align:1pt; }
/* 성분 마커 — 괄호([ ] ( ) < >)는 인쇄하지 않는다(문장 가독성 저해). 청크 경계는 슬래시(.wb-sl)로만 보인다.
   따라서 N/J/D는 시각 효과 없이 클래스만 남기고(전 문장이 굵어지는 것을 막는다), 본동사 V만 굵게 + 하단 'V'. */
#wbPrintArea .wb-pn{ color:inherit; font-weight:inherit; }
#wbPrintArea .wb-pj{ color:inherit; font-weight:inherit; }
#wbPrintArea .wb-pd{ color:inherit; font-weight:inherit; }
#wbPrintArea .wb-pv{ color:var(--wbc-ink); font-weight:700; }
/* 직독직해 슬래시 — 영어 문장의 / 와 바로 아래 직독직해의 / 가 같은 자리에서 끊긴다(덩어리 대응 학습).
   글자보다 흐리고 얇게: 끊는 자리는 보이되 단어를 읽는 흐름은 방해하지 않게. */
#wbPrintArea .wb-sl{ color:var(--wbc-line-soft); font-weight:400; padding:0 .2mm; }
/* 출제 형광: 어법=노랑 {{G}} · 어휘(반의어 함정)=분홍 {{W}} */
/* 형광펜 '한 겹'만 — 예전엔 같은 색 진한 밑줄(inset box-shadow)을 덧대 두 줄로 보였다. 제거. */
#wbPrintArea .wb-hg{ background:#ffe14d; font-weight:700; border-radius:1.5px; padding:0 .6mm; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
#wbPrintArea .wb-hw{ background:#ffb3d1; font-weight:700; border-radius:1.5px; padding:0 .6mm; box-decoration-break:clone; -webkit-box-decoration-break:clone; }
/* 어법 형광 아래 인라인 주석 — 왜 그 자리가 포인트인지 한 줄로(표시만 하고 안 가르치는 문제 해소) */
/* 형광 아래 주석(어법·반의어·재진술)은 절대배치라 다음 줄 글자와 겹친다.
   ★자리를 넓히는 건 '문장 전체'가 아니라 '그 줄'이다 — 블록에 line-height 를 주면 주석이 없는 줄까지
   벌어져 지면만 버린다. 그래서 _wbDetailNoteStagger 가 주석을 단 형광(인라인)에만 line-height 를
   직접 계산해 걸고, 여기서는 마지막 줄 주석이 아래 블록과 겹치지 않게 할 여백만 둔다. */
#wbPrintArea .wb-dt-en.wb-dt-en-note{ padding-bottom:.9em; }
#wbPrintArea .wb-dt-en .wb-hg[data-note]{ position:relative; }
#wbPrintArea .wb-dt-en .wb-hg[data-note]::after{ content:attr(data-note); position:absolute; left:50%; top:100%; transform:translateX(-50%);
  margin-top:calc(.2em + var(--wb-nlv, 0) * 1.15em); font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo',sans-serif; font-size:5.9pt; font-weight:700;
  letter-spacing:-.1pt; line-height:1.1; color:var(--wbc-ac); white-space:nowrap; }
/* 어휘 형광 아래 = 이 자리의 반의어(반의어로 바꾸면 흐름이 깨진다는 표시).
   어법 주석과 같은 자리·같은 크기로 두되 색만 어휘 계열로 구분한다. */
#wbPrintArea .wb-dt-en .wb-hw[data-note]{ position:relative; }
#wbPrintArea .wb-dt-en .wb-hw[data-note]::after{ content:"↔ " attr(data-note); position:absolute; left:50%; top:100%; transform:translateX(-50%);
  margin-top:calc(.2em + var(--wb-nlv, 0) * 1.15em); font-family:var(--wbc-en); font-size:5.9pt; font-weight:700;
  letter-spacing:-.1pt; line-height:1.1; color:#a3306a; white-space:nowrap; }
/* 빈칸 예상 지점 — 박스 + 상단 '빈칸' 라벨 */
/* 빈칸 예상 지점 — 예전엔 테두리 상자였다. 상자는 주제가 담긴 구·절을 '따로 떼어 놓은 것'처럼 보이게 해서
   문장 흐름을 끊었다. 굵은 밑줄이 '이 대목이 핵심'이라는 신호는 그대로 주면서 읽기를 방해하지 않는다. */
#wbPrintArea .wb-hb{ position:relative; border:0; border-bottom:2.2pt solid var(--wbc-ac); padding:0 .2mm .4mm; }
/* 빈칸 박스 아래 = 그 자리를 다른 말로 바꾼 재진술(패러프레이즈). 빈칸 문제의 정답 근거가 된다. */
#wbPrintArea .wb-dt-en .wb-hb[data-note]::after{ content:"= " attr(data-note); position:absolute; left:50%; top:100%; transform:translateX(-50%);
  margin-top:calc(.34em + var(--wb-nlv, 0) * 1.15em); font-family:var(--wbc-en); font-size:5.9pt; font-weight:700;
  letter-spacing:-.1pt; line-height:1.1; color:var(--wbc-ac); white-space:nowrap; }
#wbPrintArea .wb-hb::before{ content:"빈칸"; position:absolute; left:0; top:-1.05em; font-size:5.6pt; font-weight:800; letter-spacing:.2pt; color:var(--wbc-ac); line-height:1; white-space:nowrap; }
/* 출제 형광 안내 키 */
#wbPrintArea .wb-dt-hlkey{ margin:0 0 3.5mm; padding:1.4mm 3mm; background:var(--wbc-band); border:.8pt dashed var(--wbc-line-soft); border-radius:4px; font-size:8.4pt; font-weight:600; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-hlkey .wb-hlsep{ margin:0 1.2mm; }
#wbPrintArea .wb-dt-hlkey .wb-hg, #wbPrintArea .wb-dt-hlkey .wb-hw, #wbPrintArea .wb-dt-hlkey .wb-hb{ font-weight:800; color:var(--wbc-ink); margin-right:1.2mm; }
#wbPrintArea .wb-dt-hlkey .wb-sl{ font-weight:800; color:var(--wbc-ink); margin-right:1.2mm; padding:0; }   /* 범례에서는 또렷하게 */
#wbPrintArea .wb-dt-hlkey .wb-hb{ border-bottom-width:1.6pt; padding:0 .4mm .2mm; }
#wbPrintArea .wb-dt-hlkey .wb-hb::before{ content:none; }   /* 범례 칩엔 '빈칸' 라벨 중복 금지 */
#wbPrintArea .wb-hlsep{ margin:0 2.4mm; color:var(--wbc-line-soft); }
/* ── 학습 블록: 어휘 · 내용 확인(T/F) · 어법 선택 — 분석 뒤에 이어 붙는 '푸는' 영역 ── */
#wbPrintArea .wb-dt-blk{ margin-top:5.5mm; break-inside:avoid; page-break-inside:avoid; }
#wbPrintArea .wb-dt-blk:first-child{ margin-top:0; }
#wbPrintArea .wb-dt-bhd{ position:relative; padding:0 0 1.2mm 2.8mm; margin-bottom:2mm; border-bottom:1.4pt solid var(--wbc-ac); font-size:9.6pt; font-weight:800; letter-spacing:-.1pt; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-bhd::before{ content:""; position:absolute; left:0; top:.3mm; bottom:1.8mm; width:2.8pt; background:var(--wbc-ac); border-radius:1px; }
#wbPrintArea .wb-dt-contmark{ margin-left:1.8mm; padding:.2mm 1.4mm; background:var(--wbc-band); border-radius:2px; font-style:normal; font-size:6.6pt; font-weight:700; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-bhd i{ margin-left:1.8mm; font-style:italic; font-weight:600; font-size:7.4pt; letter-spacing:.2pt; color:var(--wbc-ink-soft); }
/* 어휘 — 단어 / 문맥 뜻 / 유·반·혼 */
#wbPrintArea .wb-dt-vrow{ display:grid; grid-template-columns:22% 27% 1fr; column-gap:3.4mm; align-items:start; padding:1.5mm 0; border-bottom:.4pt dotted var(--wbc-line-soft); break-inside:avoid; }
#wbPrintArea .wb-dt-vrow:last-child{ border-bottom:0; }
#wbPrintArea .wb-dt-vw{ font-family:var(--wbc-en); font-size:9.4pt; font-weight:800; line-height:1.4; color:var(--wbc-ac); overflow-wrap:break-word; }
#wbPrintArea .wb-dt-vpos{ display:inline-block; margin-left:1.2mm; padding:.1mm 1.2mm; background:var(--wbc-band); border-radius:2px; font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo',sans-serif; font-size:6.4pt; font-weight:700; color:var(--wbc-ink-soft); vertical-align:1.2pt; }
#wbPrintArea .wb-dt-vko{ font-size:8.2pt; line-height:1.5; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-vline{ font-family:var(--wbc-en); font-size:8pt; line-height:1.5; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-vtag{ display:inline-block; min-width:3.4mm; margin-right:1.4mm; padding:.1mm 0; text-align:center; border-radius:2px; font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo',sans-serif; font-size:6.2pt; font-weight:800; color:#fff; vertical-align:1pt; }
#wbPrintArea .wb-t-syn{ background:#1f7a5a; }
#wbPrintArea .wb-t-ant{ background:var(--wbc-ac); }
#wbPrintArea .wb-t-conf{ background:#b4610f; }
/* 문항 행 — 내용 확인 / 어법 선택 공통 */
#wbPrintArea .wb-dt-qrow{ display:flex; align-items:baseline; gap:2.6mm; padding:1.6mm 0; border-bottom:.4pt dotted var(--wbc-line-soft); break-inside:avoid; }
#wbPrintArea .wb-dt-qrow:last-child{ border-bottom:0; }
#wbPrintArea .wb-dt-qn{ flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; min-width:4.6mm; height:4.6mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-size:7.4pt; font-weight:800; line-height:1; }
#wbPrintArea .wb-dt-qtx{ flex:1 1 auto; font-size:8.8pt; line-height:1.55; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-qen{ font-family:var(--wbc-en); font-size:9.2pt; }
#wbPrintArea .wb-dt-ox{ flex:0 0 auto; display:inline-flex; gap:3.4mm; padding-left:2mm; }
#wbPrintArea .wb-dt-oxo{ display:inline-block; min-width:4.6mm; text-align:center; font-family:var(--wbc-en); font-size:8.8pt; font-weight:700; color:var(--wbc-ink-soft); }
#wbPrintArea .wb-dt-oxon{ color:var(--wbc-ac); font-weight:800; box-shadow:0 0 0 1pt var(--wbc-ac); border-radius:50%; }
#wbPrintArea .wb-dt-gsel{ font-weight:700; white-space:nowrap; }
#wbPrintArea .wb-dt-gopt{ padding:0 .3mm; }
#wbPrintArea .wb-dt-gok{ color:var(--wbc-ac); font-weight:800; text-decoration:underline; text-underline-offset:1.6pt; }
/* ── 정답·해설 별지 ── */
#wbPrintArea .wb-dt-ablock{ margin-bottom:7mm; break-inside:avoid; }
#wbPrintArea .wb-dt-ablock-h{ padding-bottom:1.2mm; margin-bottom:3mm; border-bottom:1.6pt solid var(--wbc-ac); font-size:10.4pt; font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-akey{ margin-bottom:3.5mm; padding:2mm 3mm; background:var(--wbc-band); border:1pt solid var(--wbc-ac); border-radius:3px; }
/* 정답 박스 — 학습 블록 맨 아래(본지 2쪽). 해설 없이 정답만, 섹션 헤더 없이 한 줄짜리로. */
#wbPrintArea .wb-dt-keyblk{ margin-top:3mm; }
#wbPrintArea .wb-dt-keyblk .wb-dt-akey{ display:flex; align-items:center; gap:3mm; margin-bottom:0; padding:1.6mm 3mm; }
#wbPrintArea .wb-dt-akhd{ flex:0 0 auto; padding:.5mm 2.4mm; background:var(--wbc-ac); color:#fff; border-radius:2px; font-size:8pt; font-weight:800; letter-spacing:.3pt; }
#wbPrintArea .wb-dt-akbody{ flex:1 1 auto; min-width:0; }
#wbPrintArea .wb-dt-keyblk .wb-dt-akrow{ padding:.3mm 0; }
#wbPrintArea .wb-dt-keyblk .wb-dt-akl{ flex:0 0 17mm; font-size:7.4pt; }
#wbPrintArea .wb-dt-keyblk .wb-dt-akv{ font-size:8.4pt; line-height:1.4; }
#wbPrintArea .wb-dt-akrow{ display:flex; align-items:baseline; gap:3mm; padding:.7mm 0; }
#wbPrintArea .wb-dt-akl{ flex:0 0 20mm; font-size:8pt; font-weight:800; color:var(--wbc-ac); }
#wbPrintArea .wb-dt-akv{ flex:1 1 auto; font-family:var(--wbc-en); font-size:9pt; font-weight:700; line-height:1.5; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-erow{ display:flex; align-items:baseline; gap:2.6mm; padding:1.3mm 0; border-bottom:.4pt dotted var(--wbc-line-soft); break-inside:avoid; }
#wbPrintArea .wb-dt-erow:last-child{ border-bottom:0; }
#wbPrintArea .wb-dt-etx{ flex:1 1 auto; font-size:8.4pt; line-height:1.6; color:var(--wbc-ink); }
#wbPrintArea .wb-dt-etx b{ font-family:var(--wbc-en); color:var(--wbc-ac); margin-right:1mm; }
#wbPrintArea .wb-dt-etag{ display:inline-block; margin-left:1.8mm; padding:.2mm 1.6mm; background:var(--wbc-band); border-radius:2px; font-size:6.8pt; font-weight:700; color:var(--wbc-ink-soft); white-space:nowrap; }
#wbPrintArea .wb-page.wb-dtz4{ --wb-dt-gap:3.6mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-en{ font-size:9.3pt; line-height:1.62; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-lit{ font-size:7.9pt; margin-top:.7mm; line-height:1.42; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-en .wb-hg[data-note]::after{ font-size:5.3pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-brief{ font-size:6.9pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-irow{ padding:1mm 1.8mm; font-size:6.4pt; line-height:1.36; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-en2{ font-size:7pt; line-height:1.3; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-cstage{ font-size:6pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-ctext{ font-size:6.4pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-sumen{ font-size:6.6pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-sumko{ font-size:6.2pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-sumbody{ padding:1.4mm 2mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-parttx{ font-size:8.2pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-partbar{ margin:.5mm 0 0; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-cbody{ padding:1.8mm 1.6mm 2mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-cnode{ padding:.9mm 1.8mm; font-size:6.5pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-cdown{ min-height:4.2mm; padding:.3mm 0; gap:.5mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-blk{ margin-top:1.8mm; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-bhd{ padding-bottom:.7mm; margin-bottom:1mm; font-size:9pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-vrow, #wbPrintArea .wb-page.wb-dtz4 .wb-dt-qrow{ padding:.55mm 0; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-vw{ font-size:8.5pt; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-vko, #wbPrintArea .wb-page.wb-dtz4 .wb-dt-vline{ font-size:7.1pt; line-height:1.34; }
#wbPrintArea .wb-page.wb-dtz4 .wb-dt-qtx, #wbPrintArea .wb-page.wb-dtz4 .wb-dt-qen{ font-size:7.9pt; line-height:1.4; }
/* 어휘 2단 배치(wb-dtv2) — 행을 '단어+뜻 / 유 / 반 / 혼' 4줄로 쌓아 반폭에서도 읽히게 한다.
   높이가 약 45% 줄어 밀도 단계보다 효과가 크고 내용 손실이 없다. */
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-blk-voc, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-blk-voc{ column-gap:7mm; column-rule:.4pt dotted var(--wbc-line-soft); }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-blk-voc{ column-count:2; }
#wbPrintArea .wb-page.wb-dtv3 .wb-dt-blk-voc{ column-count:3; column-gap:5mm; }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-blk-voc .wb-dt-bhd, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-blk-voc .wb-dt-bhd{ column-span:all; }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-vrow, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-vrow{ display:block; padding:1.1mm 0; break-inside:avoid; }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-vw, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-vw{ display:inline; }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-vko, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-vko{ display:inline; margin-left:2mm; }
#wbPrintArea .wb-page.wb-dtv2 .wb-dt-vch, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-vch{ display:block; margin-top:.3mm; }
#wbPrintArea .wb-page.wb-dtv3 .wb-dt-vrow{ padding:.9mm 0; }
#wbPrintArea .wb-page.wb-dtv3 .wb-dt-vw{ font-size:8.2pt; }
#wbPrintArea .wb-page.wb-dtv3 .wb-dt-vko, #wbPrintArea .wb-page.wb-dtv3 .wb-dt-vline{ font-size:6.9pt; line-height:1.32; }
/* ── 2페이지 맞춤 밀도 단계 — 내용을 지우지 않고 간격·글자만 단계적으로 조인다(wb-dtz1 → 3) ── */
#wbPrintArea .wb-page.wb-dtz1{ --wb-dt-gap:7mm; }
#wbPrintArea .wb-page.wb-dtz1 .wb-dt-en{ font-size:10.8pt; line-height:1.74; }
#wbPrintArea .wb-page.wb-dtz1 .wb-dt-lit{ margin-top:1.2mm; line-height:1.55; }
#wbPrintArea .wb-page.wb-dtz1 .wb-dt-blk{ margin-top:4mm; }
#wbPrintArea .wb-page.wb-dtz1 .wb-dt-vrow, #wbPrintArea .wb-page.wb-dtz1 .wb-dt-qrow{ padding:1.2mm 0; }

#wbPrintArea .wb-page.wb-dtz2{ --wb-dt-gap:6mm; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-en{ font-size:10.3pt; line-height:1.7; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-lit{ font-size:8.6pt; margin-top:1mm; line-height:1.5; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-brief{ font-size:7.4pt; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-irow{ padding:1.3mm 2.2mm; font-size:7pt; line-height:1.45; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-cstage{ font-size:6.4pt; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-ctext{ font-size:6.9pt; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-sumen{ font-size:7.2pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-sumko{ font-size:6.7pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-sumbody{ padding:1.4mm 2mm; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-parttx{ font-size:8.2pt; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-partbar{ margin:1mm 0 0; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-cbody{ padding:2.6mm 2mm 3mm; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-cdown{ min-height:5.6mm; padding:.6mm 0; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-blk{ margin-top:3.4mm; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-vrow, #wbPrintArea .wb-page.wb-dtz2 .wb-dt-qrow{ padding:1mm 0; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-qtx, #wbPrintArea .wb-page.wb-dtz2 .wb-dt-qen{ font-size:8.6pt; line-height:1.5; }
#wbPrintArea .wb-page.wb-dtz2 .wb-dt-vko, #wbPrintArea .wb-page.wb-dtz2 .wb-dt-vline{ font-size:7.7pt; line-height:1.42; }

#wbPrintArea .wb-page.wb-dtz3{ --wb-dt-gap:4.6mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-en{ font-size:9.8pt; line-height:1.66; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-lit{ font-size:8.2pt; margin-top:.9mm; line-height:1.45; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-en .wb-hg[data-note]::after{ font-size:5.5pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-brief{ font-size:7.1pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-irow{ padding:1.1mm 2mm; font-size:6.7pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-en2{ font-size:7.3pt; line-height:1.32; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-cstage{ font-size:6.2pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-ctext{ font-size:6.7pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-sumen{ font-size:6.9pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-sumko{ font-size:6.4pt; line-height:1.4; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-sumbody{ padding:1.4mm 2mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-parttx{ font-size:8.2pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-partbar{ margin:1mm 0 0; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-cbody{ padding:2mm 1.8mm 2.4mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-cnode{ padding:1.1mm 2mm; font-size:6.8pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-cdown{ min-height:4.8mm; padding:.4mm 0; gap:.6mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-blk{ margin-top:3mm; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-bhd{ padding-bottom:1mm; margin-bottom:1.6mm; font-size:9.2pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-vrow, #wbPrintArea .wb-page.wb-dtz3 .wb-dt-qrow{ padding:.85mm 0; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-vw{ font-size:8.8pt; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-vko, #wbPrintArea .wb-page.wb-dtz3 .wb-dt-vline{ font-size:7.4pt; line-height:1.38; }
#wbPrintArea .wb-page.wb-dtz3 .wb-dt-qtx, #wbPrintArea .wb-page.wb-dtz3 .wb-dt-qen{ font-size:8.2pt; line-height:1.45; }
/* ══ 리뷰 테스트 (복습 시험지) — 미리보기 + 인쇄 공통. wb-page 재사용(인쇄 여백은 @media print .wb-page 패딩) ══ */
.rv-preview{ margin-top:14px; }
.rv-prev-empty{ padding:26px 16px; text-align:center; color:var(--ink3); font-size:13px; border:1px dashed var(--bd); border-radius:10px; }
.rv-txt-bar{ display:flex; align-items:center; gap:10px; margin-bottom:8px; flex-wrap:wrap; }
.rv-txt-hint{ font-size:12px; color:var(--ink3); }
.rv-textarea{ width:100%; min-height:420px; box-sizing:border-box; font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:12.5px; line-height:1.65; color:var(--ink); background:var(--sf); border:1px solid var(--bd); border-radius:var(--r); padding:12px 14px; resize:vertical; white-space:pre-wrap; word-break:break-word; }
.rv-prev-hint{ font-size:11px; color:#8a8f98; margin-bottom:8px; }
.rv-prev-frame{ overflow:auto; background:#eef1f5; padding:14px; border-radius:10px; text-align:center; }
/* 상하 패딩은 인쇄(--wb-pad-v)·측정(_rvSplitToPages의 WB_PAD_V)과 같은 18mm — 어긋나면 미리보기와 인쇄 조판이 달라진다. */
.rv-prev-frame .rv-page{ zoom:.66; width:210mm; min-height:297mm; margin:0 auto 12px; padding:18mm 12mm; box-sizing:border-box; background:#fff; box-shadow:0 2px 14px rgba(0,0,0,.16); text-align:left; }
/* font-weight:500 — 인쇄에선 #wbPrintArea의 500을 상속받으므로 미리보기·오프스크린 측정도 같은 굵기로 재야 줄바꿈(높이)이 일치한다. */
.rv-page{ --rv-ac:#1B4079; --rv-line:#A5BAD9; color:#000; font-family:'Pretendard Variable','Pretendard','Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR',sans-serif; font-size:10pt; line-height:1.58; font-weight:500; }
.rv-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:6mm; padding:1.4mm 0 1.8mm; margin-bottom:3mm; border-top:1.8pt solid var(--rv-ac); border-bottom:1.8pt solid var(--rv-ac); }
.rv-title{ font-size:13pt; font-weight:800; color:var(--rv-ac); }
.rv-meta{ font-size:9.5pt; color:#333; white-space:nowrap; }
.rv-passage{ border:1pt solid var(--rv-line); background:#F7F9FC; padding:2.4mm 3mm; margin-bottom:3mm; text-align:justify; color:#1a1a1a; }
.rv-passage.rv-p-sm{ font-size:8.3pt; line-height:1.5; }
.rv-passage.rv-p-md{ font-size:9.6pt; line-height:1.6; }
.rv-flow{ column-gap:7mm; }
.rv-block{ break-inside:avoid; page-break-inside:avoid; -webkit-column-break-inside:avoid; border:1pt solid var(--rv-line); border-radius:2px; padding:2.2mm 3mm 2.6mm; margin:0 0 3mm; box-sizing:border-box; overflow:hidden; }
.rv-block-h{ font-size:9pt; font-weight:800; color:#000; margin-bottom:1.6mm; padding-bottom:1mm; border-bottom:.8pt solid var(--rv-line); }
.rv-block-h b{ color:#000; }
/* 문제 상자 번호 — 상자 안 항목 번호(1.2.3.)와 헷갈리지 않게 채운 원형 배지로 구분한다.
   복사기 인쇄 대비: 색이 아니라 명도 대비(진한 바탕 + 흰 숫자)로 읽히게. */
.rv-block-n{ display:inline-block; min-width:4.4mm; height:4.4mm; line-height:4.4mm; margin-right:1.6mm; padding:0 .7mm;
  border-radius:50%; background:var(--rv-ac); color:#fff; font-size:8pt; font-weight:800; text-align:center; box-sizing:border-box; }
.rv-list{ margin:0; padding-left:5.4mm; }
.rv-list li{ margin-bottom:1.5mm; }
.rv-tf li{ text-align:justify; }
/* T/F 표기는 진술문 뒤(HTML 순서)에 두고 오른쪽으로 띄운다 — 마지막 줄 오른쪽 끝에 붙고,
   그 줄에 자리가 없으면 아래 줄 오른쪽으로 내려가 늘 '진술문 오른쪽 하단'에 온다.
   ::after 클리어픽스로 li가 항상 플로트를 품으므로 다음 문항 위로 겹치지 않는다(2026-08-31 겹침 재발 방지). */
.rv-tf li::after{ content:''; display:block; clear:both; }
.rv-tf-c{ float:right; font-weight:700; white-space:nowrap; margin-left:3mm; }
/* 한 장을 넘어 쪼개진 문제 상자의 뒷조각 표시 */
.rv-cont{ margin-left:1.6mm; font-size:8pt; font-weight:700; color:var(--rv-ac); }
.rv-ok{ color:var(--rv-ac); font-weight:800; }
.rv-ev{ clear:both; font-size:8pt; color:#666; margin-top:.3mm; }
.rv-q{ display:block; }
.rv-ans{ border-bottom:.7pt solid var(--rv-line); min-height:5mm; margin-top:1mm; }
.rv-ans-t{ min-height:0; border-bottom:0; color:var(--rv-ac); font-weight:700; font-size:9pt; margin-top:.6mm; }
.rv-opts{ list-style:none; margin:0; padding:0; }
.rv-opt{ margin-bottom:1.1mm; font-size:9pt; text-align:justify; }
.rv-onum{ font-weight:700; margin-right:1mm; }
.rv-pp-sent{ font-size:9pt; line-height:1.55; margin-bottom:1.4mm; background:#F7F9FC; padding:1.4mm 2mm; border-left:2.4pt solid var(--rv-line); }
.rv-pp-sent u{ text-decoration-thickness:1.2pt; text-underline-offset:2pt; font-weight:700; }
.rv-af{ break-inside:avoid; margin-top:3mm; border-top:1.4pt solid var(--rv-ac); padding-top:1.8mm; }
.rv-af-h{ font-size:9pt; font-weight:800; color:var(--rv-ac); margin-bottom:1.2mm; }
.rv-af-row{ font-size:8.4pt; line-height:1.55; color:#222; margin-bottom:.8mm; }
.rv-af-n{ font-weight:800; color:#000; margin-right:2mm; }
.rv-af-row b{ color:var(--rv-ac); }
.rv-af-body{ margin-top:1mm; }
/* 정답지의 주제·패러프레이징 — 정답 번호마다 줄을 바꿔 선지 원문과 해석을 싣는다 */
/* 복사기로 뽑으면 옅은 회색이 뭉개져 오답 선지가 읽히지 않는다 —
   정답·오답을 색이 아니라 굵기(+✓)로만 가른다. 글자색은 전부 진하게 유지. */
.rv-af-opt{ margin:.7mm 0 0 6mm; padding-left:5mm; text-indent:-5mm; line-height:1.5; color:#111; }
.rv-af-opt .rv-onum{ font-weight:800; margin-right:1mm; }
.rv-af-on{ font-weight:700; }
.rv-af-ko{ display:block; margin-left:5mm; font-weight:400; color:#222; }
.rv-af-x{ margin:.9mm 0 0 6mm; color:#222; }
/* 여러 지문의 답지를 한 장에 이어 붙일 때 지문 구분 */
.rv-af-p{ font-size:9pt; font-weight:800; color:var(--rv-ac); margin:2.4mm 0 1mm; padding-bottom:.6mm; border-bottom:.8pt solid var(--rv-line); }
.rv-af-body > .rv-af-p:first-child{ margin-top:0; }
/* 재시험(산출형) — 답을 쓰는 칸과 교사용 채점 기준 */
.rv-tf .rv-ans{ clear:both; }
.rv-wkey{ font-size:8.4pt; font-weight:800; color:var(--rv-ac); margin-top:.8mm; margin-bottom:.6mm; }
.rv-ans-w{ min-height:7.5mm; }   /* 재시험 필기칸 — 영어 한 문장을 고쳐 쓸 수 있는 높이 */
/* 핵심표현 영작 */
.rv-kw li{ margin-bottom:2.4mm; }
.rv-kw-sent{ font-size:9pt; line-height:1.62; background:#F7F9FC; padding:1.2mm 2mm; border-left:2.4pt solid var(--rv-line); margin-bottom:1mm; }
.rv-kw-blank{ display:inline-block; min-width:34mm; border-bottom:.9pt solid #555; vertical-align:baseline; }
.rv-kw-hint{ font-size:8.6pt; color:#333; margin-bottom:.4mm; }
.rv-kw-ko{ font-weight:700; }
.rv-kw-w{ color:var(--rv-ac); font-weight:700; white-space:nowrap; }
/* 어휘 밑줄 — 지문 안에 ①~⑤ 밑줄 */
.rv-vc-body{ margin-bottom:0; }
.rv-vc{ white-space:nowrap; }
.rv-vc u{ text-decoration-thickness:1pt; text-underline-offset:2pt; }
.rv-vc-n{ font-size:7.6pt; font-weight:800; vertical-align:super; line-height:0; margin-right:.2mm; }
/* 리뷰 설정 2단 레이아웃 — 좌: 지문 목록(스크롤) / 우: 유형·옵션·액션 */
.rv-cfg{ display:grid; grid-template-columns:300px minmax(0,1fr); gap:14px; align-items:start; }
@media (max-width:860px){ .rv-cfg{ grid-template-columns:1fr; } }
.rv-col{ background:var(--sf); border:1px solid var(--bd); border-radius:var(--r); padding:12px 14px; box-sizing:border-box; }
.rv-col-head{ display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12.5px; font-weight:700; color:var(--ink); margin-bottom:10px; }
.rv-col-act{ display:flex; gap:6px; }
.rv-plist{ max-height:430px; overflow:auto; }
.rv-prow{ display:flex; align-items:center; gap:8px; padding:5px 8px; border-radius:7px; cursor:pointer; font-size:13px; color:var(--ink); }
.rv-prow:hover{ background:var(--sf2); }
.rv-prow input{ width:15px; height:15px; accent-color:var(--ac); flex:0 0 auto; margin:0; }
.rv-pname{ flex:1 1 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.rv-badge{ flex:0 0 auto; margin-left:6px; font-size:10px; color:var(--ac); font-weight:700; }
.rv-badge-old{ color:#d98a00; }
/* ── 객관식 검수(review-verify.js) — 리뷰 테스트·Advanced 공용 ── */
.rvq-badge-ok{ color:#0a8f5a; }
.rvq-badge-bad{ color:#c0392b; }
.rvq-badge-stale{ color:#8a8f98; font-weight:600; }
.rvq-auto{ display:inline-flex; align-items:center; gap:4px; font-size:12px; color:var(--ink); margin-left:4px; cursor:pointer; }
.rvq-report{ margin:10px 0 4px; border:1px solid var(--bd); border-radius:10px; background:var(--sf); padding:12px 14px; }
.rvq-head{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; }
.rvq-sum{ font-size:12px; color:var(--ink); opacity:.8; }
.rvq-acts{ margin-left:auto; display:flex; gap:6px; flex-wrap:wrap; }
.rvq-note{ font-size:11.5px; opacity:.7; margin:6px 0 8px; line-height:1.5; }
.rvq-empty{ font-size:13px; padding:6px 0; }
.rvq-p{ border-top:1px solid var(--bd); padding:8px 0 4px; }
.rvq-pt{ font-weight:700; font-size:13px; margin-bottom:4px; }
.rvq-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
.rvq-it{ font-size:12.5px; line-height:1.5; padding:6px 8px; border-radius:8px; background:rgba(127,127,127,.06); }
.rvq-tag{ display:inline-block; font-size:11px; font-weight:700; padding:1px 6px; border-radius:6px; margin-right:6px; background:rgba(192,57,43,.12); color:#c0392b; }
.rvq-unsure .rvq-tag, .rvq-tfUnsure .rvq-tag, .rvq-vocabUnsure .rvq-tag, .rvq-dupKo .rvq-tag{ background:rgba(217,138,0,.14); color:#b57300; }
.rvq-lbl{ font-weight:600; }
.rvq-why{ margin-top:2px; overflow-wrap:anywhere; }
.rvq-btns{ display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.rv-empty{ padding:16px; color:var(--ink3); font-size:13px; text-align:center; }
.rv-chips{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
.rv-chips .rv-chip-br{ flex-basis:100%; width:100%; height:0; margin:0; padding:0; }
.rv-optbar{ display:flex; flex-direction:column; gap:9px; margin-bottom:14px; }
.rv-optrow{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.rv-optlbl{ font-size:12px; color:var(--ink3); min-width:56px; }
.rv-sethint{ font-size:11px; color:var(--ink3); }
.rv-btns{ display:flex; flex-wrap:wrap; gap:8px; }
/* ── 리뷰 테스트 편집기(review-workspace.js) — 동형모의고사 편집기와 같은 모양 ── */
/* 내 폴더는 왼쪽 목록과 2열 그리드라, 편집기 내용 폭이 그리드 열을 밀어 넓히지 않게 크기 컨테이너로 가둔다. */
#folderReview .rv-ed-toolbar{ container-type:inline-size; position:sticky; top:0; z-index:30; margin-bottom:14px; border:1px solid var(--bd); border-radius:12px; background:color-mix(in srgb,var(--sf) 96%,transparent); box-shadow:var(--shadow-md); backdrop-filter:blur(16px); }
#folderReview .rv-ed-top{ display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; padding:11px 12px; }
#folderReview .rv-ed-back, #folderReview .rv-ed-ghost{ height:36px; border:1px solid var(--bd2); border-radius:7px; background:var(--ctl); color:var(--ink2); padding:0 11px; font-family:inherit; font-size:11px; font-weight:650; cursor:pointer; white-space:nowrap; }
#folderReview .rv-ed-back:hover, #folderReview .rv-ed-ghost:hover{ border-color:var(--ac); color:var(--ac); }
#folderReview .rv-ed-reflow{ margin-left:auto; }
#folderReview .rv-ed-tabs{ display:flex; align-items:center; padding:3px; border-radius:8px; background:var(--sf2); }
#folderReview .rv-ed-tabs button{ height:30px; border:0; border-radius:6px; background:transparent; color:var(--ink3); padding:0 12px; font-family:inherit; font-size:11px; font-weight:700; cursor:pointer; white-space:nowrap; }
#folderReview .rv-ed-tabs button.on{ background:var(--sf); color:var(--ink); box-shadow:var(--shadow-sm); }
#folderReview .rv-ed-tabs b{ display:inline-flex; min-width:17px; height:17px; align-items:center; justify-content:center; margin-left:4px; padding:0 3px; box-sizing:border-box; border-radius:999px; background:var(--acs); color:var(--ac); font-size:9px; }
#folderReview .rv-ed-status{ flex:1 1 0; min-width:0; overflow:hidden; color:var(--ink3); font-size:10.5px; text-align:right; text-overflow:ellipsis; white-space:nowrap; }
#folderReview .rv-ed-status.is-dirty{ color:var(--sel2); }
#folderReview .rv-ed-save, #folderReview .rv-ed-pdf{ display:flex; height:43px; align-items:flex-start; justify-content:center; flex-direction:column; border-radius:8px; padding:0 13px; font-family:inherit; cursor:pointer; white-space:nowrap; }
#folderReview .rv-ed-save{ min-width:104px; border:1px solid var(--bd2); background:var(--ctl); color:var(--ink); }
#folderReview .rv-ed-save:hover{ border-color:var(--ac); color:var(--ac); }
#folderReview .rv-ed-pdf{ min-width:132px; border:0; background:var(--ac); color:#fff; }
#folderReview .rv-ed-save span, #folderReview .rv-ed-pdf span{ font-size:12px; font-weight:800; }
#folderReview .rv-ed-save small{ font-size:8.6px; color:var(--ink3); }
#folderReview .rv-ed-pdf small{ font-size:8.8px; opacity:.76; }
#folderReview .rv-ed-hint{ margin:0; padding:7px 13px; border-top:1px solid var(--bd); color:var(--ink3); font-size:10.5px; }
#folderReview .rv-ed-hint kbd{ font-family:inherit; font-size:10px; padding:0 4px; border:1px solid var(--bd2); border-radius:4px; background:var(--ctl); color:var(--ink2); }
#folderReview .rv-ed-hint b{ color:var(--ink2); }
#folderReview .rv-ed-stage{ container-type:inline-size; overflow:hidden; overflow:clip; border:1px solid var(--bd); border-radius:12px; background:var(--sf); box-shadow:var(--shadow-sm); }
#folderReview .rv-ed-stage-head{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 18px; padding:11px 16px; border-bottom:1px solid var(--bd); }
#folderReview .rv-ed-stage-head > div{ display:flex; align-items:baseline; gap:9px; }
#folderReview .rv-ed-stage-head b{ font-size:12.5px; color:var(--ink); }
#folderReview .rv-ed-stage-head span{ color:var(--ink3); font-size:10px; }
#folderReview .rv-ed-stage-actions{ align-items:center !important; justify-content:flex-end; flex-wrap:wrap; }
#folderReview .rv-ed-zoom{ display:inline-flex; align-items:center; overflow:hidden; border:1px solid var(--bd2); border-radius:7px; background:var(--ctl); }
#folderReview .rv-ed-zoom button{ min-width:32px; height:30px; border:0; border-right:1px solid var(--bd); background:transparent; color:var(--ink2); padding:0 8px; font-family:inherit; font-size:11px; font-weight:700; cursor:pointer; }
#folderReview .rv-ed-zoom button:last-child{ border-right:0; }
#folderReview .rv-ed-zoom button:hover{ background:var(--acs); color:var(--ac); }
#folderReview .rv-ed-scroll{ overflow:auto; padding:22px; background:#E8ECF1; }
:root[data-theme="dark"] #folderReview .rv-ed-scroll{ background:#08090A; }
#folderReview .rv-ed-pages{ display:flex; align-items:center; flex-direction:column; gap:18px; min-width:760px; zoom:var(--rv-ed-scale,1); }
/* 패딩은 인쇄(--wb-pad-v)·측정(_rvSplitToPages의 WB_PAD_V)과 같은 18mm/12mm — 어긋나면 화면과 인쇄의 쪽 나눔이 달라진다. */
#folderReview .rv-ed-pages .rv-page{ position:relative; width:210mm; min-height:297mm; margin:0; padding:18mm 12mm; box-sizing:border-box; background:#fff; box-shadow:0 8px 28px rgba(21,31,43,.18); text-align:left; }
#folderReview .rv-ed-a4{ position:absolute; left:0; right:0; top:0; height:297mm; pointer-events:none; }
#folderReview .rv-ed-pno{ position:absolute; right:6mm; bottom:5mm; font-size:9px; font-weight:700; color:#9aa4b2; user-select:none; }
#folderReview .rv-page.is-over{ box-shadow:0 0 0 2px #D9534F, 0 8px 28px rgba(21,31,43,.18); }
#folderReview .rv-page.is-over .rv-ed-a4{ border-bottom:1.5px dashed #D9534F; }
#folderReview .rv-page.is-over .rv-ed-a4::after{ content:"A4 넘침 — 입력을 멈추면 다음 쪽으로 넘어갑니다"; position:absolute; right:6mm; bottom:1.5mm; font-size:9px; font-weight:700; color:#D9534F; background:#fff; padding:0 4px; }
#folderReview .rv-ed-pages [contenteditable="true"]{ outline:none; cursor:text; transition:box-shadow .12s; }
#folderReview .rv-ed-pages [contenteditable="true"]:hover{ box-shadow:0 0 0 1.5px rgba(27,64,121,.22); }
#folderReview .rv-ed-pages [contenteditable="true"]:focus{ box-shadow:0 0 0 2px rgba(27,64,121,.5); }
#folderReview .rv-ed-pages [data-rv-edited]:not(:focus){ box-shadow:inset 3px 0 0 rgba(36,122,70,.55); }
@container (max-width:980px){
  #folderReview .rv-ed-status{ order:5; flex-basis:100%; text-align:left; }
}
@container (max-width:560px){
  #folderReview .rv-ed-tabs{ order:4; width:100%; }
  #folderReview .rv-ed-tabs button{ flex:1; }
  #folderReview .rv-ed-scroll{ padding:12px; }
}

@media print {
  /* 인쇄영역만 보이게 한다. visibility로 숨기면 DOM 깊이와 무관하게 안전하다 —
     'body 직계여야 한다'는 전제를 깔면 인쇄영역이 패널 안에 있을 때 백지가 나온다(실제로 겪음).
     단, visibility는 레이아웃을 남겨서 화면 UI 중 210mm보다 넓은 요소가 인쇄 폭을 늘리고
     Chrome이 '페이지 폭 맞춤'으로 전체를 축소해 버린다(210mm 설계가 257mm로 잡혀 0.82배 축소,
     폰트 10.5pt→8.63pt로 확인). 그래서 폭은 아래 html·body 규칙으로 따로 묶는다. */
  html, body { width:210mm !important; max-width:210mm !important; overflow-x:clip !important; }
  body * { visibility:hidden !important; }
  #wbPrintArea, #wbPrintArea *, #mxPrintArea, #mxPrintArea * { visibility:visible !important; }
  #wbPrintArea, #mxPrintArea { position:absolute; left:0; top:0; width:100%; border:none; border-radius:0; margin:0; padding:0; }
  #wbPrintArea, #wbPrintArea * { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  #mxPrintArea .mx-ppage { page-break-after:always; break-after:page; }
  #mxPrintArea .mx-ppage:last-child { page-break-after:auto; break-after:auto; }
  /* 교재 안의 머리글은 유지하고 앱 헤더만 숨긴다. */
  #lockScreen, .app-navigation, .tabs { display:none !important; }
  /* margin:0 — 여백은 .wb-page / .mx-ppage 패딩이 단독으로 담당한다.
     14mm를 여기 두면 인쇄 영역이 186x269mm로 줄어드는데 요소 패딩이 그대로 또 먹어
     여백이 두 번 적용된다(7문장부터 20mm씩 넘쳐 2페이지로 흘러넘침).
     인쇄 버튼 경로(printWorkbook/mxPrint)는 원래 margin:0을 주입해 이를 피해 왔고,
     Ctrl+P 경로만 보호가 없었다. 기본값을 0으로 맞춰 두 경로를 일치시킨다. */
  @page { size:A4; margin:0; }
  /* 워크북 여백은 .wb-page 패딩으로. 인쇄 시 printWorkbook가 @page margin:0을 주입해 브라우저 머리글/바닥글 제거 */
  /* 상하 18mm — @page margin:0 으로 바꾼 뒤 여백이 28mm→14mm로 줄어 내용이 위로 붙었다.
     여백 담당이 이 패딩 하나뿐이므로 여기서 교재 여백을 정한다(프린터 인쇄 불가 영역 3~6mm보다 충분히 크다). */
  /* 화면용 8mm 아래 여백은 인쇄에서 지운다 — 조각날 때 한 장의 실제 가용 높이를 그만큼 갉아먹는다. */
  #wbPrintArea .wb-page { padding:var(--wb-pad-v) 12mm; margin:0; box-sizing:border-box; }
  /* 리뷰 페이지는 block으로 두어(플렉스 아님) 측정 오차 시 블록 단위로 자연 분할되게 함(안전망) */
  #wbPrintArea .rv-page { display:block; }
  /* 리뷰 편집 화면(min-width 760px)은 visibility로만 숨기면 자리가 남아 Chrome이 페이지 폭 맞춤으로
     전체를 약 0.75배 축소한다(2026-10-12 실측). 인쇄 복사본은 #wbPrintArea에 있으니 화면 쪽은 빼 둔다. */
  #folderReview .rv-ed-scroll { display:none !important; }
  .rv-block, .rv-af-row { break-inside:avoid; page-break-inside:avoid; }
  .wb-item, .wb-vocab, .wb-dt-s, .wb-dt-cmap, .wb-dt-blk, .wb-dt-ablock { break-inside:avoid; page-break-inside:avoid; }
}
