  .cc-adn-checksheet {
      --cc-adn-red: #93002b;
      --cc-adn-red-dark: #6f0020;
      --cc-adn-text: #1f2937;
      --cc-adn-muted: #5f6b7a;
      --cc-adn-border: #d9d9d9;
      --cc-adn-bg: #ffffff;
      --cc-adn-soft: #f8f5f6;
      --cc-adn-success: #176b3a;
      --cc-adn-warning: #9a3412;
      --cc-adn-radius: 16px;
      --cc-adn-shadow: 0 10px 28px rgba(31, 41, 55, 0.08);

      color: var(--cc-adn-text);
      background: var(--cc-adn-bg);
      max-width: 1600px;
      margin: 2rem auto;
      padding: 1rem;
      border-radius: 18px;
    }

    .cc-adn-checksheet *,
    .cc-adn-checksheet *::before,
    .cc-adn-checksheet *::after {
      box-sizing: border-box;
    }

    .cc-adn-checksheet__header {
      border-top: 6px solid var(--cc-adn-red);
      background: var(--cc-adn-soft);
      border-radius: var(--cc-adn-radius);
      padding: 1.5rem;
      margin-bottom: 1rem;
      box-shadow: var(--cc-adn-shadow);
    }

    .cc-adn-checksheet__header h1 {
      margin: 0.25rem 0;
      color: var(--cc-adn-red);
      font-size: clamp(1.7rem, 4vw, 2.5rem);
      line-height: 1.15;
    }

    .cc-adn-checksheet__eyebrow,
    .cc-adn-checksheet__term {
      margin: 0;
      font-weight: 700;
    }

    .cc-adn-checksheet a {
      color: var(--cc-adn-red);
      text-decoration: underline;
      text-underline-offset: 0.18em;
    }

    .cc-adn-checksheet a:hover,
    .cc-adn-checksheet a:focus {
      color: var(--cc-adn-red-dark);
    }

    .cc-adn-alert {
      border-left: 5px solid var(--cc-adn-red);
      background: #fff7ed;
      padding: 1rem;
      margin: 1rem 0;
      border-radius: 10px;
    }

    .cc-adn-fieldset,
    .cc-adn-section {
      border: 1px solid var(--cc-adn-border);
      border-radius: var(--cc-adn-radius);
      padding: 1rem;
      margin: 1rem 0;
      background: #fff;
      box-shadow: var(--cc-adn-shadow);
    }

    .cc-adn-fieldset legend {
      font-weight: 700;
      color: var(--cc-adn-red);
      padding: 0 0.5rem;
    }

    .cc-adn-grid {
      display: grid;
      gap: 1rem;
    }

    .cc-adn-grid--two {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cc-adn-field label,
    .cc-adn-notes label {
      display: block;
      font-weight: 700;
      margin-bottom: 0.35rem;
    }

    .cc-adn-field input,
    .cc-adn-notes textarea,
    .cc-adn-table input,
    .cc-adn-table select {
      width: 100%;
      border: 1px solid var(--cc-adn-border);
      border-radius: 8px;
      padding: 0.5rem;
      font: inherit;
      background: #fff;
    }

    .cc-adn-table input[type="checkbox"] {
      width: 1.1rem;
      height: 1.1rem;
      cursor: pointer;
    }

    .cc-adn-field input:focus,
    .cc-adn-notes textarea:focus,
    .cc-adn-table input:focus,
    .cc-adn-table select:focus,
    .cc-adn-button:focus {
      outline: 3px solid rgba(147, 0, 43, 0.35);
      outline-offset: 2px;
    }

    .cc-adn-section__heading {
      display: flex;
      justify-content: space-between;
      gap: 1rem;
      align-items: baseline;
      flex-wrap: wrap;
      border-bottom: 1px solid var(--cc-adn-border);
      padding-bottom: 0.75rem;
      margin-bottom: 1rem;
    }

    .cc-adn-section h2 {
      margin: 0;
      color: var(--cc-adn-red);
      font-size: 1.35rem;
    }

    .cc-adn-table-wrap {
      overflow-x: auto;
      border: 1px solid var(--cc-adn-border);
      border-radius: 12px;
      background: #fff;
    }

    .cc-adn-table {
      width: 100%;
      min-width: 980px;
      border-collapse: collapse;
    }

    .cc-adn-table caption {
      text-align: left;
      font-weight: 700;
      padding: 0.75rem;
      background: var(--cc-adn-soft);
    }

    .cc-adn-table th,
    .cc-adn-table td {
      border-top: 1px solid var(--cc-adn-border);
      padding: 0.55rem;
      text-align: left;
      vertical-align: middle;
    }

    .cc-adn-table th {
      background: #f3f4f6;
      font-weight: 700;
    }

    .cc-adn-table td:first-child,
    .cc-adn-table td:nth-child(2),
    .cc-adn-table th:first-child,
    .cc-adn-table th:nth-child(2) {
      text-align: center;
      width: 3rem;
    }

    .cc-adn-table td:nth-child(9),
    .cc-adn-table td:nth-child(11) {
      text-align: right;
    }

    .cc-adn-points,
    .cc-adn-grade-points {
      display: inline-block;
      min-width: 3.5rem;
      font-weight: 700;
    }

    .cc-adn-note-small {
      font-size: 0.94rem;
      color: var(--cc-adn-muted);
      margin: 0.75rem 0 0;
    }

    .cc-adn-notes {
      margin-top: 1rem;
    }

    .cc-adn-summary {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0.75rem;
      margin-top: 1rem;
    }

    .cc-adn-summary p {
      margin: 0;
      background: var(--cc-adn-soft);
      padding: 0.85rem;
      border-radius: 10px;
      border: 1px solid var(--cc-adn-border);
    }

    .cc-adn-status {
      font-weight: 700;
    }

    .cc-adn-status.is-passing {
      color: var(--cc-adn-success);
    }

    .cc-adn-status.is-not-passing {
      color: var(--cc-adn-warning);
    }

    .cc-adn-card-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 1rem;
    }

    .cc-adn-card {
      border: 1px solid var(--cc-adn-border);
      border-radius: 14px;
      padding: 1rem;
      background: var(--cc-adn-soft);
    }

    .cc-adn-card h3 {
      margin-top: 0;
      color: var(--cc-adn-red);
      font-size: 1.05rem;
    }

    .cc-adn-card p {
      margin: 0.35rem 0;
    }

    .cc-adn-actions {
      display: flex;
      gap: 0.75rem;
      flex-wrap: wrap;
      margin: 1.25rem 0;
    }

    .cc-adn-button {
      border: 2px solid var(--cc-adn-red);
      background: var(--cc-adn-red);
      color: #fff;
      border-radius: 999px;
      padding: 0.7rem 1.1rem;
      font-weight: 700;
      cursor: pointer;
      font: inherit;
    }

    .cc-adn-button:hover {
      background: var(--cc-adn-red-dark);
      border-color: var(--cc-adn-red-dark);
    }

    .cc-adn-button--secondary {
      background: #fff;
      color: var(--cc-adn-red);
    }

    .cc-adn-button--secondary:hover {
      background: var(--cc-adn-soft);
      color: var(--cc-adn-red-dark);
    }

    @media (max-width: 900px) {
      body {
        background: #fff;
      }

      .cc-adn-checksheet {
        margin: 0;
        border-radius: 0;
      }

      .cc-adn-grid--two,
      .cc-adn-summary,
      .cc-adn-card-grid {
        grid-template-columns: 1fr;
      }

      .cc-adn-section__heading {
        display: block;
      }
    }

    @media print {
      @page {
        size: landscape;
        margin: 0.35in;
      }

      html,
      body {
        width: 100%;
        background: #fff;
      }

      body {
        font-size: 9.5px;
        line-height: 1.25;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
      }

      .cc-adn-checksheet {
        max-width: none;
        width: 100%;
        padding: 0;
        margin: 0;
        border-radius: 0;
      }

      .cc-adn-actions {
        display: none !important;
      }

      .cc-adn-checksheet__header,
      .cc-adn-fieldset,
      .cc-adn-section {
        box-shadow: none;
        border-radius: 6px;
        margin: 0 0 0.12in;
        padding: 0.12in;
        break-inside: avoid;
        page-break-inside: avoid;
      }

      .cc-adn-checksheet__header {
        border-top-width: 4px;
      }

      .cc-adn-checksheet__header h1 {
        font-size: 18px;
        margin: 0.03in 0;
      }

      .cc-adn-checksheet__header p,
      .cc-adn-alert,
      .cc-adn-section__heading p,
      .cc-adn-note-small,
      .cc-adn-card p {
        margin-top: 0.03in;
        margin-bottom: 0.03in;
      }

      .cc-adn-alert {
        padding: 0.08in 0.1in;
        margin: 0 0 0.12in;
        border-radius: 4px;
      }

      .cc-adn-grid--two {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0.08in;
      }

      .cc-adn-field label,
      .cc-adn-notes label {
        margin-bottom: 0.02in;
      }

      .cc-adn-field input,
      .cc-adn-notes textarea,
      .cc-adn-table input,
      .cc-adn-table select {
        border-radius: 3px;
        padding: 0.03in;
        min-height: 0;
        font-size: 9px;
      }

      .cc-adn-section__heading {
        display: flex;
        align-items: baseline;
        padding-bottom: 0.04in;
        margin-bottom: 0.06in;
      }

      .cc-adn-section h2 {
        font-size: 13px;
      }

      .cc-adn-table-wrap {
        overflow: visible;
        border-radius: 4px;
      }

      .cc-adn-table {
        min-width: 0;
        width: 100%;
        table-layout: fixed;
        font-size: 8.2px;
      }

      .cc-adn-table caption {
        padding: 0.04in;
      }

      .cc-adn-table th,
      .cc-adn-table td {
        padding: 0.025in;
        line-height: 1.15;
        word-break: normal;
        overflow-wrap: anywhere;
      }

      .cc-adn-table th:first-child,
      .cc-adn-table th:nth-child(2),
      .cc-adn-table td:first-child,
      .cc-adn-table td:nth-child(2) {
        width: 0.24in;
      }

      .cc-adn-table th:nth-child(4),
      .cc-adn-table td:nth-child(4) {
        width: 1.25in;
      }

      .cc-adn-table th:nth-child(5),
      .cc-adn-table td:nth-child(5) {
        width: 1.15in;
      }

      .cc-adn-table th:nth-child(6),
      .cc-adn-table td:nth-child(6),
      .cc-adn-table th:nth-child(9),
      .cc-adn-table td:nth-child(9),
      .cc-adn-table th:nth-child(10),
      .cc-adn-table td:nth-child(10),
      .cc-adn-table th:nth-child(11),
      .cc-adn-table td:nth-child(11) {
        width: 0.55in;
      }

      .cc-adn-table th:nth-child(8),
      .cc-adn-table td:nth-child(8) {
        width: 0.65in;
      }

      .cc-adn-table input[type="checkbox"] {
        width: 0.11in;
        height: 0.11in;
      }

      .cc-adn-points,
      .cc-adn-grade-points {
        min-width: 0;
      }

      .cc-adn-notes {
        margin-top: 0.06in;
      }

      .cc-adn-notes textarea {
        height: 0.34in;
        resize: none;
      }

      .cc-adn-summary {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0.05in;
        margin-top: 0.06in;
      }

      .cc-adn-summary p {
        padding: 0.04in;
        border-radius: 4px;
      }

      .cc-adn-card-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0.06in;
      }

      .cc-adn-card {
        padding: 0.06in;
        border-radius: 5px;
      }

      .cc-adn-card h3 {
        font-size: 10px;
        margin: 0 0 0.03in;
      }
    }
  


    /* =========================================================
       MOBILE / SMALL SCREEN ACCESSIBLE TABLE LAYOUT
       Keeps all table data visible by turning each row into a card.
       Print layout remains handled by the print stylesheet.
       ========================================================= */
    @media screen and (max-width: 760px) {
      body {
        background: #fff;
      }

      .cc-adn-checksheet {
        margin: 0;
        padding: 0.75rem;
        border-radius: 0;
      }

      .cc-adn-checksheet__header {
        padding: 1rem;
      }

      .cc-adn-checksheet__header h1 {
        font-size: 1.65rem;
      }

      .cc-adn-fieldset,
      .cc-adn-section {
        padding: 0.85rem;
        border-radius: 12px;
      }

      .cc-adn-grid--two,
      .cc-adn-summary,
      .cc-adn-card-grid {
        grid-template-columns: 1fr;
      }

      .cc-adn-section__heading {
        display: block;
      }

      .cc-adn-section__heading p {
        margin-bottom: 0;
      }

      .cc-adn-table-wrap {
        overflow: visible;
        border: 0;
        border-radius: 0;
      }

      .cc-adn-table {
        min-width: 0;
        width: 100%;
        border: 0;
      }

      .cc-adn-table caption {
        display: block;
        border: 1px solid var(--cc-adn-border);
        border-radius: 10px 10px 0 0;
      }

      .cc-adn-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .cc-adn-table tbody,
      .cc-adn-table tr,
      .cc-adn-table td {
        display: block;
        width: 100%;
      }

      .cc-adn-table tr[data-course-row] {
        border: 1px solid var(--cc-adn-border);
        border-radius: 12px;
        padding: 0.75rem;
        margin: 0.75rem 0;
        background: #fff;
      }

      .cc-adn-table td {
        display: grid;
        grid-template-columns: minmax(8.5rem, 42%) minmax(0, 1fr);
        gap: 0.75rem;
        align-items: center;
        border: 0;
        border-bottom: 1px solid #ececec;
        padding: 0.65rem 0;
        text-align: left !important;
      }

      .cc-adn-table td:last-child {
        border-bottom: 0;
      }

      .cc-adn-table td::before {
        content: attr(data-label);
        font-weight: 700;
        color: var(--cc-adn-text);
      }

      .cc-adn-table td:first-child,
      .cc-adn-table td:nth-child(2) {
        width: 100%;
        text-align: left;
      }

      .cc-adn-table input[type="checkbox"] {
        justify-self: start;
        width: 1.3rem;
        height: 1.3rem;
      }

      .cc-adn-table input,
      .cc-adn-table select {
        min-height: 44px;
      }

      .cc-adn-points,
      .cc-adn-grade-points {
        min-width: 0;
      }

      .cc-adn-summary p {
        padding: 0.75rem;
      }

      .cc-adn-actions {
        position: sticky;
        bottom: 0;
        background: #fff;
        padding: 0.75rem 0 0;
        border-top: 1px solid var(--cc-adn-border);
      }

      .cc-adn-button {
        width: 100%;
        justify-content: center;
      }
    }

    @media screen and (max-width: 420px) {
      .cc-adn-table td {
        grid-template-columns: 1fr;
        gap: 0.35rem;
      }

      .cc-adn-table td::before {
        font-size: 0.92rem;
      }
    }
  


    .cc-adn-glossary {
      border: 1px solid var(--cc-adn-border);
      border-left: 5px solid var(--cc-adn-red);
      border-radius: 12px;
      padding: 1rem;
      margin: 1rem 0;
      background: #fff;
      box-shadow: var(--cc-adn-shadow);
    }

    .cc-adn-glossary h2 {
      color: var(--cc-adn-red);
      font-size: 1.2rem;
      margin: 0 0 0.75rem;
    }

    .cc-adn-glossary dl {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0.75rem;
      margin: 0;
    }

    .cc-adn-glossary dl > div {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 0.5rem;
      align-items: start;
      background: var(--cc-adn-soft);
      border: 1px solid var(--cc-adn-border);
      border-radius: 10px;
      padding: 0.75rem;
    }

    .cc-adn-glossary dt {
      font-weight: 800;
      color: var(--cc-adn-red);
      min-width: 2rem;
    }

    .cc-adn-glossary dd {
      margin: 0;
    }

    @media screen and (max-width: 760px) {
      .cc-adn-glossary dl {
        grid-template-columns: 1fr;
      }

      .cc-adn-table tr[data-course-row]:nth-child(odd) {
        background: #ffffff;
      }

      .cc-adn-table tr[data-course-row]:nth-child(even) {
        background: #f8f5f6;
      }

      .cc-adn-table tr[data-course-row] {
        border-left: 5px solid var(--cc-adn-red);
      }

      .cc-adn-table tr[data-course-row]:nth-child(even) td {
        border-bottom-color: #ded6da;
      }
    }

    @media print {
      .cc-adn-glossary {
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 4pt 5pt !important;
        margin: 0 0 5pt !important;
        border: 1px solid #999 !important;
        border-left: 3pt solid #93002b !important;
        background: #fff !important;
      }

      .cc-adn-glossary h2 {
        font-size: 9pt !important;
        margin: 0 0 3pt !important;
      }

      .cc-adn-glossary dl {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 3pt !important;
      }

      .cc-adn-glossary dl > div {
        padding: 3pt !important;
        border: 1px solid #999 !important;
        border-radius: 0 !important;
        background: #fff !important;
      }

      .cc-adn-glossary dt,
      .cc-adn-glossary dd {
        font-size: 7.5pt !important;
      }
    }
  


    /* =========================================================
       PRINT COMPACT OVERRIDE
       This stylesheet is intentionally placed last.
       It is designed to print the worksheet in fewer pages.
       ========================================================= */
    @media print {
      @page {
        size: letter portrait;
        margin: 0.25in;
      }

      html,
      body {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
        color: #000 !important;
        font-size: 8.5pt !important;
        line-height: 1.15 !important;
      }

      * {
        box-shadow: none !important;
        text-shadow: none !important;
      }

      .cc-adn-checksheet {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
      }

      .cc-adn-checksheet__header {
        border-top: 3pt solid #93002b !important;
        border-radius: 0 !important;
        padding: 6pt 8pt !important;
        margin: 0 0 5pt !important;
        background: #fff !important;
      }

      .cc-adn-checksheet__header h1 {
        font-size: 15pt !important;
        line-height: 1.05 !important;
        margin: 1pt 0 2pt !important;
      }

      .cc-adn-checksheet__header p {
        margin: 1pt 0 !important;
      }

      .cc-adn-alert {
        padding: 5pt 6pt !important;
        margin: 0 0 5pt !important;
        border-radius: 0 !important;
        border-left: 3pt solid #93002b !important;
        background: #fff !important;
        font-size: 7.8pt !important;
      }

      .cc-adn-fieldset,
      .cc-adn-section {
        border: 1px solid #999 !important;
        border-radius: 0 !important;
        padding: 5pt !important;
        margin: 0 0 5pt !important;
        background: #fff !important;
        break-inside: auto !important;
        page-break-inside: auto !important;
      }

      .cc-adn-fieldset legend {
        font-size: 9pt !important;
        padding: 0 3pt !important;
      }

      .cc-adn-grid--two {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 4pt !important;
      }

      .cc-adn-field label,
      .cc-adn-notes label {
        font-size: 7.5pt !important;
        margin: 0 0 1pt !important;
      }

      .cc-adn-field input,
      .cc-adn-notes textarea,
      .cc-adn-table input,
      .cc-adn-table select {
        font-size: 7.5pt !important;
        line-height: 1 !important;
        padding: 1pt 2pt !important;
        border: 1px solid #999 !important;
        border-radius: 0 !important;
        min-height: 0 !important;
        height: 14pt !important;
        background: #fff !important;
      }

      .cc-adn-section__heading {
        display: flex !important;
        justify-content: space-between !important;
        gap: 5pt !important;
        align-items: baseline !important;
        border-bottom: 1px solid #999 !important;
        padding: 0 0 3pt !important;
        margin: 0 0 4pt !important;
      }

      .cc-adn-section h2 {
        font-size: 11pt !important;
        line-height: 1.1 !important;
        margin: 0 !important;
      }

      .cc-adn-section__heading p {
        font-size: 8pt !important;
        margin: 0 !important;
      }

      .cc-adn-table-wrap {
        overflow: visible !important;
        border: 0 !important;
        border-radius: 0 !important;
      }

      .cc-adn-table {
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
        border-collapse: collapse !important;
        font-size: 7pt !important;
      }

      .cc-adn-table caption {
        padding: 2pt 3pt !important;
        font-size: 7.5pt !important;
        background: #f2f2f2 !important;
        border: 1px solid #999 !important;
        border-bottom: 0 !important;
      }

      .cc-adn-table th,
      .cc-adn-table td {
        border: 1px solid #999 !important;
        padding: 2pt !important;
        line-height: 1.05 !important;
        vertical-align: middle !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
      }

      .cc-adn-table th {
        background: #f2f2f2 !important;
        font-size: 6.8pt !important;
      }

      /* Hide screen-only helper columns in print to prevent horizontal scroll and reduce page count. */
      .cc-adn-table th:nth-child(6),
      .cc-adn-table td:nth-child(6),
      .cc-adn-table th:nth-child(9),
      .cc-adn-table td:nth-child(9) {
        display: none !important;
      }

      .cc-adn-table th:nth-child(1),
      .cc-adn-table td:nth-child(1),
      .cc-adn-table th:nth-child(2),
      .cc-adn-table td:nth-child(2) {
        width: 0.25in !important;
        text-align: center !important;
      }

      .cc-adn-table th:nth-child(4),
      .cc-adn-table td:nth-child(4) {
        width: 1.35in !important;
      }

      .cc-adn-table th:nth-child(5),
      .cc-adn-table td:nth-child(5) {
        width: 1.15in !important;
      }

      .cc-adn-table th:nth-child(7),
      .cc-adn-table td:nth-child(7) {
        width: 1.25in !important;
      }

      .cc-adn-table th:nth-child(8),
      .cc-adn-table td:nth-child(8) {
        width: 0.55in !important;
      }

      .cc-adn-table th:nth-child(10),
      .cc-adn-table td:nth-child(10) {
        width: 0.45in !important;
      }

      .cc-adn-table th:nth-child(11),
      .cc-adn-table td:nth-child(11) {
        width: 0.65in !important;
      }

      .cc-adn-table input[type="checkbox"] {
        width: 8pt !important;
        height: 8pt !important;
        padding: 0 !important;
      }

      .cc-adn-table select {
        appearance: none !important;
        -webkit-appearance: none !important;
        background-image: none !important;
      }

      .cc-adn-points,
      .cc-adn-grade-points {
        min-width: 0 !important;
        font-size: 7pt !important;
      }

      .cc-adn-note-small {
        display: none !important;
      }

      .cc-adn-notes {
        margin-top: 4pt !important;
      }

      .cc-adn-notes textarea {
        height: 24pt !important;
        resize: none !important;
      }

      .cc-adn-summary {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 3pt !important;
        margin-top: 4pt !important;
      }

      .cc-adn-summary p {
        padding: 3pt !important;
        border: 1px solid #999 !important;
        border-radius: 0 !important;
        background: #fff !important;
        font-size: 7.8pt !important;
        margin: 0 !important;
      }

      .cc-adn-card-grid {
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        gap: 3pt !important;
      }

      .cc-adn-card {
        border: 1px solid #999 !important;
        border-radius: 0 !important;
        padding: 3pt !important;
        background: #fff !important;
      }

      .cc-adn-card h3 {
        font-size: 7.8pt !important;
        line-height: 1.05 !important;
        margin: 0 0 2pt !important;
      }

      .cc-adn-card p {
        font-size: 7pt !important;
        line-height: 1.05 !important;
        margin: 0 0 1pt !important;
      }

      .cc-adn-actions {
        display: none !important;
      }

      a[href]::after {
        content: "" !important;
      }
    }
  


