.hwp-preview-open{overflow:hidden}
.hwp-overlay{position:fixed;inset:0;z-index:950;display:flex;background:rgba(20,24,28,.48)}
.hwp-dialog{display:flex;width:100%;height:100%;min-width:0;flex-direction:column;background:var(--color-surface)}
.hwp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:8px 24px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}
.hwp-toolbar>div:first-child{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:4px 12px}
.hwp-toolbar p{grid-column:1/-1;margin:0;font-size:12px;letter-spacing:.12em;color:var(--color-primary)}
.hwp-toolbar h2{margin:0;font-size:20px;color:var(--color-text-primary)}
.hwp-toolbar span{font-size:12px;color:var(--color-text-tertiary)}
.hwp-toolbar>div:last-child{display:flex;gap:8px;align-items:center}
.hwp-view-tabs{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-control);overflow:hidden}
.hwp-view-tabs button{padding:6px 14px;border:0;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:13px;cursor:pointer}
.hwp-view-tabs button.on{background:var(--color-primary);color:#fff}
/* docx-preview 渲染的 Word 文档（A4 真实尺寸、近 WYSIWYG） */
.hwp-document>.wp-loading,.hwp-document>p:first-child{padding:40px;text-align:center;color:var(--color-text-tertiary);font-size:13px}
.hwp-document>.wp-error{color:#a52a23}
.hwp-document .docx{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 0;overflow-x:auto}
.hwp-document .docx section{box-shadow:0 1px 4px rgba(0,0,0,.08);background:#fff;margin:0}
.hwp-document .docx img{max-width:100%;height:auto}
.hwp-layout{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:0;flex:1}
.hwp-settings{overflow-y:auto;padding:8px 20px 24px;border-right:1px solid var(--color-border);background:var(--color-surface)}
.hwp-settings section{padding:16px 0;border-bottom:1px solid var(--color-border)}
.hwp-settings h3{margin:0 0 10px;font-size:14px;color:var(--color-text-primary)}
.hwp-settings label{display:flex;align-items:center;gap:8px;margin:6px 0;min-height:32px;font-size:13px;line-height:1.5;color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}
.hwp-settings label span,.hwp-settings label b,.hwp-settings label em{white-space:nowrap}
.hwp-settings input{accent-color:var(--color-primary)}
.hwp-settings select{height:30px;margin-left:auto;padding:0 8px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text-primary)}
.hwp-settings .hwp-row-no-auto select{margin-left:8px}
.hwp-settings .hwp-text-input{height:30px;max-width:160px;padding:0 8px;border:1px solid var(--color-border);border-radius:var(--radius-control);font-size:13px;background:var(--color-surface);color:var(--color-text-primary)}
.hwp-settings .hwp-inline-group{display:flex;align-items:center;gap:8px;margin:6px 0;min-height:32px}
.hwp-settings .hwp-inline-group label{margin:0;flex-shrink:0}
.hwp-settings .hwp-inline-text-label{display:flex;align-items:center;margin-left:auto}
.hwp-settings .hwp-inline-text-label .hwp-text-input{width:140px;max-width:none}
/* 分数显示 radio 行 */
.hwp-settings .hwp-score-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:6px 0;min-height:32px;font-size:13px;color:var(--color-text-secondary)}
.hwp-settings .hwp-score-row label{margin:0;min-height:auto;gap:4px}
.hwp-settings .hwp-score-label{color:var(--color-text-tertiary);font-size:12px;margin-right:4px}
.hwp-settings p{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--color-text-tertiary)}
.hwp-settings .hwp-disabled{cursor:not-allowed;color:var(--color-text-tertiary)}
.hwp-version-tabs{display:flex;gap:16px;border-bottom:1px solid var(--color-border)}
.hwp-version-tabs button{padding:6px 2px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-secondary);font:inherit;font-size:14px;cursor:pointer}
.hwp-version-tabs button.on{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:600}
.hwp-stage{min-width:0;overflow:auto;padding:24px 24px 56px;background:#e9ebee}
.hwp-document{width:min(794px,100%);margin:0 auto;color:#15181c}
.hwp-document>section{box-sizing:border-box;width:100%;min-height:1123px;margin:0 0 24px;padding:56px 64px;background:#fff;box-shadow:var(--shadow-paper)}
.hwp-cover-page{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden}
.hwp-cover-page p,.hwp-directory-page>p,.hwp-sheets-divider>p{margin:0 0 24px;letter-spacing:.14em;font-size:12px;color:#737b82}
.hwp-cover-page h1{max-width:560px;margin:0 0 24px;font-size:32px;line-height:1.45}
.hwp-cover-page strong{padding-top:20px;border-top:2px solid #15181c;font-size:20px;letter-spacing:.2em}
.hwp-cover-page span{margin-top:48px;font-size:15px;color:#4f565d}
.hwp-cover-page small{margin-top:12px;color:#8a9197}
.hwp-cover-brand{position:absolute;top:56px;left:64px;margin:0!important;text-align:left}
.hwp-cover-school{margin:0 0 16px;font-size:18px;letter-spacing:.3em;color:#4f565d}
.hwp-cover-identity{display:flex;gap:28px;width:min(520px,100%);margin-top:36px;padding-top:18px;border-top:1px solid #c9ced3;justify-content:center}
.hwp-cover-identity label{display:flex;align-items:baseline;gap:8px;font-size:14px;color:#4f565d;white-space:nowrap}
.hwp-cover-identity span{display:inline-block;width:92px;height:20px;border-bottom:1px solid #565d63}
.hwp-cover-stripe{align-items:flex-start;text-align:left;padding-left:88px!important;border-left:12px solid var(--color-primary)}
.hwp-cover-stripe .hwp-cover-brand{left:48px}
.hwp-cover-stripe h1{max-width:none;margin-top:18px}
.hwp-cover-stripe .hwp-cover-identity{justify-content:flex-start}
.hwp-cover-framed{margin:0!important;border:1px solid #aeb5ba;outline:10px solid #fff;outline-offset:-26px}
.hwp-cover-framed .hwp-cover-brand{left:88px;top:82px}
.hwp-cover-framed h1{max-width:520px}
.hwp-cover-framed .hwp-cover-identity{width:520px}
.hwp-directory-page h2,.hwp-sheets-divider h2{margin:0 0 32px;font-size:26px}
.hwp-directory-page>div{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:13px 0;border-bottom:1px solid #d9dde1}
.hwp-directory-page>div span,.hwp-directory-page>div i{font-size:12px;color:#7f878e;font-style:normal}
.hwp-directory-page>div strong{font-size:15px;font-weight:500}
.hwp-assignment-head{padding-bottom:16px;border-bottom:2px solid #15181c;text-align:center}
.hwp-assignment-head>p{margin:0 0 4px;font-size:12px;color:#737b82}
.hwp-assignment-head h2{margin:0;font-size:22px;line-height:1.45}
.hwp-assignment-head>span{display:block;margin-top:8px;font-size:12px;color:#737b82}
.hwp-identity,.hwp-sheet-identity{display:flex;justify-content:space-between;gap:16px;margin-top:18px;font-size:13px;text-align:left}
.hwp-question{padding:16px 0;break-inside:avoid}
.hwp-document[data-hwp-version="teacher"] .hwp-question{border-bottom:1px solid #dfe2e5}
.hwp-document[data-hwp-version="teacher"] .hwp-question:last-child{border-bottom:0}
.hwp-question-heading{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:13px;color:#777f86;flex-wrap:nowrap}
.hwp-question-heading>b{font-size:15px;color:#15181c;font-weight:700;flex-shrink:0}
.hwp-question-heading .hwp-q-score{font-style:normal;font-size:12px;color:#59636b;white-space:nowrap;flex-shrink:0}
.hwp-question-heading .hwp-q-score-right{margin-left:auto;color:#15181c;font-size:13px;font-weight:600}
.hwp-question-heading code{font-size:11px;color:#8b9298}
/* 题型分组大标题 */
.hwp-type-group-header{display:flex;align-items:center;gap:6px;margin:20px 0 12px;padding:6px 0;border-bottom:1.5px solid #15181c;font-size:16px;font-weight:700;color:#15181c}
.hwp-type-group-header>b{color:var(--color-primary)}
.hwp-type-group-header i{margin-left:auto;font-style:normal;font-size:12px;font-weight:400;color:#777f86}
@media print{.hwp-type-group-header{margin:14px 0 8px;font-size:14px;border-bottom-width:1px}}
.hwp-question-points{display:flex;gap:6px;margin:4px 0 8px;font-size:12px;line-height:1.5;color:#59636b}
.hwp-question-points b{color:#1f5f8b;white-space:nowrap}
.hwp-question-stem,.hwp-question-material{font-size:15px;line-height:1.8;color:#15181c;white-space:pre-line}
.hwp-question-material{margin:8px 0;padding:8px 12px;border-left:3px solid #777;color:#333}
.hwp-question-options{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;margin-top:8px}
.hwp-question-options>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:4px;font-size:14px;line-height:1.7}
.hwp-question-options p,.hwp-teacher-analysis p,.hwp-question-material p{margin:0}
.hwp-teacher-answer,.hwp-teacher-analysis{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;margin-top:12px;padding-top:10px;border-top:1px dashed #c9ced3;font-size:13px;line-height:1.75;color:#30353a}
.hwp-teacher-answer>b,.hwp-teacher-analysis>b{color:#15181c}
.hwp-teacher-analysis img,.hwp-question img{max-width:100%;height:auto}
/* 正文字号：五号 10.5pt（默认）→ 小四 12pt → 四号 14pt，字号越大行距相应加大 */
.hwp-document[data-hwp-font-size="small4"] .hwp-question-stem,
.hwp-document[data-hwp-font-size="small4"] .hwp-question-material{font-size:16px;line-height:1.9}
.hwp-document[data-hwp-font-size="small4"] .hwp-question{padding:14px 0}
.hwp-document[data-hwp-font-size="small4"] .hwp-question-options>div{font-size:15px;line-height:1.8}
.hwp-document[data-hwp-font-size="four"] .hwp-question-stem,
.hwp-document[data-hwp-font-size="four"] .hwp-question-material{font-size:18px;line-height:2}
.hwp-document[data-hwp-font-size="four"] .hwp-question{padding:16px 0}
.hwp-document[data-hwp-font-size="four"] .hwp-question-options>div{font-size:16px;line-height:1.9}
.hwp-sheets-divider{display:flex;flex-direction:column;justify-content:center;text-align:center;break-before:page;min-height:auto!important;margin-bottom:24px;padding:24px 0}
.hwp-sheets-divider span{color:#626a71;font-size:14px}
.hwp-answer-page header{padding-bottom:14px;border-bottom:2px solid #15181c;text-align:center}
.hwp-answer-page header p{margin:0 0 5px;font-size:12px;color:#737b82}
.hwp-answer-page header h2{margin:0;font-size:20px}
/* —— 学生版参考答案页 —— */
.hwp-ref-answer header span{font-size:12px;color:#737b82;margin-top:6px;display:block}
.hwp-answer-grid{width:100%;border-collapse:collapse;margin:16px 0 8px;font-size:13px}
.hwp-answer-grid th{border:1px solid #cfd4d8;background:#f5f7f8;padding:6px 0;font-weight:500;color:#15181c}
.hwp-answer-grid td{border:1px solid #cfd4d8;padding:6px 0;text-align:center;color:#15181c}
.hwp-cell-ans{font-weight:700;color:#1d5d39}
.hwp-answer-grid-title,.hwp-answer-list-title{font-size:15px;font-weight:600;margin:20px 0 10px;color:#15181c}
.hwp-answer-list{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.hwp-ans-item{font-size:14px;line-height:1.7;color:#15181c;padding:8px 0;border-bottom:1px dashed #e4e7ea}
.hwp-ans-item .hwp-teacher-answer{margin:4px 0;color:#1d5d39}
.hwp-ans-detail{margin-top:4px;color:#555555;font-size:13px;line-height:1.8}
.hwp-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:24px;border-top:1px solid #cfd4d8}
.hwp-choice-grid>div{display:flex;align-items:baseline;gap:6px;padding:8px 4px;border-bottom:1px solid #dfe3e6;font-size:13px}
.hwp-choice-grid>div>b{width:26px;font-weight:600;font-size:13px;flex-shrink:0;text-align:right;padding-right:2px}
.hwp-choice-grid .hwp-sq{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1.2px solid #2a2f33;font-size:11px;font-weight:600;line-height:1;color:#15181c;background:#fff;flex-shrink:0}
@media print{.hwp-choice-grid .hwp-sq{border-width:1.5px}}
.hwp-choice-grid>div>b,.hwp-choice-grid .hwp-sq{align-self:center}
.hwp-subjective-area{margin-top:22px;break-inside:avoid}
.hwp-subjective-area>b{font-size:14px}
.hwp-subjective-area>div{margin-top:10px;border:1px solid #aeb5ba}
.hwp-subjective-area span{display:block;height:32px;border-bottom:1px solid #e1e4e6}
.hwp-subjective-area span:last-child{border-bottom:0}
.hwp-empty{margin-top:40px;text-align:center;color:#777f86}

@media(max-width:760px){
  .hwp-toolbar{align-items:flex-start;padding:8px 12px}
  .hwp-toolbar>div:first-child{display:block}
  .hwp-toolbar span{display:none}
  .hwp-layout{display:block;overflow:auto}
  .hwp-settings{overflow:visible;border-right:0;border-bottom:1px solid var(--color-border)}
  .hwp-stage{overflow:visible;padding:12px}
  .hwp-document>section{min-height:auto;padding:32px 20px}
  .hwp-question-options{grid-template-columns:1fr}
  .hwp-cover-brand{top:32px;left:20px}
  .hwp-cover-stripe{padding-left:40px!important}
  .hwp-cover-stripe .hwp-cover-brand{left:20px}
  .hwp-cover-framed .hwp-cover-brand{left:40px;top:54px}
  .hwp-cover-identity{gap:10px;flex-wrap:wrap}
}

/* 封面/目录/分隔页用 page-no-num：不显示页码
   作业正文/答题卡用默认 page：带居中页码 */
@page{size:A4;margin:12mm 12mm 14mm;@bottom-center{content:"第 " counter(page) " 页 / 共 " counter(pages) " 页";font-family:system-ui,sans-serif;font-size:11px;color:#9aa0a6}}
@page no-num{@bottom-center{content:"";}}
.hwp-cover-page,.hwp-directory-page,.hwp-sheets-divider{page:no-num}
@media print{
  body.hwp-preview-open>*:not(#hwpOverlay){display:none!important}
  body.hwp-preview-open{overflow:visible;background:#fff}
  .hwp-overlay{position:static;display:block;background:#fff}
  .hwp-dialog{display:block;height:auto;background:#fff}
  .hwp-toolbar,.hwp-settings{display:none!important}
  .hwp-layout{display:block}
  .hwp-stage{overflow:visible;padding:0;background:#fff}
  .hwp-document{width:auto;margin:0}
  /* 只有封面/目录/分隔页强制分页；作业正文与答题卡让浏览器按内容自然分页 */
  .hwp-cover-page,.hwp-directory-page,.hwp-sheets-divider,.hwp-ref-answer{break-before:page}
  .hwp-document>section:first-child{break-before:auto}
  /* 封面/目录撑满一整页；答题卡分隔符只分页不撑高，答题卡内容紧跟其后 */
  .hwp-cover-page,.hwp-directory-page{min-height:270mm!important}
  .hwp-sheets-divider{min-height:auto!important}
  .hwp-answer-page{min-height:auto!important}
  /* print 模式下作业卡片不需要模拟纸张，直接用 @page 的 margin */
  .hwp-document>section:not(.hwp-cover-page):not(.hwp-directory-page):not(.hwp-sheets-divider):not(.hwp-answer-page){min-height:auto!important;margin:0;padding:10px 0!important;box-shadow:none}
  .hwp-question{padding:8px 0!important}
  .hwp-question-stem,.hwp-question-material{line-height:1.65!important;font-size:13px!important}
  .hwp-question-options{gap:2px 16px!important;margin-top:4px!important}
  .hwp-question-options>div{font-size:13px!important;line-height:1.55!important;gap:2px!important}
  .hwp-assignment-head{padding-bottom:10px!important;margin-bottom:8px!important}
  .hwp-question-points{margin:2px 0 4px!important;font-size:11px!important}
}
