:root {
  --listening-teal:#168579;
  --listening-teal-dark:#116d64;
  --listening-teal-soft:#edf7f4;
  --listening-navy:#142238;
  --listening-bg:#f4f8f7;
  --listening-panel:#ffffff;
  --listening-line:#dce7e4;
  --listening-muted:#66788a;
  --listening-coral:#ff654b;
}

body.module-listening:not(.theme-bw):not(.theme-by) {
  --bg:var(--listening-bg);
  --panel:var(--listening-panel);
  --panel-2:#f8fbfa;
  --border:var(--listening-line);
  --line:var(--listening-line);
  --primary:var(--listening-teal);
  --primary-dark:var(--listening-teal-dark);
  --primary-soft:var(--listening-teal-soft);
  --primary-border:#b9ddd7;
  background:var(--listening-bg);
}
body.module-listening [hidden] { display:none!important; }

body.module-listening .app-shell {
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
  gap:0;
  grid-template-columns:224px minmax(0,1fr);
}
body.module-listening .side-nav {
  position:sticky;
  top:0;
  align-self:start;
  display:flex;
  flex-direction:column;
  width:224px;
  height:calc(100vh - 82px);
  min-height:660px;
  padding:28px 18px 22px;
  overflow:auto;
  border:0;
  border-radius:0;
  color:#fff;
  background:var(--listening-navy);
  background:linear-gradient(180deg,#0e5557 0,#153149 17%,var(--listening-navy) 42%);
  box-shadow:none;
}
body.module-listening .side-brand {
  min-height:70px;
  margin:0 0 18px;
  padding:0 0 18px;
  border-bottom:1px solid rgba(255,255,255,.16);
}
body.module-listening .side-brand .logo {
  width:42px;
  height:42px;
  border-radius:10px;
  font-size:16px;
}
body.module-listening .side-brand strong { font-size:18px; }
body.module-listening .side-brand span { font-size:12px; }
body.module-listening .nav-section { margin:0; padding:0 0 16px; }
body.module-listening .nav-section + .nav-section {
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.15);
}
body.module-listening .nav-title {
  margin:0 8px 8px;
  color:rgba(255,255,255,.58);
  font-size:11px;
  letter-spacing:.04em;
}
body.module-listening .nav-section a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:42px;
  margin:2px 0;
  padding:9px 12px;
  border:1px solid transparent;
  border-radius:9px;
  color:rgba(255,255,255,.78);
  font-size:14px;
  font-weight:600;
}
body.module-listening .nav-section a:hover,
body.module-listening .nav-section a.active {
  color:#fff;
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.13);
}
body.module-listening .nav-section .count {
  min-width:24px;
  min-height:20px;
  display:grid;
  place-items:center;
  padding:0 6px;
  border-radius:999px;
  color:#30425d;
  background:#f6f8fb;
  font-size:11px;
}
.listening-side-note {
  margin-top:auto;
  padding:18px 8px 0;
  border-top:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.62);
  font-size:12px;
}
body.module-listening .main-panel,
body.module-listening .stats-main,
body.module-listening .wrongbook-main {
  min-width:0;
  max-width:none;
  padding:38px 40px 52px;
}

.listening-workspace-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:56px;
  margin-bottom:20px;
}
.listening-workspace-heading h1 {
  margin:0;
  font-family:"Noto Sans SC","Microsoft YaHei","PingFang SC",sans-serif!important;
  font-size:28px!important;
  font-weight:700;
  letter-spacing:-.03em;
}
.listening-workspace-heading > a {
  color:var(--listening-teal);
  font-size:14px;
  font-weight:650;
}