/* =========================================================
   FINAL MODERN CAMPUS OVERRIDES
   Place at the bottom of /_resources/css/adn-checksheet.css
   ========================================================= */

/* Desktop/page integration: let the component use the full content area. */
/*.cc-adn-checksheet {
  width: 100% !important;
  max-width: none !important;
}
/*
/* Do not let the CMS hide native form controls. */
.cc-adn-checksheet {
  --cc-adn-select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20'%3E%3Cpath fill='%2393002b' d='M5.5 7.5 10 12l4.5-4.5 1.1 1.1L10 14.2 4.4 8.6z'/%3E%3C/svg%3E");
}

.cc-adn-checksheet input,
.cc-adn-checksheet textarea,
.cc-adn-checksheet select {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  font: inherit !important;
  color: var(--cc-adn-text) !important;
  background-color: #fff !important;
}

.cc-adn-checksheet select,
.cc-adn-checksheet select.cc-adn-grade {
  display: block !important;
  width: 100% !important;
  min-width: 100px;
  min-height: 44px !important;
  padding: 0.5rem 2.35rem 0.5rem 0.65rem !important;
  border: 1px solid var(--cc-adn-border) !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  background-image: var(--cc-adn-select-arrow) !important;
  background-repeat: no-repeat !important;
  background-position: right 0.65rem center !important;
  background-size: 1rem 1rem !important;
  color: var(--cc-adn-text) !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

.cc-adn-checksheet select:hover,
.cc-adn-checksheet select.cc-adn-grade:hover {
  border-color: var(--cc-adn-red) !important;
}

.cc-adn-checksheet select:focus,
.cc-adn-checksheet select.cc-adn-grade:focus {
  outline: 3px solid rgba(147, 0, 43, 0.35) !important;
  outline-offset: 2px !important;
  border-color: var(--cc-adn-red) !important;
}

.cc-adn-checksheet input[type="checkbox"] {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  width: 1.2rem !important;
  height: 1.2rem !important;
  min-width: 1.2rem !important;
  min-height: 1.2rem !important;
  padding: 0 !important;
  margin: 0 auto !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  -moz-appearance: checkbox !important;
}

.cc-adn-checksheet input[type="checkbox"]:focus {
  outline: 3px solid rgba(147, 0, 43, 0.35) !important;
  outline-offset: 2px !important;
}

.cc-adn-pdf-help {
  margin: -0.5rem 0 1.25rem;
  color: var(--cc-adn-muted);
  font-size: 0.95rem;
}

/* Start stacked/card table layout before horizontal scrolling appears. */
@media screen and (max-width: 1062px) {
  .cc-adn-checksheet {
    margin: 0;
    padding: 0.75rem;
    border-radius: 0;
  }

  .cc-adn-checksheet__header {
    padding: 1rem;
  }

  .cc-adn-checksheet__header h1 {
    font-size: 1.65rem;
  }

  .cc-adn-fieldset,
  .cc-adn-section {
    padding: 0.85rem;
    border-radius: 12px;
  }

  .cc-adn-grid--two,
  .cc-adn-summary,
  .cc-adn-card-grid,
  .cc-adn-glossary dl {
    grid-template-columns: 1fr;
  }

  .cc-adn-section__heading {
    display: block;
  }

  .cc-adn-section__heading p {
    margin-bottom: 0;
  }

  .cc-adn-table-wrap {
    overflow: visible;
    border: 0;
    border-radius: 0;
  }

  .cc-adn-table {
    min-width: 0;
    width: 100%;
    border: 0;
  }

  .cc-adn-table caption {
    display: block;
    border: 1px solid var(--cc-adn-border);
    border-radius: 10px 10px 0 0;
  }

  .cc-adn-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .cc-adn-table tbody {
    display: block;
    width: 100%;
  }

  .cc-adn-table tr[data-course-row] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 0.75rem;
    row-gap: 0;
    border: 1px solid var(--cc-adn-border);
    border-left: 5px solid var(--cc-adn-red);
    border-radius: 12px;
    padding: 0.75rem;
    margin: 0.75rem 0;
  }

  .cc-adn-table tr[data-course-row]:nth-child(odd) {
    background: #ffffff;
  }

  .cc-adn-table tr[data-course-row]:nth-child(even) {
    background: #f8f5f6;
  }

  .cc-adn-table td {
    display: grid;
    grid-template-columns: minmax(8.5rem, 42%) minmax(0, 1fr);
    gap: 0.75rem;
    align-items: center;
    width: 100% !important;
    border: 0;
    border-bottom: 1px solid #ececec;
    padding: 0.65rem 0;
    text-align: left !important;
  }

  .cc-adn-table td:nth-child(1),
  .cc-adn-table td:nth-child(2) {
    grid-column: auto;
    grid-template-columns: auto auto;
    justify-content: start;
    column-gap: 0.65rem;
    min-width: 0;
  }

  .cc-adn-table td:nth-child(n+4) {
    grid-column: 1 / -1;
  }

  .cc-adn-table td:last-child {
    border-bottom: 0;
  }

  .cc-adn-table td::before {
    content: attr(data-label);
    font-weight: 700;
    color: var(--cc-adn-text);
  }

  .cc-adn-table input[type="checkbox"] {
    margin: 0 !important;
    justify-self: start;
    align-self: center;
    width: 1.3rem !important;
    height: 1.3rem !important;
  }

  .cc-adn-table input,
  .cc-adn-table select {
    min-height: 44px;
  }

  .cc-adn-checksheet select,
  .cc-adn-checksheet select.cc-adn-grade {
    min-height: 48px !important;
  }

  .cc-adn-actions {
    position: sticky;
    bottom: 0;
    background: #fff;
    padding: 0.75rem 0 0;
    border-top: 1px solid var(--cc-adn-border);
  }

  .cc-adn-button {
    width: 100%;
    justify-content: center;
  }

  .cc-adn-pdf-help {
    margin: 0 0 1rem;
    font-size: 0.9rem;
  }
}

