    :root {
      --gpa-primary: #f56423;
    }

    .gpa-card {
      width: 100% !important;
      border: 1px solid rgba(245, 100, 35, 0.15);
      border-radius: 18px;
      box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
      backdrop-filter: blur(6px);
    }

    .gpa-table {
      width: 100%;
      border-collapse: collapse;
      color: #004853;
    }

    .gpa-table th,
    .gpa-table td {
      padding: 0.85rem 0.75rem;
      text-align: left;
      border-bottom: 1px solid rgba(15, 23, 42, 0.08);
      vertical-align: middle;
    }

    .gpa-table tr:first-child th {
      background: transparent !important;
      background-color: #ffd7c6 !important;
      border-bottom: 1px solid rgba(245, 100, 35, 0.45);
      font: bold;
      font-size: 15px;
      text-transform: uppercase;
      letter-spacing: 0.02em;
    }
    
    
    
    .gpa-table tbody tr:nth-child(n+12):nth-child(even) td {
        background-color: #bbddf6 !important;
    }
    
    .gpa-table tbody tr:nth-child(n+12):nth-child(odd) td {
        background-color: #eef6fd !important;
    }




    /* Alternating row colors in two orange tones (skip header row) */
    .gpa-table tbody tr:nth-child(n+2):nth-child(odd) {
      background: rgba(245, 100, 35, 0.06) !important;
    }

    .gpa-table tbody tr:nth-child(n+2):nth-child(even) {
      background: rgba(245, 100, 35, 0.12) !important;
    }

    .gpa-table th strong {
      color: var(--gpa-primary) !important;
    }

    .gpa-table select {
      width: 100%;
      padding: 0.55rem 0.6rem;
      border: 1px solid rgba(15, 23, 42, 0.15);
      border-radius: 10px;
      background: #fff;
      color: #004853;
      font-weight: 600;
      transition: border-color 0.2s ease, box-shadow 0.2s ease;
      appearance: auto;
      -webkit-appearance: auto;
      -moz-appearance: auto;
      cursor: pointer;
    }

    .gpa-table select:focus {
      outline: none;
      border-color: var(--gpa-primary);
      box-shadow: 0 0 0 3px rgba(245, 100, 35, 0.18);
    }

    .gpa-table label {
      display: inline-block;
      line-height: 1.4;
    }

    .gpa-table .section-heading {
      color: #235c63;
      font-size: 15px;
      font: bold !important;
    }

    .gpa-table td:last-child {
      font-weight: 700;
      color: #004853;
    }

    #message,
    #message0 {
      color: #004853;
      line-height: 1.5;
    }

    /* Force old inline blues to the mandated text color */
    .gpa-card [style*="#0000ff"],
    .gpa-card [style*="rgb(0, 0, 255)"] {
      color: #004853 !important;
    }

    .gpa-card a {
      color: #004853 !important;
      text-decoration: none;
      font-weight: 700;
    }

    .gpa-card a:hover {
      text-decoration: underline;
    }