/* Shared lesson appearance; legacy macromolecule selectors remain supported. */
.pa-lesson,.pa-lesson--macromolecules{--pa-blue:#236b91;--pa-light:#eaf6fb;--pa-border:#b9d8e7;--pa-text:#18384d;--pa-muted:#526b7b;--pa-warn:#fff5dc;max-width:1100px;margin:0 auto;color:var(--pa-text);font-size:1rem;line-height:1.7;min-width:0}
.pa-lesson *,.pa-lesson--macromolecules *{box-sizing:border-box}
.pa-lesson h2,.pa-lesson--macromolecules h2,.pa-lesson h3,.pa-lesson--macromolecules h3{color:#173f59;line-height:1.25;margin:1.7em 0 .65em;overflow-wrap:break-word}
.pa-lesson h2,.pa-lesson--macromolecules h2{font-size:1.65rem;border-bottom:2px solid var(--pa-border);padding-bottom:.35rem}
.pa-lesson h3,.pa-lesson--macromolecules h3{font-size:1.25rem}
.pa-lesson p,.pa-lesson--macromolecules p{margin:.7em 0}
.pa-lesson ul,.pa-lesson--macromolecules ul{padding-left:1.35rem}
.pa-lesson li+li,.pa-lesson--macromolecules li+li{margin-top:.35rem}
.pa-lesson .pa-lead,.pa-lesson--macromolecules .pa-lead{font-size:1.08rem}
.pa-lesson .pa-note,.pa-lesson--macromolecules .pa-note,.pa-lesson .pa-key,.pa-lesson--macromolecules .pa-key,.pa-lesson .pa-warning,.pa-lesson--macromolecules .pa-warning{margin:1.15rem 0;padding:1rem 1.15rem;border-radius:10px}
.pa-lesson .pa-note,.pa-lesson--macromolecules .pa-note{background:var(--pa-light);border-left:5px solid var(--pa-blue)}
.pa-lesson .pa-key,.pa-lesson--macromolecules .pa-key{background:#f3faf6;border-left:5px solid #3b8a65}
.pa-lesson .pa-warning,.pa-lesson--macromolecules .pa-warning{background:var(--pa-warn);border-left:5px solid #d49a20}
.pa-lesson .pa-table-wrap,.pa-lesson--macromolecules .pa-table-wrap{overflow-x:auto;max-width:100%;margin:1rem 0 1.4rem;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.pa-lesson .pa-table-wrap:focus-visible,.pa-lesson--macromolecules .pa-table-wrap:focus-visible{outline:3px solid var(--pa-blue);outline-offset:3px}
.pa-lesson table,.pa-lesson--macromolecules table{width:100%;border-collapse:collapse;background:#fff}
.pa-lesson .pa-comparison-table,.pa-lesson--macromolecules .pa-comparison-table{min-width:640px}
.pa-lesson .pa-nomenclature-table,.pa-lesson--macromolecules .pa-nomenclature-table{min-width:940px}
.pa-lesson th,.pa-lesson--macromolecules th,.pa-lesson td,.pa-lesson--macromolecules td{border:1px solid var(--pa-border);padding:.7rem .8rem;text-align:left;vertical-align:top;overflow-wrap:break-word}
.pa-lesson th,.pa-lesson--macromolecules th{background:var(--pa-light);color:#173f59;font-weight:700}
.pa-lesson tbody tr:nth-child(even) td,.pa-lesson--macromolecules tbody tr:nth-child(even) td{background:#f7fbfd}
.pa-lesson .pa-nomenclature-table th:first-child,.pa-lesson--macromolecules .pa-nomenclature-table th:first-child{width:26%}
.pa-lesson a,.pa-lesson--macromolecules a{color:#1c6084;text-decoration:underline;text-underline-offset:.15em}
.pa-lesson .pa-sources,.pa-lesson--macromolecules .pa-sources{font-size:.92rem;color:var(--pa-muted)}
.pa-lesson .pa-sources a,.pa-lesson--macromolecules .pa-sources a{overflow-wrap:anywhere}
@media(max-width:700px){.pa-lesson,.pa-lesson--macromolecules{font-size:.97rem}
.pa-lesson h2,.pa-lesson--macromolecules h2{font-size:1.4rem}
.pa-lesson h3,.pa-lesson--macromolecules h3{font-size:1.15rem}
.pa-lesson th,.pa-lesson--macromolecules th,.pa-lesson td,.pa-lesson--macromolecules td{padding:.55rem;min-width:145px}
.pa-lesson .pa-note,.pa-lesson--macromolecules .pa-note,.pa-lesson .pa-key,.pa-lesson--macromolecules .pa-key,.pa-lesson .pa-warning,.pa-lesson--macromolecules .pa-warning{padding:.85rem .9rem}
}

/* One shared white lesson surface, independent of topic/table layout. */
.pa-lesson,
.pa-lesson--macromolecules,
.pa-learning-material {
    box-sizing: border-box;
    width: 100%;
    padding: clamp(1rem, 2.5vw, 1.75rem);
    border-radius: 0.75rem;
    background: #ffffff;
  }

/* Existing merged-cell learning tables: moved from content without redesign. */
.pa-learning-material {
    color: #17324a;
    font-size: 1rem;
    line-height: 1.65;
  }

  .pa-learning-material *,
  .pa-learning-material *::before,
  .pa-learning-material *::after {
    box-sizing: border-box;
  }

  .pa-learning-material__header {
    margin-bottom: 1.5rem;
  }

  .pa-learning-material__header h2 {
    margin: 0 0 1rem;
    color: #173f59;
    font-size: clamp(1.45rem, 2.5vw, 2rem);
    line-height: 1.25;
  }

  .pa-learning-material__header p {
    margin: 0 0 1rem;
  }

  .pa-learning-note {
    margin: 1.5rem 0;
    padding: 1rem 1.25rem;
    border-left: 4px solid #5b9fc7;
    border-radius: 0.5rem;
    color: #17324a;
    background: #eef8fd;
  }

  .pa-table-responsive {
    width: 100%;
    margin: 1.5rem 0;
    overflow-x: auto;
    border: 1px solid #91adbf;
    border-radius: 0.65rem;
    background: #ffffff;
    box-shadow: 0 3px 12px rgba(35, 83, 111, 0.08);
    -webkit-overflow-scrolling: touch;
  }

  .pa-learning-table {
    width: 100%;
    min-width: 1050px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    border-spacing: 0;
    color: #17324a;
    background: #ffffff;
    table-layout: fixed;
  }

  .pa-learning-table th,
  .pa-learning-table td {
    padding: 0.75rem 0.85rem;
    border: 1px solid #a8bdcb;
    vertical-align: top;
    text-align: left;
    line-height: 1.5;
    white-space: normal;
    word-break: normal;
    overflow-wrap: anywhere;
    -webkit-hyphens: auto;
    hyphens: auto;
  }

  .pa-learning-table thead th {
    color: #ffffff;
    background: #2e6f91;
    font-weight: 700;
  }

  .pa-learning-table tbody td {
    color: #17324a;
    background: #ffffff;
    font-weight: 400;
  }

  .pa-learning-table tbody th[scope="row"],
  .pa-learning-table tbody th[scope="rowgroup"] {
    color: #17324a;
    background: #dceff8;
    font-weight: 700;
  }

  .pa-learning-table tbody tr:nth-child(even) td {
    background: #f7fbfd;
  }

  .pa-learning-table tbody tr:hover td {
    background: #eaf6fc;
  }

  .pa-learning-table sub,
  .pa-learning-table sup {
    line-height: 0;
  }

  .pa-learning-footnote {
    margin: 1rem 0 0;
    color: #526b7d;
    font-size: 0.92rem;
    line-height: 1.55;
  }

  @media (max-width: 767px) {
    .pa-lesson,
    .pa-lesson--macromolecules,
    .pa-learning-material {
      padding: 1rem;
    }

    .pa-learning-note {
      padding: 0.85rem 1rem;
    }

    .pa-learning-table {
      min-width: 940px;
      font-size: 0.92rem;
    }

    .pa-learning-table th,
    .pa-learning-table td {
      padding: 0.65rem 0.7rem;
    }
  }

.pa-learning-table .pa-learning-col--category{width:15%}
.pa-learning-table .pa-learning-col--group{width:17%}
.pa-learning-table .pa-learning-col--type{width:24%}
.pa-learning-table .pa-learning-col--mechanism{width:30%}
.pa-learning-table .pa-learning-col--drug{width:14%}
.pa-learning-material .pa-table-responsive:focus-visible{outline:3px solid var(--pa-color-primary);outline-offset:3px}