/* Very narrow screens: keep N and IP side-by-side, stack the rest. */
@media screen and (max-width: 350px) {
  .cc-adn-checksheet {
    padding: 0.5rem;
  }

  .cc-adn-table tr[data-course-row] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 0.5rem;
    padding: 0.65rem;
  }

  .cc-adn-table td {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }

  .cc-adn-table td:nth-child(1),
  .cc-adn-table td:nth-child(2) {
    grid-template-columns: auto auto;
    column-gap: 0.45rem;
  }

  .cc-adn-table td:nth-child(n+4) {
    grid-column: 1 / -1;
  }

  .cc-adn-table td::before {
    font-size: 0.92rem;
  }
}

@media print {
  .cc-adn-pdf-help {
    display: none !important;
  }

  .cc-adn-checksheet select,
  .cc-adn-checksheet select.cc-adn-grade {
    background-image: none !important;
    min-height: 0 !important;
    height: 14pt !important;
    padding: 1pt 2pt !important;
    border-radius: 0 !important;
    font-size: 7.5pt !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
  }

  .cc-adn-checksheet input[type="checkbox"] {
    width: 8pt !important;
    height: 8pt !important;
    min-width: 8pt !important;
    min-height: 8pt !important;
    margin: 0 auto !important;
  }
}