/* Listening home */
.listening-home-main { color:#10213a; }
.listening-home-metrics {
  display:flex;
  align-items:center;
  gap:0;
  margin:0 0 20px;
  color:#5f7085;
  font-size:14px;
}
.listening-home-metrics span { padding:0 28px; border-left:1px solid var(--listening-line); }
.listening-home-metrics span:first-child { padding-left:0; border-left:0; }
.listening-home-metrics strong { margin-left:7px; color:#10213a; font-size:17px; }
.listening-continue-card {
  min-height:250px;
  padding:26px 28px;
  border:1px solid var(--listening-line);
  border-radius:10px;
  background:#fff;
}
.listening-continue-card > .empty { min-height:195px; display:grid; place-items:center; border:0; }
.listening-continue-head { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.listening-continue-head > div { display:flex; align-items:center; gap:12px; }
.listening-continue-head h2 { margin:0; font-size:18px; }
.listening-continue-head time { color:#74849a; font-size:13px; }
.listening-state { padding:4px 9px; border-radius:6px; font-size:12px; font-weight:700; }
.listening-state.in-progress { color:#2864d8; background:#edf3ff; }
.listening-continue-meta { margin-top:28px; color:#60728a; font-size:13px; }
.listening-frequency {
  display:inline-flex;
  align-items:center;
  min-height:26px;
  margin-left:10px;
  padding:3px 9px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}
.frequency-high { color:#d94b2f; background:#fff0eb; }
.frequency-medium { color:#9a6a09; background:#fff7d9; }
.frequency-normal { color:#557087; background:#edf3f7; }
.frequency-unset { color:#68778a; background:#f1f4f6; }
.listening-continue-card h3 { margin:12px 0 6px; font-size:22px; line-height:1.35; }
.listening-continue-card > p { color:#64758a; font-size:14px; }
.listening-continue-bottom { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-top:28px; }
.listening-home-progress { display:flex; align-items:center; gap:14px; width:min(650px,65%); color:#66778c; font-size:12px; }
.listening-home-progress > div { flex:1; height:8px; overflow:hidden; border-radius:99px; background:#e8edf2; }
.listening-home-progress i { display:block; height:100%; border-radius:inherit; background:var(--listening-teal); }
.listening-continue-actions { display:flex; align-items:center; gap:16px; }
.listening-continue-actions a { color:var(--listening-teal); font-size:13px; }
.listening-continue-actions button {
  min-width:146px;
  height:44px;
  border:0;
  border-radius:8px;
  color:#fff;
  background:var(--listening-coral);
  font:inherit;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
}
.listening-home-options { margin-top:26px; }
.listening-section-heading { margin-bottom:12px; }
.listening-section-heading h2 { margin:0; font-size:18px; }
.listening-option-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.listening-option-grid > a {
  position:relative;
  min-height:148px;
  padding:20px;
  border:1px solid var(--listening-line);
  border-radius:9px;
  color:#10213a;
  background:#fff;
}
.listening-option-grid > a:hover { border-color:#a9d3cc; background:#fbfefd; }
.listening-option-grid b,.listening-option-grid small { display:block; }
.listening-option-grid b { margin:14px 0 6px; font-size:16px; }
.listening-option-grid small { color:#66778c; font-size:12px; line-height:1.5; }
.listening-option-grid i { position:absolute; top:20px; right:20px; color:#7890a7; font-style:normal; }
.listening-option-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:var(--listening-teal); background:var(--listening-teal-soft); font-size:20px; }
.listening-next-row {
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:20px;
  min-height:70px;
  margin-top:26px;
  border-top:1px solid var(--listening-line);
  color:#62748a;
  font-size:13px;
}
.listening-next-row > strong,.listening-next-row > b { color:#10213a; }
.listening-next-row > button { border:0; color:var(--listening-teal); background:transparent; font:inherit; font-weight:700; cursor:pointer; }

/* Listening bank */
.listening-bank-main { padding-top:20px!important; }
.listening-bank-toolbar { background:var(--listening-bg); }
.listening-bank-heading { align-items:center; min-height:44px; margin-bottom:12px; }
.listening-bank-heading h1 { font-size:26px!important; }
.listening-search { display:flex; align-items:center; width:min(360px,45%); height:38px; padding:0 12px; border:1px solid var(--listening-line); border-radius:8px; background:#fff; }
.listening-search span { margin-right:9px; color:#60758c; font-size:20px; transform:rotate(-15deg); }
.listening-search input { width:100%; border:0; outline:0; color:#10213a; background:transparent; font:inherit; font-size:13px; }
.listening-bank-filters { padding:8px 12px; border:1px solid var(--listening-line); border-radius:9px; background:#fff; }
.listening-status-tabs { display:flex; gap:6px; padding-bottom:7px; border-bottom:1px solid var(--listening-line); }
.listening-status-tabs button,.listening-part-tabs button {
  min-height:32px;
  padding:0 14px;
  border:1px solid transparent;
  border-radius:8px;
  color:#4f6077;
  background:transparent;
  font:inherit;
  font-size:13px;
  font-weight:650;
  cursor:pointer;
}
.listening-status-tabs button.active { color:#fff; background:var(--listening-teal); }
.listening-status-tabs b { margin-left:5px; }
.listening-filter-row { display:flex; align-items:center; gap:10px; padding-top:7px; }
.listening-filter-row > span { color:#53657d; font-size:13px; font-weight:700; }
.listening-part-tabs { display:flex; gap:4px; }
.listening-part-tabs button.active { color:var(--listening-teal); background:var(--listening-teal-soft); }
.listening-filter-selects { display:flex; align-items:center; gap:7px; margin-left:auto; }
.listening-filter-selects select,.listening-bank-tools select,.listening-bank-pagination select {
  min-width:120px;
  height:32px;
  padding:0 34px 0 11px;
  border:1px solid var(--listening-line);
  border-radius:7px;
  color:#445870;
  background:#fff;
  font:inherit;
  font-size:12px;
}
.listening-filter-selects button,.listening-bank-tools button { border:0; color:var(--listening-teal); background:transparent; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.listening-bank-tools { display:flex; align-items:center; justify-content:space-between; min-height:42px; color:#607188; font-size:12px; }
.listening-bank-tools > div { display:flex; align-items:center; gap:8px; }
.listening-bank-tools #listeningExpandControls { display:flex; align-items:center; gap:8px; }
.listening-bank-tools i { color:#9aa7b4; font-style:normal; }
.listening-bank-stat-cache { display:none; }
.listening-bank-table-wrap { overflow:hidden; border:1px solid var(--listening-line); border-radius:9px; background:#fff; }
.listening-bank-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.bank-col-code { width:108px; }.bank-col-frequency { width:100px; }.bank-col-meta { width:210px; }.bank-col-status { width:150px; }.bank-col-action { width:190px; }
.listening-test-heading td { padding:0; border-top:6px solid var(--listening-bg); background:#f3faf8; }
.listening-test-heading:first-child td { border-top:0; }
.listening-test-heading tr { cursor:pointer; }
.listening-test-heading tr:hover td,.listening-test-heading tr:focus td { background:#e7f5f1; }
.listening-test-heading tr:focus { outline:none; }
.listening-test-heading td > div { display:flex; align-items:center; justify-content:space-between; min-height:44px; padding:0 14px; }
.listening-test-toggle { display:flex; align-items:center; gap:9px; color:#10213a; font:inherit; pointer-events:none; }
.listening-test-toggle i { width:18px; color:var(--listening-teal); font-style:normal; font-size:18px; }
.listening-test-toggle strong { font-size:15px; }
.listening-test-toggle span { color:#6d7f91; font-size:12px; }
.listening-test-summary { display:flex; align-items:center; gap:20px; color:#68798b; font-size:12px; }
.listening-test-summary button { min-height:32px; padding:0 12px; border:1px solid var(--listening-teal); border-radius:6px; color:var(--listening-teal); background:#fff; font:inherit; font-weight:700; cursor:pointer; }
.listening-test-summary button:disabled { opacity:.4; cursor:not-allowed; }
.listening-bank-columns th { padding:8px 12px; color:#68798c; background:#f7faf9; font-size:11px; font-weight:650; text-align:left; }
.listening-test-body > tr:not(.listening-bank-columns) > td { height:78px; padding:8px 12px; border-top:1px solid #e8efed; color:#43566d; font-size:12px; vertical-align:middle; }
.listening-part-list > tr:nth-child(even):not(.listening-bank-columns) { background:#fbfdfc; }
.listening-bank-table td > strong,.listening-bank-table td > span,.listening-bank-table td > small { display:block; }
.listening-bank-table td > small { margin-top:5px; color:#7a8b9d; }
.bank-code { display:flex; align-items:center; gap:9px; }
.bank-code > button { border:0; color:#8299ad; background:transparent; font-size:19px; cursor:pointer; }
.bank-code strong,.bank-code small { display:block; }
.bank-code strong { color:#16304e; font-size:14px; }
.bank-code small { margin-top:4px; color:#78889a; font-size:10px; }
.bank-title { color:#10213a; font-size:14px; line-height:1.4; }
.bank-status { position:relative; padding-left:15px; color:#697a8c; font-weight:700; }
.bank-status::before { content:""; position:absolute; left:0; top:50%; width:7px; height:7px; border-radius:50%; background:#9aa8b7; transform:translateY(-50%); }
.bank-status.status-done { color:#16825f; }.bank-status.status-done::before { background:#20b786; }
.bank-status.status-in_progress { color:#2864d8; }.bank-status.status-in_progress::before { background:#326be4; }
.bank-actions { display:flex; flex-direction:column; align-items:stretch; gap:7px; }
.bank-actions a,.bank-actions button { display:flex; align-items:center; justify-content:center; border:0; color:#53667c; background:transparent; font:inherit; font-size:11px; font-weight:650; cursor:pointer; white-space:nowrap; }
.bank-primary-actions { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:6px; }
.bank-primary-actions.single { grid-template-columns:1fr; }
.bank-actions .bank-main-action,.bank-actions .bank-retry-action { width:auto; min-height:31px; padding:0 7px; border:1px solid var(--listening-teal); border-radius:6px; color:var(--listening-teal); }
.bank-actions .bank-retry-action { border-color:var(--listening-line); color:#596b7d; }
.bank-actions .bank-main-action.primary { border-color:var(--listening-coral); color:#fff; background:var(--listening-coral); }
.bank-study-actions { display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.bank-study-actions a { min-height:18px; padding:0 6px; }
.bank-study-actions a + a { border-left:1px solid var(--listening-line); }
.bank-actions .bank-intensive-action { color:var(--listening-teal); font-weight:800; }
.bank-actions .bank-check-action { color:#52677d; font-weight:700; }
.listening-bank-pagination { display:flex; align-items:center; gap:20px; min-height:52px; color:#63758a; font-size:12px; }
.listening-bank-pagination > div { display:flex; gap:7px; margin-left:auto; }
.listening-bank-pagination button { width:36px; height:36px; border:1px solid var(--listening-line); border-radius:7px; color:#53667d; background:#fff; cursor:pointer; }
.listening-bank-pagination button.active { border-color:var(--listening-teal); color:#fff; background:var(--listening-teal); }
.listening-bank-pagination button:disabled { opacity:.38; cursor:not-allowed; }

@media(min-width:901px) {
  html:has(body.module-listening.listening-sequence-page) { height:100%; }
  body.module-listening.listening-sequence-page { height:100vh; height:100dvh; min-height:0; overflow:hidden; display:flex; flex-direction:column; }
  body.module-listening.listening-sequence-page > .oi-global-header { flex-shrink:0; }
  body.module-listening.listening-sequence-page .app-shell { flex:1; height:auto; min-height:0; overflow:hidden; grid-template-rows:minmax(0,1fr); }
  body.module-listening.listening-sequence-page .side-nav { position:static; height:100%; min-height:0; overflow-y:auto; }
  body.module-listening.listening-sequence-page .main-panel { height:100%; min-height:0; overflow-y:auto; overscroll-behavior-y:contain; scrollbar-gutter:stable; }
  body.module-listening.listening-sequence-page .listening-bank-toolbar { position:sticky; top:-20px; z-index:20; margin-top:-20px; padding-top:20px; box-shadow:0 8px 12px rgba(20,34,56,.025); }
}

/* Listening mock */
.listening-mock-heading > div { display:flex; align-items:center; }
.listening-mock-heading > div span { padding:0 22px; border-left:1px solid var(--listening-line); color:#64768a; font-size:13px; }
.listening-mock-heading > div b { margin-right:5px; color:#10213a; font-size:20px; }
.listening-mock-resume { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:16px; min-height:68px; margin-bottom:20px; padding:12px 18px; border:1px solid #bfe2dc; border-radius:9px; color:#136f66; background:#eef9f7; }
.listening-mock-resume[hidden] { display:none; }
.listening-mock-resume > span { font-size:25px; }
.listening-mock-resume strong,.listening-mock-resume small { display:block; }
.listening-mock-resume strong { color:#10213a; font-size:14px; }.listening-mock-resume small { margin-top:4px; font-size:12px; }
.listening-mock-resume a { min-height:38px; display:flex; align-items:center; padding:0 16px; border:1px solid var(--listening-teal); border-radius:7px; color:var(--listening-teal); background:#fff; font-size:13px; font-weight:700; }
.listening-mock-workspace { display:grid; grid-template-columns:340px minmax(0,1fr); align-items:stretch; gap:16px; }
.listening-random-panel,.listening-mock-page .mock-builder { margin:0; padding:24px; border:1px solid var(--listening-line); border-radius:10px; background:#fff; box-shadow:none; }
.listening-random-panel { display:flex; flex-direction:column; }
.listening-random-panel h2,.listening-mock-page .mock-builder-head h2 { margin:0; font-family:"Noto Sans SC","Microsoft YaHei",sans-serif; font-size:19px; }
.listening-random-panel > p { margin:7px 0 20px; color:#68798d; font-size:12px; }
.listening-random-pools { border-top:1px solid var(--listening-line); }
.listening-random-pools > span { display:flex; align-items:center; justify-content:space-between; min-height:61px; border-bottom:1px solid var(--listening-line); }
.listening-random-pools b { padding:6px 9px; border-radius:7px; color:var(--listening-teal); background:var(--listening-teal-soft); font-size:11px; }
.listening-random-pools small { color:#63758a; font-size:12px; }
.listening-random-panel > button,.listening-mock-page #customMockButton { width:100%; min-height:44px; margin-top:auto; border:0; border-radius:7px; color:#fff; background:var(--listening-teal); font:inherit; font-size:14px; font-weight:750; cursor:pointer; }
.listening-random-panel > button { margin-top:22px; }
.listening-mock-page .mock-builder { overflow:hidden; padding:0; }
.listening-mock-page .mock-builder-head { display:flex; align-items:center; justify-content:space-between; padding:24px 26px 14px; }
.listening-mock-page .mock-builder-head > span { color:#6a7b8d; font-size:13px; }.listening-mock-page .mock-builder-head > span b { color:var(--listening-teal); }
.listening-mock-page .mock-part-grid { display:grid; grid-template-columns:1fr; border:0; }
.listening-mock-page .mock-part-card { display:grid; grid-template-columns:76px minmax(0,1fr); grid-template-areas:"heading select" "number choice"; gap:3px 14px; align-items:center; min-height:86px; padding:12px 26px; border:0; border-top:1px solid var(--listening-line); }
.listening-mock-page .mock-part-card:nth-child(odd),.listening-mock-page .mock-part-card:nth-child(-n+2) { border-right:0; border-bottom:0; }
.listening-mock-page .part-heading { grid-area:heading; }.listening-mock-page .part-heading strong { color:var(--listening-teal); font-family:inherit; font-size:14px; }.listening-mock-page .part-heading small { display:none; }
.listening-mock-page .part-number { grid-area:number; width:auto; height:auto; justify-content:start; color:#8a9aaa; background:transparent; font-family:inherit; font-size:10px; }
.listening-mock-page .mock-part-card .select { grid-area:select; height:42px; border-radius:7px; font-size:13px; }
.listening-mock-page .part-choice { grid-area:choice; color:#7a8b9d; font-size:11px; }
.listening-mock-page .mock-builder-footer { display:block; padding:16px 26px 24px; border-top:1px solid var(--listening-line); }
.listening-mock-page .mock-message { min-height:18px; margin-bottom:10px; font-size:11px; }
.listening-mock-page #customMockButton { background:var(--listening-coral); }
.listening-mock-page .mock-boundary-note { display:flex; align-items:center; gap:9px; margin:18px 0 0; padding:0; border:0; color:#738498; background:transparent; font-size:12px; }

@media(max-width:1100px) {
  body.module-listening .app-shell { grid-template-columns:200px minmax(0,1fr); }
  body.module-listening .side-nav { width:200px; }
  body.module-listening .main-panel,body.module-listening .stats-main,body.module-listening .wrongbook-main { padding:28px 24px 44px; }
  .listening-option-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .listening-filter-row { align-items:flex-start; flex-wrap:wrap; }
  .listening-filter-selects { width:100%; margin-left:0; }
  .bank-col-meta { width:165px; }.bank-col-status { width:125px; }.bank-col-action { width:175px; }
}

@media(max-width:900px) {
  body.module-listening .app-shell { display:block; }
  body.module-listening .side-nav { position:static; width:100%; height:auto; min-height:0; display:flex; flex-direction:row; align-items:stretch; gap:8px; padding:10px; overflow-x:auto; background:var(--listening-navy); }
  body.module-listening .side-brand { min-width:170px; min-height:58px; margin:0; padding:7px 12px 7px 4px; border-right:1px solid rgba(255,255,255,.15); border-bottom:0; }
  body.module-listening .nav-section { display:flex; align-items:center; gap:4px; min-width:max-content; padding:0; }
  body.module-listening .nav-section + .nav-section { padding:0; border:0; }
  body.module-listening .nav-title,.listening-side-note { display:none; }
  body.module-listening .nav-section a { min-height:44px; margin:0; padding:9px 11px; }
  .listening-mock-workspace { grid-template-columns:1fr; }
  .listening-random-panel { min-height:390px; }
  .listening-bank-table-wrap { overflow-x:auto; }
  .listening-bank-table { min-width:900px; }
}

@media(max-width:600px) {
  body.module-listening .main-panel,body.module-listening .stats-main,body.module-listening .wrongbook-main { padding:22px 16px 38px; }
  .listening-workspace-heading { align-items:flex-start; }
  .listening-workspace-heading h1 { font-size:24px!important; }
  .listening-home-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .listening-home-metrics span { padding:0; border:0; }
  .listening-home-metrics span:last-child { grid-column:1/-1; }
  .listening-continue-card { padding:20px; }
  .listening-continue-head,.listening-continue-bottom { align-items:flex-start; flex-direction:column; }
  .listening-home-progress { width:100%; }
  .listening-continue-actions { width:100%; justify-content:space-between; }
  .listening-option-grid { grid-template-columns:1fr; }
  .listening-next-row { grid-template-columns:1fr auto; gap:6px 12px; padding:14px 0; }
  .listening-next-row > b { grid-column:1/-1; }
  .listening-search { width:55%; }
  .listening-status-tabs { overflow-x:auto; }
  .listening-status-tabs button,.listening-part-tabs button { padding:0 12px; white-space:nowrap; }
  .listening-filter-selects { display:grid; grid-template-columns:1fr 1fr; }
  .listening-filter-selects select { min-width:0; width:100%; }
  .listening-bank-table-wrap { overflow:visible; }
  .listening-bank-table { min-width:0; table-layout:auto; }
  .listening-bank-table colgroup,.listening-bank-columns { display:none; }
  .listening-test-heading,.listening-test-heading tr,.listening-test-heading td,.listening-test-body { display:block; width:100%; }
  .listening-test-heading td > div { padding:8px 12px; }
  .listening-test-summary { gap:8px; }
  .listening-test-summary button { padding:0 8px; }
  .listening-test-body > tr:not(.listening-bank-columns) {
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:12px 8px;
    padding:15px 12px;
    border-top:1px solid #e8efed;
  }
  .listening-test-body > tr:not(.listening-bank-columns) > td { height:auto; padding:0; border:0; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(1) { grid-column:1; grid-row:1; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(2) { grid-column:2; grid-row:1; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(3) { grid-column:1; grid-row:2; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(4) { grid-column:2; grid-row:2; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(5) { grid-column:1; grid-row:3; }
  .listening-test-body > tr:not(.listening-bank-columns) > td:nth-child(6) { grid-column:2; grid-row:3; }
  .listening-bank-table .listening-frequency { margin-left:0; }
  .bank-actions .bank-main-action { width:auto; min-width:112px; padding:0 10px; }
  .bank-primary-actions { grid-template-columns:1fr; }
  .listening-bank-pagination { flex-wrap:wrap; gap:10px; }
  .listening-bank-pagination > div { margin-left:0; }
  .listening-mock-heading { align-items:flex-start; flex-direction:column; }
  .listening-mock-heading > div span:first-child { padding-left:0; border-left:0; }
  .listening-mock-resume { grid-template-columns:auto 1fr; }
  .listening-mock-resume a { grid-column:1/-1; justify-content:center; }
  .listening-mock-page .mock-part-card { grid-template-columns:62px minmax(0,1fr); padding:12px 16px; }
}
