﻿:root {
  color-scheme: light;
  --bg: #eef3f7;
  --surface: rgba(255, 255, 255, 0.48);
  --surface-solid: #ffffff;
  --surface-2: rgba(255, 255, 255, 0.36);
  --ink: #0b1730;
  --muted: #647086;
  --line: rgba(255, 255, 255, 0.72);
  --line-strong: rgba(255, 255, 255, 0.86);
  --primary: #ff4b46;
  --primary-strong: #e93d38;
  --accent: #ff4b46;
  --nav: rgba(255, 255, 255, 0.3);
  --danger: #b42318;
  --success: #19703f;
  --shadow: 0 24px 70px rgba(32, 44, 76, 0.14);
  --glass-shadow: 0 24px 70px rgba(32, 44, 76, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.76);
  --card-shadow: 0 18px 44px rgba(45, 53, 80, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.78);
  --glass-blur: blur(24px);
}

* {
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
  background: #eef3f7;
}

body {
  position: relative;
  margin: 0;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 48% 18%, rgba(64, 111, 214, 0.42), transparent 12%),
    radial-gradient(circle at 70% 56%, rgba(255, 126, 87, 0.38), transparent 18%),
    radial-gradient(circle at 18% 82%, rgba(73, 129, 210, 0.36), transparent 19%),
    linear-gradient(116deg, #efd2c6 0%, #f7ded2 37%, #dfedf8 68%, #edcfb7 100%);
  background-repeat: no-repeat;
  background-size: cover;
  color: var(--ink);
  font-family:
    "Microsoft YaHei",
    "PingFang SC",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

body:not(.is-exam-view)::before {
  position: fixed;
  inset: -20%;
  z-index: 0;
  content: "";
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg width='180' height='180' viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");
  opacity: 0.07;
}

body:not(.is-exam-view)::after {
  position: fixed;
  inset: 0;
  z-index: 0;
  content: "";
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.1) 1px, transparent 1px);
  background-size: 48px 48px;
  opacity: 0.24;
}

body.is-exam-view {
  background: #f7f8fa;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

.app-shell {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 100vh;
}

.is-exam-view .app-shell {
  grid-template-columns: minmax(0, 1fr);
}

.is-exam-view .sidebar {
  display: none;
}

.sidebar {
  position: relative;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "brand account"
    "nav nav";
  overflow: visible;
  padding: 42px 76px 0;
  background: transparent;
  color: var(--ink);
  box-shadow: none;
}

.sidebar::before {
  position: absolute;
  top: 22px;
  left: 430px;
  z-index: 0;
  color: rgba(255, 255, 255, 0.34);
  content: "鑰冩偁鐒惰嚜瀛︾綉";
  content: "鑰冩偁鐒惰嚜瀛︾綉";
  font-size: 56px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.sidebar::after {
  position: absolute;
  top: 34px;
  right: 310px;
  z-index: 0;
  width: 220px;
  height: 68px;
  border: 1px solid rgba(255, 255, 255, 0.46);
  border-radius: 18px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.08)),
    repeating-linear-gradient(0deg, rgba(30, 41, 59, 0.07) 0 2px, transparent 2px 15px);
  content: "";
  transform: rotate(-4deg);
}

.brand {
  grid-area: brand;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 76px;
  padding: 0;
}

.brand-mark {
  display: grid;
  width: 60px;
  height: 60px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 17px;
  background: rgba(255, 255, 255, 0.42);
  color: var(--primary);
  box-shadow: 0 14px 34px rgba(71, 46, 45, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.82);
  font-size: 31px;
  font-weight: 900;
}

.brand-copy {
  display: grid;
  gap: 6px;
}

.brand strong {
  color: #071832;
  font-size: 46px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
}

.brand span,
.account-meta {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 800;
}

.brand-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}

.brand-badges em {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.42);
  color: #24304a;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.nav-list {
  grid-area: nav;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  justify-self: center;
  gap: 10px;
  width: min(760px, 100%);
  min-height: auto;
  margin: 30px auto 0;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 30px;
  background: var(--nav);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.74), 0 18px 48px rgba(34, 40, 57, 0.1);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.nav-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 0;
  height: 46px;
  padding: 0 16px;
  border: 0;
  border-radius: 22px;
  background: transparent;
  color: rgba(17, 26, 46, 0.72);
  font-weight: 900;
  text-align: center;
}

.nav-item.active,
.nav-item:hover {
  background: rgba(255, 255, 255, 0.62);
  color: var(--ink);
  box-shadow: 0 10px 28px rgba(30, 39, 67, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.86);
}

.account-box {
  grid-area: account;
  position: relative;
  z-index: 1;
  display: grid;
  align-content: start;
  justify-items: end;
  min-height: 76px;
  padding: 6px 0 0 24px;
}

.account-name {
  font-weight: 700;
}

.account-box #loginOpenButton {
  min-height: 44px;
  margin-top: 10px;
  padding: 0 18px;
  border-radius: 999px;
  box-shadow: 0 14px 30px rgba(255, 75, 70, 0.25);
}

.activation-box {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  width: 260px;
  margin-top: 10px;
}

.activation-box input {
  min-width: 0;
  height: 36px;
  border-color: rgba(255, 255, 255, 0.68);
  background: rgba(255, 255, 255, 0.58);
  color: var(--ink);
}

.activation-box input::placeholder {
  color: var(--muted);
}

.activation-box .secondary-button {
  min-height: 36px;
  padding: 0 10px;
}

.text-button {
  margin-top: 12px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted);
}

.main {
  min-width: 0;
  padding: 44px 76px 68px;
}

body.is-exam-view .main {
  padding-bottom: 16px;
}

body[data-view="library"] .main {
  padding-top: 0;
}

body[data-view="library"] .topbar {
  display: none;
}

body.is-module-library .library-hero,
body.is-module-library .library-feature-row {
  display: none;
}

body.is-module-library[data-view="library"] .main {
  padding-top: 36px;
}

body.is-module-library .toolbar,
body.is-module-library .navigator-title,
body.is-module-library .book-nav,
body.is-module-library .test-nav {
  display: none;
}

body.is-module-library .paper-navigator {
  grid-template-columns: minmax(190px, 220px) minmax(420px, 1fr);
  justify-content: start;
  align-items: end;
  margin-bottom: 22px;
  padding: 12px 14px;
}

body.is-module-library .navigator-book-row,
body.is-module-library .navigator-test-row {
  display: none;
}

body.is-module-library .library-select-label,
body.is-module-library .segmented {
  justify-self: start;
}

.topbar {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: center;
  margin-bottom: 20px;
}

h1,
h2,
p {
  margin: 0;
}

h1 {
  font-size: 28px;
  line-height: 1.25;
}

h2 {
  font-size: 20px;
  line-height: 1.35;
}

.topbar p,
.admin-panel p,
.empty-state p {
  margin-top: 6px;
  color: var(--muted);
}

.topbar-actions,
.toolbar,
.exam-actions,
.dialog-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.select-label,
.search-box,
.admin-panel label,
.auth-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
}

select,
input {
  height: 40px;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.58);
  color: var(--ink);
  padding: 0 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.primary-button,
.secondary-button {
  min-height: 40px;
  border-radius: 13px;
  padding: 0 14px;
  border: 1px solid transparent;
  font-weight: 900;
}

.primary-button {
  background: var(--primary);
  color: #ffffff;
  box-shadow: 0 13px 28px rgba(255, 75, 70, 0.24);
}

.primary-button:hover {
  background: var(--primary-strong);
}

.secondary-button {
  background: rgba(255, 255, 255, 0.56);
  border-color: var(--line);
  color: var(--ink);
}

.view {
  display: none;
}

.view.active {
  display: block;
}

.access-gate {
  display: none;
  min-height: calc(100vh - 150px);
  place-items: center;
  padding: 40px 0;
}

body.app-access-locked .main > .view {
  display: none !important;
}

body.app-access-locked .access-gate {
  display: grid;
}

.access-gate-card {
  display: grid;
  gap: 18px;
  width: min(520px, 100%);
  padding: 34px;
  border: 1px solid rgba(15, 30, 58, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 24px 70px rgba(35, 48, 76, 0.12);
}

.access-gate-kicker {
  color: var(--primary);
  font-size: 13px;
  font-weight: 900;
}

.access-gate-card h2 {
  color: var(--ink);
  font-size: 26px;
  line-height: 1.2;
}

.access-gate-card p {
  margin: 0;
  color: var(--muted);
  font-weight: 700;
  line-height: 1.65;
}

.access-gate-actions,
.access-gate-activation {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.access-gate-activation input {
  flex: 1 1 220px;
  background: #ffffff;
}

.access-gate-activation[hidden] {
  display: none;
}

body[data-view="library"]:not(.is-module-library) #libraryView.view.active {
  display: grid;
  grid-template-columns: 470px minmax(0, 1fr);
  grid-template-areas:
    "hero navigator"
    "hero toolbar"
    "hero grid";
  align-items: start;
  gap: 18px 38px;
}

.toolbar {
  grid-area: toolbar;
  justify-content: space-between;
  margin-bottom: 0;
  padding: 14px 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.34);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.library-hero {
  grid-area: hero;
  display: block;
  position: sticky;
  top: 28px;
  min-height: 480px;
  margin: 0;
  padding: 46px 44px;
  border: 1px solid var(--line);
  border-radius: 30px;
  background:
    radial-gradient(circle at 82% 22%, rgba(255, 112, 92, 0.22), transparent 36%),
    rgba(255, 255, 255, 0.3);
  box-shadow: var(--glass-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  overflow: hidden;
}

.library-hero-copy {
  display: grid;
  gap: 22px;
  max-width: none;
}

.library-kicker {
  display: inline-flex;
  width: max-content;
  min-height: 38px;
  align-items: center;
  padding: 0 16px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.46);
  color: #24304a;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
}

.library-hero h2 {
  color: #071832;
  font-size: 44px;
  font-weight: 900;
  line-height: 1.08;
}

.library-hero p {
  color: rgba(17, 26, 46, 0.66);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.7;
}

.hero-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 12px;
}

.hero-stats div {
  display: grid;
  min-width: 118px;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--primary);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.42);
}

.hero-stats strong {
  color: var(--primary);
  font-size: 24px;
}

.hero-stats span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.library-hero-preview {
  display: none;
  position: relative;
  min-height: 250px;
  padding: 18px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 22px 50px rgba(64, 91, 114, 0.18);
}

.browser-dots {
  display: flex;
  gap: 7px;
  margin-bottom: 14px;
}

.browser-dots span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
}

.browser-dots span:nth-child(1) {
  background: #ff514b;
}

.browser-dots span:nth-child(2) {
  background: #ffbe3d;
}

.browser-dots span:nth-child(3) {
  background: #40c463;
}

.preview-toolbar {
  height: 28px;
  margin-bottom: 16px;
  border-radius: 5px;
  background: linear-gradient(90deg, #eff3f7 0 36%, #f8f9fb 36% 100%);
}

.preview-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(180px, 0.75fr);
  gap: 18px;
}

.preview-page,
.preview-panel {
  min-height: 170px;
  border: 1px solid #e6ebef;
  border-radius: 6px;
  background: #fbfcfd;
}

.preview-page {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 18px;
}

.preview-page span {
  display: block;
  height: 12px;
  border-radius: 99px;
  background: #e4eaf0;
}

.preview-page span:nth-child(1) {
  width: 46%;
  background: #d9e4ee;
}

.preview-page span:nth-child(2) {
  width: 86%;
}

.preview-page span:nth-child(3) {
  width: 72%;
}

.preview-page span:nth-child(4) {
  width: 58%;
}

.preview-panel {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 18px;
}

.preview-panel strong {
  font-size: 13px;
}

.preview-panel span {
  height: 10px;
  border-radius: 99px;
  background: #e8edf2;
}

.preview-panel button {
  width: 118px;
  height: 34px;
  margin-top: 10px;
  border: 0;
  border-radius: 999px;
  background: var(--primary);
  color: #ffffff;
  font-weight: 700;
}

.preview-exam-media {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(160px, 0.9fr);
  grid-template-rows: 88px 88px;
  gap: 12px;
}

.preview-media-card,
.preview-start-card {
  min-width: 0;
  margin: 0;
  border: 1px solid #e2e9f0;
  border-radius: 7px;
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(64, 91, 114, 0.08);
  overflow: hidden;
}

.preview-media-card {
  position: relative;
}

.preview-media-card-large {
  grid-row: span 2;
}

.preview-media-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: contrast(0.96) saturate(0.9);
}

.preview-media-card-large img {
  object-position: center 42%;
}

.preview-media-card figcaption {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #1f2933;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 4px 12px rgba(31, 41, 51, 0.12);
}

.preview-start-card {
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 14px;
}

.preview-start-card strong {
  font-size: 13px;
}

.preview-start-card span {
  display: block;
  height: 9px;
  border-radius: 999px;
  background: #e8edf2;
}

.preview-start-card button {
  width: 110px;
  height: 32px;
  margin-top: 2px;
  border: 0;
  border-radius: 999px;
  background: var(--primary);
  color: #ffffff;
  font-weight: 700;
}

.library-feature-row {
  display: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  max-width: 1100px;
  margin: -84px auto 32px;
  position: relative;
  z-index: 1;
}

.library-feature {
  display: grid;
  gap: 6px;
  min-height: 106px;
  padding: 22px;
  border: 1px solid #f0d7d4;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(255, 81, 75, 0.08);
}

.library-feature strong {
  color: var(--primary);
  font-size: 18px;
}

.library-feature span {
  color: var(--muted);
  line-height: 1.55;
}

.paper-navigator {
  grid-area: navigator;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(500px, 0.72fr);
  align-items: end;
  gap: 24px;
  margin-bottom: 0;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.34);
  box-shadow: var(--glass-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

body[data-view="library"]:not(.is-module-library) .paper-navigator {
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.58fr);
  grid-template-areas:
    "books books"
    "tests modules"
    "type modules";
  row-gap: 12px;
}

body[data-view="library"]:not(.is-module-library) .navigator-left {
  display: contents;
}

body[data-view="library"]:not(.is-module-library) .navigator-book-row {
  grid-area: books;
}

body[data-view="library"]:not(.is-module-library) .navigator-test-row {
  grid-area: tests;
}

body[data-view="library"]:not(.is-module-library) .navigator-type-row {
  grid-area: type;
}

body[data-view="library"]:not(.is-module-library) .segmented {
  grid-area: modules;
  align-self: end;
}

.navigator-left {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.navigator-row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  min-width: 0;
}

.navigator-book-row {
  align-items: start;
}

.navigator-type-row {
  justify-content: flex-start;
}

.navigator-title {
  display: grid;
  flex: 0 0 120px;
  gap: 3px;
}

.navigator-title span {
  color: var(--muted);
  font-size: 13px;
}

.book-nav,
.test-nav {
  display: flex;
  gap: 6px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: thin;
}

.book-nav {
  flex: 1 1 auto;
  flex-wrap: wrap;
  gap: 5px;
  row-gap: 8px;
  overflow-x: visible;
  scrollbar-width: none;
}

.book-nav::-webkit-scrollbar {
  display: none;
}

.book-tab,
.test-tab {
  flex: 0 0 auto;
  height: 36px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.52);
  color: var(--ink);
  font-weight: 900;
}

.book-tab {
  min-width: 38px;
}

.test-tab {
  min-width: 76px;
  padding: 0 12px;
}

.book-tab.active,
.test-tab.active {
  border-color: var(--primary);
  background: var(--primary);
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(255, 75, 70, 0.2);
}

.controls-row {
  align-items: stretch;
}

.library-select-label {
  justify-self: start;
  min-width: 190px;
}

.library-select-label select {
  height: 44px;
}

.segmented {
  display: inline-grid;
  grid-auto-flow: column;
  justify-self: end;
  min-width: min(540px, 100%);
  gap: 4px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.36);
}

.segment {
  min-width: 98px;
  height: 46px;
  border: 0;
  border-radius: 14px;
  background: transparent;
  color: var(--muted);
  font-size: 16px;
  font-weight: 900;
}

.segment.active {
  background: rgba(255, 255, 255, 0.7);
  color: var(--ink);
  box-shadow: 0 10px 26px rgba(30, 39, 67, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.search-box {
  width: min(320px, 100%);
}

.search-box.wide {
  width: min(520px, 100%);
}

.library-grid {
  grid-area: grid;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 14px;
}

.library-grid.test-card-grid {
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  align-items: stretch;
}

body[data-view="library"]:not(.is-module-library) .library-grid.test-card-grid {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 18px;
}

.library-grid.module-list-mode {
  display: block;
}

.module-list-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 12px;
  padding: 0 4px;
}

.module-breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
}

.module-breadcrumb button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #2f76d2;
  font-size: inherit;
}

.module-breadcrumb strong {
  color: var(--muted);
  font-weight: 500;
}

.module-status-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  color: var(--muted);
  font-size: 13px;
}

.module-status-dot {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.module-status-dot::before {
  display: inline-grid;
  width: 14px;
  height: 14px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 9px;
  line-height: 1;
  content: "";
}

.module-status-dot.new {
  color: #248ce8;
}

.module-status-dot.new::before {
  content: "鈥?;
}

.module-status-dot.doing {
  color: #ff4b42;
}

.module-status-dot.doing::before {
  content: "鈼?;
}

.module-status-dot.done {
  color: #22a447;
}

.module-status-dot.done::before {
  content: "鉁?;
}

.module-filter-panel {
  margin-bottom: 26px;
  padding: 6px 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.34);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.module-filter-row {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 18px;
  padding: 14px 0;
}

.module-filter-row + .module-filter-row {
  border-top: 1px dashed rgba(255, 255, 255, 0.74);
}

.module-filter-row > strong {
  align-self: start;
  color: var(--ink);
  font-size: 14px;
  line-height: 30px;
}

.module-filter-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  min-width: 0;
}

.module-filter-chip {
  min-height: 30px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #3f4852;
  font-size: 14px;
}

.module-filter-chip.active {
  background: rgba(255, 255, 255, 0.62);
  color: #ff463f;
  font-weight: 700;
}

.module-filter-chip:hover {
  background: rgba(255, 255, 255, 0.54);
  color: #ff463f;
}

.module-list-heading + .library-empty {
  margin-top: 14px;
}

.module-filter-panel + .library-empty {
  margin-top: 18px;
}

.forecast-view.view.active {
  display: block;
}

.forecast-board {
  display: grid;
  grid-template-columns: minmax(250px, 300px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.forecast-intro-card,
.forecast-toolbar,
.forecast-list-head,
.forecast-part-group,
.forecast-card {
  border: 1px solid rgba(255, 255, 255, 0.74);
  background: rgba(255, 255, 255, 0.38);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.forecast-intro-card {
  position: sticky;
  top: 26px;
  min-height: 320px;
  padding: 34px 30px;
  border-radius: 24px;
}

.forecast-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.54);
  color: #41506c;
  font-size: 12px;
  font-weight: 900;
}

.forecast-intro-card h2 {
  margin: 22px 0 14px;
  color: #071832;
  font-size: 34px;
  line-height: 1.08;
}

.forecast-intro-card p {
  margin: 0;
  color: #526078;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.72;
}

.forecast-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 24px;
}

.forecast-stat-grid div {
  min-width: 0;
  padding: 13px 10px;
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.38);
}

.forecast-stat-grid strong {
  display: block;
  color: var(--primary);
  font-size: 20px;
  line-height: 1.1;
}

.forecast-stat-grid span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.forecast-content {
  min-width: 0;
}

.forecast-toolbar {
  display: grid;
  grid-template-columns: 152px minmax(312px, 1fr) 110px minmax(120px, 150px);
  gap: 12px;
  align-items: end;
  margin-bottom: 18px;
  padding: 18px;
  border-radius: 22px;
}

.forecast-tabs,
.forecast-part-tabs {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
}

.forecast-tab,
.forecast-chip {
  min-height: 38px;
  border: 1px solid rgba(255, 255, 255, 0.66);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.42);
  color: #30405c;
  font-weight: 900;
}

.forecast-tab {
  min-width: 72px;
  padding: 0 12px;
}

.forecast-chip {
  min-width: 56px;
  padding: 0 8px;
}

.forecast-tab.active,
.forecast-chip.active {
  border-color: rgba(255, 75, 70, 0.5);
  background: var(--primary);
  color: #fff;
  box-shadow: 0 12px 26px rgba(255, 75, 70, 0.22);
}

.forecast-sort-label,
.forecast-search-box {
  width: 100%;
}

.forecast-filter-panel {
  margin-bottom: 18px;
}

.forecast-list-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
  padding: 16px 20px;
  border-radius: 18px;
}

.forecast-list-head strong {
  display: block;
  color: var(--ink);
  font-size: 18px;
}

.forecast-list-head span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.forecast-list {
  display: grid;
  gap: 18px;
}

.forecast-part-group {
  padding: 18px;
  border-radius: 24px;
}

.forecast-part-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  color: #30405c;
}

.forecast-part-title strong {
  color: var(--ink);
  font-size: 19px;
}

.forecast-part-title span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
}

.forecast-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(238px, 1fr));
  gap: 14px;
}

.forecast-card {
  display: grid;
  min-height: 230px;
  padding: 16px;
  border-radius: 18px;
}

.forecast-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 28px;
}

.forecast-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.forecast-status {
  background: rgba(67, 156, 255, 0.13);
  color: #2375c9;
}

.forecast-card h3 {
  margin: 12px 0 5px;
  color: #071832;
  font-size: 18px;
  line-height: 1.25;
}

.forecast-card-tags {
  display: grid;
  gap: 6px;
  margin: 12px 0;
}

.forecast-card-tags span {
  min-height: 28px;
  padding: 6px 9px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.46);
  color: #31405c;
  font-size: 12px;
  font-weight: 800;
}

.forecast-card-meta {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  margin-top: auto;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.forecast-card-meta strong {
  color: var(--primary);
  font-size: 15px;
}

.forecast-card-button {
  min-height: 40px;
  margin-top: 14px;
  border: 0;
  border-radius: 12px;
  background: var(--primary);
  color: #fff;
  font-weight: 900;
  box-shadow: 0 12px 26px rgba(255, 75, 70, 0.2);
}

.forecast-exam-mode .exam-content {
  background: rgba(255, 255, 255, 0.72);
}

.forecast-practice-scroll {
  padding: 18px;
}

.forecast-practice-document {
  min-height: 520px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 248, 245, 0.92), rgba(238, 247, 255, 0.9));
  box-shadow: 0 24px 54px rgba(45, 56, 78, 0.12);
  overflow: hidden;
}

.forecast-practice-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 26px;
  border-bottom: 1px solid rgba(15, 31, 55, 0.08);
  background: rgba(255, 255, 255, 0.52);
}

.forecast-practice-head span {
  display: inline-flex;
  margin-bottom: 8px;
  border-radius: 999px;
  padding: 5px 10px;
  background: rgba(255, 76, 76, 0.11);
  color: #ff4b4b;
  font-size: 12px;
  font-weight: 800;
}

.forecast-practice-head h2 {
  margin: 0;
  color: #0d1f3a;
  font-size: 24px;
  letter-spacing: 0;
}

.forecast-practice-head p {
  margin: 8px 0 0;
  color: #607089;
  font-size: 14px;
}

.forecast-practice-audio {
  display: block;
  width: calc(100% - 52px);
  margin: 22px 26px 0;
}

.forecast-practice-body {
  padding: 26px;
  color: #111827;
  font-size: 16px;
  line-height: 1.8;
}

.forecast-reading-practice-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  min-height: 560px;
}

.forecast-inline-review-panel {
  display: grid;
  gap: 16px;
  padding: 26px;
  border-top: 1px solid rgba(15, 31, 55, 0.1);
  background: rgba(255, 255, 255, 0.72);
  color: #111827;
  font-size: 16px;
  line-height: 1.7;
}

.forecast-inline-review-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
}

.forecast-inline-review-head strong {
  color: #0d1f3a;
  font-size: 20px;
}

.forecast-inline-review-head span,
.forecast-explanation-empty {
  color: #607089;
}

.forecast-review-mode input,
.forecast-review-mode select,
.forecast-review-mode .drag-item {
  cursor: default;
}

.forecast-source-note {
  margin: 12px 0 18px;
  padding: 12px 14px;
  border: 1px solid #b8d1ff;
  border-left: 4px solid #3f73ff;
  border-radius: 6px;
  background: #eef5ff;
  color: #10203d;
  font-size: 14px;
  line-height: 1.65;
}

.forecast-source-note strong {
  display: block;
  margin-bottom: 6px;
  color: #2459e6;
  font-size: 13px;
}

.forecast-source-note p {
  margin: 0 0 7px;
}

.forecast-source-note p:last-child {
  margin-bottom: 0;
}

.forecast-passage-note {
  clear: both;
}

.forecast-question-explanation-stack {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.forecast-question-explanation-card {
  margin: 10px 0 18px;
}

.forecast-reading-passage,
.forecast-reading-questions {
  padding: 26px;
  color: #111827;
  font-size: 16px;
  line-height: 1.8;
}

.forecast-reading-passage {
  border-right: 1px solid rgba(15, 31, 55, 0.1);
  background: rgba(255, 255, 255, 0.42);
}

.forecast-reading-passage h3 {
  margin: 0 0 16px;
  color: #0d1f3a;
  font-size: 20px;
}

.forecast-source-question-group {
  margin: 0 0 24px;
}

.forecast-source-question-group h3,
.forecast-source-question-group h4 {
  margin: 0 0 12px;
  color: #0d1f3a;
}

.forecast-source-question-group .group,
.forecast-source-question-group .question-item,
.forecast-source-question-group .headings-pool,
.forecast-source-question-group .options-pool {
  margin: 12px 0;
}

.forecast-source-question-group .pool-items {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.forecast-source-question-group .drag-item,
.forecast-source-question-group .option-item {
  border: 1px solid rgba(15, 31, 55, 0.12);
  border-radius: 8px;
  padding: 8px 10px;
  background: rgba(255, 255, 255, 0.72);
}

.forecast-source-question-group .paragraph-dropzone,
.forecast-source-question-group .match-dropzone,
.forecast-source-question-group .dropzone {
  min-height: 34px;
  border: 1px dashed rgba(15, 31, 55, 0.24);
  border-radius: 8px;
  padding: 7px 9px;
  background: rgba(255, 255, 255, 0.5);
}

.forecast-inline-choice {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 3px 8px 3px 0;
  font-weight: 700;
}

.forecast-answer-strip {
  margin-top: 26px;
  border-top: 1px solid rgba(15, 31, 55, 0.12);
  padding-top: 18px;
}

.forecast-answer-strip h4 {
  margin: 0 0 12px;
  color: #0d1f3a;
  font-size: 16px;
}

.forecast-answer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
  gap: 10px;
}

.forecast-answer-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.forecast-answer-grid .inline-answer {
  min-width: 0;
  width: 100%;
}

.forecast-pending-panel {
  border: 1px dashed rgba(255, 75, 75, 0.48);
  border-radius: 14px;
  padding: 22px;
  background: rgba(255, 255, 255, 0.68);
}

.forecast-pending-panel > span {
  display: inline-flex;
  margin-bottom: 10px;
  border-radius: 999px;
  padding: 5px 10px;
  background: rgba(255, 75, 75, 0.1);
  color: #ff4b4b;
  font-size: 12px;
  font-weight: 800;
}

.forecast-pending-panel h3 {
  margin: 0 0 10px;
  color: #0d1f3a;
  font-size: 22px;
}

.forecast-pending-panel p {
  margin: 0;
  color: #53647c;
  line-height: 1.8;
}

.forecast-pending-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.forecast-pending-meta strong,
.forecast-pending-meta span {
  border: 1px solid rgba(15, 31, 55, 0.08);
  border-radius: 999px;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.7);
  color: #24324a;
  font-size: 12px;
  font-weight: 800;
}

.module-status-text {
  color: var(--muted);
}

.module-status-text.doing {
  color: #ff4b42;
}

.module-status-text.done {
  color: #22a447;
}

.writing-list-heading {
  margin-bottom: 14px;
}

.writing-task-tabs {
  display: flex;
  gap: 34px;
  margin: 0 0 18px;
}

.writing-task-tabs button {
  position: relative;
  min-height: 34px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #9aa1aa;
  font-size: 17px;
  font-weight: 800;
}

.writing-task-tabs button.active {
  color: var(--ink);
}

.writing-task-tabs button.active::after {
  position: absolute;
  right: 0;
  bottom: -5px;
  left: 32px;
  height: 3px;
  border-radius: 999px;
  background: #ff4b42;
  content: "";
}

.writing-filter-panel {
  margin-bottom: 20px;
}

.writing-library-board {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 680px;
  border: 1px solid #e6e9ee;
  border-radius: 6px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(31, 41, 55, 0.08);
  overflow: hidden;
}

.writing-topic-list {
  max-height: 680px;
  overflow-y: auto;
  padding: 18px 0;
  border-right: 1px solid #c4c7cc;
  background: #ffffff;
  scrollbar-width: thin;
}

.writing-topic-item {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  width: 100%;
  min-height: 34px;
  padding: 0 12px 0 18px;
  border: 0;
  background: transparent;
  color: #1f2933;
  text-align: left;
}

.writing-topic-item span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.writing-topic-item.active {
  background: #ff675d;
  color: #ffffff;
}

.writing-topic-item.active .module-play {
  border-color: #ffffff;
  color: #ffffff;
}

.writing-topic-preview {
  position: relative;
  min-width: 0;
  padding: 46px 58px;
  background: #ffffff;
}

.writing-topic-actions {
  position: absolute;
  top: 44px;
  right: 48px;
  display: flex;
  gap: 18px;
}

.writing-topic-actions .primary-button {
  min-height: 32px;
  padding: 0 14px;
  border-radius: 5px;
  background: #ff6a63;
  font-size: 14px;
}

.writing-topic-actions .primary-button.soft {
  background: #ff776f;
}

.writing-preview-document {
  max-width: 720px;
  color: #000000;
  font-size: 16px;
  line-height: 1.35;
}

.writing-preview-document h2 {
  margin: 0 0 16px;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: 0;
}

.writing-preview-topic-box {
  margin: 12px 0;
  padding: 8px 12px;
  border: 2px solid #303030;
}

.writing-preview-topic-box p {
  margin: 0 0 12px;
}

.writing-preview-topic-box p:last-child {
  margin-bottom: 0;
}

.writing-preview-topic-box table {
  width: 100%;
  border-collapse: collapse;
}

.writing-preview-topic-box th,
.writing-preview-topic-box td {
  border: 1px solid #3f3f3f;
  padding: 6px;
}

.writing-preview-topic-box img {
  max-width: 100%;
  height: auto;
}

.writing-preview-visuals {
  display: grid;
  gap: 14px;
  margin: 16px 0 18px;
}

.writing-preview-visuals figure {
  margin: 0;
  text-align: center;
}

.writing-preview-visuals img {
  max-width: 100%;
  max-height: 440px;
  height: auto;
  object-fit: contain;
}

.writing-preview-visuals figcaption {
  margin-top: 6px;
  color: var(--muted);
  font-size: 13px;
}

.writing-preview-visuals table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.writing-preview-visuals th,
.writing-preview-visuals td {
  border: 1px solid #3f3f3f;
  padding: 6px;
}

.writing-answer-idea {
  display: grid;
  gap: 6px;
  margin-top: 72px;
}

.writing-answer-idea strong {
  font-size: 16px;
}

.writing-answer-idea button {
  justify-self: start;
  padding: 0;
  border: 0;
  background: transparent;
  color: #0f65c8;
}

.writing-study-panel {
  display: grid;
  gap: 16px;
  margin-top: 32px;
  padding: 20px;
  border: 1px solid #d8dde4;
  border-radius: 6px;
  background: #f8fafc;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.writing-study-panel.is-highlighted {
  border-color: #ff6a63;
  box-shadow: 0 0 0 3px rgba(255, 106, 99, 0.18);
}

.writing-study-head,
.writing-model-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.writing-study-head div {
  display: grid;
  gap: 3px;
}

.writing-study-head span,
.writing-model-head span {
  color: var(--muted);
  font-size: 13px;
}

.writing-study-head strong {
  font-size: 20px;
}

.writing-study-head em {
  color: #ff4b42;
  font-style: normal;
  font-weight: 800;
}

.writing-study-grid,
.writing-ai-advice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.writing-study-section {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.writing-study-section h3,
.writing-ai-advice-grid h3,
.writing-ai-rewrite h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}

.writing-study-section ol,
.writing-ai-advice-grid ol {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 20px;
}

.writing-study-section li,
.writing-ai-advice-grid li {
  line-height: 1.55;
}

.writing-language-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.writing-language-list span {
  padding: 6px 9px;
  border: 1px solid #d5dce3;
  border-radius: 6px;
  background: #ffffff;
  color: #34404a;
  font-size: 13px;
}

.writing-model-section {
  padding-top: 14px;
  border-top: 1px solid #e1e5eb;
}

.writing-model-section p {
  margin: 0;
  line-height: 1.68;
}

.writing-study-note {
  padding: 10px 12px;
  border-left: 3px solid #ff6a63;
  background: #fff7f6;
  color: #6d3c37;
  font-size: 13px;
}

.module-book-list {
  display: grid;
  gap: 30px;
}

.module-book-row {
  display: grid;
  grid-template-columns: 136px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-width: 0;
  padding: 20px 14px 20px 0;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.34);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.module-book-label {
  display: grid;
  align-content: center;
  min-height: 100px;
  padding: 4px 0 0 12px;
  background: transparent;
  color: #071832;
}

.module-book-label span {
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
}

.module-book-label small {
  margin-top: 10px;
  color: #7a8294;
  font-weight: 700;
  letter-spacing: 0;
}

.module-book-label strong {
  justify-self: end;
  margin-top: -28px;
  color: var(--primary);
  font-size: 44px;
  line-height: 1;
}

.module-test-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 12px;
  min-width: 0;
  overflow-x: auto;
  padding-bottom: 0;
}

.module-test-card {
  min-width: 180px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.58);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.module-test-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-height: 36px;
  padding: 0 14px;
  background: rgba(11, 23, 48, 0.82);
  color: #ffffff;
}

.module-test-title strong {
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(61, 52, 124, 0.48);
  font-size: 15px;
}

.module-part-list {
  display: grid;
}

.module-part-row {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 48px;
  width: 100%;
  padding: 7px 9px;
  border: 0;
  border-bottom: 1px solid #edf0f3;
  background: #ffffff;
  color: var(--ink);
  text-align: left;
}

.module-part-row:hover {
  background: #fff8f7;
}

.module-part-row span:nth-child(2) {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.module-part-row small,
.module-part-row em {
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}

.module-play {
  display: grid;
  width: 14px;
  height: 14px;
  place-items: center;
  border: 1px solid #cbd2d9;
  border-radius: 50%;
  color: #8b98a5;
  font-size: 10px;
  font-weight: 900;
}

.library-empty {
  grid-column: 1 / -1;
  padding: 34px;
  border: 1px dashed var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.42);
  text-align: center;
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.library-empty p {
  max-width: 620px;
  margin: 8px auto 0;
  color: var(--muted);
  line-height: 1.7;
}

.paper-card,
.metric,
.admin-panel,
.empty-state,
.review-item {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: var(--surface);
  box-shadow: var(--shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.paper-card {
  display: grid;
  min-height: 176px;
  padding: 16px;
  gap: 12px;
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    border-color 160ms ease;
}

.paper-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 20px 46px rgba(45, 53, 80, 0.16);
}

.paper-card-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.paper-card h2 {
  font-size: 18px;
}

.badge {
  display: inline-flex;
  align-items: center;
  height: 26px;
  border-radius: 999px;
  padding: 0 10px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.48);
  color: #8c4d2d;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.paper-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--muted);
  font-size: 13px;
}

.paper-card-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: auto;
}

.test-paper-card {
  display: flex;
  min-height: 282px;
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    radial-gradient(circle at 82% 20%, rgba(255, 112, 92, 0.12), transparent 34%),
    rgba(255, 255, 255, 0.34);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    border-color 160ms ease;
}

.test-paper-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 22px 54px rgba(45, 53, 80, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.86);
}

.test-paper-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.test-paper-card-head h2 {
  margin: 0;
  color: #071832;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.2;
}

.test-paper-card-head p {
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
}

.test-paper-actions {
  display: grid;
  gap: 12px;
  margin-top: auto;
}

.test-paper-mock-button,
.test-paper-module-button {
  border-radius: 14px;
  font-family: inherit;
  font-weight: 900;
}

.test-paper-mock-button {
  width: 100%;
  min-height: 46px;
  border: 0;
  background: var(--primary);
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(255, 75, 70, 0.22);
  font-size: 16px;
}

.test-paper-mock-button:hover {
  background: var(--primary-strong);
}

.test-paper-module-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.test-paper-module-button {
  display: flex;
  min-height: 58px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.56);
  color: #1d2633;
  font-size: 14px;
}

.test-paper-module-button:hover {
  border-color: rgba(255, 255, 255, 0.9);
  background: rgba(255, 255, 255, 0.72);
  color: var(--primary);
}

.test-paper-module-button span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.test-paper-module-button.disabled {
  cursor: not-allowed;
  opacity: 0.52;
}

.notebook-view {
  display: none;
}

.notebook-view.active {
  display: block;
}

.notebook-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.42);
  box-shadow: var(--card-shadow);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.notebook-head p {
  margin-top: 6px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 700;
}

.notebook-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.notebook-stats div {
  min-height: 78px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.45);
  box-shadow: var(--shadow);
}

.notebook-stats strong {
  display: block;
  color: var(--primary);
  font-size: 28px;
  line-height: 1.1;
}

.notebook-stats span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.notebook-toolbar {
  display: grid;
  grid-template-columns: minmax(240px, auto) minmax(220px, 1fr) minmax(180px, 220px) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.42);
  box-shadow: var(--shadow);
}

.wrongbook-toolbar {
  grid-template-columns: minmax(200px, auto) minmax(360px, 1fr) minmax(220px, 300px) auto;
}

.notebook-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.notebook-tab {
  min-height: 38px;
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.56);
  color: #30405c;
  padding: 0 14px;
  font-weight: 900;
}

.notebook-tab.active,
.notebook-tab:hover {
  border-color: rgba(255, 75, 70, 0.5);
  background: var(--primary);
  color: #fff;
}

.notebook-search,
.notebook-select {
  width: 100%;
}

.notebook-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  color: #30405c;
  font-size: 14px;
  font-weight: 900;
  white-space: nowrap;
}

.notebook-toggle input {
  width: 16px;
  height: 16px;
  accent-color: var(--primary);
}

.wordbook-list {
  display: grid;
  gap: 14px;
}

.word-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.48);
  box-shadow: var(--shadow);
}

.word-card.is-reviewed {
  opacity: 0.76;
}

.word-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.word-card-head strong {
  display: block;
  color: #071832;
  font-size: 22px;
}

.word-card-head span,
.word-source,
.wrong-question-cell small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.word-card-head em {
  flex: 0 0 auto;
  border-radius: 999px;
  background: rgba(255, 75, 70, 0.1);
  color: var(--primary);
  padding: 5px 9px;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.word-definition-text {
  margin-top: 10px;
  color: #263247;
  line-height: 1.6;
}

.wordbook-list.hide-definitions .word-definition-text,
.wordbook-list.hide-definitions .word-network {
  display: none;
}

.word-network {
  display: grid;
  gap: 5px;
  margin-top: 10px;
  color: #34435d;
  font-size: 13px;
}

.word-network.compact {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.word-source {
  margin-top: 10px;
}

.word-note-inline,
.word-note-label {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.word-note-inline textarea,
.word-note-label textarea,
.wrongbook-table textarea {
  width: 100%;
  min-height: 70px;
  resize: vertical;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.72);
  color: var(--ink);
  padding: 10px 12px;
  font: inherit;
}

.word-card-side,
.wrongbook-actions {
  display: grid;
  align-content: start;
  gap: 8px;
}

.danger-text {
  color: var(--danger);
}

.wrongbook-table-wrap {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.5);
  box-shadow: var(--shadow);
}

.wrongbook-table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
}

.wrongbook-table th,
.wrongbook-table td {
  border-bottom: 1px solid rgba(214, 221, 230, 0.8);
  padding: 14px;
  text-align: left;
  vertical-align: top;
}

.wrongbook-table th {
  background: rgba(242, 246, 251, 0.88);
  color: #0b1730;
  font-size: 13px;
  font-weight: 900;
}

.wrongbook-table th:first-child,
.wrongbook-table td:first-child {
  width: 120px;
}

.wrongbook-table th:nth-child(3),
.wrongbook-table td:nth-child(3) {
  width: 120px;
}

.wrongbook-table th:nth-child(4),
.wrongbook-table td:nth-child(4) {
  width: 240px;
}

.wrong-reviewed-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #30405c;
  font-size: 13px;
  font-weight: 900;
}

.wrong-reviewed-check input {
  width: 16px;
  height: 16px;
  accent-color: var(--primary);
}

.wrong-question-cell strong {
  color: #071832;
}

.wrong-question-cell p {
  margin-top: 6px;
  line-height: 1.55;
}

.wrong-question-cell .review-line {
  margin-top: 8px;
}

.word-dialog::backdrop,
.answer-dialog::backdrop,
.auth-dialog::backdrop {
  background: rgba(7, 12, 24, 0.42);
}

.word-dialog-content {
  display: grid;
  width: min(720px, calc(100vw - 32px));
  gap: 16px;
  border: 0;
  border-radius: 8px;
  background: #ffffff;
  padding: 0;
}

.word-dialog[open] {
  border: 0;
  border-radius: 8px;
  padding: 0;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.24);
}

.word-search-row {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 90px 90px;
  gap: 10px;
  padding: 0 24px;
}

.word-dialog-hint {
  padding: 0 24px;
  color: #2cad3c;
  font-size: 13px;
}

.word-definition-card,
.word-translation-card {
  margin: 0 24px;
  padding: 16px;
  border: 1px solid #dfe6ee;
  border-radius: 4px;
  background: #f5f7fa;
}

.word-translation-card {
  display: none;
}

.word-translation-card.open {
  display: grid;
  gap: 10px;
}

.word-definition-head,
.word-translation-head {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 10px;
}

.word-definition-head strong,
.word-translation-head strong {
  color: #071832;
  font-size: 18px;
}

.word-definition-head span,
.word-translation-head span {
  color: #2d74d8;
  font-size: 13px;
  font-weight: 800;
}

.word-translation-source {
  color: #526078;
  line-height: 1.6;
}

.word-translation-result {
  color: #101827;
  font-weight: 800;
  line-height: 1.7;
}

.word-pronunciation-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.word-phonetic {
  color: #2d74d8;
  font-size: 14px;
  font-weight: 900;
}

.word-phonetic.muted {
  color: #6f7b8d;
}

.pronunciation-button {
  min-height: 30px;
  border: 0;
  border-radius: 999px;
  background: rgba(45, 116, 216, 0.12);
  color: #1f68c7;
  padding: 0 11px;
  font-size: 13px;
  font-weight: 900;
}

.translation-link-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.translation-link-row a {
  border-radius: 999px;
  background: rgba(45, 116, 216, 0.1);
  color: #2d74d8;
  padding: 6px 10px;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}

.word-dialog-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 24px;
}

.word-dialog-meta label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

#wordDialogStatus {
  color: var(--success);
  font-size: 13px;
  font-weight: 900;
}

.word-dialog .dialog-actions {
  padding: 0 24px 24px;
}

.word-selection-popover {
  position: fixed;
  z-index: 2200;
  display: none;
  grid-auto-flow: column;
  gap: 8px;
  padding: 8px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
}

.word-selection-popover.open {
  display: grid;
}

.word-selection-popover button {
  min-height: 36px;
  border: 0;
  border-radius: 6px;
  background: var(--primary);
  color: #ffffff;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.word-selection-popover button + button {
  background: #2d74d8;
}

@media (max-width: 980px) {
  .notebook-toolbar,
  .wrongbook-toolbar {
    grid-template-columns: 1fr;
  }

  .word-card {
    grid-template-columns: 1fr;
  }

  .word-card-side {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  }

  .word-search-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .notebook-head {
    align-items: stretch;
    flex-direction: column;
  }

  .notebook-stats {
    grid-template-columns: 1fr;
  }

  .word-dialog-meta {
    align-items: stretch;
    flex-direction: column;
  }

  .word-selection-popover {
    grid-auto-flow: row;
    max-width: calc(100vw - 20px);
  }
}

.exam-header,
.result-summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 16px;
}

.cd-exam-mode .exam-header {
  display: none;
}

.eyebrow {
  color: var(--accent);
  font-weight: 800;
  font-size: 12px;
  text-transform: uppercase;
}

.timer,
.band-score {
  display: grid;
  place-items: center;
  min-width: 96px;
  min-height: 54px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  font-weight: 800;
}

.band-score span {
  font-size: 26px;
}

.band-score small {
  color: var(--muted);
}

#resultView.view.active {
  display: grid;
  align-content: start;
  gap: 10px;
}

#resultView .result-summary {
  margin-bottom: 0;
}

#resultView .result-summary h2 {
  margin: 2px 0 0;
  font-size: 20px;
  line-height: 1.2;
}

#resultView .band-score {
  min-width: 78px;
  min-height: 44px;
  border-radius: 8px;
}

#resultView .band-score span {
  font-size: 24px;
  line-height: 1;
}

#resultView .band-score small {
  font-size: 11px;
  line-height: 1;
}

#resultView .score-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px;
}

#resultView .metric {
  flex: 0 0 152px;
  padding: 8px 10px;
  border-radius: 8px;
}

#resultView .metric strong {
  font-size: 20px;
}

.exam-layout {
  display: block;
}

.exam-content,
.answer-panel {
  min-height: 580px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: var(--shadow);
}

.exam-content {
  overflow: hidden;
}

.exam-footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--shadow);
}

.content-scroll {
  height: calc(100vh - 224px);
  min-height: 580px;
  overflow: auto;
  padding: 20px;
}

.mock-start-scroll {
  display: grid;
  place-items: center;
  padding: 32px;
}

.mock-start-panel {
  width: min(720px, 100%);
  border: 1px solid #d8dee8;
  border-radius: 8px;
  background: #ffffff;
  padding: 32px;
  color: #172033;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.mock-start-panel > span {
  display: block;
  margin-bottom: 8px;
  color: #42526e;
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mock-start-panel h2 {
  margin: 0 0 14px;
  font-size: 1.75rem;
}

.mock-start-panel p {
  margin: 0;
  color: #36445d;
  line-height: 1.75;
}

.mock-start-rules {
  margin: 22px 0;
  padding: 18px;
  border: 1px solid #e1e6ef;
  border-radius: 6px;
  background: #f8fafc;
}

.mock-start-rules strong,
.mock-start-rules em {
  display: inline-block;
  margin-right: 12px;
}

.mock-start-rules em {
  color: #52627a;
  font-style: normal;
}

.mock-start-button {
  min-width: 150px;
}

.listening-scroll {
  height: calc(100vh - 224px);
  min-height: 580px;
  overflow: auto;
  padding: 0;
}

.reading-scroll {
  height: calc(100vh - 224px);
  min-height: 580px;
  overflow: auto;
  padding: 0;
}

.writing-exam-mode .exam-content,
.speaking-exam-mode .exam-content {
  min-height: calc(100vh - 292px);
}

.writing-workspace,
.speaking-workspace {
  display: grid;
  grid-template-rows: auto 1fr;
  height: calc(100vh - 292px);
  min-height: 620px;
  background: #f3f5f6;
}

.subjective-part-nav {
  display: flex;
  min-height: 58px;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.subjective-part-nav button {
  display: grid;
  gap: 3px;
  min-width: 150px;
  padding: 10px 22px;
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 3px solid transparent;
  background: #ffffff;
  color: var(--text);
  font: inherit;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.subjective-part-nav button span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.subjective-part-nav button.active {
  border-bottom-color: var(--primary);
  background: #f5fbfe;
  color: var(--primary);
}

.writing-layout,
.speaking-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(420px, 0.88fr);
  min-height: 0;
}

.writing-prompt-pane,
.speaking-prompt-pane,
.writing-editor-pane {
  display: grid;
  grid-template-rows: auto 1fr;
  min-width: 0;
  min-height: 0;
  background: #ffffff;
}

.writing-prompt-pane,
.speaking-prompt-pane {
  border-right: 1px solid var(--line);
}

.subjective-pane-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 58px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--line);
}

.subjective-pane-head > div {
  display: grid;
  gap: 2px;
}

.subjective-pane-head span {
  color: var(--muted);
  font-size: 13px;
}

.source-page-wrap {
  min-height: 0;
  overflow: auto;
  padding: 18px;
  background: #eef1f2;
}

.source-page-wrap img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  border: 1px solid #cdd3d6;
  background: #ffffff;
}

.subjective-prompt-scroll {
  min-height: 0;
  overflow: auto;
  padding: 26px;
  background: #eef1f2;
}

.subjective-prompt-document {
  max-width: 820px;
  min-height: 100%;
  margin: 0 auto;
  padding: 30px 34px;
  border: 1px solid #cdd3d6;
  background: #ffffff;
  color: #171a1c;
  font-family: Arial, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.55;
}

.subjective-prompt-document h2 {
  margin: 0 0 20px;
  font-size: 24px;
  line-height: 1.2;
}

.subjective-prompt-document h3 {
  margin: 20px 0 8px;
  font-size: 17px;
}

.subjective-prompt-document p {
  margin: 0 0 12px;
  white-space: pre-wrap;
}

.subjective-prompt-document .prompt-instruction {
  color: #3f474b;
  font-style: italic;
}

.subjective-prompt-document .prompt-question {
  margin-bottom: 8px;
}

.subjective-page-image {
  margin: 16px 0 0;
  padding: 0;
}

.subjective-page-image img {
  display: block;
  width: 100%;
  max-width: 760px;
  height: auto;
  border: 1px solid #d5dce3;
  background: #ffffff;
}

.prompt-bullet {
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 5px;
  margin-bottom: 7px;
}

.prompt-bullet p {
  margin: 0;
}

.task-visual {
  margin: 24px 0 0;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}

.task-visual img {
  display: block;
  width: 100%;
  height: auto;
  background: #ffffff;
  object-fit: contain;
}

.cambridge-16-exam .task-visual {
  padding-top: 0;
  border-top: 0;
}

.cambridge-17-exam .task-visual.a17-task-visual-plain {
  padding-top: 0;
  border-top: 0;
}

.speaking-prompt-document {
  font-size: 16px;
}

.speaking-part-two-instruction {
  display: grid;
  gap: 5px;
  margin-top: 24px;
  padding: 14px;
  border: 1px solid #b7c7ce;
  border-radius: 6px;
  background: #f3f8fa;
}

.speaking-part-two-instruction span {
  color: #3f474b;
  font-size: 14px;
}

.ielts-speaking-timing.a17-speaking-timing-plain {
  padding: 0;
  border: 0;
}

.writing-editor {
  width: 100%;
  height: 100%;
  min-height: 0;
  resize: none;
  padding: 22px;
  border: 0;
  border-radius: 0;
  outline: 0;
  color: #202426;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 17px;
  line-height: 1.75;
}

.writing-editor:focus {
  box-shadow: inset 0 0 0 2px rgba(0, 145, 210, 0.28);
}

.writing-editor-tools {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--muted);
  font-size: 13px;
}

.writing-ai-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 128px;
  min-height: 36px;
  padding: 0 18px;
  border: 1px solid rgba(255, 75, 75, 0.38);
  border-radius: 999px;
  background: #ff4b4b;
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(255, 75, 75, 0.22);
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.writing-ai-button:hover {
  border-color: rgba(229, 45, 45, 0.5);
  background: #ef3f3f;
  box-shadow: 0 12px 26px rgba(255, 75, 75, 0.28);
  transform: translateY(-1px);
}

.writing-ai-button:disabled {
  border-color: rgba(148, 163, 184, 0.28);
  background: #eef2f6;
  color: #718096;
  box-shadow: none;
  cursor: default;
  transform: none;
}

.writing-ai-usage-note {
  color: #596273;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.writing-editor-body {
  display: grid;
  grid-template-rows: minmax(280px, 1fr) auto;
  min-height: 0;
}

.writing-ai-review-panel {
  max-height: 280px;
  overflow: auto;
  padding: 14px 16px;
  border-top: 1px solid var(--line);
  background: #f7f9fb;
}

.writing-ai-empty {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 13px;
}

.writing-ai-empty p,
.writing-ai-criteria p,
.writing-ai-rewrite p {
  margin: 0;
}

.writing-ai-score-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.writing-ai-score-row > div {
  display: grid;
  gap: 2px;
  padding: 10px 12px;
  border: 1px solid #d7dde5;
  border-radius: 6px;
  background: #ffffff;
}

.writing-ai-score-row span {
  color: var(--muted);
  font-size: 12px;
}

.writing-ai-score-row strong {
  font-size: 24px;
}

.writing-ai-source-note {
  margin: -2px 0 12px;
  color: #4b5563;
  font-size: 13px;
  line-height: 1.45;
}

.writing-ai-criteria {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.writing-ai-criteria section,
.writing-ai-advice-grid section,
.writing-ai-rewrite {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #d7dde5;
  border-radius: 6px;
  background: #ffffff;
}

.writing-ai-criteria strong {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 13px;
}

.writing-ai-criteria em {
  color: #ff4b42;
  font-style: normal;
}

.writing-ai-criteria p,
.writing-ai-rewrite p {
  color: #4b5563;
  font-size: 13px;
  line-height: 1.5;
}

.writing-ai-advice-grid {
  margin-top: 10px;
}

.writing-ai-advice-grid ol {
  font-size: 13px;
}

.writing-ai-rewrite {
  margin-top: 10px;
}

.writing-ai-stale-note {
  display: none;
  margin: 0 0 10px;
  padding: 8px 10px;
  border-radius: 6px;
  background: #fff7e6;
  color: #8a5b00;
  font-size: 13px;
}

.writing-ai-review-panel.is-stale .writing-ai-stale-note {
  display: block;
}

.speaking-control-pane {
  min-width: 0;
  overflow: auto;
  padding: 24px;
  background: #ffffff;
}

.speaking-part-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.speaking-part-heading h3 {
  margin: 3px 0 0;
  font-size: 26px;
}

.speaking-part-heading > div > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.recording-state {
  padding: 6px 9px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.recording-state.recording {
  border-color: #c93b35;
  background: #fff1f0;
  color: #a62822;
}

.speaking-notes {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
  font-weight: 700;
}

.speaking-notes textarea {
  min-height: 110px;
  resize: vertical;
  font-weight: 400;
  line-height: 1.55;
}

.recording-panel {
  display: grid;
  justify-items: center;
  gap: 16px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f7f8f8;
  text-align: center;
}

.recording-time {
  color: #202426;
  font-size: 38px;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}

.recording-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.danger-button {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid #a62822;
  border-radius: 6px;
  background: #b92f29;
  color: #ffffff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.audio-upload-button {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

.audio-upload-button input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.speaking-playback {
  width: 100%;
}

.recording-panel p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}

.delete-recording-button {
  color: #a62822;
}

.speaking-rubric {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}

.speaking-rubric strong {
  grid-column: 1 / -1;
  margin-bottom: 2px;
}

.speaking-rubric span,
.subjective-rubric-result span {
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #ffffff;
  color: var(--muted);
  font-size: 13px;
}

.subjective-review {
  border-left: 4px solid #d7a12b;
}

.subjective-review p {
  margin: 0;
  color: var(--muted);
}

.subjective-rubric-result {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.subjective-rubric-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.subjective-rubric-card {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-2);
}

.subjective-rubric-card small {
  color: var(--muted);
}

.reading-passage {
  max-width: 820px;
  line-height: 1.72;
}

.reading-passage p + p {
  margin-top: 14px;
}

.raw-test-pages {
  display: grid;
  gap: 16px;
}

.pdf-section-list {
  display: grid;
  gap: 18px;
}

.pdf-section {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: var(--shadow);
}

.pdf-section-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  background: var(--surface-2);
}

.pdf-section-head h3 {
  margin: 0;
  font-size: 17px;
}

.pdf-section-head span {
  color: var(--muted);
  font-size: 13px;
}

.pdf-frame {
  display: block;
  width: 100%;
  height: 760px;
  border: 0;
  background: #ffffff;
}

.cd-listening {
  position: relative;
  min-height: 760px;
  padding-bottom: 54px;
  background: #ffffff;
  color: #000000;
  font-family: "Times New Roman", Times, serif;
}

.cd-reading {
  position: relative;
  min-height: 760px;
  padding-bottom: 54px;
  background: #ffffff;
  color: #000000;
  font-family: "Times New Roman", Times, serif;
}

.cd-statusbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 42px;
  padding: 0 14px;
  border-bottom: 1px solid #d5d5d5;
  font-family: Arial, sans-serif;
}

.cd-candidate {
  display: flex;
  gap: 10px;
  align-items: center;
}

.cd-candidate strong,
.cd-candidate span {
  display: block;
  line-height: 1.2;
}

.cd-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #eeeeee;
}

.cd-audio-mini {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cd-reading-tools {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #555555;
  font-family: Arial, sans-serif;
}

.cd-audio-mini audio {
  width: 250px;
  height: 28px;
}

.mock-listening-audio {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid #d7dce5;
  border-radius: 6px;
  background: #f8fafc;
  color: #1f2937;
  font-family: Arial, sans-serif;
  font-size: 13px;
}

.mock-listening-sequence-audio {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  border-bottom: 1px solid #d5d5d5;
  font-family: Arial, sans-serif;
  font-size: 13px;
}

.mock-listening-sequence-audio > span {
  color: #334155;
  font-weight: 700;
}

.mock-listening-audio.inline {
  padding: 4px 8px;
  background: transparent;
}

.mock-listening-audio-main {
  font-weight: 700;
}

.mock-listening-volume {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #475569;
}

.mock-listening-volume input {
  width: 92px;
}

.mock-listening-audio-status {
  min-width: 58px;
  color: #2563eb;
  font-weight: 700;
}

.mock-listening-audio audio {
  display: none;
}

.cd-menu {
  font-size: 22px;
  color: #555555;
  cursor: pointer;
  user-select: none;
}

.cd-menu:hover,
.cd-menu:focus-visible {
  color: #111111;
  outline: 0;
}

.exam-settings-backdrop {
  position: fixed;
  inset: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.62);
}

.exam-settings-backdrop[hidden] {
  display: none;
}

.exam-settings-dialog {
  position: relative;
  width: min(620px, calc(100vw - 48px));
  min-height: 360px;
  padding: 14px 20px 26px;
  border: 1px solid #c8c8c8;
  border-radius: 7px;
  background: #ffffff;
  color: #000000;
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.24);
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  line-height: 1.3;
}

.exam-settings-dialog h2 {
  margin: 0 36px 28px 0;
  font-size: 20px;
  line-height: 1.2;
}

.exam-settings-dialog p {
  margin: 0 6px 70px;
}

.exam-settings-close {
  position: absolute;
  right: 10px;
  top: 8px;
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent;
  color: #000000;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
}

.exam-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  justify-content: center;
  gap: 72px;
}

.exam-settings-grid fieldset {
  display: grid;
  gap: 2px;
  min-width: 118px;
  margin: 0;
  padding: 0;
  border: 0;
}

.exam-settings-grid legend {
  margin-bottom: 2px;
  font-weight: 700;
}

.exam-settings-grid label {
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.exam-settings-grid input {
  width: 13px;
  height: 13px;
  margin: 0;
}

.exam-settings-actions {
  display: flex;
  justify-content: center;
  gap: 50px;
  margin-top: 50px;
}

.exam-settings-actions button {
  min-width: 66px;
  height: 34px;
  border: 1px solid #9a9a9a;
  border-radius: 4px;
  background: #ffffff;
  color: #000000;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

body[data-exam-colours="yellow-black"] .exam-settings-backdrop,
body[data-exam-colours="white-black"] .exam-settings-backdrop {
  background: rgba(0, 0, 0, 0.38);
}

body[data-exam-colours="yellow-black"] .exam-settings-dialog {
  border-color: #ffff00;
  background: #000000;
  color: #ffff00;
}

body[data-exam-colours="white-black"] .exam-settings-dialog {
  border-color: #ffffff;
  background: #000000;
  color: #ffffff;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .exam-settings-dialog
  :is(h2, p, legend, label, button, .exam-settings-close) {
  color: inherit;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .exam-settings-dialog
  input[type="radio"] {
  accent-color: currentColor;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .exam-settings-actions
  button {
  border-color: currentColor;
  background: #000000;
  color: inherit;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .exam-settings-close {
  background: transparent;
}

.cd-part-head {
  padding: 4px 3px;
  border: 1px solid #d5d5d5;
  border-radius: 3px;
  line-height: 1.25;
}

.cd-part-head strong,
.cd-part-head span {
  display: block;
}

.cd-paper {
  width: min(1380px, calc(100vw - 360px));
  padding: 8px 14px 40px;
}

.image-paper {
  display: grid;
  gap: 14px;
}

.image-page-stack {
  display: grid;
  gap: 12px;
}

.image-pdf-page {
  margin: 0;
  overflow: hidden;
  border: 1px solid #d4d4d4;
  background: #ffffff;
}

.image-pdf-page img {
  display: block;
  width: 100%;
  height: auto;
}

.ocr-image-question-page {
  display: grid;
  gap: 10px;
}

.ocr-source-page {
  border-color: #b9b9b9;
}

.cd-reading-pane .ocr-source-page img,
.cd-paper .ocr-source-page img {
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
}

.image-answer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
  gap: 8px 10px;
  margin: 12px 0 16px;
  padding: 10px;
  border: 1px solid #b7b7b7;
  background: #f7f7f7;
  font-family: Arial, sans-serif;
}

.image-answer-cell {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.image-answer-cell span {
  font-weight: 700;
  text-align: right;
}

.image-answer-cell .inline-answer {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.cd-reading-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.95fr);
  min-height: 650px;
  border-top: 1px solid #d5d5d5;
}

.cd-reading-pane {
  height: calc(min(760px, calc(100vh - 220px)) - 146px);
  min-height: 600px;
  overflow: auto;
  padding: 14px 16px 72px;
}

.listening-scroll > .cd-listening,
.reading-scroll > .cd-reading {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  padding-bottom: 0;
}

.listening-scroll > .cd-listening .cd-paper {
  flex: 1 1 auto;
}

.reading-scroll > .cd-reading .cd-reading-layout {
  flex: 1 1 auto;
  min-height: 0;
}

.reading-scroll > .cd-reading .cd-reading-pane {
  height: auto;
  min-height: 0;
}

.cd-passage-pane {
  border-right: 1px solid #b7b7b7;
}

.reading-mark {
  border-radius: 2px;
  background: #fff08a;
  box-shadow: 0 0 0 1px rgba(170, 130, 0, 0.25);
}

.reading-mark.reading-mark-exclude {
  background: transparent;
  box-shadow: none;
  color: #4c5358;
  text-decoration: line-through;
  text-decoration-thickness: 2px;
  text-decoration-color: #4c5358;
}

.reading-mark[data-note]:not([data-note=""])::after {
  content: "N";
  display: inline-block;
  margin-left: 3px;
  color: #8a5a00;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.reading-mark[data-note]:not([data-note=""]) {
  background: transparent;
  box-shadow: none;
  color: #1f6feb;
  cursor: help;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .reading-mark[data-note]:not([data-note=""])::after {
  color: currentColor;
}

.reading-mark-menu {
  position: fixed;
  z-index: 30;
  display: none;
  min-width: 154px;
  overflow: hidden;
  border: 1px solid #c7ccd1;
  border-radius: 3px;
  background: #ffffff;
  box-shadow: 0 2px 7px rgba(18, 25, 33, 0.18);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1;
}

.reading-mark-menu.open {
  display: grid;
}

.reading-mark-menu button {
  display: grid;
  grid-template-columns: 18px 1fr;
  align-items: center;
  gap: 6px;
  height: 26px;
  border: 0;
  background: #ffffff;
  padding: 0 10px;
  color: #111111;
  text-align: left;
  font: inherit;
}

.reading-mark-menu button:hover:not(:disabled) {
  background: #eef4fb;
}

.reading-mark-menu button:disabled {
  color: #b8b8b8;
  cursor: default;
}

.reading-mark-menu-icon {
  position: relative;
  width: 14px;
  height: 14px;
}

.reading-mark-menu-icon.note::before,
.reading-mark-menu-icon.exclude::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 3px;
  width: 8px;
  height: 8px;
  border: 1px solid #3e8bc9;
  border-radius: 1px;
}

.reading-mark-menu-icon.note::after,
.reading-mark-menu-icon.exclude::after {
  content: "";
  position: absolute;
  left: 7px;
  top: 1px;
  width: 6px;
  height: 2px;
  border-radius: 2px;
  background: #3e8bc9;
  transform: rotate(-38deg);
  transform-origin: left center;
}

.reading-mark-menu-icon.exclude::before {
  border-color: #4b9bd4;
}

.reading-mark-menu-icon.exclude::after {
  background: #4b9bd4;
}

.reading-note-tooltip {
  position: fixed;
  z-index: 32;
  display: none;
  min-width: 180px;
  max-width: 280px;
  border: 1px solid #c6a800;
  background: #fff143;
  box-shadow: 0 3px 9px rgba(18, 25, 33, 0.22);
  padding: 10px;
  color: #111111;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  pointer-events: none;
}

.reading-note-tooltip.open {
  display: block;
}

body[data-exam-colours="yellow-black"] .reading-note-tooltip {
  border-color: #ffff00;
  background: #000000;
  color: #ffff00;
}

body[data-exam-colours="white-black"] .reading-note-tooltip {
  border-color: #ffffff;
  background: #000000;
  color: #ffffff;
}

.reading-note-editor {
  position: fixed;
  z-index: 31;
  display: none;
  width: 260px;
  border: 1px solid #b7bcc2;
  border-radius: 3px;
  background: #ffffff;
  box-shadow: 0 3px 10px rgba(18, 25, 33, 0.2);
  padding: 10px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  color: #111111;
}

.reading-note-editor.open {
  display: block;
}

.reading-note-editor-label {
  display: block;
  margin: 0 0 6px;
  font-weight: 600;
}

.reading-note-editor textarea {
  width: 100%;
  min-height: 88px;
  box-sizing: border-box;
  border: 1px solid #9fa6ad;
  border-radius: 2px;
  padding: 6px;
  resize: vertical;
  font: 14px/1.35 Arial, Helvetica, sans-serif;
  color: #111111;
  background: #ffffff;
}

.reading-note-editor-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
}

.reading-note-editor-actions button {
  min-width: 58px;
  height: 28px;
  border: 1px solid #9fa6ad;
  border-radius: 3px;
  background: #ffffff;
  color: #111111;
  font: 14px/1 Arial, Helvetica, sans-serif;
  cursor: pointer;
}

body[data-exam-colours="yellow-black"] .reading-note-editor {
  border-color: #ffff00;
  background: #000000;
  color: #ffff00;
}

body[data-exam-colours="white-black"] .reading-note-editor {
  border-color: #ffffff;
  background: #000000;
  color: #ffffff;
}

body:is([data-exam-colours="yellow-black"], [data-exam-colours="white-black"])
  .reading-note-editor
  :is(textarea, button) {
  border-color: currentColor;
  background: #000000;
  color: inherit;
}

.cd-reading-section {
  margin-bottom: 24px;
}

.cd-reading-section h3 {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 700;
}

.cd-reading-page {
  margin-bottom: 14px;
}

.cd-reading-page-divided {
  margin-top: 28px;
  padding-top: 24px !important;
  border-top: 6px solid #111111 !important;
}

.cd-reading-article-divider {
  display: none !important;
  width: 100% !important;
  height: 6px !important;
  min-height: 6px !important;
  margin: 0 0 20px !important;
  border: 0 !important;
  background: #111111 !important;
  box-shadow: none !important;
}

.cd-reading-page-divided::before {
  content: none !important;
}

.cd-reading-page-divided > .cd-reading-article-divider {
  display: none !important;
}

.g14-manual-article-divider {
  display: block !important;
  width: 100% !important;
  height: 6px !important;
  min-height: 6px !important;
  margin: 0 0 18px !important;
  border: 0 !important;
  background: #111111 !important;
  box-shadow: none !important;
}

#examView.general-exam.book-13.module-reading .cd-passage-pane .cd-reading-page:is(
  [data-source-page="11"],
  [data-source-page="15"],
  [data-source-page="32"],
  [data-source-page="36"],
  [data-source-page="54"],
  [data-source-page="58"],
  [data-source-page="76"],
  [data-source-page="80"]
) > .cd-reading-article-divider {
  display: none !important;
}

.cd-reading-text-divider {
  background: #111111;
  height: 4px;
  margin: 20px 0 20px;
  width: 100%;
}

.cd-reading-page pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: normal;
  overflow-wrap: anywhere;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.38;
}

.cd-passage-text {
  display: grid;
  gap: 11px;
  max-width: 760px;
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.48;
  color: #151515;
}

.cd-passage-text p {
  margin: 0;
}

.a5-reading-passage-page {
  max-width: 760px;
  font-family: "Times New Roman", Times, serif;
  color: #151515;
}

.a5-reading-passage-label {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0;
}

.a5-reading-passage-instruction {
  margin: 0 0 22px;
  font-size: 18px;
  line-height: 1.45;
}

.a5-johnson-passage {
  display: block;
  max-width: 760px;
  font-size: 18px;
  line-height: 1.5;
}

.a5-johnson-passage h2 {
  margin: 0 0 22px;
  font-size: 28px;
  font-style: italic;
  font-weight: 700;
  letter-spacing: 0;
}

.a5-johnson-passage p {
  margin: 0 0 14px;
}

.a5-johnson-figure {
  float: right;
  width: 92px;
  margin: -18px 120px 12px 22px;
}

.a5-johnson-figure img {
  display: block;
  width: 100%;
  height: auto;
}

.a5-nature-passage {
  display: block;
  max-width: 760px;
  font-size: 18px;
  line-height: 1.5;
}

.a5-nature-passage h2 {
  margin: 18px 0 24px;
  text-align: center;
  font-size: 30px;
  font-style: italic;
  font-weight: 800;
  letter-spacing: 0;
}

.a5-nature-passage .cd-passage-lettered {
  grid-template-columns: 34px minmax(0, 1fr);
  column-gap: 12px;
  margin: 0 0 14px;
}

.a5-nature-passage .cd-passage-letter {
  font-size: 18px;
  font-weight: 800;
}

.a5-johnson-passage-continuation {
  padding-top: 8px;
}

.a5-truth-page {
  max-width: 820px;
}

.a5-truth-box {
  margin: 14px 0 20px;
  border: 2px solid #222222;
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  line-height: 1.38;
}

.a5-truth-box h2 {
  margin: 0 0 22px;
  padding: 10px 16px 12px;
  background: #9f9f9f;
  color: #ffffff;
  text-align: center;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: 0;
}

.a5-truth-box p {
  margin: 0 16px 14px;
}

.a5-truth-box-continuation {
  max-width: 820px;
  padding-top: 16px;
}

.cd-passage-intro {
  padding: 8px 10px;
  border-left: 3px solid #2a9dcc;
  background: #eef7fb;
  font-family:
    "Microsoft YaHei",
    "Segoe UI",
    sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
}

.cd-passage-subtitle {
  margin: 4px 0 2px;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
}

.a16-passage-deck {
  margin: 0 0 4px;
  font-style: italic;
  font-weight: 600;
  line-height: 1.3;
}

.a16-passage-footnote {
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.3;
}

.a14-reading-passage-source .cd-passage-text {
  gap: 10px;
}

.a14-passage-title {
  margin: 4px 0 0;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0;
}

.a14-passage-subtitle {
  margin: 0 0 4px;
  text-align: center;
  font-style: italic;
  font-weight: 700;
  line-height: 1.3;
}

.a14-summary-flow {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.a14-summary-flow p {
  margin: 0;
}

.a14-summary-title {
  text-align: center;
}

.cd-passage-paragraph {
  text-align: left;
}

.cd-passage-lettered {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 4px;
}

.cd-passage-letter {
  font-weight: 800;
}

.cd-passage-letter-continuation {
  margin-left: 32px;
}

#examView.academic-exam.book-20.test-1.module-reading #reading-passage-2
  .a20-reading-passage-source[data-test="1"][data-passage="2"]
  .cd-passage-letter-continuation,
#examView.academic-exam.book-20.test-1.module-reading #reading-passage-2
  .a20-reading-passage-source[data-test="1"][data-passage="2"]
  .cd-passage-lettered
  + .cd-passage-paragraph:not(.cd-passage-lettered),
#examView.academic-exam.book-20.test-1.module-reading #reading-passage-2
  .cd-passage-text
  > ul
  + p,
#examView.academic-exam.book-20.test-1.module-reading #reading-passage-2
  .cd-reading-page
  > ul
  + p,
#examView.academic-exam.book-20.test-1.module-reading #reading-passage-2
  .cd-passage-text
  > .cd-passage-lettered
  + .cd-passage-paragraph:not(.cd-passage-lettered) {
  margin-left: 32px;
}

.a7-passage-continuation {
  margin-top: 0;
}

.a6-passage-source-intro {
  margin: 0 0 10px;
  font-style: italic;
}

.cd-question-text-flow {
  display: grid;
  gap: 5px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.cd-question-text-flow p {
  margin: 0;
}

.cd-question-title {
  margin: 0 0 6px;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.25;
}

.cd-answer-instruction {
  margin: 8px 0 6px;
  font-style: italic;
}

.cd-judgement-instruction-block {
  margin: 8px 0 12px;
}

.cd-judgement-instruction-row {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  column-gap: 18px;
  align-items: baseline;
  margin: -1px 0;
  padding-left: 0;
  font-style: italic;
  line-height: 1.25;
}

.cd-judgement-term {
  font-weight: 800;
  white-space: nowrap;
}

.cd-question-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: start;
}

.cd-single-question-title {
  align-items: center;
}

.reading-summary-completion {
  margin: 10px 0 12px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.42;
}

.reading-summary-completion p {
  margin: 0 0 8px;
}

.reading-summary-completion .inline-answer {
  margin: 0 4px;
}

.cd-question-number {
  flex: 0 0 auto;
  font-weight: 700;
}

.reading-question-number {
  font-weight: 800;
}

.cd-question-copy {
  min-width: 0;
}

.cd-choice-question-stem .cd-question-copy {
  font-weight: 800;
}

.cd-choice-option {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 4px 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.cd-choice-option.interactive-choice {
  grid-template-columns: 52px minmax(0, 1fr);
  min-height: 38px;
  padding: 6px 9px;
  border: 1px solid transparent;
  border-radius: 6px;
  cursor: pointer;
}

.cd-choice-option.interactive-choice:hover {
  border-color: #a8c8d6;
  background: #f3f9fb;
}

.g10-tfng-intro {
  margin: 0 0 6px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.25;
}

.g10-tfng-key {
  margin: 4px 0 14px 60px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.18;
}

.g10-tfng-key p {
  display: grid;
  grid-template-columns: 102px minmax(0, 1fr);
  gap: 0;
  margin: 1px 0;
}

.g10-tfng-key strong {
  font-weight: 800;
}

.g10-tfng-question {
  margin: 7px 0 4px;
}

.g10-tfng-stem {
  margin: 0 0 2px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.25;
}

.g10-tfng-options {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  align-items: center;
  padding-left: 16px;
}

.g10-tfng-options .cd-choice-option.interactive-choice {
  display: inline-flex;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  gap: 3px;
  align-items: center;
  font-size: 16px;
  line-height: 1.15;
}

.g10-tfng-options .cd-choice-option.interactive-choice:hover {
  background: transparent;
}

.g10-tfng-options .choice-input-wrap {
  gap: 0;
}

.g10-tfng-options input[data-choice-answer] {
  width: 16px;
  height: 16px;
}

.choice-input-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.choice-input-wrap input {
  width: 18px;
  height: 18px;
  margin: 0;
}

input[data-choice-answer],
input[data-multi-choice] {
  appearance: none;
  -webkit-appearance: none;
  display: inline-block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 0;
  padding: 0;
  border: 1.5px solid #6f777c;
  border-radius: 50%;
  background: #ffffff;
  vertical-align: middle;
  cursor: pointer;
}

input[data-choice-answer]:checked,
input[data-multi-choice]:checked {
  border-color: #1f2a30;
  background:
    radial-gradient(circle at center, #1f2a30 0 4px, transparent 4.8px),
    #ffffff;
}

input[data-choice-answer]:focus-visible,
input[data-multi-choice]:focus-visible {
  outline: 2px solid #2a9fd6;
  outline-offset: 2px;
}

.tfng-instruction {
  margin: 8px 0 14px 64px;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  font-style: italic;
  line-height: 1.25;
}

.tfng-instruction-row {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  align-items: baseline;
  gap: 12px;
  margin: 1px 0;
}

.tfng-instruction-row strong {
  font-weight: 800;
}

.tfng-question {
  margin: 9px 0 10px;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  line-height: 1.25;
}

.tfng-question-text {
  margin: 0 0 4px;
}

.tfng-options {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-left: 24px;
}

.tfng-options label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 700;
  white-space: nowrap;
}

.choice-fallback-row {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-left: 10px;
  vertical-align: middle;
}

.choice-fallback-row label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  justify-content: center;
  padding: 2px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
}

.choice-fallback-row input {
  width: 17px;
  height: 17px;
  margin: 0;
}

#examView.book-4.module-reading .a4-judgement-row {
  grid-template-columns: 86px minmax(0, 1fr);
  column-gap: 16px;
  margin: 0 0 1px 34px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.18;
}

#examView.book-4.module-reading .a4-judgement-row .cd-judgement-term {
  font-weight: 800;
}

#examView.book-4.module-reading .a4-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1px 4px;
  align-items: start;
  margin: 5px 0 7px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.28;
}

#examView.book-4.module-reading .a4-judgement-line .cd-question-number {
  grid-column: 1;
  font-weight: 800;
}

#examView.book-4.module-reading .a4-judgement-line .cd-question-copy {
  grid-column: 2;
}

#examView.book-4.module-reading .a4-judgement-line .a4-judgement-choice-row {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin: 1px 0 0;
}

#examView.book-4.module-reading .a4-judgement-line .a4-judgement-choice-row label {
  min-height: 19px;
  gap: 4px;
  padding: 0;
}

#examView.book-4.module-reading .a4-judgement-line .a4-judgement-choice-row input {
  width: 16px;
  height: 16px;
}

#examView.book-5.module-reading .a5-judgement-row,
.a5t2-answer-key,
.a5t3-answer-key,
.a5t4-key-table {
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.2;
}

#examView.book-5.module-reading .a5-judgement-row {
  grid-template-columns: 96px minmax(0, 1fr);
  column-gap: 8px;
  margin: 0 0 1px 60px;
}

#examView.book-5.module-reading .a5-judgement-row .cd-judgement-term,
.a5t2-answer-key th,
.a5t3-answer-key th,
.a5t4-key-table th {
  font-weight: 800;
}

#examView.book-5.module-reading .a5-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1px 4px;
  align-items: start;
  margin: 3px 0 5px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.26;
}

#examView.book-5.module-reading .a5-judgement-line .cd-question-number {
  grid-column: 1;
  font-weight: 800;
}

#examView.book-5.module-reading .a5-judgement-line .cd-question-copy {
  grid-column: 2;
}

#examView.book-5.module-reading .a5-judgement-line .a5-judgement-choice-row {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
}

#examView.book-5.module-reading .a5-judgement-line .a5-judgement-choice-row label,
.a5-judgement-radios label {
  min-height: 21px;
  gap: 4px;
  padding: 0;
}

.a5-manual-judgement-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1px 4px;
  align-items: start;
  margin: 3px 0 5px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.26;
}

.a5-manual-judgement-item > strong {
  grid-column: 1;
}

.a5-manual-judgement-item > span:not(.a5-judgement-radios) {
  grid-column: 2;
}

.a5-manual-judgement-item .a5-judgement-radios,
.a5-judgement-radios {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  margin: 0;
}

.a5-judgement-radios {
  margin-left: 0;
}

.a15-academic-reading .judgement-choice-row {
  flex-basis: 100%;
  margin: 2px 0 8px 16px;
  gap: 12px;
}

.a15-academic-reading .judgement-choice-row label {
  min-height: 22px;
}

.a15-academic-reading .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 6px;
  align-items: start;
  margin: 4px 0 8px;
}

.a15-academic-reading .cd-judgement-question-line .judgement-choice-row {
  grid-column: 1 / -1;
  margin: 1px 0 0 16px;
}

.a14-judgement-row {
  grid-template-columns: 112px minmax(0, 1fr);
  column-gap: 10px;
  margin: 0 0 3px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.25;
}

.a14-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 4px;
  align-items: start;
  margin: 6px 0 9px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a14-judgement-line .cd-question-number {
  grid-column: 1;
}

.a14-judgement-line .cd-question-copy {
  grid-column: 2;
}

.a14-judgement-line .a14-judgement-choice-row {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 1px 0 0;
}

.a14-judgement-line .a14-judgement-choice-row label {
  min-height: 20px;
  gap: 5px;
  padding: 0;
}

.a14-judgement-line .a14-judgement-choice-row input {
  width: 16px;
  height: 16px;
}

.a17-reading-judgement-line {
  margin: 14px 0 18px;
}

.a17-reading-judgement-line .judgement-choice-row {
  flex-basis: 100%;
  margin: 4px 0 0 22px;
  gap: 12px;
}

.a17-reading-judgement-line .judgement-choice-row label {
  min-height: 20px;
  gap: 6px;
}

.a17-reading-judgement-line .judgement-choice-row input {
  width: 17px;
  height: 17px;
}

.a18-academic-reading .cd-answer-instruction {
  font-style: normal;
}

.a18-academic-reading .cd-judgement-instruction-row {
  grid-template-columns: 120px minmax(0, 1fr);
  column-gap: 12px;
  margin: 0 0 4px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: normal;
  line-height: 1.25;
}

.a18-academic-reading .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 4px;
  align-items: start;
  margin: 10px 0 12px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a18-academic-reading .cd-judgement-question-line .cd-question-number {
  grid-column: 1;
}

.a18-academic-reading .cd-judgement-question-line .cd-question-copy {
  grid-column: 2;
}

.a18-academic-reading .cd-judgement-question-line .judgement-choice-row {
  grid-column: 2;
  display: flex;
  gap: 14px;
  margin: 2px 0 0;
}

.a18-academic-reading .cd-judgement-question-line .judgement-choice-row label {
  min-height: 20px;
  gap: 5px;
}

.a18-academic-reading .cd-judgement-question-line .judgement-choice-row input {
  width: 17px;
  height: 17px;
}

.a20-academic-reading .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 6px;
  align-items: start;
  margin: 4px 0 8px;
}

.a20-academic-reading .cd-judgement-question-line .cd-question-number {
  grid-column: 1;
}

.a20-academic-reading .cd-judgement-question-line .cd-question-copy {
  grid-column: 2;
}

.a20-academic-reading .cd-judgement-question-line .judgement-choice-row {
  grid-column: 1 / -1;
  display: flex;
  gap: 12px;
  margin: 1px 0 0 16px;
}

.a20-academic-reading .cd-judgement-question-line .judgement-choice-row label {
  min-height: 22px;
  gap: 6px;
}

.a20-academic-reading .cd-judgement-question-line .judgement-choice-row input {
  width: 17px;
  height: 17px;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a20-scoped-source-font: "Times New Roman", Times, serif;
  --a20-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a20-scoped-question-size: 19px;
  --a20-scoped-passage-size: 20px;
  --a20-scoped-input-size: 18px;
  --a20-scoped-title-size: 24px;
  --a20-scoped-subtitle-size: 21px;
  --a20-scoped-question-heading-size: 21px;
  letter-spacing: 0;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-question-size);
  line-height: 1.42;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-passage-size);
  line-height: 1.5;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: 0;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.a14-passage-title, h2) {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-title-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.a14-passage-subtitle, h3) {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-subtitle-size);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5),
#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, h5),
#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text .cd-passage-intro {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-question-heading-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"]) {
  font-family: var(--a20-scoped-source-font);
  font-size: var(--a20-scoped-input-size);
  line-height: 1.2;
}

#examView.academic-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--a20-scoped-ui-font);
  font-size: 16px;
  line-height: 1.25;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading {
  --a21-scoped-source-font: "Times New Roman", Times, serif;
  --a21-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a21-scoped-passage-size: 20px;
  --a21-scoped-question-size: 19px;
  --a21-scoped-input-size: 18px;
  --a21-scoped-heading-size: 21px;
  letter-spacing: 0;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text {
  row-gap: 20px;
  font-family: var(--a21-scoped-source-font);
  font-size: var(--a21-scoped-passage-size);
  line-height: 1.5;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text > .cd-passage-paragraph {
  margin: 0 0 1em;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text > .cd-passage-paragraph + .cd-passage-paragraph {
  margin-top: 1em;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a21-scoped-source-font);
  font-size: var(--a21-scoped-question-size);
  line-height: 1.42;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  p,
  li,
  label,
  span,
  div,
  td,
  th,
  caption,
  figcaption
) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: 0;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, h5, .cd-question-title) {
  font-family: var(--a21-scoped-source-font);
  font-size: var(--a21-scoped-heading-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow {
  row-gap: 16px;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow > :is(
  p,
  .cd-question-line,
  .cd-choice-option,
  .matching-inline-choice-line,
  .cd-bullet-line,
  .cd-option-box,
  .reading-summary-completion
) {
  margin-bottom: 0.35em;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .a21t2-ai-summary {
  gap: 18px;
  margin: 12px 0 16px;
  padding: 0;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .a21t2-ai-summary p {
  margin: 0 0 0.9em;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .a21t2-ai-word-box {
  width: 100%;
  max-width: none;
  margin: 14px 0 20px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px 20px;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .a21t2-ai-word-box div {
  grid-template-columns: 26px minmax(0, 1fr);
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 5px 6px;
  align-items: start;
  margin: 12px 0 16px;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-judgement-question-line .cd-question-number {
  grid-column: 1;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-judgement-question-line .cd-question-copy {
  grid-column: 2;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-judgement-question-line .judgement-choice-row {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin: 4px 0 0;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-judgement-question-line .judgement-choice-row label {
  min-height: 22px;
  gap: 6px;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.inline-answer, input[type="text"]) {
  font-family: var(--a21-scoped-source-font);
  font-size: var(--a21-scoped-input-size);
  line-height: 1.2;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--a21-scoped-ui-font);
  font-size: 16px;
  line-height: 1.25;
}

.a19-academic-reading .cd-answer-instruction {
  font-style: italic;
}

.a19-academic-reading .a19-judgement-row {
  grid-template-columns: 120px minmax(0, 1fr);
  column-gap: 12px;
  margin: 0 0 4px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.25;
}

.a19-academic-reading .a19-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 6px;
  align-items: start;
  margin: 12px 0 18px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a19-academic-reading .a19-judgement-line .cd-question-number {
  grid-column: 1;
}

.a19-academic-reading .a19-judgement-line .cd-question-copy {
  grid-column: 2;
}

.a19-academic-reading .a19-judgement-choice-row {
  grid-column: 2;
  display: flex;
  gap: 14px;
  margin: 2px 0 0;
  margin-left: 0;
}

.a19-academic-reading .a19-judgement-choice-row label {
  min-height: 20px;
  gap: 5px;
}

.a19-academic-reading .a19-judgement-choice-row input {
  width: 17px;
  height: 17px;
}

.cambridge-16-exam .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 6px;
  align-items: start;
}

.cambridge-16-exam .cd-judgement-question-line .cd-question-number {
  grid-column: 1;
}

.cambridge-16-exam .cd-judgement-question-line .cd-question-copy {
  grid-column: 2;
}

.cambridge-16-exam .cd-judgement-question-line .judgement-choice-row {
  grid-column: 2;
  display: flex;
  gap: 12px;
  margin: 2px 0 8px;
  font-size: 14px;
  line-height: 1.2;
}

.cambridge-16-exam .cd-judgement-question-line .judgement-choice-row label {
  min-height: 18px;
  gap: 5px;
}

.cambridge-16-exam .cd-judgement-question-line .judgement-choice-row input {
  width: 14px;
  height: 14px;
  min-width: 14px;
  max-width: 14px;
  flex: 0 0 14px;
}

.a17-claims-judgement-instruction {
  margin: 8px 0 8px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: normal;
}

.a17-claims-judgement-row {
  grid-template-columns: 120px minmax(0, 1fr);
  column-gap: 12px;
  margin: 0 0 4px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  font-style: normal;
  line-height: 1.25;
}

.a17-claims-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 4px;
  align-items: start;
  margin: 22px 0 26px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a17-claims-judgement-line .cd-question-number {
  grid-column: 1;
}

.a17-claims-judgement-line .cd-question-copy {
  grid-column: 2;
}

.a17-claims-judgement-choice-row {
  grid-column: 2;
  display: flex;
  gap: 14px;
  margin: 2px 0 0;
  margin-left: 0;
}

.a17-claims-judgement-choice-row label {
  min-height: 20px;
  gap: 5px;
}

.a17-claims-judgement-choice-row input {
  width: 17px;
  height: 17px;
}

.a15-customer-survey-box {
  max-width: 720px;
  padding: 10px 14px;
}

.a15-customer-survey-box .cd-completion-title {
  margin: 0 -14px 10px;
  padding: 4px 14px 8px;
  border-bottom: 1px solid #111;
}

.a15-customer-survey-box p {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 14px;
  margin: 4px 0;
}

.a15-customer-survey-box .a15-survey-section {
  display: block;
  margin: 10px 0 6px;
  font-weight: 800;
}

.a15-customer-survey-box .inline-answer {
  min-width: 160px;
}

.multi-choice-fallback {
  margin: 4px 0 12px;
}

.matching-inline-choice-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
}

.matching-inline-choice-control {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.matching-inline-choice-control .choice-fallback-row {
  margin-left: 0;
}

.cd-choice-option strong {
  font-weight: 800;
}

.cd-completion-box {
  margin: 12px 0 16px;
  padding: 12px 14px;
  border: 1px solid #333333;
}

.cd-completion-box p:last-child,
.cd-completion-box .cd-question-line:last-child {
  margin-bottom: 0;
}

.a15-academic-reading .a15-unframed-completion {
  padding: 0;
  border: 0;
  margin: 12px 0 16px;
}

.cd-bullet-line {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  gap: 7px;
  align-items: start;
  margin: 3px 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.cd-bullet-line.nested {
  margin-left: 18px;
}

.cd-bullet-marker {
  display: inline-block;
  width: 10px;
  margin-top: 0;
  color: #111111;
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
}

.cd-bullet-copy {
  min-width: 0;
}

.cd-bullet-copy.cd-inline-fill {
  margin: 0;
}

.cd-completion-title {
  margin: 0 0 12px;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  font-weight: 800;
}

.cd-two-answer-question {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 6px 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.double-inline-answer {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.diagram-answer-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: center;
  margin: 8px 0 14px;
}

.diagram-answer-row label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
}

.a7t2-map-answer-row {
  width: 100%;
  justify-content: center;
  margin: 8px 0 18px;
}

.cd-option-box {
  margin: 12px 0;
  padding: 10px 12px;
  border: 1px solid #222222;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.25;
}

.matching-option-box {
  display: grid;
  gap: 5px;
}

.matching-option-box div {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 6px;
}

.manual-reading-page .matching-option-box div {
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 12px;
}

.manual-reading-page .matching-option-box strong {
  min-width: 74px;
}

.matching-option-box strong {
  font-weight: 700;
}

.pdf-option-list-box {
  width: fit-content;
  max-width: 100%;
  min-width: min(260px, 100%);
  margin: 12px auto 14px;
  padding: 12px 16px;
  border-color: #333333;
}

#examView.academic-exam.book-18.test-3.module-listening .g18t3-listening-page .manual-listening-option-box {
  width: auto;
  margin: 14px 0 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

#examView.academic-exam.book-18.test-3.module-listening .g18t3-listening-page .manual-listening-option-box .cd-completion-title {
  margin: 0 0 12px;
  text-align: left;
}

#examView.academic-exam.book-18.test-3.module-listening .g18t3-jobs-list {
  margin-top: 14px;
}

#examView.academic-exam.book-18.test-3.module-listening .g18t3-jobs-list .cd-completion-title {
  margin: 0 0 8px;
  text-align: left;
}

#examView.academic-exam.book-18.test-3.module-listening .g18t3-jobs-list p {
  margin: 8px 0;
}

.pdf-option-list-box .cd-completion-title {
  margin-bottom: 10px;
  font-size: 17px;
}

.pdf-option-list-box .cd-choice-option {
  grid-template-columns: 28px minmax(0, 1fr);
  margin: 5px 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.35;
}

.a15-t2-humour-word-box,
.a15-t3-lrrh-word-box,
.a15-t4-business-word-box,
.a17-reading-summary-option-box,
.a20-reading-summary-option-box {
  width: min(420px, 100%);
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px 22px;
  padding: 8px 12px;
}

.a15-t2-humour-word-box div,
.a15-t3-lrrh-word-box div,
.a15-t4-business-word-box div,
.a17-reading-summary-option-box div,
.a20-reading-summary-option-box div {
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 6px;
}

.a17-reading-summary-option-box {
  width: min(620px, 100%);
  grid-template-columns: 1fr;
  gap: 6px 24px;
  padding: 10px 16px;
  border: 1px solid #222222;
}

#examView.academic-exam.book-15.test-3.module-reading .cd-question-pane .a15-t3-lrrh-word-box {
  border: 1px solid #222222 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a17-reading-summary-option-box {
  width: min(300px, 100%);
  margin-left: 0;
  margin-right: auto;
  gap: 8px;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table {
  table-layout: fixed;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table th {
  text-align: center;
  font-weight: 700;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table tr:first-child td {
  text-align: center;
  font-weight: 700;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table td:first-child {
  width: 24%;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-bullet,
#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-subline {
  margin: 0;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-bullet + .a17-t4-rocha-bullet,
#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-subline + .a17-t4-rocha-subline,
#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-subline + .a17-t4-rocha-bullet {
  margin-top: 4px;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .a17-t4-rocha-subline {
  padding-left: 18px;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-rocha-table .inline-answer {
  width: 118px;
  max-width: 100%;
  margin: 0 3px;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-gareyev-summary {
  width: min(100%, 600px);
  margin-top: 14px;
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.34;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-gareyev-summary .manual-boxed-notes-title {
  font-size: 20px;
  line-height: 1.2;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-gareyev-summary p {
  margin: 0;
}

#examView.academic-exam.book-17.test-4.module-reading .a17-t4-gareyev-summary .inline-answer {
  width: 106px;
}

.a20-reading-summary-option-box {
  width: min(640px, 100%);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px 26px;
  padding: 9px 14px;
}

.a20-correct-ending-option-box {
  width: min(620px, 100%);
  min-width: 0;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 10px 18px;
}

.a20-correct-ending-option-box div {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
}

.manual-listening-page {
  max-width: 980px;
  padding: 0 4px 18px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 1.35;
}

.manual-listening-page h4 {
  display: flex;
  gap: 48px;
  margin: 6px 0 18px;
  font-size: 24px;
  letter-spacing: 0;
}

.manual-listening-page h5 {
  margin: 20px 0 10px;
  font-size: 20px;
}

.manual-listening-centered-title {
  margin: 20px 0 16px;
  text-align: center;
  font-size: 27px;
}

.manual-listening-notes {
  width: min(100%, 1040px);
  min-height: 0;
  margin-top: 22px;
  padding: 22px 30px;
  font-size: 17px;
}

.manual-listening-notes .cd-completion-title {
  font-family: "Times New Roman", Times, serif;
  font-size: 24px;
}

.manual-listening-page .manual-indent {
  margin-left: 32px;
}

.manual-listening-notes h6 {
  margin: 22px 0 10px;
  font-size: 20px;
}

.manual-listening-notes ul {
  margin: 8px 0 14px 24px;
  padding: 0;
}

.manual-listening-notes li {
  margin: 8px 0;
  padding-left: 8px;
}

.g-source-frame {
  width: min(100%, 900px);
  max-width: 900px;
  padding: 16px 22px;
  border: 1.5px solid #1f2a30;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
}

.g-source-frame.pdf-source-box,
.pdf-source-box.g-source-frame {
  border: 1.5px solid #1f2a30;
  border-radius: 0;
}

.g-dashed-source {
  border-style: dashed;
}

.g-shaded-option {
  background: #e4e4e4;
}

.g4a-social-notes,
.g5a-dreamtime-notes {
  width: min(100%, 520px);
  margin-top: 20px;
  padding: 18px 26px 26px;
}

.g4a-social-notes h5,
.g5a-dreamtime-notes h5,
.g5a-dreamtime-notes h6 {
  text-align: center;
}

.g4a-urban-notes {
  width: min(100%, 760px);
  margin-top: 24px;
}

.g4a-restaurant-ad {
  padding: 12px 16px;
}

.g4a-activity-frame {
  display: block;
  width: min(100%, 900px);
  padding: 12px 18px;
}

.g4a-activity-frame .pdf-source-box {
  max-width: none;
  padding: 0;
}

.g4a-college-frame,
.g4b-wessex-box,
.g4b-north-coast-box,
.g4b-photocopying-box,
.g4b-bee-box,
.g5a-new-books-box,
.g5a-work-travel-box {
  width: min(100%, 900px);
  max-width: 900px;
}

.g4b-accommodation-form {
  width: min(100%, 620px);
  margin-top: 18px;
}

.g4b-accommodation-form h5,
.g4b-union-notes h5,
.g5a-modular-box h5,
.g5a-saving-box h5 {
  text-align: center;
}

.g4b-union-notes {
  width: min(100%, 760px);
}

.g4b-ad-box {
  padding: 12px 16px;
}

.g5a-modular-box {
  width: min(100%, 700px);
}

.g5a-saving-box {
  width: min(100%, 760px);
}

.g5a-mail-order-box {
  width: min(100%, 900px);
  max-width: 900px;
}

.g5a-mail-order-brochure {
  position: relative;
  min-height: 0;
  margin-bottom: 14px;
  padding: 12px 18px;
}

.g5a-mail-order-brochure h3 {
  margin: 0 88px 12px;
  text-align: center;
  font-size: 20px;
  line-height: 1.1;
}

.g5a-mail-order-brochure .cd-reading-image.small {
  position: absolute;
  top: 8px;
  width: 74px;
  margin: 0;
}

.g5a-mail-order-brochure .cd-reading-image.small:first-of-type {
  left: 14px;
}

.g5a-mail-order-brochure .cd-reading-image.small:nth-of-type(2) {
  right: 14px;
}

.g5a-mail-order-brochure .cd-reading-image.small img {
  width: 100%;
  max-width: 100%;
}

.g5a-mail-order-brochure p,
.g5a-postage-box p {
  margin: 0 0 4px;
}

.g5a-mail-order-brochure h4,
.g5a-postage-box h4 {
  margin: 10px 0 4px;
  font-size: 17px;
}

.g5a-mail-order-lead {
  margin-left: 88px;
  margin-right: 88px;
  text-align: center;
}

.g5a-mail-order-lead + p {
  margin-left: 88px;
  margin-right: 88px;
  text-align: center;
}

.g5a-postage-box {
  padding: 10px 14px;
}

.g5a-postage-box h4 {
  margin-top: 0;
}

.g5a-work-travel-box h3 {
  text-align: center;
}

.g5-testb-mintons-page {
  max-width: 900px;
}

.g5-testb-mintons-page-continuation {
  margin-top: -8px;
}

.g5-testb-mintons-form {
  width: min(100%, 760px);
  margin-top: 18px;
  padding: 18px 24px;
  border: 1.5px solid #1f2a30;
  font-size: 16px;
}

.g5-testb-mintons-form-start {
  padding-bottom: 28px;
  border-bottom: 0;
}

.g5-testb-mintons-form-end {
  margin-top: 0;
  padding-top: 18px;
  border-top: 0;
}

.g5-testb-mintons-form h5 {
  margin: 0 0 16px;
  font-size: 18px;
}

.g5-testb-mintons-form h6 {
  margin: 16px 0 10px;
  font-size: 16px;
}

.g5-testb-mintons-form p {
  margin-bottom: 5px;
}

.g5-testb-current-car-table {
  width: min(100%, 620px);
  margin-top: 8px;
  border: 1.5px solid #1f2a30;
}

.g5-testb-current-car-table th,
.g5-testb-current-car-table td {
  border: 1px solid #1f2a30;
}

.g5-testb-current-car-table th {
  width: 150px;
}

.g5-testb-rexford-notes {
  width: min(100%, 860px);
  margin: 26px 0 24px 44px;
  padding: 16px 28px 18px;
  border: 2px solid #1f2a30;
  box-shadow: 10px 10px 0 #111111;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 1.45;
}

.g5-testb-rexford-notes ul {
  margin: 0;
  padding-left: 24px;
  list-style-type: disc;
}

.g5-testb-rexford-notes > ul > li {
  margin: 0 0 8px;
  padding-left: 14px;
}

.g5-testb-rexford-notes ul ul {
  margin-top: 7px;
  padding-left: 42px;
  list-style-type: none;
}

.g5-testb-rexford-notes ul ul li {
  position: relative;
  margin: 5px 0;
  padding-left: 22px;
}

.g5-testb-rexford-notes ul ul li::before {
  position: absolute;
  left: 0;
  content: "-";
}

.g5-testb-feedback-page {
  max-width: 940px;
}

.g5-testb-feedback-form {
  width: min(100%, 900px);
  margin-top: 30px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
}

.g5-testb-feedback-header {
  padding: 12px 16px 16px;
  border: 1.5px solid #1f2a30;
  border-bottom: 0;
  background: #d1d1d1;
}

.g5-testb-feedback-header h5 {
  margin: 0 0 14px;
  text-align: center;
  font-size: 27px;
  line-height: 1.1;
}

.g5-testb-feedback-header p {
  margin: 8px 0;
  font-size: 17px;
}

.g5-testb-feedback-header p:last-child {
  margin-top: 14px;
}

.g5-testb-feedback-table {
  width: 100%;
  margin: 0;
  border: 1.5px solid #1f2a30;
  border-collapse: collapse;
  font-family: Arial, Helvetica, sans-serif;
}

.g5-testb-feedback-table th,
.g5-testb-feedback-table td {
  padding: 12px 16px;
  border: 1.5px solid #1f2a30;
  vertical-align: top;
  font-size: 16px;
  line-height: 1.35;
}

.g5-testb-feedback-table thead th {
  background: #ffffff;
  text-align: center;
  font-size: 22px;
  line-height: 1.1;
}

.g5-testb-feedback-table thead th:first-child,
.g5-testb-feedback-table tbody th {
  width: 28%;
  background: #ffffff;
}

.g5-testb-feedback-table tbody th {
  text-align: left;
  font-size: 19px;
  font-weight: 400;
}

.g5-testb-feedback-table td {
  width: 36%;
}

.g5-testb-feedback-table ul {
  margin: 0;
  padding-left: 22px;
}

.g5-testb-feedback-table li {
  margin: 0 0 8px;
  padding-left: 8px;
}

.g5-testb-feedback-table li:last-child {
  margin-bottom: 0;
}

.g5-testb-charity-letter-box,
.g5-testb-charity-info-box {
  width: min(100%, 900px);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.45;
}

.g5-testb-charity-letter-box h3 {
  margin: 0 0 18px;
  padding: 8px 14px;
  background: #d1d1d1;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: 0;
}

.g5-testb-charity-letter-content {
  padding: 28px 34px;
  border: 1.5px solid #1f2a30;
}

.g5-testb-charity-letter-content p {
  margin: 0 0 18px;
}

.g5-testb-charity-letter-content p:nth-child(2),
.g5-testb-charity-letter-content p:nth-child(3),
.g5-testb-charity-letter-content p:nth-child(7) {
  text-indent: 46px;
}

.g5-testb-charity-letter-content p:last-child {
  margin-bottom: 0;
}

.g5-testb-charity-info-box {
  margin-bottom: 24px;
  padding: 18px 24px;
  border: 1.5px solid #1f2a30;
}

.g5-testb-charity-info-box h4 {
  margin: 0 0 4px;
  font-size: 19px;
  line-height: 1.2;
}

.g5-testb-charity-info-box p {
  margin: 0 0 16px;
}

.g5-testb-charity-info-box p:last-child {
  margin-bottom: 0;
}

.g5-testb-section-divider {
  width: min(100%, 900px);
  margin: 26px 0 28px;
  border: 0;
  border-top: 1.5px solid #1f2a30;
}

.g5-testb-week-best-box {
  width: min(100%, 900px);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.45;
}

.g5-testb-week-question-title {
  margin: 0 0 22px;
  font-family: "Times New Roman", Times, serif;
  font-size: 28px;
  font-style: italic;
  line-height: 1.1;
}

.g5-testb-week-instruction {
  margin: 0 0 18px;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
}

.g5-testb-week-best-box h3 {
  margin: 0 0 18px;
  padding: 9px 14px;
  border: 3px solid #1f2a30;
  background: #1f1f1f;
  color: #ffffff;
  text-align: center;
  font-size: 30px;
  line-height: 1;
}

.g5-testb-bingham-box,
.g5-testb-accommodation-box {
  width: min(100%, 900px);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.45;
}

.g5-testb-bingham-box {
  padding: 16px 28px;
  border: 1.5px solid #1f2a30;
}

.g5-testb-bingham-title {
  width: fit-content;
  margin: 0 auto 24px;
  padding-bottom: 7px;
  border-bottom: 1.5px solid #1f2a30;
  text-align: center;
}

.g5-testb-bingham-title h3 {
  margin: 0;
  font-size: 27px;
  line-height: 1;
  letter-spacing: .02em;
}

.g5-testb-bingham-title h4 {
  margin: 4px 0 0;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.1;
}

.g5-testb-bingham-box h5 {
  margin: 18px 0 4px;
  font-size: 18px;
}

.g5-testb-bingham-box p {
  margin: 0 0 10px;
}

.g5-testb-accommodation-instruction {
  margin: 0 0 54px;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
}

.g5-testb-accommodation-box h3 {
  margin: 0 0 22px;
  font-size: 32px;
  line-height: 1.1;
}

.g5-testb-accommodation-box > p:not(.g5-testb-accommodation-instruction) {
  margin: 0 0 20px;
  font-size: 20px;
  line-height: 1.35;
}

.g5-testb-accommodation-option {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 16px;
  margin: 0 0 18px;
  font-size: 20px;
  line-height: 1.35;
}

.g5-testb-accommodation-option > strong {
  font-size: 22px;
  line-height: 1.25;
}

.g5-testb-accommodation-option p {
  margin: 0;
}

.g5-testb-glow-title {
  display: block;
  width: fit-content;
  min-width: 210px;
  margin: 0 auto 18px;
  padding: 6px 18px;
  border: 1.5px solid #1f2a30;
  background: #b7b7b7;
  text-align: center;
  font-size: 24px;
  line-height: 1.1;
}

.manual-choice-question {
  margin: 18px 0;
}

.manual-choice-question > p {
  margin: 0 0 8px;
  font-size: 18px;
}

.manual-choice-option {
  width: fit-content;
  min-width: 360px;
  margin: 3px 0 3px 56px;
  font-size: 18px;
}

.manual-choice-option .choice-input-wrap {
  gap: 14px;
}

.manual-reading-answer-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin: 0 0 10px 56px;
}

.manual-reading-answer-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.a5t1-section3-choice {
  margin: 18px 0 22px;
}

.a5t1-section1-choice {
  margin: 14px 0 24px;
}

.a5t1-section3-choice > p {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  max-width: 760px;
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 1.35;
}

.a5t1-section3-choice > p strong {
  font-size: 18px;
}

.a5t1-option.cd-choice-option.interactive-choice {
  grid-template-columns: 18px minmax(0, 1fr);
  width: fit-content;
  min-width: min(340px, calc(100% - 64px));
  margin: 3px 0 3px 64px;
  padding: 0;
  gap: 18px;
  min-height: 0;
  border-radius: 0;
  font-size: 18px;
  line-height: 1.35;
}

.a5t1-option.cd-choice-option.interactive-choice:hover {
  border-color: transparent;
  background: transparent;
}

.a5t1-option-text {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.a5t1-option-text strong {
  font-weight: 700;
}

#examView.book-5.test-1.module-reading .cd-question-pane .cd-completion-box {
  margin: 8px 0 12px;
  padding: 0;
  border: 0;
  background: transparent;
}

.g14-tfng-key {
  display: inline-grid;
  gap: 4px;
  min-width: min(360px, 100%);
  max-width: 100%;
  margin: 10px 0 14px 48px;
  padding: 10px 12px;
  border: 1px solid #333333;
  background: #ffffff;
  font-size: 14px;
  line-height: 1.3;
}

.g14-tfng-key div {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.g14-tfng-key strong {
  min-width: 74px;
  font-weight: 700;
}

.g14-tfng-key span {
  overflow-wrap: anywhere;
}

.g14-tfng-key-inline {
  display: grid;
  gap: 3px;
  min-width: 0;
  margin: 12px 0 24px 44px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 18px;
  line-height: 1.28;
}

.g14-tfng-key-inline div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 14px;
  align-items: baseline;
}

.g14-tfng-key-inline strong {
  min-width: 0;
  font-weight: 800;
  font-style: italic;
  letter-spacing: 0;
}

.g14-tfng-key-inline span {
  font-style: italic;
}

.g14-tfng-list {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}

.g14-tfng-question {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 10px 0;
  border-bottom: 1px solid #e2e8f0;
}

.g14-tfng-question p {
  margin: 0;
  font-size: 17px;
  line-height: 1.45;
}

.g14-tfng-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.g14-tfng-option {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  padding: 5px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #fff;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.g14-tfng-option input {
  margin: 0;
}

.g14-tfng-list:has(.g14-tfng-question-inline) {
  gap: 8px;
  margin-top: 0;
}

.g14-tfng-question-inline {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 170px;
  gap: 8px;
  align-items: center;
  padding: 2px 0;
  border-bottom: 0;
}

.g14-tfng-question-inline .g14-tfng-question-number {
  font-size: 18px;
  line-height: 1.3;
}

.g14-tfng-question-inline .g14-tfng-question-copy {
  font-size: 18px;
  line-height: 1.35;
}

.g14-tfng-question-inline .inline-answer {
  width: 170px;
  max-width: 170px;
  height: 26px;
  margin: 0;
  text-align: center;
}

.g14-t2-passage .g13-main-title {
  text-align: center;
}

.g14-t2-review {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 12px;
  margin: 10px 0;
}

.g14-t2-review > strong {
  font-weight: 800;
}

.g14-t2-review p {
  margin: 0;
}

.g13-t3-watch-ad {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  column-gap: 12px;
  align-items: start;
  margin: 8px 0 14px;
}

.g13-t3-watch-letter {
  font-weight: 800;
  line-height: 1.35;
}

.g13-t3-watch-ad h4 {
  margin: 0 0 3px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.g13-t3-watch-ad p {
  margin: 0;
}

.g13-t3-notice {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  column-gap: 12px;
  align-items: start;
  margin: 8px 0 15px;
}

.g13-t3-notice-letter {
  font-weight: 800;
  line-height: 1.35;
}

.g13-t3-notice h4 {
  margin: 0 0 3px;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.g13-t3-notice p {
  margin: 0;
}

.g14-t1-passage .g13-main-title {
  text-align: center;
}

.g14-t1-subtitle {
  margin: -4px 0 14px;
  text-align: center;
}

.g14-t1-heading-box {
  min-width: min(420px, 100%);
}

.g14-t1-heading-box strong {
  min-width: 32px;
}

.g14-t1-summary {
  max-width: 760px;
  margin: 16px auto 0;
}

.g14-t1-summary .manual-listening-centered-title {
  margin: 0 0 12px;
  font-size: 18px;
}

.g14-t2-notes {
  max-width: 760px;
  margin: 14px auto 0;
  padding: 14px 18px;
}

.g14-t2-notes .manual-listening-centered-title {
  margin: 0 0 12px;
  font-size: 18px;
}

.g14-t2-notes h5 {
  margin: 12px 0 6px;
  font-size: 17px;
}

.g14-t2-notes ul {
  margin: 6px 0 10px 22px;
  padding: 0;
}

.g14-t2-notes li {
  margin: 6px 0;
}

.g14-t3-passage .g13-main-title {
  text-align: center;
}

.g14-t3-subtitle,
.g14-t4-subtitle {
  text-align: center;
}

.g14-t3-ad-card {
  margin: 12px 0;
  padding: 10px 12px;
  border: 1px solid #333333;
  background: #ffffff;
}

.g14-t3-ad-card h4 {
  display: flex;
  gap: 12px;
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 800;
}

.g14-t3-ad-card p {
  margin: 6px 0;
}

.g14-t3-flowchart {
  max-width: 560px;
  margin: 18px auto 0;
  text-align: center;
}

.g14-t3-flowchart h3 {
  margin: 0 0 12px;
  font-size: 17px;
}

.g14-t3-flowchart p {
  position: relative;
  margin: 0 auto 22px;
  padding: 10px 12px;
  border: 1px solid #333333;
  background: #ffffff;
  text-align: center;
}

.g14-t3-flowchart p:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -18px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 10px solid #333333;
  transform: translateX(-50%);
}

.g14-t4-passage .g13-main-title {
  text-align: center;
}

.g14-t4-wallet-entry {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  column-gap: 16px;
  align-items: start;
  margin: 10px 0 12px;
}

.g14-t4-wallet-letter {
  font-weight: 800;
  line-height: 1.35;
}

.g14-t4-wallet-entry h4 {
  margin: 0 0 4px;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.25;
}

.g14-t4-wallet-entry p {
  margin: 0;
}

.manual-listening-option-box {
  margin-left: 54px;
  margin-right: auto;
}

.g18t2-housing-map {
  width: min(760px, 100%);
  margin: 12px 0 10px;
}

.g18t2-housing-map img {
  display: block;
  width: 100%;
  height: auto;
}

.g18t2-map-answer-list {
  display: grid;
  gap: 4px;
  width: min(420px, 100%);
  margin: 8px 0 0;
}

.g18t2-map-answer-list p {
  display: grid;
  grid-template-columns: 28px minmax(120px, 1fr) 170px;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.g18t1-form-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.9fr) minmax(0, 1.2fr);
  gap: 12px;
  align-items: baseline;
  margin: 5px 0;
}

.g18t1-transport-box,
.g18t1-elephant-box,
.g18t1-notes-box {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.g18t1-helpful-box,
.g18t1-headings-box {
  width: fit-content;
  min-width: min(430px, 100%);
  margin: 14px auto 20px;
  padding: 12px 18px;
  border: 1px solid #222222;
}

.g18t1-helpful-box h5,
.g18t1-headings-box h5 {
  margin: 0 0 8px;
  text-align: center;
}

.g18t1-headings-box strong {
  min-width: 28px;
}

.g18t1-complaints-table {
  width: 100%;
  max-width: 760px;
  margin: 16px auto;
  border-collapse: collapse;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.25;
}

.g18t1-complaints-table caption {
  padding: 6px;
  border: 1px solid #222222;
  border-bottom: 0;
  font-weight: 700;
}

.g18t1-complaints-table th,
.g18t1-complaints-table td {
  border: 1px solid #222222;
  padding: 6px 8px;
  vertical-align: top;
}

.g18t1-complaints-table ul {
  margin: 0;
  padding-left: 18px;
}

.g18t1-summary-box {
  max-width: 780px;
  margin: 14px auto;
  padding: 14px 18px;
  border: 1px solid #222222;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .manual-listening-page,
  .manual-reading-page,
  .cd-question-text-flow,
  .reading-summary-completion
),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-question-group,
  .manual-listening-page,
  .manual-reading-page,
  .cd-question-text-flow,
  .reading-summary-completion
) {
  text-align: left;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-title,
  .manual-listening-centered-title,
  .manual-table-title,
  .g18t1-helpful-box h5,
  .g18t1-headings-box h5,
  .g18t1-complaints-table caption
),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-title,
  .manual-listening-centered-title,
  .manual-table-title,
  .g18t1-helpful-box h5,
  .g18t1-headings-box h5,
  .g18t1-complaints-table caption
) {
  text-align: left;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .reading-summary-completion,
  .g-source-table,
  .g-source-image-box,
  .g18t1-transport-box,
  .g18t1-elephant-box,
  .g18t1-notes-box,
  .g18t1-helpful-box,
  .g18t1-headings-box,
  .g18t1-complaints-table,
  .g18t1-summary-box,
  .g18t2-housing-map
),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .reading-summary-completion,
  .g-source-table,
  .g-source-image-box,
  .g18t1-transport-box,
  .g18t1-elephant-box,
  .g18t1-notes-box,
  .g18t1-helpful-box,
  .g18t1-headings-box,
  .g18t1-complaints-table,
  .g18t1-summary-box,
  .g18t2-housing-map
) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .reading-summary-completion,
  .g-source-table,
  .g-source-image-box,
  .g18t1-transport-box,
  .g18t1-elephant-box,
  .g18t1-notes-box,
  .g18t1-helpful-box,
  .g18t1-headings-box,
  .g18t1-complaints-table,
  .g18t1-summary-box,
  .g18t2-housing-map
) :is(h3, h4, h5, h6, p, div, li, th, td, caption, figcaption),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .reading-summary-completion,
  .g-source-table,
  .g-source-image-box,
  .g18t1-transport-box,
  .g18t1-elephant-box,
  .g18t1-notes-box,
  .g18t1-helpful-box,
  .g18t1-headings-box,
  .g18t1-complaints-table,
  .g18t1-summary-box,
  .g18t2-housing-map
) :is(h3, h4, h5, h6, p, div, li, th, td, caption, figcaption) {
  text-align: left;
}

.manual-inline-answer-row {
  display: grid;
  grid-template-columns: 40px 180px 180px;
  gap: 16px;
  align-items: center;
  margin: 12px 0;
}

.g11t1-map-figure {
  max-width: 720px;
  margin: 20px 0 18px;
}

.g11t1-map-figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #222222;
}

.g11t1-map-answer-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  column-gap: 52px;
  max-width: 780px;
}

.g11t1-map-answer-list .manual-inline-answer-row {
  grid-template-columns: 32px minmax(120px, 1fr) 130px;
}

.g11t2-youth-council,
.g11t2-concert-hall-notes {
  border: 1px solid #222222;
  background: #ffffff;
}

.g11t2-youth-council > h5,
.g11t2-concert-hall-notes > h5 {
  margin: -22px -30px 22px;
  padding: 18px 24px;
  border-bottom: 1px solid #222222;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 25px;
}

.g11t2-example-block {
  margin: 0 -30px 22px;
  padding: 0 30px 20px;
  border-bottom: 1px solid #222222;
}

.g11t2-theatre-map {
  max-width: 760px;
  margin: 18px auto;
}

.g11t2-theatre-map img {
  display: block;
  width: 100%;
  height: auto;
}

.g11t2-map-answer-list {
  max-width: 760px;
  margin: 0 auto;
}

.g11t2-map-answer-list .manual-inline-answer-row {
  grid-template-columns: 34px minmax(190px, 1fr) 150px;
}

.g11t2-concert-hall-notes > h5 span {
  font-size: 31px;
}

.g11t3-example-box,
.g11t3-ethnography-notes {
  border: 1px solid #222222;
  background: #ffffff;
}

.g11t3-example-box p {
  margin: 7px 0;
}

.g11t3-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 42px;
}

.g11t3-choice-grid .manual-choice-question {
  margin: 0;
}

.g11t3-drawing-table {
  margin-top: 20px;
}

.g11t3-ethnography-notes h3 {
  font-family: "Times New Roman", Times, serif;
  font-size: 34px;
  letter-spacing: 0;
  text-align: center;
  margin: 0 0 28px;
}

.g11t3-ethnography-notes h5 {
  margin-top: 18px;
}

.g11t4-festival-table {
  width: min(100%, 860px);
  margin-top: 20px;
  table-layout: fixed;
}

.g11t4-festival-table th,
.g11t4-festival-table td {
  vertical-align: top;
}

.g11t4-festival-table thead th:first-child,
.g11t4-festival-table tbody th {
  width: 120px;
}

.g11t4-museum-plan {
  max-width: 760px;
  margin: 18px auto;
}

.g11t4-museum-plan img {
  display: block;
  width: 100%;
  height: auto;
}

.g11t4-map-answer-list {
  max-width: 760px;
  margin: 0 auto;
}

.g11t4-map-answer-list .manual-inline-answer-row {
  grid-template-columns: 34px minmax(210px, 1fr) 150px;
}

.g11t4-soil-notes {
  max-width: 860px;
  border: 1px solid #222222;
  background: #ffffff;
}

.g11t4-soil-notes h3 {
  margin: 0 0 24px;
  font-size: 34px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: 0;
}

.g11t4-soil-notes h5 {
  margin: 16px 0 8px;
}

@media (max-width: 760px) {
  .g11t3-choice-grid {
    grid-template-columns: 1fr;
  }

  .g11t4-festival-table {
    min-width: 720px;
  }
}

.listening-inline-answer-control,
.reading-inline-answer-control {
  display: inline-flex;
  margin-left: 10px;
  vertical-align: middle;
}

.a16-qanat-figure {
  position: relative;
}

#examView.academic-exam.book-16.test-4.module-reading .a16-qanat-figure img {
  width: min(742px, 100%);
}

.a16-qanat-answer-grid {
  grid-template-columns: repeat(3, minmax(132px, 180px));
  margin-top: 14px;
  border: 0;
  background: transparent;
  padding: 0;
}

#examView.academic-exam.book-16.test-4.module-reading .a16-qanat-answer-grid {
  clear: both;
  position: static !important;
  z-index: auto;
  width: min(100%, 620px);
  margin: 28px 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  justify-content: start;
  gap: 10px 14px;
}

#examView.academic-exam.book-16.test-4.module-reading .a16-qanat-answer-grid .image-answer-cell {
  grid-template-columns: 24px 120px;
}

.listening-inline-answer-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 8px 0;
}

.g13-listening-page {
  font-family: Arial, Helvetica, sans-serif;
}

.g13t2-listening-page {
  max-width: 1120px;
}

.g13t2-listening-page h4 {
  display: flex;
  gap: 90px;
  align-items: baseline;
  margin: 14px 0 18px;
  font-size: 23px;
  letter-spacing: 3px;
}

.g13t2-listening-page h4 span {
  font-style: italic;
  letter-spacing: 0;
}

.g13t2-listening-page > p {
  font-size: 20px;
  line-height: 1.35;
}

.g13t2-source-box {
  width: min(100%, 980px);
  margin: 24px 0 18px;
  border: 2px solid #444;
  background: #fff;
  font-size: 20px;
  line-height: 1.35;
}

.g13t2-source-box h5 {
  margin: 0;
  padding: 14px 20px;
  border-bottom: 2px solid #444;
  text-align: center;
  font-size: 28px;
  font-weight: 800;
}

.g13t2-source-box h6 {
  margin: 24px 0 10px;
  font-size: 21px;
  font-weight: 800;
}

.g13t2-source-box ul {
  margin: 0 0 18px;
  padding-left: 28px;
}

.g13t2-source-box li {
  margin: 9px 0;
  padding-left: 18px;
}

.g13t2-source-box .inline-answer {
  width: 230px;
}

.g13t2-box-example {
  padding: 18px 34px;
  border-bottom: 2px solid #444;
  font-size: 21px;
}

.g13t2-box-example em,
.g13t2-box-example > span {
  display: block;
}

.g13t2-example-answer {
  display: inline-block;
  min-width: 170px;
  margin-left: 10px;
  border-bottom: 1px dotted #555;
  text-align: center;
  font-style: italic;
  font-weight: 700;
}

.g13t2-box-body {
  padding: 20px 34px 22px;
}

.g13t2-dash-lines {
  margin: -8px 0 22px 66px;
}

.g13t2-dash-lines p {
  margin: 9px 0;
}

.g13t2-memory-box {
  padding: 16px 28px 20px;
}

.g13t2-memory-box h5 {
  padding: 0;
  border-bottom: 0;
  text-align: left;
  font-size: 25px;
}

.g13t2-memory-box h6 {
  margin-top: 26px;
}

.g13t2-memory-box ul {
  padding-left: 28px;
}

.g13t2-memory-box li {
  margin: 14px 0;
}

.g13t2-listening-page .manual-choice-question {
  margin: 18px 0 24px;
}

.g13t2-listening-page .manual-choice-question > p {
  font-size: 20px;
  line-height: 1.35;
}

.g13t2-listening-page .manual-choice-option {
  width: auto;
  min-width: 0;
  max-width: 960px;
  margin: 5px 0 5px 52px;
  padding: 0;
  border-color: transparent;
  border-radius: 0;
  font-size: 20px;
  line-height: 1.35;
  grid-template-columns: 52px minmax(0, 1fr);
  min-height: 0;
}

.g13t2-listening-page .manual-choice-option:hover {
  border-color: transparent;
  background: transparent;
}

.g13t2-listening-page .manual-choice-option .choice-input-wrap {
  gap: 14px;
}

.g13t2-listening-page .manual-listening-centered-title {
  margin: 18px 0 20px;
  font-size: 23px;
}

.g13t2-listening-page .manual-listening-option-box {
  width: 360px;
  margin: 34px auto 58px;
  padding: 18px 28px;
}

.g13t2-listening-page .manual-listening-option-box h5 {
  font-size: 22px;
}

.g13t2-listening-page .manual-listening-option-box div {
  grid-template-columns: 38px minmax(0, 1fr);
  font-size: 20px;
}

.g13t2-listening-page .g13-map-answer-list {
  margin-left: 28px;
}

.g13t2-listening-page .g13-map-answer-list h5 {
  margin-bottom: 20px;
  font-size: 22px;
}

#examView.academic-exam.book-19.test-2.module-listening .a19t2-footwear-heading {
  font-weight: 700;
}

.g13t2-listening-page .g13-map-answer-list .manual-inline-answer-row {
  grid-template-columns: 42px 230px 190px;
  margin: 11px 0;
  font-size: 20px;
}

#examView.academic-exam.book-19.test-1.module-listening .a19t1-listening-part3b .a19-answer-after-number-row {
  grid-template-columns: 42px 112px minmax(320px, 1fr);
  column-gap: 10px;
  max-width: 760px;
}

#examView.academic-exam.book-19.test-1.module-listening .a19t1-listening-part3b .a19-answer-after-number-row .inline-answer {
  width: 112px;
}

.g13t3-listening-page .manual-listening-option-box {
  width: 410px;
}

.g13t3-listening-page .g13t3-answer-list {
  width: min(100%, 650px);
  margin-top: 28px;
}

.g13t3-listening-page .g13t3-answer-list .manual-inline-answer-row {
  grid-template-columns: 42px minmax(260px, 1fr) 190px;
}

.g13t3-source-box h5 {
  font-size: 25px;
}

.g13t3-banford-box .g13t2-box-body,
.g13t3-lizard-box .g13t2-box-body {
  padding-top: 10px;
}

.g13t3-lizard-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
}

.g13t3-lizard-box h5 em {
  font-weight: 700;
}

.g13t3-lizard-box ul {
  margin-bottom: 16px;
}

.g13t3-lizard-box .g13t2-dash-lines {
  margin-left: 58px;
}

.g13t3-continuation {
  margin-left: 34px;
}

.g13t4-coffee-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
}

.g13t4-coffee-box .g13t2-box-body {
  padding-top: 4px;
}

.g13t4-reading-passage h4 {
  margin-top: 18px;
}

.g13t4-lettered-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 14px;
  align-items: start;
  margin: 14px 0 18px;
}

.g13t4-lettered-item > strong {
  font-weight: 700;
  line-height: 1.45;
}

.g13t4-lettered-item h4 {
  margin: 0 0 6px;
  font-size: 17px;
  line-height: 1.3;
}

.g13t4-lettered-item p {
  margin: 0 0 14px;
}

.g13t4-lettered-item p:last-child {
  margin-bottom: 0;
}

.g13t4-jazz-subtitle {
  margin: -12px 0 14px;
  text-align: center;
}

.g13t4-flow-chart {
  margin-top: 18px;
  display: grid;
  gap: 0;
}

.g13t4-flow-chart h3 {
  margin: 0 0 16px;
  text-align: center;
  font-size: 1.1rem;
}

.g13t4-flow-step {
  border: 1px solid #929a9d;
  padding: 12px 16px;
  background: #fff;
  line-height: 1.5;
}

.g13t4-flow-step p {
  margin: 0 0 8px;
}

.g13t4-flow-step ul {
  margin: 8px 0 0 22px;
  padding: 0;
}

.g13t4-flow-step li + li {
  margin-top: 8px;
}

.g13t4-flow-arrow {
  width: 0;
  height: 0;
  justify-self: center;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-top: 22px solid #202427;
  margin: 0 0 2px;
}

.g12t4-cycle-box h5,
.g12t4-noise-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
}

.g12t4-cycle-box .g13t2-box-body,
.g12t4-noise-box .g13t2-box-body {
  padding-top: 4px;
}

.g12t4-sheepmarket-map {
  max-width: 760px;
}

.g12t4-shakespeare-table {
  width: min(100%, 900px);
  margin-top: 18px;
}

.g12t4-shakespeare-table th:first-child,
.g12t4-shakespeare-table td:first-child {
  width: 58%;
}

.g12t1-family-box h5,
.g12t1-business-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
  text-align: center;
  font-size: 1.25rem;
}

.g12t1-family-box .g13t2-box-body,
.g12t1-business-box .g13t2-box-body {
  padding: 18px 24px;
}

.g12t1-family-continuation {
  margin-top: 14px;
}

.g12t1-responsibilities-page .manual-listening-option-box {
  width: min(100%, 520px);
}

.g12t1-notes-summary,
.g12t1-reading-notes {
  max-width: 860px;
  font-size: 17px;
  line-height: 1.45;
}

.g12t1-reading-page .g12t1-long-answer-list .manual-inline-answer-row {
  grid-template-columns: 40px minmax(0, 1fr) 180px;
}

.g12t1-sentence-completion {
  display: grid;
  gap: 14px;
  max-width: 920px;
}

.g12t1-sentence-completion p {
  margin: 0;
  line-height: 1.55;
}

.g12t1-people-box {
  width: min(100%, 360px);
  margin: 24px auto 0;
}

.g12t1-people-box div {
  grid-template-columns: 36px minmax(0, 1fr);
}

.g12t2-kenton-box h5,
.g12t2-conflict-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
  text-align: center;
  font-size: 1.25rem;
}

.g12t2-kenton-box .g13t2-box-body,
.g12t2-conflict-box .g13t2-box-body {
  padding: 18px 24px;
}

.g12t2-comments-page .manual-listening-option-box {
  width: min(100%, 740px);
}

.g12t2-viking-page .manual-listening-option-box {
  width: min(100%, 540px);
  margin-bottom: 28px;
}

.g12t2-viking-flow {
  max-width: 680px;
}

.g12t2-viking-flow section {
  text-align: center;
}

.g12t2-headings-box {
  width: min(100%, 760px);
}

.g12t2-headings-box div {
  grid-template-columns: 36px minmax(0, 1fr);
}

.g12t2-humber-summary {
  max-width: 820px;
  font-size: 17px;
  line-height: 1.45;
}

.g12t3-public-library-box h5,
.g12t3-birds-box h5 {
  border-bottom: 0;
  padding-bottom: 8px;
  text-align: center;
  font-size: 1.25rem;
}

.g12t3-public-library-box .g13t2-box-body,
.g12t3-birds-box .g13t2-box-body {
  padding: 18px 24px;
}

.g12t3-fitness-table {
  width: min(100%, 900px);
  margin-top: 18px;
}

.g12t3-fitness-table th,
.g12t3-fitness-table td {
  vertical-align: top;
}

.g12t3-fitness-table ul {
  margin: 0;
  padding-left: 20px;
}

.g12t3-flow-chart {
  margin: 22px auto 0;
  max-width: 900px;
}

.g12t3-flow-chart section {
  border: 1px solid #333;
  padding: 14px 18px;
  margin: 0;
}

.g12t3-flow-chart h5 {
  text-align: center;
  font-size: 1.05rem;
  margin-bottom: 12px;
}

.g12t3-flow-arrow {
  width: 0;
  height: 0;
  margin: 0 auto;
  border-left: 17px solid transparent;
  border-right: 17px solid transparent;
  border-top: 24px solid #111;
}

.ielts-source-prompt-box {
  max-width: 860px;
}

.ielts-source-prompt-box p {
  margin: 0 0 12px;
}

.ielts-source-prompt-box ul {
  margin: 10px 0 0;
  padding-left: 34px;
}

.ielts-source-prompt-box li {
  margin: 9px 0;
}

.ielts-speaking-timing.g13-speaking-timing-plain {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.g13-cookery-table {
  width: min(100%, 1040px);
  margin-top: 16px;
  font-size: 16px;
}

.g13-cookery-table caption {
  padding: 8px 0 10px;
  font-size: 19px;
  font-weight: 700;
  text-align: center;
}

.g13-cookery-table th,
.g13-cookery-table td {
  vertical-align: top;
}

.g13-cookery-table ul {
  margin: 0;
  padding-left: 20px;
}

.g13-cookery-table li {
  margin: 4px 0 8px;
}

.g13-map-figure {
  max-width: 700px;
  margin: 12px auto 20px;
}

.g13-map-figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #333;
  background: #fff;
}

.g13-map-answer-list .manual-inline-answer-row {
  grid-template-columns: 40px minmax(300px, 440px) 180px;
}

.g13-experiment-flow {
  max-width: 680px;
  margin: 22px auto 0;
  text-align: center;
}

.g13-experiment-flow h5 {
  margin-bottom: 14px;
}

.g13-experiment-step {
  padding: 10px 18px;
  border: 1px solid #555;
  background: #fff;
  font-size: 17px;
}

.g16t2-listening-page .manual-listening-option-box {
  min-width: min(450px, 100%);
}

.g16t2-serving-points {
  margin-top: 28px;
}

.g16t2-serving-points .manual-inline-answer-row {
  grid-template-columns: 44px minmax(260px, 420px) 180px;
  width: min(100%, 680px);
  margin: 8px 0;
  border: 0;
}

.g16t2-flowchart {
  max-width: 820px;
  margin: 20px auto 0;
  text-align: center;
}

.g16t2-flow-box {
  padding: 14px 22px;
  border: 1px solid #444;
  background: #fff;
  font-size: 18px;
}

.g16t2-flow-box p {
  margin: 6px 0;
}

.g16t4-rental-box {
  border: 1px solid #222;
  margin: 18px 0;
  padding: 0 28px 20px;
  max-width: 820px;
}

.g16t4-rental-box h3 {
  border-bottom: 1px solid #333;
  margin: 0 -28px 18px;
  padding: 14px;
  text-align: center;
  font-size: 26px;
}

.g16t4-rental-box h5 {
  margin: 18px 0 8px;
  font-size: 18px;
}

.g16t4-rental-box ul {
  margin: 8px 0 16px;
  padding-left: 26px;
}

.g16t4-rental-box li {
  margin: 8px 0;
}

.g16t4-map {
  max-width: 760px;
  margin: 14px auto 22px;
}

.g16t4-map img {
  display: block;
  width: 100%;
  height: auto;
}

.g16t4-map-answers,
.g16t4-cities {
  max-width: 580px;
}

.g16t4-map-answers .manual-inline-answer-row,
.g16t4-cities .manual-inline-answer-row {
  grid-template-columns: 32px minmax(180px, 1fr) minmax(120px, 180px);
}

.g16t3-notes-box {
  border: 1px solid #222;
  margin-top: 18px;
  padding: 0 24px 18px;
  max-width: 900px;
}

.g16t3-notes-box h3 {
  border-bottom: 1px solid #222;
  font-size: 1.35rem;
  margin: 0 -24px 12px;
  padding: 12px 24px;
  text-align: center;
}

.g16t3-notes-box h5 {
  border-bottom: 0;
  margin: 16px 0 6px;
  padding-bottom: 0;
}

.g16t3-box-intro {
  border-bottom: 1px solid #222;
  margin: 0 -24px 12px;
  padding: 8px 24px;
}

.g16t3-notes-box ul {
  margin: 0 0 8px;
}

.g16t3-match-list {
  margin-top: 18px;
  max-width: 760px;
}

.g16t3-match-list .manual-inline-answer-row {
  margin: 8px 0;
}

.g13-animal-notes {
  max-width: 920px;
}

.g13-animal-notes p {
  margin: 8px 0 10px;
}

.g13-animal-notes ul ul {
  margin-top: 6px;
  margin-bottom: 0;
}

.g14-listening-page {
  max-width: 1060px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .manual-listening-page,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .manual-reading-page {
  text-align: left;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .manual-listening-page,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .manual-reading-page {
  margin-left: 0;
  margin-right: auto;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .manual-listening-centered-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .manual-listening-centered-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g13-main-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-t2-passage .g13-main-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-t1-passage .g13-main-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-t3-passage .g13-main-title,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-t4-passage .g13-main-title {
  text-align: left;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-option-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .pdf-option-list-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .manual-listening-option-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .manual-listening-notes,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .g-source-frame,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .g14-crime-report-table,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .g14-marine-notes,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .g14-map-figure,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .g13-map-answer-list,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-option-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .pdf-option-list-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .matching-option-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .manual-listening-option-box,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .manual-listening-notes,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g-source-frame,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-crime-report-table,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-marine-notes,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-map-figure,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g13-map-answer-list,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key-inline {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

/* G14 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond General Cambridge 14. */
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g14-scoped-source-font: "Times New Roman", Times, serif;
  --g14-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g14-scoped-passage-size: 20px;
  --g14-scoped-question-size: 19px;
  --g14-scoped-input-size: 18px;
  --g14-scoped-title-size: 24px;
  --g14-scoped-section-size: 22px;
  --g14-scoped-subheading-size: 21px;
  --g14-scoped-control-size: 20px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--g14-scoped-source-font) !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .a7-inline-passage-translation {
  display: block !important;
  clear: both;
  width: 100% !important;
  max-width: 100% !important;
  margin: 6px 0 14px !important;
  color: #475569;
  font-size: 0.92em !important;
  line-height: 1.55 !important;
  text-align: left;
  white-space: normal;
  word-break: normal;
  overflow-wrap: anywhere;
  writing-mode: horizontal-tb;
}

#examView.general-exam.book-14.test-2.module-reading .cd-passage-pane .g14-t2-review > .a7-inline-passage-translation {
  grid-column: 1 / -1;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .g-general-passage-text, .manual-reading-page),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill, .g14-tfng-list, .g14-tfng-question, .g13-map-answer-list),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .cd-inline-fill, .g13-map-answer-list) {
  font-family: inherit !important;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, .g13-main-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--g14-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .g-centered-subtitle, .cd-passage-byline, h4, h5, h6, .g14-t1-subtitle, .g14-t3-subtitle, .g14-t4-subtitle) {
  font-family: inherit !important;
  font-size: var(--g14-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--g14-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-family: var(--g14-scoped-ui-font) !important;
  font-size: var(--g14-scoped-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--g14-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .g13-map-answer-list, .g14-marine-notes, .g14-tfng-key, .g14-tfng-key-inline, [style*="border"]),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .g13-map-answer-list, .g14-marine-notes, [style*="border"]) {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .g14-tfng-option),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g14-scoped-source-font) !important;
  font-size: var(--g14-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g14-scoped-control-size);
  height: var(--g14-scoped-control-size);
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form {
  width: min(100%, 930px);
  margin: 18px 0 0;
  border: 2px solid #4a4a4a;
  border-collapse: collapse;
  color: #555;
  table-layout: fixed;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form th,
#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form td {
  border: 0;
  background: #fff;
  font-family: "Times New Roman", Times, serif;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form th {
  padding: 14px 8px 12px;
  border-bottom: 1px solid #777;
  color: #555;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  letter-spacing: 0;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form td {
  padding: 2px 8px;
  color: #555;
  font-size: 19px;
  line-height: 1.22;
  vertical-align: top;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form td:first-child {
  width: 29%;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form td:nth-child(2) {
  width: 71%;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .a14-section-row td {
  padding-top: 7px;
  font-weight: 700;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .a14-personal-row td,
#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .a14-name-row td {
  border-bottom: 1px solid #777;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .a14-example-row td {
  padding-top: 5px;
  font-style: italic;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .a14-example-answer {
  display: inline-block;
  min-width: 95px;
  border-bottom: 1px dotted #555;
  font-style: italic;
  font-weight: 700;
  text-align: center;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer {
  width: 190px;
  height: 20px;
  min-height: 20px;
  padding: 0 4px;
  border: 0;
  border-bottom: 1px dotted #555;
  border-radius: 0;
  background: transparent;
  color: #555;
  font: 18px/1.1 "Times New Roman", Times, serif;
  text-align: left;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="2"] {
  width: 170px;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="3"],
#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="7"],
#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="8"],
#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="9"] {
  width: 220px;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="4"] {
  width: 270px;
}

#examView.academic-exam.book-14.test-1.module-listening .a14-crime-report-form .inline-answer[data-question-number="10"] {
  width: 210px;
}

#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="21"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="22"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="23"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="24"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="25"] {
  display: flex;
  align-items: baseline;
  clear: both;
  margin: 18px 0 10px;
}

#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="22"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="23"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="24"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="25"] {
  margin-top: 26px;
}

#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="21"] + .cd-choice-option,
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="22"] + .cd-choice-option,
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="23"] + .cd-choice-option,
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="24"] + .cd-choice-option,
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-question-stem[data-reading-question-line="25"] + .cd-choice-option {
  margin-top: 10px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key-inline {
  gap: 4px;
  margin: 10px 0 18px;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.32 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key-inline div {
  grid-template-columns: 135px minmax(0, 1fr);
  gap: 16px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key-inline strong,
#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-key-inline span {
  font-style: normal;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-list:has(.g14-tfng-question-stacked) {
  gap: 14px;
  margin-top: 8px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-question-stacked {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
  align-items: start;
  padding: 3px 0 6px;
  border-bottom: 0;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-question-stacked .g14-tfng-question-stem {
  margin: 0;
  font-size: var(--g14-scoped-question-size) !important;
  line-height: 1.36 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-question-stacked .g14-tfng-options {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 14px;
  margin-left: 28px;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-question-stacked .g14-tfng-option {
  min-height: 24px;
  padding: 0;
  gap: 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #000000;
  font-size: var(--g14-scoped-question-size) !important;
  font-weight: 400;
  line-height: 1.25 !important;
}

#examView.general-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g14-tfng-question-stacked .g14-tfng-option input {
  width: 20px;
  height: 20px;
  margin: 0;
}
.g14-crime-report-table {
  width: min(100%, 1040px);
  margin-top: 18px;
  font-size: 17px;
}

.g14-crime-report-table th {
  padding: 12px;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0;
}

.g14-crime-report-table td {
  vertical-align: top;
}

.g14-crime-report-table td:first-child {
  width: 29%;
  font-weight: 600;
}

.g14-crime-report-table .g14-table-section td,
.g14-table-section {
  background: #f8fafc;
}

.g14-crime-report-table .inline-answer {
  width: 180px;
}

.g14-health-clinic-table td:first-child {
  width: 24%;
}

.g14-health-clinic-table td:nth-child(2) {
  width: 28%;
  font-weight: 600;
}

.g14-health-clinic-table td:nth-child(3) {
  width: 48%;
}

.g14-map-figure {
  max-width: 900px;
  margin: 12px auto 20px;
}

.g14-map-figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #333;
  background: #fff;
}

.g14-marine-notes {
  max-width: 900px;
}

.g14-marine-notes p {
  margin: 8px 0 10px;
}

.g13-writing-box {
  margin: 16px 0 18px;
  padding: 18px 22px;
  border: 1px solid #555;
}

.g13-writing-box p:last-child,
.g13-speaking-card p:last-child {
  margin-bottom: 0;
}

.g13-writing-box ul,
.g13-speaking-card ul,
.g13-speaking-prompts {
  margin: 8px 0 0 22px;
  padding: 0;
}

.g13-speaking-prompts li,
.g13-writing-box li,
.g13-speaking-card li {
  margin: 7px 0;
}

.g13-speaking-card {
  margin: 16px 0 22px;
  padding: 18px 22px;
  border: 1px solid #555;
}

.g13-speaking-part2-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 24px;
  align-items: stretch;
}

.g13-speaking-timing {
  padding: 16px;
  border: 1px solid #555;
  font-size: 14px;
  line-height: 1.45;
}

.g13-speaking-topic {
  margin-top: 22px;
}

.ielts-writing-topic-box {
  margin: 16px 0 18px;
  padding: 18px 22px;
  border: 1px solid #555;
}

.a15-writing-source-box {
  font-style: italic;
}

.ielts-writing-topic-box p:last-child,
.ielts-speaking-cue-card p:last-child {
  margin-bottom: 0;
}

.a14-source-box {
  border: 1px solid #333;
  margin: 14px 0;
  padding: 10px 14px;
  background: #fff;
  color: #000;
}

.a14-source-box p {
  margin: 0 0 8px;
  line-height: 1.45;
}

.a14-source-box p:last-child {
  margin-bottom: 0;
}

.a14-source-box.a14-options-box {
  display: inline-block;
  min-width: min(360px, 100%);
  max-width: 100%;
}

.a14-source-box.a14-note-box {
  display: block;
  width: min(760px, 100%);
}

.a14-source-box.a14-headings-box {
  width: min(640px, 100%);
}

.a4-writing-topic-plain,
.a4t1-writing-topic-plain {
  padding: 0 0 0 34px;
  border: 0;
}

.a4-writing-topic-plain ul,
.a4t1-writing-topic-plain ul {
  margin: 16px 0 0 26px;
  padding: 0;
}

.a4-writing-topic-plain li,
.a4t1-writing-topic-plain li {
  margin: 4px 0;
}

.ielts-writing-visual {
  margin: 18px 0;
  text-align: center;
}

.ielts-writing-visual figcaption {
  margin-bottom: 10px;
  font-weight: 700;
}

.ielts-writing-visual img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto 8px;
}

.a12t1-listening-page .manual-listening-option-box {
  margin: 18px auto 22px;
}

.a12t1-listening-page .manual-inline-answer-row {
  display: grid;
  grid-template-columns: 130px 170px;
  gap: 18px;
  align-items: center;
  margin: 10px 0;
}

.a12t1-listening-page .manual-inline-answer-row span {
  white-space: nowrap;
}

.a12t1-listening-page > h3,
.a12t1-bordered-notes h3 {
  text-align: center;
}

.a12t1-bordered-notes {
  max-width: 760px;
  margin: 16px 0 0;
  padding: 12px 16px;
  border: 1px solid #222222;
}

.a12t1-bordered-passage {
  padding: 14px 16px;
  border: 1px solid #555555;
}

.a12t1-bordered-passage h3 {
  text-align: center;
}

.a12t1-reading-page .manual-inline-answer-row {
  display: grid;
  grid-template-columns: 112px 170px;
  gap: 16px;
  align-items: center;
  margin: 8px 0;
}

.a12t1-reading-page .manual-inline-answer-row span {
  white-space: nowrap;
}

.a12t1-reading-page .a12t1-completion-line {
  margin: 7px 0;
  line-height: 1.35;
}

.a12t1-reading-page .inline-answer {
  box-sizing: border-box;
  width: 86px;
  min-width: 0;
  height: 1.15em;
  margin: 0 3px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #222222;
  background: transparent;
  box-shadow: none;
  line-height: 1.1;
  vertical-align: baseline;
}

.a12t1-reading-page .inline-answer::placeholder {
  color: transparent;
  opacity: 0;
}
.a12t1-reading-page .a12t1-judgement-key {
  margin: 12px 0 10px 28px;
  line-height: 1.2;
}

.a12t1-reading-page .a12t1-judgement-key p {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
}

.a12t1-reading-page .a12t1-judgement-question {
  margin: 10px 0 14px;
}

.a12t1-reading-page .a12t1-judgement-stem {
  margin: 0 0 5px;
}

.a12t1-reading-page .a12t1-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  align-items: center;
  margin-left: 24px;
}

.a12t1-reading-page .a12t1-judgement-options .cd-choice-option.interactive-choice {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 26px;
  margin: 0;
  padding: 2px 8px;
  white-space: nowrap;
}

.a12t1-reading-page .a12t1-judgement-options .choice-input-wrap {
  gap: 6px;
}

.a12t2-listening-page,
.a12t2-reading-page {
  font-family: "Times New Roman", Times, serif;
  font-size: 15px;
  line-height: 1.34;
}

.a12t2-listening-page h3,
.a12t2-reading-page h3,
.a12t2-reading-page h4 {
  text-align: center;
}

.a12t2-bordered-notes {
  max-width: 820px;
  margin: 16px 0 0;
  border: 1px solid #222222;
}

.a12t2-bordered-notes h3 {
  margin: 0;
  padding: 10px 14px;
  border-bottom: 1px solid #222222;
}

.a12t2-bordered-notes h5,
.a12t2-bordered-notes p,
.a12t2-bordered-notes ul {
  margin-left: 22px;
  margin-right: 22px;
}

.a12t2-kenton-notes .a12t2-example {
  padding: 10px 22px;
  border-bottom: 1px solid #222222;
}

.a12t2-kenton-notes .a12t2-example p {
  margin: 6px 0;
}

.a12t2-filled-line {
  display: inline-block;
  min-width: 120px;
  text-align: center;
  border-bottom: 1px dotted #222222;
}

.a12t2-listening-page .inline-answer,
.a12t2-reading-page .inline-answer {
  box-sizing: border-box;
  width: 92px;
  min-width: 0;
  height: 1.15em;
  margin: 0 3px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #222222;
  background: transparent;
  box-shadow: none;
  line-height: 1.1;
  vertical-align: baseline;
}

.a12t2-listening-page .inline-answer::placeholder,
.a12t2-reading-page .inline-answer::placeholder {
  color: transparent;
  opacity: 0;
}

.a12t2-mcq {
  margin: 12px 0 16px;
}

.a12t2-mcq p {
  margin: 0 0 6px;
}

.a12t2-mcq .cd-choice-option.interactive-choice,
.a12t2-choice-stack .cd-choice-option.interactive-choice {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 4px 0 4px 46px;
  padding: 0;
}

.a12t2-listening-page .manual-listening-option-box,
.a12t2-reading-page .manual-listening-option-box {
  margin: 18px auto 22px;
}

.a12t2-listening-page .manual-inline-answer-row,
.a12t2-reading-page .manual-inline-answer-row {
  display: grid;
  grid-template-columns: minmax(130px, 1fr) 108px;
  gap: 16px;
  align-items: baseline;
  margin: 8px 0;
}

.a12t2-reading-page .manual-inline-answer-row {
  grid-template-columns: minmax(0, 1fr) 108px;
}

.a12t2-flowchart {
  max-width: 650px;
  margin: 20px auto 0;
}

.a12t2-flow-step {
  position: relative;
  margin: 0 auto 26px;
  padding: 10px 16px;
  border: 1px solid #222222;
  text-align: center;
}

.a12t2-flow-step:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -23px;
  width: 0;
  height: 0;
  transform: translateX(-50%);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 18px solid #222222;
}

.a12t2-judgement-key {
  margin: 12px 0 12px 48px;
}

.a12t2-judgement-key p {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 12px;
  margin: 0;
}

.a12t2-judgement-question {
  margin: 11px 0 15px;
}

.a12t2-judgement-stem {
  margin: 0 0 5px;
}

.a12t2-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  align-items: center;
  margin-left: 32px;
}

.a12t2-judgement-options .cd-choice-option.interactive-choice {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 26px;
  margin: 0;
  padding: 2px 8px;
  white-space: nowrap;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-key {
  display: grid;
  gap: 4px;
  margin: 12px 0 22px;
  font-style: italic;
  line-height: 1.25;
}

#examView.general-exam.book-12.test-3.module-reading .cd-passage-pane .g12t3-left-subtitle {
  text-align: left;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-key div,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-row {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 20px;
  align-items: baseline;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-row {
  margin: 3px 0;
  font-style: italic;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-key strong,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-row .cd-judgement-term {
  font-weight: 800;
  white-space: nowrap;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-list {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-question {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.35;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-stem,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-line {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 8px;
  align-items: baseline;
  margin: 0;
  padding: 0;
  border: 0;
  line-height: 1.35;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-line {
  margin: 14px 0 16px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-row + .g12-judgement-line {
  margin-top: 24px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-number,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-line .cd-question-number {
  font-weight: 800;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-copy,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-line .cd-question-copy {
  min-width: 0;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.g12-tfng-choice-row, .g12-judgement-choice-row) {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  align-items: center;
  margin-top: 6px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-tfng-choice-row {
  margin-left: 38px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .g12-judgement-line .g12-judgement-choice-row {
  grid-column: 2;
  margin-left: 0;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.g12-tfng-choice-row, .g12-judgement-choice-row) label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  white-space: nowrap;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.g12-tfng-choice-row, .g12-judgement-choice-row) input[type="radio"] {
  width: 19px;
  height: 19px;
  margin: 0;
}

.a12t2-reading-table {
  width: 100%;
}

.a12t2-reading-table td,
.a12t2-reading-table th {
  vertical-align: top;
}

.a12t2-footnote {
  margin-top: 28px;
  font-size: 0.95em;
}

.a12t2-writing-maps img {
  max-width: 760px;
  margin-bottom: 18px;
  border: 0;
}

.a12t2-speaking-timing-plain {
  padding: 0;
  border: 0;
}

.ielts-speaking-prompts,
.ielts-speaking-cue-card ul {
  margin: 8px 0 0 22px;
  padding: 0;
}

.ielts-speaking-prompts li,
.ielts-speaking-cue-card li {
  margin: 7px 0;
}

.ielts-speaking-part2-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 250px;
  gap: 24px;
  align-items: stretch;
}

.ielts-speaking-cue-card {
  padding: 18px 22px;
  border: 1px solid #555;
}

.ielts-speaking-timing {
  padding: 16px;
  border: 1px solid #555;
  font-size: 14px;
  line-height: 1.45;
}

.a4t1-speaking-timing-plain {
  padding: 0;
  border: 0;
}

.a10-test1-listening-page {
  font-family: "Times New Roman", Times, serif;
  max-width: 760px;
  font-size: 15px;
  line-height: 1.32;
}

.a10-listening-form,
.a10-trip-table,
.a10-reading-table {
  border: 1px solid #555;
  border-collapse: collapse;
  margin: 12px 0 18px;
  width: min(100%, 720px);
}

.a10-listening-form th,
.a10-listening-form td,
.a10-trip-table th,
.a10-trip-table td,
.a10-reading-table th,
.a10-reading-table td {
  border: 1px solid #555;
  padding: 6px 8px;
  vertical-align: top;
}

.a10-listening-form th,
.a10-trip-table th,
.a10-reading-table th {
  text-align: center;
}

.a10-trip-table {
  table-layout: fixed;
}

.a10-trip-table th:first-child {
  width: 19%;
}

.a10-trip-table th:nth-child(2) {
  width: 18%;
}

.a10-trip-table th:nth-child(3) {
  width: 20%;
}

.a10-trip-table th:nth-child(4) {
  width: 20%;
}

.a10-trip-table th:nth-child(5) {
  width: 23%;
}

.cd-listening .a10-trip-table .inline-answer {
  box-sizing: border-box;
  width: 72px;
  max-width: calc(100% - 6px);
  height: 20px;
  margin: 0 3px;
}

.a10-trip-table td:nth-child(5) .inline-answer {
  width: 64px;
}

.a10-trip-includes {
  margin: 0;
  padding-left: 16px;
  list-style-type: disc;
}

.a10-trip-includes li {
  margin: 0 0 4px;
  padding-left: 2px;
}

.a10-listening-form td:first-child {
  width: 34%;
  font-weight: 700;
}

.a10-listening-form tr:nth-child(n + 9) td {
  border-top: 0;
  border-bottom: 0;
}

.a10-listening-form tr:nth-child(9) td,
.a10-listening-form tr:nth-child(12) td {
  padding-top: 10px;
  font-weight: 700;
}

.a10-listening-form tr:nth-child(10) td,
.a10-listening-form tr:nth-child(11) td,
.a10-listening-form tr:nth-child(13) td,
.a10-listening-form tr:nth-child(14) td,
.a10-listening-form tr:nth-child(15) td {
  padding-left: 18px;
}

.listening-scroll:has(.a10-test1-listening-page),
.reading-scroll:has(.a10-passage) {
  height: calc(100vh - 180px);
  min-height: 760px;
}

.cd-listening:has(.a10-test1-listening-page) .cd-paper,
.cd-reading:has(.a10-passage) .cd-paper {
  padding-bottom: 96px;
}

.reading-scroll:has(.a10-passage) .cd-reading-layout {
  min-height: 760px;
}

.reading-scroll:has(.a10-passage) .cd-reading-pane {
  height: calc(100vh - 326px);
  min-height: 690px;
}

.a10-passage {
  column-count: 2;
  column-gap: 26px;
  font-size: 15px;
  line-height: 1.28;
}

.a10-passage h3,
.a10-passage h4,
.a10-passage > p:first-of-type {
  column-span: all;
}

.a10-passage h3 {
  margin: 0 0 10px;
  font-size: 17px;
}

.a10-passage h4 {
  margin: 8px 0 10px;
  text-align: center;
  font-size: 25px;
}

.a10-passage .a10-transport-title {
  margin: 4px 0 8px;
  padding: 8px 12px;
  background: #8f8f8f;
  color: #1a1a1a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 23px;
  font-weight: 800;
  line-height: 1.05;
}

.a10-passage p {
  margin: 0 0 8px;
}

.a10-stepwells-passage {
  padding: 16px 18px;
  border: 2px dotted #6f6f6f;
}

.a10-judgement-block {
  max-width: 720px;
}

.a10-judgement-key {
  margin: 8px 0 14px;
}

.a10-judgement-key p {
  display: grid;
  grid-template-columns: 122px minmax(0, 1fr);
  gap: 10px;
  margin: 2px 0;
}

.a10-judgement-key strong {
  white-space: nowrap;
}

.a10-judgement-question {
  margin: 12px 0 14px;
}

.a10-judgement-question p {
  margin: 0 0 6px;
}

.a10-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-left: 24px;
}

.a10-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  line-height: 1.2;
  white-space: nowrap;
}

.a10-judgement-options input {
  flex: 0 0 auto;
}

#examView.book-6.module-reading .a6-reading-judgement-key {
  margin: 8px 0 10px 30px;
  max-width: 680px;
}

#examView.book-6.module-reading .a6-reading-judgement-key-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  column-gap: 10px;
  align-items: baseline;
  margin: 0;
  font-style: italic;
  line-height: 1.22;
}

#examView.book-6.module-reading .a6-reading-judgement-term {
  font-weight: 800;
  white-space: nowrap;
}

#examView.book-6.module-reading .a6-reading-judgement-question {
  margin: 7px 0 8px;
}

#examView.book-6.module-reading .a6-reading-judgement-question p {
  margin: 0 0 2px;
}

#examView.book-6.module-reading .a6-reading-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 13px;
  margin-left: 24px;
}

#examView.book-6.module-reading .a6-reading-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 16px;
  line-height: 1.15;
  white-space: nowrap;
}

#examView.book-6.module-reading .a6-reading-judgement-options input[type="radio"] {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
  margin: 0;
}

.a10-short-answer-block {
  max-width: 720px;
  margin-top: 18px;
}

.a10-short-answer-row {
  display: grid;
  grid-template-columns: 26px minmax(220px, 1fr) 112px;
  gap: 8px;
  align-items: center;
  margin: 10px 0;
}

.a10-short-answer-row .inline-answer {
  box-sizing: border-box;
  width: 112px;
  max-width: 100%;
}

.a10-choice-list,
.a10-choice {
  display: grid;
  gap: 7px;
  margin: 8px 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a10-choice,
.a10-choice-list label {
  display: flex;
  align-items: baseline;
  gap: 6px;
  cursor: pointer;
}

.a10-choice input,
.a10-choice-list label input {
  flex: 0 0 auto;
}

.a10-notes-list {
  margin: 8px 0 14px 20px;
  padding: 0;
}

.a10-notes-list li {
  margin: 4px 0;
}

.a10-test1-listening-page .manual-boxed-notes {
  width: min(100%, 620px);
  padding: 10px 16px 12px;
  font-size: 14px;
  line-height: 1.2;
}

.a10-test1-listening-page .manual-boxed-notes .cd-completion-title {
  margin-bottom: 8px;
  font-size: 18px;
}

.a10-test1-listening-page .manual-boxed-notes h6 {
  margin: 10px 0 4px;
  font-size: 13px;
}

.a10-heading-box {
  max-width: 560px;
  margin: 12px auto;
  padding: 10px 14px;
  border: 1px solid #555;
}

.a10-heading-box h5 {
  margin: 0 0 8px;
  text-align: center;
}

.a10-heading-box p {
  margin: 3px 0;
}

.a10-writing-chart {
  margin: 6px 0 0;
  border-top: 0;
  padding-top: 0;
}

.a10-writing-chart h3 {
  margin: 0 0 3px;
  text-align: center;
  font-size: 11px;
}

.a10-test2-listening-page .a10-transport-survey {
  width: min(100%, 610px);
  border: 1px solid #555;
  border-collapse: collapse;
}

.a10-test2-listening-page .a10-transport-survey th,
.a10-test2-listening-page .a10-transport-survey td {
  border: 1px solid #555;
  padding: 8px 10px;
  vertical-align: top;
}

.a10-test2-listening-page .a10-transport-survey td:first-child {
  width: 42%;
  font-weight: 700;
}

.a10-test2-listening-page .a10-transport-survey .example-answer {
  color: #666;
  text-decoration: underline;
}

.a10-test2-listening-page .a10-transport-survey .inline-answer,
.a10-test2-listening-page .a10-match-table .inline-answer {
  width: 96px;
  max-width: 100%;
}

.a10-cycling-box {
  width: min(100%, 620px);
  padding: 18px 22px;
}

.a10-feature-box,
.a10-people-box {
  width: fit-content;
  min-width: 190px;
  margin: 14px auto 18px;
  padding: 10px 18px;
  border: 1px solid #555;
}

.a10-feature-box h5,
.a10-people-box h5 {
  margin: 0 0 8px;
  text-align: center;
}

.a10-feature-box p,
.a10-people-box p {
  margin: 3px 0;
}

.a10-match-table {
  border-collapse: collapse;
  margin: 12px 0 18px;
  width: min(100%, 650px);
}

.a10-match-table th,
.a10-match-table td {
  padding: 5px 8px;
  vertical-align: top;
}

.a10-match-table td:last-child {
  width: 120px;
}

.a10-management-notes {
  width: min(100%, 620px);
  padding: 18px 22px;
}

.a10-reading-box {
  max-width: 590px;
  padding: 10px 16px;
  border: 1px solid #555;
}

.a10-passage2-boxed {
  padding: 14px 16px;
  border: 1px solid #777;
}

.a10-footnote {
  font-size: 12px;
  line-height: 1.25;
}

.a10-art-passage {
  position: relative;
}

.a10-art-image {
  float: right;
  width: 118px;
  margin: 0 0 8px 12px;
}

.a10-art-image img {
  display: block;
  width: 100%;
  height: auto;
}

.a10-word-box {
  display: grid;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  gap: 2px 14px;
  margin: 14px 0 18px;
  padding: 10px 14px;
  border: 1px solid #555;
}

.a10-word-box p {
  margin: 2px 0;
}

.a10-writing-table-title {
  margin: 12px 0 8px;
  text-align: center;
  font-size: 16px;
}

.a10-writing-table {
  width: min(100%, 720px);
  margin: 8px auto 12px;
  border-collapse: collapse;
  font-size: 13px;
}

.a10-writing-table th,
.a10-writing-table td {
  border: 1px solid #555;
  padding: 4px 8px;
  text-align: center;
}

.a10-writing-table th {
  font-weight: 700;
}

.writing-workspace:has(.a10-writing-table) .task-prompt-card {
  padding-top: 14px;
}

.writing-workspace:has(.a10-writing-table) .ielts-writing-topic-box {
  margin: 8px 0 10px;
  padding: 10px 14px;
}

.writing-workspace:has(.a10-writing-table) .ielts-writing-topic-box p,
.writing-workspace:has(.a10-writing-table) .task-prompt-card > p {
  margin: 6px 0;
}

.a10-speaking-part2-layout {
  grid-template-columns: minmax(0, 330px) minmax(220px, 1fr);
  align-items: stretch;
}

.a10-speaking-timing-plain {
  border: 0;
  padding: 0;
}

.a10-writing-chart img {
  max-width: 220px;
  margin: 0 auto;
}

.writing-prompt-document:has(.a10-writing-chart) {
  max-width: 560px;
  padding: 12px 16px;
  font-size: 12px;
  line-height: 1.25;
}

.writing-prompt-document:has(.a10-writing-chart) h2 {
  margin-bottom: 8px;
  font-size: 16px;
}

.writing-prompt-document:has(.a10-writing-chart) p {
  margin-bottom: 5px;
}

.ielts-speaking-timing.a10-speaking-timing {
  padding: 0;
  border: 0;
  background: transparent;
}

.a10-test3-listening-page .inline-answer,
.a10-test3-listening-page .a10-match-table .inline-answer,
.a10-test3-listening-page .a10-childcare-form .inline-answer {
  width: 104px;
  height: 20px;
  padding: 0 5px;
  max-width: 100%;
  min-width: 78px;
  box-sizing: border-box;
}

.a10-test3-listening-page {
  font-size: 12px;
  line-height: 1.08;
}

.a10-childcare-form {
  width: min(100%, 640px);
  border: 1px solid #555;
  border-collapse: collapse;
  table-layout: fixed;
}

.a10-childcare-form th,
.a10-childcare-form td {
  border: 0;
  padding: 2px 6px;
  vertical-align: top;
}

.a10-childcare-form th {
  border-top: 1px solid #555;
  border-bottom: 1px solid #555;
  text-align: center;
}

.a10-childcare-form .form-label {
  width: 42%;
  font-weight: 700;
}

.a10-childcare-form .example-answer {
  display: inline-block;
  min-width: 86px;
  border-bottom: 1px dotted #555;
  text-align: center;
}

.a10-childcare-form .phone-spacer {
  display: inline-block;
  margin-left: 18px;
}

.a10-action-box {
  max-width: 460px;
}

.a10-dolphin-box {
  min-width: 170px;
}

.a10-self-reg-notes {
  width: min(100%, 650px);
}

.a10-horizon-passage .a10-pacific-map {
  float: right;
  width: min(44%, 245px);
  margin: 0 0 8px 14px;
}

.a10-tourism-passage h3,
.a10-autumn-passage h3,
.a10-horizon-passage h3,
.a10-autumn-passage h4,
.a10-horizon-passage h4 {
  text-align: center;
}

.a10-autumn-passage h4,
.a10-horizon-passage h4 {
  font-style: italic;
  font-weight: 400;
}

.a10-pacific-map img {
  display: block;
  width: 100%;
  height: auto;
}

.a10-test3-writing-chart {
  max-width: 210px;
  margin: 5px auto 6px;
}

.a10-test3-writing-chart figcaption {
  margin-bottom: 4px;
  text-align: center;
  font-weight: 700;
}

.a10-test3-writing-chart img {
  display: block;
  width: 100%;
  max-width: 210px;
  height: auto;
  margin: 0 auto;
}

.a7-torn-note,
.a7-rock-note {
  width: min(620px, 100%);
  margin: 18px auto;
  padding: 16px 18px;
  border: 2px solid #222;
  font-family: "Times New Roman", Times, serif;
}

.a7-torn-note {
  position: relative;
  border-top: 0;
  border-bottom: 0;
  padding-top: 24px;
  padding-bottom: 24px;
}

.a7-torn-note::before,
.a7-torn-note::after {
  content: "";
  position: absolute;
  left: -2px;
  right: -2px;
  height: 14px;
  background-repeat: repeat-x;
  background-size: 28px 14px;
  pointer-events: none;
}

.a7-torn-note::before {
  top: -8px;
  background-image: linear-gradient(135deg, transparent 35%, #222 36%, #222 42%, transparent 43%),
    linear-gradient(45deg, transparent 35%, #222 36%, #222 42%, transparent 43%);
  background-position: 0 0, 14px 0;
}

.a7-torn-note::after {
  bottom: -8px;
  background-image: linear-gradient(45deg, transparent 35%, #222 36%, #222 42%, transparent 43%),
    linear-gradient(135deg, transparent 35%, #222 36%, #222 42%, transparent 43%);
  background-position: 0 0, 14px 0;
}

.a7-torn-note h4,
.a7-rock-note h4 {
  text-align: center;
}

.a7-indent {
  display: inline-block;
  margin-left: 22px;
}

.a7-booking-form {
  border: 1px solid #222;
}

.a7-booking-form th {
  width: 24%;
}

.a7-booking-form td,
.a7-booking-form th {
  border-color: transparent;
}

.a7-mini-table {
  width: min(520px, 100%);
}

.a7-option-key,
.a7-heading-list,
.a7-key-table {
  width: min(520px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.a7-choice-question {
  margin: 12px 0 16px;
}

.a7-choice-question label,
.a7-choice-set label {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin: 5px 0;
}

.a7-choice-question input,
.a7-choice-set input {
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  flex: 0 0 auto;
}

.a7-choice-set {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 6px;
}

.a7-judgement-options {
  display: flex;
  margin-top: 2px;
  gap: 8px 16px;
}

.cd-question-pane p:has(.a7-judgement-options) {
  margin-bottom: 6px;
}

.a7-judgement-key {
  margin: 4px 0 14px;
}

.a7-judgement-key p {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  margin: 0;
  line-height: 1.25;
}

.cd-question-pane .a7-judgement-key {
  width: auto;
  max-width: none;
  margin: 4px 0 14px;
}

.cd-question-pane .a7-judgement-key p {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
  line-height: 1.25;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-torn-note, .a7-rock-note),
#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening :is(.cd-completion-box, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-car-insurance, .a7-example-box, .a7-torn-note, .a7-rock-note) {
  margin-left: 0;
  margin-right: auto;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-torn-note, .a7-rock-note) :is(th, td, p, li, h3, h4),
#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening :is(.cd-completion-box, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-car-insurance, .a7-example-box, .a7-torn-note, .a7-rock-note) :is(th, td, p, li, h3, h4) {
  text-align: left;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, p),
#examView.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening :is(.cd-paper, .raw-test-pages) :is(h3, h4, p) {
  text-align: left;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4):is(.module-reading, .module-listening)
  :is(
    .cd-question-pane,
    .cd-paper,
    .raw-test-pages,
    .manual-listening-page
  )
  :is(
    .cd-choice-question-stem,
    .cd-choice-option,
    .interactive-choice,
    .ielts-tfng-question,
    .ielts-tfng-options,
    .ielts-inline-options,
    h3,
    h4,
    h5,
    h6,
    p,
    li,
    label
  ) {
  text-align: left !important;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4):is(.module-reading, .module-listening)
  :is(
    .cd-option-box,
    .ielts-table,
    .pdf-option-list-box,
    .matching-option-box,
    .cd-completion-box,
    .ielts-inline-options,
    .ielts-tfng-question,
    [style*="border"]
  ) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.book-7:is(.test-1, .test-2, .test-3, .test-4):is(.module-reading, .module-listening)
  :is(
    .cd-option-box,
    .ielts-table,
    .pdf-option-list-box,
    .matching-option-box,
    .cd-completion-box,
    .ielts-inline-options,
    .ielts-tfng-question,
    [style*="border"]
  )
  :is(h2, h3, h4, h5, h6, p, li, th, td, caption, figcaption, div, span, label) {
  text-align: left !important;
}

.a7-word-list {
  width: min(560px, 100%);
}

.a7t1-water-title {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin: 6px 0 12px;
}

.a7t1-water-title h4 {
  margin: 0;
  font-size: 1.25rem;
  line-height: 1.05;
  max-width: 260px;
}

.a7t1-water-title img {
  width: 86px;
  height: auto;
  display: block;
}

.a7-writing-table th {
  background: #d8d8d8;
  font-weight: 700;
}

.a7-speaking-card-layout {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.9fr);
}

.a7-speaking-timing {
  padding: 2px 0;
  border: 0;
  font-size: 16px;
  line-height: 1.35;
}

.a11-public-room,
.a11-fiddy-notes,
.a11-ocean-notes,
.a11-youth-council,
.a11-taylor-hall {
  max-width: 680px;
  font-family: "Times New Roman", Times, serif;
}

.a11-public-room h4,
.a11-fiddy-notes h4,
.a11-ocean-notes h4,
.a11-youth-council h4,
.a11-taylor-hall h4,
.a11-centered {
  text-align: center;
}

.a11-t1-reading .cd-passage-intro {
  padding: 0;
  border-left: 0;
  background: transparent;
  font-family: "Times New Roman", Times, serif;
  font-size: 15px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
}

.a11-t2-reading .cd-passage-intro {
  padding: 0;
  border-left: 0;
  background: transparent;
  font-family: "Times New Roman", Times, serif;
  font-size: 15px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
}

.a11-t1-reading .cd-passage-subtitle {
  text-align: center;
  letter-spacing: 0;
}

.a11-t2-reading .cd-passage-subtitle {
  text-align: center;
  font-size: 17px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: 0;
}

.a11-youth-council h4 {
  margin: -12px -14px 12px;
  padding: 8px 14px;
  border-bottom: 1px solid #999;
}

.a11-youth-example-block {
  margin: 0 -14px 12px;
  padding: 0 14px 12px;
  border-bottom: 1px solid #999;
}

.a11-t1-reading .cd-passage-subtitle + .cd-passage-subtitle {
  max-width: 620px;
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
  font-size: 18px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.4;
}

.a11-fiddy-notes {
  border-right: 0;
  border-left: 0;
}

.a11-public-room-continuation {
  margin-top: 0;
}

.a11-youth-council-continuation,
.a11-taylor-hall-continuation {
  margin-top: 0;
}

.a11-bullet,
.a11-subbullet {
  position: relative;
  margin-left: 22px;
}

.a11-bullet::before,
.a11-subbullet::before {
  position: absolute;
  left: -16px;
  content: "鈥?;
}

.a11-subbullet {
  margin-left: 42px;
}

.a11-indent {
  display: inline-block;
  margin-left: 18px;
}

.a11-example-line {
  display: inline-block;
  min-width: 120px;
  border-bottom: 1px dotted #555;
  text-align: center;
  font-style: italic;
}

.a11-map-answers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 28px;
  margin-top: 10px;
}

.a11-choice-question {
  margin: 12px 0 16px;
}

.a11-choice-question label,
.a11-choice-set label {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin: 4px 0;
}

.a11-choice-question input,
.a11-choice-set input {
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  flex: 0 0 auto;
}

.a11-choice-set {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-left: 8px;
  vertical-align: middle;
}

.a11-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  align-items: center;
  margin: 4px 0 8px 16px;
}

.a11-judgement-options label {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  margin: 0;
  white-space: nowrap;
}

.a11-judgement-options input {
  width: 16px;
  height: 16px;
  margin: 0;
  flex: 0 0 auto;
}

.cd-reading-section p:has(.a11-judgement-options),
.cd-question-pane p:has(.a11-judgement-options) {
  margin: 6px 0 8px;
}

.a11-t3-choice-question {
  margin: 10px 0 14px;
}

.a11-t3-choice-question > p {
  margin-bottom: 6px;
}

.a11-t3-choice-answer {
  display: inline-block;
  margin-left: 8px;
  vertical-align: baseline;
}

#examContent .a11-t3-choice-answer .inline-answer {
  width: 54px;
  min-width: 54px;
  height: 24px;
  margin: 0;
  padding: 1px 6px;
  text-align: center;
  text-transform: uppercase;
}

#examContent .a11-letter-answer .inline-answer {
  width: 54px;
  min-width: 54px;
  height: 24px;
  margin: 0 0 0 8px;
  padding: 1px 6px;
  text-align: center;
  text-transform: uppercase;
}

.a11-diagram-answer-list {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.a11-falkirk-figure {
  position: relative;
}

.a11-falkirk-figure img,
.a11-mary-rose-figure img,
.a11-theatre-plan img {
  display: block;
  width: 100%;
}

.a11-theatre-plan {
  max-width: 620px;
  margin: 10px auto;
}

.a11-mary-rose-figure {
  max-width: 620px;
  margin: 10px auto;
}

.a11-diagram-answer {
  position: absolute;
  transform: translate(-50%, -50%);
}

.a11-diagram-answer input {
  width: 96px;
  min-width: 0;
  height: 22px;
  padding: 1px 4px;
  background: rgba(255, 255, 255, 0.9);
}

.a11-diagram-answer-21 {
  left: 55%;
  top: 10%;
}

.a11-diagram-answer-22 {
  left: 83%;
  top: 23%;
}

.a11-diagram-answer-23 {
  left: 80%;
  top: 72%;
}

.a11-diagram-answer-24 {
  left: 52%;
  top: 86%;
}

.a11-diagram-answer-25 {
  left: 18%;
  top: 66%;
}

.a11-diagram-answer-26 {
  left: 12%;
  top: 29%;
}

.a11-diagram-answer-card {
  display: grid;
  grid-template-columns: repeat(5, minmax(96px, 1fr));
  gap: 8px;
  max-width: 620px;
  margin: 12px auto 190px;
  padding: 10px;
  border: 1px solid #777;
}

.a11-falkirk-answer-card {
  grid-template-columns: repeat(4, minmax(96px, 1fr));
  margin: 10px auto 18px;
}

.a11-diagram-answer-card label {
  display: grid;
  grid-template-rows: auto auto;
  gap: 4px;
  align-items: center;
}

.a11-diagram-answer-card label strong {
  text-align: center;
}

.cd-reading .a11-diagram-answer-card .inline-answer {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
}

@media (max-width: 720px) {
  .a11-diagram-answer-card {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }
}

table.a11-key-table,
table.a11-key-table th,
table.a11-key-table td {
  border: 0;
  background: transparent;
}

table.a11-key-table {
  width: auto;
  margin: 8px 0 16px 60px;
}

table.a11-key-table th,
table.a11-key-table td {
  padding: 1px 14px 1px 0;
  font-style: italic;
}

table.a11-key-table th {
  white-space: nowrap;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g11-general-source-font: "Times New Roman", Times, serif;
  --g11-general-ui-font: Arial, Helvetica, sans-serif;
  --g11-general-question-size: 19px;
  --g11-general-question-line: 1.42;
  --g11-general-passage-size: 20px;
  --g11-general-passage-line: 1.5;
  --g11-general-box-size: 19px;
  --g11-general-box-line: 1.38;
  --g11-general-input-size: 18px;
  --g11-general-title-size: 24px;
  --g11-general-section-size: 22px;
  --g11-general-subhead-size: 21px;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-question-size);
  line-height: var(--g11-general-question-line);
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-passage-size);
  line-height: var(--g11-general-passage-line);
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-page,
  .manual-listening-notes,
  .manual-listening-option-box,
  .cd-completion-box,
  .cd-option-box,
  .cd-reading-table,
  .manual-question-table,
  .g11-flowchart,
  .g11-flow-box,
  .g11-heading-box,
  .g11-summary,
  .g11-tf-key
),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .g11-question-doc,
  .cd-completion-box,
  .cd-option-box,
  .cd-reading-table,
  .manual-question-table,
  .g11-flowchart,
  .g11-flow-box,
  .g11-heading-box,
  .g11-summary,
  .g11-tf-key
) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-box-size);
  line-height: var(--g11-general-box-line);
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.g11-reading-doc, .cd-passage-text) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-passage-size);
  line-height: var(--g11-general-passage-line);
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h2, h3, .g11-heading-3, .manual-listening-centered-title),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-pane, .cd-question-pane) :is(h2, h3, .g11-heading-3, .g11-banner-heading) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-title-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h4, .g11-heading-4),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-pane, .cd-question-pane) :is(h4, .g11-heading-4) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-section-size);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h5, h6, .cd-completion-title),
#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h5, h6, .cd-completion-title) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-subhead-size);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"], textarea) {
  font-family: var(--g11-general-source-font);
  font-size: var(--g11-general-input-size);
  line-height: 1.2;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-part-nav, .cd-module-controls, .cd-statusbar) {
  font-family: var(--g11-general-ui-font);
  font-size: 16px;
  line-height: 1.25;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .a7-inline-passage-translation {
  display: block !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  margin: 6px 0 12px !important;
  padding: 6px 10px !important;
  column-span: all;
  break-inside: avoid;
  clear: both;
  font-family: var(--g11-general-ui-font);
  font-size: 0.86em !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere;
  writing-mode: horizontal-tb !important;
}

#examView.general-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .g11-letter-block > .a7-inline-passage-translation {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .a11-centered,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .centered,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .manual-listening-centered-title,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a11-centered,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .centered,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .manual-listening-centered-title {
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper table.a11-key-table,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane table.a11-key-table,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .a11-heading-list,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a11-heading-list,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .a11-diagram-answer-card,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a11-diagram-answer-card {
  margin-left: 0;
  margin-right: 0;
}

#examView.academic-exam.book-11.test-2.module-listening .cd-paper .a11-theatre-plan,
#examView.academic-exam.book-11.test-2.module-listening .cd-paper .a11-map-answers {
  margin-left: 0;
  margin-right: 0;
}

#examView.academic-exam.book-11.test-2.module-listening .cd-paper .a11-map-answers {
  width: min(620px, 100%);
  grid-template-columns: repeat(2, minmax(0, 300px));
  gap: 14px 24px;
  justify-items: start;
}

#examView.academic-exam.book-11.test-2.module-listening .cd-paper .a11-map-answers p {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0 !important;
  white-space: nowrap;
}

#examView.academic-exam.book-11.test-2.module-listening .cd-paper .a11-map-answers .inline-answer {
  width: 96px !important;
  min-width: 96px;
  max-width: 96px;
  margin: 0 !important;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper table th,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper table td,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane table th,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane table td,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .a11-heading-list h4,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a11-heading-list h4 {
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a11-scoped-source-font: "Times New Roman", Times, serif;
  --a11-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a11-scoped-question-size: 19px;
  --a11-scoped-question-line: 1.42;
  --a11-scoped-passage-size: 20px;
  --a11-scoped-passage-line: 1.5;
  --a11-scoped-box-size: 19px;
  --a11-scoped-box-line: 1.38;
  --a11-scoped-input-size: 18px;
  --a11-scoped-title-size: 24px;
  --a11-scoped-section-size: 22px;
  --a11-scoped-subhead-size: 21px;
  --a11-scoped-control-size: 20px;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-question-size);
  line-height: var(--a11-scoped-question-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-passage-size);
  line-height: var(--a11-scoped-passage-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .a11-geo-table th,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .a11-geo-table td {
  font-size: var(--a11-scoped-box-size);
  line-height: var(--a11-scoped-box-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-size: var(--a11-scoped-question-size);
  line-height: var(--a11-scoped-question-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, div, label, span, td, th, figcaption),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, div, label, span, td, th, figcaption),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, div, label, span, td, th, figcaption) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-pane, .cd-question-pane) :is(h3, h4) {
  font-size: var(--a11-scoped-subhead-size);
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-passage-text {
  font-size: var(--a11-scoped-passage-size);
  line-height: var(--a11-scoped-passage-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .inline-answer,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .inline-answer {
  font-size: var(--a11-scoped-input-size);
  line-height: 1.2;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .a11-heading-list, .a11-diagram-answer-card, .a11-data-table, .a11-geo-table),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .a11-heading-list, .a11-diagram-answer-card, .a11-data-table, .a11-geo-table) {
  max-width: 100%;
  box-sizing: border-box;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-centered-title,
  .cd-completion-title,
  .g11-heading,
  .g11-heading-3,
  .g11-banner-heading,
  .g11-title-subtitle,
  .g11-heading-box h4,
  .g11-flow-box .g11-heading,
  .g11-summary .g11-heading,
  .g11t2-youth-council > h5,
  .g11t2-concert-hall-notes > h5,
  .g11t3-ethnography-notes h3,
  .g11t4-soil-notes h3
),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .manual-listening-centered-title,
  .cd-completion-title,
  .g11-heading,
  .g11-heading-3,
  .g11-banner-heading,
  .g11-title-subtitle,
  .g11-heading-box h4,
  .g11-flow-box .g11-heading,
  .g11-summary .g11-heading
) {
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .manual-listening-notes,
  .manual-listening-option-box,
  .manual-question-table,
  .cd-reading-table,
  .g11-flowchart,
  .g11-narrow-flowchart,
  .g11-heading-box,
  .g11-summary,
  .g11-tf-key,
  .g11t1-map-figure,
  .g11t1-map-answer-list,
  .g11t2-youth-council,
  .g11t2-concert-hall-notes,
  .g11t2-theatre-map,
  .g11t2-map-answer-list,
  .g11t3-example-box,
  .g11t3-ethnography-notes,
  .g11t4-museum-plan,
  .g11t4-map-answer-list,
  .g11t4-soil-notes
),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .manual-question-table,
  .cd-reading-table,
  .g11-flowchart,
  .g11-narrow-flowchart,
  .g11-heading-box,
  .g11-summary,
  .g11-tf-key
) {
  margin-left: 0;
  margin-right: 0;
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-box-size);
  line-height: var(--a11-scoped-box-line);
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .manual-listening-notes,
  .manual-listening-option-box,
  .manual-question-table,
  .cd-reading-table,
  .g11-flowchart,
  .g11-heading-box,
  .g11-summary
) :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .manual-question-table,
  .cd-reading-table,
  .g11-flowchart,
  .g11-heading-box,
  .g11-summary
) :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-align: left;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h2, h3, .g11-heading-3, .g11-banner-heading, .manual-listening-centered-title),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-pane, .cd-question-pane) :is(h2, h3, .g11-heading-3, .g11-banner-heading) {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-title-size);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h4, .g11-heading-4),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-pane, .cd-question-pane) :is(h4, .g11-heading-4, .cd-reading-section > h3) {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-section-size);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h5, h6, .cd-completion-title, .g11-title-subtitle),
#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h5, h6, .cd-completion-title, .g11-title-subtitle) {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-subhead-size);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.a11-choice-question label, .a11-choice-set label, .a11-judgement-options label, .choice-row label, .option-label, .cd-choice-option, .manual-choice-option) {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-question-size);
  line-height: var(--a11-scoped-question-line);
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"], textarea) {
  font-family: var(--a11-scoped-source-font);
  font-size: var(--a11-scoped-input-size);
  line-height: 1.2;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a11-scoped-control-size);
  height: var(--a11-scoped-control-size);
  flex: 0 0 auto;
}

#examView.academic-exam.book-11:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-part-nav, .cd-module-controls, .cd-statusbar) {
  font-family: var(--a11-scoped-ui-font);
  font-size: 16px;
  line-height: 1.25;
}

.a11-heading-list {
  width: min(620px, 100%);
  margin: 14px auto 18px;
  padding: 8px 12px;
  border: 1px solid #333;
  font-family: "Times New Roman", Times, serif;
}

.a11-heading-list h4 {
  margin: 0 0 8px;
  text-align: center;
}

.a11-heading-list table,
.a11-heading-list th,
.a11-heading-list td {
  border: 0;
  background: transparent;
}

.a11-heading-list th {
  width: 34px;
  padding: 2px 10px 2px 0;
  text-align: right;
  font-weight: 400;
}

.a11-heading-list td {
  padding: 2px 0;
}

.a11-dates-table,
.a11-word-box {
  width: min(520px, 100%);
  margin: 10px auto 18px;
  font-family: "Times New Roman", Times, serif;
}

.a11-word-box td {
  width: 33%;
}

.a11-language-charts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
  margin: 18px auto;
}

.a11-language-charts figure {
  margin: 0;
}

.a11-language-charts img {
  display: block;
  width: 100%;
}

.a11-example-box {
  width: min(520px, 100%);
  margin: 10px auto 18px;
  padding: 10px 14px;
  border: 1px solid #666;
  background: transparent;
}

.a11-bordered-notes {
  margin: 12px 0 16px;
  padding: 14px 18px;
  border: 1px solid #555;
  background: transparent;
}

.a11-bordered-notes-start {
  margin-bottom: 0;
  border-bottom: 0;
}

.a11-bordered-notes-continuation {
  margin-top: -8px;
  border-top: 0;
}

.a11-data-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0 18px;
  font-family: "Times New Roman", Times, serif;
}

.a11-data-table th,
.a11-data-table td {
  border: 1px solid #555;
  padding: 8px 10px;
  vertical-align: top;
}

.a11-data-table th {
  text-align: left;
}

.a11-t3-co2-graph {
  margin: 18px auto 8px;
  max-width: 520px;
  text-align: center;
}

.a11-t3-co2-graph figcaption {
  margin-bottom: 6px;
  font-family: "Times New Roman", Times, serif;
  font-weight: 700;
}

.a11-t3-co2-graph img {
  display: block;
  width: 100%;
  height: auto;
}

.a11-speaking-timing-unboxed {
  border: 0;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 760px) {
  .a11-language-charts,
  .a11-speaking-t2-layout {
    grid-template-columns: 1fr;
  }
}

.a11-scientists {
  width: min(360px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.a11-chart-title {
  margin-top: 22px;
  text-align: center;
}

.a11-speaking-card-layout {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.85fr);
}

.centered {
  text-align: center;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-insurance {
  width: min(690px, 100%);
  margin: 10px 0 18px;
  border: 1px solid #222;
  border-collapse: collapse;
  table-layout: fixed;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-insurance th,
#examView.academic-exam.book-7.test-2.module-listening .a7-car-insurance td {
  border: 0;
  vertical-align: top;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-col-left {
  width: 27%;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-col-right {
  width: 46%;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-insurance th {
  padding: 5px 10px;
  border-bottom: 1px solid #222;
  text-align: center;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-example-row td {
  padding: 9px 14px 7px;
  border-bottom: 1px solid #222;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-example-box {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  width: min(420px, 72%);
  padding: 8px 12px;
  border: 1px solid #222;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-left-block {
  width: 54%;
  padding: 5px 14px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-right-block {
  width: 46%;
  padding: 43px 16px 5px 18px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-gap-small {
  margin-top: 14px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-previous-block {
  padding-top: 18px;
  padding-bottom: 15px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-driver-block {
  padding-top: 8px;
  padding-bottom: 12px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-driver-block > div {
  margin: 0 0 5px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-recommended {
  margin-top: 18px !important;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-indent {
  display: inline-block;
  padding-left: 22px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-claims-block {
  margin-top: 33px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-details-block,
#examView.academic-exam.book-7.test-2.module-listening .a7-car-uses-block {
  margin-top: 24px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-insurance .inline-answer {
  width: 108px;
  min-width: 0;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-check {
  position: relative;
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-left: 5px;
  border: 1px solid #222;
  vertical-align: -2px;
}

#examView.academic-exam.book-7.test-2.module-listening .a7-car-check.is-checked::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 1px;
  width: 5px;
  height: 9px;
  border: solid #222;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.a7-key-plain {
  width: min(560px, 100%);
  margin: 10px auto;
}

.a7-key-plain p {
  margin: 4px 0;
}

.a7t2-ending-list {
  width: min(560px, 100%);
  margin: 14px auto 18px;
  padding: 12px 18px;
  border: 2px solid #222;
}

.a7t2-ending-list p {
  margin: 0;
}

.a7t2-map-wrap {
  position: relative;
  max-width: 560px;
  margin: 18px auto 8px;
}

.a7t2-map-wrap img {
  width: 100%;
}

.a7t2-map-input {
  position: absolute;
  width: 150px;
}

.a7t2-map-input .inline-answer {
  width: 100%;
  background: rgba(255, 255, 255, 0.9);
}

.a7t2-map-q11 {
  left: 22%;
  top: 83%;
}

.a7t2-map-q12 {
  left: 64%;
  top: 19%;
}

.a7-example-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: min(430px, 100%);
  border: 1.5px solid #222;
  padding: 8px 12px;
  margin: 10px 0 12px 28px;
  font-size: 0.94em;
}

.a7t3-position-table,
.a7t3-student-details,
.a7t3-itinerary {
  width: min(620px, 100%);
}

.a7t3-position-table th,
.a7t3-itinerary th {
  background: #d9d9d9;
}

.a7t3-student-details th {
  text-align: center;
}

.a7t3-itinerary {
  margin-left: auto;
  margin-right: auto;
}

.a7t3-pie-row {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
  margin: 8px 0 14px 28px;
}

.a7t3-pie-row label {
  display: flex;
  align-items: center;
  gap: 6px;
}

.a7t3-pie-row figure {
  margin: 0;
  text-align: center;
}

.a7t3-pie-row img {
  width: 78px;
  height: 78px;
  object-fit: contain;
}

.a7t3-pie-row figcaption {
  font-weight: 600;
}

.a7t3-pie-legend {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  line-height: 1.2;
}

.a7t3-pie-legend::before {
  content: "";
  width: 13px;
  height: 13px;
  border: 1px solid #222;
  background: #a9a9a9;
}

.a7t3-notes {
  width: min(620px, 100%);
  margin: 22px auto;
}

.a7t3-cycle-wrap {
  position: relative;
  width: min(680px, 100%);
  margin: 12px auto;
  border: 1.5px solid #222;
  padding: 8px;
}

.a7t3-cycle-wrap h3 {
  margin: 0 0 6px;
  text-align: center;
}

.a7t3-cycle-wrap img {
  width: 100%;
  display: block;
}

.a7t3-cycle-input {
  position: absolute;
  transform: translate(-50%, -50%);
}

.a7t3-cycle-input .inline-answer {
  width: 132px;
}

.a7t3-cycle-q23 {
  left: 22%;
  top: 75%;
}

.a7t3-cycle-q24 {
  left: 50%;
  top: 91%;
}

.a7t3-cycle-q25 {
  left: 79%;
  top: 75%;
}

.a7t3-cycle-q23 .inline-answer,
.a7t3-cycle-q25 .inline-answer {
  width: 118px;
}

.a7t3-classification-box {
  border: 1.5px solid #222;
  width: 260px;
  margin: 14px auto 22px;
  padding: 8px 18px;
}

.a7t3-classification-box p {
  margin: 2px 0;
}

#examView.academic-exam.book-7.test-3.module-listening .a7t3-cycle-answer-row {
  justify-content: space-around;
  width: min(680px, 100%);
  margin-left: 0;
  margin-right: auto;
}

#examView.academic-exam.book-7.test-3.module-listening .a7t3-classification-box {
  margin-left: 0;
  margin-right: auto;
}

.a7t3-line-answer {
  display: grid;
  grid-template-columns: minmax(230px, 1fr) 180px;
  align-items: center;
  gap: 12px;
  max-width: 620px;
  margin: 8px 0;
}

.a7t3-note-box {
  border: 1.5px solid #222;
  padding: 14px 18px;
  width: min(650px, 100%);
}

.a7t3-note-box ul {
  margin-top: 4px;
}

.a7t3-passage-image {
  margin: 0 14px 8px 0;
}

.a7t3-passage-image img {
  display: block;
  max-width: 100%;
}

.a7t3-ant-image {
  float: right;
  width: 210px;
}

.a7t3-forest-image {
  float: left;
  width: 180px;
}

.a7t3-word-box,
.a7t3-headings-box,
.a7t3-statements-box {
  border: 1.5px solid #222;
  padding: 12px 18px;
  margin: 16px auto;
  width: min(620px, 100%);
}

.a7t3-word-box p,
.a7t3-headings-box p,
.a7t3-statements-box p {
  margin: 4px 0;
}

.a7t3-headings-box h4 {
  text-align: center;
  margin-top: 0;
}

.a7t3-example-table,
.a7t3-route-table,
.a7t3-wave-table {
  width: min(560px, 100%);
}

.a7t3-pop-map {
  width: min(450px, 100%);
  margin: 12px auto;
}

.a7t3-pop-map img {
  width: 100%;
}

.a7t3-writing-chart img {
  max-width: 560px;
}

.a7t2-attractions {
  width: min(760px, 100%);
}

.a7t2-attractions td,
.a7t2-attractions th {
  vertical-align: top;
}

.a7t2-short-answer {
  margin: 10px 0 12px;
}

.a7t2-short-answer p {
  margin: 0 0 4px;
}

.a7t2-short-answer .inline-answer {
  display: block;
  width: min(560px, 100%);
  margin-left: 44px;
}

.a7t2-pagoda-title {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin: 10px 0 16px;
}

.a7t2-pagoda-title figure {
  margin: 0;
}

.a7t2-pagoda-title img {
  display: block;
  width: 100%;
  border: 1px solid #444;
}

.a7t2-pagoda-title h2 {
  margin: 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 34px;
  line-height: 0.95;
  text-align: center;
}

.cd-reading-image.right {
  float: right;
  width: min(170px, 36%);
  margin: 0 0 10px 18px;
}

.a7t2-writing-chart img {
  max-width: 430px;
  margin: 10px auto 0;
}

.pdf-passage-instruction {
  margin: 0 0 12px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  font-style: italic;
  line-height: 1.35;
}

.pdf-framed-passage {
  margin: 14px 0 20px;
  padding: 24px 30px;
  border: 2px solid #555555;
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.35;
}

.pdf-source-box {
  max-width: 760px;
  border-color: #2f2f2f;
  border-radius: 16px;
  background: #ffffff;
}

.g8-source-frame {
  margin: 14px 0 20px;
  padding: 18px 22px;
  border: 1px solid #222222;
  border-radius: 0;
  font-family: "Times New Roman", Times, serif;
  line-height: 1.35;
}

.g8-plain-option-list {
  margin: 12px 0;
  padding-left: 42px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.35;
}

.g8-plain-option-list p {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 14px;
  margin: 2px 0;
}

.g8-judgement-key {
  margin: 12px 0 18px 42px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.35;
}

.g8-judgement-key p {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 18px;
  margin: 0;
}

.g8-judgement-questions {
  margin-top: 12px;
}

.g8-judgement-question {
  margin: 0 0 8px;
}

.g8-judgement-question p {
  margin: 0 0 3px;
  line-height: 1.28;
}

.g8-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding-left: 16px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.2;
}

.g8-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

#examView.book-8:is(.module-listening, .module-reading) :is(
  .manual-listening-page,
  .manual-reading-questions,
  .cd-question-card,
  .cd-question-prompt,
  .cd-question-text,
  .cd-question-copy,
  .cd-two-answer-question,
  .cd-bullet-line,
  .cd-choice-option
) {
  text-align: left;
}

#examView.book-8:is(.module-listening, .module-reading) :is(
  .g8-source-frame,
  .g-source-table,
  .cd-completion-box,
  .cd-option-box,
  .pdf-option-list-box,
  .matching-option-box
) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.book-8:is(.module-listening, .module-reading) :is(
  .g8-source-frame,
  .g-source-table,
  .cd-completion-box,
  .cd-option-box,
  .pdf-option-list-box,
  .matching-option-box
) :is(h3, h4, h5, h6, p, li, th, td, caption, figcaption, .cd-completion-title, .g-table-main-title) {
  text-align: left;
}

#examView.book-8:is(.module-listening, .module-reading) .g8-judgement-key {
  margin-left: 0;
  text-align: left;
}

#examView.book-8:is(.module-listening, .module-reading) .g8-plain-option-list {
  padding-left: 0;
  text-align: left;
}

#examView.book-8:is(.module-listening, .module-reading) :is(.g8-judgement-options, .diagram-answer-row) {
  justify-content: flex-start;
}

.g8-speaking-timing-plain {
  padding: 0;
  border: 0;
}

.pdf-source-box .cd-passage-text {
  max-width: none;
}

.pdf-framed-passage h4 {
  margin: 0 0 16px;
  text-align: center;
  font-size: 24px;
  font-style: italic;
  font-weight: 800;
}

.pdf-framed-passage h3 {
  margin: 8px 0 22px;
  text-align: center;
  font-size: 30px;
  font-weight: 800;
}

.pdf-framed-passage p {
  margin: 0 0 14px;
}

.pdf-framed-passage ul {
  margin: 4px 0 0 0;
  padding: 0;
  list-style: none;
}

.pdf-framed-passage li {
  position: relative;
  margin: 8px 0;
  padding-left: 26px;
}

.pdf-framed-passage li::before {
  content: "*";
  position: absolute;
  left: 0;
  top: 0;
}

.a4t1-source-frame {
  margin: 12px 0 18px;
  padding: 16px 18px;
  border: 2px solid #222222;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.22;
}

.a4t1-source-frame .cd-passage-text {
  max-width: none;
}

.a4t1-rainforest-frame .a4t1-rainforest-text {
  display: block;
}

.a4t1-rainforest-frame .a4t1-rainforest-text > .cd-passage-paragraph {
  margin: 0 0 10px;
}

.a4t1-source-frame .cd-passage-text p {
  margin-bottom: 10px;
}

.a4t1-float-figure {
  float: right;
  width: 34%;
  margin: 0 0 10px 18px;
}

.a4t1-float-figure .cd-reading-image {
  margin: 0;
}

.a4t1-float-figure img {
  width: 100%;
  height: auto;
}

.a4t1-whales-panel {
  margin: 12px 0 18px;
  padding: 18px;
  background: #d9d9d9;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.25;
}

.a4t1-whales-panel h3 {
  margin: 0 0 10px;
  font-size: 30px;
  line-height: 1;
  font-weight: 800;
}

.a4t1-whales-subtitle {
  margin: 0 0 14px;
  font-weight: 700;
}

.a4t1-whales-panel .cd-reading-image {
  margin: 10px auto 16px;
}

.a4t1-whales-panel .cd-passage-text {
  max-width: none;
}

.a4t2-play-passage {
  max-width: none;
}

.a4t2-play-frame {
  max-width: none;
  margin: 12px 0 18px;
  padding: 14px 20px;
  border: 2px solid #222222;
  border-radius: 0;
  font-size: 16px;
  line-height: 1.22;
}

.a4t2-play-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 32%);
  align-items: start;
  margin: -2px -2px 14px 0;
}

.a4t2-play-heading {
  padding: 8px 18px 8px 0;
}

.a4t2-play-heading h3 {
  margin: 0 0 14px;
  text-align: left;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 30px;
  font-weight: 900;
  line-height: 1.18;
}

.a4t2-play-subtitle,
.a4t2-play-byline {
  margin: 0;
  font-weight: 800;
}

.a4t2-play-figure {
  margin: -14px -20px 0 0;
  border-left: 2px solid #222222;
  border-bottom: 2px solid #222222;
}

.a4t2-play-figure .cd-reading-image {
  margin: 0;
}

.a4t2-play-figure .cd-reading-image img {
  width: 100%;
  border: 0;
}

.a4t2-play-frame .cd-passage-text,
.a4t2-play-continuation .cd-passage-text {
  max-width: none;
}

.a4t2-play-frame .cd-passage-paragraph {
  margin-bottom: 14px;
}

.a4t2-play-frame .cd-passage-lettered {
  align-items: baseline;
  gap: 8px;
}

.a4t2-play-frame .cd-passage-letter {
  min-width: 16px;
  font-weight: 800;
}

.a4t1-listening-note-page {
  max-width: 900px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.25;
}

.a4t1-listening-note-page h4,
.a4t1-listening-note-page h5 {
  margin: 0 0 12px;
}

.a4t1-urban-landscape-box .a4t1-urban-dash-list {
  list-style: none;
  margin: 4px 0 0 0;
  padding-left: 18px;
}

.a4t1-urban-landscape-box .a4t1-urban-dash-list li {
  position: relative;
  margin: 2px 0;
  padding-left: 14px;
}

.a4t1-urban-landscape-box .a4t1-urban-dash-list li::before {
  content: "-";
  position: absolute;
  left: 0;
}

.a4t1-social-note {
  width: min(760px, 100%);
  margin: 14px auto 18px;
  border: 2px solid #222222;
  background: #ffffff;
}

.a4t1-social-note h3 {
  margin: 0;
  padding: 12px 16px 8px;
  border-bottom: 1px solid #222222;
  text-align: center;
  font-size: 28px;
  letter-spacing: 0;
}

.a4t1-social-example {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 12px 16px;
  padding: 10px 14px;
  border: 1px solid #333333;
  background: #e1e1e1;
}

.a4t1-social-grid {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  border-top: 1px solid #222222;
}

.a4t1-social-grid > * {
  margin: 0;
  padding: 10px 14px;
  border-bottom: 1px solid #999999;
}

.a4t1-social-grid > :nth-child(2n + 1) {
  font-weight: 700;
}

.a4t1-social-grid > :nth-last-child(-n + 2) {
  border-bottom: 0;
}

.a4t1-riverside-page,
.a4t1-map-page,
.a4t1-extension-page,
.a4t1-article-page,
.a4t1-chart-page {
  max-width: 860px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a4t1-riverside-page h3 {
  margin: 24px 0;
  text-align: center;
  font-size: 27px;
  letter-spacing: 0;
}

.a4t1-extension-example-box {
  width: min(720px, 100%);
  margin: 28px 0 26px;
  padding: 10px 12px;
  border: 2px solid #222222;
  background: #d9d9d9;
}

.a4t1-extension-example-box p {
  margin: 0 0 8px;
}

.a4t1-extension-example-options {
  margin-left: 36px;
}

.a4t1-extension-example-options p {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  margin: 1px 0;
}

.a4t2-tourist-page {
  max-width: 860px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a4t2-cafe-page,
.a4t3-accommodation-page {
  max-width: 860px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.32;
}

.a4-choice-example-box {
  width: min(720px, 100%);
  margin: 28px 0 26px;
  padding: 10px 12px;
  border: 2px solid #222222;
  background: #d9d9d9;
}

.a4-choice-example-box p {
  margin: 0 0 6px;
}

.a4-choice-example-options {
  margin-left: 36px;
}

.a4-choice-example-options p {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
}

.a4t2-tourist-word-box {
  width: min(360px, 100%);
  margin: 26px auto 28px;
  padding: 8px 18px;
  border: 1px solid #222222;
  text-align: center;
}

.a4t2-tourist-word-box p {
  margin: 0;
  line-height: 1.25;
}

.a4t3-accommodation-box {
  width: min(680px, 100%);
  margin: 18px auto 20px;
  padding: 0 18px 24px;
  border: 1px solid #222222;
  background: #ffffff;
}

.a4t3-accommodation-box h3 {
  margin: 0;
  padding: 14px 8px;
  text-align: center;
  font-size: 30px;
  line-height: 1;
}

.a4t3-accommodation-example {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
  padding: 12px 18px;
  border: 1px solid #333333;
  background: #d9d9d9;
}

.a4t3-accommodation-example p {
  margin: 0;
}

.a4t3-accommodation-grid {
  display: grid;
  grid-template-columns: 260px minmax(280px, 1fr);
  gap: 22px 28px;
  padding: 28px 0 0;
}

.a4t3-accommodation-grid p {
  margin: 0;
}

.a4t4-goodbye-page,
.a4t4-sharks-page {
  max-width: 900px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.28;
}

.a4t4-goodbye-box,
.a4t4-sharks-box {
  width: min(760px, 100%);
  margin: 18px auto 20px;
  border: 2px solid #222222;
  background: #ffffff;
}

.a4t4-goodbye-box h3,
.a4t4-sharks-box h3 {
  margin: 0;
  padding: 12px 16px 10px;
  text-align: center;
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0;
}

.a4t4-goodbye-example {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin: 10px 14px 12px;
  padding: 10px 12px;
  border: 1px solid #333333;
  background: #d9d9d9;
}

.a4t4-goodbye-example p {
  margin: 0;
}

.a4t4-goodbye-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.2fr);
  gap: 4px 18px;
  padding: 0 16px 18px;
}

.a4t4-goodbye-grid p,
.a4t4-goodbye-grid ul {
  margin: 0;
}

.a4t4-goodbye-grid ul {
  padding-left: 18px;
  list-style: none;
}

.a4t4-goodbye-grid li::before {
  content: "- ";
}

.a4t4-sharks-box h3 {
  border-bottom: 2px solid #222222;
  font-size: 42px;
}

.a4t4-sharks-grid {
  display: grid;
  grid-template-columns: 170px 180px minmax(220px, 1fr);
  gap: 10px 12px;
  padding: 18px 22px 22px;
}

.a4t4-sharks-grid strong {
  font-size: 19px;
}

.a4t1-map-figure,
.a4t1-chart-figure {
  position: relative;
  display: inline-block;
  margin: 18px 0 22px;
  max-width: 100%;
}

.a4t1-map-figure img,
.a4t1-chart-figure img {
  display: block;
  max-width: 100%;
  height: auto;
}

.a4t1-overlay-answer {
  position: absolute;
  transform: translate(-50%, -50%);
}

.a4t1-overlay-answer .inline-answer {
  width: 100%;
  min-width: 54px;
  height: 20px;
  padding: 1px 4px;
  background: rgba(255, 255, 255, 0.86);
  font-size: 13px;
}

.a4t1-recommendation-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 4px 36px;
  width: min(100%, 520px);
  margin: 16px 0 18px 42px;
  padding: 12px 18px;
  border: 1px solid #222222;
  background: #ffffff;
}

.a4t1-recommendation-box p {
  margin: 0;
}

.a4t1-example-answer {
  display: grid;
  grid-template-columns: 88px minmax(180px, auto) 72px 40px;
  gap: 10px;
  align-items: baseline;
  width: min(100%, 520px);
  margin: 14px 0 10px 42px;
}

.a4t1-recommendation-answers {
  width: min(100%, 520px);
  margin-left: 42px;
}

.a4t1-recommendation-answers p {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) 36px 170px;
  gap: 8px;
  align-items: center;
  margin: 7px 0;
}

.a4t1-recommendation-answers .inline-answer {
  width: 100%;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane .cd-question-line:is(
  [data-reading-question-line="9"],
  [data-reading-question-line="10"],
  [data-reading-question-line="11"],
  [data-reading-question-line="12"],
  [data-reading-question-line="13"]
) {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  column-gap: 8px;
  row-gap: 4px;
  align-items: start;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane .cd-question-line:is(
  [data-reading-question-line="9"],
  [data-reading-question-line="10"],
  [data-reading-question-line="11"],
  [data-reading-question-line="12"],
  [data-reading-question-line="13"]
) .cd-question-copy {
  min-width: 0;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane .cd-question-line:is(
  [data-reading-question-line="9"],
  [data-reading-question-line="10"],
  [data-reading-question-line="11"],
  [data-reading-question-line="12"],
  [data-reading-question-line="13"]
) .inline-answer {
  justify-self: start;
}

.a4t1-diagram-row {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 28px;
  margin: 18px 0 6px;
}

.a4t1-diagram-row .cd-reading-image {
  margin: 0;
}

.a4t1-diagram-row .cd-reading-image img {
  width: 120px;
  max-width: 100%;
}

.a4t1-movement-option-box {
  max-width: 340px;
  margin: 10px auto 18px;
}

.a9-passage-source-frame {
  margin: 12px 0 18px;
  padding: 14px 18px;
  border: 1px dotted #555555;
  background: #ffffff;
}

.a9-passage-source-frame h2,
.a9-passage-source-frame h3 {
  text-align: center;
}

.a9-perkin-frame {
  column-count: 2;
  column-gap: 28px;
  column-rule: 0;
  font-size: 15px;
  line-height: 1.22;
}

.a9-perkin-frame h2,
.a9-perkin-frame h3 {
  column-span: all;
}

.a9-paragraph-label {
  display: inline-block;
  min-width: 1.4em;
  font-weight: 700;
}

.cd-reading-table.a9-definition-table th,
.cd-reading-table.a9-definition-table td {
  border: 0;
  padding: 2px 10px 2px 0;
}

.cd-reading-table.a9-definition-table td:first-child {
  width: 86px;
  font-weight: 700;
}

.cd-reading-table.a9-judgement-key {
  width: auto;
  max-width: 100%;
  margin: 2px 0 8px 52px;
  border: 0;
  table-layout: auto;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  font-style: italic;
  line-height: 1.2;
}

.cd-reading-table.a9-judgement-key th,
.cd-reading-table.a9-judgement-key td {
  border: 0 !important;
  padding: 0 12px 0 0;
  vertical-align: baseline;
}

.cd-reading-table.a9-judgement-key td:first-child {
  width: 90px;
  font-weight: 800;
}

.a9-judgement-choice-set {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 2px 0 4px 17px;
  font-family: "Times New Roman", Times, serif;
  line-height: 1.2;
}

.a9-judgement-choice-set label {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  min-height: 18px;
  margin: 0;
}

.a9-judgement-choice-set input[type="radio"] {
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
  flex: 0 0 auto;
}

.a9t3-question-list .a9-judgement-choice-set {
  margin-left: 0;
}

.a9t3-question-list li:has(.a9-judgement-choice-set) {
  margin: 5px 0 7px;
}

.a9-job-enquiry {
  max-width: 900px;
  margin: 12px 0 18px;
  border: 2px solid #222222;
  font-family: "Times New Roman", Times, serif;
  background: #ffffff;
}

.a9-job-enquiry h4 {
  margin: 0;
  padding: 10px 16px;
  border-bottom: 1px solid #222222;
  text-align: center;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 0;
}

.a9-job-example {
  padding: 12px 34px 14px;
  border-bottom: 1px solid #222222;
}

.a9-job-example p,
.a9-job-enquiry li {
  margin: 0 0 8px;
}

.a9-job-bullet::before,
.a9-job-enquiry > ul > li::before {
  content: "\2022";
  display: inline-block;
  width: 22px;
  margin-left: -22px;
}

.a9-job-enquiry > ul {
  margin: 0;
  padding: 16px 34px 18px 58px;
  list-style: none;
}

.a9-job-enquiry ul ul {
  margin: 6px 0 0 0;
  padding-left: 28px;
  list-style: none;
}

.a9-job-enquiry ul ul li::before {
  content: "-";
  display: inline-block;
  width: 18px;
  margin-left: -18px;
}

.a9-job-enquiry .inline-answer {
  min-width: 155px;
  height: 20px;
  border: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
}

.g11-reading-doc,
.g11-question-doc {
  max-width: 820px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 1.34;
  color: #171717;
}

.g11-reading-doc {
  font-family: "Times New Roman", Times, serif;
}

.g11-reading-doc p,
.g11-question-doc p {
  margin: 0 0 12px;
}

.g11-reading-doc ul,
.g11-question-doc ul {
  margin: 0 0 14px 22px;
  padding: 0;
}

.g11-reading-doc li,
.g11-question-doc li {
  margin: 7px 0;
}

.g11-heading {
  margin: 12px 0 8px;
  line-height: 1.18;
}

.g11-heading-3 {
  font-size: 25px;
  font-weight: 800;
  text-align: center;
}

.g11-heading-4 {
  font-size: 18px;
  font-weight: 800;
}

.g11-instruction {
  font-style: italic;
}

.g11-title-subtitle {
  margin: -2px auto 14px;
  max-width: 760px;
  text-align: center;
}

.g11-banner-heading {
  margin: 14px 0 18px;
  padding: 10px 16px;
  background: #d8d8d8;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 28px;
  font-weight: 900;
  letter-spacing: 1px;
  text-align: center;
}

.g11-letter-list {
  display: grid;
  gap: 12px;
}

.g11-letter-block {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

.g11-letter-block > strong {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
}

.g11-letter-block p {
  margin: 0;
}

#examView.general-exam.book-11.test-1.module-reading
  #reading-passage-3
  .g11-reading-doc
  > p:first-child:not(.g11-instruction) {
  box-sizing: border-box;
  padding-left: 42px;
}

.g-letter-title-block {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  align-items: baseline;
  margin: 10px 0 4px;
}

.g-letter-title-block > strong {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 900;
}

.g-letter-title-block h4 {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.25;
}

.g11-square-box {
  border-radius: 0;
}

.g11-rounded-box {
  border-radius: 18px;
}

.g11-question-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 170px;
  gap: 8px;
  align-items: baseline;
  margin: 12px 0;
}

.g11-question-row .inline-answer,
.g11-inline-question .inline-answer,
.g11-flowchart .inline-answer,
.g11-summary .inline-answer {
  width: 170px;
  height: 24px;
  margin: 0 4px;
}

.g11-tf-key {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 4px 14px;
  width: min(100%, 540px);
  margin: 12px 0 24px 64px;
  font-style: italic;
}

.g11-tf-key strong {
  font-weight: 900;
}

.g11-judgement-key {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 4px 16px;
  width: min(100%, 620px);
  margin: 14px 0 24px;
  font-style: normal;
}

.g11-judgement-key div {
  display: contents;
}

.g11-judgement-key strong {
  font-weight: 900;
}

.g11-judgement-question {
  margin: 14px 0 16px;
}

.g11-judgement-question p {
  margin: 0 0 6px;
}

.g11-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-left: 28px;
}

.g11-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.g11-judgement-options input[type="radio"] {
  width: 20px;
  height: 20px;
  margin: 0;
}
.g11-flowchart {
  display: grid;
  gap: 8px;
  max-width: 760px;
}

.g11-narrow-flowchart {
  max-width: 520px;
  margin: 0 auto;
}

.g11-flow-box {
  border: 2px solid #333333;
  padding: 8px 10px;
  background: #ffffff;
}

.g11-flow-box .g11-heading {
  margin: 0 0 6px;
}

.g11-flow-box p {
  margin: 8px 0 0;
}

.g11-arrow {
  height: 34px;
  color: #4b4b4b;
  font-size: 34px;
  font-weight: 900;
  line-height: 30px;
  text-align: center;
}

.g11-arrow::before {
  content: "\2193";
}

.g11-inline-question {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: baseline;
  margin: 12px 0;
}

.g11-inline-question strong {
  min-width: 32px;
}

.g11-heading-box {
  width: min(100%, 520px);
  margin: 18px auto 26px;
  padding: 14px 22px;
  border: 1.8px solid #333333;
  background: #ffffff;
}

.g11-wide-heading-box {
  width: min(100%, 650px);
}

.g11-heading-box h4 {
  margin: 0 0 12px;
  text-align: center;
  font-size: 18px;
  font-weight: 900;
}

.g11-heading-box div {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  margin: 7px 0;
}

.g11-summary {
  font-size: 17px;
  line-height: 1.36;
}

.g-fallback-answer-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  margin: 14px 0;
  padding-top: 10px;
  border-top: 1px solid #d2d2d2;
  font-family: "Times New Roman", Times, serif;
}

.g-fallback-answer-controls label {
  display: inline-flex;
  gap: 8px;
  align-items: center;
}

.cd-reading-image {
  margin: 12px 0;
  text-align: center;
}

.cd-reading-image img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.cd-reading-image.small img {
  width: min(170px, 42%);
}

.cd-reading-image.medium img {
  width: min(330px, 72%);
}

.cd-reading-image.wide img {
  width: min(565px, 100%);
}

#examView.academic-exam.book-6.test-3.module-reading .a6t3-cr-flowchart {
  position: relative;
  width: min(330px, 100%);
  max-width: 330px;
  margin: 12px 0;
}

#examView.academic-exam.book-6.test-3.module-reading .a6t3-cr-flowchart img {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

#examView.academic-exam.book-6.test-3.module-reading .a6t3-cr-answer-slot.q38 {
  position: absolute;
  left: 24%;
  top: 41%;
  width: 126px;
  transform: translateY(-50%);
}

#examView.academic-exam.book-6.test-3.module-reading .a6t3-cr-answer-slot.q38 .inline-answer {
  width: 100%;
  min-width: 0;
  height: 18px;
  padding: 0 4px;
}

.cd-reading-table {
  width: 100%;
  margin: 12px 0;
  border-collapse: collapse;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.18;
}

.cd-reading-table th,
.cd-reading-table td {
  border: 1px solid #222222;
  padding: 6px 7px;
  text-align: left;
  vertical-align: top;
}

.cd-reading-table thead th {
  text-align: center;
  font-size: 17px;
}

.cd-reading-table.a19-chart-data-table th,
.cd-reading-table.a19-chart-data-table td {
  border: 0;
}

.cd-reading-table.a19-outer-border-form-table {
  border: 1px solid #222222;
}

.cd-reading-table.a19-outer-border-form-table th,
.cd-reading-table.a19-outer-border-form-table td {
  border: 0;
}

.a19-reading-article-title {
  margin: 22px auto 18px;
  max-width: 680px;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.15;
}

.a19-reading-article-subtitle {
  max-width: 700px;
  margin: -6px auto 20px;
  text-align: center;
  font-style: italic;
  font-size: 18px;
  line-height: 1.25;
}

.a15-reading-article-title {
  margin: 22px auto 18px;
  max-width: 700px;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2;
}

.a15-reading-article-subtitle {
  max-width: 700px;
  margin: -4px auto 18px;
  text-align: center;
  font-style: italic;
  font-size: 16px;
  line-height: 1.3;
}

.a19-reading-lettered {
  grid-template-columns: 32px minmax(0, 1fr);
  column-gap: 10px;
}

.a19-reading-lettered .cd-passage-letter {
  font-weight: 800;
}

.a19-manual-border-page {
  gap: 8px;
}

.a19-summary-box {
  margin-top: 12px;
  padding: 12px 14px;
}

.a19-phrase-list-box {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px 26px;
  width: min(100%, 620px);
  margin: 18px auto 22px;
  padding: 12px 18px;
}

.a19-phrase-list-box div,
.a19-flowchart-option-box div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 8px;
  align-items: baseline;
}

.a19-flowchart-page {
  max-width: 760px;
}

.a19-flowchart-option-box {
  width: min(230px, 72%);
  margin: 18px auto 26px;
  padding: 12px 18px;
}

.a19-flowchart {
  display: grid;
  justify-items: center;
  gap: 8px;
}

.a19-flow-step {
  width: min(100%, 680px);
  border: 1px solid #222222;
  padding: 12px 18px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a19-flow-arrow {
  font-size: 34px;
  line-height: 1;
  color: #333333;
}

.cd-reading-table tbody th {
  width: 76px;
  font-weight: 700;
}

.sense-table td:nth-child(2) {
  width: 110px;
}

.sense-table td:nth-child(3) {
  width: 82px;
}

.cd-reading-table .inline-answer {
  width: 150px;
  height: 22px;
  vertical-align: middle;
}

.g-source-table {
  max-width: 880px;
  margin: 16px auto;
  border: 2px solid #222222;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 1.25;
}

.g-source-table th,
.g-source-table td {
  border: 2px solid #222222;
  padding: 8px 10px;
}

.g-source-table thead th {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.15;
}

.g-source-table .g-table-main-title {
  font-size: 27px;
  text-align: center;
}

.g-source-table ul {
  margin: 0;
  padding-left: 22px;
}

.g-source-table li {
  margin: 0 0 13px;
}

.g-source-table li:last-child {
  margin-bottom: 0;
}

.g-source-table .inline-answer {
  width: 175px;
  height: 24px;
  margin: 2px 0;
  font-size: 16px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  margin: 12px 0 10px;
  border: 2px solid #111;
  font-size: 0.95em;
  line-height: 1.18;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table th,
#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table td {
  border: 2px solid #111;
  padding: 5px 7px;
  vertical-align: top;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:first-child th,
#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:nth-child(2) th:first-child,
#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:nth-child(3) th:first-child,
#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table tbody tr:nth-child(-n+3) td:first-child {
  background: #3b3b3b;
  color: #fff;
  font-weight: 700;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:first-child th {
  text-align: center;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:nth-child(2) th:not(:first-child),
#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table thead tr:nth-child(3) th:not(:first-child) {
  background: #fff;
  color: #111;
  text-align: center;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table tbody tr:nth-child(-n+3) td:not(:first-child) {
  text-align: center;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table tbody tr:nth-child(n+4) td {
  padding: 7px 9px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-supafone-table tbody tr:nth-child(n+4) strong {
  font-style: italic;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flowchart {
  width: min(880px, 100%);
  margin: 18px auto 20px;
  font-family: "Times New Roman", Times, serif;
  font-size: 19px;
  line-height: 1.22;
  color: #111;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flowchart > h4 {
  margin: 0 0 18px;
  text-align: center !important;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 32px;
  font-weight: 800;
  line-height: 1.15;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-body {
  display: flex;
  flex-direction: column;
  align-items: center;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box {
  border: 2px solid #111;
  background: #fff;
  box-sizing: border-box;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box p {
  margin: 0 0 14px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box p:last-child {
  margin-bottom: 0;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box ul {
  margin: 8px 0 0 44px;
  padding: 0;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box li {
  margin: 0 0 18px;
  padding-left: 2px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-box li:last-child {
  margin-bottom: 0;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-top {
  width: 360px;
  min-height: 220px;
  padding: 16px 16px 18px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-middle {
  width: 360px;
  min-height: 82px;
  padding: 14px 16px 12px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 22px;
  width: 100%;
  align-items: stretch;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-easy,
#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-complex {
  min-height: 170px;
  padding: 18px 14px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-complex ul {
  margin-left: 24px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-complex li {
  margin-bottom: 18px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-arrow {
  width: 2px;
  background: #111;
  position: relative;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-arrow::after,
#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-left::after,
#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-right::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1px;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 14px solid #111;
  transform: translateX(-50%);
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-arrow-single {
  height: 46px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch {
  position: relative;
  width: 72%;
  height: 76px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 24px;
  background: #111;
  transform: translateX(-50%);
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch::after {
  content: "";
  position: absolute;
  top: 23px;
  left: 14%;
  right: 14%;
  height: 2px;
  background: #111;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-left,
#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-right {
  position: absolute;
  top: 23px;
  width: 2px;
  height: 48px;
  background: #111;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-left {
  left: 14%;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-branch-right {
  right: 14%;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-answer {
  display: inline-block;
  vertical-align: middle;
  margin-left: 4px;
  white-space: nowrap;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-flowchart .inline-answer {
  width: 112px;
  height: 24px;
  min-width: 0;
  margin: 0 0 2px;
  padding: 1px 5px;
  font-size: 15px;
  line-height: 20px;
}

#examView.general-exam.book-7.test-2.module-reading .g7b-email-answer-wide .inline-answer {
  width: 124px;
}

@media (max-width: 760px) {
  #examView.general-exam.book-7.test-2.module-reading .g7b-email-flowchart {
    font-size: 18px;
  }

  #examView.general-exam.book-7.test-2.module-reading .g7b-email-flowchart > h4 {
    font-size: 27px;
  }

  #examView.general-exam.book-7.test-2.module-reading .g7b-email-flow-bottom {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  #examView.general-exam.book-7.test-2.module-reading .g7b-email-branch {
    display: none;
  }
}

.g-plumbers-table td:first-child {
  width: 18%;
}

.g17-tree-flowchart {
  display: grid;
  gap: 10px;
  width: min(860px, 100%);
  margin: 12px auto 18px;
}

.g17-tree-step {
  border: 1px solid #1f1f1f;
  background: #ffffff;
  padding: 11px 18px 10px;
  text-align: center;
}

.g17-tree-step p {
  margin: 0;
  font-size: inherit;
  line-height: 1.24;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-arrow {
  display: flex;
  justify-content: center;
  margin: -3px 0;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-arrow svg {
  width: 22px;
  height: 28px;
  fill: #111111;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot {
  display: inline-flex;
  align-items: flex-end;
  gap: 6px;
  margin: 0 1px;
  white-space: nowrap;
  vertical-align: baseline;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot::before {
  content: attr(data-tree-number);
  font-weight: 700;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-inline-answer {
  width: 15ch;
  max-width: 100%;
  height: 1.2em;
  padding: 0 0 1px;
  border: 0;
  border-bottom: 1px dotted #2a2a2a;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #111111;
  text-align: center;
  font-size: inherit;
  line-height: 1;
  vertical-align: baseline;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-inline-answer::placeholder {
  color: transparent;
  opacity: 1;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-inline-answer:focus {
  outline: 1px solid rgba(37, 99, 235, 0.45);
  outline-offset: 1px;
  border-bottom-color: #2563eb;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-15 .g17-tree-inline-answer,
#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-16 .g17-tree-inline-answer,
#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-17 .g17-tree-inline-answer,
#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-20 .g17-tree-inline-answer,
#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-21 .g17-tree-inline-answer {
  width: 16ch;
}

#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-18 .g17-tree-inline-answer,
#examView.general-exam.book-17.test-4.module-reading .g17-tree-answer-slot-19 .g17-tree-inline-answer {
  width: 14ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-flowchart {
  display: grid;
  gap: 10px;
  width: min(880px, 100%);
  margin: 12px auto 18px;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step {
  border: 1px solid #1f1f1f;
  background: #ffffff;
  padding: 12px 20px 11px;
  text-align: left;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step p {
  margin: 0;
  font-size: inherit;
  line-height: 1.28;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step p + p {
  margin-top: 14px;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-arrow {
  display: flex;
  justify-content: center;
  margin: -3px 0;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-arrow svg {
  width: 22px;
  height: 28px;
  fill: #111111;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot {
  display: inline-flex;
  align-items: flex-end;
  gap: 6px;
  white-space: nowrap;
  vertical-align: baseline;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot::before {
  content: attr(data-grievance-number);
  font-weight: 700;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-inline-answer {
  width: 16ch;
  max-width: 100%;
  height: 1.2em;
  padding: 0 0 1px;
  border: 0;
  border-bottom: 1px dotted #2a2a2a;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #111111;
  text-align: center;
  font-size: inherit;
  line-height: 1;
  vertical-align: baseline;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-inline-answer::placeholder {
  color: transparent;
  opacity: 1;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-inline-answer:focus {
  outline: 1px solid rgba(37, 99, 235, 0.45);
  outline-offset: 1px;
  border-bottom-color: #2563eb;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-15 .g17-grievance-inline-answer {
  width: 22ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-16 .g17-grievance-inline-answer {
  width: 19ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-17 .g17-grievance-inline-answer {
  width: 15ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-18 .g17-grievance-inline-answer {
  width: 17ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-19 .g17-grievance-inline-answer {
  width: 18ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-20 .g17-grievance-inline-answer {
  width: 17ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-answer-slot-21 .g17-grievance-inline-answer {
  width: 13ch;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step-final ul {
  margin: 12px 0 0 28px;
  padding: 0;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step-final li {
  margin: 0;
  line-height: 1.3;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step-final li + li {
  margin-top: 18px;
}

#examView.general-exam.book-17.test-3.module-reading .g17-grievance-step-final li::marker {
  font-size: 1.35em;
}

.g-roman-road-diagram {
  position: relative;
  width: min(920px, 100%);
  margin: 18px auto;
}

.g-roman-road-diagram img {
  display: block;
  width: 100%;
  height: auto;
}

.g-project-flowchart {
  position: relative;
  width: min(760px, 100%);
  margin: 10px auto 18px;
}

.g-project-flowchart img {
  display: block;
  width: 100%;
  height: auto;
}

.g13-passage,
.g13-lettered-passage,
.g13-question-page {
  font-size: 16px;
  line-height: 1.42;
}

.g13-main-title {
  margin: 14px 0 20px;
  text-align: center;
  font-size: 22px;
  font-weight: 700;
}

.g-centered-subtitle {
  max-width: 720px;
  margin: -8px auto 18px;
  text-align: center;
}

.ielts-source-box {
  margin: 14px 0;
  padding: 12px 16px;
  border: 1px solid #222222;
}

.ielts-source-box p,
.ielts-source-box ul {
  margin: 0 0 10px;
}

.g9-reading-page {
  font-size: 1rem;
  line-height: 1.45;
}

.g9-reading-page h2,
.g9-reading-page h3,
.g9-reading-page h4 {
  margin: 6px 0 16px;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .g9-reading-article-divider {
  display: block;
  width: 100%;
  height: 2px;
  margin: 0 0 14px;
  background: #222222;
}

.g9-ad-row {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin: 16px 0;
}

.g9-ad {
  border: 2px solid #222222;
  padding: 16px 20px;
  text-align: center;
}

.g9-ad h3,
.g9-ad h4 {
  margin: 3px 0 10px;
}

.g9-ad-grey {
  background: #e4e4e4;
  text-align: left;
  border-color: #999999;
}

.g9-ad-black {
  background: #111111;
  color: #ffffff;
  border-color: #111111;
  text-align: left;
}

.g9-ad-restaurant h3 {
  background: #111111;
  color: #ffffff;
  margin: -16px -20px 16px;
  padding: 12px;
}

.g9-answer-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 8px;
}

.g9-two-col,
.g9-jlp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.g9-two-col-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.85fr);
  gap: 20px;
  align-items: start;
}

.g9-two-col-top img,
.g9-jlp-grid img {
  max-width: 100%;
  height: auto;
}

.g9-dress-code h3,
.g9-notes h3,
.g9-jlp-title,
.g9-ashes h2 {
  text-align: center;
}

.g9-ashes .g9-lettered-para {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 10px;
  align-items: start;
}

.g9-ashes .g9-lettered-para strong {
  line-height: 1.5;
}

#examView.general-exam.book-9.test-1.module-reading
  .cd-passage-pane
  .g9-ashes
  .g9-two-col
  > div:first-child
  > p:first-child:not(.g9-lettered-para) {
  box-sizing: border-box;
  padding-left: 38px;
}

.g9-notes p {
  margin: 16px 0;
}

.g9-choice {
  margin: 6px 0 16px 32px;
}

.g9-listening-blank {
  display: inline-block;
  width: 10rem;
  max-width: 42%;
  border-bottom: 1px dotted #222222;
  vertical-align: baseline;
}

.g9-source-box {
  border: 2px solid #222222;
  padding: 18px 26px;
  margin: 14px 0 18px;
}

.g9-source-box h3,
.g9-source-box h4,
.g9-centered,
.g9b-guarantee {
  text-align: center;
}

.g9b-train-info {
  border-radius: 20px;
}

.g9b-train-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
}

.g9b-train-heading img {
  width: 92px;
  height: auto;
}

.g9b-ticket-table th,
.g9b-ticket-table td {
  vertical-align: middle;
}

.g9b-presentation {
  font-style: italic;
}

.g9b-presentation h3 {
  text-align: center;
}

.g9b-birdmen h2 {
  text-align: left;
}

.g9b-railcard > h3 {
  text-decoration: underline;
}

.g9b-question-bullets li {
  margin: 16px 0;
}

.g9b-subtitle {
  font-size: 1.1rem;
}

.g9b-people-box {
  max-width: 360px;
  margin: 24px auto 0;
  padding: 12px 24px;
  border: 2px solid #222222;
  text-align: center;
}

.g9b-people-box p {
  display: inline-block;
  margin: 0;
  text-align: left;
}

.ielts-speaking-card {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(160px, 1fr);
  gap: 18px;
  max-width: 720px;
  margin: 12px 0 18px;
  padding: 12px 14px;
  border: 1px solid #222222;
}

.ielts-speaking-card aside {
  border-left: 1px solid #999999;
  padding-left: 14px;
}

.g13-passage h4 {
  margin: 18px 0 10px;
  font-size: 17px;
  font-weight: 700;
}

.g13-lettered-item {
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 18px;
  margin: 0 0 18px;
}

.g13-lettered-item h4 {
  margin: 0 0 6px;
  font-size: 17px;
  font-weight: 700;
}

.g13-lettered-item p,
.g13-passage p {
  margin: 0 0 14px;
}

.g13-letter {
  font-weight: 700;
}

.g13-flowchart {
  max-width: 760px;
  margin: 12px auto 0;
}

.g13-flow-step {
  border: 1px solid #555;
  padding: 14px 18px;
  margin: 0;
}

.g13-flow-step h6,
.g13-notes h6 {
  margin: 0 0 12px;
  font-size: 16px;
  font-weight: 700;
}

.g13-flow-step p {
  margin: 8px 0;
}

.a13-centered-title {
  margin: 14px 0 10px;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 19px;
  font-weight: 800;
}

.a13-source-table {
  width: min(100%, 760px);
  margin: 12px auto 18px;
  border-collapse: collapse;
  border: 1.5px solid #222222;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.28;
}

.a13-source-table th,
.a13-source-table td {
  border: 1.5px solid #222222;
  padding: 7px 9px;
  vertical-align: top;
}

.a13-source-table ul {
  margin: 0;
  padding-left: 18px;
}

.a13-source-table li {
  margin: 0 0 6px;
}

.a13-source-table .inline-answer,
.a13-option-table .inline-answer,
.a13-answer-list .inline-answer,
.a13-source-frame .inline-answer,
.a13-flow-step .inline-answer {
  width: 120px;
  height: 22px;
  margin: 0 4px;
}

.a13-source-image img {
  display: block;
  width: min(100%, 560px);
  margin: 8px auto 14px;
}

.a13-source-frame {
  width: min(100%, 760px);
  margin: 12px auto 18px;
  padding: 12px 14px;
  border: 1.5px solid #222222;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.3;
}

.a13-source-frame h4 {
  margin: 0 0 12px;
  text-align: center;
  font-size: 18px;
  font-weight: 800;
}

.a13-source-frame h5 {
  margin: 10px 0 4px;
  font-size: 16px;
  font-weight: 800;
}

.a13-source-frame p {
  margin: 0 0 8px;
}

.a13-source-frame ul {
  margin: 0 0 8px 18px;
  padding: 0;
}

.a13-source-frame li {
  margin: 2px 0;
}

.a13-option-box {
  width: fit-content;
  min-width: min(280px, 100%);
  margin: 12px auto 18px;
  border: 1.5px solid #222222;
  font-family: "Times New Roman", Times, serif;
}

.a13-option-table {
  width: min(100%, 720px);
  margin: 12px auto 22px;
  border-collapse: collapse;
  border: 1.5px solid #222222;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.a13-option-table td {
  border: 1px solid #222222;
  padding: 6px 12px;
}

.a13-word-list-box {
  display: grid;
  grid-template-columns: repeat(4, max-content);
  gap: 8px 26px;
  width: fit-content;
  max-width: 100%;
  margin: 14px auto 18px;
  padding: 9px 18px;
  border: 1.5px solid #222222;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.25;
}

.a13-flowchart {
  width: min(100%, 620px);
  margin: 8px auto 18px;
  text-align: center;
}

.a13-flow-step {
  min-height: 34px;
  padding: 8px 12px;
  border: 1.5px solid #222222;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.a13-flow-step p {
  margin: 0;
}

.a13-flow-arrow {
  width: 0;
  height: 22px;
  margin: 0 auto;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-top: 14px solid #111111;
  position: relative;
}

.a13-flow-arrow::before {
  content: "";
  position: absolute;
  left: -2px;
  top: -23px;
  width: 4px;
  height: 12px;
  background: #111111;
}

.a13-answer-list {
  display: grid;
  gap: 5px;
  max-width: 720px;
  margin: 12px auto 16px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.a13-answer-list h5 {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 800;
}

.a13-answer-list p {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: baseline;
  margin: 0;
}

.a13-judgement-key {
  display: inline-grid;
  gap: 2px;
  margin: 6px 0 8px;
  padding: 0;
  border: 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.a13-judgement-key div {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px;
}

.a13-judgement-key strong {
  font-weight: 800;
  font-style: italic;
}

.a13-judgement-key span {
  font-style: italic;
}

.a13-judgement-questions {
  display: grid;
  gap: 8px;
}

.a13-judgement-row {
  display: grid;
  gap: 4px;
  padding: 0;
  border: 0;
}

.a13-judgement-row p {
  margin: 0;
}

.a13-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: flex-start;
  margin-left: 14px;
}

.a13-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 14px;
  font-weight: 400;
  white-space: nowrap;
}

.a13-writing-task1-box {
  padding: 10px 14px;
  border-color: #333333;
}

.a13-speaking-timing-plain {
  padding: 0;
  border: 0;
  background: transparent;
}

.a13-speaking-part2-layout {
  align-items: start;
}

.a13-academic-reading .cd-passage-intro {
  padding-left: 0;
  border-left: 0;
  background: transparent;
}

.a13-academic-listening .cd-question-group,
.a13-academic-reading .cd-question-pane {
  text-align: left;
}

.a13-academic-listening .a13-centered-title,
.a13-academic-reading .cd-question-pane .a13-centered-title,
.a13-academic-listening .a13-source-frame h4,
.a13-academic-reading .cd-question-pane .a13-source-frame h4,
.a13-academic-listening .a13-source-table th,
.a13-academic-reading .cd-question-pane .a13-source-table th,
.a13-academic-listening .a13-source-table td,
.a13-academic-reading .cd-question-pane .a13-source-table td,
.a13-academic-listening .a13-option-table td,
.a13-academic-reading .cd-question-pane .a13-option-table td,
.a13-academic-listening .a13-flowchart,
.a13-academic-reading .cd-question-pane .a13-flowchart,
.a13-academic-listening .a13-flow-step,
.a13-academic-reading .cd-question-pane .a13-flow-step {
  text-align: left;
}

.a13-academic-listening .a13-source-table,
.a13-academic-reading .cd-question-pane .a13-source-table,
.a13-academic-listening .a13-source-frame,
.a13-academic-reading .cd-question-pane .a13-source-frame,
.a13-academic-listening .a13-option-box,
.a13-academic-reading .cd-question-pane .a13-option-box,
.a13-academic-listening .a13-option-table,
.a13-academic-reading .cd-question-pane .a13-option-table,
.a13-academic-listening .a13-word-list-box,
.a13-academic-reading .cd-question-pane .a13-word-list-box,
.a13-academic-listening .a13-flowchart,
.a13-academic-reading .cd-question-pane .a13-flowchart,
.a13-academic-listening .a13-answer-list,
.a13-academic-reading .cd-question-pane .a13-answer-list {
  margin-left: 0;
  margin-right: auto;
}

#examView.general-exam.book-13.module-listening .cd-paper,
#examView.general-exam.book-13.module-reading .cd-question-pane {
  text-align: left;
}

#examView.general-exam.book-13.module-listening .cd-paper .a13-centered-title,
#examView.general-exam.book-13.module-listening .cd-paper .centered,
#examView.general-exam.book-13.module-listening .cd-paper .manual-listening-centered-title,
#examView.general-exam.book-13.module-listening .cd-paper .cd-completion-title,
#examView.general-exam.book-13.module-reading .cd-question-pane .a13-centered-title,
#examView.general-exam.book-13.module-reading .cd-question-pane .centered,
#examView.general-exam.book-13.module-reading .cd-question-pane .manual-listening-centered-title,
#examView.general-exam.book-13.module-reading .cd-question-pane .cd-completion-title {
  text-align: left;
}

#examView.general-exam.book-13.module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-answer-list),
#examView.general-exam.book-13.module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-answer-list) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-13.module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-answer-list, .a13-flow-step) :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.general-exam.book-13.module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-answer-list, .a13-flow-step) :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  text-align: left;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(
    h3,
    h4,
    h5,
    h6,
    p,
    li,
    label,
    .cd-question-title,
    .cd-question-line,
    .manual-choice-question,
    .manual-choice-option,
    .manual-listening-centered-title,
    .cd-completion-title,
    .a13-centered-title,
    .centered
  ),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    h3,
    h4,
    h5,
    h6,
    p,
    li,
    label,
    .cd-question-title,
    .cd-question-line,
    .manual-choice-question,
    .manual-choice-option,
    .manual-listening-centered-title,
    .cd-completion-title,
    .a13-centered-title,
    .centered
  ) {
  text-align: left;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-question-table,
    .cd-reading-table,
    .a13-source-frame,
    .a13-source-table,
    .a13-option-table,
    .a13-option-box,
    .a13-word-list-box,
    .a13-flowchart,
    .a13-answer-list,
    .g13t2-source-box,
    .g13t2-memory-box,
    .g13t3-source-box,
    .g13t4-coffee-box,
    .g13-flowchart,
    .g13-flow-step,
    .g13-notes,
    .g13-heading-list,
    .g13-map-answer-list
  ),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-question-table,
    .cd-reading-table,
    .a13-source-frame,
    .a13-source-table,
    .a13-option-table,
    .a13-option-box,
    .a13-word-list-box,
    .a13-flowchart,
    .a13-answer-list,
    .g13t2-source-box,
    .g13t2-memory-box,
    .g13t3-source-box,
    .g13t4-coffee-box,
    .g13-flowchart,
    .g13-flow-step,
    .g13-notes,
    .g13-heading-list,
    .g13-map-answer-list
  ) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-question-table,
    .cd-reading-table,
    .a13-source-frame,
    .a13-source-table,
    .a13-option-table,
    .a13-option-box,
    .a13-word-list-box,
    .a13-flowchart,
    .a13-answer-list,
    .g13t2-source-box,
    .g13t2-memory-box,
    .g13t3-source-box,
    .g13t4-coffee-box,
    .g13-flowchart,
    .g13-flow-step,
    .g13-notes,
    .g13-heading-list,
    .g13-map-answer-list
  )
  :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-question-table,
    .cd-reading-table,
    .a13-source-frame,
    .a13-source-table,
    .a13-option-table,
    .a13-option-box,
    .a13-word-list-box,
    .a13-flowchart,
    .a13-answer-list,
    .g13t2-source-box,
    .g13t2-memory-box,
    .g13t3-source-box,
    .g13t4-coffee-box,
    .g13-flowchart,
    .g13-flow-step,
    .g13-notes,
    .g13-heading-list,
    .g13-map-answer-list
  )
  :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  text-align: left;
}

/* G13 Test 1-4 scoped typography. General Listening/Reading only; do not apply to Academic. */
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g13-scoped-source-font: "Times New Roman", Times, serif;
  --g13-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g13-scoped-passage-size: 20px;
  --g13-scoped-question-size: 19px;
  --g13-scoped-box-size: 19px;
  --g13-scoped-answer-size: 18px;
  --g13-scoped-control-size: 20px;
  --g13-scoped-source-title-size: 24px;
  --g13-scoped-section-title-size: 22px;
  --g13-scoped-subtitle-size: 21px;
  --g13-scoped-ui-size: 16px;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--g13-scoped-source-font) !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-size: var(--g13-scoped-question-size) !important;
  line-height: 1.42 !important;
  text-align: left !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-size: var(--g13-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .g-general-passage-text, .g13-passage, .g13-lettered-passage, .g13-t3-passage, .g13t4-reading-passage, .manual-reading-page),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-passage-size) !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill, .g13-tfng-list, .g13-tfng-question, .g13-numbered-row, .g13-summary-copy, .g13-map-answer-list),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill, .g13-map-answer-list) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-question-size) !important;
  line-height: 1.42 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: var(--g13-scoped-source-font) !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, .g13-main-title, h1, h2) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .g-centered-subtitle, .cd-passage-byline, .g13t4-jazz-subtitle, h3:not(.g13-main-title), h4) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-size: var(--g13-scoped-section-title-size) !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title, .g13-tfng-title),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .g13t2-source-box, .g13t2-memory-box, .g13t3-source-box, .g13t4-coffee-box, .g13-flowchart, .g13-flow-step, .g13-notes, .g13-heading-list, .g13-map-answer-list, [style*="border"]),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .g13t2-source-box, .g13t2-memory-box, .g13t3-source-box, .g13t4-coffee-box, .g13-flowchart, .g13-flow-step, .g13-notes, .g13-heading-list, .g13-map-answer-list, [style*="border"]) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-box-size) !important;
  line-height: 1.38 !important;
  letter-spacing: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(table, .cd-reading-table, .manual-question-table, .manual-table-block table),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(table, .cd-reading-table, .manual-question-table, .manual-table-block table) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-size: var(--g13-scoped-box-size) !important;
  line-height: 1.34 !important;
  text-align: left !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .g13-tfng-question),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g13-scoped-source-font) !important;
  font-size: var(--g13-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g13-scoped-control-size) !important;
  height: var(--g13-scoped-control-size) !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--g13-scoped-ui-font) !important;
  font-size: var(--g13-scoped-ui-size) !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(h3, h4, h5, h6, p, li, label, .manual-choice-question, .manual-choice-option, .manual-listening-centered-title, .cd-completion-title),
#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(h3, h4, h5, h6, p, li, label, .cd-question-title, .cd-question-line, .cd-choice-option, .manual-boxed-notes-title, .cd-completion-title) {
  text-align: left;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(
    .cd-completion-box,
    .manual-question-table,
    .cd-reading-table,
    .cd-option-box,
    .matching-option-box,
    .manual-listening-option-box,
    .manual-boxed-notes,
    .g13-heading-list,
    .g13-notes,
    .g13-map-answer-list,
    .g19t2-flowchart,
    .g19t2-flow-step,
    .g19t2-people-list,
    .g19t2-henry-summary,
    .g19t3-redundancy-notes,
    .g19t3-lapis-summary,
    .g19t4-knepp-summary
  ),
#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-completion-box,
    .manual-question-table,
    .cd-reading-table,
    .cd-option-box,
    .matching-option-box,
    .manual-listening-option-box,
    .manual-boxed-notes,
    .g13-heading-list,
    .g13-notes,
    .g13-map-answer-list,
    .g19t2-flowchart,
    .g19t2-flow-step,
    .g19t2-people-list,
    .g19t2-henry-summary,
    .g19t3-redundancy-notes,
    .g19t3-lapis-summary,
    .g19t4-knepp-summary
  ) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(
    .cd-completion-box,
    .manual-question-table,
    .cd-reading-table,
    .cd-option-box,
    .matching-option-box,
    .manual-listening-option-box,
    .manual-boxed-notes,
    .g13-heading-list,
    .g13-notes,
    .g13-map-answer-list,
    .g19t2-flowchart,
    .g19t2-flow-step,
    .g19t2-people-list,
    .g19t2-henry-summary,
    .g19t3-redundancy-notes,
    .g19t3-lapis-summary,
    .g19t4-knepp-summary
  )
  :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption, label, span),
#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-completion-box,
    .manual-question-table,
    .cd-reading-table,
    .cd-option-box,
    .matching-option-box,
    .manual-listening-option-box,
    .manual-boxed-notes,
    .g13-heading-list,
    .g13-notes,
    .g13-map-answer-list,
    .g19t2-flowchart,
    .g19t2-flow-step,
    .g19t2-people-list,
    .g19t2-henry-summary,
    .g19t3-redundancy-notes,
    .g19t3-lapis-summary,
    .g19t4-knepp-summary
  )
  :is(h3, h4, h5, h6, p, li, div, th, td, caption, figcaption, label, span) {
  text-align: left;
}

.g19t2-newsletter-box {
  margin: 18px 0 0;
  padding: 14px 18px;
  border: 2px solid #222222;
}

.g19t2-newsletter-box h4 {
  margin: 14px 0 6px;
  font-size: 18px;
  font-weight: 800;
}

.g19t2-newsletter-box p {
  margin: 0 0 10px;
}

.g19t2-flowchart {
  max-width: 780px;
  margin: 14px auto 0;
}

.g19t2-flow-step {
  margin: 0;
  padding: 13px 18px;
  border: 1px solid #555555;
  text-align: center;
  font-size: 16px;
  line-height: 1.35;
}

.g19t2-flow-step .inline-answer {
  width: 180px;
}

.g19t2-people-list {
  width: min(100%, 300px);
}

.g19t2-henry-summary {
  width: min(100%, 780px);
  padding: 18px 20px;
  line-height: 1.5;
}

.g13-flow-arrow {
  width: 0;
  height: 0;
  margin: 0 auto;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  border-top: 30px solid #111;
}

.g13-notes {
  max-width: 860px;
  margin: 12px auto 0;
}

.g13-notes ul {
  margin: 10px 0 30px 24px;
  padding: 0;
}

.g13-notes li {
  margin: 10px 0;
}

.g13-heading-list {
  max-width: 560px;
  margin: 18px auto 28px;
  padding: 16px 22px;
  border: 1px solid #555;
}

.g13-heading-list h5 {
  margin: 0 0 14px;
  text-align: center;
  font-size: 18px;
}

.g13-heading-list p {
  display: grid;
  grid-template-columns: 44px 1fr;
  margin: 8px 0;
}

.g13-numbered-row {
  align-items: baseline;
  gap: 8px;
}

.g13-tfng-title {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 700;
}

.g13-tfng-prompt {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.35;
}

.g13-tfng-write {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 1.35;
}

.g13-tfng-key {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 58px;
  row-gap: 6px;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 24px 64px;
  font-size: 16px;
  line-height: 1.25;
}

.g13-tfng-key div {
  display: contents;
}

.g13-tfng-key strong {
  min-width: 100px;
  font-size: 18px;
  font-style: italic;
  font-weight: 800;
  letter-spacing: 0;
}

.g13-tfng-key span {
  font-style: italic;
}

.g13-tfng-list {
  display: grid;
  gap: 8px;
}

.g13-tfng-question {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 170px;
  column-gap: 12px;
  align-items: center;
  min-height: 28px;
}

.g13-tfng-number {
  font-size: 16px;
  line-height: 1.3;
}

.g13-tfng-copy {
  font-size: 16px;
  line-height: 1.35;
}

.g13-tfng-question .inline-answer {
  width: 170px;
  min-width: 170px;
  height: 26px;
  margin: 0;
  text-align: center;
}
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-title {
  margin: 0 0 8px;
  font-size: 21px !important;
  line-height: 1.25 !important;
  font-weight: 700;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-prompt,
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-write {
  margin: 0 0 8px;
  font-size: 19px !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-key {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  column-gap: 20px;
  row-gap: 3px;
  width: min(100%, 720px);
  margin: 12px 0 22px;
  font-size: 19px !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-key strong {
  min-width: 0;
  font-size: 19px !important;
  font-style: normal;
  font-weight: 700;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-key span {
  font-style: normal;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-list {
  display: grid;
  gap: 14px;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-question {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  column-gap: 8px;
  row-gap: 6px;
  align-items: baseline;
  min-height: 0;
  margin: 0;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-number,
#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-copy {
  font-size: 19px !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-options {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: -2px 0 0;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-option {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: auto;
  min-height: 22px;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-family: var(--g13-scoped-source-font) !important;
  white-space: nowrap;
}

#examView.general-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .g13-tfng-option input[data-choice-answer] {
  width: 20px !important;
  height: 20px !important;
  margin: 0;
}

.g13-summary-copy {
  max-width: 860px;
  margin: 22px auto 0;
  font-size: 17px;
  line-height: 1.65;
}

.diagram-overlay-answer {
  position: absolute;
  height: 24px;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.92);
  font-size: 15px;
}

.manual-table-page {
  display: grid;
  gap: 10px;
  max-width: 980px;
}

.manual-table-title {
  margin: 6px 0 0;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 22px;
  font-weight: 800;
}

.manual-question-table {
  table-layout: fixed;
  background: #ffffff;
}

.manual-table-block {
  margin: 14px 0;
  overflow-x: auto;
}

.manual-question-table th {
  text-align: center;
  font-weight: 800;
}

.manual-question-table td {
  min-height: 48px;
}

.a4t1-fig2-table {
  width: min(100%, 430px);
  margin: 12px 0 14px;
  table-layout: auto;
}

.a4t1-fig2-table th:first-child,
.a4t1-fig2-table td:first-child {
  width: 300px;
}

.a4t1-fig2-table th:nth-child(2),
.a4t1-fig2-table td:nth-child(2) {
  width: 90px;
  text-align: left;
}

.manual-question-table .inline-answer {
  width: 160px;
  margin: 0 3px;
}

.a16-polar-bear-table {
  border: 1px solid #222222;
}

.a16-word-list-page .cd-completion-title {
  margin-top: 14px;
}

.a16-word-list-table {
  width: auto;
  min-width: min(100%, 420px);
  margin: 12px auto 16px;
  border: 1px solid #222222;
}

.a16-word-list-table td {
  min-width: 95px;
  padding: 7px 12px;
  white-space: nowrap;
}

.manual-table-after {
  margin: 10px auto 0;
  width: min(100%, 660px);
  font-size: 16px;
  line-height: 1.55;
}

.manual-table-after p {
  margin: 0 0 8px;
}

.manual-table-after .inline-answer {
  width: 120px;
  height: 22px;
  margin-left: 18px;
  vertical-align: middle;
}

.manual-boxed-notes {
  width: min(100%, 660px);
  margin: 18px auto 12px;
  padding: 12px 18px 14px;
  border: 2px solid #222222;
  background: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.26;
}

.manual-boxed-notes-title {
  margin: 0 0 12px;
  text-align: center;
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
}

.manual-boxed-note-line {
  margin: 7px 0;
}

.manual-boxed-note-line.bullet {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  column-gap: 22px;
  align-items: start;
}

.manual-boxed-note-line.continuation {
  margin-left: 32px;
}

.manual-boxed-note-dot {
  width: 5px;
  height: 5px;
  margin-top: 8px;
  border-radius: 50%;
  background: #111111;
}

.manual-boxed-notes .inline-answer {
  width: 170px;
  height: 22px;
  margin: 0 4px;
  vertical-align: middle;
}

/* A17 Listening: tighten two-column source tables so letter/index cells do not consume half the row. */
#examView.academic-exam.book-17.module-listening :is(.cd-reading-table, .manual-question-table, .structured-table):has(tr > :nth-child(2):last-child) {
  table-layout: auto;
}

#examView.academic-exam.book-17.module-listening :is(.cd-reading-table, .manual-question-table, .structured-table):has(tr > :nth-child(2):last-child) :is(th, td):first-child {
  width: 56px;
  min-width: 56px;
  white-space: nowrap;
}

.word-box-table {
  width: min(100%, 520px);
  margin: 14px auto;
}

.word-box-table td {
  width: 25%;
  padding: 7px 18px;
  font-size: 17px;
}

.reading-answer-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #d2d2d2;
}

.cd-reading .inline-answer {
  display: inline-block;
  width: 170px;
  height: 25px;
  margin: 0;
  border: 1px solid #9f9f9f;
  border-radius: 0;
  background: #ffffff;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.cd-reading .inline-answer::placeholder {
  color: #8d7a68;
  opacity: 1;
  text-align: center;
}

.cd-reading .a12t1-reading-page .inline-answer {
  box-sizing: border-box;
  width: 86px;
  min-width: 0;
  height: 1.15em;
  margin: 0 3px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #222222;
  background: transparent;
  box-shadow: none;
  line-height: 1.1;
  vertical-align: baseline;
}

.cd-reading .a12t1-reading-page .inline-answer::placeholder {
  color: transparent;
  opacity: 0;
}

.cd-question-group {
  margin-bottom: 8px;
}

.cd-question-group h3,
.cd-question-group h4,
.cd-question-group p {
  margin: 0 0 4px;
}

.cd-question-group h3,
.cd-question-group h4 {
  font-size: 17px;
  font-weight: 700;
}

.cd-question-group p {
  font-size: 16px;
}

.cd-info-table,
.cd-trip-table {
  width: min(1366px, 100%);
  border-collapse: collapse;
  font-size: 16px;
}

.cd-info-table th,
.cd-info-table td,
.cd-trip-table th,
.cd-trip-table td {
  border: 1px solid #b7b7b7;
  padding: 5px 4px;
  text-align: left;
  vertical-align: middle;
}

.cd-info-table th {
  width: 50%;
}

.cd-trip-table th {
  font-weight: 700;
}

.cd-listening .inline-answer {
  display: inline-block;
  width: 170px;
  height: 23px;
  margin: 0 4px;
  border: 1px solid #b8b8b8;
  border-radius: 0;
  background: #ffffff;
  text-align: center;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
}

.cd-listening .inline-answer::placeholder {
  color: #8d7a68;
  opacity: 1;
  text-align: center;
}

.cd-listening .a6t1-membership-table .inline-answer,
.cd-listening .a6-membership-table .inline-answer {
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 20px !important;
  margin: 0 2px !important;
  font-size: 14px !important;
}

.cd-listening .a6t1-membership-table .a7-date-range-answer,
.cd-listening .a6-membership-table .a7-date-range-answer {
  gap: 4px !important;
  margin-left: 0 !important;
}

#examView.academic-exam.book-6.test-1.module-listening .cd-paper .a6t1-membership-table .a7-date-range-answer .inline-answer,
#examView.academic-exam.book-6.test-1.module-listening .cd-paper .a6-membership-table .a7-date-range-answer .inline-answer {
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 20px !important;
  font-size: 14px !important;
}

.a6t1-membership-table td,
.a6t1-membership-table th,
.a6-membership-table td,
.a6-membership-table th {
  vertical-align: top;
}

.cd-listening .a6t1-royal-hunt-table .inline-answer {
  width: 76px;
  height: 20px;
  margin: 0 2px;
  font-size: 14px;
}

.a6t1-royal-hunt-table td,
.a6t1-royal-hunt-table th {
  vertical-align: top;
}

.a6t1-sports-note {
  position: relative;
  width: min(520px, 100%);
  margin: 24px 0 10px 52px;
  padding: 20px 18px 30px;
  border-left: 2px solid #222222;
  border-right: 2px solid #222222;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.25;
}

.a6t1-sports-note::before,
.a6t1-sports-note::after {
  content: "";
  position: absolute;
  left: -2px;
  right: -2px;
  pointer-events: none;
}

.a6t1-sports-note::before {
  top: -9px;
  height: 14px;
  background-repeat: repeat-x;
  background-size: 30px 14px;
  background-image:
    radial-gradient(15px 10px at 15px 12px, transparent 13px, #222222 13.5px, #222222 14.5px, transparent 15px);
}

.a6t1-sports-note::after {
  bottom: -12px;
  height: 24px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 24'%3E%3Cpath d='M0 0 H33 L41 11 L50 0 L59 11 L67 0 H100' fill='none' stroke='%23222222' stroke-width='1.8'/%3E%3C/svg%3E") 0 0 / 100% 24px no-repeat;
}

.a6t1-sports-note h3 {
  margin: 4px 0 16px;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
}

.a6t1-sports-example {
  width: 100%;
  margin: 0 0 18px;
  border: 1px solid #222222;
  border-collapse: collapse;
  table-layout: fixed;
}

.a6t1-sports-example td {
  width: 50%;
  padding: 8px 10px;
  border: 1px solid #222222;
  vertical-align: top;
}

.a6t1-sports-row {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 14px;
  margin: 12px 0;
}

.a6t1-sports-note .inline-answer {
  width: 160px;
  min-width: 160px;
  height: 22px;
  margin: 0 4px;
  vertical-align: middle;
}

.a6t1-note-small {
  font-size: 14px;
}

.a6t2-ticket-table {
  width: min(620px, 100%);
}

.a6t2-ticket-table th:first-child,
.a6t2-ticket-table td:first-child {
  width: 34%;
}

.a6t2-ticket-table th,
.a6t2-ticket-table td {
  padding: 6px 10px;
}

.a6t3-rosewood-map-block {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 380px);
  gap: 28px;
  align-items: start;
  max-width: 820px;
  margin: 0 0 10px;
}

.a6t3-rosewood-map {
  margin: 0;
}

.a6t3-rosewood-map img {
  display: block;
  width: 100%;
  height: auto;
}

.a6t3-rosewood-answer-list {
  margin: 8px 0 18px;
}

.a6t3-rosewood-answer-list p {
  margin: 7px 0;
}

.a6-source-frame {
  max-width: 760px;
  padding: 12px 16px;
  border: 1px solid #222222;
  border-radius: 0;
  background: #ffffff;
}

.a6-dashed-source-frame {
  border-style: dashed;
}

.a6t3-music-survey-box {
  width: min(560px, 100%);
  padding: 18px 24px;
  border: 1px solid #222222;
  background: #ffffff;
}

.a6t3-music-survey-box h5 {
  margin: 0 0 18px;
  text-align: center;
}

.a6t2-self-study {
  max-width: 820px;
}

.a6t2-self-study h3 {
  display: inline-block;
  margin: 0 0 0 18%;
  padding: 3px 12px;
  color: #ffffff;
  background: #111111;
  font-size: 24px;
  line-height: 1;
  letter-spacing: 0;
}

.a6t2-self-study-frame {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid #222222;
  background: #ffffff;
}

.a6t2-self-study-frame > div {
  padding: 10px 12px;
}

.a6t2-self-study-frame > div + div {
  border-left: 1px solid #222222;
}

.a6t2-self-study-frame p {
  margin: 0 0 9px;
}

.a6t2-job-guide {
  width: 100%;
  border-collapse: collapse;
}

.a6t2-job-guide td {
  padding: 2px 8px;
  border: 0;
  vertical-align: top;
}

.a6t2-job-guide td:first-child {
  width: 34px;
  text-align: center;
}

.a6t2-courses-table,
.a6t2-courses-table :is(tr, td, th) {
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.a6t2-courses-table {
  border-left: 0 !important;
  border-right: 0 !important;
}

.a6t2-courses-table td {
  padding: 8px 12px;
  vertical-align: top;
}

.a6t2-courses-table td + td {
  border-left: 1px solid #222222 !important;
}

#examView.general-exam.book-6.test-2.module-reading .cd-passage-pane .a6t2-courses-table + .a7-inline-passage-translation {
  margin: 8px 0 12px;
  padding: 9px 12px;
  border-left: 3px solid #0f766e;
  background: #f0fdfa;
  color: #134e4a;
  columns: 3 170px;
  column-gap: 22px;
  font-family: Arial, "Microsoft YaHei", "PingFang SC", sans-serif;
  font-size: 15px;
  line-height: 1.62;
  white-space: pre-line;
}

.a6-footnote {
  margin-top: 0.9rem;
  font-size: 0.82rem;
  line-height: 1.35;
}

#examView.book-6.module-reading .a6-judgement-compact {
  font-family: "Times New Roman", Times, serif;
}

#examView.book-6.module-reading .a6-judgement-prompt {
  margin: 8px 0 7px;
  font-size: 17px;
  line-height: 1.3;
}

#examView.book-6.module-reading .a6-judgement-answer-instruction {
  margin: 0 0 4px;
  font-size: 17px;
  line-height: 1.25;
}

#examView.book-6.module-reading .a6-judgement-key {
  margin: 0 0 12px 60px;
  font-size: 17px;
  font-style: italic;
  line-height: 1.22;
}

#examView.book-6.module-reading .a6-judgement-key div {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  column-gap: 0;
}

#examView.book-6.module-reading .a6-judgement-key strong {
  font-weight: 800;
}

#examView.book-6.module-reading .a6-judgement-question {
  margin: 6px 0 7px;
  font-size: 17px;
  line-height: 1.25;
}

#examView.book-6.module-reading .a6-judgement-question p {
  margin: 0 0 2px;
}

#examView.book-6.module-reading .a6-judgement-options {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-left: 16px;
}

#examView.book-6.module-reading .a6-judgement-options label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 20px;
}

#examView.book-6.module-reading .a6-judgement-options input {
  width: 16px;
  height: 16px;
}

#examView.book-6.module-listening .cd-paper .a6t1-source-page,
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page {
  text-align: left;
}

#examView.book-6.module-listening .cd-paper :is(
  .manual-listening-page,
  .cd-question-card,
  .cd-question-title,
  .cd-question-line,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row
),
#examView.book-6.module-reading .cd-question-pane :is(
  .manual-reading-questions,
  .cd-question-card,
  .cd-question-title,
  .cd-question-line,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row,
  .a6-judgement-compact
) {
  text-align: left !important;
}

#examView.book-6.module-listening .cd-paper .a6t1-source-page [style*="text-align:center"],
#examView.book-6.module-listening .cd-paper .a6t1-source-page [style*="text-align: center"],
#examView.book-6.module-listening .cd-paper .a6t1-source-page .a6t1-sports-note h3,
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page [style*="text-align:center"],
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page [style*="text-align: center"] {
  text-align: left !important;
}

#examView.book-6.module-listening .cd-paper .a6t1-source-page :is(.cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-question-table, .cd-reading-table, .a6t1-sports-note, .a6t3-rosewood-map-block, .cd-reading-image),
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page :is(.cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-question-table, .cd-reading-table, .a6t1-sports-note, .a6t3-rosewood-map-block, .cd-reading-image) {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#examView.book-6.module-listening .cd-paper :is(
  .pdf-source-box,
  .a6-source-frame,
  .a6-dashed-source-frame,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-completion-box,
  .manual-question-table,
  .cd-reading-table,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
),
#examView.book-6.module-reading :is(
  .pdf-source-box,
  .a6-source-frame,
  .a6-dashed-source-frame,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-completion-box,
  .manual-question-table,
  .cd-reading-table,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.book-6.module-listening .cd-paper :is(
  .pdf-source-box,
  .a6-source-frame,
  .a6-dashed-source-frame,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-completion-box,
  .manual-question-table,
  .cd-reading-table,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption),
#examView.book-6.module-reading :is(
  .pdf-source-box,
  .a6-source-frame,
  .a6-dashed-source-frame,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-completion-box,
  .manual-question-table,
  .cd-reading-table,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption) {
  text-align: left !important;
}

#examView.book-6:is(.module-listening, .module-reading) .a6t1-source-page .cd-option-box {
  width: fit-content;
  min-width: min(260px, 100%);
  max-width: 100%;
}

#examView.book-6.module-listening .cd-paper .a6t1-source-page :is(section, figure)[style*="border"],
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page :is(section, figure)[style*="border"] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left;
}

#examView.book-6.module-listening .cd-paper .a6t1-source-page :is(.manual-question-table, .cd-reading-table) :is(th, td),
#examView.book-6.module-reading .cd-question-pane .a6t1-source-page :is(.manual-question-table, .cd-reading-table) :is(th, td) {
  text-align: left !important;
}

.a6t1-water-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 170px);
  gap: 16px;
  align-items: start;
  margin: 0 0 16px;
}

.a6t1-water-heading h2 {
  display: inline-block;
  margin: 0 0 8px;
  padding: 0 4px;
  color: #ffffff;
  background: #111111;
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0;
}

.a6t1-water-heading p {
  margin: 0;
  text-align: center;
}

.a6t1-sports-note {
  border-bottom: 4px solid #111111;
}

#examView.book-6.module-writing .ielts-writing-topic-box {
  margin: 10px 0 16px;
  padding: 0 0 0 34px;
  border: 0;
}

#examView.book-6.module-speaking .ielts-speaking-timing {
  padding: 0;
  border: 0;
  background: transparent;
}

#examView.general-exam.book-6:is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g6-source-font: "Times New Roman", Times, serif;
  --g6-ui-font: Arial, Helvetica, sans-serif;
  --g6-passage-size: 20px;
  --g6-question-size: 19px;
  --g6-box-size: 19px;
  --g6-answer-size: 18px;
  --g6-source-title-size: 24px;
  --g6-source-subtitle-size: 21px;
  --g6-question-title-size: 21px;
  --g6-section-title-size: 22px;
  --g6-ui-size: 16px;
  --g6-passage-line: 1.5;
  --g6-question-line: 1.42;
  --g6-box-line: 1.38;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-passage-size) !important;
  line-height: var(--g6-passage-line) !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-question-size) !important;
  line-height: var(--g6-question-line) !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(h1, h2, .cd-passage-title),
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.a6t1-water-heading h2) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-reading-section > h3 {
  font-size: var(--g6-section-title-size) !important;
  line-height: 1.3 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-part-nav, .cd-module-controls, .cd-statusbar) {
  font-family: var(--g6-ui-font) !important;
  font-size: var(--g6-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a6t1-source-page,
  .a6-source-frame,
  .a6-dashed-source-frame,
  .a6-judgement-compact,
  .a6-judgement-key,
  .a6-judgement-question,
  [style*="border"]
),
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a6t1-source-page,
  .a6-source-frame,
  .a6-dashed-source-frame,
  [style*="border"]
),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a6t1-source-page,
  .a6-source-frame,
  .a6-dashed-source-frame,
  [style*="border"]
) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-box-size) !important;
  line-height: var(--g6-box-line) !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a6-judgement-options label),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-question-size) !important;
  line-height: var(--g6-question-line) !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g6-source-font) !important;
  font-size: var(--g6-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-6:is(.test-1, .test-2).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-6:is(.test-1, .test-2).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  flex: 0 0 20px !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a6-source-font: "Times New Roman", Times, serif;
  --a6-ui-font: Arial, Helvetica, sans-serif;
  --a6-passage-size: 20px;
  --a6-question-size: 19px;
  --a6-prompt-size: 19px;
  --a6-box-size: 19px;
  --a6-answer-size: 18px;
  --a6-source-title-size: 24px;
  --a6-source-subtitle-size: 21px;
  --a6-question-title-size: 21px;
  --a6-section-title-size: 22px;
  --a6-ui-size: 16px;
  --a6-body-line: 1.5;
  --a6-question-line: 1.42;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-passage-size) !important;
  line-height: var(--a6-body-line) !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-question-size) !important;
  line-height: var(--a6-question-line) !important;
}
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .cd-passage-title) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-part-head,
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-part-head {
  font-family: var(--a6-ui-font) !important;
  font-size: var(--a6-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a6t1-source-page,
  .a6-reading-judgement-key,
  .a6-reading-judgement-question,
  [style*="border"]
),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a6t1-source-page,
  [style*="border"]
) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-box-size) !important;
  line-height: var(--a6-question-line) !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a6-reading-judgement-options label),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-question-size) !important;
  line-height: var(--a6-question-line) !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a6-source-font) !important;
  font-size: var(--a6-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-6:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px;
  height: 20px;
}
.cd-listening .a7t2-short-answer .inline-answer {
  display: block;
  width: min(560px, calc(100% - 44px));
  margin-left: 44px;
}

.a7-date-range-answer {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 4px;
}

.a7-date-range-answer .inline-answer {
  width: 118px;
  margin: 0;
}

.a5-cot-table {
  width: min(760px, 100%);
  margin: 8px 0 14px;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #222;
  font-family: "Times New Roman", Times, serif;
  font-size: 15px;
  line-height: 1.22;
}

.a5-cot-table th,
.a5-cot-table td {
  border: 1px solid #222;
  padding: 7px 8px;
  vertical-align: top;
}

.a5-cot-table th {
  padding: 5px 8px;
  background: #d8d8d8;
  text-align: center;
  font-size: 15px;
  font-weight: 800;
}

.a5-cot-table th:nth-child(1),
.a5-cot-table td:nth-child(1) {
  width: 25%;
}

.a5-cot-table th:nth-child(2),
.a5-cot-table td:nth-child(2),
.a5-cot-table th:nth-child(3),
.a5-cot-table td:nth-child(3) {
  width: 25%;
}

.a5-cot-table th:nth-child(4),
.a5-cot-table td:nth-child(4) {
  width: 25%;
}

.a5-cot-table tbody tr {
  min-height: 190px;
}

.a5-cot-table p {
  margin: 0 0 3px;
  font-size: inherit;
}

.a5-cot-table ul {
  margin: 0;
  padding-left: 16px;
}

.a5-cot-table li {
  margin: 0 0 8px;
}

.a5-cot-table .inline-answer,
.a5-cot-notes .inline-answer {
  width: 118px;
  height: 21px;
  margin: 0 0 0 6px;
  border: 0;
  border-bottom: 1px dotted #222;
  background: transparent;
  font-size: 14px;
}

.a5-cot-table td:nth-child(4) .inline-answer {
  width: 120px;
}

.a5-cot-notes {
  margin: 10px 0 0 24px;
  padding: 0 0 0 22px;
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.35;
}

.a5-cot-notes li {
  margin: 6px 0;
  padding-left: 10px;
}

.a5-global-warming-wordbox {
  width: min(620px, 100%);
  margin-top: 12px;
  border: 1px solid #333333;
  border-collapse: separate;
  border-spacing: 0;
}

.cd-further-info {
  width: min(1366px, 100%);
  padding: 6px 4px;
  border: 1px solid #b7b7b7;
  border-top: 0;
  font-size: 16px;
}

.cd-further-info strong {
  display: block;
  margin-bottom: 6px;
}

.cd-bottom-nav {
  position: sticky;
  bottom: 0;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  min-height: 48px;
  border-top: 1px solid #9a9a9a;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
}

.cd-part-nav {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0 6px;
}

.cd-reading-bottom-nav .cd-part-nav {
  overflow-x: auto;
  flex: 1;
  gap: 9px;
  white-space: nowrap;
}

.cd-part-nav button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 24px;
  border: 0;
  background: #ffffff;
  color: #000000;
  font-weight: 700;
}

.cd-part-nav .cd-part-tab {
  min-width: 58px;
  padding: 0 8px;
}

.cd-part-nav button.active {
  border: 1px solid #229bd4;
  border-radius: 4px;
  color: #229bd4;
}

.cd-part-nav button.answered {
  background: #edf7f4;
  color: #0f6b54;
}

.cd-part-nav button.marked::after {
  content: "";
  position: absolute;
  top: 2px;
  right: 2px;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #d67500;
}

.cd-part-nav button.active.marked::after {
  top: 1px;
  right: 1px;
}

.cd-part-nav em {
  color: #b9b9b9;
  font-style: normal;
}

.cd-next-actions {
  display: flex;
}

.cd-next-actions button {
  width: 52px;
  border: 0;
  border-left: 1px solid #ffffff;
  background: #5f6a72;
  color: #ffffff;
  font-size: 34px;
  line-height: 1;
}

.cd-next-actions .cd-mark-question-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: auto;
  min-width: 92px;
  padding: 0 12px;
  border-left: 1px solid #d8dde1;
  background: #ffffff;
  color: #26323b;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.cd-next-actions .cd-mark-question-button.marked {
  background: #fff4dc;
  color: #7b4a00;
}

.cd-mark-icon {
  font-size: 15px;
  line-height: 1;
}

.structured-reading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: 16px;
  align-items: start;
}

.structured-passage,
.structured-group,
.raw-fallback {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.structured-passage {
  padding: 18px;
}

.structured-passage h3,
.structured-group h3 {
  margin: 0;
}

.structured-passage pre {
  margin: 12px 0 0;
  white-space: pre-wrap;
  word-break: break-word;
  font-family:
    "Segoe UI",
    "Microsoft YaHei",
    sans-serif;
  font-size: 15px;
  line-height: 1.74;
}

.structured-groups {
  display: grid;
  gap: 14px;
}

.structured-group {
  overflow: hidden;
}

.structured-group-head {
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  background: var(--surface-2);
}

.structured-group-head p {
  margin-top: 5px;
  color: var(--muted);
  line-height: 1.45;
}

.structured-question-list {
  display: grid;
}

.structured-question {
  display: grid;
  gap: 10px;
  padding: 14px 16px;
  border-top: 1px solid var(--line);
}

.structured-question:first-child {
  border-top: 0;
}

.structured-question-text {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  line-height: 1.5;
}

.structured-question-text strong {
  display: grid;
  width: 30px;
  height: 28px;
  place-items: center;
  border-radius: 6px;
  background: var(--surface-2);
  color: var(--primary);
}

.structured-question.choice-question .structured-question-text span {
  font-weight: 800;
}

.inline-answer {
  width: min(280px, 100%);
}

.cd-listening .a9-job-enquiry .inline-answer {
  min-width: 155px;
  width: 155px;
  height: 20px;
  padding: 0 6px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.a9-centered-title,
.a9-source-box h4 {
  text-align: center;
}

.a9-source-box .inline-answer,
.a9-flowchart .inline-answer {
  min-width: 132px;
  width: 132px;
  height: 19px;
  padding: 0 5px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.a9-example-table {
  width: 210px;
}

.a9-example-table td {
  border: 1px solid #222222;
  padding: 5px 8px;
}

.a9-seti-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 42%);
  gap: 16px;
  align-items: start;
  margin: 10px 0 14px;
}

.a9-seti-intro p {
  margin-top: 0;
}

.a9-seti-image {
  margin: 0;
}

.a9-seti-image img {
  width: 100%;
}

.a9-flowchart {
  margin: 14px 0;
  font-family: "Times New Roman", Times, serif;
}

.a9-flowchart > h4 {
  margin: 0 0 12px;
  text-align: center;
  font-size: 18px;
}

.a9-flow-step {
  margin: 0;
  padding: 7px 10px;
  border: 1px solid #222222;
}

.a9-flow-step p {
  margin: 0 0 4px;
}

.a9-flow-step p:first-child {
  text-align: center;
}

.a9-flow-arrow {
  margin: 5px 0;
  text-align: center;
}

.a9-flow-arrow img {
  width: 46px;
}

.ielts-speaking-timing.a9-speaking-timing {
  padding: 0;
  border: 0;
  background: transparent;
}

.a9t2-accommodation-table,
.a9t2-parks-table {
  max-width: 820px;
  margin: 12px auto 18px;
  font-family: "Times New Roman", Times, serif;
}

.a9t2-accommodation-table th,
.a9t2-parks-table th {
  text-align: center;
}

.a9t2-accommodation-table th,
.a9t2-accommodation-table td,
.a9t2-parks-table th,
.a9t2-parks-table td {
  border: 1px solid #222222;
}

.a9t2-accommodation-table td:first-child {
  width: 43%;
}

.a9t2-parks-table td:first-child,
.a9t2-parks-table th:first-child {
  width: 30%;
}

.a9t2-accommodation-table .inline-answer,
.a9t2-parks-table .inline-answer,
.a9t2-business-box .inline-answer {
  min-width: 132px;
  width: 132px;
  height: 19px;
  padding: 0 5px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.a9t2-map {
  margin: 8px auto 0;
  max-width: 660px;
}

.a9t2-map img {
  width: 100%;
}

.a9t2-compass {
  margin: -38px auto 12px;
  max-width: 660px;
  text-align: right;
}

.a9t2-compass img {
  width: 92px;
}

.a9t2-map-answers {
  margin: 10px 0 18px;
  font-family: "Times New Roman", Times, serif;
}

.a9t2-map-answers p {
  margin: 6px 0;
}

.a9t2-map-answers .inline-answer {
  min-width: 120px;
  width: 120px;
  height: 19px;
  padding: 0 5px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px solid #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.a9t2-business-box {
  max-width: 820px;
  margin: 12px auto 18px;
  padding: 18px 24px;
  border: 1px solid #222222;
  font-family: "Times New Roman", Times, serif;
}

.a9t2-business-box-start {
  margin-bottom: 0;
  border-bottom: 0;
}

.a9t2-business-box-end {
  margin-top: 0;
  border-top: 0;
}

.a9t2-business-box h3 {
  margin: 0 0 18px;
  text-align: center;
}

.a9t2-business-box p {
  margin: 10px 0;
}

.a9t2-business-box dl {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 10px 18px;
  margin: 8px 0 18px;
}

.a9t2-business-box dt,
.a9t2-business-box dd {
  margin: 0;
}

.a9t2-venus-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  gap: 18px;
  align-items: start;
  margin: 0 0 12px;
}

.a9t2-venus-intro figure {
  margin: 0;
}

.a9t2-venus-intro img {
  width: 100%;
}

.a9t2-people-table,
.a9t2-ending-table {
  max-width: 390px;
  margin: 14px auto 18px;
  font-family: "Times New Roman", Times, serif;
}

.a9t2-people-table td,
.a9t2-ending-table td {
  border: 1px solid #222222;
}

.a9-choice-question {
  display: grid;
  gap: 5px;
  margin: 5px 0 12px 22px;
}

.a9-choice-question label {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

.a9-choice-question input[type="radio"],
.a9-choice-question input[type="checkbox"] {
  margin-top: 2px;
}

.a9t3-apartments-table,
.a9t3-holidays-table,
.a9t3-area-work-table,
.a9t3-feature-table,
.a9t3-study-table,
.a9t3-word-list-table {
  max-width: 840px;
  margin: 12px auto 18px;
  font-family: "Times New Roman", Times, serif;
}

.a9t3-apartments-table th,
.a9t3-apartments-table td,
.a9t3-holidays-table th,
.a9t3-holidays-table td,
.a9t3-area-work-table th,
.a9t3-area-work-table td,
.a9t3-feature-table th,
.a9t3-feature-table td,
.a9t3-study-table th,
.a9t3-study-table td,
.a9t3-word-list-table td {
  border: 1px solid #222222;
}

.a9t3-area-work-table,
.a9t3-word-list-table {
  border: 1px solid #222222;
}

.a9t3-area-work-table th,
.a9t3-area-work-table td,
.a9t3-word-list-table td {
  border: 0;
}

.a9t3-apartments-table th,
.a9t3-holidays-table th,
.a9t3-area-work-table th,
.a9t3-feature-table th,
.a9t3-study-table th {
  text-align: center;
}

.a9t3-apartments-table .inline-answer,
.a9t3-holidays-table .inline-answer,
.a9t3-feature-table .inline-answer,
.a9t3-study-table .inline-answer,
.a9t3-people-list .inline-answer,
.a9t3-underground-box .inline-answer,
.a9t3-turbine-layout .inline-answer,
.a9t3-voyager-notes .inline-answer,
.cd-listening.a9t3-listening .inline-answer,
.cd-reading.a9t3-reading .inline-answer {
  min-width: 118px;
  width: 118px;
  height: 19px;
  padding: 0 5px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.a9t3-work-grid {
  display: block;
  margin: 10px 0 16px;
}

.a9t3-area-work-table {
  max-width: 250px;
  margin: 8px 0 12px;
}

.a9t3-area-work-table td:first-child {
  width: 34px;
  text-align: center;
  font-weight: 700;
}

.a9t3-people-list h4 {
  margin-top: 0;
}

.a9t3-people-list p {
  margin: 8px 0;
}

.a9t3-feature-table td:first-child,
.a9t3-feature-table th:first-child {
  width: 24%;
}

.a9-source-box.a9t3-underground-box {
  max-width: 780px;
  margin: 12px auto 18px;
  padding: 14px 24px;
  border: 1px solid #222222;
  font-family: "Times New Roman", Times, serif;
}

.a9t3-underground-box h3 {
  text-align: center;
}

.a9t3-underground-box h4 {
  margin: 12px 0 6px;
  text-align: left;
}

.a9t3-underground-box ul,
.a9t3-voyager-notes ul {
  margin: 6px 0 14px 18px;
  padding-left: 14px;
}

.a9t3-underground-box li,
.a9t3-voyager-notes li {
  margin: 5px 0;
}

.a9t3-question-list {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
}

.a9t3-question-list li {
  margin: 7px 0;
}

.cd-reading-table.a9-definition-table td:first-child {
  min-width: 112px;
  white-space: nowrap;
}

.a9t3-word-list-table {
  max-width: 620px;
}

.a9t3-word-list-table td:nth-child(odd) {
  width: 28px;
  font-weight: 700;
  text-align: center;
}

.a9t3-claims-box {
  max-width: 620px;
  margin: 10px 0 16px;
  padding: 10px 12px;
  border: 1px solid #222222;
  font-family: "Times New Roman", Times, serif;
}

.a9t3-claims-box .a9-choice-question {
  margin-left: 0;
}

.a9t3-turbine-layout {
  max-width: 660px;
  margin: 8px auto 18px;
  font-family: "Times New Roman", Times, serif;
  text-align: center;
}

.a9t3-turbine-layout img {
  width: min(100%, 520px);
  display: block;
  margin: 0 auto 8px;
}

.a9t3-turbine-note {
  margin: 8px 0;
}

.a9t3-note-top {
  text-align: left;
  padding-left: 34px;
}

.a9t3-info-title {
  margin: 8px 0 6px;
  padding: 4px 10px;
  background: #d8d8d8;
  font-family: "Times New Roman", Times, serif;
  font-size: 24px;
  text-align: center;
}

.a9t3-info-subtitle {
  margin: 6px 0 14px;
  font-family: "Times New Roman", Times, serif;
}

.a9t3-voyager-notes {
  font-family: "Times New Roman", Times, serif;
}

.a9t3-voyager-notes p {
  margin: 9px 0;
}

.a9t3-writing-charts {
  max-width: 760px;
  margin: 14px auto 0;
  font-family: "Times New Roman", Times, serif;
  text-align: center;
}

.a9t3-writing-charts > div:not(.a9t3-chart-legend) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 12px;
}

.a9t3-writing-charts figure {
  margin: 0;
}

.a9t3-writing-charts img {
  max-width: 100%;
}

.a9t3-chart-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
  margin-top: 4px;
  font-size: 13px;
}

.a9t3-chart-legend span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.a9t3-chart-legend img {
  height: 14px;
  width: auto;
}

.a9t4-listening,
.a9t4-reading {
  font-family: "Times New Roman", Times, serif;
}

.a9t4-health-table,
.a9t4-talks-table,
.a9t4-animals-table,
.a9t4-definition-table {
  width: min(920px, 100%);
  margin: 12px 0 22px;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #222;
  font-size: 16px;
  line-height: 1.25;
}

.a9t4-health-table th,
.a9t4-health-table td,
.a9t4-talks-table th,
.a9t4-talks-table td,
.a9t4-animals-table th,
.a9t4-animals-table td,
.a9t4-definition-table td {
  border: 1px solid #222;
  padding: 8px 9px;
  vertical-align: top;
}

.a9t4-health-table th,
.a9t4-talks-table th,
.a9t4-animals-table th {
  text-align: center;
  font-weight: 700;
}

.a9t4-health-table th:nth-child(1),
.a9t4-health-table td:nth-child(1),
.a9t4-health-table th:nth-child(2),
.a9t4-health-table td:nth-child(2) {
  width: 30%;
}

.a9-source-box.a9t4-wordbox,
.a9-source-box.a9t4-locations-box,
.a9-source-box.a9t4-notes-box,
.a9-source-box.a9t4-researchers-box,
.a9-source-box.a9t4-heading-box {
  width: max-content;
  max-width: 100%;
  margin: 12px auto 22px;
  padding: 14px 26px;
  border: 2px solid #222;
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.35;
}

.a9-source-box.a9t4-locations-box,
.a9-source-box.a9t4-notes-box,
.a9-source-box.a9t4-researchers-box,
.a9-source-box.a9t4-heading-box {
  margin-left: 0;
}

.a9-source-box.a9t4-wordbox p,
.a9-source-box.a9t4-locations-box p,
.a9-source-box.a9t4-notes-box p,
.a9-source-box.a9t4-researchers-box p,
.a9-source-box.a9t4-heading-box p {
  margin: 2px 0;
}

.a9-source-box.a9t4-notes-box {
  width: min(620px, 100%);
  margin-top: 22px;
  padding: 18px 28px;
}

.a9-source-box.a9t4-notes-box p {
  margin: 12px 0;
}

.a9t4-water-heater {
  position: relative;
  width: min(740px, 100%);
  min-height: 420px;
  margin: 8px 0 28px;
  padding-left: 150px;
  text-align: left;
}

.a9t4-water-heater img {
  display: block;
  width: min(100%, 560px);
  margin: 0;
}

.a9t4-label {
  position: absolute;
  margin: 0;
  font-size: 16px;
  white-space: nowrap;
}

.a9t4-label-11 {
  left: 0;
  top: 56%;
}

.a9t4-label-12 {
  left: 0;
  top: 83%;
}

.a9t4-label-13 {
  left: 0;
  top: 74%;
}

.a9t4-listening .inline-answer,
.a9t4-reading .inline-answer,
.a9t4-water-heater .inline-answer {
  width: 118px;
  height: 21px;
  margin: 0 4px;
  border: 0;
  border-bottom: 1px dotted #222;
  background: transparent;
  box-shadow: none;
  font-size: 14px;
  vertical-align: baseline;
}

.a9t4-listening .inline-answer::placeholder,
.a9t4-reading .inline-answer::placeholder {
  color: transparent;
}

#examView.academic-exam.book-9.test-4:is(.module-listening, .module-reading)
  :is(.a9t4-listening, .a9t4-reading)
  .inline-answer::placeholder {
  color: #777 !important;
  opacity: 1 !important;
}

.a9t4-listening .a9-choice-question label,
.a9t4-reading .a9-choice-question label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 2px 0 2px 36px;
}

.a9t4-marie-title {
  margin: 8px 0 14px;
  padding: 10px 0;
  border-top: 2px solid #222;
  border-bottom: 2px solid #222;
  text-align: center;
  font-size: 28px;
}

.a9t4-marie-image {
  float: right;
  width: min(42%, 360px);
  margin: 0 0 10px 18px;
}

.a9t4-identity-title {
  margin: 18px 0;
  text-align: center;
  font-size: 32px;
  font-weight: 800;
}

.a9t4-notes {
  margin: 8px 0 14px 22px;
  padding-left: 18px;
}

.a9t4-notes li {
  margin: 7px 0;
}

.a9t4-energy-chart {
  margin: 18px auto;
  text-align: center;
}

.a9t4-energy-chart img {
  width: min(100%, 760px);
  max-height: 680px;
  object-fit: contain;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.48;
  color: #151515;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  p,
  li,
  div,
  section,
  article,
  label,
  span,
  td,
  th,
  caption,
  figcaption,
  table
),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  p,
  li,
  div,
  section,
  article,
  label,
  span,
  td,
  th,
  caption,
  figcaption,
  table
) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .cd-question-group > :is(h3, h4) {
  font-size: 18px;
  line-height: 1.48;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.48;
  color: #151515;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  p,
  li,
  div,
  article,
  section,
  td,
  th,
  caption,
  figcaption
) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6
) {
  font-family: "Times New Roman", Times, serif;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-centered-title,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-centered-title,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-source-box h3,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-source-box h4,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-source-box h3,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-source-box h4,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9t3-info-title,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9t2-business-box h3,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-flowchart > h4,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-flow-step p:first-child {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-reading-table,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-table,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-source-box,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-source-box,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-job-enquiry,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9t2-business-box,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-completion-box,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-completion-box,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .a9-flowchart,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .a9-passage-source-frame {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .a9-passage-source-frame h2,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .a9-passage-source-frame h3,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .a9-job-enquiry h4 {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-reading-table th,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-reading-table td,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-table th,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-table td {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .question-block,
  .manual-question-table,
  .cd-reading-table,
  .cd-completion-box,
  .a9-source-box,
  .a9-job-enquiry,
  .a9t2-business-box,
  .a9-flowchart,
  .a9-flow-step,
  .a9t3-turbine-layout,
  .a9t4-water-heater
),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-question-group,
  .question-block,
  .manual-question-table,
  .cd-reading-table,
  .cd-completion-box,
  .a9-source-box,
  .a9-flowchart,
  .a9-flow-step,
  .a9t3-turbine-layout,
  .a9t4-water-heater
) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .question-block,
  .manual-question-table,
  .cd-reading-table,
  .cd-completion-box,
  .a9-source-box,
  .a9-job-enquiry,
  .a9t2-business-box,
  .a9-flowchart,
  .a9-flow-step,
  .a9t3-turbine-layout,
  .a9t4-water-heater
) :is(h2, h3, h4, h5, h6, p, li, dt, dd, th, td, caption, figcaption),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-question-group,
  .question-block,
  .manual-question-table,
  .cd-reading-table,
  .cd-completion-box,
  .a9-source-box,
  .a9-flowchart,
  .a9-flow-step,
  .a9t3-turbine-layout,
  .a9t4-water-heater
) :is(h2, h3, h4, h5, h6, p, li, dt, dd, th, td, caption, figcaption) {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h2, h3, h4, h5, h6, p, li),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h2, h3, h4, h5, h6, p, li),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-reading-table,
  .manual-question-table,
  .cd-completion-box,
  .ielts-source-box,
  .a9-source-box,
  .a9-job-enquiry,
  .a9t2-business-box,
  .a9-flowchart,
  .a9-flow-step
),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-reading-table,
  .manual-question-table,
  .cd-completion-box,
  .ielts-source-box,
  .a9-source-box,
  .a9-job-enquiry,
  .a9t2-business-box,
  .a9-flowchart,
  .a9-flow-step
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  text-align: left;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .inline-answer {
  text-align: left;
}

#examView.general-exam.book-9.module-listening .cd-paper :is(h2, h3, h4, h5, h6, p, li),
#examView.general-exam.book-9.module-reading .cd-question-pane :is(h2, h3, h4, h5, h6, p, li),
#examView.general-exam.book-9:is(.module-listening, .module-reading) :is(
  .cd-reading-table,
  .manual-question-table,
  .cd-completion-box,
  .ielts-source-box,
  .g9-source-box,
  .g9-ad,
  .g9-notes,
  .g9b-people-box
),
#examView.general-exam.book-9:is(.module-listening, .module-reading) :is(
  .cd-reading-table,
  .manual-question-table,
  .cd-completion-box,
  .ielts-source-box,
  .g9-source-box,
  .g9-ad,
  .g9-notes,
  .g9b-people-box
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.general-exam.book-9.module-reading .cd-question-pane :is(.g9-centered, .g9b-guarantee),
#examView.general-exam.book-9:is(.module-listening, .module-reading) :is(.g9-source-box h3, .g9-source-box h4, .g9-ad h3, .g9-ad h4, .g9-notes h3, .g9-jlp-title, .g9b-people-box h4) {
  text-align: left;
}

#examView.general-exam.book-9:is(.module-listening, .module-reading) .inline-answer {
  text-align: left;
}

/* G9 Test A/B scoped Listening/Reading typography. Keep this General-only and Test1/Test2-only. */
#examView.general-exam.book-9:is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g9-scoped-source-font: "Times New Roman", Times, serif;
  --g9-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g9-scoped-passage-size: 20px;
  --g9-scoped-question-size: 19px;
  --g9-scoped-input-size: 18px;
  --g9-scoped-title-size: 24px;
  --g9-scoped-section-size: 22px;
  --g9-scoped-subheading-size: 21px;
  --g9-scoped-control-size: 20px;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading {
  font-family: var(--g9-scoped-source-font) !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane,
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .g9-reading-page),
#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill, .g9-choice),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .cd-inline-fill, .g9-choice) {
  font-family: inherit !important;
  font-size: var(--g9-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-passage-title, .g13-main-title, .g9-jlp-title, .g9-ashes h2, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--g9-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .g-centered-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--g9-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .g9-centered, .g9-source-box h3, .g9-source-box h4, .g9-ad h3, .g9-ad h4, .g9-notes h3, .g9b-people-box h4),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .g9-centered, .g9-source-box h3, .g9-source-box h4, .g9-ad h3, .g9-ad h4, .g9-notes h3, .g9b-people-box h4) {
  font-family: inherit !important;
  font-size: var(--g9-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading-section > h3 {
  font-family: var(--g9-scoped-ui-font) !important;
  font-size: var(--g9-scoped-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-part-head,
#examView.general-exam.book-9:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(.cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--g9-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .ielts-source-box, .g9-source-box, .g9-ad, .g9-notes, .g9b-people-box, [style*="border"]),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, .reading-summary-completion, .ielts-source-box, .g9-source-box, .g9-ad, .g9-notes, .g9b-people-box, [style*="border"]) {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-question-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-9.test-2.module-reading .cd-passage-pane :is(.g9b-credentials, .g9b-presentation) p {
  margin: 0 0 0.8em !important;
}

#examView.general-exam.book-9.test-2.module-reading .cd-passage-pane :is(.g9b-credentials, .g9b-presentation) p:last-child {
  margin-bottom: 0 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .g9-choice label),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .g9-choice label) {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g9-scoped-source-font) !important;
  font-size: var(--g9-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-9:is(.test-1, .test-2).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-9:is(.test-1, .test-2).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g9-scoped-control-size);
  height: var(--g9-scoped-control-size);
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-listening,
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane {
  text-align: left !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(
  .manual-listening-page,
  .manual-listening-notes,
  .manual-reading-questions,
  .g10-tfng-intro,
  .g10-tfng-key,
  .g10-tfng-question,
  .g10-tfng-stem,
  .g10-tfng-options,
  .cd-question-group,
  .cd-choice-question,
  .cd-choice-option,
  .cd-option-box,
  .pdf-option-list-box,
  .pdf-source-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .manual-reading-questions,
  .manual-listening-page,
  .manual-listening-notes,
  .g10-tfng-intro,
  .g10-tfng-key,
  .g10-tfng-question,
  .g10-tfng-stem,
  .g10-tfng-options,
  .cd-question-group,
  .cd-choice-question,
  .cd-choice-option,
  .cd-option-box,
  .pdf-option-list-box,
  .pdf-source-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .pdf-source-box,
  .cd-option-box,
  .pdf-option-list-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(
  .manual-listening-page,
  .manual-listening-notes,
  .manual-reading-questions,
  .g10-tfng-intro,
  .g10-tfng-key,
  .g10-tfng-question,
  .g10-tfng-stem,
  .g10-tfng-options,
  .cd-question-group,
  .cd-choice-question,
  .cd-choice-option,
  .cd-option-box,
  .pdf-option-list-box,
  .pdf-source-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
) :is(h2, h3, h4, h5, h6, p, li, th, td, caption, figcaption, div, span),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .manual-reading-questions,
  .manual-listening-page,
  .manual-listening-notes,
  .g10-tfng-intro,
  .g10-tfng-key,
  .g10-tfng-question,
  .g10-tfng-stem,
  .g10-tfng-options,
  .cd-question-group,
  .cd-choice-question,
  .cd-choice-option,
  .cd-option-box,
  .pdf-option-list-box,
  .pdf-source-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
) :is(h2, h3, h4, h5, h6, p, li, th, td, caption, figcaption, div, span),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .pdf-source-box,
  .cd-option-box,
  .pdf-option-list-box,
  .ielts-table,
  .manual-question-table,
  .cd-reading-table
) :is(h2, h3, h4, h5, h6, p, li, th, td, caption, figcaption, div, span) {
  text-align: left !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(.g10-tfng-key, .g10-tfng-options) {
  padding-left: 0 !important;
}

.choice-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.choice-row label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 28px;
  padding: 2px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
}

.option-bank {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}

.option-bank div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  line-height: 1.45;
}

.structured-table-wrap {
  overflow-x: auto;
  padding: 14px 16px;
}

.structured-table {
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
}

.structured-table th,
.structured-table td {
  padding: 10px;
  border: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
}

.structured-table th {
  background: var(--surface-2);
}

.raw-fallback {
  margin-top: 16px;
  padding: 0;
}

.raw-fallback summary {
  padding: 14px 16px;
  color: var(--primary);
  font-weight: 800;
  cursor: pointer;
}

.raw-fallback .raw-test-pages {
  padding: 0 16px 16px;
}

.raw-page {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.raw-page-label {
  margin-bottom: 10px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.raw-page pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
  color: #24292c;
  font-family:
    "Segoe UI",
    "Microsoft YaHei",
    sans-serif;
  font-size: 15px;
  line-height: 1.72;
}

.audio-block {
  display: grid;
  gap: 14px;
  margin-bottom: 18px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-2);
}

.audio-block.compact {
  margin-bottom: 0;
  padding: 12px;
}

.section-audio {
  margin: 12px;
}

.audio-block.compact audio {
  height: 36px;
}

audio {
  width: 100%;
}
.section-audio audio {
  width: 52%;
  max-width: 1040px;
  min-width: 360px;
}

@media (max-width: 760px) {
  .section-audio audio {
    width: 100%;
    min-width: 0;
  }
}

.question-block {
  padding: 18px 0;
  border-top: 1px solid var(--line);
}

.question-block:first-child {
  border-top: 0;
}

.question-title {
  display: flex;
  gap: 10px;
  align-items: baseline;
  margin-bottom: 10px;
}

.question-title strong {
  color: var(--primary);
}

.question-block.choice-question > p {
  font-weight: 800;
}

.options {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.option-label {
  display: flex;
  gap: 10px;
  align-items: center;
  min-height: 34px;
  cursor: pointer;
}

.answer-panel {
  display: grid;
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
}

.answer-panel-head {
  display: flex;
  justify-content: space-between;
  padding: 16px;
  border-bottom: 1px solid var(--line);
}

.answer-list {
  display: grid;
  align-content: start;
  gap: 10px;
  overflow: auto;
  padding: 16px;
}

.answer-chip {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.answer-chip span:first-child {
  display: grid;
  width: 36px;
  height: 32px;
  place-items: center;
  border-radius: 6px;
  background: var(--surface-2);
  font-weight: 700;
}

.answer-chip input {
  width: 100%;
}

.answer-review-line {
  grid-column: 2 / -1;
  color: var(--muted);
  font-size: 13px;
}

.answer-dialog {
  width: min(900px, calc(100vw - 28px));
  max-height: min(820px, calc(100vh - 28px));
  border: 0;
  border-radius: 8px;
  padding: 0;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.26);
}

.answer-dialog::backdrop {
  background: rgba(18, 28, 30, 0.42);
}

.answer-dialog-content {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  max-height: min(820px, calc(100vh - 28px));
}

.answer-dialog-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-bottom: 1px solid var(--line);
}

.answer-dialog-head p,
.answer-dialog-summary {
  color: var(--muted);
}

.answer-dialog-summary {
  padding: 12px 18px;
  border-bottom: 1px solid var(--line);
  background: var(--surface-2);
}

.modal-answer-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
}

.exam-actions {
  justify-content: space-between;
  padding: 16px;
  border-top: 1px solid var(--line);
}

.score-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 0;
}

.metric {
  padding: 10px 12px;
}

.metric span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.metric strong {
  display: block;
  margin-top: 4px;
  font-size: 22px;
  line-height: 1.05;
}

.review-list {
  display: grid;
  gap: 10px;
}

.review-item {
  padding: 16px;
}

.module-review {
  display: grid;
  gap: 12px;
}

.result-table-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 10px;
}

.result-table-wrap {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: var(--shadow);
}

.result-review-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 12px;
  line-height: 1.18;
}

.result-review-table th,
.result-review-table td {
  overflow: hidden;
  padding: 10px 6px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: middle;
}

.result-review-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--surface-2);
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.result-review-table tbody tr:last-child td {
  border-bottom: 0;
}

.result-review-table tbody tr.is-wrong {
  background: rgba(255, 79, 79, 0.05);
}

.result-review-table tbody tr.is-correct {
  background: rgba(18, 150, 107, 0.05);
}

.result-question-cell {
  font-weight: 800;
}

.result-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  min-height: 20px;
  font-size: 16px;
  font-weight: 900;
  line-height: 1;
}

.result-status-pill.status-correct {
  color: #1677ff;
}

.result-status-pill.status-wrong {
  color: var(--danger);
}

.result-status-pill.status-pending {
  width: auto;
  color: var(--muted);
  font-size: 11px;
}

.result-answer-cell.is-empty {
  color: var(--muted);
}

.result-question-text {
  color: var(--muted);
}

.result-col-question {
  width: 40px;
}

.result-col-status {
  width: 42px;
}

.result-col-user {
  width: 68px;
}

.result-col-correct {
  width: auto;
}

.result-table-empty {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  color: var(--muted);
}

.module-review-head,
.module-review > div:first-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
}

.module-review-head span,
.muted-review span,
.muted-review p,
.module-perfect {
  color: var(--muted);
}

.module-wrong-list {
  display: grid;
  gap: 10px;
}

.module-pending {
  margin: 0;
  padding: 8px 10px;
  border: 1px solid #f0c36d;
  border-radius: 6px;
  background: #fff8e6;
  color: #7a4b00;
  font-weight: 700;
}

.module-wrong-item {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-2);
}

.module-wrong-item p {
  margin: 8px 0 0;
}

.review-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.forecast-review-grid {
  display: grid;
  gap: 10px;
}

.forecast-review-item {
  display: grid;
  gap: 10px;
}

.forecast-review-item > div:first-child,
.forecast-explanation-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
}

.forecast-review-item p {
  margin: 0;
  color: var(--muted);
}

.forecast-explanation-card {
  display: grid;
  gap: 16px;
}

.forecast-explanation-head span {
  color: var(--muted);
}

.forecast-explanation-body {
  display: grid;
  gap: 18px;
  color: var(--text);
  line-height: 1.65;
}

.forecast-explanation-body section {
  display: grid;
  gap: 10px;
}

.forecast-explanation-body h4 {
  margin: 0;
  font-size: 18px;
}

.forecast-explanation-body article {
  padding-left: 12px;
  border-left: 3px solid var(--line);
}

.forecast-explanation-body article strong {
  display: block;
  margin-bottom: 8px;
}

.forecast-explanation-body p {
  margin: 0 0 8px;
}

.forecast-explanation-body p:last-child {
  margin-bottom: 0;
}

.status-correct {
  color: var(--success);
  font-weight: 800;
}

.status-pending {
  color: var(--muted);
  font-weight: 800;
}

.status-wrong {
  color: var(--danger);
  font-weight: 800;
}

.attempt-table-wrap {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.attempt-table {
  width: 100%;
  border-collapse: collapse;
}

.attempt-table th,
.attempt-table td {
  padding: 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}

.attempt-table th {
  background: var(--surface-2);
}

.empty-state {
  padding: 28px;
}

.admin-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.admin-panel {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 18px;
}

.admin-wide-panel {
  grid-column: 1 / -1;
}

.admin-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.admin-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.admin-stat {
  display: grid;
  gap: 3px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-2);
}

.admin-stat strong {
  font-size: 22px;
}

.admin-stat span {
  color: var(--muted);
  font-size: 13px;
}

.admin-table-wrap {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.admin-table {
  width: 100%;
  border-collapse: collapse;
  background: #ffffff;
}

.admin-table th,
.admin-table td {
  padding: 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}

.admin-table th {
  background: var(--surface-2);
}

.payment-checklist {
  display: grid;
  gap: 8px;
}

.payment-checklist span {
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #ffffff;
}

.payment-order-admin {
  display: grid;
  gap: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.activation-code-admin {
  display: grid;
  gap: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.data-backup-admin {
  display: grid;
  gap: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.data-backup-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.backup-import-button {
  position: relative;
  overflow: hidden;
}

.backup-import-button input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.payment-order-form,
.activation-code-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 110px auto;
  gap: 10px;
  align-items: end;
}

.payment-order-form label,
.activation-code-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
}

.activation-code-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.activation-code-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.activation-code-summary span {
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #ffffff;
  color: var(--muted);
  font-size: 13px;
}

.payment-order-list,
.activation-code-list {
  display: grid;
  gap: 10px;
}

.payment-order-card,
.activation-code-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.payment-order-card div,
.activation-code-card div {
  display: grid;
  gap: 4px;
}

.payment-order-card span,
.activation-code-card span {
  color: var(--muted);
  font-size: 13px;
}

.payment-order-actions {
  justify-items: end;
}

.activation-code-actions {
  display: flex;
  gap: 8px;
  justify-content: end;
}

.danger-outline-button {
  color: var(--danger);
}

.subjective-review-admin {
  display: grid;
  gap: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.subjective-queue {
  display: grid;
  gap: 12px;
}

.subjective-review-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
}

.subjective-response-list {
  display: grid;
  gap: 8px;
}

.subjective-response {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface-2);
}

.subjective-response summary {
  padding: 10px 12px;
  cursor: pointer;
  font-weight: 700;
}

.subjective-response p,
.subjective-response small {
  display: block;
  max-height: 180px;
  overflow: auto;
  padding: 0 12px 12px;
  white-space: pre-wrap;
}

.subjective-review-form {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.subjective-review-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
}

.review-note-field {
  grid-column: 1 / -1;
}

.review-note-field textarea {
  min-height: 86px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px 12px;
  resize: vertical;
}

.secondary-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  color: var(--primary);
  font-weight: 700;
  text-decoration: none;
}

.auth-dialog {
  width: min(440px, calc(100vw - 28px));
  border: 0;
  border-radius: 8px;
  padding: 0;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.26);
}

.auth-dialog::backdrop {
  background: rgba(18, 28, 30, 0.42);
}

.auth-form {
  display: grid;
  gap: 18px;
  padding: 26px;
}

.auth-copy {
  display: grid;
  gap: 8px;
}

.auth-copy h2 {
  color: #071832;
  font-size: 22px;
  line-height: 1.25;
}

.auth-copy p,
.auth-helper {
  color: #5b687d;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.55;
}

.auth-mode-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 4px;
  border-radius: 10px;
  background: #f2f4f7;
}

.auth-mode-tabs button {
  min-height: 38px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #435168;
  font-weight: 900;
}

.auth-mode-tabs button.active {
  background: #ffffff;
  color: #d92d20;
  box-shadow: 0 8px 18px rgba(32, 42, 60, 0.08);
}

.auth-form[data-mode="login"] .auth-register-only {
  display: none;
}

.auth-form label {
  gap: 8px;
  color: #435168;
  font-weight: 800;
}

.auth-form input {
  width: 100%;
  height: 44px;
  border-radius: 10px;
  background: #ffffff;
  padding: 0 13px;
  box-shadow: none;
}

.auth-form input::placeholder {
  color: #98a2b3;
}

.auth-helper {
  margin: 0;
  border-radius: 8px;
  background: #fff4f3;
  color: #b42318;
  padding: 12px 14px;
}

.auth-form .dialog-actions {
  justify-content: flex-end;
  margin-top: 2px;
}

.auth-form .dialog-actions button {
  min-width: 96px;
}

@media (max-width: 980px) {
  .writing-workspace,
  .speaking-workspace {
    height: auto;
    min-height: 0;
  }

  .writing-layout,
  .speaking-layout {
    grid-template-columns: 1fr;
  }

  .forecast-reading-practice-layout {
    grid-template-columns: 1fr;
  }

  .forecast-reading-passage {
    border-right: 0;
    border-bottom: 1px solid rgba(15, 31, 55, 0.1);
  }

  .writing-prompt-pane,
  .speaking-prompt-pane {
    min-height: 520px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .writing-editor-pane {
    min-height: 560px;
  }

  .subjective-part-nav {
    overflow-x: auto;
  }

  .subjective-rubric-result {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .writing-study-grid,
  .writing-ai-criteria,
  .writing-ai-advice-grid {
    grid-template-columns: 1fr;
  }

  .app-shell {
    display: block;
  }

  .sidebar {
    position: relative;
    top: 0;
    z-index: 20;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "nav"
      "account";
    gap: 0;
    padding: 28px 22px 0;
  }

  .sidebar::before {
    top: 18px;
    right: 18px;
    left: auto;
    font-size: 36px;
  }

  .sidebar::after {
    display: none;
  }

  .brand {
    min-height: 80px;
    padding: 0;
  }

  .brand strong {
    font-size: 34px;
  }

  .nav-list {
    display: grid;
    justify-content: stretch;
    width: 100%;
    margin-top: 18px;
    overflow-x: auto;
    padding: 8px;
  }

  .account-box {
    margin: 0;
    min-height: auto;
    padding: 14px 0 0;
    border-top: 0;
    justify-items: start;
  }

  .activation-box {
    width: min(320px, 100%);
  }

  .main {
    padding: 22px;
  }

  body[data-view="library"]:not(.is-module-library) #libraryView.view.active {
    grid-template-columns: 1fr;
    grid-template-areas:
      "hero"
      "navigator"
      "toolbar"
      "grid";
    gap: 18px;
  }

  .library-hero {
    position: static;
    min-height: 0;
    margin: 0;
    padding: 38px 34px;
  }

  .library-hero-preview {
    min-height: 220px;
  }

  .preview-exam-media {
    grid-template-rows: 96px 96px;
  }

  .library-feature-row {
    margin-top: -54px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .forecast-board {
    grid-template-columns: 1fr;
  }

  .forecast-intro-card {
    position: static;
    min-height: 0;
  }

  .forecast-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body[data-view="library"]:not(.is-module-library) .library-grid.test-card-grid {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }

  .test-paper-card {
    min-height: 282px;
  }

  .test-paper-module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .module-book-row {
    grid-template-columns: 150px minmax(0, 1fr);
  }

  .module-test-list {
    grid-template-columns: repeat(4, minmax(176px, 1fr));
  }

  .writing-library-board {
    grid-template-columns: 220px minmax(0, 1fr);
  }

  .writing-topic-preview {
    padding: 42px 34px;
  }

  .writing-topic-actions {
    right: 28px;
  }

  .exam-layout,
  .structured-reading,
  .admin-grid {
    grid-template-columns: 1fr;
  }

  .admin-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .subjective-review-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .payment-order-form,
  .payment-order-card,
  .activation-code-form,
  .activation-code-card {
    grid-template-columns: 1fr;
    display: grid;
  }

  .payment-order-actions {
    justify-items: stretch;
  }

  .activation-code-toolbar,
  .activation-code-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .answer-panel,
  .exam-content,
  .content-scroll {
    min-height: auto;
    height: auto;
  }
}

@media (max-width: 720px) {
  .main {
    padding: 16px;
  }

  body[data-view="library"] .main {
    padding-top: 0;
  }

  .topbar,
  .toolbar,
  .navigator-row,
  .exam-header,
  .result-summary {
    align-items: stretch;
    flex-direction: column;
  }

  .topbar-actions,
  .paper-card-actions,
  .score-grid,
  .modal-answer-list {
    grid-template-columns: 1fr;
    display: grid;
  }

  .result-table-board {
    grid-template-columns: 1fr;
  }

  .result-review-table {
    font-size: 11px;
  }

  .paper-navigator {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 14px;
  }

  .forecast-practice-scroll {
    padding: 10px;
  }

  .forecast-practice-head,
  .forecast-practice-body,
  .forecast-reading-passage,
  .forecast-reading-questions {
    padding: 18px;
  }

  body.is-module-library .paper-navigator {
    grid-template-columns: 1fr;
  }

  .navigator-left {
    gap: 8px;
  }

  .navigator-book-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .navigator-title {
    flex: auto;
  }

  .sidebar {
    grid-template-columns: 1fr;
  }

  .nav-list {
    justify-content: stretch;
  }

  .controls-row {
    gap: 10px;
  }

  .navigator-row,
  .navigator-title,
  .book-nav,
  .test-nav,
  .library-select-label,
  .segmented {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .book-nav,
  .test-nav,
  .segmented {
    overflow-x: auto;
  }

  .book-nav {
    flex-wrap: wrap;
    overflow-x: visible;
  }

  .library-select-label,
  .segmented {
    justify-self: stretch;
  }

  .segment {
    min-width: 78px;
  }

  .brand {
    padding: 0;
    gap: 12px;
  }

  .brand-mark {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    font-size: 24px;
  }

  .brand strong {
    font-size: 28px;
  }

  .brand-badges {
    gap: 6px;
  }

  .brand-badges em {
    min-height: 22px;
    padding: 0 8px;
    font-size: 11px;
  }

  .nav-list {
    padding: 8px;
  }

  .nav-item {
    min-width: 82px;
    padding: 0 12px;
  }

  .forecast-toolbar {
    grid-template-columns: 1fr;
  }

  .forecast-tabs,
  .forecast-part-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .forecast-part-tabs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .forecast-card-grid {
    grid-template-columns: 1fr;
  }

  .forecast-stat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .account-box {
    padding: 12px 0 0;
  }

  .library-hero {
    margin: 0;
    padding: 30px 22px;
    border-radius: 24px;
  }

  .library-kicker {
    max-width: 100%;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .library-hero h2 {
    font-size: 30px;
  }

  .hero-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero-stats div {
    min-width: 0;
    padding: 10px 12px;
  }

  .preview-layout {
    grid-template-columns: 1fr;
  }

  .preview-exam-media {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .preview-media-card,
  .preview-start-card {
    min-height: 118px;
  }

  .preview-media-card-large {
    grid-row: auto;
  }

  .library-feature-row {
    grid-template-columns: 1fr;
    margin: 0 0 22px;
  }

  .library-grid.test-card-grid {
    grid-template-columns: 1fr;
  }

  .test-paper-card {
    min-height: 0;
  }

  .test-paper-module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .module-list-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .module-status-legend {
    justify-content: flex-start;
  }

  .module-filter-panel {
    padding: 6px 16px;
  }

  .module-filter-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .writing-task-tabs {
    gap: 22px;
    overflow-x: auto;
    padding-bottom: 6px;
  }

  .writing-library-board {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .writing-topic-list {
    display: flex;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 10px;
    border-right: 0;
    border-bottom: 1px solid #d7dbe0;
  }

  .writing-topic-item {
    flex: 0 0 220px;
    border-radius: 4px;
  }

  .writing-topic-preview {
    padding: 72px 16px 32px;
  }

  .writing-topic-actions {
    top: 18px;
    right: 16px;
    left: 16px;
    justify-content: flex-end;
    gap: 10px;
  }

  .writing-preview-document {
    font-size: 15px;
  }

  .module-book-row {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 16px 12px 12px;
  }

  .module-book-label {
    min-height: 88px;
    padding-left: 0;
  }

  .module-book-label strong {
    justify-self: start;
    margin-top: 8px;
    font-size: 38px;
  }

  .module-test-list {
    display: flex;
    max-width: 100%;
    padding: 0 0 8px;
  }

  .module-test-card {
    flex: 0 0 176px;
  }

  .book-nav,
  .test-nav {
    padding-bottom: 2px;
  }

}

.a8-centered {
  text-align: center;
}

.a8-example {
  margin: 12px 0 18px 28px;
  max-width: 360px;
  padding: 10px 14px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a8-source-box {
  border: 1px solid #222;
  background: #ffffff;
}

.a8-listening-box {
  margin: 12px 0 18px;
  padding: 12px 18px;
}

.a8-choice-question,
.a8-choice-grid {
  display: grid;
  gap: 6px;
  margin: 12px 0 18px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.35;
}

.a8-choice-question label,
.a8-choice-grid label {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  min-height: 26px;
}

.a8-choice-question p {
  margin: 0 0 2px;
}

.a8-booking-form th,
.a8-booking-form td,
.a8-telepathy-table th,
.a8-telepathy-table td,
.a8-writing-table th,
.a8-writing-table td {
  padding: 7px 9px;
}

.a8-booking-form thead th,
.a8-telepathy-table thead th,
.a8-writing-table thead th {
  text-align: center;
}

.a8-notes {
  margin: 12px 0 18px;
  padding: 12px 18px;
  border: 1px solid #222;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.4;
}

.a8-notes ul {
  margin: 6px 0 12px 24px;
  padding: 0;
}

.a8-geography-box {
  max-width: 720px;
  margin: 12px 0 18px;
  padding: 18px 22px;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.4;
}

.a8-geography-box h4 {
  width: fit-content;
  min-width: 210px;
  margin: -31px auto 18px;
  padding: 7px 18px;
  background: #111;
  color: #fff;
  text-align: center;
  letter-spacing: 0;
}

.a8-geography-box ul {
  margin: 6px 0 12px 24px;
  padding: 0;
}

.a8-geography-continuation {
  margin-top: 18px;
}

.a8-inline-figure,
.a8-diagram,
.a8-writing-pie {
  margin: 14px auto;
  text-align: center;
}

.a8-inline-figure img {
  max-width: 170px;
}

.a8-diagram img {
  width: min(620px, 100%);
}

.a8-writing-pie img {
  width: min(520px, 100%);
}

.a8-inline-answers {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin: 12px 0;
}

.a8-inline-answers label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.a8-list-box p {
  margin: 3px 0;
}

#examView.academic-exam.book-8.test-1.module-reading
  #reading-questions-1
  .a8-list-box {
  box-sizing: border-box;
  width: min(360px, 100%);
  padding-left: 6px;
}

#examView.academic-exam.book-8.test-1.module-reading
  #reading-questions-2
  .a8-list-box {
  box-sizing: border-box;
  width: min(560px, 100%);
  padding-left: 6px;
}

.a8-paragraph-label {
  display: inline-block;
  min-width: 1em;
  margin-right: 0.35em;
  font-weight: 700;
}

.a8-passage-subtitle {
  margin: 8px auto 14px;
  max-width: 720px;
  text-align: center;
  font-weight: 400;
  line-height: 1.35;
}

.a8-timekeeping-title {
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  width: min(540px, 100%);
  margin: 14px auto 18px;
}

.a8-timekeeping-title .a8-inline-figure {
  margin: 0;
}

.a8-timekeeping-title .a8-inline-figure img {
  max-width: 105px;
}

.a8-timekeeping-title h2 {
  margin: 0 0 8px;
  text-align: left;
}

.a8-timekeeping-title .a8-passage-subtitle {
  grid-column: 1 / -1;
  margin: -2px 0 0;
  text-align: center;
}

@media (max-width: 560px) {
  .a8-timekeeping-title {
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 12px;
  }

  .a8-timekeeping-title .a8-inline-figure img {
    max-width: 80px;
  }
}

.a8-judgement-table,
.a8-judgement-table th,
.a8-judgement-table td {
  border: 0;
  background: transparent;
}

.a8-judgement-table {
  width: auto;
  margin: 5px 0 10px 34px;
}

.a8-judgement-table th,
.a8-judgement-table td {
  padding: 0 10px 1px 0;
  line-height: 1.2;
  vertical-align: top;
}

.a8-judgement-table th {
  min-width: 90px;
  text-align: left;
  font-style: italic;
  font-weight: 700;
  white-space: nowrap;
}

.a8-judgement-table td {
  font-style: italic;
}

.a8-yn-line {
  margin: 5px 0 7px;
}

.a8-yn-line p {
  margin: 0 0 2px;
  line-height: 1.25;
}

.a8-choice-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin-left: 17px;
  line-height: 1.2;
}

.a8-choice-row input[type="radio"] {
  margin: 0 3px 0 0;
}

.a8t2-report-form th,
.a8t2-report-form td,
.a8t2-damage-table th,
.a8t2-damage-table td,
.a8t2-flat-glass-table th,
.a8t2-flat-glass-table td {
  padding: 10px 12px;
  vertical-align: top;
}

.a8t2-report-form thead th,
.a8t2-damage-table thead th,
.a8t2-flat-glass-table thead th {
  text-align: center;
}

.a8t2-report-form tbody th {
  width: 32%;
  text-align: left;
}

.a8t2-map,
.a8t2-float {
  margin: 14px auto;
  text-align: center;
}

.a8t2-map img {
  width: min(720px, 100%);
}

.a8t2-float img {
  width: min(680px, 100%);
}

.a8t2-example-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  max-width: 420px;
  margin: 14px 0;
  padding: 10px 16px;
}

.a8t2-black-title {
  margin: 10px 0 22px;
  padding: 14px 18px;
  background: #111;
  color: #fff;
  text-align: center;
  letter-spacing: 0;
}

.a8t2-word-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 4px;
  margin: 12px 0 20px;
  padding: 10px 14px;
  width: min(320px, 100%);
}

.a8t2-word-grid p {
  margin: 0;
}

.a8t2-pie-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}

.a8t2-pie-grid figure {
  margin: 0;
  text-align: center;
}

.a8t2-pie-grid figure:last-child {
  grid-column: 1 / -1;
  justify-self: center;
  max-width: 420px;
}

.a8t2-pie-grid figcaption {
  margin-bottom: 6px;
  font-weight: 700;
}

.a8t2-pie-grid img {
  width: min(360px, 100%);
}

.ielts-speaking-timing.a8-speaking-timing-plain {
  border: 0;
  padding-top: 0;
}

.a8t3-rental-form th,
.a8t3-rental-form td,
.a8t3-property-table th,
.a8t3-property-table td,
.a8t3-events-table th,
.a8t3-events-table td {
  padding: 9px 11px;
  vertical-align: top;
}

.a8t3-rental-form {
  max-width: 620px;
}

.a8t3-rental-form thead th {
  text-align: center;
}

.a8t3-rental-form tbody th {
  width: 38%;
  text-align: left;
}

.a8t3-property-table,
.a8t3-events-table {
  font-size: 0.92rem;
}

.a8t3-national-centre,
.a8t3-process-box {
  max-width: 720px;
  padding: 22px 26px;
}

.a8t3-national-centre h4,
.a8t3-process-box h4 {
  text-align: center;
  margin-top: 0;
}

.a8t3-notes-table {
  width: 100%;
  border-collapse: collapse;
}

.a8t3-notes-table th,
.a8t3-notes-table td {
  border: 0;
  padding: 6px 10px;
  text-align: left;
  vertical-align: top;
}

.a8t3-notes-table th {
  width: 34%;
  font-weight: 700;
}

.a8t3-small-option-box {
  width: min(260px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding: 8px 14px;
}

.a8t3-module-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 18px;
}

.a8t3-module-table th,
.a8t3-module-table td {
  border: 0;
  padding: 6px 8px;
  text-align: left;
}

.a8t3-word-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px 18px;
  padding: 12px 18px;
}

.a8t3-word-list p {
  margin: 0;
}

.a8t3-headings-box {
  max-width: 520px;
  margin: 14px auto;
  padding: 14px 22px;
}

.a8t3-headings-box h5 {
  text-align: center;
  margin: 0 0 10px;
}

.a8t3-example-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  max-width: 340px;
  margin: 14px 0;
  padding: 10px 16px;
}

.a8t3-clock-passage {
  padding: 18px 22px;
}

.a8t3-clock-passage h2 {
  margin-top: 0;
  text-align: center;
  letter-spacing: 0;
}

.a8t3-note-list {
  margin: 12px 0 20px;
  padding-left: 22px;
}

.a8t3-diagram-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
  margin-top: 18px;
}

.a8t3-diagram-grid figure {
  margin: 0;
  text-align: center;
}

.a8t3-diagram-grid img {
  width: min(330px, 100%);
}

.a8t3-speaking-timing {
  border: 0;
  padding-top: 0;
}

.a8t4-hotel-box,
.a8t4-rainbow-box {
  max-width: 720px;
  padding: 18px 24px;
}

.a8t4-hotel-box h4,
.a8t4-rainbow-box h4 {
  margin-top: 0;
  text-align: center;
}

.a8t4-example-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 18px;
  max-width: 420px;
  padding: 10px 14px;
}

.a8t4-source-figure {
  margin: 14px auto;
  text-align: center;
}

.a8t4-source-figure img {
  width: min(620px, 100%);
}

.a8t4-flowchart {
  position: relative;
  width: min(590px, 100%);
  box-sizing: border-box;
  padding-left: 112px;
}

.a8t4-flowchart img {
  width: 100%;
}

.a8t4-flow-answer {
  position: absolute;
  transform: translate(0, -50%);
}

.a8t4-flow-answer .inline-answer {
  width: 96px;
  height: 20px;
  min-height: 20px;
  padding: 1px 6px;
  font-size: 0.78rem;
  background: rgba(255, 255, 255, 0.96);
}

.a8t4-flow-answer.q27 {
  left: 0;
  top: 33.5%;
}

.a8t4-flow-answer.q28 {
  left: 0;
  top: 51%;
}

.a8t4-flow-answer.q29 {
  left: 0;
  top: 66.8%;
}

.a8t4-flow-answer.q30 {
  left: 0;
  top: 80.4%;
}

.a8t4-ant-diagram {
  width: min(520px, 100%);
}

.a8t4-ant-diagram img {
  width: 100%;
}

.a8t4-ant-answer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 8px 18px;
  width: min(420px, 100%);
  margin: 8px auto 14px;
}

.a8t4-ant-answer-grid label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.a8t4-ant-answer-grid .inline-answer {
  width: 102px;
  height: 22px;
  min-height: 22px;
  padding: 1px 6px;
  font-size: 0.78rem;
}

.a8t4-label-table {
  width: min(620px, 100%);
  margin: 12px 0;
  border-collapse: collapse;
}

.a8t4-label-table th,
.a8t4-label-table td {
  border: 0;
  padding: 5px 8px;
  text-align: left;
  vertical-align: middle;
}

.a8t4-label-table td:last-child {
  width: 170px;
}

.a8t4-painting-box {
  width: min(280px, 100%);
  margin: 12px auto 18px;
  padding: 10px 18px;
}

.a8t4-painting-box h5,
.a8t4-headings-box h5 {
  margin: 0 0 8px;
  text-align: center;
}

.a8t4-rainbow-box {
  position: relative;
}

.a8t4-rainbow-box img {
  float: right;
  width: 135px;
  margin: 0 0 12px 18px;
}

.a8t4-headings-box {
  max-width: 560px;
  margin: 14px auto;
  padding: 14px 20px;
}

.a8t4-boxed-passage {
  padding: 16px 20px;
}

.a8t4-boxed-passage h2 {
  margin-top: 0;
  text-align: center;
  letter-spacing: 0;
}

.a8t4-ending-box {
  width: min(320px, 100%);
  margin-top: 14px;
  padding: 10px 16px;
}

.a8t4-ant-title {
  display: grid;
  grid-template-columns: 88px 1fr;
  align-items: center;
  margin: 0 0 14px;
  background: #111;
  color: #fff;
}

.a8t4-ant-title img {
  width: 88px;
  height: 58px;
  object-fit: cover;
}

.a8t4-ant-title figcaption {
  padding: 10px 14px;
  font-weight: 700;
  font-size: 1.15rem;
}

.a8t4-writing-chart {
  margin: 18px auto 0;
  text-align: center;
}

.a8t4-writing-chart img {
  width: min(560px, 100%);
}

.a8t4-speaking-timing {
  border: 0;
  padding-top: 0;
}

.a7t4-homestay-form,
.a7t4-nature-table,
.a7t4-info-table,
.a7t4-noise-table {
  width: min(760px, 100%);
}

.a7-bordered-box {
  border: 1px solid #222;
  background: transparent;
}

.a7t4-homestay-form th,
.a7t4-homestay-form td,
.a7t4-nature-table th,
.a7t4-nature-table td,
.a7t4-info-table th,
.a7t4-info-table td,
.a7t4-noise-table th,
.a7t4-noise-table td {
  padding: 7px 10px;
  vertical-align: top;
}

.a7t4-homestay-form thead th,
.a7t4-nature-table thead th,
.a7t4-info-table thead th,
.a7t4-noise-table th {
  text-align: center;
}

.a7t4-homestay-form {
  border: 2px solid #222;
  max-width: 860px;
}

.a7t4-homestay-form th,
.a7t4-homestay-form td {
  border: 0;
}

.a7t4-homestay-form thead th {
  border-bottom: 2px solid #222;
  padding: 14px 10px;
  font-size: 1.08rem;
}

.a7t4-homestay-form tbody th {
  width: 30%;
  text-align: left;
  font-weight: 700;
}

.a7t4-homestay-form tbody td,
.a7t4-homestay-form tbody th {
  padding: 8px 14px;
}

.a7t4-homestay-example-row > td {
  border-bottom: 2px solid #222;
  padding: 10px;
}

.a7t4-homestay-example {
  width: 72%;
  border-collapse: collapse;
  border: 1px solid #222;
}

.a7t4-homestay-example td {
  width: 50%;
  padding: 12px 18px;
  vertical-align: top;
}

.a7t4-dotted-answer {
  display: inline-block;
  min-width: 130px;
  text-align: center;
  border-bottom: 1px dotted #222;
}

.a7t4-homestay-form .inline-answer {
  width: 155px;
}

.a7t4-choice-key {
  margin: 10px 0 14px 92px;
}

.a7t4-choice-key p {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 24px;
  margin: 2px 0;
}

.a7t4-choice-key strong {
  text-align: center;
}

.a7t4-plan-wrap {
  position: relative;
  width: min(430px, 100%);
  margin: 14px 0 18px 24px;
}

.a7t4-plan-wrap img {
  display: block;
  width: 100%;
  height: auto;
}

.a7t4-plan-answer {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  font-weight: 700;
}

.a7t4-plan-answer .inline-answer {
  width: 96px;
}

.a7t4-plan-answer-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  align-items: center;
  margin: -8px 0 18px 24px;
}

.a7t4-plan-answer-row span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.a7t4-plan-answer-row .inline-answer {
  width: 112px;
}

.a7t4-plan-q15 {
  right: 6%;
  bottom: 8%;
}

.a7t4-plan-q16 {
  left: 4%;
  bottom: 22%;
}

.a7t4-plan-q17 {
  left: 46%;
  top: 39%;
}

.a7t4-msg-box {
  width: min(720px, 100%);
  padding: 18px 24px;
}

.a7t4-msg-box h3 {
  margin-top: 0;
  text-align: center;
}

.a7t4-msg-box ul {
  margin-top: 8px;
}

.a7t4-msg-box > ul ul {
  list-style: none;
  padding-left: 1.35em;
}

.a7t4-msg-box > ul ul > li {
  position: relative;
}

.a7t4-msg-box > ul ul > li::before {
  content: "-";
  position: absolute;
  left: -1.05em;
}

.a7t4-passage-image {
  margin: 8px 0 12px;
  text-align: center;
}

.a7t4-passage-image img {
  max-width: 100%;
  height: auto;
}

.a7t4-pyramid-image img {
  width: min(260px, 60%);
}

.a7t4-salmon-image img {
  width: min(360px, 78%);
}

.a7t4-subtitle {
  font-weight: 700;
}

.a7t4-answer-key {
  width: min(520px, 100%);
  margin: 10px 0 14px;
}

.a7t4-answer-key td {
  padding: 5px 8px;
}

.a7t4-plain-key {
  width: min(520px, 100%);
  margin: 10px 0 14px 150px;
}

.a7t4-plain-key p {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
  margin: 2px 0;
}

.a7t4-ending-box,
.a7t4-researcher-box {
  width: min(540px, 100%);
  margin: 12px 0 18px;
  padding: 12px 16px;
}

.a7t4-ending-box p,
.a7t4-researcher-box p {
  margin: 2px 0;
}

.a7t4-researcher-box h4 {
  margin: 0 0 8px;
  text-align: center;
}

.a7t4-match-list p {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  gap: 10px;
  align-items: start;
  margin: 4px 0;
}

.a7t4-match-list .inline-answer {
  width: 170px;
}

.a7t4-table-caption {
  margin-top: 6px;
  text-align: center;
  font-weight: 700;
}

.a7t4-speaking-part2 .ielts-speaking-cue-card {
  min-height: 240px;
}

.a7t4-writing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
  align-items: start;
  margin: 8px 0 14px;
}

.a7t4-writing-grid figure {
  margin: 0;
  text-align: center;
}

.a7t4-writing-grid img {
  width: min(280px, 100%);
}

.a7t4-writing-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  justify-content: center;
  margin: 8px auto 0;
  font-size: 0.85rem;
}

.a7t4-writing-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.a7t4-swatch {
  display: inline-block;
  width: 16px;
  height: 12px;
  border: 1px solid #111;
  flex: 0 0 auto;
}

.a7t4-swatch-coal {
  background: #fff;
}

.a7t4-swatch-oil {
  background: #111;
}

.a7t4-swatch-gas {
  background: #bcbcbc;
}

.a7t4-swatch-hydro {
  background: repeating-linear-gradient(0deg, #fff 0, #fff 2px, #333 2px, #333 3px);
}

.a7t4-swatch-nuclear {
  background:
    repeating-linear-gradient(45deg, transparent 0, transparent 4px, #333 4px, #333 5px),
    repeating-linear-gradient(-45deg, #fff 0, #fff 4px, #333 4px, #333 5px);
}

.cd-listening .a12t2-listening-page .inline-answer,
.cd-reading .a12t2-reading-page .inline-answer {
  box-sizing: border-box;
  width: 92px;
  min-width: 0;
  height: 1.15em;
  margin: 0 3px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  line-height: 1.1;
  text-align: center;
  vertical-align: baseline;
}

.cd-listening .a12t2-listening-page .inline-answer::placeholder,
.cd-reading .a12t2-reading-page .inline-answer::placeholder {
  color: transparent;
  opacity: 0;
}

.ielts-speaking-timing.a12t2-speaking-timing-plain {
  padding: 0;
  border: 0;
  background: transparent;
}

.a12t2-speaking-part2 {
  align-items: start;
}

.a12t2-writing-maps img {
  width: 100%;
  max-width: 640px;
}

.cd-reading .a12t2-reading-page .a12t2-boxed-answer-row {
  display: block;
  width: auto;
  margin: 7px 0;
}

.cd-reading .a12t2-reading-page .a12t2-boxed-answer-row span {
  display: inline;
}

.cd-reading .a12t2-reading-page .a12t2-boxed-answer-row .inline-answer {
  display: inline-block;
  width: 58px;
  height: 22px;
  margin: 0 0 0 8px;
  padding: 1px 6px;
  border: 1px solid #8a8f94;
  border-radius: 2px;
  background: #ffffff;
  line-height: 1.2;
  vertical-align: baseline;
}

.a12t3-listening-page,
.a12t3-reading-page {
  color: #111111;
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.36;
}

.a12t3-listening-page h4,
.a12t3-reading-page h4 {
  display: flex;
  gap: 48px;
  align-items: baseline;
}

.a12t3-centered,
.a12t3-flow-title {
  text-align: center;
}

.a12t3-bordered-notes {
  max-width: 900px;
  margin: 20px 0 0;
  border: 1px solid #222222;
}

.a12t3-bordered-notes > h3 {
  margin: 0;
  padding: 12px 18px;
  border-bottom: 1px solid #222222;
  text-align: center;
}

.a12t3-bordered-notes > h5,
.a12t3-bordered-notes > ul {
  margin-right: 20px;
  margin-left: 20px;
}

.a12t3-birds-notes {
  padding: 8px 24px 18px;
}

.a12t3-bordered-notes.a12t3-birds-notes > h3 {
  padding-bottom: 4px;
  border-bottom: 0;
}

.a12t3-example {
  padding: 10px 20px;
  border-bottom: 1px solid #222222;
}

.a12t3-example p {
  margin: 4px 0;
}

.a12t3-example-answer {
  display: inline-block;
  min-width: 130px;
  margin-left: 8px;
  border-bottom: 1px dotted #222222;
  text-align: center;
}

.a12t3-choice-stack,
.a12t3-mcq {
  margin: 10px 0 20px;
}

.a12t3-choice-stack .cd-choice-option,
.a12t3-mcq .cd-choice-option {
  display: flex;
  width: max-content;
  max-width: 100%;
  margin: 6px 0 6px 14px;
  gap: 8px;
}

.a12t3-option-box {
  margin: 18px auto 22px;
}

.a12t3-fitness-table {
  width: min(100%, 800px);
  margin: 18px auto;
  border-collapse: collapse;
}

.a12t3-fitness-table caption {
  padding: 8px;
  border: 1px solid #222222;
  border-bottom: 0;
  font-weight: 700;
}

.a12t3-fitness-table th,
.a12t3-fitness-table td {
  padding: 10px 12px;
  border: 1px solid #222222;
  vertical-align: top;
}

.a12t3-flowchart {
  max-width: 880px;
  margin: 20px auto 0;
}

.a12t3-flow-step {
  position: relative;
  margin: 0 auto 34px;
  padding: 12px 18px;
  border: 1px solid #222222;
  text-align: center;
}

.a12t3-flow-step:not(:last-child)::after {
  position: absolute;
  bottom: -30px;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 22px solid #222222;
  border-right: 22px solid transparent;
  border-left: 22px solid transparent;
  content: "";
  transform: translateX(-50%);
}

.cd-listening .a12t3-listening-page .inline-answer,
.cd-reading .a12t3-reading-page .inline-answer {
  box-sizing: border-box;
  width: 102px;
  min-width: 0;
  height: 1.2em;
  margin: 0 3px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit;
  line-height: 1.1;
  text-align: center;
  vertical-align: baseline;
}

.cd-listening .a12t3-listening-page .inline-answer::placeholder,
.cd-reading .a12t3-reading-page .inline-answer::placeholder {
  color: transparent;
  opacity: 0;
}

.cd-reading .a12t3-reading-page .a12t3-boxed-answer-row {
  display: block;
  width: auto;
  margin: 7px 0;
}

.cd-reading .a12t3-reading-page .a12t3-boxed-answer-row span {
  display: inline;
}

.cd-reading .a12t3-reading-page .a12t3-boxed-answer-row .inline-answer {
  display: inline-block;
  width: 58px;
  height: 22px;
  margin: 0 0 0 8px;
  padding: 1px 6px;
  border: 1px solid #8a8f94;
  border-radius: 2px;
  background: #ffffff;
  line-height: 1.2;
  vertical-align: baseline;
}

.a12t3-ending-list {
  max-width: 700px;
  margin: 18px auto 0;
}

.a12t3-ending-list p {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  margin: 7px 0;
}

.a12t3-writing-chart {
  text-align: center;
}

.a12t3-writing-chart figcaption {
  margin: 18px auto 10px;
  max-width: 640px;
  font-weight: 700;
}

.a12t3-writing-chart img {
  display: block;
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
}

.a12t3-writing-chart .a12t3-chart-legend {
  width: auto;
  max-width: 360px;
  margin-top: 8px;
}

.ielts-speaking-timing.a12t3-speaking-timing-plain {
  padding: 0;
  border: 0;
  background: transparent;
}

.a12t3-speaking-part2 {
  align-items: start;
}

.a12t3-speaking-part2 .a12t3-speaking-cue-lines {
  list-style: none;
  padding-left: 28px;
  margin: 12px 0;
}

.a12t3-speaking-part2 .a12t3-speaking-cue-lines li {
  margin: 2px 0;
}

.cd-listening .a5t2-listening-page,
.cd-reading .a5t2-reading-page {
  max-width: 760px;
  font-size: 0.95rem;
  line-height: 1.45;
}

.cd-listening .a5t2-listening-page h2,
.cd-reading .a5t2-reading-page h2 {
  margin: 0 0 8px;
  font-size: 1.05rem;
}

.cd-listening .a5t2-listening-page h2 span,
.cd-reading .a5t2-reading-page h2 span {
  font-weight: 700;
}

.a5t2-centered {
  text-align: center;
}

.a5t2-listening-page .inline-answer,
.a5t2-reading-page .inline-answer {
  box-sizing: border-box;
  width: 112px;
  min-width: 72px;
  height: 1.35em;
  margin: 0 4px;
  padding: 0 4px;
  border: 0;
  border-bottom: 1px dotted #222222;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
  vertical-align: baseline;
}

.a5t2-listening-page .inline-answer::placeholder,
.a5t2-reading-page .inline-answer::placeholder {
  color: transparent;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-reading-page .inline-answer::placeholder {
  color: #8d7a68;
  opacity: 1;
}

.a5t2-listening-page .source-box,
.a5t2-reading-page .source-box,
.a5t2-reading-page.source-box {
  border: 1px solid #333333;
  background: #ffffff;
}

.a5t2-library-form,
.a5t2-antarctica,
.a5t2-summary-box,
.a5t2-option-box {
  width: min(680px, 100%);
  margin: 10px 0 16px;
  padding: 12px 16px;
}

.a5t2-library-form h3,
.a5t2-antarctica h3 {
  margin: 4px 0 10px;
  text-align: center;
}

.a5t2-library-form ul,
.a5t2-antarctica ul {
  margin: 6px 0 10px 22px;
  padding: 0;
}

.a5t2-library-table {
  width: min(380px, 100%);
  margin: 0 auto 10px;
}

.a5t2-library-table th,
.a5t2-library-table td {
  padding: 3px 8px;
  text-align: left;
}

.a5t2-student-life {
  width: min(740px, 100%);
  margin: 10px 0 16px;
  border-collapse: collapse;
  background: #ffffff;
}

.a5t2-student-life caption,
.a5t2-science-table caption {
  padding: 7px 8px;
  border: 1px solid #333333;
  border-bottom: 0;
  font-weight: 700;
  text-align: center;
}

.a5t2-student-life th,
.a5t2-student-life td,
.a5t2-science-table th,
.a5t2-science-table td {
  border: 1px solid #333333;
  padding: 7px 9px;
  vertical-align: top;
}

.a5t2-answer-key th,
.a5t2-answer-key td {
  border: 0;
  padding: 3px 9px;
  vertical-align: top;
}

.a5t2-student-life thead th,
.a5t2-science-table thead th {
  text-align: center;
}

.a5t2-student-life th:first-child {
  width: 22%;
}

.a5t2-student-life ul {
  margin: 0 0 0 18px;
  padding: 0;
}

.a5t2-option {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 6px 0;
}

.a5t2-option input {
  margin-top: 0.22em;
}

.a5t2-option-text {
  display: inline-block;
}

.a5t2-passage-box {
  padding: 14px 18px;
}

.a5t2-passage-box h1,
.a5t2-science-passage h1 {
  margin: 12px 0 6px;
  font-size: 1.35rem;
  text-align: center;
}

.a5t2-passage-box h2:nth-of-type(2) {
  text-align: center;
}

.a5t2-summary-box p {
  margin: 8px 0;
}

.a5t2-flowchart {
  width: min(620px, 100%);
  margin: 12px 0 16px;
}

.a5t2-flowchart-title {
  width: min(620px, 100%);
  margin: 12px 0 2px;
  text-align: center;
  font-weight: 700;
}

.a5t2-flowchart img {
  width: 100%;
  height: auto;
  display: block;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(72px, 1fr));
  gap: 7px 10px;
  align-items: center;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers img {
  grid-column: 1 / -1;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer {
  position: static;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px;
  align-items: center;
  margin: 0;
  transform: none;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer .inline-answer {
  width: 100%;
  min-width: 0;
  height: 26px;
  margin: 0;
  padding: 2px 6px;
  border: 1px solid #616971;
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.6);
  font-size: 0.86rem;
  line-height: 1.2;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer::before {
  font-weight: 700;
  line-height: 1;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q4 {
  left: 80.6%;
  top: 15.4%;
  width: 18.2%;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q5 {
  left: 28.4%;
  top: 31.6%;
  width: 18.4%;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q6 {
  left: 28.5%;
  top: 48.6%;
  width: 18.6%;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q7 {
  left: 63.5%;
  top: 75.2%;
  width: 17.8%;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q8 {
  left: 80.8%;
  top: 90.5%;
  width: 18.6%;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q4,
#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q5,
#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q6,
#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q7,
#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q8 {
  left: auto;
  top: auto;
  width: auto;
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q4::before {
  content: "4";
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q5::before {
  content: "5";
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q6::before {
  content: "6";
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q7::before {
  content: "7";
}

#examView.academic-exam.book-5.test-2.module-reading .a5t2-flowchart-with-answers .a5t2-flow-answer.q8::before {
  content: "8";
}

.a5t2-flow-answer-card {
  display: grid;
  grid-template-columns: repeat(5, minmax(88px, 1fr));
  gap: 8px 12px;
  width: min(620px, 100%);
  margin: 10px 0 12px;
  padding: 0;
  border: 0;
  background: transparent;
}

.a5t2-flow-answer-card label {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 5px;
  align-items: center;
}

.a5t2-flow-answer-card .inline-answer {
  width: 100%;
  min-width: 0;
  height: 24px;
  margin: 0;
  border: 1px solid #8a8f94;
  border-radius: 2px;
  background: #ffffff;
}

.a5t2-answer-key {
  width: min(560px, 100%);
  margin: 8px 0 10px;
  border-collapse: collapse;
}

.a5t2-answer-key th {
  width: 120px;
  text-align: left;
}

.a5t2-humour-title {
  width: min(520px, 100%);
  margin: 12px 0 10px;
  padding: 6px 10px;
  background: #e9eef2;
  font-size: 1.28rem;
  font-weight: 700;
}

.a5t2-brain-layout {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(160px, 220px) minmax(150px, 0.8fr);
  gap: 12px;
  align-items: center;
  width: min(720px, 100%);
  margin-top: 14px;
}

.a5t2-brain-image {
  margin: 0;
  text-align: center;
}

.a5t2-brain-image img {
  width: min(210px, 100%);
  height: auto;
}

.a5t2-brain-right {
  align-self: start;
  margin-top: 18px;
}

.a5t2-ending-questions p {
  margin: 6px 0;
}

.a5t2-compact-radios {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-left: 8px;
  vertical-align: baseline;
}

.a5t2-compact-radios label {
  display: inline-flex;
  gap: 3px;
  align-items: center;
  white-space: nowrap;
}

.a5t2-science-passage .a5t2-columns {
  column-count: 2;
  column-gap: 28px;
}

.a5t2-science-passage .a5t2-columns p {
  break-inside: avoid;
  margin-top: 0;
}

.a5t2-footnote {
  margin-top: 10px;
  font-size: 0.78rem;
}

.a5t2-science-table {
  width: min(700px, 100%);
  margin: 10px 0 16px;
  border-collapse: collapse;
  background: #ffffff;
}

.a5t2-speaking-part2 .ielts-speaking-cue-card {
  min-height: 230px;
}

.writing-prompt-document .task-visual img[src$="writing-task-1-charts.png"] {
  width: min(760px, 100%);
}

@media (max-width: 760px) {
  .a5t2-flow-answer-card {
    grid-template-columns: repeat(2, minmax(110px, 1fr));
  }

  .a5t2-brain-layout {
    grid-template-columns: 1fr;
  }

  .a5t2-science-passage .a5t2-columns {
    column-count: 1;
  }
}

.a5t3-page {
  max-width: 860px;
  color: #111111;
  font-size: 0.93rem;
  line-height: 1.38;
}

.a5t3-page h1,
.a5t3-page h2,
.a5t3-page h3,
.a5t3-page h4 {
  margin: 9px 0 6px;
  color: #111111;
  letter-spacing: 0;
}

.a5t3-page h1 {
  font-size: 1.35rem;
  text-align: center;
}

.a5t3-page h2 {
  font-size: 1.02rem;
}

.a5t3-page h2 span {
  font-weight: 600;
}

.a5t3-page p {
  margin: 6px 0;
}

.a5t3-centered {
  text-align: center;
}

.a5t3-option {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 6px 0;
}

.a5t3-option input {
  margin-top: 0.24em;
}

.a5t3-compact-radios {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-left: 8px;
  vertical-align: baseline;
}

.a5t3-compact-radios label {
  display: inline-flex;
  gap: 3px;
  align-items: center;
  white-space: nowrap;
}

.a5t3-car-form,
.a5t3-current-car,
.a5t3-notes-box,
.a5t3-heading-box,
.a5t3-option-box {
  width: min(720px, 100%);
}

.a5t3-car-form,
.a5t3-current-car {
  padding: 14px 22px;
  border: 1px solid #333333;
  background: #ffffff;
}

.a5t3-car-form h3,
.a5t3-car-form .a5t3-form-subtitle {
  text-align: center;
}

.a5t3-car-form h4,
.a5t3-current-car h3 {
  text-align: left;
}

.a5t3-car-form .manual-table,
.a5t3-current-car .manual-table,
.a5t3-feedback-table,
.a5t3-recycling-table {
  width: 100%;
  border-collapse: collapse;
  background: #ffffff;
}

.a5t3-car-form .manual-table th,
.a5t3-car-form .manual-table td,
.a5t3-current-car .manual-table td,
.a5t3-feedback-table th,
.a5t3-feedback-table td,
.a5t3-recycling-table th,
.a5t3-recycling-table td {
  border: 1px solid #333333;
  padding: 6px 8px;
  vertical-align: top;
}

.a5t3-car-form .manual-table th,
.a5t3-car-form .manual-table td,
.a5t3-current-car .manual-table td {
  border: 0;
}

.a5t3-car-form .manual-table:first-of-type th {
  font-style: italic;
  font-weight: 400;
  text-align: left;
}

.a5t3-car-form .manual-table td:first-child,
.a5t3-current-car .manual-table td:first-child,
.a5t3-current-car .manual-table td:nth-child(3) {
  font-weight: 700;
}

.a5t3-notes-box {
  margin-top: 8px;
  padding: 12px 18px;
  border: 1px solid #333333;
  box-shadow: 4px 4px 0 #d7d7d7;
  background: #ffffff;
}

.a5t3-notes-box ul {
  margin: 0 0 0 18px;
  padding: 0;
}

.a5t3-feedback-table caption,
.a5t3-recycling-table caption {
  padding: 7px 8px;
  border: 1px solid #333333;
  border-bottom: 0;
  font-weight: 700;
  text-align: center;
}

.a5t3-feedback-table th,
.a5t3-recycling-table th {
  text-align: center;
}

.a5t3-feedback-table tr:first-child td,
.a5t3-feedback-table tr:nth-child(2) td,
.a5t3-feedback-table th {
  background: #eeeeee;
}

.a5t3-reading-page {
  max-width: 780px;
}

.a5t3-passage h1 {
  margin-top: 12px;
}

.a5t3-passage .a5t3-subtitle {
  margin: 6px auto 12px;
  max-width: 620px;
  text-align: center;
  font-weight: 600;
}

.a5t3-page .a5t3-title-bar {
  padding: 8px 16px;
  border-radius: 8px;
  background: #111111;
  color: #ffffff;
  text-align: center;
}

.a5t3-classification-key {
  margin: 6px 0 10px 28px;
}

.a5t3-classification-key p {
  margin: 3px 0;
}

.a5t3-answer-key {
  width: min(570px, 100%);
  margin: 8px 0 10px;
  border-collapse: collapse;
}

.a5t3-answer-key th,
.a5t3-answer-key td {
  border: 0;
  padding: 5px 8px;
  text-align: left;
  vertical-align: top;
}

.a5t3-answer-key th {
  width: 130px;
}

.a5t3-heading-box,
.a5t3-option-box {
  margin: 8px 0 12px;
  padding: 10px 18px;
  border: 1px solid #333333;
  background: #ffffff;
}

.a5t3-heading-box h3 {
  text-align: center;
}

.a5t3-heading-box .roman-list {
  margin: 0 0 0 26px;
  padding: 0;
  list-style-type: lower-roman;
}

.a5t3-option-box {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 3px 24px;
}

.a5t3-option-box p {
  margin: 2px 0;
}

.a5t3-map-image,
.a5t3-robot-image {
  margin: 8px 14px 10px 0;
}

.a5t3-map-image img {
  width: min(340px, 100%);
  height: auto;
  display: block;
}

.a5t3-robot-image {
  float: right;
  margin-left: 14px;
}

.a5t3-robot-image img {
  width: min(150px, 38vw);
  height: auto;
  display: block;
}

.writing-prompt-document .task-visual img[src$="garlsdon-map.jpg"] {
  width: min(760px, 100%);
}

.a5t3-speaking-part2 .ielts-speaking-cue-card {
  min-height: 240px;
}

@media (max-width: 760px) {
  .a5t3-option-box {
    grid-template-columns: 1fr;
  }

  .a5t3-robot-image {
    float: none;
    margin: 8px 0 10px;
  }
}

.a5t4-page {
  max-width: 860px;
  color: #111111;
  font-size: 0.93rem;
  line-height: 1.38;
}

.a5t4-page h1,
.a5t4-page h2,
.a5t4-page h3,
.a5t4-page h4 {
  margin: 9px 0 6px;
  color: #111111;
  letter-spacing: 0;
}

.a5t4-page h1 {
  font-size: 1.24rem;
  text-align: center;
}

.a5t4-page h2 {
  font-size: 1.02rem;
}

.a5t4-page h2 span {
  font-weight: 600;
}

.a5t4-page p {
  margin: 6px 0;
}

.a5t4-centered {
  text-align: center;
}

.a5t4-option {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin: 5px 0 5px 20px;
}

.a5t4-option input {
  margin-top: 0.24em;
}

.a5t4-compact-radios {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-left: 8px;
  vertical-align: baseline;
}

.a5t4-compact-radios label {
  display: inline-flex;
  gap: 3px;
  align-items: center;
  white-space: nowrap;
}

.a5t4-host-form,
.a5t4-notes-box,
.a5t4-heading-box,
.a5t4-option-box {
  width: min(720px, 100%);
  margin: 8px 0 12px;
  background: #ffffff;
}

.a5t4-host-form,
.a5t4-notes-box,
.a5t4-heading-box,
.a5t4-option-box,
.a5t4-boxed-passage {
  border: 1px solid #333333;
}

.a5t4-host-form {
  padding: 10px 20px;
}

.a5t4-host-form h3 {
  text-align: center;
}

.a5t4-host-form .manual-table {
  width: 100%;
  border-collapse: collapse;
}

.a5t4-host-form .manual-table th,
.a5t4-host-form .manual-table td {
  border: 0;
  padding: 4px 6px;
  text-align: left;
  vertical-align: top;
}

.a5t4-host-form .manual-table tr:first-child th {
  padding-top: 6px;
  font-style: italic;
  font-weight: 400;
}

.a5t4-indent {
  display: inline-block;
  margin-left: 42px;
  font-style: italic;
}

.a5t4-grid-table,
.a5t4-rail-table {
  width: min(720px, 100%);
  margin: 8px 0 12px;
  border-collapse: collapse;
  background: #ffffff;
}

.a5t4-grid-table caption,
.a5t4-rail-table caption {
  padding: 7px 8px;
  border: 1px solid #333333;
  border-bottom: 0;
  font-weight: 700;
  text-align: center;
}

.a5t4-grid-table th,
.a5t4-grid-table td,
.a5t4-rail-table th,
.a5t4-rail-table td {
  border: 1px solid #333333;
  padding: 6px 8px;
  vertical-align: top;
}

.a5t4-grid-table th,
.a5t4-rail-table th {
  font-weight: 700;
  text-align: center;
}

.a5t4-key-table {
  width: min(560px, 100%);
  margin: 8px 0 10px;
  border-collapse: collapse;
  background: transparent;
}

.a5t4-key-table th,
.a5t4-key-table td {
  border: 0;
  padding: 3px 8px;
  vertical-align: top;
}

.a5t4-key-table th {
  width: 120px;
  text-align: left;
}

.a5t4-office-table {
  width: min(460px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.a5t4-notes-box {
  padding: 10px 16px;
}

.a5t4-notes-box h3 {
  margin-top: 0;
}

.a5t4-note-grid {
  display: grid;
  grid-template-columns: minmax(150px, 220px) minmax(220px, 1fr);
  gap: 2px 18px;
}

.a5t4-note-grid ul {
  margin: 0 0 8px 20px;
  padding: 0;
}

.a5t4-option-box {
  padding: 10px 18px;
}

.a5t4-option-box h3 {
  text-align: center;
}

.a5t4-two-col-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(190px, 1fr));
  gap: 2px 18px;
}

.a5t4-four-col-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  gap: 2px 16px;
  width: min(520px, 100%);
  margin-left: auto;
  margin-right: auto;
}

.a5t4-option-box p {
  margin: 2px 0;
}

.a5t4-letter-key {
  margin: 6px 0 8px 26px;
}

.a5t4-letter-key p {
  margin: 2px 0;
}

.a5t4-reading-page {
  max-width: 780px;
}

.a5t4-heading-box {
  width: min(520px, 100%);
  margin-left: auto;
  padding: 10px 16px;
}

.a5t4-heading-box .roman-list {
  margin: 0 0 0 28px;
  padding: 0;
  list-style-type: lower-roman;
}

.a5t4-heading-box li {
  margin: 3px 0;
}

.a5t4-passage {
  max-width: 760px;
}

.a5t4-black-title {
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 8px auto 14px;
  padding: 8px 18px;
  background: #111111;
  color: #ffffff !important;
  font-size: 1.25rem;
}

.a5t4-two-column-passage {
  column-count: 2;
  column-gap: 24px;
}

.a5t4-two-column-passage h1,
.a5t4-two-column-passage h2,
.a5t4-two-column-passage:has(> h1) p:first-of-type {
  column-span: all;
}

.a5t4-two-column-passage h1 {
  border-bottom: 1px solid #333333;
  font-size: 1.05rem;
}

.a5t4-boxed-passage {
  padding: 12px 16px;
}

.a5t4-boxed-passage h1 {
  margin: 8px auto 14px;
  width: max-content;
  max-width: 100%;
  padding: 0 6px 4px;
  border-bottom: 1px solid #333333;
}

.a5t4-light-title {
  width: max-content;
  max-width: 100%;
  margin: 18px auto 14px;
  padding: 5px 12px 6px;
  border-top: 3px dotted #777777;
  border-bottom: 3px dotted #777777;
  font-size: 1.35rem;
  text-align: center;
}

.a5t4-rail-table {
  max-width: 640px;
}

.a5t4-rail-table td,
.a5t4-rail-table th {
  text-align: center;
}

.a5t4-rail-table tbody th {
  text-align: left;
}

.a5t4-speaking-part2 .ielts-speaking-cue-card {
  min-height: 160px;
}

.a5t4-speaking-part2 .ielts-speaking-timing {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.a5t4-writing-topic {
  margin: 14px 0;
  max-width: 620px;
  font-weight: 700;
  font-style: italic;
}

#examView.book-5:is(.test-1, .test-2, .test-3).module-writing .ielts-writing-topic-box {
  margin: 8px 0 12px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#examView.book-5:is(.test-1, .test-2, .test-3).module-writing .ielts-writing-topic-box p {
  margin: 0 0 7px;
}

#examView.book-5:is(.test-1, .test-2, .test-3).module-writing .task-visual {
  padding-top: 0;
  border-top: 0;
}

#examView.book-4.module-writing .task-visual {
  padding-top: 0;
  border-top: 0;
}

#examView.book-4.module-reading .cd-question-pane .cd-completion-box:not(.cd-option-box):not(.pdf-option-list-box) {
  padding: 0;
  border: 0;
}

#examView.book-4:is(.module-listening, .module-reading) :is(
  .cd-paper,
  .cd-question-pane,
  .cd-question-group,
  .manual-listening-page,
  .manual-reading-page,
  .cd-question-text-flow,
  .reading-summary-completion
) {
  text-align: left;
}

#examView.book-4:is(.module-listening, .module-reading) :is(
  .cd-completion-title,
  .manual-listening-centered-title,
  .manual-table-title
) {
  text-align: left;
}

#examView.book-4:is(.module-listening, .module-reading) :is(
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .a4t1-blind-words-box
) {
  margin-left: 0;
  margin-right: 0;
  text-align: left;
}

#examView.book-4:is(.module-listening, .module-reading) :is(
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .a4t1-blind-words-box
) :is(h3, h4, h5, h6, p, div, li, th, td, caption, figcaption) {
  text-align: left;
}

.a4t1-blind-words-box {
  width: min(500px, 100%);
  margin: 28px auto 34px;
  border: 1px solid #222222;
  border-collapse: separate;
  border-spacing: 0;
}

.a4t1-blind-words-box td {
  width: 25%;
  padding: 4px 26px;
  border: 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 17px;
  line-height: 1.25;
}

#examView.book-4.module-reading .cd-question-pane .g4-question-option-box {
  width: max-content;
  max-width: min(100%, 560px);
  margin: 22px auto 24px !important;
  padding: 10px 18px;
  border: 1.5px solid #222222;
  border-radius: 0;
  background: #ffffff;
  font-family: "Times New Roman", Times, serif;
  font-size: 18px;
  line-height: 1.25;
}

#examView.book-4.module-reading .cd-question-pane .g4-question-option-box h5 {
  margin: 0 0 6px;
  text-align: center !important;
  font-size: 19px;
  font-weight: 700;
}

#examView.book-4.module-reading .cd-question-pane .g4-question-option-box p {
  margin: 2px 0;
}

#examView.book-4.module-reading .cd-question-pane .g4-question-option-box strong {
  display: inline-block;
  min-width: 22px;
  font-weight: 700;
}

#examView.book-4.module-reading .cd-question-pane .g4-country-list-box {
  display: grid;
  grid-template-columns: minmax(130px, max-content) minmax(150px, max-content);
  column-gap: 54px;
}

#examView.book-4.module-reading .cd-question-pane .g4-country-list-box h5 {
  grid-column: 1 / -1;
}

#examView.book-4.module-reading .cd-question-pane .g4-fields-of-study-box {
  min-width: min(420px, 100%);
}

#examView.book-4.module-reading .cd-question-pane .g4-heading-list-box {
  max-width: min(100%, 500px);
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-heading-list {
  justify-self: center;
  width: min(100%, 540px);
  margin: 18px auto 28px;
  padding: 12px 18px 16px;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-heading-page {
  grid-template-columns: minmax(0, 1fr);
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-heading-list div {
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-heading-row {
  display: grid;
  grid-template-columns: 36px minmax(110px, max-content) auto;
  column-gap: 12px;
  align-items: center;
  margin: 14px 0;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-heading-row .inline-answer {
  justify-self: start;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-example {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(130px, 0.9fr);
  column-gap: 42px;
  align-items: center;
  margin: 8px 0 22px;
  padding: 9px 18px 10px;
  border: 1px solid #222222;
  background: #e6e6e6;
  font-family: "Times New Roman", Times, serif;
  line-height: 1.2;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-example > div {
  display: grid;
  row-gap: 2px;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-example em {
  font-weight: 700;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-example-section span {
  margin-left: 20px;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-example-answer {
  justify-items: center;
  text-align: center;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-page {
  grid-template-columns: minmax(0, 1fr);
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-key {
  display: grid;
  gap: 2px;
  width: fit-content;
  margin: 8px 0 14px 48px;
  font-style: italic;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-key div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 8px;
  align-items: baseline;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-key strong {
  font-weight: 800;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  column-gap: 10px;
  align-items: start;
  margin: 10px 0;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-classification-row .inline-answer {
  justify-self: start;
}

#examView.academic-exam.book-4.test-4.module-reading .cd-question-pane .a4t4-scarce-following-title {
  margin-top: 18px;
}

.speaking-prompt-document:has(.a5t4-speaking-part2) .speaking-part-two-instruction {
  display: none;
}

@media (max-width: 760px) {
  .a5t4-note-grid,
  .a5t4-two-col-options,
  .a5t4-four-col-options {
    grid-template-columns: 1fr;
  }

  .a5t4-two-column-passage {
    column-count: 1;
  }

  .a5t4-compact-radios {
    display: flex;
    margin: 5px 0 0;
  }
}

#examView.book-5.module-reading .a5t2-compact-radios.a5-judgement-radios,
#examView.book-5.module-reading .a5t3-compact-radios.a5-judgement-radios,
#examView.book-5.module-reading .a5t4-compact-radios.a5-judgement-radios {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  margin: 0;
}

#examView.book-5.module-reading .a5t3-reading-page p > .a5-judgement-radios,
#examView.book-5.module-reading .a5t4-reading-page p > .a5-judgement-radios {
  margin: 1px 0 0 18px;
}

#examView.book-5.module-reading .a5t2-compact-radios.a5-judgement-radios label,
#examView.book-5.module-reading .a5t3-compact-radios.a5-judgement-radios label,
#examView.book-5.module-reading .a5t4-compact-radios.a5-judgement-radios label {
  display: inline-flex;
  gap: 4px;
  align-items: center;
  min-height: 21px;
  white-space: nowrap;
}

#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  div,
  caption,
  figcaption
),
#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  div,
  caption,
  figcaption
) {
  text-align: left !important;
}

#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .source-box,
  .manual-table,
  .cd-reading-table,
  .word-box-table,
  .a5t2-library-form,
  .a5t2-antarctica,
  .a5t2-summary-box,
  .a5t2-option-box,
  .a5t3-car-form,
  .a5t3-current-car,
  .a5t3-notes-box,
  .a5t3-heading-box,
  .a5t3-option-box,
  .a5t4-host-form,
  .a5t4-notes-box,
  .a5t4-heading-box,
  .a5t4-option-box
),
#examView.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .source-box,
  .manual-table,
  .cd-reading-table,
  .word-box-table,
  .a5t2-summary-box,
  .a5t2-option-box,
  .a5t3-heading-box,
  .a5t3-option-box,
  .a5t4-heading-box,
  .a5t4-option-box
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

.a12t4-page {
  max-width: 760px;
  font-size: 0.95rem;
  line-height: 1.45;
}

.a12t4-centered {
  text-align: center;
}

.a12t4-notes-box {
  border: 1px solid #333333;
  padding: 12px 18px;
  margin: 12px 0;
  background: #ffffff;
}

.a12t4-notes-box h3,
.a12t4-notes-box h5 {
  text-align: center;
}

.a12t4-example-answer {
  display: inline-block;
  min-width: 120px;
  border-bottom: 1px dotted #333333;
  text-align: center;
}

.a12t4-choice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 5px 0;
}

.a12t4-choice input {
  flex: 0 0 auto;
  margin-top: 3px;
}

.a12t4-question {
  margin: 12px 0 16px;
}

.a12t4-map-img {
  display: block;
  width: min(620px, 100%);
  height: auto;
  margin: 10px auto 18px;
}

.a12t4-answer-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 6px 0;
}

.a12t4-table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0;
}

.a12t4-table th,
.a12t4-table td {
  border: 1px solid #333333;
  padding: 8px 10px;
  vertical-align: top;
}

.a12t4-option-box {
  border: 1px solid #333333;
  padding: 10px 18px;
  margin: 10px 0 14px;
  background: #ffffff;
}

.a12t4-option-box p {
  margin: 4px 0;
}

.a12t4-inline-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(140px, 1fr));
  gap: 4px 24px;
  margin: 14px 0;
}

.a12t4-inline-options p {
  margin: 0;
}

.a12t4-judge {
  margin: 10px 0;
}

.a12t4-judge > div {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 22px;
  margin-left: 26px;
}

.a12t4-judge label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.a12t4-notes li {
  margin: 6px 0;
}

.a12t4-writing-diagram {
  margin: 24px auto 0;
  text-align: center;
}

.a12t4-writing-diagram img {
  display: block;
  width: min(760px, 100%);
  height: auto;
  margin: 0 auto;
}

.ielts-speaking-timing.a12t4-speaking-timing-plain {
  padding: 0;
  border: 0;
  background: transparent;
}

.a12t4-speaking-part2 {
  align-items: start;
}

.a12t4-speaking-part2 .a12t4-speaking-cue-lines {
  list-style: none;
  padding-left: 28px;
  margin: 12px 0;
}

.a12t4-speaking-part2 .a12t4-speaking-cue-lines li {
  margin: 2px 0;
}

@media (max-width: 760px) {
  .a12t4-judge > div {
    gap: 8px 14px;
    margin-left: 0;
  }

  .a12t4-answer-row {
    flex-wrap: wrap;
  }
}

/* Academic Cambridge 12 Test 1-4 listening/reading scoped typography */
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a12-exam-font: "Times New Roman", Times, serif;
  --a12-ui-font: Arial, Helvetica, sans-serif;
  --a12-reading-source-size: 20px;
  --a12-question-size: 19px;
  --a12-input-size: 18px;
  --a12-title-size: 24px;
  --a12-section-size: 22px;
  --a12-subtitle-size: 21px;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) .cd-paper,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) .cd-reading-pane {
  color: #111111;
  font-family: var(--a12-exam-font);
  font-size: var(--a12-question-size);
  line-height: 1.42;
  letter-spacing: 0;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) .manual-listening-page,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) :is(.manual-reading-page, .cd-passage-text, .cd-reading-page, .a12t4-page) {
  max-width: 900px;
  font-family: inherit;
  font-size: 1em;
  line-height: inherit;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) :is(h3, h4, h5),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) :is(h3, h4, h5) {
  color: #111111;
  font-family: inherit;
  line-height: 1.25;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) h4,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) h4 {
  font-size: var(--a12-section-size);
  font-weight: 700;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) h5,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) h5 {
  margin: 14px 0 9px;
  font-size: var(--a12-subtitle-size);
  font-weight: 700;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) p,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) p,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) li,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) li {
  font-family: inherit;
  font-size: 1em;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) p,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) p {
  margin-top: 0;
  margin-bottom: 0.72em;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) :is(.cd-choice-option.interactive-choice, .a12t4-choice),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) :is(.cd-choice-option.interactive-choice, .a12t4-choice) {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 32px;
  margin: 8px 0 8px 10px;
  padding: 0;
  font-family: inherit;
  font-size: var(--a12-question-size);
  line-height: 1.42;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) :is(.choice-input-wrap, input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) :is(.choice-input-wrap, input[type="radio"], input[type="checkbox"]) {
  flex: 0 0 auto;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) input[type="radio"],
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) input[type="radio"],
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) input[type="checkbox"],
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin: 0;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) .inline-answer,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) .inline-answer {
  min-width: 92px;
  height: 1.25em;
  font-family: inherit;
  font-size: var(--a12-input-size);
  line-height: 1.2;
  vertical-align: baseline;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) .cd-passage-pane {
  font-size: var(--a12-reading-source-size);
  line-height: 1.5;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading:has(:is(.a12t1-reading-page, .a12t2-reading-page, .a12t3-reading-page, .a12t4-page)) .cd-question-pane,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening:has(:is(.a12t1-listening-page, .a12t2-listening-page, .a12t3-listening-page, .a12t4-page)) .cd-paper {
  font-size: var(--a12-question-size);
  line-height: 1.42;
}

.a12t4-page {
  max-width: 900px;
}

.a12t4-choice input {
  margin-top: 0;
}

.a12t4-question {
  margin: 16px 0 20px;
}

.a12t4-judge > div {
  gap: 12px 28px;
  margin-top: 6px;
}

.a12t4-answer-row {
  gap: 14px;
  margin: 9px 0;
}

.a12t4-table th,
.a12t4-table td {
  padding: 10px 12px;
}
/* Cambridge 10 Test 4 audited import */
.a10-test4-listening-page {
  max-width: 860px;
  font-size: 0.95rem;
}

.a10-test4-listening-page .a10-centered-title {
  text-align: center;
  margin: 12px 0;
}

.a10-t4-builders-box {
  border: 2px solid #4b5563;
  max-width: 820px;
  margin-top: 18px;
}

.a10-t4-builders-box h3 {
  margin: 0;
  padding: 8px 12px;
  border-bottom: 1px solid #4b5563;
  text-align: center;
  letter-spacing: 0;
}

.a10-t4-builders-box .example-row {
  border-bottom: 1px solid #4b5563;
  padding: 10px 16px;
}

.a10-t4-builders-box .example-row p {
  margin: 12px 0 0;
}

.a10-t4-builders-box .example-answer {
  display: inline-block;
  min-width: 150px;
  border-bottom: 1px dotted #4b5563;
  text-align: center;
  color: #6b7280;
}

.a10-t4-builders-box .builder-grid {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 14px 12px;
  padding: 14px 16px;
  align-items: start;
}

.a10-t4-work-table,
.a10-t4-attractions-table,
.a10-t4-stage-table,
.a10-t4-match-table {
  width: 100%;
  border-collapse: collapse;
  margin: 14px 0;
}

.a10-t4-work-table th,
.a10-t4-work-table td,
.a10-t4-attractions-table th,
.a10-t4-attractions-table td,
.a10-t4-stage-table td,
.a10-t4-match-table td {
  border: 1px solid #4b5563;
  padding: 10px 12px;
  vertical-align: top;
}

.a10-t4-work-table th,
.a10-t4-attractions-table th {
  font-weight: 700;
  text-align: center;
}

.a10-t4-attractions-table caption {
  border: 1px solid #4b5563;
  border-bottom: 0;
  padding: 8px 12px;
  font-weight: 700;
}

.a10-t4-stage-table td:last-child,
.a10-t4-match-table td:last-child {
  width: 160px;
  text-align: center;
}

.a10-t4-stage-table input,
.a10-t4-match-table input {
  max-width: 110px;
}

.a10-t4-nano-notes {
  border: 2px solid #4b5563;
  max-width: 720px;
  padding: 18px 24px;
}

.a10-t4-nano-notes h3 {
  text-align: center;
  margin: 12px 0 18px;
}

.a10-t4-nano-notes h4 {
  margin: 16px 0 6px;
}

.a10-megafires-passage h2,
.a10-second-nature-passage h2,
.a10-evolution-passage h2 {
  text-align: center;
}

.a10-t4-salmon-figure,
.a10-t4-salmon-key {
  margin: 18px auto;
  text-align: center;
}

.a10-t4-salmon-figure img {
  max-width: min(680px, 100%);
  height: auto;
}

.a10-t4-salmon-key img {
  max-width: min(620px, 100%);
  height: auto;
}

/* Academic Cambridge 12 Test 1-4 listening/reading text typography */
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane {
  font-family: var(--a12-exam-font);
  font-size: var(--a12-question-size);
  line-height: 1.42;
  color: #111827;
  letter-spacing: 0;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, div, label, span, td, th),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, div, label, span, td, th) {
  font-family: inherit;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper p,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane p {
  margin: 0 0 12px;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(h1, h2, h3, h4, h5, h6) {
  font-family: inherit;
  font-weight: 700;
  letter-spacing: 0;
  color: #111827;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper h1,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane h1 {
  font-size: var(--a12-title-size);
  line-height: 1.25;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper h2,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane h2 {
  font-size: var(--a12-section-size);
  line-height: 1.3;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(h3, h4, h5, h6) {
  font-size: var(--a12-subtitle-size);
  line-height: 1.3;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .a12t4-choice, .g14-tfng-option),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-choice-option, .a12t4-choice, .g14-tfng-option) {
  font-family: inherit;
  font-size: var(--a12-question-size);
  line-height: 1.42;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .inline-answer,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane .inline-answer {
  font-family: inherit;
  font-size: var(--a12-input-size);
  line-height: 1.2;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a12-exam-font);
  font-size: var(--a12-reading-source-size);
  line-height: 1.5;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-paper,
  .cd-reading-pane
) :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px !important;
  height: 20px !important;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div,
  .manual-listening-centered-title,
  .centered,
  .a12t3-centered,
  .a12t3-flow-title,
  .a12t4-centered,
  .cd-completion-title,
  .cd-question-title
),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div,
  .manual-listening-centered-title,
  .centered,
  .a12t3-centered,
  .a12t3-flow-title,
  .a12t4-centered,
  .cd-completion-title,
  .cd-question-title
) {
  text-align: left !important;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption),
#examView.academic-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption) {
  text-align: left !important;
}

/* General Cambridge 12 Test 1-4 listening/reading scoped typography */
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g12-exam-font: "Times New Roman", Times, serif;
  --g12-ui-font: Arial, Helvetica, sans-serif;
  --g12-reading-source-size: 20px;
  --g12-question-size: 19px;
  --g12-input-size: 18px;
  --g12-title-size: 24px;
  --g12-section-size: 22px;
  --g12-subtitle-size: 21px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane {
  color: #111827;
  font-family: var(--g12-exam-font);
  letter-spacing: 0;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-size: var(--g12-question-size);
  line-height: 1.42;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-size: var(--g12-reading-source-size);
  line-height: 1.5;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-page,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-title,
  .cd-question-line,
  .cd-question-card,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row,
  .manual-listening-centered-title,
  .cd-completion-title,
  .inline-answer,
  p,
  li,
  div,
  label,
  span,
  td,
  th,
  caption
),
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(
  .manual-reading-page,
  .manual-reading-questions,
  .cd-passage-text,
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-title,
  .cd-question-line,
  .cd-question-card,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row,
  .manual-listening-centered-title,
  .cd-completion-title,
  .inline-answer,
  p,
  li,
  div,
  label,
  span,
  td,
  th,
  caption
) {
  font-family: inherit;
  letter-spacing: 0;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6),
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(h1, h2, h3, h4, h5, h6) {
  color: #111827;
  font-family: var(--g12-exam-font);
  font-weight: 700;
  letter-spacing: 0;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2),
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2) {
  font-size: var(--g12-title-size);
  line-height: 1.25;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper h3,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane h3,
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, .cd-question-title) {
  font-size: var(--g12-section-size);
  line-height: 1.3;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h4, h5, h6, .manual-listening-centered-title, .cd-completion-title),
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(h4, h5, h6, .manual-listening-centered-title, .cd-completion-title) {
  font-size: var(--g12-subtitle-size);
  line-height: 1.25;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section
),
#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .g13t2-source-box,
  .a12t1-bordered-notes,
  .a12t1-bordered-passage,
  .a12t2-bordered-notes,
  .a12t2-flowchart,
  .a12t2-flow-step,
  .a12t3-bordered-notes,
  .a12t3-option-box,
  .a12t3-flowchart,
  .a12t3-flow-step,
  .a12t3-ending-list,
  .a12t4-notes-box,
  .a12t4-option-box,
  .a12t4-table,
  .g12t1-people-box,
  .g12t2-headings-box,
  .g12t2-humber-summary,
  .g12t3-headings-box,
  .g12t3-flow-chart,
  .g12t3-flow-chart section
) {
  font-family: var(--g12-exam-font);
  font-size: var(--g12-question-size);
  line-height: 1.38;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-choice-option,
  .a12t4-choice,
  .g14-tfng-option,
  .choice-fallback-row
) {
  font-family: var(--g12-exam-font);
  font-size: var(--g12-question-size);
  line-height: 1.42;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .inline-answer,
  input[type="text"],
  textarea
) {
  font-family: var(--g12-exam-font);
  font-size: var(--g12-input-size);
  line-height: 1.2;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  input[type="radio"],
  input[type="checkbox"]
) {
  width: 20px;
  height: 20px;
}

#examView.general-exam.book-12:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--g12-ui-font);
  font-size: 16px;
  line-height: 1.25;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .cd-listening .cd-paper,
  .cd-reading .cd-reading-pane,
  .manual-listening-page,
  .manual-reading-page,
  .a10-passage,
  .a10-reading-passage,
  .cd-passage-text-flow
) {
  font-size: 18px;
  line-height: 1.58;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .manual-listening-page,
  .manual-reading-page,
  .a10-passage,
  .a10-reading-passage
) :is(p, li, td, th, label, span) {
  font-size: 1em;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .manual-listening-page,
  .manual-reading-page,
  .a10-passage,
  .a10-reading-passage
) :is(h2, h3, h4, h5) {
  line-height: 1.25;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"]) {
  min-height: 1.35em;
  font-size: 0.95em;
  line-height: 1.2;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: 18px;
  height: 18px;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-listening .cd-paper,
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-listening .cd-paper :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div
),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane,
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div
) {
  text-align: left;
}

/* G10 TestA/TestB scoped typography. Do not broaden beyond General Cambridge 10 Listening/Reading. */
#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g10-scoped-source-font: "Times New Roman", Times, serif;
  --g10-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g10-scoped-passage-size: 20px;
  --g10-scoped-question-size: 19px;
  --g10-scoped-box-size: 19px;
  --g10-scoped-answer-size: 18px;
  --g10-scoped-control-size: 20px;
  --g10-scoped-source-title-size: 24px;
  --g10-scoped-source-subtitle-size: 21px;
  --g10-scoped-question-title-size: 21px;
  --g10-scoped-section-title-size: 22px;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-reading {
  font-family: var(--g10-scoped-source-font) !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane,
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .g-general-passage-text, .manual-reading-page, .pdf-source-box),
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .manual-reading-questions, .manual-listening-page, .manual-listening-notes, .cd-choice-question, .cd-choice-option, .g10-tfng-question, .g10-tfng-key, .g10-tfng-options),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-question-group, .manual-listening-page, .manual-listening-notes, .manual-reading-questions, .cd-choice-question, .cd-choice-option, .g10-tfng-question, .g10-tfng-key, .g10-tfng-options) {
  font-family: inherit !important;
  font-size: var(--g10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-passage-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--g10-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--g10-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--g10-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-reading-section > h3,
#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--g10-scoped-ui-font) !important;
  font-size: var(--g10-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-part-head {
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-notes, .manual-question-table, .cd-reading-table, .ielts-table, .pdf-source-box, .reading-summary-completion, [style*="border"]),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-notes, .manual-question-table, .cd-reading-table, .ielts-table, .pdf-source-box, .reading-summary-completion, [style*="border"]) {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .ielts-table, table),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .ielts-table, table) {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g10-scoped-source-font) !important;
  font-size: var(--g10-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"], input[data-choice-answer], input[data-multi-choice]),
#examView.general-exam.book-10:is(.test-1, .test-2).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"], input[data-choice-answer], input[data-multi-choice]) {
  width: var(--g10-scoped-control-size) !important;
  height: var(--g10-scoped-control-size) !important;
  flex: 0 0 var(--g10-scoped-control-size) !important;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes {
  margin-top: 22px;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes h5 {
  margin: 0 0 22px;
  text-align: center !important;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes p {
  margin: 0 0 18px;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes .g10-note-bullet,
#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes .g10-note-dash {
  position: relative;
  margin-left: 34px;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes .g10-note-bullet::before {
  content: "•";
  position: absolute;
  left: -28px;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes .g10-note-dash {
  margin-left: 66px;
}

#examView.general-exam.book-10.test-1.module-reading .g10-communications-notes .g10-note-dash::before {
  content: "-";
  position: absolute;
  left: -28px;
}

/* A10 Test 1-4 scoped Listening/Reading typography only. Do not broaden beyond Academic Cambridge 10 tests 1-4. */
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a10-scoped-source-font: "Times New Roman", Times, serif;
  --a10-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a10-scoped-passage-size: 20px;
  --a10-scoped-question-size: 19px;
  --a10-scoped-box-size: 19px;
  --a10-scoped-answer-size: 18px;
  --a10-scoped-control-size: 20px;
  --a10-scoped-source-title-size: 24px;
  --a10-scoped-source-subtitle-size: 21px;
  --a10-scoped-question-title-size: 21px;
  --a10-scoped-section-title-size: 22px;
  letter-spacing: 0;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a10-scoped-source-font) !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .manual-reading-page, .a10-passage, .a10-reading-passage, .cd-passage-text-flow, .pdf-source-box),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .manual-reading-questions, .manual-reading-page, .manual-listening-page, .manual-listening-notes, .cd-choice-question, .cd-choice-option, .a10-judgement-block, .a10-judgement-key, .a10-judgement-question, .a10-choice-list, .a10-choice, .a10-short-answer-block, .a10-word-box),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .manual-listening-page, .manual-listening-notes, .manual-reading-questions, .cd-choice-question, .cd-choice-option, .a10-feature-box, .a10-people-box, .a10-management-notes, .a10-action-box, .a10-dolphin-box, .a10-self-reg-notes) {
  font-family: inherit !important;
  font-size: var(--a10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, .a10-transport-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--a10-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--a10-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--a10-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a10-scoped-ui-font) !important;
  font-size: var(--a10-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-notes, .manual-question-table, .cd-reading-table, .ielts-table, .pdf-source-box, .reading-summary-completion, [style*="border"], .a10-listening-form, .a10-trip-table, .a10-reading-table, .a10-match-table, .a10-word-box, .a10-heading-box, .a10-reading-box, .a10-passage2-boxed),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-notes, .manual-question-table, .cd-reading-table, .ielts-table, .pdf-source-box, .reading-summary-completion, [style*="border"], .a10-listening-form, .a10-trip-table, .a10-reading-table, .a10-match-table, .a10-feature-box, .a10-people-box) {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .ielts-table, table),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .ielts-table, table) {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a10-choice, .a10-choice-list label),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a10-choice, .a10-choice-list label) {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a10-scoped-source-font) !important;
  font-size: var(--a10-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"], input[data-choice-answer], input[data-multi-choice]),
#examView.academic-exam.book-10:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"], input[data-choice-answer], input[data-multi-choice]) {
  width: var(--a10-scoped-control-size) !important;
  height: var(--a10-scoped-control-size) !important;
  flex: 0 0 var(--a10-scoped-control-size) !important;
}
/* G17 Test 1-4 scoped Listening/Reading typography. Keep this inside General Cambridge 17 only. */
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g17-scoped-source-font: "Times New Roman", Times, serif;
  --g17-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g17-scoped-listening-size: 19px;
  --g17-scoped-question-size: 19px;
  --g17-scoped-passage-size: 20px;
  --g17-scoped-input-size: 18px;
  --g17-scoped-title-size: 24px;
  --g17-scoped-section-size: 22px;
  --g17-scoped-subheading-size: 21px;
  letter-spacing: 0;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-listening-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-text, .cd-question-pane) :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.cd-passage-title, h1, h2, h3) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.cd-passage-subtitle, .cd-passage-label, h4, h5, h6),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .g11-heading-4,
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper .cd-part-head,
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-part-head {
  font-size: var(--g17-scoped-section-size) !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--g17-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: 19px !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: 19px !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]) {
  font-family: var(--g17-scoped-source-font) !important;
  font-size: var(--g17-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}


#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-prompt {
  margin: 0 0 2px !important;
  font-style: normal !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-instruction {
  margin: 0 0 8px !important;
  font-style: normal !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-row {
  grid-template-columns: 132px minmax(0, 1fr);
  column-gap: 16px;
  margin: 0;
  font-style: normal !important;
  line-height: 1.28 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-line {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 4px;
  row-gap: 3px;
  align-items: start;
  margin: 4px 0 3px !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-line .cd-question-number {
  grid-column: 1;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-line .cd-question-copy {
  grid-column: 2;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-choice-row {
  grid-column: 2;
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-choice-row label {
  min-height: 20px !important;
  gap: 5px !important;
  padding: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .g17-general-judgement-choice-row input {
  margin: 0 !important;
}

#examView.general-exam.book-17.test-4.module-reading #reading-questions-3 .manual-table-page .cd-question-text-flow > :is(
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) {
  display: block !important;
}

#examView.general-exam.book-17.test-4.module-reading #reading-questions-3 .manual-table-page .cd-question-text-flow > :is(
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) .cd-question-number {
  display: inline !important;
  margin-right: 6px !important;
}

#examView.general-exam.book-17.test-4.module-reading #reading-questions-3 .manual-table-page .cd-question-text-flow > :is(
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) .cd-question-copy {
  display: inline !important;
  min-width: 0 !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-page,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-title,
  .cd-question-line,
  .cd-question-card,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row,
  .manual-listening-centered-title,
  .cd-completion-title
),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .manual-reading-page,
  .manual-reading-questions,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-title,
  .cd-question-line,
  .cd-question-card,
  .cd-question-copy,
  .cd-answer-instruction,
  .cd-choice-question-stem,
  .cd-choice-option,
  .choice-fallback-row,
  .manual-reading-answer-chip-row,
  .cd-completion-title
) {
  text-align: left !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption),
#examView.general-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .cd-reading-table,
  .g-source-frame,
  .g-source-image-box,
  section[style*="border"],
  figure[style*="border"],
  div[style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, div, span, th, td, caption, figcaption) {
  text-align: left !important;
}

/* G20 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond General Cambridge 20. */
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g20-scoped-source-font: "Times New Roman", Times, serif;
  --g20-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g20-scoped-listening-size: 19px;
  --g20-scoped-question-size: 19px;
  --g20-scoped-passage-size: 20px;
  --g20-scoped-input-size: 18px;
  --g20-scoped-title-size: 24px;
  --g20-scoped-section-size: 22px;
  --g20-scoped-subheading-size: 21px;
  letter-spacing: 0;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-listening-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption),
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading :is(.cd-passage-text, .cd-question-pane) :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.g13-main-title, .a14-passage-title, h2) {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(.g11-heading, .cd-passage-section-title) {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-table-title, .manual-listening-centered-title),
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-table-title, .manual-listening-centered-title),
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text :is(h4, h5, h6, .manual-listening-centered-title, .g-lettered-heading) {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-notes,
  .manual-question-table,
  .cd-reading-table,
  .structured-question-list,
  .manual-choice-question,
  .cd-choice-option,
  .interactive-choice,
  .ielts-tfng-question
) {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.manual-question-table, .cd-reading-table, table) {
  line-height: 1.34 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"], textarea) {
  font-family: var(--g20-scoped-source-font) !important;
  font-size: var(--g20-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px;
  height: 20px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--g20-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div
),
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  li,
  th,
  td,
  label,
  span,
  div
) {
  text-align: left !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-paper,
  .cd-question-pane
) :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .structured-question-list,
  [style*="border"]
) {
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(
  .cd-paper,
  .cd-question-pane
) :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .cd-reading-table,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .structured-question-list,
  [style*="border"]
) :is(h2, h3, h4, h5, h6, p, li, th, td, label, span, div, caption, figcaption) {
  text-align: left !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-prompt, .g13-tfng-write, .g20-judgement-page > p:not(.cd-question-title)) {
  margin: 0 0 6px;
  font-style: normal !important;
  line-height: 1.32 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-key, .g20-judgement-page .cd-judgement-instruction-row) {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  column-gap: 28px;
  row-gap: 2px;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 16px;
  padding-left: 0;
  font-style: normal !important;
  line-height: 1.32 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g13-tfng-key {
  row-gap: 2px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-key div, .g20-judgement-page .cd-judgement-instruction-row) {
  align-items: baseline;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-key strong, .g20-judgement-page .cd-judgement-term) {
  min-width: 0;
  font-style: normal !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-key span, .g20-judgement-page .cd-judgement-copy) {
  font-style: normal !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-list, .g20-judgement-list) {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-question, .g20-judgement-question) {
  display: block;
  min-height: 0;
  margin: 0;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-number, .g20-judgement-number) {
  display: inline;
  margin-right: 4px;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: 800;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-copy, .g20-judgement-copy) {
  display: inline;
  font-size: inherit !important;
  line-height: inherit !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-options, .g20-judgement-options) {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  align-items: center;
  margin: 4px 0 0 28px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-option, .g20-judgement-option) {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 22px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-weight: 400;
  white-space: nowrap;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g13-tfng-option input, .g20-judgement-option input) {
  margin: 0;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-page .cd-judgement-instruction-row {
  margin: 0 0 2px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-page .cd-judgement-instruction-row:last-of-type {
  margin-bottom: 16px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.g20-judgement-prompt, .cd-answer-instruction.g20-judgement-instruction) {
  margin: 0 0 6px;
  font-style: normal !important;
  line-height: 1.32 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-judgement-instruction-row.g20-judgement-row {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  column-gap: 28px;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 2px;
  padding-left: 0;
  align-items: baseline;
  font-style: normal !important;
  line-height: 1.32 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-judgement-instruction-row.g20-judgement-row .cd-judgement-term {
  min-width: 0;
  font-style: normal !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-judgement-instruction-row.g20-judgement-row .cd-judgement-copy {
  font-style: normal !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-judgement-instruction-row.g20-judgement-row + .g20-judgement-line {
  margin-top: 16px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line {
  display: block;
  min-height: 0;
  margin: 0 0 12px;
  line-height: 1.32 !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line .cd-question-number {
  display: inline;
  margin-right: 4px;
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: 800;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line .cd-question-copy {
  display: inline;
  font-size: inherit !important;
  line-height: inherit !important;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line .g20-judgement-choice-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  align-items: center;
  margin: 4px 0 0 28px;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line .g20-judgement-choice-row label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 22px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-weight: 400;
  white-space: nowrap;
}

#examView.general-exam.book-20:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g20-judgement-line .g20-judgement-choice-row input {
  margin: 0;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

/* G16 Test 1-4 General Listening/Reading scoped typography. Do not apply to Academic. */
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g16-scoped-source-font: "Times New Roman", Times, serif;
  --g16-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g16-scoped-passage-size: 20px;
  --g16-scoped-question-size: 19px;
  --g16-scoped-box-size: 19px;
  --g16-scoped-input-size: 18px;
  --g16-scoped-control-size: 20px;
  --g16-scoped-title-size: 24px;
  --g16-scoped-section-size: 22px;
  --g16-scoped-subtitle-size: 21px;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-page,
  .cd-question-text-flow,
  .cd-question-line,
  .cd-choice-option,
  .manual-choice-option,
  .manual-inline-answer-row,
  .matching-inline-choice-line,
  .cd-inline-fill
),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-question-text-flow,
  .cd-question-line,
  .reading-summary-completion,
  .cd-choice-option,
  .manual-choice-option,
  .manual-inline-answer-row,
  .matching-inline-choice-line,
  .cd-inline-fill
) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  .cd-passage-text,
  .g-general-passage-text,
  .cd-passage-paragraph,
  .g11-letter-block,
  .g-letter-title-block,
  .cd-passage-byline,
  .g11-instruction
) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.g11-heading-3, .g13-main-title, .cd-passage-title, h2) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.g11-heading-4, .cd-reading-section > h3) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .cd-passage-byline, .g-letter-title-block h4, h3, h4, h5, h6),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6, .manual-listening-centered-title, .cd-completion-title, .cd-question-title),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, h5, h6, .manual-listening-centered-title, .cd-completion-title, .cd-question-title) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  .g16t2-flow-box,
  .g16t3-notes-box,
  .g16t4-rental-box
),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box
) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.manual-question-table, .cd-reading-table, table),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.manual-question-table, .cd-reading-table, table) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.inline-answer, input[type="text"]) {
  font-family: var(--g16-scoped-source-font) !important;
  font-size: var(--g16-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g16-scoped-control-size) !important;
  height: var(--g16-scoped-control-size) !important;
  flex-basis: var(--g16-scoped-control-size) !important;
}


#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-instruction-block {
  display: block !important;
  margin: 8px 0 12px !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-instruction-row {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  column-gap: 18px !important;
  align-items: baseline !important;
  margin: 0 0 2px !important;
  font-style: normal !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-term {
  font-weight: 800 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-question-line {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  gap: 2px 5px !important;
  align-items: baseline !important;
  margin: 8px 0 12px !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-question-line .cd-question-number {
  grid-column: 1 !important;
  grid-row: 1 !important;
  font-weight: 800 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-question-line .cd-question-copy {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-question-line .judgement-choice-row {
  grid-column: 2 !important;
  grid-row: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 14px !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-judgement-question-line .judgement-choice-row label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-height: 22px !important;
  padding: 0 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow:has(.cd-judgement-question-line) {
  gap: 4px !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow:has(.cd-judgement-question-line) > p {
  margin: 0 0 4px !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow:has(.cd-judgement-question-line) > .cd-answer-instruction {
  margin: 0 0 8px !important;
  font-style: normal !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow:has(.cd-judgement-question-line) > .cd-judgement-instruction-row {
  margin: 0 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow:has(.cd-judgement-question-line) > .cd-judgement-question-line {
  margin: 4px 0 7px !important;
}
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-bottom-nav, .cd-module-controls) {
  font-family: var(--g16-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-centered-title,
  .centered,
  .cd-completion-title,
  .cd-question-title
),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .manual-listening-centered-title,
  .centered,
  .cd-completion-title,
  .cd-question-title
) {
  text-align: left;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box
),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box
) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  text-align: left;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.g13-heading-list, .g16-heading-list) {
  width: fit-content;
  min-width: min(420px, 100%);
  max-width: min(100%, 620px);
  margin: 14px 0 20px;
  padding: 12px 16px;
  border: 1px solid #222222;
  background: #ffffff;
  box-shadow: none;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.g13-heading-list, .g16-heading-list) h5 {
  margin: 0 0 10px;
  text-align: left;
  font-size: 19px !important;
  line-height: 1.25 !important;
}

#examView.general-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.g13-heading-list, .g16-heading-list) :is(p, .cd-choice-option) {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  column-gap: 8px;
  align-items: baseline;
  margin: 5px 0;
  line-height: 1.25 !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  text-align: left;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .manual-listening-centered-title,
  .centered,
  .cd-completion-title,
  .cd-question-title
),
#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .manual-listening-centered-title,
  .centered,
  .cd-completion-title,
  .cd-question-title
) {
  text-align: left;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  table
),
#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  table
) {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  table
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption),
#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  table
) :is(h2, h3, h4, h5, h6, p, li, div, th, td, caption, figcaption) {
  text-align: left;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .a7-inline-passage-translation {
  display: block !important;
  clear: both;
  box-sizing: border-box;
  width: auto !important;
  max-width: 100% !important;
  margin: 6px 0 13px !important;
  padding: 7px 10px 7px 13px !important;
  border: 0 !important;
  border-left: 2px solid #94a3b8 !important;
  border-radius: 0 4px 4px 0 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  box-shadow: none !important;
  font-family: Arial, "Microsoft YaHei", "PingFang SC", sans-serif !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.58 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  writing-mode: horizontal-tb !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .a7-inline-passage-translation strong {
  display: inline;
  margin: 0 0.25em 0 0;
  color: #0f172a !important;
  font-weight: 700 !important;
}


#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-prompt {
  margin: 0 0 6px;
  font-style: normal;
  line-height: 1.25;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-instruction {
  margin: 0 0 6px;
  font-style: normal;
  line-height: 1.25;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-row {
  grid-template-columns: 120px minmax(0, 1fr);
  column-gap: 14px;
  margin: 0 0 2px;
  font-style: normal;
  line-height: 1.25;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 4px;
  align-items: start;
  margin: 7px 0 8px;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-line .cd-question-number {
  grid-column: 1;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-line .cd-question-copy {
  grid-column: 2;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-choice-row {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  margin: 1px 0 0 28px;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-choice-row label {
  min-height: 22px;
  gap: 6px;
  justify-content: flex-start;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .g15-judgement-choice-row input {
  width: 20px;
  min-width: 20px;
  max-width: 20px;
  height: 20px;
  flex: 0 0 20px;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.g15-judgement-line) {
  gap: 4px !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.g15-judgement-line) > .g15-judgement-prompt {
  margin: 0 0 4px !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.g15-judgement-line) > .g15-judgement-instruction {
  margin: 0 0 4px !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.g15-judgement-line) > .g15-judgement-row {
  margin: 0 !important;
}

#examView.general-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.g15-judgement-line) > .g15-judgement-line {
  margin: 4px 0 7px !important;
}

/* A4 Test 1 structured exam typography pilot. Image-only PDF pages keep the source image typography. */
#examView.academic-exam.book-4.test-1:is(.module-listening, .module-reading, .module-writing, .module-speaking) {
  --exam-source-font: "Times New Roman", Times, serif;
  --exam-ui-font: Arial, Helvetica, sans-serif;
  --exam-passage-size: 20px;
  --exam-question-size: 19px;
  --exam-box-size: 19px;
  --exam-section-title-size: 22px;
  --exam-source-title-size: 24px;
  --exam-source-subtitle-size: 21px;
  --exam-question-title-size: 21px;
  --exam-body-line: 1.5;
  --exam-answer-size: 18px;
  --exam-ui-size: 16px;
  --exam-control-size: 20px;
  --exam-question-line: 1.42;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading,
#examView.academic-exam.book-4.test-1.module-listening .cd-listening {
  font-family: var(--exam-source-font);
}

#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-passage-size) !important;
  line-height: var(--exam-body-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane,
#examView.academic-exam.book-4.test-1.module-listening .cd-paper {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-question-size) !important;
  line-height: var(--exam-question-line) !important;
}

#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-question-size) !important;
  line-height: var(--exam-body-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .manual-reading-page,
  .a5-reading-passage-page,
  .a5-johnson-passage,
  .a5-nature-passage,
  .a10-passage,
  .a10-reading-passage,
  .a12t1-reading-page,
  .a12t2-reading-page,
  .a12t3-reading-page,
  .a12t4-page
) {
  font-family: inherit !important;
  font-size: var(--exam-passage-size) !important;
  line-height: var(--exam-body-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .reading-summary-completion,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question
),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question
) {
  font-family: inherit !important;
  font-size: var(--exam-question-size) !important;
  line-height: var(--exam-question-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading-section > h3,
#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane :is(h1, h2),
#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane :is(.a14-passage-title, .a5-johnson-passage h2, .a5-nature-passage h2, .a10-megafires-passage h2, .a10-second-nature-passage h2, .a10-evolution-passage h2),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document h2 {
  font-family: inherit !important;
  font-size: var(--exam-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle, .a14-passage-subtitle),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document h3 {
  font-family: inherit !important;
  font-size: var(--exam-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--exam-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading-section > h3,
#examView.academic-exam.book-4.test-1.module-listening .cd-part-head,
#examView.academic-exam.book-4.test-1.module-reading .cd-part-head {
  font-size: var(--exam-section-title-size) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-passage-pane .cd-reading-section > h3,
#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane .cd-reading-section > h3 {
  font-size: var(--exam-section-title-size) !important;
}

#examView.academic-exam.book-4.test-1:is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--exam-ui-font) !important;
  font-size: var(--exam-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-4.test-1:is(.module-listening, .module-reading, .module-writing, .module-speaking) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .structured-question-list,
  [style*="border"]
),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .structured-question-list,
  [style*="border"]
),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document :is(
  .ielts-writing-topic-box,
  .ielts-speaking-cue-card,
  .speaking-part-two-instruction,
  table,
  [style*="border"]
) {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-box-size) !important;
  line-height: var(--exam-question-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document table {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(th, td),
#examView.academic-exam.book-4.test-1:is(.module-writing, .module-speaking) .subjective-prompt-document :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-question-size) !important;
  line-height: var(--exam-question-line) !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-4.test-1.module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-4.test-1.module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--exam-control-size);
  height: var(--exam-control-size);
}

#examView.academic-exam.book-4.test-1:not(.cd-exam-mode) .content-scroll :is(.reading-passage, .question-block) {
  font-family: var(--exam-source-font) !important;
  font-size: var(--exam-question-size) !important;
  line-height: var(--exam-body-line) !important;
}

/* Academic Reading needs visible breathing room between passage paragraphs and question lines. */
#examView.academic-exam.module-reading .cd-passage-pane .cd-passage-text {
  row-gap: 18px;
}

#examView.academic-exam.module-reading .cd-passage-pane .cd-passage-text > .cd-passage-paragraph + .cd-passage-paragraph {
  margin-top: 2px;
}

#examView.academic-exam.module-reading .cd-passage-pane :is(
  .manual-reading-page,
  .a5-reading-passage-page,
  .a5-johnson-passage,
  .a5-nature-passage,
  .a10-passage,
  .a10-reading-passage,
  .a12t1-reading-page,
  .a12t2-reading-page,
  .a12t3-reading-page,
  .a12t4-page
) > p + p {
  margin-top: 1em;
}

#examView.academic-exam.book-12.test-4.module-reading .cd-passage-pane .cd-reading-page > p {
  margin: 0 0 1.05em;
}

#examView.academic-exam.book-12.test-4.module-reading .cd-passage-pane .cd-reading-page > p + p {
  margin-top: 0.95em;
}
#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-passage-pane .cd-passage-text {
  row-gap: 20px;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-passage-pane .cd-reading-page > :is(.cd-passage-paragraph, p) {
  margin: 0 0 1em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-passage-pane .cd-reading-page > :is(.cd-passage-paragraph, p) + :is(.cd-passage-paragraph, p) {
  margin-top: 1em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-passage-pane :is(.a16-passage-deck) > p + p {
  margin-top: 1em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .cd-question-text-flow {
  row-gap: 16px;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .cd-reading-page > :is(p, .cd-question-line) {
  margin: 0 0 0.9em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .cd-question-text-flow > :is(p, .cd-question-line, .cd-choice-option, .matching-inline-choice-line, .cd-bullet-line) {
  margin-bottom: 0.35em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .cd-question-text-flow > [data-reading-question-line] + [data-reading-question-line] {
  margin-top: 0.75em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .manual-reading-page > :is(
  p,
  h3,
  h4,
  h5,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block
) + :is(
  p,
  h3,
  h4,
  h5,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block
) {
  margin-top: 0.9em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane .cd-reading-page > :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block,
  .manual-question-table,
  .cd-reading-table,
  .a7-key-table,
  .a7-heading-list,
  .a7-option-key,
  .a7-word-list,
  .a7-key-plain,
  .a7-plain-key,
  .a7-bordered-box,
  .a7-torn-note,
  .a7-rock-note,
  .a16-word-list-table
) {
  margin-block: 1.1em;
}

#examView.academic-exam:is(.book-6, .book-7, .book-16).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .a7-key-table,
  .a7-heading-list,
  .a7-option-key,
  .a7-word-list,
  .a7-key-plain,
  .a7-plain-key,
  .a7-bordered-box
) > :is(p, .cd-question-line, li) + :is(p, .cd-question-line, li) {
  margin-top: 0.8em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-passage-text {
  row-gap: 20px;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-reading-page > :is(.cd-passage-paragraph, p) {
  margin: 0 0 1em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-reading-page > :is(.cd-passage-paragraph, p) + :is(.cd-passage-paragraph, p) {
  margin-top: 1em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.a9-passage-source-frame, .a9-perkin-frame) > p + p {
  margin-top: 1em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow {
  row-gap: 16px;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-page > :is(p, .cd-question-line) {
  margin: 0 0 0.9em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow > :is(p, .cd-question-line, .cd-choice-option, .matching-inline-choice-line, .cd-bullet-line) {
  margin-bottom: 0.35em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-question-text-flow > [data-reading-question-line] + [data-reading-question-line] {
  margin-top: 0.75em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .manual-reading-page > :is(
  p,
  h3,
  h4,
  h5,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block
) + :is(
  p,
  h3,
  h4,
  h5,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block
) {
  margin-top: 0.9em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-page > :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block,
  .manual-question-table,
  .cd-reading-table,
  .a9-source-box,
  .a9-flowchart,
  .a9-flow-step
) {
  margin-block: 1.1em;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .a9-source-box,
  .a9-flowchart,
  .a9-flow-step
) > :is(p, .cd-question-line, li) + :is(p, .cd-question-line, li) {
  margin-top: 0.8em;
}

#examView.academic-exam.book-6.module-reading .cd-passage-pane .a6t1-source-page > :is(.cd-passage-paragraph, p) {
  margin: 0 0 1em;
}

#examView.academic-exam.book-6.module-reading .cd-passage-pane .a6t1-source-page > :is(.cd-passage-paragraph, p) + :is(.cd-passage-paragraph, p) {
  margin-top: 1em;
}

#examView.academic-exam.book-6.module-reading .cd-question-pane .a6t1-source-page > :is(
  p,
  h3,
  h4,
  h5,
  .cd-question-line,
  .cd-choice-option,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block,
  .cd-reading-table,
  .a6-reading-judgement-key,
  .a6-reading-judgement-questions,
  .a6-judgement-key,
  .a6-judgement-questions
) + :is(
  p,
  h3,
  h4,
  h5,
  .cd-question-line,
  .cd-choice-option,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-table-block,
  .cd-reading-table,
  .a6-reading-judgement-key,
  .a6-reading-judgement-questions,
  .a6-judgement-key,
  .a6-judgement-questions
) {
  margin-top: 0.9em;
}

#examView.academic-exam.book-6.module-reading .cd-question-pane :is(.a6-reading-judgement-question, .a6-judgement-question) + :is(.a6-reading-judgement-question, .a6-judgement-question) {
  margin-top: 1em;
}
#examView.academic-exam.module-reading .cd-question-pane .cd-question-text-flow {
  row-gap: 12px;
}

#examView.academic-exam.module-reading .cd-question-pane .cd-question-text-flow > .cd-question-title:not(:first-child) {
  margin-top: 14px;
}

#examView.academic-exam.module-reading .cd-question-pane .cd-question-text-flow > :is(
  p,
  .cd-question-line,
  .cd-choice-option,
  .matching-inline-choice-line,
  .cd-bullet-line
) {
  margin-bottom: 2px;
}

#examView.academic-exam.module-reading .cd-question-pane .cd-completion-box > :is(p, .cd-question-line) + :is(p, .cd-question-line) {
  margin-top: 8px;
}

#examView.academic-exam.module-reading .cd-question-pane .manual-reading-page + .manual-reading-page {
  margin-top: 24px;
}

#examView.academic-exam.module-reading .cd-question-pane .manual-reading-page > :is(
  p,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option
) + :is(
  p,
  .manual-inline-answer-row,
  .manual-choice-question,
  .cd-question-line,
  .cd-choice-option
) {
  margin-top: 8px;
}

@media (min-width: 981px) {
  .listening-scroll > .cd-listening,
  .reading-scroll > .cd-reading {
    display: flex;
    height: 100%;
    min-height: 100%;
    flex-direction: column;
    padding-bottom: 0;
  }

  .listening-scroll > .cd-listening .cd-paper {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
  }

  .reading-scroll > .cd-reading .cd-reading-layout {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
  }

  .reading-scroll > .cd-reading .cd-reading-pane {
    height: auto;
    min-height: 0;
    overflow: auto;
  }
}

/* listening-scrollbar-right-20260620: keep listening paper scrollbar on the right edge of the exam area. */
@media (min-width: 981px) {
  .listening-scroll > .cd-listening .cd-paper {
    width: 100%;
    max-width: none;
  }
}

/* A4 Test 2-4 Listening/Reading scoped typography. Do not broaden to Writing/Speaking or General. */
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --exam-source-font: "Times New Roman", Times, serif;
  --exam-ui-font: Arial, Helvetica, sans-serif;
  --exam-passage-size: 20px;
  --exam-question-size: 19px;
  --exam-box-size: 19px;
  --exam-section-title-size: 22px;
  --exam-source-title-size: 24px;
  --exam-source-subtitle-size: 21px;
  --exam-question-title-size: 21px;
  --exam-body-line: 1.5;
  --exam-question-line: 1.42;
  --exam-answer-size: 18px;
  --exam-ui-size: 16px;
  --exam-control-size: 20px;
  --exam-answer-min-width: 118px;
  --exam-answer-height: 22px;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-reading :is(.cd-reading, .cd-passage-pane, .cd-question-pane),
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-listening :is(.cd-listening, .cd-paper) {
  font-family: var(--exam-source-font);
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-reading .cd-passage-pane,
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .cd-passage-text-flow, .manual-reading-page, .ielts-reading-passage, .ielts-reading-passage-text, .reading-passage, .passage-content, .passage-body, .passage-section, .passage-paragraph, article, section, p, li, span, div) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-passage-size);
  line-height: var(--exam-body-line);
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-question-group, .cd-question-text-flow, .cd-completion-box, .cd-matching-box, .cd-question-table-wrap, .cd-option-list, .cd-tfng-list, .cd-answer-bank, .cd-answer-card, .cd-question-instruction, .cd-question-note, .ielts-question, .ielts-question-block, .ielts-question-text, .ielts-question-options, .ielts-completion, .ielts-table, .ielts-flowchart, .ielts-matching, .ielts-answer-bank) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-question-size);
  line-height: var(--exam-question-line);
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-question-group, .cd-question-text-flow, .cd-completion-box, .cd-matching-box, .cd-question-table-wrap, .cd-option-list, .cd-tfng-list, .cd-answer-bank, .cd-answer-card, .ielts-question, .ielts-question-block, .ielts-question-text, .ielts-question-options, .ielts-completion, .ielts-table, .ielts-flowchart, .ielts-matching, .ielts-answer-bank) :is(p, li, span, div, label, td, th, caption) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-source-title, .passage-title, .reading-title, .ielts-reading-title, .cd-passage-pane h1, .cd-passage-pane h2) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-source-title-size);
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-source-subtitle, .passage-subtitle, .reading-subtitle, .ielts-reading-subtitle, .cd-passage-pane h3, .cd-passage-pane h4, .cd-passage-pane h5, .cd-passage-pane h6) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-source-subtitle-size);
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-question-group > h2, .cd-question-group > h3, .cd-question-title, .ielts-question-heading, .ielts-question-title) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-question-title-size);
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(.cd-section-heading, .ielts-section-heading) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-section-title-size);
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) .cd-part-head,
#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) .cd-part-head * {
  font-family: var(--exam-ui-font);
  font-size: var(--exam-ui-size);
  line-height: 1.25;
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(strong, b) {
  font-weight: 700;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(table, td, th, .cd-table, .cd-question-table, .cd-question-table-wrap, .cd-completion-box, .cd-matching-box, .cd-answer-bank, .cd-option-list, .cd-tfng-list) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-box-size);
  line-height: var(--exam-question-line);
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(input.inline-answer, .inline-answer, .cd-inline-answer, .cd-answer-input) {
  font-family: var(--exam-source-font);
  font-size: var(--exam-answer-size);
  line-height: 1.2;
  min-width: var(--exam-answer-min-width);
  min-height: var(--exam-answer-height);
  letter-spacing: 0;
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--exam-control-size);
  height: var(--exam-control-size);
  min-width: var(--exam-control-size);
  min-height: var(--exam-control-size);
}

#examView.academic-exam.book-4:is(.test-2, .test-3, .test-4):is(.module-reading, .module-listening):not(.cd-exam-mode) #examContent .content-scroll {
  font-family: var(--exam-source-font);
  font-size: var(--exam-question-size);
  line-height: var(--exam-question-line);
  letter-spacing: 0;
}
/* A14 Test 1-4 Listening/Reading scoped typography. Academic Cambridge 14 only; do not broaden to General 14 or other books/modules. */
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a14-scoped-source-font: "Times New Roman", Times, serif;
  --a14-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a14-scoped-passage-size: 20px;
  --a14-scoped-question-size: 19px;
  --a14-scoped-box-size: 19px;
  --a14-scoped-section-title-size: 22px;
  --a14-scoped-source-title-size: 24px;
  --a14-scoped-source-subtitle-size: 21px;
  --a14-scoped-question-title-size: 21px;
  --a14-scoped-body-line: 1.5;
  --a14-scoped-question-line: 1.42;
  --a14-scoped-answer-size: 18px;
  --a14-scoped-ui-size: 16px;
  --a14-scoped-control-size: 20px;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading,
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening {
  font-family: var(--a14-scoped-source-font);
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-passage-size) !important;
  line-height: var(--a14-scoped-body-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-question-size) !important;
  line-height: var(--a14-scoped-question-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .a14-reading-passage-source
) {
  font-family: inherit !important;
  font-size: var(--a14-scoped-passage-size) !important;
  line-height: var(--a14-scoped-body-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .reading-summary-completion,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question,
  .a14-judgement-line,
  .a14-judgement-row
),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question
) {
  font-family: inherit !important;
  font-size: var(--a14-scoped-question-size) !important;
  line-height: var(--a14-scoped-question-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .a14-passage-title) {
  font-family: inherit !important;
  font-size: var(--a14-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle, .a14-passage-subtitle) {
  font-family: inherit !important;
  font-size: var(--a14-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--a14-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-part-head,
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-part-head {
  font-size: var(--a14-scoped-section-title-size) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a14-scoped-ui-font) !important;
  font-size: var(--a14-scoped-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .a14-source-box,
  .a14-summary-flow,
  .structured-question-list,
  [style*="border"]
),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .a14-source-box,
  .structured-question-list,
  [style*="border"]
) {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-box-size) !important;
  line-height: var(--a14-scoped-question-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-question-size) !important;
  line-height: var(--a14-scoped-question-line) !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a14-scoped-source-font) !important;
  font-size: var(--a14-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-14:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a14-scoped-control-size);
  height: var(--a14-scoped-control-size);
}


#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table {
  width: min(100%, 660px);
  max-width: 660px;
  margin-left: 0 !important;
  margin-right: auto !important;
  align-self: flex-start !important;
  margin: 18px 0 0 !important;
  table-layout: fixed;
  border-collapse: collapse;
  border: 1px solid #4a4a4a;
  background: #ffffff;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table th,
#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table td {
  border: 1px solid #4a4a4a;
  padding: 3px 7px;
  color: #111111;
  vertical-align: top;
  line-height: 1.18 !important;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table th {
  text-align: center;
  font-size: 1.02em !important;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table .a14-health-section td,
#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table .a14-health-subsection td {
  font-weight: 700;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table .a14-health-section td {
  text-transform: uppercase;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table .a14-health-indent {
  padding-left: 32px;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table .inline-answer {
  width: 145px;
  max-width: 100%;
  min-height: 20px;
  height: 20px;
  padding-top: 0;
  padding-bottom: 0;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table col:nth-child(1) {
  width: 34%;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table col:nth-child(2) {
  width: 27%;
}

#examView.academic-exam.book-14.test-2.module-listening .cd-paper .a14-t2-health-clinic-table col:nth-child(3) {
  width: 39%;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form {
  width: min(100%, 660px);
  max-width: 660px;
  margin-left: 0 !important;
  margin-right: auto !important;
  align-self: flex-start !important;
  margin: 16px 0 0 !important;
  border: 1px solid #4a4a4a;
  background: #ffffff;
  color: #111111;
  font-family: var(--a14-scoped-source-font, "Times New Roman", Times, serif) !important;
  font-size: var(--a14-scoped-box-size, 19px) !important;
  line-height: 1.24 !important;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form h5,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form h5 {
  margin: 0;
  padding: 7px 10px;
  border-bottom: 1px solid #4a4a4a;
  text-align: center;
  font-size: 1.08em !important;
  font-weight: 700;
  line-height: 1.15 !important;
  letter-spacing: 0;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-example,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-example {
  padding: 7px 18px 6px;
  border-bottom: 1px solid #4a4a4a;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-example-answer,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-example-answer {
  display: inline-block;
  min-width: 112px;
  margin-left: 8px;
  text-align: center;
  border-bottom: 1px dotted #555555;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form section,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form section {
  padding: 5px 18px 1px;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form h6,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form h6 {
  margin: 0 0 4px;
  font-size: 1em !important;
  font-weight: 700;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form p,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form p {
  margin: 2px 0 5px;
  font-size: 1em !important;
  line-height: 1.22 !important;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-bullet,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-bullet {
  position: relative;
  padding-left: 34px;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-bullet::before,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-bullet::before {
  content: "\2022";
  position: absolute;
  left: 0;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-subline,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .a14-flanders-subline {
  padding-left: 74px;
}

#examView.academic-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .inline-answer,
#examView.general-exam.book-14.test-3.module-listening .cd-paper .a14-t3-flanders-form .inline-answer {
  width: 150px;
  max-width: 42%;
  min-height: 20px;
  height: 20px;
  padding-top: 0;
  padding-bottom: 0;
}

/* A5 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond Academic Cambridge 5 tests 1-4. */
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a5-scoped-source-font: "Times New Roman", Times, serif;
  --a5-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a5-scoped-passage-size: 20px;
  --a5-scoped-question-size: 19px;
  --a5-scoped-box-size: 19px;
  --a5-scoped-answer-size: 18px;
  --a5-scoped-control-size: 20px;
  --a5-scoped-title-size: 24px;
  --a5-scoped-section-title-size: 22px;
  --a5-scoped-subtitle-size: 21px;
  --a5-scoped-passage-line: 1.5;
  --a5-scoped-question-line: 1.42;
  --a5-scoped-box-line: 1.34;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a5-scoped-source-font) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-passage-size) !important;
  line-height: var(--a5-scoped-passage-line) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-question-size) !important;
  line-height: var(--a5-scoped-question-line) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, caption, figcaption),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(p, li, label, span, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .a5-johnson-passage h2, .a5-nature-passage h2, .a5t2-passage-box h1, .a5t2-science-passage h1, .a5t3-title-bar, .a5t4-black-title, .a5t4-light-title) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper > :is(h2),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-reading-section > h3 {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle, .a5t2-passage-box h2, .a5t2-science-passage h2) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .source-box, .manual-table, .manual-table-block, .manual-question-table, .cd-reading-table, .word-box-table, .a5t2-library-form, .a5t2-antarctica, .a5t2-summary-box, .a5t2-option-box, .a5t3-car-form, .a5t3-current-car, .a5t3-notes-box, .a5t3-heading-box, .a5t3-option-box, .a5t4-host-form, .a5t4-notes-box, .a5t4-heading-box, .a5t4-option-box, [style*="border"]),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .source-box, .manual-table, .manual-table-block, .manual-question-table, .cd-reading-table, .word-box-table, .a5t2-summary-box, .a5t2-option-box, .a5t3-heading-box, .a5t3-option-box, .a5t4-heading-box, .a5t4-option-box, .a5t2-passage-box, .a5t4-boxed-passage, [style*="border"]) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-box-size) !important;
  line-height: var(--a5-scoped-box-line) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(table, .manual-table, .manual-question-table, .cd-reading-table),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(table, .manual-table, .manual-question-table, .cd-reading-table) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-box-size) !important;
  line-height: var(--a5-scoped-box-line) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .interactive-choice),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .interactive-choice) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-question-size) !important;
  line-height: var(--a5-scoped-question-line) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]) {
  font-family: var(--a5-scoped-source-font) !important;
  font-size: var(--a5-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-5.test-3.module-listening .a5-mintons-frame .inline-answer[data-question-number="8"] {
  width: 88px !important;
  min-width: 88px !important;
  height: 1.1em;
  margin: 0 2px;
  padding: 0 3px;
  border: 0;
  border-bottom: 1px dotted #333333;
  background: transparent;
  box-shadow: none;
  vertical-align: baseline;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a5-scoped-control-size) !important;
  height: var(--a5-scoped-control-size) !important;
  min-width: var(--a5-scoped-control-size) !important;
  flex: 0 0 var(--a5-scoped-control-size) !important;
}

#examView.academic-exam.book-5:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-part-nav, .cd-reading-bottom-nav, .cd-module-controls, .cd-statusbar) {
  font-family: var(--a5-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}
/* A7 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond Academic Cambridge 7 tests 1-4. */
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a7-scoped-source-font: "Times New Roman", Times, serif;
  --a7-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a7-scoped-passage-size: 20px;
  --a7-scoped-question-size: 19px;
  --a7-scoped-answer-size: 18px;
  --a7-scoped-control-size: 20px;
  --a7-scoped-passage-line: 1.5;
  --a7-scoped-question-line: 1.42;
  --a7-scoped-box-line: 1.34;
  --a7-scoped-answer-line: 1.2;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading,
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: var(--a7-scoped-source-font) !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-size: var(--a7-scoped-question-size) !important;
  line-height: var(--a7-scoped-question-line) !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-size: var(--a7-scoped-passage-size) !important;
  line-height: var(--a7-scoped-passage-line) !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-car-insurance, .a7-example-box, .a7-torn-note, .a7-rock-note, table),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .a7-key-table, .a7-mini-table, .a7-option-key, .a7-heading-list, .a7-word-list, .a7-key-plain, .a7-plain-key, .a7-bordered-box, .a7-torn-note, .a7-rock-note, table) {
  font-family: var(--a7-scoped-source-font) !important;
  font-size: var(--a7-scoped-question-size) !important;
  line-height: var(--a7-scoped-box-line) !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]) {
  font-family: var(--a7-scoped-source-font) !important;
  font-size: var(--a7-scoped-answer-size) !important;
  line-height: var(--a7-scoped-answer-line) !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a7-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .cd-passage-title) {
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle) {
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a7-scoped-control-size);
  height: var(--a7-scoped-control-size);
}
/* A16 Test 1-4 Listening/Reading scoped typography. Keep the change inside Academic Cambridge 16 only. */
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a16-font-scope-check: a16-test-1-4;
  --a16-source-font: "Times New Roman", Times, serif;
  --a16-ui-font: Arial, Helvetica, sans-serif;
  --a16-passage-size: 20px;
  --a16-question-size: 19px;
  --a16-box-size: 19px;
  --a16-answer-size: 18px;
  --a16-control-size: 20px;
  --a16-source-title-size: 24px;
  --a16-source-subtitle-size: 21px;
  --a16-question-title-size: 21px;
  --a16-section-title-size: 22px;
  --a16-ui-size: 16px;
  --a16-body-line: 1.5;
  --a16-question-line: 1.42;
  --a16-table-line: 1.34;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading,
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening {
  font-family: var(--a16-source-font) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-passage-size) !important;
  line-height: var(--a16-body-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-question-size) !important;
  line-height: var(--a16-question-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .cd-passage-paragraph,
  .cd-passage-intro,
  p,
  li
) {
  font-family: inherit !important;
  font-size: var(--a16-passage-size) !important;
  line-height: var(--a16-body-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-line,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question,
  .cd-judgement-question-line,
  .manual-reading-page,
  .structured-question-list,
  .structured-question
),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-line,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question,
  .manual-listening-page,
  .manual-listening-notes,
  .structured-question-list,
  .structured-question
) {
  font-family: inherit !important;
  font-size: var(--a16-question-size) !important;
  line-height: var(--a16-question-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2) {
  font-family: inherit !important;
  font-size: var(--a16-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle) {
  font-family: inherit !important;
  font-size: var(--a16-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title) {
  font-family: inherit !important;
  font-size: var(--a16-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a16-ui-font) !important;
  font-size: var(--a16-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-size: var(--a16-section-title-size) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .a16-word-list-table,
  .a16-qanat-answer-grid,
  [style*="border"]
),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  [style*="border"]
) {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-box-size) !important;
  line-height: var(--a16-question-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-box-size) !important;
  line-height: var(--a16-table-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-question-size) !important;
  line-height: var(--a16-question-line) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a16-source-font) !important;
  font-size: var(--a16-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a16-control-size) !important;
  min-width: var(--a16-control-size) !important;
  max-width: var(--a16-control-size) !important;
  height: var(--a16-control-size) !important;
  flex: 0 0 var(--a16-control-size) !important;
}

#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-reading-section > h3,
#examView.academic-exam.book-16:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-section > h3 {
  font-size: var(--a16-section-title-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes {
  padding: 12px 14px;
  border: 1px solid #333333;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes h5 {
  margin: 0 0 10px;
  text-align: center;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes p {
  margin: 3px 0;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes .a16t2-note-line {
  padding-left: 18px;
  text-indent: -12px;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes .a16t2-note-main {
  padding-left: 14px;
  text-indent: -14px;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes .a16t2-note-continuation {
  display: block;
  margin-left: 18px;
}

#examView.academic-exam.book-16.test-2.module-reading .a16t2-uffington-notes .inline-answer {
  min-width: 120px;
  margin: 0 4px;
  vertical-align: baseline;
}

#examView.academic-exam.book-16.test-1.module-listening .a16t1-stoicism-subdash {
  margin: 2px 0 0 24px;
}

#examView.academic-exam.book-16.test-1.module-listening .a16t1-stoicism-dash-item {
  list-style: none;
  position: relative;
}

#examView.academic-exam.book-16.test-1.module-listening .a16t1-stoicism-dash-item::before {
  content: "-";
  position: absolute;
  left: -18px;
}

/* A17 Test 1-4 scoped Listening/Reading typography. Keep the change inside Academic Cambridge 17 only. */
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a17-font-scope-check: a17-test-1-4;
  --a17-source-font: "Times New Roman", Times, serif;
  --a17-ui-font: Arial, Helvetica, sans-serif;
  --a17-passage-size: 20px;
  --a17-question-size: 19px;
  --a17-box-size: 19px;
  --a17-answer-size: 18px;
  --a17-source-title-size: 24px;
  --a17-source-subtitle-size: 21px;
  --a17-question-title-size: 21px;
  --a17-section-title-size: 22px;
  --a17-ui-size: 16px;
  --a17-body-line: 1.5;
  --a17-question-line: 1.42;
  --a17-table-line: 1.34;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading,
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-listening {
  font-family: var(--a17-source-font) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-passage-size) !important;
  line-height: var(--a17-body-line) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-question-size) !important;
  line-height: var(--a17-question-line) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .cd-passage-paragraph,
  .cd-passage-intro,
  p,
  li
) {
  font-family: inherit !important;
  font-size: var(--a17-passage-size) !important;
  line-height: var(--a17-body-line) !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-passage-2 .cd-passage-paragraph.cd-passage-letter-continuation {
  margin-left: 32px !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-passage-2 .cd-reading-page + .cd-reading-page .cd-passage-text > .cd-passage-paragraph:first-child {
  margin-left: 32px !important;
}

#examView.academic-exam.book-17.test-4.module-reading #reading-passage-3 .cd-reading-page + .cd-reading-page .cd-passage-text > .cd-passage-paragraph:first-child {
  margin-left: 32px !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-2 .cd-question-text-flow > :is(
  [data-reading-question-line="14"],
  [data-reading-question-line="15"],
  [data-reading-question-line="16"],
  [data-reading-question-line="17"]
) {
  margin-bottom: 8px !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-2 .cd-question-text-flow > [data-reading-question-line="17"] {
  margin-bottom: 12px !important;
}

#examView.academic-exam.book-17.test-1.module-reading .cd-reading-pane.cd-question-pane:has(#reading-questions-3) {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-3 .cd-question-text-flow > :is(
  [data-reading-question-line="36"],
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) {
  display: block !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-3 .cd-question-text-flow > :is(
  [data-reading-question-line="36"],
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) .cd-question-copy {
  min-width: 0 !important;
  display: inline !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-3 .cd-question-text-flow > :is(
  [data-reading-question-line="36"],
  [data-reading-question-line="37"],
  [data-reading-question-line="38"],
  [data-reading-question-line="39"],
  [data-reading-question-line="40"]
) .cd-question-number {
  display: inline !important;
  margin-right: 6px !important;
}

#examView.academic-exam.book-17.test-1.module-reading #reading-questions-3 [data-reading-question-line="40"] .cd-question-copy {
  font-size: 15px !important;
  line-height: 1.28 !important;
  font-weight: 700 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .cd-question-line,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question,
  .cd-judgement-question-line,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .a17-reading-judgement-line,
  .a17-claims-judgement-instruction,
  .a17-claims-judgement-row,
  .a17-claims-judgement-line
),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-two-answer-question
) {
  font-family: inherit !important;
  font-size: var(--a17-question-size) !important;
  line-height: var(--a17-question-line) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2) {
  font-family: inherit !important;
  font-size: var(--a17-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle) {
  font-family: inherit !important;
  font-size: var(--a17-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--a17-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a17-ui-font) !important;
  font-size: var(--a17-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .cd-reading-section > h3,
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane .cd-reading-section > h3 {
  font-size: var(--a17-section-title-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .a17-reading-answer-explanation :is(.a7-reading-locator-term, .a17-reading-locator-term) {
  display: inline-block;
  margin: 2px 6px 2px 0;
  padding: 1px 8px;
  border-radius: 999px;
  background: #fff3bf;
  color: #7c5200;
  box-shadow: inset 0 0 0 1px rgb(245 158 11 / 38%);
  font-weight: 700;
  line-height: 1.35;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .a17-reading-summary-option-box,
  .structured-question-list,
  [style*="border"]
),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-table,
  .g-source-frame,
  .pdf-source-box,
  .structured-question-list,
  [style*="border"]
) {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-box-size) !important;
  line-height: var(--a17-question-line) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-box-size) !important;
  line-height: var(--a17-table-line) !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-17.test-4.module-listening
  .cd-paper
  .cd-question-group:has([data-question-number="25"])
  .cd-option-box.matching-option-box.pdf-option-list-box {
  border: 1px solid #222222 !important;
  padding: 12px 14px !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label, .a17-claims-judgement-choice-row label),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-question-size) !important;
  line-height: var(--a17-question-line) !important;
}

#examView.academic-exam.book-17.test-3.module-reading #reading-questions-2 .cd-choice-option.interactive-choice {
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 6px;
  min-height: 0;
  padding: 2px 0;
  border: 0;
  border-radius: 0;
}

#examView.academic-exam.book-17.test-3.module-reading #reading-questions-2 .cd-choice-option.interactive-choice:hover {
  border-color: transparent;
  background: transparent;
}

#examView.academic-exam.book-17.test-3.module-reading #reading-questions-2 .cd-choice-option.interactive-choice .choice-input-wrap {
  gap: 4px;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a17-source-font) !important;
  font-size: var(--a17-answer-size) !important;
  line-height: 1.2 !important;
}

/* A13 Test 1-4 Listening/Reading scoped typography. Do not broaden beyond Academic Cambridge 13 tests 1-4 or into General. */
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a13-scoped-source-font: "Times New Roman", Times, serif;
  --a13-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a13-reading-passage-size: 20px;
  --a13-question-size: 19px;
  --a13-box-size: 19px;
  --a13-answer-size: 18px;
  --a13-control-size: 20px;
  --a13-section-title-size: 22px;
  --a13-source-title-size: 24px;
  --a13-subtitle-size: 21px;
  --a13-body-line: 1.5;
  --a13-question-line: 1.42;
  --a13-box-line: 1.34;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a13-scoped-source-font) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-size: var(--a13-question-size) !important;
  line-height: var(--a13-question-line) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-size: var(--a13-reading-passage-size) !important;
  line-height: var(--a13-body-line) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(h1, h2, h3, h4, h5, h6, p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-part-head,
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-part-head {
  font-family: var(--a13-scoped-ui-font) !important;
  font-size: var(--a13-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .a13-centered-title),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.a13-centered-title, .manual-listening-centered-title) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-question-table, .cd-reading-table, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-flow-step, .a13-answer-list),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-question-table, .cd-reading-table, .a13-source-frame, .a13-source-table, .a13-option-table, .a13-option-box, .a13-word-list-box, .a13-flowchart, .a13-flow-step, .a13-answer-list, .a13-judgement-page) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-box-size) !important;
  line-height: var(--a13-box-line) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a13-judgement-options label),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a13-judgement-options label) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-question-size) !important;
  line-height: var(--a13-question-line) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(.inline-answer, input[type="text"]) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a13-control-size);
  height: var(--a13-control-size);
}

/* A18 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond Academic Cambridge 18 Listening/Reading. */
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a18-scoped-source-font: "Times New Roman", Times, serif;
  --a18-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a18-scoped-passage-size: 20px;
  --a18-scoped-question-size: 19px;
  --a18-scoped-box-size: 19px;
  --a18-scoped-answer-size: 18px;
  --a18-scoped-control-size: 20px;
  --a18-scoped-source-title-size: 24px;
  --a18-scoped-source-subtitle-size: 21px;
  --a18-scoped-question-title-size: 21px;
  --a18-scoped-section-title-size: 22px;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a18-scoped-source-font) !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .cd-passage-text-flow, .manual-reading-page),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .cd-inline-fill) {
  font-family: inherit !important;
  font-size: var(--a18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--a18-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--a18-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--a18-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a18-scoped-ui-font) !important;
  font-size: var(--a18-scoped-section-title-size) !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-size: 16px !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, [style*="border"]),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, [style*="border"]) {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a18-scoped-source-font) !important;
  font-size: var(--a18-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a18-scoped-control-size);
  height: var(--a18-scoped-control-size);
}

/* G18 Test 1-4 scoped typography. Do not broaden beyond General Cambridge 18 Listening/Reading. */
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --g18-scoped-source-font: "Times New Roman", Times, serif;
  --g18-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g18-scoped-passage-size: 20px;
  --g18-scoped-question-size: 19px;
  --g18-scoped-box-size: 19px;
  --g18-scoped-answer-size: 18px;
  --g18-scoped-control-size: 20px;
  --g18-scoped-source-title-size: 24px;
  --g18-scoped-source-subtitle-size: 21px;
  --g18-scoped-question-title-size: 21px;
  --g18-scoped-section-title-size: 22px;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--g18-scoped-source-font) !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane,
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .g-general-passage-text, .g18-reading-article, .manual-reading-page),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .cd-inline-fill) {
  font-family: inherit !important;
  font-size: var(--g18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, .g13-main-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--g18-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .g-centered-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--g18-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--g18-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-family: var(--g18-scoped-ui-font) !important;
  font-size: var(--g18-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--g18-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .g-source-image-box, .pdf-source-box, .structured-question-list, .reading-summary-completion, [style*="border"]),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .g-source-image-box, .pdf-source-box, .structured-question-list, .reading-summary-completion, [style*="border"]) {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--g18-scoped-source-font) !important;
  font-size: var(--g18-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g18-scoped-control-size);
  height: var(--g18-scoped-control-size);
}


#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-instruction-row {
  grid-template-columns: 136px minmax(0, 1fr);
  column-gap: 12px;
  margin: 2px 0;
  font-style: normal;
  line-height: 1.3 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-term {
  font-weight: 700 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 4px;
  row-gap: 6px;
  align-items: baseline;
  margin: 14px 0 16px;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line .cd-question-number {
  grid-column: 1;
  font-weight: 700 !important;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line .cd-question-copy {
  grid-column: 2;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line .judgement-choice-row {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 14px 18px;
  margin: 0;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line .judgement-choice-row label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  white-space: nowrap;
}

#examView.general-exam.book-18:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-text-flow:has(.cd-judgement-instruction-row) .cd-judgement-question-line .judgement-choice-row input[type="radio"] {
  margin: 0;
}/* A19 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond Academic Cambridge 19 Listening/Reading. */
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a19-scoped-source-font: "Times New Roman", Times, serif;
  --a19-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a19-scoped-passage-size: 20px;
  --a19-scoped-question-size: 19px;
  --a19-scoped-box-size: 19px;
  --a19-scoped-input-size: 18px;
  --a19-scoped-control-size: 20px;
  --a19-scoped-title-size: 24px;
  --a19-scoped-section-size: 22px;
  --a19-scoped-heading-size: 21px;
  --a19-scoped-passage-line: 1.5;
  --a19-scoped-question-line: 1.42;
  --a19-scoped-table-line: 1.34;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a19-scoped-source-font) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-passage-size) !important;
  line-height: var(--a19-scoped-passage-line) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-question-size) !important;
  line-height: var(--a19-scoped-question-line) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, table, th, td, caption, figcaption),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.a19-reading-article-title, h1, h2) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.a19-reading-article-subtitle, h3, h4, h5, h6),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-heading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-statusbar, .cd-bottom-nav, .cd-reading-bottom-nav) {
  font-family: var(--a19-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  .structured-question-list,
  [style*="border"]
),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .g-source-frame,
  .pdf-source-box,
  .structured-question-list,
  [style*="border"]
) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-box-size) !important;
  line-height: var(--a19-scoped-question-line) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-box-size) !important;
  line-height: var(--a19-scoped-table-line) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-question-size) !important;
  line-height: var(--a19-scoped-question-line) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(.inline-answer, input[type="text"]) {
  font-family: var(--a19-scoped-source-font) !important;
  font-size: var(--a19-scoped-input-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a19-scoped-control-size) !important;
  min-width: var(--a19-scoped-control-size) !important;
  max-width: var(--a19-scoped-control-size) !important;
  height: var(--a19-scoped-control-size) !important;
  flex: 0 0 var(--a19-scoped-control-size) !important;
}

#examView.academic-exam.book-19:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

#examView.academic-exam.book-19.test-4.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* G19 Test 1-4 scoped Reading typography. Do not broaden beyond General Cambridge 19 Reading. */
#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading {
  --g19-reading-source-font: "Times New Roman", Times, serif;
  --g19-reading-ui-font: Arial, Helvetica, sans-serif;
  --g19-reading-passage-size: 20px;
  --g19-reading-question-size: 19px;
  --g19-reading-input-size: 18px;
  --g19-reading-title-size: 24px;
  --g19-reading-section-size: 22px;
  --g19-reading-subheading-size: 21px;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-text {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.cd-passage-text, .cd-question-pane)
  :is(p, li, label, span, div, table, th, td, caption, figcaption) {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-passage-text
  .g11-heading {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-section-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-passage-text
  .g13-main-title {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-passage-text
  :is(h4, h5, h6, .manual-listening-centered-title) {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(h3, h4, h5, h6, .cd-question-title, .manual-boxed-notes-title, .cd-completion-title) {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-subheading-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-question-text-flow,
    .cd-question-line,
    .cd-choice-option,
    .interactive-choice,
    .cd-option-box,
    .matching-option-box,
    .manual-boxed-notes,
    .g13-heading-list,
    .g13-notes,
    .g13-map-answer-list,
    .g19t2-flowchart,
    .g19t2-flow-step,
    .g19t2-people-list,
    .g19t2-henry-summary,
    .g19t3-redundancy-notes,
    .g19t3-lapis-summary,
    .g19t4-knepp-summary
  ) {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(.manual-question-table, .cd-reading-table, table) {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-question-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.inline-answer, input[type="text"]) {
  font-family: var(--g19-reading-source-font) !important;
  font-size: var(--g19-reading-input-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px;
  height: 20px;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-page
  .cd-judgement-instruction-row {
  grid-template-columns: 128px minmax(0, 1fr);
  column-gap: 22px;
  margin: 2px 0;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-page
  .cd-question-line
  em,
#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-page
  .cd-judgement-instruction-row {
  font-style: normal;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-questions {
  display: grid;
  gap: 14px;
  margin: 18px 0 0;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-question {
  display: grid;
  gap: 4px;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-stem {
  margin: 0;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-stem
  strong {
  font-weight: 700 !important;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-choice-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 0 0 0 28px;
  vertical-align: baseline;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-choice-row
  label {
  min-height: 22px;
  gap: 6px;
  padding: 0;
  justify-content: flex-start;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .g19-judgement-choice-row
  input[type="radio"] {
  flex: 0 0 20px;
  margin: 0;
}

#examView.general-exam.book-19:is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.cd-part-head, .cd-statusbar, .cd-reading-bottom-nav, .cd-module-controls) {
  font-family: var(--g19-reading-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

/* A15 Test 1-4 scoped Listening/Reading typography. Do not broaden beyond Academic Cambridge 15 tests 1-4. */
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a15-scoped-source-font: "Times New Roman", Times, serif;
  --a15-scoped-ui-font: Arial, Helvetica, sans-serif;
  --a15-scoped-passage-size: 20px;
  --a15-scoped-question-size: 19px;
  --a15-scoped-box-size: 19px;
  --a15-scoped-answer-size: 18px;
  --a15-scoped-control-size: 20px;
  --a15-scoped-source-title-size: 24px;
  --a15-scoped-source-subtitle-size: 21px;
  --a15-scoped-question-title-size: 21px;
  --a15-scoped-section-title-size: 22px;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a15-scoped-source-font) !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .cd-passage-text-flow, .manual-reading-page),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.manual-listening-page, .cd-question-group, .cd-question-text-flow, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .reading-summary-completion, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line, .matching-inline-choice-line, .cd-inline-fill) {
  font-family: inherit !important;
  font-size: var(--a15-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-title, .a15-reading-article-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--a15-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-passage-subtitle, .cd-passage-byline, .a15-reading-article-subtitle, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--a15-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--a15-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-size: var(--a15-scoped-section-title-size) !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, [style*="border"]),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .g-source-table, .g-source-frame, .pdf-source-box, .structured-question-list, [style*="border"]) {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .judgement-choice-row label) {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]) {
  font-family: var(--a15-scoped-source-font) !important;
  font-size: var(--a15-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) .cd-part-head {
  font-family: var(--a15-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a15-scoped-control-size) !important;
  min-width: var(--a15-scoped-control-size) !important;
  max-width: var(--a15-scoped-control-size) !important;
  height: var(--a15-scoped-control-size) !important;
  flex: 0 0 var(--a15-scoped-control-size) !important;
}

#examView.academic-exam.book-15:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(strong, b) {
  font-weight: 700 !important;
}

/* G7 Test A/B scoped typography. Do not broaden beyond General Cambridge 7 Listening/Reading. */
#examView.general-exam.book-7:is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g7-scoped-source-font: "Times New Roman", Times, serif;
  --g7-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g7-scoped-passage-size: 20px;
  --g7-scoped-question-size: 19px;
  --g7-scoped-box-size: 19px;
  --g7-scoped-answer-size: 18px;
  --g7-scoped-control-size: 20px;
  --g7-scoped-source-title-size: 24px;
  --g7-scoped-source-subtitle-size: 21px;
  --g7-scoped-question-title-size: 21px;
  --g7-scoped-section-title-size: 22px;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading {
  font-family: var(--g7-scoped-source-font) !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-passage-size) !important;
  line-height: 1.5 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane,
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane
  :is(.cd-reading-page, .cd-passage-text, .manual-reading-page),
#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane
  :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane
  :is(
    .cd-reading-page,
    .cd-question-group,
    .cd-question-text-flow,
    .reading-summary-completion,
    .manual-reading-page,
    .manual-reading-questions,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-choice-question-stem,
    .cd-choice-option,
    .interactive-choice,
    .ielts-tfng-question,
    .ielts-tfng-options,
    .ielts-inline-options,
    .cd-bullet-line,
    .cd-question-line,
    .matching-inline-choice-line,
    .cd-inline-fill
  ),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(
    .cd-question-group,
    .cd-question-text-flow,
    .manual-listening-page,
    .manual-listening-notes,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-choice-question-stem,
    .cd-choice-option,
    .interactive-choice,
    .ielts-tfng-question,
    .ielts-tfng-options,
    .ielts-inline-options,
    .cd-bullet-line,
    .cd-question-line,
    .matching-inline-choice-line,
    .cd-inline-fill
  ) {
  font-family: inherit !important;
  font-size: var(--g7-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading-pane
  :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane
  :is(.cd-passage-title, .g13-main-title, h1, h2, h3) {
  font-family: inherit !important;
  font-size: var(--g7-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane
  :is(.cd-passage-subtitle, .g-centered-subtitle, .cd-passage-byline, h4, h5, h6) {
  font-family: inherit !important;
  font-size: var(--g7-scoped-source-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane
  :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title) {
  font-family: inherit !important;
  font-size: var(--g7-scoped-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading-section > h3 {
  font-family: var(--g7-scoped-ui-font) !important;
  font-size: var(--g7-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2):is(.module-listening, .module-reading)
  .cd-part-head {
  font-family: var(--g7-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2):is(.module-listening, .module-reading)
  :is(strong, b) {
  font-weight: 700 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading-pane
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-listening-notes,
    .manual-boxed-notes,
    .manual-question-table,
    .manual-table-block,
    .manual-table-page,
    .cd-reading-table,
    .ielts-table,
    .g-source-table,
    .g-source-frame,
    .g-source-image-box,
    .pdf-source-box,
    .structured-question-list,
    .reading-summary-completion,
    .ielts-inline-options,
    .ielts-tfng-question,
    [style*="border"]
  ),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-listening-notes,
    .manual-boxed-notes,
    .manual-question-table,
    .manual-table-block,
    .manual-table-page,
    .cd-reading-table,
    .ielts-table,
    .g-source-table,
    .g-source-frame,
    .g-source-image-box,
    .pdf-source-box,
    .structured-question-list,
    .reading-summary-completion,
    .ielts-inline-options,
    .ielts-tfng-question,
    [style*="border"]
  ) {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-box-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading-pane
  :is(.cd-reading-table, .ielts-table, .manual-question-table, .manual-table-block table, table),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(.cd-reading-table, .ielts-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-box-size) !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane
  :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label) {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-question-size) !important;
  line-height: 1.42 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane
  :is(.inline-answer, input[type="text"]),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(.inline-answer, input[type="text"]) {
  font-family: var(--g7-scoped-source-font) !important;
  font-size: var(--g7-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-question-pane
  :is(input[type="radio"], input[type="checkbox"]),
#examView.general-exam.book-7:is(.test-1, .test-2).module-listening .cd-paper
  :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--g7-scoped-control-size);
  height: var(--g7-scoped-control-size);
}

/* G8 TestA/TestB scoped Listening/Reading typography. Do not broaden beyond General Cambridge 8. */
#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g8-scoped-source-font: "Times New Roman", Times, serif;
  --g8-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g8-scoped-passage-size: 20px;
  --g8-scoped-question-size: 19px;
  --g8-scoped-box-size: 19px;
  --g8-scoped-answer-size: 18px;
  --g8-scoped-title-size: 24px;
  --g8-scoped-section-title-size: 22px;
  --g8-scoped-subtitle-size: 21px;
  --g8-scoped-control-size: 20px;
  --g8-scoped-body-line: 1.5;
  --g8-scoped-question-line: 1.42;
  --g8-scoped-box-line: 1.34;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-reading {
  font-family: var(--g8-scoped-source-font) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-passage-size) !important;
  line-height: var(--g8-scoped-body-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-question-pane {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-question-size) !important;
  line-height: var(--g8-scoped-question-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .manual-reading-page
) {
  font-family: inherit !important;
  font-size: var(--g8-scoped-passage-size) !important;
  line-height: var(--g8-scoped-body-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .reading-summary-completion,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-question-line,
  .cd-two-answer-question,
  .g8-judgement-key,
  .g8-judgement-questions,
  .g8-judgement-question,
  .g8-judgement-options,
  .g8-plain-option-list
),
#examView.general-exam.book-8:is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-question-line,
  .cd-two-answer-question
) {
  font-family: inherit !important;
  font-size: var(--g8-scoped-question-size) !important;
  line-height: var(--g8-scoped-question-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .reading-summary-completion,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-question-line,
  .cd-two-answer-question,
  .g8-judgement-key,
  .g8-judgement-questions,
  .g8-judgement-question,
  .g8-judgement-options,
  .g8-plain-option-list
) :is(p, li, label, span, div),
#examView.general-exam.book-8:is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-option,
  .cd-bullet-line,
  .cd-question-line,
  .cd-two-answer-question
) :is(p, li, label, span, div) {
  font-family: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .g8-source-frame,
  .g-source-table,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .reading-summary-completion
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-box-size) !important;
  line-height: var(--g8-scoped-question-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .g-source-table,
  .g-source-table th,
  .g-source-table td,
  table,
  th,
  td
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-box-size) !important;
  line-height: var(--g8-scoped-box-line) !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .g8-source-frame,
  .g-source-table,
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .reading-summary-completion
) :is(p, li, label, span, div, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam.book-8.test-1.module-reading .cd-passage-pane {
  container-type: inline-size;
  overflow-x: auto;
}

#examView.general-exam.book-8.test-1.module-reading .cd-reading-layout:has(.g8-holiday-plus-table) {
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.75fr);
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-box {
  width: 100%;
  max-width: none;
  margin: 10px 0 20px;
  border-radius: 0;
  background: transparent;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table {
  width: 100%;
  max-width: none;
  table-layout: fixed;
  margin: 10px 0 18px;
  border: 1.5px solid #1f2a30;
  background: #d9ecfb;
  color: #101820;
  font-size: 16px !important;
  line-height: 1.34 !important;
  box-shadow: 0 1px 0 rgba(16, 24, 32, 0.08);
}

#examView.general-exam.book-8.test-1.module-reading .cd-passage-pane table.g8-holiday-plus-table,
#examView.general-exam.book-8.test-1.module-reading .cd-passage-pane table.g8-holiday-plus-table :is(th, td) {
  font-size: 16px !important;
  line-height: 1.34 !important;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-code-col {
  width: 5%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-location-col {
  width: 23%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-price-col {
  width: 8%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-nights-col {
  width: 9%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-meals-col {
  width: 17%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-comments-col {
  width: 22%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-transport-col {
  width: 16%;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table th,
#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table td {
  padding: 9px 10px;
  border: 1px solid #23313a;
  vertical-align: top;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table thead th {
  background: #d2e7f8;
  font-size: 16px !important;
  line-height: 1.28 !important;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table thead tr:first-child th {
  padding: 8px 10px;
  font-size: 18px !important;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table thead tr:nth-child(2) th {
  padding: 9px 10px;
  font-style: italic;
  font-weight: 700;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table tbody th {
  font-size: 17px !important;
  text-align: center;
}

#examView.general-exam.book-8.test-1.module-reading .g8-holiday-plus-table td br + br {
  display: block;
  content: "";
  margin-top: 0.35em;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-options {
  margin: 6px 0 12px;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  min-height: 28px;
  margin: 2px 0;
  padding: 2px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice:hover {
  border-color: transparent;
  background: transparent;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice .g8-single-multi-input {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 18px !important;
  min-width: 18px;
  height: 18px !important;
  min-height: 18px;
  margin: 2px 0 0;
  padding: 0 !important;
  border: 1.3px solid #65717a;
  border-radius: 50%;
  background: #ffffff;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice .g8-single-multi-input:checked {
  border-color: #1f2a30;
  background: #1f2a30;
  box-shadow: inset 0 0 0 4px #ffffff;
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice span {
  min-width: 0;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  h1,
  h2,
  .g13-main-title,
  .g-table-main-title
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  h3,
  .g11-heading,
  .cd-part-title
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  h4,
  h5,
  h6,
  .cd-question-title,
  .cd-completion-title,
  .manual-listening-centered-title
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .inline-answer,
  input[type="text"]
) {
  font-family: var(--g8-scoped-source-font) !important;
  font-size: var(--g8-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  input[type="radio"],
  input[type="checkbox"]
) {
  flex: 0 0 var(--g8-scoped-control-size);
  width: var(--g8-scoped-control-size) !important;
  min-width: var(--g8-scoped-control-size);
  height: var(--g8-scoped-control-size) !important;
  min-height: var(--g8-scoped-control-size);
}

#examView.general-exam.book-8.test-2.module-reading .g8-single-multi-choice input.g8-single-multi-input {
  flex: 0 0 18px !important;
  box-sizing: border-box;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  padding: 0 !important;
}

#examView.general-exam.book-8:is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .cd-part-head,
  .cd-statusbar,
  .cd-reading-bottom-nav,
  .cd-module-controls
) {
  font-family: var(--g8-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

/* G4/G5 TestA/TestB scoped Listening/Reading typography. */
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) {
  --g45-scoped-source-font: "Times New Roman", Times, serif;
  --g45-scoped-ui-font: Arial, Helvetica, sans-serif;
  --g45-scoped-passage-size: 20px;
  --g45-scoped-question-size: 19px;
  --g45-scoped-box-size: 19px;
  --g45-scoped-answer-size: 18px;
  --g45-scoped-control-size: 20px;
  --g45-scoped-source-title-size: 24px;
  --g45-scoped-section-title-size: 22px;
  --g45-scoped-subtitle-size: 21px;
  --g45-scoped-passage-line: 1.5;
  --g45-scoped-question-line: 1.42;
  --g45-scoped-box-line: 1.34;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading {
  font-family: var(--g45-scoped-source-font) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-passage-pane {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-passage-size) !important;
  line-height: var(--g45-scoped-passage-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper,
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-question-pane {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-question-size) !important;
  line-height: var(--g45-scoped-question-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .cd-reading-page,
  .cd-passage-text,
  .cd-passage-text-flow,
  .manual-reading-page
) {
  font-family: inherit !important;
  font-size: var(--g45-scoped-passage-size) !important;
  line-height: var(--g45-scoped-passage-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  p,
  li,
  label,
  span,
  div,
  caption,
  figcaption
) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .cd-reading-page,
  .cd-question-group,
  .cd-question-text-flow,
  .reading-summary-completion,
  .manual-reading-page,
  .manual-reading-questions,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-question-stem,
  .cd-choice-option,
  .interactive-choice,
  .cd-bullet-line,
  .cd-question-line,
  .matching-inline-choice-line,
  .cd-inline-fill,
  .tfng-question,
  .tfng-instruction,
  .ielts-tfng-question,
  .ielts-tfng-options,
  .a4-judgement-row,
  .a4-judgement-line,
  .a5-judgement-row,
  .a5-judgement-line,
  .a5-manual-judgement-item
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-question-group,
  .cd-question-text-flow,
  .manual-listening-page,
  .manual-listening-notes,
  .manual-choice-question,
  .structured-question-list,
  .structured-question,
  .cd-choice-question-stem,
  .cd-choice-option,
  .interactive-choice,
  .cd-bullet-line,
  .cd-question-line,
  .matching-inline-choice-line,
  .cd-inline-fill
) {
  font-family: inherit !important;
  font-size: var(--g45-scoped-question-size) !important;
  line-height: var(--g45-scoped-question-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading-pane :is(
  p,
  li,
  label,
  span,
  div,
  td,
  th,
  caption,
  figcaption
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  p,
  li,
  label,
  span,
  div,
  td,
  th,
  caption,
  figcaption
) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .cd-passage-title,
  .g13-main-title,
  .g-table-main-title,
  h1,
  h2
) {
  font-family: inherit !important;
  font-size: var(--g45-scoped-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-passage-pane :is(
  .cd-passage-subtitle,
  .g-centered-subtitle,
  .cd-passage-byline,
  h4,
  h5,
  h6
) {
  font-family: inherit !important;
  font-size: var(--g45-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-question-pane :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .cd-question-title,
  .cd-completion-title,
  .manual-listening-centered-title,
  .manual-table-title
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .cd-question-title,
  .cd-completion-title,
  .manual-listening-centered-title,
  .manual-table-title
) {
  font-family: inherit !important;
  font-size: var(--g45-scoped-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading-section > h3 {
  font-family: var(--g45-scoped-ui-font) !important;
  font-size: var(--g45-scoped-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-part-head,
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-statusbar,
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-reading-bottom-nav,
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) .cd-module-controls {
  font-family: var(--g45-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading-pane :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .source-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .word-box-table,
  .g-source-table,
  .g-source-frame,
  .g-source-image-box,
  .pdf-source-box,
  .structured-question-list,
  .reading-summary-completion,
  .g4-question-option-box,
  .a4t1-blind-words-box,
  .g5-testb-mintons-form,
  .g5-testb-current-car-table,
  .g5-testb-rexford-notes,
  .g5-testb-feedback-form,
  .g5-testb-feedback-table,
  .g5-testb-charity-letter-box,
  .g5-testb-charity-info-box,
  .g5-testb-week-best-box,
  .g5-testb-bingham-box,
  .g5-testb-accommodation-box,
  .tfng-instruction,
  .tfng-question,
  [style*="border"]
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-completion-box,
  .cd-option-box,
  .matching-option-box,
  .pdf-option-list-box,
  .source-box,
  .manual-listening-option-box,
  .manual-listening-notes,
  .manual-boxed-notes,
  .manual-question-table,
  .manual-table,
  .manual-table-block,
  .manual-table-page,
  .cd-reading-table,
  .word-box-table,
  .g-source-table,
  .g-source-frame,
  .g-source-image-box,
  .pdf-source-box,
  .structured-question-list,
  .reading-summary-completion,
  .a4t1-blind-words-box,
  .g5-testb-mintons-form,
  .g5-testb-current-car-table,
  .g5-testb-feedback-form,
  .g5-testb-feedback-table,
  [style*="border"]
) {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-box-size) !important;
  line-height: var(--g45-scoped-question-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading-pane :is(
  .cd-reading-table,
  .manual-question-table,
  .manual-table,
  .manual-table-block table,
  .word-box-table,
  .g-source-table,
  table
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-reading-table,
  .manual-question-table,
  .manual-table,
  .manual-table-block table,
  .word-box-table,
  .g-source-table,
  table
) {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-box-size) !important;
  line-height: var(--g45-scoped-box-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-reading-pane :is(th, td),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-reading .cd-question-pane :is(
  .cd-choice-option,
  .manual-choice-option,
  .option-label,
  .choice-row label,
  .a4-judgement-choice-row label,
  .a5-judgement-choice-row label,
  .a5-judgement-radios label,
  .tfng-options label,
  .ielts-tfng-options label
),
#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2).module-listening .cd-paper :is(
  .cd-choice-option,
  .manual-choice-option,
  .option-label,
  .choice-row label
) {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-question-size) !important;
  line-height: var(--g45-scoped-question-line) !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  .inline-answer,
  input[type="text"]
) {
  font-family: var(--g45-scoped-source-font) !important;
  font-size: var(--g45-scoped-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.general-exam:is(.book-4, .book-5):is(.test-1, .test-2):is(.module-listening, .module-reading) :is(
  input[type="radio"],
  input[type="checkbox"]
) {
  width: var(--g45-scoped-control-size);
  height: var(--g45-scoped-control-size);
}

#examView.forecast-exam-mode.module-reading .exam-content {
  background: #f8fafc;
}

#examView.forecast-exam-mode.module-reading .exam-header {
  justify-content: flex-end;
}

#examView.forecast-exam-mode.module-reading .exam-header-copy {
  display: none;
}

#examView.forecast-exam-mode.module-reading .forecast-practice-scroll {
  padding: 0;
  background: #f8fafc;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-document {
  min-height: calc(100vh - 122px);
  border: 0;
  border-radius: 0;
  background: #f8fafc;
  box-shadow: none;
  color: #1f2937;
  font-family: "SF Pro Text", "PingFang SC", "Noto Sans SC", system-ui, sans-serif;
  font-size: 16px;
}

#examView.forecast-exam-mode.module-reading .forecast-practice-head {
  display: none;
}

#examView.forecast-exam-mode.module-reading .forecast-practice-head span {
  display: block;
  margin: 0 0 1px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #475569;
  font-size: 12px;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-reading .forecast-practice-head h2 {
  margin: 0;
  color: #0f172a;
  font-size: 13.5px;
  line-height: 1.35;
  letter-spacing: 0;
}

#examView.forecast-exam-mode.module-reading .forecast-practice-head p {
  margin: 2px 0 0;
  color: #475569;
  font-size: 12px;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-practice-layout {
  grid-template-columns: minmax(280px, 50%) minmax(320px, 1fr);
  min-height: calc(100vh - 176px);
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage,
#examView.forecast-exam-mode.module-reading .forecast-reading-questions {
  color: #1f2937;
  font-size: 16px;
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage {
  padding: 22px;
  border-right: 1px solid #d7dde5;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-questions {
  padding: 12px 14px;
  background: #edf2f9;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage p,
#examView.forecast-exam-mode.module-reading .forecast-reading-questions p {
  margin: 0 0 14px;
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage h2 {
  margin: 0 0 12px;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage h3 {
  margin: 0 0 16px;
  color: #1f2937;
  font-size: 1.18rem;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-reading .forecast-reading-passage h4,
#examView.forecast-exam-mode.module-reading .forecast-source-question-group h3,
#examView.forecast-exam-mode.module-reading .forecast-source-question-group h4 {
  margin: 0 0 12px;
  color: #1f2937;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-reading .forecast-source-question-group {
  margin: 0 0 16px;
}

#examView.forecast-exam-mode.module-reading .forecast-source-question-group .group {
  margin: 0 0 16px;
  padding: 18px 22px;
  border: 1px solid #d7dde5;
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
}

#examView.forecast-exam-mode.module-reading .forecast-source-question-group .question-item,
#examView.forecast-exam-mode.module-reading .forecast-source-question-group .match-question-item,
#examView.forecast-exam-mode.module-reading .forecast-source-question-group .choice-item {
  margin: 0 0 12px;
}

#examView.forecast-exam-mode.module-reading .tfng-options label,
#examView.forecast-exam-mode.module-reading .radio-options label,
#examView.forecast-exam-mode.module-reading .radio-group label,
#examView.forecast-exam-mode.module-reading .choice-item label,
#examView.forecast-exam-mode.module-reading .checkbox-options label,
#examView.forecast-exam-mode.module-reading .multiple-choice-options label,
#examView.forecast-exam-mode.module-reading .matching-options label,
#examView.forecast-exam-mode.module-reading .forecast-inline-choice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 12px;
  color: #1f2937;
  font-weight: 400;
  line-height: 1.5;
  cursor: pointer;
}

#examView.forecast-exam-mode.module-reading .matching-table {
  width: 100%;
  min-width: 0;
  border-collapse: collapse;
  table-layout: auto;
}

#examView.forecast-exam-mode.module-reading .matching-table thead th {
  min-width: 18px;
  padding: 0 2px 8px;
  text-align: center;
  font-size: 0.9rem;
  font-weight: 700;
  white-space: nowrap;
}

#examView.forecast-exam-mode.module-reading .matching-table thead th:first-child {
  width: auto;
  min-width: 250px;
}

#examView.forecast-exam-mode.module-reading .matching-table tbody td {
  width: 18px;
  min-width: 18px;
  padding: 5px 2px;
  text-align: center;
  vertical-align: middle;
}

#examView.forecast-exam-mode.module-reading .matching-table tbody td:first-child {
  width: auto;
  min-width: 250px;
  max-width: none;
  padding: 5px 12px 5px 0;
  text-align: left;
  line-height: 1.45;
  word-break: normal;
  overflow-wrap: normal;
}

#examView.forecast-exam-mode.module-reading .matching-table input[type="radio"] {
  width: 15px;
  height: 15px;
  margin: 0;
}

#examView.forecast-exam-mode.module-reading .pool-items {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 40px;
  margin-top: 10px;
}

#examView.forecast-exam-mode.module-reading .headings-pool,
#examView.forecast-exam-mode.module-reading .options-pool {
  margin: 12px 0;
}

#examView.forecast-exam-mode.module-reading .drag-item {
  padding: 6px 10px;
  border: 1px solid #bfdbfe;
  border-radius: 4px;
  background: #eff6ff;
  color: #1f2937;
  font-size: 0.9rem;
  line-height: 1.35;
  cursor: grab;
  user-select: none;
}

#examView.forecast-exam-mode.module-reading .drag-item[draggable="false"] {
  cursor: default;
}

#examView.forecast-exam-mode.module-reading .paragraph-dropzone,
#examView.forecast-exam-mode.module-reading .match-dropzone {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 40px;
  margin-bottom: 8px;
  padding: 8px 10px;
  border: 2px dashed #93c5fd;
  border-radius: 4px;
  background: #eff6ff;
}

#examView.forecast-exam-mode.module-reading .match-dropzone {
  min-width: 74px;
  margin: 0 10px 0 0;
}

#examView.forecast-exam-mode.module-reading .paragraph-dropzone.drag-over,
#examView.forecast-exam-mode.module-reading .match-dropzone.drag-over,
#examView.forecast-exam-mode.module-reading .drop-target-summary.drag-over {
  border-color: #2563eb;
  background: #dbeafe;
}

#examView.forecast-exam-mode.module-reading .paragraph-dropzone.dropzone-filled,
#examView.forecast-exam-mode.module-reading .match-dropzone.dropzone-filled,
#examView.forecast-exam-mode.module-reading .drop-target-summary.dropzone-filled {
  border-color: #60a5fa;
}

#examView.forecast-exam-mode.module-reading .paragraph-label {
  color: #64748b;
  font-size: 0.9rem;
  font-weight: 700;
  white-space: nowrap;
}

#examView.forecast-exam-mode.module-reading .dropped-items,
#examView.forecast-exam-mode.module-reading .dropped-items:empty {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: 8px;
}

#examView.forecast-exam-mode.module-reading .dropped-items:empty::after {
  color: #7b8a98;
  font-size: 0.82rem;
  letter-spacing: 0;
  content: "拖到这里";
}

#examView.forecast-exam-mode.module-reading .drop-target-summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  min-height: 30px;
  margin: 0 4px;
  padding: 0 8px;
  border-bottom: 2px solid #64748b;
  border-radius: 4px 4px 0 0;
  background: rgba(0, 0, 0, 0.02);
  vertical-align: bottom;
}

#examView.forecast-exam-mode.module-reading .notes-section,
#examView.forecast-exam-mode.module-reading .gap-fill-section,
#examView.forecast-exam-mode.module-reading .notes-completion,
#examView.forecast-exam-mode.module-reading .summary-completion {
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-reading input.blank,
#examView.forecast-exam-mode.module-reading .inline-answer.forecast-source-answer {
  min-width: 80px;
  max-width: 180px;
  height: 28px;
  margin: 0 4px;
  padding: 2px 6px;
  border: 0;
  border-bottom: 1.5px solid #64748b;
  border-radius: 0;
  background: #ffffff;
  color: #111827;
  font: inherit;
  line-height: 1.2;
  text-align: center;
}

#examView.forecast-exam-mode.module-reading select[data-answer-select] {
  min-height: 30px;
  margin: 4px 0;
  padding: 4px 8px;
  border: 1px solid #cbd5e1;
  border-radius: 4px;
  background: #ffffff;
  color: #1f2937;
  font: inherit;
  line-height: 1.25;
}

#examView.forecast-exam-mode.module-reading .table-section {
  overflow-x: auto;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid #d7dde5;
  border-radius: 4px;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .exam-content,
#examView.forecast-exam-mode.module-listening .forecast-practice-scroll {
  background: #f6f7fb;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-scroll {
  padding: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-document {
  min-height: calc(100vh - 122px);
  border: 0;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
  color: #222222;
  font-family: "Segoe UI", "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  font-weight: 400;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-head {
  padding: 12px 24px;
  border-bottom: 1px solid #eef0f6;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-head span {
  display: block;
  margin: 0 0 4px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #657083;
  font-size: 12px;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-head h2 {
  margin: 0;
  color: #222222;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-head p {
  margin: 4px 0 0;
  color: #657083;
  font-size: 13px;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-audio {
  display: block;
  width: calc(100% - 48px);
  margin: 20px 24px 0;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-body {
  max-width: none;
  padding: 0 24px 88px;
  color: #222222;
  font-size: 16px;
  line-height: 1.8;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source {
  max-width: 1120px;
  margin: 0 auto;
  padding-top: 8px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .group {
  margin: 24px 0;
  padding: 16px;
  border: 1px solid #eef0f6;
  border-radius: 12px;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source h4,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .test-title,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .test-main-title {
  margin: 0 0 12px;
  color: #222222;
  font-size: 1.1em;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .test-main-title {
  text-align: center;
  font-size: 1.5em;
  margin-bottom: 24px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .instructions {
  margin: 0 0 16px;
  padding: 10px;
  border-radius: 8px;
  background: #f6f7fb;
  font-weight: 400;
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source p,
#examView.forecast-exam-mode.module-listening .forecast-listening-source li,
#examView.forecast-exam-mode.module-listening .forecast-listening-source label {
  line-height: 2;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source p {
  margin: 0 0 10px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source label {
  display: block;
  cursor: pointer;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source b,
#examView.forecast-exam-mode.module-listening .forecast-listening-source strong {
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source input.blank,
#examView.forecast-exam-mode.module-listening .forecast-listening-source input.forecast-source-answer {
  width: 10em;
  margin: 0 4px;
  padding: 4px 6px;
  border: 1.5px solid #777777;
  border-radius: 4px;
  background: transparent;
  color: #222222;
  font: inherit;
  line-height: 1.2;
  text-align: center;
  vertical-align: middle;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source input.blank:focus,
#examView.forecast-exam-mode.module-listening .forecast-listening-source input.forecast-source-answer:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 3px #3b82f6;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source input[type="radio"],
#examView.forecast-exam-mode.module-listening .forecast-listening-source input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0 8px 0 0;
  vertical-align: middle;
  cursor: pointer;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table {
  width: 100%;
  margin: 20px 0;
  border-collapse: collapse;
  font-size: 0.95em;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td {
  padding: 12px 8px;
  border: 1px solid #eef0f6;
  text-align: left;
  vertical-align: top;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th {
  background: #f6f7fb;
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table input.blank {
  width: 100px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .matching-flex,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-question-layout {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: start;
  gap: 30px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-row {
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.8;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-slot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 80px;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px dashed #d1d9f0;
  border-radius: 8px;
  background: #ffffff;
  color: #8aa2c1;
  font-size: 1em;
  transition: background-color 0.2s, border-color 0.2s;
  vertical-align: middle;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-slot::before {
  color: #8aa2c1;
  content: attr(data-q);
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-slot.dropzone-filled::before {
  content: "";
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-slot.drag-over {
  border-color: #6f86ff;
  background: #f2f6ff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .drag-pool {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border-radius: 8px;
  background: #f5f6f8;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .drag-option,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .tag,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .drag-item {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border: 1px solid #d7deea;
  border-radius: 6px;
  background: #ffffff;
  color: #2a2f45;
  font-weight: 500;
  line-height: 1.35;
  cursor: grab;
  user-select: none;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .match-slot .drag-item {
  cursor: default;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-answer-grid table {
  width: 100%;
  border-collapse: collapse;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-answer-grid th,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-answer-grid td {
  padding: 8px;
  border: 1px solid #eef0f6;
  text-align: center;
  vertical-align: middle;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-answer-grid th {
  background: #f6f7fb;
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .map-answer-grid td:first-child {
  text-align: left;
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .secCard {
  margin: 18px 0;
  overflow: hidden;
  border: 1px solid #e6e9f1;
  border-radius: 14px;
  background: #f7f9fc;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .secHead {
  padding: 12px 16px;
  border-bottom: 1px solid #e6e9f1;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .secTitle {
  font-size: 18px;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .secBody {
  padding: 10px 16px 14px;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .qLine {
  padding: 10px 8px;
  border-bottom: 1px dashed #e6e9f1;
  font-weight: 700;
  line-height: 2;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .qLine:last-child {
  border-bottom: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .qNum {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin-right: 8px;
  border: 1px solid #e6e9f1;
  border-radius: 8px;
  background: #eef2fb;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript {
  display: grid;
  gap: 8px;
  max-width: 1120px;
  margin: 0 auto;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript h3 {
  margin: 0 0 8px;
  font-size: 20px;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p {
  margin: 0;
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript small {
  color: #657083;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .answer-highlight {
  padding: 2px 5px;
  border-bottom: 2px solid #93c5fd;
  border-radius: 4px;
  background-color: #dbeafe;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-scroll {
  height: 100%;
  overflow: hidden;
}

body[data-view="exam"] .main:has(#examView.forecast-exam-mode.module-listening.active) {
  padding: 0;
}

body[data-view="exam"] .main:has(#examView.forecast-exam-mode.module-listening.active) > .topbar {
  display: none;
}

#examView.forecast-exam-mode.module-listening.active {
  display: flex;
  flex-direction: column;
  height: 100vh;
  min-height: 0;
}

#examView.forecast-exam-mode.module-listening .exam-header {
  display: none;
}

#examView.forecast-exam-mode.module-listening .exam-layout {
  flex: 1 1 auto;
  min-height: 0;
}

#examView.forecast-exam-mode.module-listening .exam-content {
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

#examView.forecast-exam-mode.module-listening .content-scroll {
  height: 100%;
  min-height: 0;
  padding: 0;
}

#examView.forecast-exam-mode.module-listening .exam-footer {
  flex: 0 0 auto;
  margin: 0;
  border-right: 0;
  border-bottom: 0;
  border-left: 0;
  border-radius: 0;
  box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.06);
}

#examView.forecast-exam-mode.module-listening .forecast-listening-document {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source-header {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  padding: 0 16px;
  border-bottom: 1px solid #eef0f6;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source-header h1 {
  margin: 0;
  color: #222222;
  font-size: 16px;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source-header button {
  height: 24px;
  padding: 0 10px;
  border: 1px solid #eef0f6;
  border-radius: 6px;
  background: #f6f7fb;
  color: #222222;
  font-size: 12px;
  line-height: 22px;
  opacity: 1;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-panels {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  flex: 1 1 auto;
  min-height: 0;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-document.is-review .forecast-listening-panels {
  grid-template-columns: minmax(480px, 48%) 5px minmax(480px, 52%);
}

#examView.forecast-exam-mode.module-listening .forecast-listening-left-pane,
#examView.forecast-exam-mode.module-listening .forecast-listening-answer-location {
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-left-pane {
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-splitter {
  width: 5px;
  background: #8b8f96;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-location {
  padding: 0 28px 64px;
  background: #f6f7fb;
  color: #2b3340;
  font-size: 19px;
  line-height: 1.65;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-audio-player {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid #eef0f6;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-audio-player audio {
  display: none;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-play {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: #3b82f6;
  color: #ffffff;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-progress {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  min-width: 80px;
  height: 20px;
  cursor: pointer;
  touch-action: none;
  user-select: none;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-progress:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 3px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-progress-track {
  width: 100%;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e0e0e0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-progress-bar {
  width: 0%;
  height: 100%;
  border-radius: 999px;
  background: #3b82f6;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-time {
  flex: 0 0 auto;
  min-width: 82px;
  color: #222222;
  font-size: 12px;
  text-align: right;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-speed {
  flex: 0 0 auto;
  height: 28px;
  padding: 0 8px;
  border: 1px solid #eef0f6;
  border-radius: 6px;
  background: #f6f7fb;
  color: #222222;
  font-size: 12px;
}

#examView.forecast-exam-mode.module-listening .forecast-practice-body {
  box-sizing: border-box;
  width: min(980px, 100%);
  margin: 0;
  padding: 0 16px 88px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source {
  max-width: 100%;
  margin: 0;
  padding: 0;
  font-size: 19px;
  line-height: 1.65;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table {
  width: 100%;
  table-layout: fixed;
  margin: 6px 0 18px;
  border: 1.5px solid #111827;
  border-collapse: collapse;
  background: #ffffff;
  color: #111827;
  font-size: 19px;
  line-height: 1.45;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th:first-child,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td:first-child {
  width: 26%;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th:nth-child(2),
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td:nth-child(2) {
  width: 46%;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th:last-child,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td:last-child {
  width: 28%;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .group:has(.question-table) {
  margin-top: 24px;
  padding: 0 16px 18px;
  border: 0;
  border-radius: 0;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .group:has(.question-table) h4 {
  margin-bottom: 8px;
  font-size: 21px;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .group:has(.question-table) .instructions {
  margin: 0 0 12px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  font-size: 20px;
  line-height: 1.5;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-table-title {
  margin: 8px 0 6px;
  color: #111827;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td {
  padding: 8px 10px;
  border: 1.5px solid #111827;
  text-align: left;
  vertical-align: top;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table th {
  background: #e5e5e5;
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table td {
  min-height: 54px;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table input.blank,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table input.forecast-source-answer {
  width: 96px;
  height: 34px;
  padding: 2px 6px;
  border: 2px solid #111827;
  border-radius: 0;
  background: #ffffff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table .input-cell {
  line-height: 1.75;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .question-table .question-number {
  font-weight: 500;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .group:has(.question-table) .example-answer {
  margin-top: 12px;
  font-size: 19px;
  line-height: 1.5;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .forecast-listening-note-heading {
  margin: 12px 0 2px;
  font-weight: 700;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .forecast-listening-bullet-line {
  position: relative;
  margin: 2px 0 4px 28px;
  padding-left: 22px;
  line-height: 1.55;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .forecast-listening-bullet-line::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 0.74em;
  width: 5px;
  height: 5px;
  background: #111827;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source .forecast-listening-bullet-line .q-number,
#examView.forecast-exam-mode.module-listening .forecast-listening-source .forecast-listening-bullet-line b:first-child {
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review {
  margin: 24px 0 0;
  padding: 28px 0 0;
  border-top: 1px solid #e6e9f1;
  color: #222222;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review h3 {
  margin: 0 0 16px;
  color: #222222;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review table {
  width: 100%;
  border-collapse: collapse;
  font-size: 17px;
  line-height: 1.45;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review th,
#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review td {
  padding: 8px 12px;
  border: 1px solid #eef0f6;
  text-align: left;
  vertical-align: top;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-answer-review th {
  background: #f6f7fb;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .result-correct {
  color: #15803d;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .result-incorrect {
  color: #b91c1c;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source input.input-correct {
  border-color: #4ade80;
  background: #dcfce7;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-source input.input-incorrect {
  border-color: #f87171;
  background: #fee2e2;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript {
  display: block;
  max-width: none;
  margin: 0;
  padding: 0;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript h3 {
  margin: 0;
  padding: 14px 0 10px;
  color: #222222;
  font-size: 19px;
  font-weight: 700;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p {
  display: grid;
  grid-template-columns: minmax(108px, max-content) minmax(0, 1fr);
  column-gap: 16px;
  align-items: start;
  margin: 0 0 20px;
  padding: 2px 4px;
  border-radius: 6px;
  color: #2b3340;
  font-size: 19px;
  line-height: 1.7;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p:has(small) {
  cursor: pointer;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p:has(small):hover {
  background: #eef6ff;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p.is-current,
#examView.forecast-exam-mode.module-listening .forecast-listening-transcript p.is-active {
  background: #dbeafe;
  box-shadow: inset 3px 0 0 #3b82f6;
}

#examView.forecast-exam-mode.module-listening .forecast-listening-transcript small {
  display: block;
  padding-top: 2px;
  color: #667085;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
  white-space: nowrap;
}

@media (max-width: 980px) {
  #examView.forecast-exam-mode.module-reading .forecast-reading-practice-layout {
    grid-template-columns: 1fr;
  }

  #examView.forecast-exam-mode.module-reading .forecast-reading-passage {
    border-right: 0;
    border-bottom: 1px solid #d7dde5;
  }

  #examView.forecast-exam-mode.module-reading .forecast-reading-passage,
  #examView.forecast-exam-mode.module-reading .forecast-reading-questions {
    padding: 18px;
  }

  #examView.forecast-exam-mode.module-listening .forecast-practice-body {
    padding: 0 16px 88px;
  }

  #examView.forecast-exam-mode.module-listening .forecast-listening-source .matching-flex,
  #examView.forecast-exam-mode.module-listening .forecast-listening-source .map-question-layout {
    grid-template-columns: 1fr;
  }

  #examView.forecast-exam-mode.module-listening .forecast-listening-document.is-review .forecast-listening-panels {
    grid-template-columns: 1fr;
  }

  #examView.forecast-exam-mode.module-listening .forecast-listening-splitter {
    display: none;
  }

  #examView.forecast-exam-mode.module-listening .forecast-listening-answer-location {
    min-height: 420px;
    border-top: 5px solid #8b8f96;
  }
}

/* A9 Academic Test 1-4 scoped typography standard */
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a9-source-font: "Times New Roman", Times, serif;
  --a9-ui-font: Arial, Helvetica, sans-serif;
  --a9-passage-size: 20px;
  --a9-question-size: 19px;
  --a9-box-size: 19px;
  --a9-answer-size: 18px;
  --a9-source-title-size: 24px;
  --a9-section-title-size: 22px;
  --a9-subtitle-size: 21px;
  --a9-ui-size: 16px;
  --a9-passage-line: 1.5;
  --a9-question-line: 1.42;
  --a9-box-line: 1.38;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-passage-size) !important;
  line-height: var(--a9-passage-line) !important;
  color: #151515;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-question-size) !important;
  line-height: var(--a9-question-line) !important;
  color: #151515;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, div, section, article, label, span, td, th, caption, figcaption),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, div, section, article, label, span, td, th, caption, figcaption),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, div, section, article, label, span, td, th, caption, figcaption) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .cd-passage-title, .a9-passage-source-frame h2, .a9-perkin-frame h2, .a9t4-marie-title, .a9t4-identity-title) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane > :is(h3),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h3, h4, h5, h6, .cd-passage-subtitle, .a9-passage-source-frame h3, .a9-perkin-frame h3) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .a9-centered-title, .manual-listening-centered-title),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .a9-centered-title, .manual-listening-centered-title) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-subtitle-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) :is(.cd-part-head, .cd-part-nav, .cd-reading-bottom-nav, .cd-module-controls, .cd-statusbar) {
  font-family: var(--a9-ui-font) !important;
  font-size: var(--a9-ui-size) !important;
  line-height: 1.25 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .a9-source-box, .a9-job-enquiry, .a9t2-business-box, .a9-flowchart, .a9-flow-step, .a9t3-turbine-layout, .a9t4-water-heater, [style*="border"]),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .a9-source-box, .a9-job-enquiry, .a9t2-business-box, .a9-flowchart, .a9-flow-step, .a9-passage-source-frame, .a9-perkin-frame, [style*="border"]),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .a9-source-box, .a9-job-enquiry, .a9t2-business-box, .a9-flowchart, .a9-flow-step, .a9t3-turbine-layout, .a9t4-water-heater, [style*="border"]) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-box-size) !important;
  line-height: var(--a9-box-line) !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-box-size) !important;
  line-height: 1.34 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(th, td),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(th, td) {
  font-family: inherit !important;
  font-size: 1em !important;
  line-height: inherit !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a9-choice-question label, .a9-judgement-choice-set label),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a9-choice-question label, .a9-judgement-choice-set label) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-question-size) !important;
  line-height: var(--a9-question-line) !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]) {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  flex: 0 0 20px !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.a9-passage-source-frame, .a9-perkin-frame),
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.a9-passage-source-frame, .a9-perkin-frame) :is(p, li, div, section, article, label, span) {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-passage-size) !important;
  line-height: var(--a9-passage-line) !important;
}

#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane > h3,
#examView.academic-exam.book-9:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3 {
  font-family: var(--a9-source-font) !important;
  font-size: var(--a9-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}
/* End A9 Academic Test 1-4 scoped typography standard */

/* A8 Test 1-4 Listening/Reading scoped typography. Do not apply to Writing, Speaking, General, or other books. */
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4):is(.module-listening, .module-reading) {
  --a8-lr-source-font: "Times New Roman", Times, serif;
  --a8-lr-ui-font: Arial, Helvetica, sans-serif;
  --a8-lr-reading-passage-size: 20px;
  --a8-lr-question-size: 19px;
  --a8-lr-box-size: 19px;
  --a8-lr-answer-size: 18px;
  --a8-lr-source-title-size: 24px;
  --a8-lr-section-title-size: 22px;
  --a8-lr-question-title-size: 21px;
  --a8-lr-body-line: 1.5;
  --a8-lr-question-line: 1.42;
  --a8-lr-box-line: 1.34;
  --a8-lr-control-size: 20px;
  --a8-scoped-source-font: var(--a8-lr-source-font);
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading {
  font-family: var(--a8-lr-source-font) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-reading-passage-size) !important;
  line-height: var(--a8-lr-body-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper,
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-question-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-page, .cd-passage-text, .cd-passage-text-flow, .manual-reading-page) {
  font-family: inherit !important;
  font-size: var(--a8-lr-reading-passage-size) !important;
  line-height: var(--a8-lr-body-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-question-group, .cd-question-text-flow, .manual-listening-page, .manual-listening-notes, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-page, .cd-question-group, .cd-question-text-flow, .manual-reading-page, .manual-reading-questions, .manual-choice-question, .structured-question-list, .structured-question, .cd-choice-option, .cd-bullet-line, .cd-question-line) {
  font-family: inherit !important;
  font-size: var(--a8-lr-question-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, label, span, div, td, th, caption, figcaption),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: inherit !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(h1, h2, .cd-passage-title),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h1, h2) {
  font-family: inherit !important;
  font-size: var(--a8-lr-source-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-section > h3,
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-part-head,
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-part-head {
  font-family: var(--a8-lr-ui-font) !important;
  font-size: var(--a8-lr-section-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title, .manual-listening-centered-title),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(h1, h2, h3, h4, h5, h6, .cd-question-title, .cd-completion-title) {
  font-family: inherit !important;
  font-size: var(--a8-lr-question-title-size) !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .structured-question-list, [style*="border"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .structured-question-list, [style*="border"]) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-box-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-box-size) !important;
  line-height: var(--a8-lr-box-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a8-choice-question label, .a8-choice-row label),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-choice-option, .manual-choice-option, .option-label, .choice-row label, .a8-choice-question label, .a8-choice-row label) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-question-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(.inline-answer, input[type="text"]) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a8-lr-control-size) !important;
  height: var(--a8-lr-control-size) !important;
}



/* A13 Test 1-4 Reading container typography fix. Scoped to Academic Listening/Reading only. */
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(.cd-reading-section, .cd-reading-page, .cd-passage-text, .cd-passage-text-flow, .manual-reading-page),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-reading-passage-size) !important;
  line-height: var(--a13-body-line) !important;
}

#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(.cd-reading-section, .cd-reading-page, .cd-question-text-flow, .a13-manual-question-page, .a13-judgement-page),
#examView.academic-exam.book-13:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, label, span, div, td, th, caption, figcaption) {
  font-family: var(--a13-scoped-source-font) !important;
  font-size: var(--a13-question-size) !important;
  line-height: var(--a13-question-line) !important;
}


/* A8 Academic Test 1-4 Listening/Reading typography corrections. Do not apply to General. */
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(p, li, div, section, article, label, span, td, th, caption, figcaption) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-question-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(p, li, div, section, article, label, span, td, th, caption, figcaption) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-question-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane :is(p, li, div, section, article, label, span, td, th, caption, figcaption) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-reading-passage-size) !important;
  line-height: var(--a8-lr-body-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .structured-question-list, [style*="border"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading-pane :is(.cd-completion-box, .cd-option-box, .matching-option-box, .pdf-option-list-box, .manual-listening-option-box, .manual-listening-notes, .manual-boxed-notes, .manual-question-table, .manual-table-block, .manual-table-page, .cd-reading-table, .structured-question-list, [style*="border"]) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-box-size) !important;
  line-height: var(--a8-lr-question-line) !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(.inline-answer, input[type="text"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-reading :is(.inline-answer, input[type="text"]) {
  font-family: var(--a8-lr-source-font) !important;
  font-size: var(--a8-lr-answer-size) !important;
  line-height: 1.2 !important;
}

#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-listening .cd-paper :is(input[type="radio"], input[type="checkbox"]),
#examView.academic-exam.book-8:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-question-pane :is(input[type="radio"], input[type="checkbox"]) {
  width: var(--a8-lr-control-size) !important;
  height: var(--a8-lr-control-size) !important;
  min-width: var(--a8-lr-control-size) !important;
  flex: 0 0 var(--a8-lr-control-size) !important;
}

/* exam-compact-listening-head-20260622 */
body[data-view="exam"] .main {
  padding-top: 24px;
}

body[data-view="exam"] .topbar {
  margin-bottom: 10px;
}

#examView.module-listening .cd-statusbar {
  min-height: 34px;
  padding: 0 10px;
}

#examView.module-listening .cd-avatar {
  width: 22px;
  height: 22px;
}

#examView.module-listening .cd-part-head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 28px;
  padding: 3px 10px;
  border: 0;
  border-bottom: 1px solid #d5d5d5;
  border-radius: 0;
  background: transparent;
  font-family: Arial, sans-serif;
  line-height: 1.15;
}

#examView.module-listening .cd-part-head strong,
#examView.module-listening .cd-part-head span {
  display: inline;
}

#examView.module-listening .cd-paper {
  padding-top: 4px;
}

/* exam-hide-listening-part-head-20260622 */
#examView.module-listening .cd-statusbar {
  min-height: 42px;
  padding: 0 14px;
}

#examView.module-listening .cd-avatar {
  width: 28px;
  height: 28px;
}

#examView.module-listening .cd-part-head {
  display: none;
}

#examView.module-listening .cd-paper {
  padding-top: 8px;
}

/* exam-hide-reading-part-head-20260622 */
#examView.module-reading .cd-part-head {
  display: none;
}

#examView.module-reading .cd-reading-layout,
#examView.module-reading .cd-paper {
  margin-top: 0;
}

/* exam-cd-countdown-20260622 */
#cdTimeLeft {
  display: inline-flex;
  align-items: center;
  width: max-content;
  margin-top: 2px;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(255, 75, 70, 0.1);
  color: #d92d28;
  font-family: Arial, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}

/* exam-realistic-cd-countdown-20260622 */
#examView:is(.module-listening, .module-reading) .cd-statusbar {
  position: relative;
}

#examView:is(.module-listening, .module-reading) #cdTimeLeft {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 64px;
  margin: 0;
  padding: 2px 10px;
  border: 1px solid #d7dce2;
  border-radius: 4px;
  background: #ffffff;
  color: #1f2937;
  font-family: Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  box-shadow: none;
}

#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-warning {
  border-color: #f5b7b1;
  color: #b42318;
}

#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-urgent {
  border-color: #d92d20;
  background: #fff1f0;
  color: #b42318;
}

#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-flashing {
  animation: cd-timer-flash 1s steps(2, start) infinite;
}

@keyframes cd-timer-flash {
  50% {
    opacity: 0.45;
  }
}

@media (prefers-reduced-motion: reduce) {
  #examView:is(.module-listening, .module-reading) #cdTimeLeft.is-flashing {
    animation: none;
  }
}

/* exam-cd-stopwatch-20260622 */
#examView:is(.module-listening, .module-reading) #cdTimeLeft,
#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-warning,
#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-urgent,
#examView:is(.module-listening, .module-reading) #cdTimeLeft.is-flashing {
  border-color: #d7dce2;
  background: #ffffff;
  color: #1f2937;
  animation: none;
}

/* A14 Test 1 Reading explanation/evidence panel. */
#examView.academic-exam.book-14.test-1.module-reading .cd-reading-answer-explanation-slot {
  margin-top: 24px;
}

#examView.academic-exam.book-14.test-1.module-reading .cd-reading-answer-explanation-slot .answer-explanation-panel {
  width: 100%;
  margin: 0;
  padding: 18px;
  border-color: #b7d3f4;
  box-shadow: 0 12px 26px rgb(15 23 42 / 10%);
  font-family: var(--a14-scoped-ui-font) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-answer-explanation :is(
  section,
  article,
  div,
  p,
  span,
  b,
  strong
) {
  font-family: var(--a14-scoped-ui-font) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-answer-explanation h4 {
  font-family: var(--a14-scoped-ui-font) !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-answer-explanation .cambridge-explanation-grid > article > strong:first-child {
  font-size: 15px !important;
}

#examView.academic-exam.book-14.test-1.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}
/* A14 Test 1 Reading source explanation table. */
#examView.academic-exam.book-14.test-1.module-reading .a14-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-source-explanation th,
#examView.academic-exam.book-14.test-1.module-reading .a14-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-source-explanation th {
  width: 104px;
  background: #f3f0f6;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-14.test-1.module-reading .a14-reading-source-explanation td {
  color: #111827;
}
/* A14 Test 1 Reading locator term highlights. */
#examView.academic-exam.book-14.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}
/* A10 Test 1 Reading explanation/evidence panel. */
#examView.academic-exam.book-10.test-1.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-10.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-10.test-1.module-reading .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.academic-exam.book-10.test-1.module-reading .a10-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-10.test-1.module-reading .a10-reading-source-explanation th,
#examView.academic-exam.book-10.test-1.module-reading .a10-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-10.test-1.module-reading .a10-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-10.test-1.module-reading .a10-reading-source-explanation td {
  color: #111827;
}


/* A10 Test 2 Reading explanation/evidence panel. */
#examView.academic-exam.book-10.test-2.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-10.test-2.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-10.test-2.module-reading .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.academic-exam.book-10.test-2.module-reading .a10-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-10.test-2.module-reading .a10-reading-source-explanation th,
#examView.academic-exam.book-10.test-2.module-reading .a10-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-10.test-2.module-reading .a10-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-10.test-2.module-reading .a10-reading-source-explanation td {
  color: #111827;
}

/* G4 Test A Reading explanation/evidence panel. */
#examView.general-exam.book-4.test-1.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-4.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-4.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

/* G4 Test B Reading explanation/evidence panel. */
#examView.general-exam.book-4.test-2.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-4.test-2.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-4.test-2.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

/* G5 Test A Reading explanation/evidence panel. */
#examView.general-exam.book-5.test-1.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-5.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-5.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

/* G5 Test B Reading explanation/evidence panel. */
#examView.general-exam.book-5.test-2.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-5.test-2.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-5.test-2.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

/* G10 Test 2 Reading explanation/evidence panel. */
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.general-exam.book-10.test-1.module-reading .g10-ifces-table .a7-inline-passage-translation {
  list-style: none;
  margin: 6px 0 10px;
  padding: 6px 8px;
  border-left: 3px solid #0f766e;
  background: #ecfdf5;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a10-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a10-reading-source-explanation th,
#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a10-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a10-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.general-exam.book-10:is(.test-1, .test-2).module-reading .a10-reading-source-explanation td {
  color: #111827;
}

/* G7 Test A Reading explanation/evidence panel. */
#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .g7-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .g7-reading-source-explanation th,
#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .g7-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .g7-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.general-exam.book-7:is(.test-1, .test-2).module-reading .g7-reading-source-explanation td {
  color: #111827;
}


/* A10 Test 3 Reading explanation/evidence panel. */
#examView.academic-exam.book-10.test-3.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-10.test-3.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-10.test-3.module-reading .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.academic-exam.book-10.test-3.module-reading .a10-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-10.test-3.module-reading .a10-reading-source-explanation th,
#examView.academic-exam.book-10.test-3.module-reading .a10-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-10.test-3.module-reading .a10-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-10.test-3.module-reading .a10-reading-source-explanation td {
  color: #111827;
}


/* A10 Test 4 Reading explanation/evidence panel. */
#examView.academic-exam.book-10.test-4.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-10.test-4.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-10.test-4.module-reading .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.academic-exam.book-10.test-4.module-reading .a10-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-10.test-4.module-reading .a10-reading-source-explanation th,
#examView.academic-exam.book-10.test-4.module-reading .a10-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-10.test-4.module-reading .a10-reading-source-explanation th {
  width: 112px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-10.test-4.module-reading .a10-reading-source-explanation td {
  color: #111827;
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-7:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}
/* A13 Test 1 Reading explanation/evidence panel. */
#examView.academic-exam.book-13.test-1.module-reading .cd-reading-answer-explanation-slot {
  margin-top: 24px;
}

#examView.academic-exam.book-13.test-1.module-reading .cd-reading-answer-explanation-slot .answer-explanation-panel {
  width: 100%;
  margin: 0;
  padding: 18px;
  border-color: #b7d3f4;
  box-shadow: 0 12px 26px rgb(15 23 42 / 10%);
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#examView.academic-exam.book-13.test-1.module-reading .a13-reading-answer-explanation :is(
  section,
  article,
  div,
  p,
  span,
  b,
  strong,
  th,
  td
) {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#examView.academic-exam.book-13.test-1.module-reading .a13-reading-answer-explanation h4 {
  font-size: 16px !important;
  line-height: 1.35 !important;
}

#examView.academic-exam.book-13.test-1.module-reading .a13-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #ffffff;
}

#examView.academic-exam.book-13.test-1.module-reading .a13-reading-source-explanation th,
#examView.academic-exam.book-13.test-1.module-reading .a13-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-13.test-1.module-reading .a13-reading-source-explanation th {
  width: 112px;
  background: #f3f4f6;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-13.test-1.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-13.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-13.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* A16 Test 1 Reading source explanations and paragraph translations. */
#examView.academic-exam.book-16.test-1.module-reading .a16-reading-source-explanation {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.55;
}

#examView.academic-exam.book-16.test-1.module-reading .a16-reading-source-explanation th,
#examView.academic-exam.book-16.test-1.module-reading .a16-reading-source-explanation td {
  padding: 7px 9px;
  border: 1px solid #d1d5db;
  vertical-align: top;
}

#examView.academic-exam.book-16.test-1.module-reading .a16-reading-source-explanation th {
  width: 132px;
  background: #f8fafc;
  color: #374151;
  text-align: left;
  white-space: nowrap;
}

#examView.academic-exam.book-16.test-1.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-16.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* A13 Test 2 Reading source explanations and paragraph translations. */
#examView.academic-exam.book-13.test-2.module-reading .cd-answer-explanation-panel table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.55;
}

#examView.academic-exam.book-13.test-2.module-reading .cd-answer-explanation-panel th,
#examView.academic-exam.book-13.test-2.module-reading .cd-answer-explanation-panel td {
  padding: 7px 9px;
  border: 1px solid #d1d5db;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-13.test-2.module-reading .cd-answer-explanation-panel th {
  width: 126px;
  background: #f3f4f6;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-13.test-2.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-13.test-2.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-13.test-2.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* A13 Test 2 Reading explanation panel table compatibility. */
#examView.academic-exam.book-13.test-2.module-reading .answer-explanation-panel table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.55;
}

#examView.academic-exam.book-13.test-2.module-reading .answer-explanation-panel th,
#examView.academic-exam.book-13.test-2.module-reading .answer-explanation-panel td {
  padding: 7px 9px;
  border: 1px solid #d1d5db;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-13.test-2.module-reading .answer-explanation-panel th {
  width: 126px;
  background: #f3f4f6;
  color: #111827;
  font-weight: 800;
}

/* A13 Test 3 Reading source explanations and paragraph translations. */
#examView.academic-exam.book-13.test-3.module-reading .answer-explanation-panel table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.55;
}

#examView.academic-exam.book-13.test-3.module-reading .answer-explanation-panel th,
#examView.academic-exam.book-13.test-3.module-reading .answer-explanation-panel td {
  padding: 7px 9px;
  border: 1px solid #d1d5db;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-13.test-3.module-reading .answer-explanation-panel th {
  width: 126px;
  background: #f3f4f6;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-13.test-3.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-13.test-3.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-13.test-3.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

/* A13 Test 4 Reading source explanations and paragraph translations. */
#examView.academic-exam.book-13.test-4.module-reading .answer-explanation-panel table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.55;
}

#examView.academic-exam.book-13.test-4.module-reading .answer-explanation-panel th,
#examView.academic-exam.book-13.test-4.module-reading .answer-explanation-panel td {
  padding: 7px 9px;
  border: 1px solid #d1d5db;
  vertical-align: top;
  text-align: left;
}

#examView.academic-exam.book-13.test-4.module-reading .answer-explanation-panel th {
  width: 126px;
  background: #f3f4f6;
  color: #111827;
  font-weight: 800;
}

#examView.academic-exam.book-13.test-4.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.academic-exam.book-13.test-4.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.academic-exam.book-13.test-4.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 8px 0 14px;
  padding: 8px 10px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

#examView.general-exam.book-17.test-1.module-reading .g17-reading-answer-explanation :is(.a7-reading-locator-term, .a17-reading-locator-term),
#examView.general-exam.book-17.test-2.module-reading .g17-reading-answer-explanation :is(.a7-reading-locator-term, .a17-reading-locator-term),
#examView.general-exam.book-17.test-3.module-reading .g17-reading-answer-explanation :is(.a7-reading-locator-term, .a17-reading-locator-term),
#examView.general-exam.book-17.test-4.module-reading .g17-reading-answer-explanation :is(.a7-reading-locator-term, .a17-reading-locator-term) {
  display: inline-block;
  margin: 2px 6px 2px 0;
  padding: 1px 8px;
  border-radius: 999px;
  background: #fff3bf;
  color: #7c5200;
  box-shadow: inset 0 0 0 1px rgb(245 158 11 / 38%);
  font-weight: 700;
  line-height: 1.35;
}

#examView.general-exam.book-17.test-1.module-reading .g17-reading-source-explanation,
#examView.general-exam.book-17.test-2.module-reading .g17-reading-source-explanation,
#examView.general-exam.book-17.test-3.module-reading .g17-reading-source-explanation,
#examView.general-exam.book-17.test-4.module-reading .g17-reading-source-explanation {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
}

#examView.general-exam.book-17.test-1.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-1.module-reading .g17-reading-source-explanation td,
#examView.general-exam.book-17.test-2.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-2.module-reading .g17-reading-source-explanation td,
#examView.general-exam.book-17.test-3.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-3.module-reading .g17-reading-source-explanation td,
#examView.general-exam.book-17.test-4.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-4.module-reading .g17-reading-source-explanation td {
  border: 1px solid #d7dce5;
  padding: 10px 12px;
  vertical-align: top;
  text-align: left;
}

#examView.general-exam.book-17.test-1.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-2.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-3.module-reading .g17-reading-source-explanation th,
#examView.general-exam.book-17.test-4.module-reading .g17-reading-source-explanation th {
  width: 104px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.general-exam.book-17.test-1.module-reading .cd-passage-pane .is-reading-evidence-active,
#examView.general-exam.book-17.test-2.module-reading .cd-passage-pane .is-reading-evidence-active,
#examView.general-exam.book-17.test-3.module-reading .cd-passage-pane .is-reading-evidence-active,
#examView.general-exam.book-17.test-4.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-17.test-1.module-reading .cd-passage-pane .reading-locator-highlight,
#examView.general-exam.book-17.test-2.module-reading .cd-passage-pane .reading-locator-highlight,
#examView.general-exam.book-17.test-3.module-reading .cd-passage-pane .reading-locator-highlight,
#examView.general-exam.book-17.test-4.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-17.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation,
#examView.general-exam.book-17.test-2.module-reading .cd-passage-pane .a7-inline-passage-translation,
#examView.general-exam.book-17.test-3.module-reading .cd-passage-pane .a7-inline-passage-translation,
#examView.general-exam.book-17.test-4.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

#examView.general-exam.book-9.test-1.module-reading .g9-test1-reading-analysis table,
#examView.general-exam.book-9.test-2.module-reading .g9-test2-reading-analysis table {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
}

#examView.general-exam.book-9.test-1.module-reading .g9-test1-reading-analysis th,
#examView.general-exam.book-9.test-1.module-reading .g9-test1-reading-analysis td,
#examView.general-exam.book-9.test-2.module-reading .g9-test2-reading-analysis th,
#examView.general-exam.book-9.test-2.module-reading .g9-test2-reading-analysis td {
  border: 1px solid #d7dce5;
  padding: 8px 10px;
  vertical-align: top;
  text-align: left;
}

#examView.general-exam.book-9.test-1.module-reading .g9-test1-reading-analysis th,
#examView.general-exam.book-9.test-2.module-reading .g9-test2-reading-analysis th {
  width: 108px;
  background: #f8fafc;
  color: #111827;
  font-weight: 800;
}

#examView.general-exam.book-9.test-1.module-reading .cd-passage-pane .is-reading-evidence-active,
#examView.general-exam.book-9.test-2.module-reading .cd-passage-pane .is-reading-evidence-active {
  border-radius: 6px;
  background: #fff7cc !important;
  box-shadow:
    inset 5px 0 0 #f97316,
    0 0 0 2px rgb(249 115 22 / 24%);
}

#examView.general-exam.book-9.test-1.module-reading .cd-passage-pane .reading-locator-highlight,
#examView.general-exam.book-9.test-2.module-reading .cd-passage-pane .reading-locator-highlight {
  display: inline;
  padding: 0 2px;
  border-radius: 3px;
  background: #fde047;
  color: #111827;
  box-shadow: inset 0 -2px 0 #f97316;
  font-weight: 700;
}

#examView.general-exam.book-9.test-1.module-reading .cd-passage-pane .a7-inline-passage-translation,
#examView.general-exam.book-9.test-2.module-reading .cd-passage-pane .a7-inline-passage-translation {
  margin: 4px 0 10px;
  color: #475569;
  font-size: 0.92em;
  line-height: 1.45;
}

/* A19 Reading answer explanation layout. */
#examView.academic-exam.book-19.module-reading .cd-reading-answer-explanation-slot .answer-explanation-panel {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 22px 24px;
  overflow: hidden;
  border: 1px solid #b8c8e6;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgb(15 23 42 / 8%);
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
}

#examView.academic-exam.book-19.module-reading .cd-reading-answer-explanation-slot .forecast-explanation-head strong {
  font-family: "Times New Roman", SimSun, serif;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 700;
}

#examView.academic-exam.book-19.module-reading .cd-reading-answer-explanation-slot .answer-explanation-note {
  margin: 18px 0 20px;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.65;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 18px;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation section {
  min-width: 0;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation h4 {
  margin: 0;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 700;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 16px;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article {
  width: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > :is(strong, h5):first-child {
  display: inline-flex;
  max-width: 100%;
  width: fit-content;
  margin: 0 0 18px;
  padding: 9px 16px;
  border: 1px solid #fdba74;
  border-left: 4px solid #f97316;
  border-radius: 5px;
  background: #fff7ed;
  color: #9a3412;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 700;
  overflow-wrap: anywhere;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > h5:first-child span {
  margin-left: 6px;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation table {
  width: 100%;
  max-width: 100%;
  margin: 0;
  border-collapse: collapse;
  table-layout: auto;
  background: #ffffff;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.45;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation th,
#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation td {
  padding: 10px 14px;
  border: 1px solid #d4dce9;
  vertical-align: top;
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation th {
  width: 124px;
  background: #f3f0f8;
  color: #111827;
  font-weight: 700;
  white-space: nowrap;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation td {
  min-width: 0;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > p {
  width: 100%;
  min-width: 0;
  margin: 0;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.45;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > p:has(> b:first-child) {
  display: grid;
  grid-template-columns: 124px minmax(0, 1fr);
  column-gap: 14px;
  padding: 0 14px 0 0;
  border: 1px solid #d4dce9;
  border-bottom: 0;
  background: #ffffff;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > p:has(> b:first-child):last-child {
  border-bottom: 1px solid #d4dce9;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > p:has(> b:first-child) > b:first-child {
  align-self: stretch;
  padding: 10px 14px;
  border-right: 1px solid #d4dce9;
  background: #f3f0f8;
  color: #111827;
  font-weight: 700;
  white-space: nowrap;
}

#examView.academic-exam.book-19.module-reading .a19-reading-answer-explanation .cambridge-explanation-grid > article > p:has(> b:first-child) + p:has(> b:first-child) {
  border-top: 0;
}

/* A21 Listening/Reading answer explanations: match the compact card-and-table review layout. */
#examView.academic-exam.book-21:is(.module-listening, .module-reading) .cambridge-answer-explanation-card {
  width: 100%;
  max-width: 100%;
  max-height: min(34vh, 360px);
  margin: 0;
  padding: 26px 28px 24px;
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid #b8c8e6;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgb(15 23 42 / 8%);
  color: #111827;
  box-sizing: border-box;
  font-family: "Times New Roman", SimSun, serif;
}

#examView.academic-exam.book-21.module-reading .cd-question-pane {
  padding-bottom: 96px !important;
  scroll-padding-bottom: 96px;
}

#examView.academic-exam.book-21.module-reading .cd-reading-answer-explanation-slot {
  display: block;
  width: 100%;
  margin: 28px 0 64px;
}

#examView.academic-exam.book-21.module-listening .cd-listening-study-panel {
  padding-bottom: 96px;
  scroll-padding-bottom: 96px;
}

#examView.academic-exam.book-21.module-listening .cd-listening-study-panel .cambridge-answer-explanation-card {
  max-height: min(32vh, 330px);
  margin-bottom: 20px;
}

#examView.academic-exam.book-21:is(.test-1, .test-2, .test-3, .test-4).module-reading .cd-passage-pane .a7-inline-passage-translation {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 6px 0 16px;
  padding: 8px 10px 8px 12px;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  letter-spacing: 0;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading) .cambridge-answer-explanation-card .forecast-explanation-head {
  margin: 0;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading) .cambridge-answer-explanation-card .forecast-explanation-head strong {
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading) .cambridge-answer-explanation-card .answer-explanation-note {
  margin: 18px 0 20px;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.65;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis) {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 22px;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.48;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .cambridge-explanation-grid {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 22px;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .cambridge-explanation-grid
  > article {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .cambridge-explanation-grid
  > article
  > strong:first-child {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 18px;
  padding: 9px 16px;
  border: 1px solid #fdba74;
  border-left: 4px solid #f97316;
  border-radius: 6px;
  background: #fff7ed;
  color: #9a3412;
  box-shadow: none;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 700;
  overflow-wrap: anywhere;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .explanation-detail {
  width: 100%;
  max-width: 100%;
  margin: 0;
  border: 1px solid #d4dce9;
  border-collapse: collapse;
  table-layout: auto;
  background: #ffffff;
  color: #111827;
  font-family: "Times New Roman", SimSun, serif;
  font-size: 18px;
  line-height: 1.48;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .explanation-detail
  :is(th, td) {
  padding: 13px 16px;
  border: 1px solid #d4dce9;
  vertical-align: top;
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .explanation-detail
  th {
  width: 124px;
  background: #f3f0f8;
  color: #111827;
  font-weight: 700;
  white-space: nowrap;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .explanation-detail
  td {
  min-width: 0;
  background: #ffffff;
}

#examView.academic-exam.book-21:is(.module-listening, .module-reading)
  .cambridge-answer-explanation-card
  :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
  .explanation-detail
  :is(mark, .reading-locator-highlight, .listening-locator-highlight, .listening-answer-highlight) {
  display: inline;
  padding: 0 2px;
  border-radius: 2px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  white-space: normal;
}

@media (max-width: 760px) {
  #examView.academic-exam.book-21:is(.module-listening, .module-reading) .cambridge-answer-explanation-card {
    max-height: min(38vh, 360px);
    padding: 20px 18px;
  }

  #examView.academic-exam.book-21:is(.module-listening, .module-reading)
    .cambridge-answer-explanation-card
    :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
    .explanation-detail {
    font-size: 16px;
  }

  #examView.academic-exam.book-21:is(.module-listening, .module-reading)
    .cambridge-answer-explanation-card
    :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
    .explanation-detail
    th {
    width: 86px;
  }

  #examView.academic-exam.book-21:is(.module-listening, .module-reading)
    .cambridge-answer-explanation-card
    :is(.a21-reading-generated-analysis, .a21-listening-generated-analysis, .a21-listening-transcript-analysis)
    .explanation-detail
    :is(th, td) {
    padding: 10px 12px;
  }
}

#examView.general-exam.book-10.test-1.module-reading .cd-question-pane .g10-communications-notes > h5 {
  text-align: center !important;
}

#examView.general-exam.book-10.test-1.module-reading .g10-reading-article-divider {
  display: block;
  width: 100%;
  height: 2px;
  margin: 0 0 14px;
  background: #222222;
}

.listening-locator-highlight {
  border-radius: 3px;
  background: #fff2a8;
  box-shadow: inset 0 -2px 0 rgba(245, 158, 11, 0.35);
  color: inherit;
}

.listening-answer-highlight {
  border-radius: 3px;
  background: #dbeafe;
  box-shadow: inset 0 -2px 0 rgba(37, 99, 235, 0.36);
  color: #0f172a;
  font-weight: 700;
}

.listening-locator-highlight.is-synonym {
  background: #dcfce7;
  box-shadow: inset 0 -2px 0 rgba(22, 163, 74, 0.35);
}

.listening-locator-highlight.is-synonym::after {
  content: attr(data-listening-locator-label);
  display: inline-block;
  margin-left: 3px;
  padding: 0 3px;
  border-radius: 3px;
  background: #15803d;
  color: #ffffff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.25;
  vertical-align: 0.12em;
}

.cd-listening-workspace.has-study-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 42%);
  gap: 16px;
  align-items: stretch;
  min-height: 0;
  height: 100%;
  overflow: hidden;
}

.cd-listening-workspace.has-study-panel .cd-paper {
  width: auto;
  min-width: 0;
  min-height: 0;
  height: 100%;
  max-height: 100%;
  overflow: auto;
}

.cd-listening-study-panel {
  display: grid;
  gap: 14px;
  align-content: start;
  box-sizing: border-box;
  min-height: 0;
  height: 100%;
  max-height: 100%;
  overflow: auto;
  padding: 12px 14px 18px 0;
  color: #111827;
  font-family: Arial, "Microsoft YaHei", sans-serif;
}

.listening-transcript-panel {
  overflow: hidden;
  border: 1px solid #d5dbe6;
  border-radius: 8px;
  background: #ffffff;
}

.listening-transcript-head {
  padding: 12px 14px;
  border-bottom: 1px solid #e5e7eb;
  background: #f8fafc;
}

.listening-transcript-head strong,
.listening-transcript-head span {
  display: block;
}

.listening-transcript-head strong {
  color: #111827;
  font-size: 16px;
  line-height: 1.25;
}

.listening-transcript-head span {
  margin-top: 3px;
  color: #64748b;
  font-size: 12px;
  line-height: 1.3;
}

.listening-transcript-body {
  display: grid;
  gap: 2px;
  padding: 10px 8px;
}

.listening-transcript-row {
  display: grid;
  grid-template-columns: minmax(72px, max-content) minmax(0, 1fr);
  column-gap: 12px;
  row-gap: 3px;
  align-items: baseline;
  padding: 6px 8px;
  border-radius: 6px;
}

.listening-transcript-row[data-transcript-start] {
  cursor: pointer;
}

.listening-transcript-row[data-transcript-start]:hover {
  background: #f1f5f9;
}

.listening-transcript-row.is-current,
.listening-transcript-row.is-active {
  background: #dbeafe;
  box-shadow: inset 3px 0 0 #2563eb;
}

.listening-transcript-row.no-speaker {
  grid-template-columns: minmax(0, 1fr);
}

.listening-transcript-row.no-speaker .listening-transcript-speaker {
  display: none;
}

.listening-transcript-speaker {
  color: #334155;
  font-family: Arial, "Microsoft YaHei", sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.55;
  white-space: nowrap;
}

.listening-transcript-row p {
  min-width: 0;
  margin: 0;
  color: #111827;
  font-family: Arial, "Microsoft YaHei", sans-serif;
  font-size: 14px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.listening-transcript-q-list {
  display: flex;
  flex-wrap: wrap;
  grid-column: 2;
  gap: 4px;
  align-items: center;
}

.listening-transcript-row.no-speaker .listening-transcript-q-list {
  grid-column: 1;
}

.listening-transcript-q {
  min-width: 34px;
  min-height: 24px;
  border: 1px solid #bfdbfe;
  border-radius: 4px;
  background: #eff6ff;
  color: #1d4ed8;
  font: 700 12px/1 Arial, "Microsoft YaHei", sans-serif;
  cursor: pointer;
}

.listening-transcript-q:hover,
.listening-transcript-q.is-current,
.listening-transcript-q.is-active {
  border-color: #2563eb;
  background: #bfdbfe;
}

@media (max-width: 980px) {
  .cd-listening-workspace.has-study-panel {
    grid-template-columns: 1fr;
    height: auto;
    overflow: visible;
  }

  .cd-listening-workspace.has-study-panel .cd-paper,
  .cd-listening-study-panel {
    height: auto;
    max-height: none;
    overflow: visible;
  }

  .cd-listening-study-panel {
    padding: 0 12px 82px;
  }
}

/* Academic A4-A20 Listening question tables: keep source content unchanged, but avoid forced full-width blanks. */
#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(.manual-table-block, .manual-table-page) {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(.cd-reading-table, .manual-question-table, .manual-table-block table, table) {
  width: auto !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  table-layout: auto !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(
    .cd-completion-box,
    .manual-listening-notes,
    .manual-boxed-notes
  ) {
  box-sizing: border-box;
  width: min(100%, 980px) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  overflow-x: visible;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box
  ) {
  box-sizing: border-box;
  width: fit-content !important;
  min-width: min(100%, 680px);
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  overflow-x: auto;
}

/* Academic A4-A20 Listening question spacing and alignment. */
#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block) {
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  > :is(div, section, article)
  > :is(p, ul, ol, .cd-question-line, .cd-bullet-line, .manual-choice-question, .structured-question, .cd-inline-fill) {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  > :is(div, section, article)
  > :is(p, ul, ol, .cd-question-line, .cd-bullet-line, .manual-choice-question, .structured-question, .cd-inline-fill)
  + :is(p, ul, ol, .cd-question-line, .cd-bullet-line, .manual-choice-question, .structured-question, .cd-inline-fill) {
  margin-top: 8px !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  .manual-choice-question {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  .manual-choice-question
  > p:first-child {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  .manual-choice-question
  + .manual-choice-question {
  margin-top: 0 !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  .cd-question-group
  + .cd-question-group {
  margin-top: 18px !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(
    .cd-question-text-flow,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-listening-notes,
    .manual-boxed-notes,
    .cd-question-line,
    .cd-bullet-line,
    .cd-choice-option,
    .manual-choice-option,
    .choice-row label,
    p,
    li,
    ul,
    ol
  ) {
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  > :is(
    h3,
    h4,
    h5,
    h6,
    p,
    ul,
    ol,
    table,
    .manual-table-block,
    .cd-question-title,
    .cd-completion-title,
    .cd-question-text-flow,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-completion-box,
    .cd-option-box,
    .matching-option-box,
    .pdf-option-list-box,
    .manual-listening-option-box,
    .manual-listening-notes,
    .manual-boxed-notes,
    .cd-question-line,
    .cd-bullet-line,
    .cd-choice-option,
    .manual-choice-option
  ) {
  margin-top: 0;
  margin-bottom: 10px;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(
    .cd-question-line,
    .cd-bullet-line,
    .cd-choice-option,
    .manual-choice-option,
    .choice-row,
    .structured-question,
    .cd-inline-fill
  ) {
  margin-top: 6px !important;
  margin-bottom: 8px !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  > :is(div, section, article)
  > .manual-choice-question {
  margin-bottom: 36px !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  .manual-choice-question
  > p:first-child {
  margin-bottom: 16px !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  .manual-choice-question
  .manual-choice-option {
  width: auto !important;
  min-width: 0 !important;
  margin: 10px 0 12px 0 !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(h3, h4, h5, h6, .cd-question-title, .cd-completion-title) {
  margin-top: 16px !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  :is(table caption, .manual-table-title, table thead th, table tr:first-child > :is(th, td)[colspan], table th[colspan]) {
  text-align: center !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-listening
  .cd-paper
  :is(.cd-question-group, .manual-listening-page, .question-block)
  table
  :is(tbody th, td):not(table tr:first-child > :is(th, td)[colspan]):not(table th[colspan]) {
  text-align: left !important;
}

#examView.academic-exam.book-19.test-2.module-listening .a19t2-footwear-heading,
#examView.academic-exam.book-19.test-2.module-listening .a19t2-footwear-heading strong,
.a19t2-footwear-heading,
.a19t2-footwear-heading strong {
  font-weight: 700 !important;
}

/* nav-redesign-20260627 */
.nav-list {
  display: flex;
  grid-template-columns: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: min(980px, calc(100% - 120px));
  margin: 28px auto 0;
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, 0.86);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.46);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    0 20px 52px rgba(40, 35, 56, 0.12);
  backdrop-filter: blur(20px) saturate(145%);
  -webkit-backdrop-filter: blur(20px) saturate(145%);
}

.nav-item {
  position: relative;
  flex: 0 0 auto;
  min-width: 118px;
  height: 54px;
  padding: 0 18px 0 14px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.22);
  color: rgba(22, 31, 53, 0.72);
  box-shadow: none;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0;
  transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.nav-icon {
  display: inline-grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.68);
  color: rgba(33, 45, 71, 0.66);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.nav-icon-text {
  font-size: 11px;
  letter-spacing: 0;
}

.nav-item:hover {
  background: rgba(255, 255, 255, 0.66);
  border-color: rgba(255, 255, 255, 0.82);
  color: #0d1830;
  box-shadow: 0 14px 32px rgba(42, 41, 62, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.92);
  transform: translateY(-1px);
}

.nav-item.active {
  background: linear-gradient(135deg, #ff4f4a 0%, #f24d64 100%);
  border-color: rgba(255, 255, 255, 0.58);
  color: #ffffff;
  box-shadow: 0 16px 34px rgba(255, 73, 74, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.36);
}

.nav-item.active .nav-icon {
  background: rgba(255, 255, 255, 0.96);
  color: #f04445;
}

.nav-item:focus-visible {
  outline: 3px solid rgba(255, 79, 74, 0.28);
  outline-offset: 3px;
}

@media (max-width: 1180px) {
  .nav-list {
    width: 100%;
  }

  .nav-item {
    min-width: 104px;
    padding-inline: 12px;
  }
}

@media (max-width: 780px) {
  .nav-list {
    flex-wrap: wrap;
    justify-content: stretch;
  }

  .nav-item {
    flex: 1 1 calc(33.333% - 8px);
    min-width: 0;
  }
}

@media (max-width: 520px) {
  .nav-item {
    flex-basis: calc(50% - 8px);
    height: 48px;
    font-size: 14px;
  }

  .nav-icon {
    width: 24px;
    height: 24px;
    border-radius: 9px;
  }
}

/* header-watermark-cleanup-20260627 */
.sidebar::before {
  display: none;
  content: "";
}

body:not([data-view]) .topbar,
body[data-view="library"] .topbar,
body[data-view="exam"] .topbar {
  display: none;
  margin: 0;
}

body:not([data-view]) .main,
body[data-view="library"] .main,
body[data-view="exam"] .main,
body.is-module-library[data-view="library"] .main {
  padding-top: 0;
}

/* exam-bottom-compact-20260629 */
body[data-view="exam"] .app-shell {
  min-height: 0;
}

body[data-view="exam"] .main {
  padding-bottom: 0;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading) {
  --exam-footer-compact-height: 46px;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  :is(.content-scroll, .listening-scroll, .reading-scroll) {
  height: calc(100vh - var(--exam-footer-compact-height));
  min-height: 0;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .exam-footer {
  min-height: var(--exam-footer-compact-height);
  margin-top: 0;
  padding: 5px 12px;
  border-top: 0;
  border-radius: 0 0 8px 8px;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .exam-footer
  :is(.primary-button, .secondary-button) {
  min-height: 34px;
  border-radius: 10px;
}

/* exam-statusbar-large-20260629 */
body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .cd-statusbar {
  min-height: 74px;
  padding: 0 18px;
  font-size: 26px !important;
  line-height: 1.2 !important;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .cd-candidate {
  gap: 14px;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .cd-avatar {
  width: 42px;
  height: 42px;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .cd-statusbar
  :is(.cd-candidate strong, .cd-candidate span, .cd-reading-tools, .cd-audio-mini) {
  font-size: 26px !important;
  line-height: 1.2 !important;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  #cdTimeLeft {
  min-width: 104px;
  padding: 4px 16px;
  border-radius: 6px;
  font-size: 26px !important;
  line-height: 1.2 !important;
}

body[data-view="exam"]
  #examView.active.cd-exam-mode:not(.forecast-exam-mode):is(.module-listening, .module-reading)
  .cd-menu {
  font-size: 34px;
  line-height: 1;
}

/* academic-reading-option-bank-vertical-20260629 */
#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .a4t1-recommendation-box,
    .a4t1-movement-option-box,
    .a5t2-option-box,
    .a5t3-heading-box,
    .a5t3-option-box,
    .a5t4-heading-box,
    .a5t4-option-box,
    .a7-option-key,
    .a7-heading-list,
    .a7-word-list,
    .a8t3-small-option-box,
    .a8t3-headings-box,
    .a8t4-headings-box,
    .a10-heading-box,
    .a10-word-box,
    .a11-heading-list,
    .a11-word-box,
    .a12t3-option-box,
    .a12t4-option-box,
    .a13-option-box,
    .a13-word-list-box,
    .a15-t2-humour-word-box,
    .a15-t3-lrrh-word-box,
    .a15-t4-business-word-box,
    .a17-reading-summary-option-box,
    .a20-reading-summary-option-box,
    .a20-correct-ending-option-box
  ) {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  width: min(640px, 100%) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 7px !important;
  text-align: left !important;
}

#examView.academic-exam.book-17:is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  .a17-reading-summary-option-box {
  width: min(300px, 100%) !important;
  max-width: min(300px, 100%) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 8px !important;
  padding: 10px 16px !important;
  border: 1px solid #222222 !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .a4t1-recommendation-box,
    .a4t1-movement-option-box,
    .a5t2-option-box,
    .a5t3-heading-box,
    .a5t3-option-box,
    .a5t4-heading-box,
    .a5t4-option-box,
    .a7-option-key,
    .a7-heading-list,
    .a7-word-list,
    .a8t3-small-option-box,
    .a8t3-headings-box,
    .a8t4-headings-box,
    .a10-heading-box,
    .a10-word-box,
    .a11-heading-list,
    .a11-word-box,
    .a12t3-option-box,
    .a12t4-option-box,
    .a13-option-box,
    .a13-word-list-box,
    .a15-t2-humour-word-box,
    .a15-t3-lrrh-word-box,
    .a15-t4-business-word-box,
    .a17-reading-summary-option-box,
    .a20-reading-summary-option-box,
    .a20-correct-ending-option-box
  )
  > :is(div, p, li, .cd-choice-option):has(> strong:first-child) {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  align-items: start !important;
  margin: 3px 0 !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .a4t1-recommendation-box,
    .a4t1-movement-option-box,
    .a5t2-option-box,
    .a5t3-heading-box,
    .a5t3-option-box,
    .a5t4-heading-box,
    .a5t4-option-box,
    .a7-option-key,
    .a7-heading-list,
    .a7-word-list,
    .a8t3-small-option-box,
    .a8t3-headings-box,
    .a8t4-headings-box,
    .a10-heading-box,
    .a10-word-box,
    .a11-heading-list,
    .a11-word-box,
    .a12t3-option-box,
    .a12t4-option-box,
    .a13-option-box,
    .a13-word-list-box,
    .a15-t2-humour-word-box,
    .a15-t3-lrrh-word-box,
    .a15-t4-business-word-box,
    .a17-reading-summary-option-box,
    .a20-reading-summary-option-box,
    .a20-correct-ending-option-box
  )
  > :is(div, p, li, .cd-choice-option):has(> strong:first-child)
  > strong:first-child {
  min-width: 0 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(.a4t1-blind-words-box, .a9t3-word-list-table, .a11-word-box, .a16-word-list-table) {
  box-sizing: border-box !important;
  display: block !important;
  width: min(640px, 100%) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  padding: 8px 12px !important;
  border: 1px solid #222222 !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(.a4t1-blind-words-box, .a9t3-word-list-table, .a11-word-box, .a16-word-list-table)
  :is(tbody, tr) {
  display: block !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(.a4t1-blind-words-box, .a9t3-word-list-table, .a11-word-box, .a16-word-list-table)
  td {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 3px 0 !important;
  border: 0 !important;
  white-space: normal !important;
  text-align: left !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(.a4t1-blind-words-box, .a9t3-word-list-table, .a11-word-box, .a16-word-list-table)
  td:empty {
  display: none !important;
}

/* a9-test3-reading-q9-12-word-list-inline-20260629 */
#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table {
  display: table !important;
  width: min(640px, 100%) !important;
  border-collapse: collapse !important;
}

#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table
  tbody {
  display: table-row-group !important;
}

#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table
  tr {
  display: table-row !important;
}

#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table
  td {
  display: table-cell !important;
  width: auto !important;
  padding: 3px 8px !important;
  vertical-align: top !important;
}

#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table
  td:nth-child(odd) {
  width: 26px !important;
  padding-right: 2px !important;
  font-weight: 700 !important;
}

#examView.academic-exam.book-9.test-3.module-reading
  .cd-question-pane
  .a9t3-word-list-table
  td:nth-child(even) {
  min-width: 130px !important;
  padding-left: 0 !important;
}

/* general-reading-option-bank-vertical-20260629 */
#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .g4-question-option-box,
    .g4-country-list-box,
    .g4-heading-list-box,
    .g9b-people-box,
    .g11-heading-box,
    .g12t1-people-box,
    .g12t2-headings-box,
    .g12t3-headings-box,
    .g13-heading-list,
    .g14-t1-heading-box,
    .g16-heading-list,
    .g18t1-headings-box,
    .g19t2-people-list
  ) {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  width: min(640px, 100%) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: 7px !important;
  text-align: left !important;
}

#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .g4-question-option-box,
    .g4-country-list-box,
    .g4-heading-list-box,
    .g9b-people-box,
    .g11-heading-box,
    .g12t1-people-box,
    .g12t2-headings-box,
    .g12t3-headings-box,
    .g13-heading-list,
    .g14-t1-heading-box,
    .g16-heading-list,
    .g18t1-headings-box,
    .g19t2-people-list
  )
  > :is(div, p, li, .cd-choice-option):has(> strong:first-child) {
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  align-items: start !important;
  margin: 3px 0 !important;
  text-align: left !important;
}

#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-option-box.matching-option-box,
    .pdf-option-list-box.matching-option-box,
    .g4-question-option-box,
    .g4-country-list-box,
    .g4-heading-list-box,
    .g9b-people-box,
    .g11-heading-box,
    .g12t1-people-box,
    .g12t2-headings-box,
    .g12t3-headings-box,
    .g13-heading-list,
    .g14-t1-heading-box,
    .g16-heading-list,
    .g18t1-headings-box,
    .g19t2-people-list
  )
  > :is(div, p, li, .cd-choice-option):has(> strong:first-child)
  > strong:first-child {
  min-width: 0 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

/* academic-reading-pane-right-whitespace-20260629 */
#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.cd-passage-pane, .cd-question-pane) {
  padding-right: 10px !important;
}

/* a14-t1-listening-part3-choice-layout-20260629 */
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="22"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="23"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="24"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="25"] {
  margin-top: 26px !important;
}

/* A20 Test 2 Passage 2 evidence highlights: avoid blocky fragments when evidence wraps. */
#examView.academic-exam.book-20.test-2.module-reading .a20-reading-passage-source[data-passage="2"] .cd-passage-lettered {
  display: block;
  grid-template-columns: none;
  column-gap: 0;
  padding-left: 32px;
}

#examView.academic-exam.book-20.test-2.module-reading .a20-reading-passage-source[data-passage="2"] .cd-passage-letter {
  float: left;
  width: 28px;
  margin-left: -32px;
}

#examView.academic-exam.book-20.test-2.module-reading .a20-reading-passage-source[data-passage="2"] .reading-locator-highlight {
  display: inline;
  padding: 0;
  border-radius: 0;
  background: linear-gradient(to top, rgb(254 240 138 / 0.88) 0 42%, transparent 42% 100%);
  box-shadow: none;
  color: inherit;
  font-weight: inherit;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

/* A20 Test 4 Listening Part 2 Q13-14 options are plain A-E choices, not a boxed list. */
#examView.academic-exam.book-20.test-4.module-listening .cd-completion-box.cd-option-box.matching-option-box.pdf-option-list-box:has(input[data-multi-choice="L13-L14"]) {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-passage-pane
  :is(
    .cd-reading-section,
    .cd-reading-page,
    .cd-passage-text,
    .cd-passage-text-flow,
    .manual-reading-page,
    .ielts-reading-passage,
    .ielts-reading-passage-text,
    .reading-passage,
    .passage-content,
    .passage-body,
    .passage-section,
    .a5-reading-passage-page,
    .a5-johnson-passage,
    .a5-nature-passage,
    .a5-truth-page,
    .a5-truth-box-continuation,
    .a10-passage,
    .a10-reading-passage,
    .a14-reading-passage-source,
    .a20-reading-passage-source,
    .a12t1-reading-page,
    .a12t2-reading-page,
    .a12t3-reading-page,
    .a12t4-page
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
}

#examView.academic-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-reading-section,
    .cd-reading-page,
    .cd-question-group,
    .cd-question-text-flow,
    .reading-summary-completion,
    .manual-reading-page,
    .manual-reading-questions,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-choice-question,
    .cd-choice-question-stem,
    .cd-choice-option,
    .cd-question-line,
    .cd-bullet-line,
    .matching-inline-choice-line,
    .cd-inline-fill,
    .cd-two-answer-question,
    .cd-judgement-question-line,
    .a13-manual-question-page,
    .a13-judgement-page,
    .a10-choice-list,
    .a10-choice,
    .a10-short-answer-block
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
}

/* general-reading-pane-right-whitespace-20260629 */
#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  :is(.cd-passage-pane, .cd-question-pane) {
  padding-right: 10px !important;
}

#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-passage-pane
  :is(
    .cd-reading-section,
    .cd-reading-page,
    .cd-passage-text,
    .cd-passage-text-flow,
    .manual-reading-page,
    .ielts-reading-passage,
    .ielts-reading-passage-text,
    .reading-passage,
    .passage-content,
    .passage-body,
    .passage-section,
    .pdf-source-box,
    .g-general-passage-text,
    .g-source-frame,
    .g-source-box,
    .g11-reading-doc,
    .g9-reading-page,
    .g13-passage,
    .g13-lettered-passage,
    .g13-t3-passage,
    .g13t4-reading-passage,
    .g14-t1-passage,
    .g14-t2-passage,
    .g14-t3-passage,
    .g14-t4-passage,
    .g18-reading-article,
    .g19-reading-text,
    .g19t1-reading-text,
    .g19t2-reading-text,
    .g19t3-reading-text,
    .g19t4-reading-text
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
}

#examView.general-exam:is(
  .book-4,
  .book-5,
  .book-6,
  .book-7,
  .book-8,
  .book-9,
  .book-10,
  .book-11,
  .book-12,
  .book-13,
  .book-14,
  .book-15,
  .book-16,
  .book-17,
  .book-18,
  .book-19,
  .book-20
):is(.test-1, .test-2, .test-3, .test-4).module-reading
  .cd-question-pane
  :is(
    .cd-reading-section,
    .cd-reading-page,
    .cd-question-group,
    .cd-question-text-flow,
    .reading-summary-completion,
    .manual-reading-page,
    .manual-reading-questions,
    .manual-choice-question,
    .structured-question-list,
    .structured-question,
    .cd-choice-question,
    .cd-choice-question-stem,
    .cd-choice-option,
    .cd-question-line,
    .cd-bullet-line,
    .matching-inline-choice-line,
    .cd-inline-fill,
    .cd-two-answer-question,
    .cd-judgement-question-line,
    .g13-question-page,
    .g19-judgement-page,
    .g19-judgement-questions,
    .g19-judgement-question,
    .g12t1-reading-page,
    .g12t2-reading-headings-page,
    .g12t2-reading-summary-page,
    .g12t3-reading-headings-page,
    .g12-tfng-list,
    .g12-tfng-question,
    .g13-tfng-list,
    .g13-tfng-question,
    .g14-tfng-list,
    .g14-tfng-question,
    .g17-general-judgement-choice-row,
    .g20-judgement-line
  ) {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
}

/* header-d-layout-20260630 */
body:not(.is-exam-view) {
  background: #eef2f6;
}

body:not(.is-exam-view) .app-shell {
  display: block;
  min-height: 100vh;
}

body:not(.is-exam-view) .sidebar {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-columns: minmax(230px, 0.58fr) minmax(520px, 1fr) minmax(300px, 0.68fr);
  grid-template-areas: "brand nav account";
  align-items: center;
  gap: 16px;
  width: min(1284px, calc(100% - 108px));
  min-height: 86px;
  margin: 28px auto 0;
  padding: 0 24px 0 26px;
  border: 1px solid #e8edf3;
  border-radius: 26px;
  background: rgba(255, 255, 255, 0.94);
  color: #091832;
  box-shadow: 0 18px 48px rgba(32, 42, 60, 0.09);
  overflow: visible;
}

body:not(.is-exam-view) .sidebar::before,
body:not(.is-exam-view) .sidebar::after {
  display: none;
  content: "";
}

body:not(.is-exam-view) .brand {
  min-height: 0;
  gap: 12px;
  padding: 0;
}

body:not(.is-exam-view) .brand-mark {
  width: 48px;
  height: 48px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 14px;
  background: #ff4b4b;
  color: #ffffff;
  box-shadow: 0 14px 28px rgba(255, 75, 75, 0.24);
  font-size: 24px;
  font-weight: 900;
}

body:not(.is-exam-view) .brand-copy {
  min-width: 0;
  gap: 5px;
}

body:not(.is-exam-view) .brand strong {
  max-width: 180px;
  color: #071832;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: 0;
  white-space: normal;
}

body:not(.is-exam-view) .brand-copy > span {
  margin: 0;
  color: #41506a;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
}

body:not(.is-exam-view) .brand-badges {
  display: none;
}

body:not(.is-exam-view) .nav-list {
  justify-self: center;
  display: flex;
  grid-template-columns: none;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body:not(.is-exam-view) .nav-item {
  flex: 0 0 auto;
  min-width: 86px;
  height: 48px;
  padding: 0 18px;
  border: 0;
  border-radius: 14px;
  background: #f5f7fa;
  color: #4f5d73;
  box-shadow: none;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0;
  transform: none;
}

body:not(.is-exam-view) .nav-item:hover {
  background: #eef2f7;
  color: #111827;
  box-shadow: none;
  transform: none;
}

body:not(.is-exam-view) .nav-item.active {
  background: #101827;
  color: #ffffff;
  box-shadow: none;
}

body:not(.is-exam-view) .account-box {
  align-content: center;
  justify-items: end;
  min-height: 0;
  padding: 0;
}

body:not(.is-exam-view) .account-name {
  color: #071832;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.1;
}

body:not(.is-exam-view) .account-meta,
body:not(.is-exam-view) .text-button {
  display: none;
}

body:not(.is-exam-view) .account-box #loginOpenButton {
  min-height: 38px;
  margin-top: 0;
  padding: 0 16px;
  border-radius: 12px;
  box-shadow: none;
}

body:not(.is-exam-view) .activation-box {
  display: flex;
  align-items: center;
  gap: 8px;
  width: auto;
  margin-top: 7px;
}

body:not(.is-exam-view) .activation-box input {
  width: 150px;
  height: 38px;
  border: 1px solid rgba(15, 30, 58, 0.1);
  border-radius: 11px;
  background: #ffffff;
  color: #27364f;
  font-weight: 700;
}

body:not(.is-exam-view) .activation-box .secondary-button {
  min-height: 38px;
  padding: 0 15px;
  border: 0;
  border-radius: 11px;
  background: #ff4b4b;
  color: #ffffff;
  font-weight: 900;
}

body[data-view="library"] .main {
  padding: 30px 54px 68px;
}

body[data-view="library"]:not(.is-module-library) #libraryView.view.active {
  display: grid;
  grid-template-columns: minmax(420px, 1.05fr) minmax(420px, 0.95fr);
  grid-template-areas:
    "hero preview"
    "hero features"
    "navigator navigator"
    "toolbar toolbar"
    "grid grid";
  gap: 24px;
  align-items: start;
}

body[data-view="library"]:not(.is-module-library) .library-hero {
  grid-area: hero;
  position: relative;
  top: auto;
  min-height: 500px;
  margin: 0;
  padding: 44px;
  border: 1px solid #e8edf3;
  border-radius: 30px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(32, 42, 60, 0.08);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  grid-area: preview;
  display: block;
  min-height: 360px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(13, 27, 52, 0.08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 22px 50px rgba(33, 44, 69, 0.12);
  overflow: hidden;
}

body[data-view="library"]:not(.is-module-library) .browser-dots {
  gap: 7px;
  margin: 0;
  padding: 15px 18px;
  border-bottom: 1px solid #eef1f6;
}

body[data-view="library"]:not(.is-module-library) .browser-dots span {
  width: 8px;
  height: 8px;
}

body[data-view="library"]:not(.is-module-library) .preview-toolbar {
  display: none;
}

body[data-view="library"]:not(.is-module-library) .preview-exam-media {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: none;
  gap: 0;
  padding: 18px;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card,
body[data-view="library"]:not(.is-module-library) .preview-start-card {
  display: none;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card {
  display: grid;
  min-height: 176px;
  border: 0;
  box-shadow: none;
  padding: 18px 0;
  background: #ffffff;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card strong {
  display: none;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span {
  height: 11px;
  margin-bottom: 11px;
  border-radius: 9px;
  background: #e8edf4;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(1) {
  width: 72%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(2) {
  width: 100%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card button {
  width: max-content;
  height: 44px;
  margin-top: 18px;
  padding: 0 18px;
  border-radius: 13px;
  background: #ff4b4b;
  color: #ffffff;
  font-weight: 900;
}

body[data-view="library"]:not(.is-module-library) .library-kicker {
  min-height: 34px;
  padding: 0 14px;
  border: 0;
  border-radius: 999px;
  background: #fff1ef;
  color: #ff4b4b;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
}

body[data-view="library"]:not(.is-module-library) .library-hero h2 {
  margin: 22px 0 18px;
  color: #071832;
  font-size: 50px;
  line-height: 1.04;
  letter-spacing: 0;
}

body[data-view="library"]:not(.is-module-library) .library-hero p {
  max-width: 640px;
  color: #5b687d;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.75;
}

body[data-view="library"]:not(.is-module-library) .hero-stats {
  gap: 12px;
  margin-top: 26px;
}

body[data-view="library"]:not(.is-module-library) .hero-stats div {
  min-width: 94px;
  padding: 0 18px;
  border: 0;
  border-left: 4px solid #ff4b4b;
  border-radius: 0;
  background: transparent;
}

body[data-view="library"]:not(.is-module-library) .hero-stats strong {
  color: #ff4b4b;
  font-size: 24px;
  line-height: 1;
}

body[data-view="library"]:not(.is-module-library) .hero-stats span {
  margin-top: 6px;
  color: #536176;
  font-size: 12px;
  font-weight: 800;
}

body[data-view="library"]:not(.is-module-library) .library-feature-row {
  grid-area: features;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  max-width: none;
  margin: 0;
  align-self: end;
}

body[data-view="library"]:not(.is-module-library) .library-feature {
  min-height: 92px;
  padding: 18px;
  border: 1px solid #e8edf3;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(32, 42, 60, 0.06);
}

body[data-view="library"]:not(.is-module-library) .library-feature strong {
  color: #14213a;
  font-size: 18px;
}

body[data-view="library"]:not(.is-module-library) .library-feature span {
  color: #647287;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

body[data-view="library"]:not(.is-module-library) .library-feature-row::after {
  content: "口语\A 3题 · 14分钟";
  white-space: pre;
  min-height: 92px;
  padding: 18px;
  border: 1px solid #e8edf3;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(32, 42, 60, 0.06);
  color: #647287;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

body[data-view="library"]:not(.is-module-library) .paper-navigator,
body[data-view="library"]:not(.is-module-library) .toolbar {
  background: rgba(255, 255, 255, 0.74);
  border-color: #e8edf3;
  box-shadow: 0 14px 34px rgba(32, 42, 60, 0.06);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

@media (max-width: 1180px) {
  body:not(.is-exam-view) .sidebar {
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "nav"
      "account";
    width: min(720px, calc(100% - 44px));
    height: auto;
    padding: 22px;
  }

  body:not(.is-exam-view) .nav-list {
    justify-self: stretch;
    flex-wrap: wrap;
  }

  body:not(.is-exam-view) .nav-item {
    flex: 1 1 calc(33.333% - 6px);
  }

  body:not(.is-exam-view) .account-box {
    justify-items: start;
  }

  body[data-view="library"]:not(.is-module-library) #libraryView.view.active {
    grid-template-columns: 1fr;
    grid-template-areas:
      "hero"
      "preview"
      "features"
      "navigator"
      "toolbar"
      "grid";
  }
}

@media (max-width: 720px) {
  body[data-view="library"] .main {
    padding: 22px;
  }

  body:not(.is-exam-view) .nav-item {
    flex-basis: calc(50% - 6px);
  }

  body[data-view="library"]:not(.is-module-library) .library-hero {
    min-height: 0;
    padding: 34px 28px;
  }

  body[data-view="library"]:not(.is-module-library) .library-hero h2 {
    font-size: 38px;
  }

  body[data-view="library"]:not(.is-module-library) .library-feature-row {
    grid-template-columns: 1fr;
  }
}

/* header-d-layout-structure-fix-20260630 */
body[data-view="library"]:not(.is-module-library) #libraryView.view.active {
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "hero"
    "features"
    "navigator"
    "toolbar"
    "grid";
  gap: 24px;
}

body[data-view="library"]:not(.is-module-library) .library-hero {
  display: grid;
  grid-template-columns: minmax(420px, 1.05fr) minmax(420px, 0.95fr);
  gap: 24px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

body[data-view="library"]:not(.is-module-library) .library-hero-copy {
  min-height: 500px;
  padding: 44px;
  border: 1px solid #e8edf3;
  border-radius: 30px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(32, 42, 60, 0.08);
}

body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  min-height: 360px;
  align-self: start;
}

body[data-view="library"]:not(.is-module-library) .library-feature-row {
  align-self: start;
}

body[data-view="library"]:not(.is-module-library) .library-feature strong,
body[data-view="library"]:not(.is-module-library) .library-feature span {
  display: none;
}

body[data-view="library"]:not(.is-module-library) .library-feature::before,
body[data-view="library"]:not(.is-module-library) .library-feature::after {
  display: block;
}

body[data-view="library"]:not(.is-module-library) .library-feature::before {
  color: #14213a;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.15;
}

body[data-view="library"]:not(.is-module-library) .library-feature::after {
  margin-top: 8px;
  color: #647287;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(1)::before {
  content: "听力";
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(1)::after {
  content: "40题 · 30分钟";
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(2)::before {
  content: "阅读";
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(2)::after {
  content: "40题 · 60分钟";
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(3)::before {
  content: "写作";
}

body[data-view="library"]:not(.is-module-library) .library-feature:nth-child(3)::after {
  content: "2题 · 60分钟";
}

body[data-view="library"]:not(.is-module-library) .library-feature-row::after {
  display: block;
  content: "口语\A 3题 · 14分钟";
  white-space: pre;
  min-height: 92px;
  padding: 18px;
  border: 1px solid #e8edf3;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(32, 42, 60, 0.06);
  color: #647287;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.7;
}

@media (max-width: 1180px) {
  body[data-view="library"]:not(.is-module-library) .library-hero {
    grid-template-columns: 1fr;
  }
}

/* header-d-layout-grid-area-fix-20260630 */
body[data-view="library"]:not(.is-module-library) .library-hero-copy,
body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  grid-area: auto;
}

body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  width: 100%;
}

/* header-d-mobile-overflow-fix-20260630 */
@media (max-width: 720px) {
  body[data-view="library"]:not(.is-module-library) .paper-navigator {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "books"
      "tests"
      "type"
      "modules" !important;
    overflow: hidden;
  }

  body[data-view="library"]:not(.is-module-library) .navigator-left,
  body[data-view="library"]:not(.is-module-library) .navigator-row,
  body[data-view="library"]:not(.is-module-library) .navigator-book-row,
  body[data-view="library"]:not(.is-module-library) .navigator-test-row,
  body[data-view="library"]:not(.is-module-library) .navigator-type-row,
  body[data-view="library"]:not(.is-module-library) .navigator-title,
  body[data-view="library"]:not(.is-module-library) .book-nav,
  body[data-view="library"]:not(.is-module-library) .test-nav,
  body[data-view="library"]:not(.is-module-library) .segmented {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body[data-view="library"]:not(.is-module-library) .book-nav,
  body[data-view="library"]:not(.is-module-library) .test-nav,
  body[data-view="library"]:not(.is-module-library) .segmented {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  body[data-view="library"]:not(.is-module-library) .navigator-title strong,
  body[data-view="library"]:not(.is-module-library) .navigator-title span {
    width: auto !important;
    max-width: 100% !important;
  }
}

/* header-account-relaxed-20260630 */
body:not(.is-exam-view) .sidebar {
  grid-template-columns: minmax(220px, 0.52fr) minmax(500px, 1fr) minmax(390px, 0.78fr);
}

body:not(.is-exam-view) .account-box {
  justify-self: end;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "account-name account-action"
    "account-code account-code";
  align-items: center;
  justify-items: stretch;
  width: min(390px, 100%);
  min-height: 0;
  row-gap: 8px;
  column-gap: 12px;
  padding: 0;
}

body:not(.is-exam-view) .account-name {
  grid-area: account-name;
  justify-self: end;
  max-width: 150px;
  overflow: hidden;
  color: #071832;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.15;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body:not(.is-exam-view) .account-box #loginOpenButton {
  grid-area: account-action;
  justify-self: end;
  min-height: 34px;
  margin: 0;
  padding: 0 16px;
  border-radius: 999px;
  line-height: 1;
  white-space: nowrap;
}

body:not(.is-exam-view) .activation-box {
  grid-area: account-code;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: 0;
}

body:not(.is-exam-view) .activation-box input {
  width: 100%;
  min-width: 0;
  height: 36px;
}

body:not(.is-exam-view) .activation-box .secondary-button {
  min-height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  white-space: nowrap;
}

@media (max-width: 1180px) {
  body:not(.is-exam-view) .account-box {
    justify-self: stretch;
    width: 100%;
  }

  body:not(.is-exam-view) .account-name {
    justify-self: start;
    text-align: left;
  }
}

/* header-preview-images-20260630 */
body[data-view="library"]:not(.is-module-library) .preview-exam-media {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(240px, 0.85fr);
  grid-template-rows: minmax(118px, 1fr) minmax(118px, 1fr);
  gap: 14px;
  min-height: 300px;
  padding: 18px;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card {
  display: block;
  min-width: 0;
  min-height: 0;
  margin: 0;
  border: 1px solid #e8edf3;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(32, 42, 60, 0.08);
  overflow: hidden;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card-large {
  grid-row: 1 / span 2;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(0.18) contrast(0.98) saturate(0.85);
}

body[data-view="library"]:not(.is-module-library) .preview-media-card-large img {
  object-position: center 43%;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card figcaption {
  position: absolute;
  top: 12px;
  left: 12px;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  color: #14213a;
  box-shadow: 0 8px 18px rgba(32, 42, 60, 0.12);
  font-size: 12px;
  font-weight: 900;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card {
  position: absolute;
  left: 34px;
  bottom: 34px;
  z-index: 2;
  display: grid;
  width: min(280px, calc(58% - 40px));
  min-height: 108px;
  align-content: center;
  gap: 8px;
  padding: 16px;
  border: 1px solid rgba(232, 237, 243, 0.95);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 42px rgba(32, 42, 60, 0.16);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

body[data-view="library"]:not(.is-module-library) .preview-start-card strong {
  display: block;
  color: #14213a;
  font-size: 13px;
  font-weight: 900;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span {
  display: block;
  height: 8px;
  margin: 0;
  border-radius: 999px;
  background: #e8edf4;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(1) {
  width: 86%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(2) {
  width: 66%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card button {
  width: max-content;
  height: 38px;
  margin-top: 4px;
  padding: 0 16px;
  border-radius: 999px;
  background: #ff4b4b;
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(255, 75, 75, 0.22);
  font-size: 14px;
  font-weight: 900;
}

@media (max-width: 720px) {
  body[data-view="library"]:not(.is-module-library) .preview-exam-media {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, 120px);
    min-height: 430px;
  }

  body[data-view="library"]:not(.is-module-library) .preview-media-card-large {
    grid-row: auto;
  }

  body[data-view="library"]:not(.is-module-library) .preview-start-card {
    left: 30px;
    right: 30px;
    bottom: 28px;
    width: auto;
  }
}

/* header-preview-images-size-fix-20260630 */
body[data-view="library"]:not(.is-module-library) .library-hero {
  align-items: start;
}

body[data-view="library"]:not(.is-module-library) .library-hero-copy {
  align-content: start;
  align-items: start;
}

body[data-view="library"]:not(.is-module-library) .library-kicker {
  width: max-content;
  align-self: start;
  justify-self: start;
}

body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  height: 360px;
  min-height: 360px;
  max-height: 360px;
}

body[data-view="library"]:not(.is-module-library) .preview-exam-media {
  height: calc(100% - 39px);
  min-height: 0;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
}

body[data-view="library"]:not(.is-module-library) .preview-media-card {
  height: 100%;
  min-height: 0;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card img {
  min-height: 0;
}

/* header-homepage-visual-20260630 */
body[data-view="library"]:not(.is-module-library) .library-hero-preview {
  height: 380px;
  min-height: 380px;
  max-height: 380px;
  border-color: rgba(13, 27, 52, 0.08);
  background:
    linear-gradient(135deg, rgba(255, 246, 243, 0.96) 0%, rgba(248, 251, 255, 0.98) 50%, rgba(232, 244, 255, 0.98) 100%);
}

body[data-view="library"]:not(.is-module-library) .preview-exam-media {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(210px, 0.8fr);
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) 88px;
  gap: 14px;
  height: calc(100% - 39px);
  min-height: 0;
  padding: 18px;
  overflow: hidden;
}

body[data-view="library"]:not(.is-module-library) .preview-exam-media::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 22px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.18)),
    linear-gradient(135deg, rgba(255, 75, 75, 0.1), rgba(81, 154, 226, 0.12));
  pointer-events: none;
}

body[data-view="library"]:not(.is-module-library) .preview-media-card {
  display: none !important;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card,
body[data-view="library"]:not(.is-module-library) .preview-start-card {
  position: relative;
  z-index: 1;
  min-width: 0;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.74);
  box-shadow: 0 16px 34px rgba(33, 44, 69, 0.1);
  overflow: hidden;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card {
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 18px;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-main {
  grid-row: 1 / span 2;
  min-height: 0;
  padding-bottom: 126px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.62)),
    linear-gradient(135deg, rgba(255, 75, 75, 0.11), rgba(93, 166, 229, 0.12));
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-main::before {
  content: "";
  position: absolute;
  top: 18px;
  right: 18px;
  width: 78px;
  height: 34px;
  border-radius: 999px;
  background: #ff4b4b;
  box-shadow: 0 12px 26px rgba(255, 75, 75, 0.2);
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-main::after {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  height: 98px;
  border: 1px solid rgba(213, 222, 234, 0.88);
  border-radius: 16px;
  background:
    linear-gradient(0deg, transparent 23%, rgba(83, 97, 118, 0.14) 23% 24%, transparent 24% 48%, rgba(83, 97, 118, 0.14) 48% 49%, transparent 49% 73%, rgba(83, 97, 118, 0.14) 73% 74%, transparent 74%),
    linear-gradient(90deg, transparent 19%, rgba(83, 97, 118, 0.12) 19% 20%, transparent 20% 39%, rgba(83, 97, 118, 0.12) 39% 40%, transparent 40% 59%, rgba(83, 97, 118, 0.12) 59% 60%, transparent 60% 79%, rgba(83, 97, 118, 0.12) 79% 80%, transparent 80%),
    linear-gradient(90deg, rgba(255, 75, 75, 0.74) 0 12%, transparent 12% 16%, rgba(20, 33, 58, 0.34) 16% 29%, transparent 29% 34%, rgba(93, 166, 229, 0.58) 34% 48%, transparent 48% 53%, rgba(255, 75, 75, 0.3) 53% 67%, transparent 67% 72%, rgba(20, 33, 58, 0.45) 72% 88%, transparent 88%),
    #ffffff;
  background-size: 100% 100%, 100% 100%, 100% 52%;
  background-position: 0 0, 0 0, 0 100%;
  background-repeat: no-repeat;
}

body[data-view="library"]:not(.is-module-library) .preview-pill {
  display: inline-flex;
  align-items: center;
  width: max-content;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(255, 75, 75, 0.1);
  color: #ff4b4b;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card strong {
  max-width: 66%;
  color: #071832;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.18;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card i {
  display: block;
  height: 9px;
  border-radius: 999px;
  background: rgba(92, 111, 138, 0.14);
}

body[data-view="library"]:not(.is-module-library) .preview-study-card i:nth-of-type(1) {
  width: 82%;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card i:nth-of-type(2) {
  width: 64%;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card i:nth-of-type(3) {
  width: 48%;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-list,
body[data-view="library"]:not(.is-module-library) .preview-study-card-chart {
  min-height: 0;
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-list {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.62)),
    linear-gradient(135deg, rgba(255, 75, 75, 0.1), rgba(255, 255, 255, 0));
}

body[data-view="library"]:not(.is-module-library) .preview-study-card-chart {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(255, 255, 255, 0.62)),
    linear-gradient(135deg, rgba(93, 166, 229, 0.14), rgba(255, 255, 255, 0));
}

body[data-view="library"]:not(.is-module-library) .preview-bars {
  display: flex;
  align-items: end;
  gap: 9px;
  height: 56px;
  margin-top: auto;
}

body[data-view="library"]:not(.is-module-library) .preview-bars span {
  flex: 1;
  min-width: 0;
  border-radius: 10px 10px 0 0;
  background: #ff4b4b;
}

body[data-view="library"]:not(.is-module-library) .preview-bars span:nth-child(1) {
  height: 48%;
  background: rgba(255, 75, 75, 0.5);
}

body[data-view="library"]:not(.is-module-library) .preview-bars span:nth-child(2) {
  height: 78%;
  background: rgba(20, 33, 58, 0.38);
}

body[data-view="library"]:not(.is-module-library) .preview-bars span:nth-child(3) {
  height: 58%;
  background: rgba(93, 166, 229, 0.62);
}

body[data-view="library"]:not(.is-module-library) .preview-bars span:nth-child(4) {
  height: 92%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "title action"
    "lines action";
  align-items: center;
  gap: 8px 18px;
  min-height: 88px;
  padding: 16px 18px;
  background: rgba(255, 255, 255, 0.82);
}

body[data-view="library"]:not(.is-module-library) .preview-start-card strong {
  grid-area: title;
  display: block;
  color: #071832;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.2;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span {
  display: block;
  height: 10px;
  margin: 0;
  border-radius: 999px;
  background: rgba(92, 111, 138, 0.14);
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(1) {
  grid-area: lines;
  width: 78%;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card span:nth-of-type(2) {
  display: none;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card button {
  grid-area: action;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-width: 112px;
  height: 42px;
  margin: 0;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: #ff4b4b;
  color: transparent;
  box-shadow: 0 14px 28px rgba(255, 75, 75, 0.22);
  font-size: 0;
  font-weight: 900;
  line-height: 1;
}

body[data-view="library"]:not(.is-module-library) .preview-start-card button::before {
  content: "\5F00\59CB\5B66\4E60";
  color: #ffffff;
  font-size: 14px;
  font-weight: 900;
}

#examView#examView#examView.academic-exam.book-8.test-2.module-reading
  .exam-content
  .cd-reading
  .cd-passage-pane
  .a7-inline-passage-translation {
  display: block !important;
  clear: both;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  margin: 6px 0 15px !important;
  padding: 7px 10px 7px 12px !important;
  border-left: 3px solid #f59e0b;
  background: #fffbeb;
  color: #374151;
  font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

@media (max-width: 720px) {
  body[data-view="library"]:not(.is-module-library) .library-hero-preview {
    height: auto;
    min-height: 0;
    max-height: none;
  }

  body[data-view="library"]:not(.is-module-library) .preview-exam-media {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    height: auto;
  }

  body[data-view="library"]:not(.is-module-library) .preview-study-card-main {
    grid-row: auto;
    min-height: 280px;
  }

  body[data-view="library"]:not(.is-module-library) .preview-start-card {
    grid-column: auto;
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "lines"
      "action";
  }
}

/* a14-t1-listening-part3-choice-layout-20260701 */
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="22"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="23"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="24"],
#examView.academic-exam.book-14.test-1.module-listening .cd-question-text-flow .cd-choice-option + .cd-choice-question-stem[data-reading-question-line="25"] {
  margin-top: 26px !important;
}