/* Biological Sciences status messages may be longer after course-level validation. */
.cc-adn-summary .cc-adn-status {
  overflow-wrap: anywhere;
}


/* =========================
   Below-C course validation
   ========================= */

.cc-adn-table tr.cc-adn-course-row--below-c {
  background: #fff5f5 !important;
  outline: 3px solid #b42318;
  outline-offset: -3px;
}

.cc-adn-table tr.cc-adn-course-row--below-c td {
  border-top-color: #f3b3ad;
}

.cc-adn-course-warning {
  display: table-cell;
  background: #fff1f0;
  color: #7a1c14;
  font-weight: 700;
  border-top: 1px solid #b42318 !important;
  padding: 0.65rem !important;
}

.cc-adn-course-row--below-c .cc-adn-grade {
  border-color: #b42318 !important;
  box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.18);
}

@media screen and (max-width: 1062px) {
  .cc-adn-table tr.cc-adn-course-row--below-c {
    border-color: #b42318;
    border-left-color: #b42318;
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.18);
    outline: none;
  }

  .cc-adn-course-warning {
    display: block;
    grid-column: 1 / -1;
    margin-top: 0.65rem;
    padding: 0.75rem !important;
    border: 1px solid #b42318 !important;
    border-radius: 10px;
    background: #fff1f0;
  }

  .cc-adn-table tr.cc-adn-course-row--below-c:nth-child(even) {
    background: #fff1f0;
  }
}

