/* R100: broad equivalence uses the approved R98 exam layout; answers still submit individually. */
html:has(.broad-plan-exam), body:has(.broad-plan-exam) { height: auto; overflow-y: auto; }
.app-shell.broad-equivalence-shell:has(.broad-plan-exam) { display: flow-root; height: auto; min-height: 100dvh; overflow: visible; background: #fff; }
.broad-equivalence-shell.workbook-shell .broad-plan-exam {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: calc(100% - 12px);
  height: auto;
  max-height: none;
  min-height: calc(100dvh - 12px);
  margin: 6px;
  border: 2px solid #9d9d9d;
  box-shadow: inset 0 0 0 1px #e1e1e1;
  overflow: visible;
  background: #fff;
  color: #242424;
}
.broad-plan-exam > header.gre-toolbar {
  box-sizing: border-box;
  flex: 0 0 auto;
  height: auto;
  min-height: 64px;
  padding: 4px 6px 4px 16px;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}
.broad-plan-exam > header.gre-toolbar .daily-gre-brand { align-items: center; gap: 12px; min-width: 0; }
.broad-plan-exam > header.gre-toolbar .daily-gre-brand strong { font: 700 42px/1 Arial, sans-serif; letter-spacing: -.02em; }
.broad-plan-exam > header.gre-toolbar .daily-ets-mark {
  display: inline-flex;
  flex: 0 0 48px;
  height: 32px;
  align-items: center;
  justify-content: center;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  font: italic 700 21px/1 Arial, sans-serif;
}
.broad-plan-exam > header.gre-toolbar .daily-gre-product { font: 700 16px/1.25 Arial, sans-serif; color: #fff; margin-left: 4px; }
.broad-plan-exam > header.gre-toolbar nav { display: flex; align-items: stretch; gap: 4px; }
.broad-plan-exam > header.gre-toolbar nav button { height: 50px; min-width: 78px; padding: 0 14px; font-size: 14px; }
.broad-plan-exam .gre-progressbar { flex: 0 0 auto; box-sizing: border-box; height: auto; min-height: 30px; padding: 5px 10px; gap: 12px; font-size: 13px; line-height: 1.4; }
.broad-plan-exam .daily-plan-context { display: inline-block; padding-right: 12px; margin-right: 12px; border-right: 1px solid #a3a3a3; }
.broad-plan-exam .gre-progressbar strong { white-space: nowrap; }
.broad-plan-exam .question-panel {
  box-sizing: border-box;
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 12px 0;
  overflow: visible;
}
.broad-plan-exam .gre-instruction { width: 80%; max-width: none; margin: 0 auto; padding: 10px 22px; font: 400 16px/1.4 Arial, 'Microsoft YaHei', sans-serif; }
.broad-plan-exam .question-body {
  box-sizing: border-box;
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  width: 74%;
  max-width: 1260px;
  margin: 0 auto;
  padding: clamp(40px, 12.5vh, 128px) 0 24px;
  gap: 32px;
}
.broad-plan-exam .question-body .stem { width: 100%; max-width: none; margin: 0; font: 400 20px/1.4 Arial, 'Microsoft YaHei', sans-serif; overflow-wrap: anywhere; }
.broad-plan-exam .se-options { width: max-content; min-width: 170px; max-width: min(100%, 560px); margin: 0 auto; gap: 0; }
.broad-plan-exam .se-options .exam-choice { box-sizing: border-box; width: 100%; min-height: clamp(44px, 5.65vh, 62px); padding: 8px 0; font: 400 20px/1.4 Arial, sans-serif; overflow-wrap: anywhere; }
.broad-plan-exam .se-options .exam-checkbox { flex: 0 0 18px; margin-right: 14px; }
.broad-plan-exam .single-option-table { width: min(100%, 360px); margin: 0 auto; }
.broad-plan-exam .single-option-table .exam-choice { height: auto; min-height: 44px; padding: 8px 12px; white-space: normal; overflow-wrap: anywhere; }
.broad-plan-exam .gre-bottom-note { position: static; transform: none; box-sizing: border-box; width: fit-content; max-width: calc(100% - 32px); min-width: 0; height: auto; min-height: 0; margin: 0 auto; padding: 10px 20px; font-size: 16px; line-height: 1.4; text-align: center; }
@media (max-height: 700px) and (min-width: 769px) {
  .broad-plan-exam .question-body { padding-top: 40px; gap: 24px; }
}
/* Shared workbook mobile rules use !important; keep this override local. */
@media (max-width: 768px) {
  .broad-equivalence-shell.workbook-shell .broad-plan-exam { width: 100%; min-height: 100dvh; margin: 0; border-width: 1px; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar { min-height: 0; padding: 8px 10px !important; gap: 8px; align-items: stretch; flex-direction: column; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar .daily-gre-brand { justify-content: flex-start; gap: 10px; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar .daily-gre-brand strong { font-size: 32px !important; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar .daily-ets-mark { display: inline-flex !important; flex-basis: 40px; height: 28px; font-size: 17px; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar .daily-gre-product { display: block !important; font-size: 12px; margin-left: 0; }
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar nav button { font-size: 12px !important; }
  .broad-equivalence-shell .broad-plan-exam .gre-progressbar { padding: 6px 10px; gap: 8px; font-size: 11px; }
  .broad-equivalence-shell .broad-plan-exam .daily-plan-context { display: block; border: 0; margin: 0; padding: 0; }
  .broad-equivalence-shell .broad-plan-exam .question-panel { width: 100%; padding: 12px 0 !important; }
  .broad-equivalence-shell .broad-plan-exam .gre-instruction { width: calc(100% - 28px) !important; max-width: none; margin: 0 auto !important; padding: 10px 12px !important; font-size: 14px !important; }
  .broad-equivalence-shell .broad-plan-exam .question-body { width: calc(100% - 36px) !important; padding: 32px 0 28px !important; gap: 24px; }
  .broad-equivalence-shell .broad-plan-exam .question-body .stem { margin: 0 !important; font-size: 18px !important; }
  .broad-equivalence-shell .broad-plan-exam .se-options { width: max-content !important; min-width: 170px !important; max-width: 100% !important; margin: 0 auto !important; gap: 0 !important; }
  .broad-equivalence-shell .broad-plan-exam .se-options .exam-choice { min-height: 46px !important; padding: 8px 0 !important; font-size: 17px !important; }
  .broad-equivalence-shell .broad-plan-exam .gre-bottom-note { width: fit-content !important; margin: 0 auto !important; font-size: 14px; }
}
@media (max-width: 360px) {
  .broad-equivalence-shell .broad-plan-exam > header.gre-toolbar nav button { font-size: 11px !important; }
}

/* These rules apply only while a broad-equivalence question is open. */
.broad-equivalence-shell:has(.broad-plan-exam) > .toefl-site-header{display:none}
.broad-equivalence-shell.workbook-shell .broad-plan-exam{max-width:none;padding:0}
.broad-plan-exam .be-practice-bonus{display:flex;flex-wrap:wrap;gap:8px 20px;padding:8px 18px;border-bottom:1px solid #ddd;background:#f7f7f7;font:13px/1.4 Arial,"Microsoft YaHei",sans-serif}
.broad-plan-exam .be-practice-bonus span{color:#555}
.broad-plan-exam .question-body:has(.moyu-question-tags){gap:24px}
@media(max-width:768px){
  .broad-equivalence-shell.workbook-shell .broad-plan-exam{width:100%!important;padding:0!important}
  .broad-plan-exam > header.gre-toolbar nav{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
  .broad-plan-exam > header.gre-toolbar nav button{flex:1;min-width:0;padding-inline:8px}
  .broad-plan-exam .be-practice-bonus{padding:8px 14px;font-size:12px}
}
/* A readable outcome before any explanation: color, icon and explicit labels. */
.broad-analysis-page .broad-answer-result{margin:0 0 16px;border:1px solid #9ac6ac;border-radius:4px;overflow:hidden;background:#fff;color:#173b29}
.broad-analysis-page .broad-answer-result.wrong{border-color:#dea8a5;color:#7f1d1d}
.broad-analysis-page .broad-result-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;background:#167044;color:#fff}
.broad-analysis-page .broad-answer-result.wrong .broad-result-banner{background:#b42318}
.broad-analysis-page .broad-result-banner strong{font:700 23px/1.35 Arial,"Microsoft YaHei",sans-serif}
.broad-analysis-page .broad-result-banner > span{font:600 13px/1.5 Arial,"Microsoft YaHei",sans-serif;color:#fff}
.broad-analysis-page .broad-answer-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:15px 18px}
.broad-analysis-page .broad-answer-group{min-width:0}
.broad-analysis-page .broad-answer-group h3{margin:0 0 8px;color:#3c4941;font:700 13px/1.4 Arial,"Microsoft YaHei",sans-serif}
.broad-analysis-page .broad-answer-group ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.broad-analysis-page .broad-answer-choice{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0;max-width:100%;padding:8px 10px;border:1px solid #79b893;border-left-width:4px;border-radius:3px;background:#dcfce7;color:#14532d}
.broad-analysis-page .broad-answer-choice.wrong{background:#fee2e2;border-color:#db7771;color:#991b1b}
.broad-analysis-page .broad-answer-choice b{font:700 15px/1.5 Arial,"Microsoft YaHei",sans-serif;overflow-wrap:anywhere}
.broad-analysis-page .broad-answer-choice span{font:600 11px/1.5 Arial,"Microsoft YaHei",sans-serif;white-space:nowrap}
.broad-analysis-page .broad-answer-choice .is-missed{color:#991b1b}
@media(max-width:600px){
  .broad-analysis-page .broad-result-banner{padding:13px 14px;gap:10px}
  .broad-analysis-page .broad-result-banner strong{font-size:21px}
  .broad-analysis-page .broad-result-banner > span{font-size:12px}
  .broad-analysis-page .broad-answer-columns{grid-template-columns:minmax(0,1fr);gap:14px;padding:14px}
  .broad-analysis-page .broad-answer-choice b{font-size:14px}
}