@media print {
  .cc-adn-table tr.cc-adn-course-row--below-c {
    outline: 1.5pt solid #000 !important;
    outline-offset: -1.5pt !important;
    background: #fff !important;
  }

  .cc-adn-course-warning {
    display: table-cell !important;
    background: #fff !important;
    color: #000 !important;
    font-size: 7pt !important;
    padding: 2pt !important;
    border: 1px solid #000 !important;
  }
}


/* =========================
   Heading hierarchy update
   ========================= */

.cc-adn-checksheet__eyebrow {
  display: block;
  color: var(--cc-adn-red);
  font-size: clamp(1.8rem, 4vw, 2.55rem);
  line-height: 1.15;
  margin: 0 0 0.25rem;
  font-weight: 800;
}

.cc-adn-checksheet__header h2#cc-adn-title {
  margin: 0.15rem 0 0.35rem;
  color: var(--cc-adn-text);
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  line-height: 1.2;
}

/* Hide any page footer that may be inside this component during print. */
@media print {
  .cc-adn-checksheet footer,
  .cc-adn-checksheet .footer,
  .cc-adn-checksheet [role="contentinfo"] {
    display: none !important;
  }

  .cc-adn-checksheet__eyebrow {
    font-size: 15pt !important;
    line-height: 1.05 !important;
    margin: 0 0 2pt !important;
  }

  .cc-adn-checksheet__header h2#cc-adn-title {
    font-size: 11pt !important;
    margin: 0 0 2pt !important;
  }
}


@media print {
  .cc-adn-checksheet__header h1,
  .cc-adn-checksheet__header h2 {
    page-break-after: avoid;
  }
}


/* =========================
   Logical heading structure
   h1: Counselor Advising Worksheet
   h2: Associate Degree in Nursing (ADN)
   h3: Major worksheet sections
   h4: Program sequence cards
   ========================= */

.cc-adn-checksheet__eyebrow {
  display: block;
  color: var(--cc-adn-red);
  font-size: clamp(1.8rem, 4vw, 2.55rem);
  line-height: 1.15;
  margin: 0 0 0.25rem;
  font-weight: 800;
}

.cc-adn-checksheet__header h2#cc-adn-title {
  margin: 0.15rem 0 0.35rem;
  color: var(--cc-adn-text);
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  line-height: 1.2;
}

.cc-adn-section h3,
.cc-adn-glossary h3 {
  margin: 0;
  color: var(--cc-adn-red);
  font-size: 1.35rem;
}

.cc-adn-glossary h3 {
  font-size: 1.2rem;
  margin: 0 0 0.75rem;
}

.cc-adn-card h4 {
  margin-top: 0;
  color: var(--cc-adn-red);
  font-size: 1.05rem;
}

@media print {
  .cc-adn-checksheet__eyebrow {
    font-size: 15pt !important;
    line-height: 1.05 !important;
    margin: 0 0 2pt !important;
  }

  .cc-adn-checksheet__header h2#cc-adn-title {
    font-size: 11pt !important;
    margin: 0 0 2pt !important;
  }

  .cc-adn-section h3,
  .cc-adn-glossary h3 {
    font-size: 9pt !important;
    margin: 0 0 3pt !important;
  }

  .cc-adn-card h4 {
    font-size: 7.8pt !important;
    line-height: 1.05 !important;
    margin: 0 0 2pt !important;
  }
}


/* =========================================================
   ADN policy and informational content
   Source: 2025-2026 Counselor Advising Worksheet PDF
   ========================================================= */
.cc-adn-policy-intro,
.cc-adn-policy-note,
.cc-adn-subsection {
  border: 1px solid var(--cc-adn-border);
  border-radius: 12px;
  background: #fff;
  padding: 1rem;
  margin: 1rem 0;
}

.cc-adn-policy-intro {
  border-left: 5px solid var(--cc-adn-red);
  background: var(--cc-adn-soft);
}

.cc-adn-policy-intro p,
.cc-adn-policy-note p,
.cc-adn-subsection p {
  margin: 0 0 0.75rem;
}

.cc-adn-policy-intro p:last-child,
.cc-adn-policy-note p:last-child,
.cc-adn-subsection p:last-child {
  margin-bottom: 0;
}

.cc-adn-subsection h3,
.cc-adn-important-notes h3,
.cc-adn-gpa-guide h3 {
  color: var(--cc-adn-red);
  font-size: 1.35rem;
  margin: 0 0 0.75rem;
}

.cc-adn-important-notes ol,
.cc-adn-gpa-guide ol {
  margin: 0;
  padding-left: 1.5rem;
}

.cc-adn-important-notes li,
.cc-adn-gpa-guide li {
  margin-bottom: 0.65rem;
}

.cc-adn-note-link {
  margin: 0.25rem 0 0;
}

.cc-adn-grade-chart {
  width: 100%;
  max-width: 34rem;
  border-collapse: collapse;
  margin-top: 1rem;
}

.cc-adn-grade-chart caption {
  text-align: left;
  font-weight: 700;
  padding: 0.65rem;
  background: var(--cc-adn-soft);
  border: 1px solid var(--cc-adn-border);
  border-bottom: 0;
}

.cc-adn-grade-chart th,
.cc-adn-grade-chart td {
  border: 1px solid var(--cc-adn-border);
  padding: 0.5rem 0.65rem;
  text-align: left;
}

.cc-adn-grade-chart th {
  background: #f3f4f6;
}

@media screen and (max-width: 1062px) {
  .cc-adn-policy-intro,
  .cc-adn-policy-note,
  .cc-adn-subsection {
    padding: 0.85rem;
  }

  .cc-adn-grade-chart {
    max-width: none;
  }
}

@media print {
  .cc-adn-policy-intro,
  .cc-adn-policy-note,
  .cc-adn-subsection,
  .cc-adn-important-notes,
  .cc-adn-gpa-guide {
    box-shadow: none !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #000 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
  }

  .cc-adn-policy-intro,
  .cc-adn-policy-note,
  .cc-adn-subsection {
    padding: 4pt 5pt !important;
    margin: 0 0 5pt !important;
    border: 1px solid #999 !important;
  }

  .cc-adn-policy-intro {
    border-left: 3pt solid #000 !important;
  }

  .cc-adn-policy-intro p,
  .cc-adn-policy-note p,
  .cc-adn-subsection p,
  .cc-adn-important-notes li,
  .cc-adn-gpa-guide li {
    font-size: 7pt !important;
    line-height: 1.12 !important;
    margin-top: 0 !important;
    margin-bottom: 2pt !important;
  }

  .cc-adn-subsection h3,
  .cc-adn-important-notes h3,
  .cc-adn-gpa-guide h3 {
    font-size: 9pt !important;
    margin: 0 0 3pt !important;
  }

  .cc-adn-important-notes ol,
  .cc-adn-gpa-guide ol {
    padding-left: 14pt !important;
    margin: 0 !important;
  }

  .cc-adn-note-link {
    margin: 1pt 0 0 !important;
  }

  .cc-adn-grade-chart {
    width: 3.25in !important;
    max-width: 3.25in !important;
    margin: 3pt 0 0 !important;
    font-size: 7pt !important;
    border-collapse: collapse !important;
  }

  .cc-adn-grade-chart caption,
  .cc-adn-grade-chart th,
  .cc-adn-grade-chart td {
    padding: 2pt 3pt !important;
    border: 1px solid #999 !important;
    background: #fff !important;
  }

  .cc-adn-grade-chart caption {
    font-size: 7pt !important;
  }

  .cc-adn-grade-chart tr {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
}


/* =========================================================
   PRINT PAGE MARGINS
   Provides a protected top/bottom area on every printed page.
   ========================================================= */
@media print {
  @page {
    size: letter portrait;
    margin: 0.55in 0.30in 0.60in;
  }

  html,
  body {
    margin: 0 !important;
    padding: 0 !important;
  }

  .cc-adn-checksheet {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Prevent headings and short policy blocks from being stranded
     against a page boundary where possible. */
  .cc-adn-section__heading,
  .cc-adn-subsection h3,
  .cc-adn-important-notes h3,
  .cc-adn-gpa-guide h3,
  .cc-adn-glossary h3 {
    break-after: avoid-page !important;
    page-break-after: avoid !important;
  }

  /* Keep individual notes/table rows together, while allowing
     long sections themselves to flow naturally across pages. */
  .cc-adn-important-notes li,
  .cc-adn-gpa-guide li,
  .cc-adn-grade-chart tr,
  .cc-adn-table tr[data-course-row] {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }
}

/* v15: Completed status, policy guidance and print refinements */
.cc-adn-science-equivalency { margin: .75rem 0 0; }
.cc-adn-table td:nth-child(3), .cc-adn-table th:nth-child(3) {
  text-align: center; width: 3.2rem;
}
.cc-adn-glossary dl { grid-template-columns: repeat(3,minmax(0,1fr)); }
@media screen and (max-width:1062px) {
  .cc-adn-glossary dl { grid-template-columns: 1fr; }
}
@media screen and (max-width:760px) {
  .cc-adn-table td:nth-child(3) { width: 100%; text-align:left; }
  .cc-adn-table td:nth-child(3) input[type="checkbox"] { justify-self:start; }
}
@media print {
  @page { size:letter portrait; margin:0.55in 0.30in 0.60in; }
  .cc-adn-glossary dl { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .cc-adn-table th:nth-child(3), .cc-adn-table td:nth-child(3) {
    display:table-cell !important; width:.25in !important; text-align:center !important;
  }
  .cc-adn-science-equivalency { margin:3pt 0 0 !important; }
  .cc-adn-table tr[data-course-row] { break-inside:avoid-page !important; }
}
