/* ==========================================================================
   THEME ENGINE - light / dark / system
   --------------------------------------------------------------------------
   Dark is the original design and is untouched. Everything below only
   applies when <html data-theme="light"> is set by theme.js.

   The hero keeps its dark green-flow treatment in both modes on purpose:
   it is the signature of the page, and a dark hero on a light page is a
   deliberate, common pattern. All hero text is pinned to light values.
   ========================================================================== */

:root {
  color-scheme: dark;
}

html[data-theme="light"] {
  color-scheme: light;

  /* core tokens */
  --bg: #f6f6f0;
  --text: #12161a;
  --muted: #5a635e;
  --nav-text: #12161a;
  --pill-dark: #eef0e8;
  --sign-in-text: #3f4843;
  --nav-shadow: 0 4px 14px rgba(10, 14, 12, 0.08);
  --trust-bg: #ffffff;
  --trust-border: rgba(10, 14, 12, 0.18);
  --trust-text: #3f4843;

  /* accents: same hues, darkened where they carry text on white */
  --accent-gold: #4a7a00;
  --accent-lime: #4a7a00;
  --accent-slate: #2b6480;
  --accent-cyan: #2b6480;
  --accent-jade: #0b6b45;
  --accent-emerald: #0b6b45;
  --accent-bone: #12161a;

  --glass-bg: rgba(255, 255, 255, 0.86);
  --glass-border: rgba(10, 14, 12, 0.12);
  --glass-glow: 0 10px 40px rgba(10, 14, 12, 0.10);
}

/* ---------- page background: light version of the green flow ---------- */
html[data-theme="light"] .bg-gradient {
  background: linear-gradient(40deg, #eef2e6 0%, #f7f8f2 48%, #e9efe2 100%);
}

html[data-theme="light"] .bg-blob {
  opacity: 0.5;
  filter: blur(72px) saturate(0.8);
}

html[data-theme="light"] body {
  background-color: var(--bg);
  color: var(--text);
}

/* ---------- header ---------- */
html[data-theme="light"] .futuristic-header {
  background: rgba(255, 255, 255, 0.82);
  border-bottom: 1px solid rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .brand-logo-wrap {
  background: #ffffff;
}

html[data-theme="light"] .brand-name {
  color: #12161a;
}

html[data-theme="light"] .brand-sub {
  color: #5a635e;
}

html[data-theme="light"] .futuristic-nav {
  background: rgba(240, 242, 235, 0.9);
  border: 1px solid rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .futuristic-nav-link {
  color: #3f4843;
}

html[data-theme="light"] .futuristic-nav-link:hover {
  background: rgba(10, 14, 12, 0.06);
  color: #12161a;
}

html[data-theme="light"] .futuristic-nav-link.active {
  color: #12161a;
}

html[data-theme="light"] .pill-btn.frosted-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.14);
  color: #12161a;
}

html[data-theme="light"] .pill-btn.frosted-pill:hover {
  background: #f0f2ea;
}

html[data-theme="light"] .burger-btn {
  background: rgba(10, 14, 12, 0.06);
}

html[data-theme="light"] .burger-btn:hover {
  background: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .burger-bar {
  background-color: #12161a;
}

html[data-theme="light"] .mobile-overlay {
  background: rgba(10, 14, 12, 0.35);
}

html[data-theme="light"] .mobile-sheet {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.1);
}

html[data-theme="light"] .sheet-link {
  background: rgba(10, 14, 12, 0.04);
  color: #12161a;
}

html[data-theme="light"] .sheet-link:hover {
  background: rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .mobile-sheet #mobileCloseBtn {
  color: #12161a !important;
}

/* ---------- section headings ---------- */
html[data-theme="light"] .section-title {
  color: #12161a;
}

html[data-theme="light"] .section-title span {
  background: linear-gradient(135deg, #12161a 10%, #4a7a00 60%, #2f5c00 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

html[data-theme="light"] .section-desc {
  color: #4b544f;
}

html[data-theme="light"] .section-eyebrow {
  background: rgba(10, 14, 12, 0.05);
  border-color: rgba(10, 14, 12, 0.12);
  color: #3f4843;
}

/* ---------- cards & surfaces ---------- */
html[data-theme="light"] .glass-card,
html[data-theme="light"] .pricing-card,
html[data-theme="light"] .roster-card,
html[data-theme="light"] .record-band,
html[data-theme="light"] .inst-logo-badge,
html[data-theme="light"] .hero-meta-card,
html[data-theme="light"] .countdown-strip,
html[data-theme="light"] .cd-box,
html[data-theme="light"] .cyber-pill,
html[data-theme="light"] .kicker-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 6px 24px rgba(10, 14, 12, 0.05);
}

html[data-theme="light"] .card-title,
html[data-theme="light"] .roster-card__name,
html[data-theme="light"] .record-band__title {
  color: #12161a;
}

html[data-theme="light"] .card-desc,
html[data-theme="light"] .roster-card__meta {
  color: #4b544f;
}

html[data-theme="light"] .card-num {
  color: #4a7a00;
}

html[data-theme="light"] .jstep-icon,
html[data-theme="light"] .journey-icon,
html[data-theme="light"] .date-badge-box,
html[data-theme="light"] .resource-box-icon,
html[data-theme="light"] .contact-card-icon,
html[data-theme="light"] .faq-icon-toggle,
html[data-theme="light"] .hero-meta-icon {
  background: rgba(10, 14, 12, 0.05);
  color: #12161a;
}

html[data-theme="light"] .past-speaker-row,
html[data-theme="light"] .roster__pause {
  background: rgba(10, 14, 12, 0.03);
}

html[data-theme="light"] .record-caption {
  background: rgba(255, 255, 255, 0.92);
  color: #12161a;
}

/* ---------- open scholarly data strip ---------- */
html[data-theme="light"] .data-stack::before {
  background: radial-gradient(
    ellipse 64% 58% at 50% 46%,
    rgba(255, 255, 255, 0.92) 0%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 78%
  );
}

html[data-theme="light"] .data-stack .section-desc {
  color: #4b544f;
  text-shadow: none;
}

html[data-theme="light"] .data-stack__item {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .data-stack__name {
  color: #12161a;
}

/* ---------- forms ---------- */
html[data-theme="light"] .form-input,
html[data-theme="light"] .form-select,
html[data-theme="light"] .form-textarea,
html[data-theme="light"] .newsletter-flex-form input {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.16);
  color: #12161a;
}

html[data-theme="light"] .form-input::placeholder,
html[data-theme="light"] .form-textarea::placeholder {
  color: #8a938d;
}

html[data-theme="light"] .form-label {
  color: #3f4843;
}

/* ---------- modals & drawer ---------- */
html[data-theme="light"] .modal-window {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  box-shadow: 0 24px 70px rgba(10, 14, 12, 0.18);
}

html[data-theme="light"] .modal-title {
  color: #12161a;
}

html[data-theme="light"] .modal-desc {
  color: #4b544f;
}

html[data-theme="light"] .summit-drawer {
  background: #ffffff;
  border-top-color: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .drawer-close {
  background: rgba(10, 14, 12, 0.06);
}

html[data-theme="light"] .drawer-close:hover {
  background: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .drawer-handle {
  background: rgba(10, 14, 12, 0.2);
}

html[data-theme="light"] .drawer-title {
  color: #12161a;
}

/* ---------- footer ---------- */
html[data-theme="light"] .silk-footer {
  background: #eef0e8;
  border-top-color: rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .silk-footer,
html[data-theme="light"] .silk-footer p,
html[data-theme="light"] .silk-footer a {
  color: #3f4843;
}

html[data-theme="light"] .silk-footer h3,
html[data-theme="light"] .silk-footer h4,
html[data-theme="light"] .silk-footer strong {
  color: #12161a;
}

/* ---------- first-visit curtain ---------- */
html[data-theme="light"] .motion-curtain {
  background: #f6f6f0;
}

html[data-theme="light"] .motion-curtain__count,
html[data-theme="light"] .motion-curtain__label {
  color: #12161a;
}

/* ---------- hero stays dark in both modes ---------- */
html[data-theme="light"] .hero-ascii .headline,
html[data-theme="light"] .hero-ascii .subhead strong {
  color: #f3f1e7;
}

html[data-theme="light"] .hero-ascii .subhead {
  color: #c6cec8;
}

html[data-theme="light"] .hero-ascii .hero-facts-line {
  color: #a7b1aa;
}

/* the light surface overrides above must not reach inside the dark hero */
html[data-theme="light"] .hero-ascii .cyber-pill {
  background: rgba(14, 14, 20, 0.82);
  border-color: rgba(255, 255, 255, 0.16);
  color: #d4d4d8;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5), 0 0 16px rgba(143, 179, 201, 0.1);
}

html[data-theme="light"] .hero-ascii .kicker-pill {
  background: rgba(40, 40, 42, 0.7);
  border-color: rgba(255, 255, 255, 0.14);
  color: #d4d4d8;
}

html[data-theme="light"] .hero-ascii .cta-secondary {
  color: #ffffff;
}

html[data-theme="light"] .hero-ascii .hero-event {
  color: #f3f1e7;
}

html[data-theme="light"] .hero-ascii .hero-meta-card {
  background: rgba(24, 24, 30, 0.7);
  border-color: rgba(255, 255, 255, 0.12);
}

html[data-theme="light"] .hero-ascii .hero-meta-icon {
  background: rgba(255, 255, 255, 0.08);
  color: #f3f1e7;
}

html[data-theme="light"] .hero-ascii .date-badge-box {
  background: rgba(255, 255, 255, 0.06);
}

/* ==========================================================================
   THEME SWITCH
   ========================================================================== */
.theme-switch {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  flex: 0 0 auto;
}

.theme-switch__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(243, 241, 231, 0.62);
  font-size: 12.5px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.18s ease, color 0.18s ease;
}

.theme-switch__btn:hover {
  color: #f3f1e7;
  background: rgba(255, 255, 255, 0.1);
}

.theme-switch__btn[aria-pressed="true"] {
  background: #b9f227;
  color: #0a0e0c;
}

.theme-switch__btn:focus-visible {
  outline: 2px solid #b9f227;
  outline-offset: 2px;
}

html[data-theme="light"] .theme-switch {
  background: rgba(10, 14, 12, 0.05);
  border-color: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .theme-switch__btn {
  color: #5a635e;
}

html[data-theme="light"] .theme-switch__btn:hover {
  color: #12161a;
  background: rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .theme-switch__btn[aria-pressed="true"] {
  background: #12161a;
  color: #f6f6f0;
}

/* mobile: the switch sits in the sheet header */
.mobile-sheet .theme-switch {
  margin-left: auto;
}

@media (max-width: 1023px) {
  .header-actions .theme-switch {
    display: none;
  }
}

@media (min-width: 1024px) {
  .mobile-sheet .theme-switch {
    display: none;
  }
}


/* ==========================================================================
   GENERATED LIGHT-MODE OVERRIDES
   Produced by scanning every rule that hardcodes a light text colour or a
   dark surface. Hero, footer, overlays and backdrops are excluded and are
   handled by hand above.
   ========================================================================== */

/* text that was light on dark, now dark on light */
html[data-theme="light"] .sign-in-btn:hover { color: #12161a; }
html[data-theme="light"] .countdown-minimal .countdown-title { color: #4b544f; }
html[data-theme="light"] .countdown-minimal .cd-num { color: #12161a; }
html[data-theme="light"] .countdown-minimal .cd-label { color: #4b544f; }
html[data-theme="light"] .stat-glyph { color: #12161a; }
html[data-theme="light"] .stat-value { color: #12161a; }
html[data-theme="light"] .drawer-title { color: #12161a; }
html[data-theme="light"] .drawer-close { color: #12161a; }
html[data-theme="light"] .card-title { color: #12161a; }
html[data-theme="light"] .card-desc { color: #4b544f; }
html[data-theme="light"] .card-list li { color: #2a312d; }
html[data-theme="light"] .subpage-title { color: #12161a; }
html[data-theme="light"] .subpage-lead { color: #4b544f; }
html[data-theme="light"] .pricing-amount { color: #12161a; }
html[data-theme="light"] .pricing-features li { color: #2a312d; }
html[data-theme="light"] .form-group label { color: #2a312d; }
html[data-theme="light"] .brand-name { color: #12161a; }
html[data-theme="light"] .brand-sub { color: #4b544f; }
html[data-theme="light"] .futuristic-nav-link:hover { color: #12161a; }
html[data-theme="light"] .sheet-link:hover i { color: #12161a; }
html[data-theme="light"] .section-title { color: #12161a; }
html[data-theme="light"] .section-desc { color: #4b544f; }
html[data-theme="light"] .cd-num { color: #12161a; }
html[data-theme="light"] .cd-label { color: #4b544f; }
html[data-theme="light"] .track-icon { color: #12161a; }
html[data-theme="light"] .track-name { color: #12161a; }
html[data-theme="light"] .track-details { color: #4b544f; }
html[data-theme="light"] .track-topics-list li { color: #2a312d; }
html[data-theme="light"] .journey-node h3 { color: #12161a; }
html[data-theme="light"] .journey-node p { color: #4b544f; }
html[data-theme="light"] .date-badge-box strong { color: #12161a; }
html[data-theme="light"] .date-content-box h3 { color: #12161a; }
html[data-theme="light"] .date-content-box p { color: #4b544f; }
html[data-theme="light"] .sdg-info-wrap strong { color: #12161a; }
html[data-theme="light"] .sdg-info-wrap p { color: #4b544f; }
html[data-theme="light"] .past-speaker-text strong { color: #12161a; }
html[data-theme="light"] .past-speaker-text span { color: #4b544f; }
html[data-theme="light"] .resource-box strong { color: #12161a; }
html[data-theme="light"] .resource-box span { color: #4b544f; }
html[data-theme="light"] .faq-trigger { color: #12161a; }
html[data-theme="light"] .faq-icon-toggle { color: #12161a; }
html[data-theme="light"] .faq-drawer { color: #2a312d; }
html[data-theme="light"] .newsletter-copy-side h2 { color: #12161a; }
html[data-theme="light"] .newsletter-copy-side p { color: #4b544f; }
html[data-theme="light"] .contact-card-box h3 { color: #12161a; }
html[data-theme="light"] .contact-card-box p { color: #4b544f; }
html[data-theme="light"] .contact-card-link:hover { color: #12161a; }
html[data-theme="light"] .footer-logo-text strong { color: #12161a; }
html[data-theme="light"] .footer-logo-text span { color: #4b544f; }
html[data-theme="light"] .footer-desc { color: #4b544f; }
html[data-theme="light"] .footer-organizer-badge span { color: #4b544f; }
html[data-theme="light"] .footer-organizer-badge strong { color: #12161a; }
html[data-theme="light"] .footer-scvs-badge { color: #12161a; }
html[data-theme="light"] .footer-scvs-badge strong { color: #12161a; }
html[data-theme="light"] .footer-scvs-badge small { color: #4b544f; }
html[data-theme="light"] .footer-col-title { color: #12161a; }
html[data-theme="light"] .footer-links a, .footer-link-btn { color: #4b544f; }
html[data-theme="light"] .footer-links a:hover, .footer-link-btn:hover { color: #12161a; }
html[data-theme="light"] .social-section-title { color: #2a312d; }
html[data-theme="light"] .social-pill { color: #2a312d; }
html[data-theme="light"] .social-pill:hover { color: #12161a; }
html[data-theme="light"] .footer-legal-links a { color: #4b544f; }
html[data-theme="light"] .footer-legal-links a:hover { color: #12161a; }
html[data-theme="light"] .modal-close { color: #12161a; }
html[data-theme="light"] .modal-title { color: #12161a; }
html[data-theme="light"] .modal-subtitle { color: #4b544f; }
html[data-theme="light"] .field-block label { color: #2a312d; }
html[data-theme="light"] .modal-success h4 { color: #12161a; }
html[data-theme="light"] .modal-success p { color: #4b544f; }
html[data-theme="light"] .social-dock__head strong { color: #12161a; }
html[data-theme="light"] .social-dock__head button { color: #4b544f; }
html[data-theme="light"] .social-dock__head button:hover { color: #12161a; }
html[data-theme="light"] .support-email { color: #12161a; }
html[data-theme="light"] .dock-links a { color: #2a312d; }
html[data-theme="light"] .dock-links a:hover { color: #12161a; }
html[data-theme="light"] .ror-dropdown-item { color: #2a312d; }
html[data-theme="light"] .ror-item-name { color: #12161a; }
html[data-theme="light"] .ror-item-meta { color: #4b544f; }
html[data-theme="light"] .ror-item-id { color: #2b6480; }
html[data-theme="light"] .ror-loading-indicator { color: #4b544f; }
html[data-theme="light"] .ror-no-results { color: #4b544f; }
html[data-theme="light"] .local-currency-badge { color: #2b6480; }
html[data-theme="light"] .dual-tz-badge { color: #4b544f; }
html[data-theme="light"] .calendar-menu-header { color: #4b544f; }
html[data-theme="light"] .calendar-menu-item { color: #2a312d; }
html[data-theme="light"] .calendar-menu-item:hover { color: #12161a; }

/* calendar dropdown — the panel turns white, so the rest of the
   dark-mode token set needs a light counterpart too */
html[data-theme="light"] .calendar-menu-group {
  background: rgba(10, 14, 12, 0.025);
  border-color: rgba(10, 14, 12, 0.08);
}
html[data-theme="light"] .calendar-menu-header {
  border-bottom-color: rgba(10, 14, 12, 0.10);
}
html[data-theme="light"] .calendar-menu-label { color: #5a635e; }
html[data-theme="light"] .calendar-menu-item:hover { background: rgba(74, 122, 0, 0.06); }
html[data-theme="light"] .calendar-menu-ico {
  background: rgba(10, 14, 12, 0.04);
  border-color: rgba(10, 14, 12, 0.10);
}
html[data-theme="light"] .calendar-menu-txt strong { color: #12161a; }
html[data-theme="light"] .calendar-menu-txt small { color: #5a635e; }
html[data-theme="light"] .calendar-menu-go { color: #6b746e; }
html[data-theme="light"] .calendar-menu-item:hover .calendar-menu-go { color: #4a7a00; }
html[data-theme="light"] .calendar-menu-ico [style*="color:#e8e8e8"],
html[data-theme="light"] .calendar-menu-ico [style*="color: #e8e8e8"] {
  color: #4b544f !important;
}

html[data-theme="light"] .stat-small-label { color: #4b544f; }
html[data-theme="light"] .payment-option-title { color: #12161a; }
html[data-theme="light"] .payment-method-badge { color: #2b6480; }
html[data-theme="light"] .payment-method-badge.badge-usd { color: #12161a; }
html[data-theme="light"] .payment-option-sub { color: #4b544f; }
html[data-theme="light"] .gold-crown-icon i { color: #12161a; }
html[data-theme="light"] .gold-title { color: #12161a; }
html[data-theme="light"] .gold-toggle-label { color: #4b544f; }
html[data-theme="light"] .gold-card-desc { color: #2a312d; }
html[data-theme="light"] .gold-perks-list { color: #2a312d; }
html[data-theme="light"] .sv-checkout-sheet { color: #12161a; }
html[data-theme="light"] .sv-checkout-title-wrap h3 { color: #12161a; }
html[data-theme="light"] .sv-checkout-title-wrap p { color: #4b544f; }
html[data-theme="light"] .sv-checkout-close-btn { color: #4b544f; }
html[data-theme="light"] .sv-amount-val { color: #12161a; }
html[data-theme="light"] .sv-amount-sub { color: #0b6b45; }
html[data-theme="light"] .sv-order-badge { color: #2a312d; }
html[data-theme="light"] .sv-apps-label { color: #4b544f; }
html[data-theme="light"] .sv-qr-caption { color: #4b544f; }
html[data-theme="light"] .sv-upi-intent-cta:hover { color: #12161a; }
html[data-theme="light"] .sv-vpa-txt { color: #2a312d; }
html[data-theme="light"] .sv-copy-btn:hover { color: #12161a; }
html[data-theme="light"] .sv-countdown-txt { color: #4b544f; }
html[data-theme="light"] .sv-fallback-title { color: #4b544f; }
html[data-theme="light"] .sv-cards-fallback-btn:hover { color: #12161a; }
html[data-theme="light"] .sv-success-icon-ring { color: #0b6b45; }
html[data-theme="light"] .sv-success-title { color: #12161a; }
html[data-theme="light"] .sv-success-desc { color: #4b544f; }
html[data-theme="light"] .pricing-matrix-header-title { color: #12161a; }
html[data-theme="light"] .pricing-matrix-header-sub { color: #4b544f; }
html[data-theme="light"] .pricing-row-tier-badge { color: #4b544f; }
html[data-theme="light"] .pricing-row-tier-badge.badge-featured { color: #2b6480; }
html[data-theme="light"] .pricing-row-name { color: #12161a; }
html[data-theme="light"] .pricing-row-sub { color: #4b544f; }
html[data-theme="light"] .pricing-row-chip i { color: #0b6b45; }
html[data-theme="light"] .pricing-row-amount { color: #12161a; }
html[data-theme="light"] .pricing-row-gold { color: #4a7a00; }
html[data-theme="light"] .pricing-row-btn { color: #12161a; }
html[data-theme="light"] .pricing-row-btn:hover { color: #12161a; }
html[data-theme="light"] .receipt-name { color: #12161a; }
html[data-theme="light"] .receipt-amount { color: #12161a; }
html[data-theme="light"] .lanyard-name { color: #12161a; }
html[data-theme="light"] .silk-brand strong { color: #12161a; }
html[data-theme="light"] .silk-scvs-badge strong { color: #12161a; }
html[data-theme="light"] .silk-net-pill:hover { color: #12161a; }
html[data-theme="light"] .silk-net-pill.is-current { color: #12161a; }
html[data-theme="light"] .draft-pane__title { color: #12161a; }
html[data-theme="light"] .draft-discard:hover { color: #12161a; }
html[data-theme="light"] .milestone-panel__count { color: #12161a; }
html[data-theme="light"] .milestone.is-done .milestone__body h3 { color: #12161a; }
html[data-theme="light"] .milestone.is-active .milestone__body h3 { color: #12161a; }
html[data-theme="light"] .deadline-card__title { color: #12161a; }
html[data-theme="light"] .deadline-card .calendar-toggle-btn:hover, .deadline-card .calendar-toggle-btn[aria-expanded="true"] { color: #12161a; }
html[data-theme="light"] .grants-available-title { color: #12161a; }
html[data-theme="light"] .grants-available-desc { color: #2a312d; }
html[data-theme="light"] .grants-available-link { color: #4a7a00; }
html[data-theme="light"] .grants-available-link:hover { color: #4a7a00; }
html[data-theme="light"] .roster__title { color: #12161a; }
html[data-theme="light"] .roster__pause:hover { color: #12161a; }
html[data-theme="light"] .roster-card__meta strong { color: #12161a; }
html[data-theme="light"] .data-stack .section-desc { color: #2a312d; }

/* surfaces that were dark, now white */
html[data-theme="light"] .nav-link.active::after { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .burger-btn { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] body.menu-open .burger-bar { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .avatar-inner { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .summit-drawer { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .form-input:focus, .form-select:focus, .form-textarea:focus { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .futuristic-header { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .brand-logo-wrap { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .futuristic-nav { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .pill-btn.frosted-pill:hover { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .mobile-sheet { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .countdown-strip { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .cd-box { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .inst-logo-badge:hover { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .futuristic-footer { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .modal-window { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .social-dock-toggle:hover { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .social-dock { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .ror-autocomplete-dropdown { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .calendar-dropdown-menu { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .stat-counter-cell { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .gold-perks-box { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .sv-checkout-amount-box { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .sv-card-ico-pill.sv-card-ico-pill-dark { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .btn-download.is-loading { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .draft-input, .draft-select, .draft-textarea { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .draft-tones { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .draft-body { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .milestone__node { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .milestone.is-upcoming .milestone__node { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .jstep-icon { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .roster-card { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .roster-card__chip { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .record-band { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .mobile-sheet > div:first-child { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }
html[data-theme="light"] .form-group.has-error .form-input, .form-group.has-error .form-select, .form-group.has-error .form-textarea, .field-block.has-error input, .field-block.has-error select, .field-block.has-error textarea { background: #ffffff; border-color: rgba(10, 14, 12, 0.10); }

/* ==========================================================================
   CORRECTIONS AFTER THE GENERATED BLOCK
   A few generated rules need a different value, and a few surfaces use
   gradients or light borders that the scanner could not see.
   ========================================================================== */

/* the WebGL canvas paints the dark green flow; at low opacity it becomes a
   soft sage wash on the light page and keeps the motif */
html[data-theme="light"] .bg-canvas {
  opacity: 0.16;
}

html[data-theme="light"] .bg-overlay {
  opacity: 0.2;
  background-image: radial-gradient(
    at 50% 40%,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.35) 58%,
    rgba(255, 255, 255, 0.65) 100%
  );
}

html[data-theme="light"] .bg-grain {
  opacity: 0.03;
}

/* header keeps its frosted look */
html[data-theme="light"] .futuristic-header {
  background: rgba(255, 255, 255, 0.82);
  border-bottom: 1px solid rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .futuristic-nav {
  background: rgba(240, 242, 235, 0.9);
  border: 1px solid rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .burger-btn {
  background: rgba(10, 14, 12, 0.06);
}

html[data-theme="light"] .burger-btn:hover {
  background: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] body.menu-open .burger-bar,
html[data-theme="light"] .burger-bar {
  background: #12161a;
}

html[data-theme="light"] .nav-link.active::after {
  background: #12161a;
}

html[data-theme="light"] .pill-btn.frosted-pill:hover {
  background: #f0f2ea;
}

/* gradient surfaces */
html[data-theme="light"] .spot-card {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 6px 24px rgba(10, 14, 12, 0.05);
}

html[data-theme="light"] .spot-desc {
  color: #4b544f;
}

/* dividers and outlines that were light-on-dark */
html[data-theme="light"] .charter-item,
html[data-theme="light"] .pub-row,
html[data-theme="light"] .faq-card-item,
html[data-theme="light"] .milestone,
html[data-theme="light"] .record-band,
html[data-theme="light"] .data-stack__item,
html[data-theme="light"] .glass-card,
html[data-theme="light"] .pricing-card,
html[data-theme="light"] .roster-card,
html[data-theme="light"] .spot-card,
html[data-theme="light"] .jstep,
html[data-theme="light"] .journey-stepper::before {
  border-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .journey-stepper::before {
  background: rgba(10, 14, 12, 0.12);
}

/* the support dock and floating pills */
html[data-theme="light"] .social-dock {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  box-shadow: 0 10px 30px rgba(10, 14, 12, 0.12);
}

/* selection + focus rings stay legible on white */
html[data-theme="light"] ::selection {
  background: #b9f227;
  color: #0a0e0c;
}

/* the hero keeps its own dark backdrop so the ASCII art stays rich */
html[data-theme="light"] .hero-ascii {
  background: #070b09;
}

/* floating support toggle */
html[data-theme="light"] .social-dock-toggle {
  background: #ffffff;
  color: #12161a;
  border-color: rgba(10, 14, 12, 0.12);
  box-shadow: 0 10px 30px rgba(10, 14, 12, 0.14);
}

html[data-theme="light"] .social-dock-toggle:hover {
  background: #f0f2ea;
}
/* announcement pill outside the hero (register, cfp, about, ...) */
html[data-theme="light"] .cyber-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  color: #3f4843;
  box-shadow: 0 8px 30px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .cyber-pill:hover {
  color: #12161a;
}

html[data-theme="light"] .cyber-pill-item strong {
  color: #12161a;
}

/* ...but the hero copy of the same pill stays dark */
html[data-theme="light"] .hero-ascii .cyber-pill {
  background: rgba(14, 14, 20, 0.82);
  border-color: rgba(255, 255, 255, 0.16);
  color: #d4d4d8;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5), 0 0 16px rgba(143, 179, 201, 0.1);
}

html[data-theme="light"] .hero-ascii .cyber-pill-item strong {
  color: #ffffff;
}

/* ==========================================================================
   LIGHT MODE - CONTRAST PASS
   The site mixes inline colours with stylesheet colours. These rules
   normalise every light-on-light value that the browser measured below
   a 3:1 contrast ratio. The hero is re-pinned afterwards.
   ========================================================================== */

/* ---- inline light text becomes dark ---- */
html[data-theme="light"] [style*="color:#ffffff"],
html[data-theme="light"] [style*="color: #ffffff"],
html[data-theme="light"] [style*="color:#fff"],
html[data-theme="light"] [style*="color: #fff"],
html[data-theme="light"] [style*="color:#f3f1e7"],
html[data-theme="light"] [style*="color: #f3f1e7"],
html[data-theme="light"] [style*="color:#e2e8f0"],
html[data-theme="light"] [style*="color: #e2e8f0"],
html[data-theme="light"] [style*="color:#d1d5db"],
html[data-theme="light"] [style*="color: #d1d5db"],
html[data-theme="light"] [style*="color:#d4d4d8"],
html[data-theme="light"] [style*="color: #d4d4d8"],
html[data-theme="light"] [style*="color:#e4e4e7"],
html[data-theme="light"] [style*="color: #e4e4e7"],
html[data-theme="light"] [style*="color:#cbd5e1"],
html[data-theme="light"] [style*="color: #cbd5e1"],
html[data-theme="light"] [style*="color:#94a3b8"],
html[data-theme="light"] [style*="color: #94a3b8"],
html[data-theme="light"] [style*="color:#a1a1aa"],
html[data-theme="light"] [style*="color: #a1a1aa"],
html[data-theme="light"] [style*="color:#71717a"],
html[data-theme="light"] [style*="color: #71717a"] {
  color: #12161a !important;
}

/* ---- inline accent text gets a darker, readable version ---- */
html[data-theme="light"] [style*="color:#b9f227"],
html[data-theme="light"] [style*="color: #b9f227"],
html[data-theme="light"] [style*="color:#d9ff6b"],
html[data-theme="light"] [style*="color: #d9ff6b"],
html[data-theme="light"] [style*="color:#d9fe9a"],
html[data-theme="light"] [style*="color: #d9fe9a"] {
  color: #4a7a00 !important;
}

html[data-theme="light"] [style*="color:#5fd39a"],
html[data-theme="light"] [style*="color: #5fd39a"],
html[data-theme="light"] [style*="color:#34d399"],
html[data-theme="light"] [style*="color: #34d399"] {
  color: #0b6b45 !important;
}

html[data-theme="light"] [style*="color:#8fb3c9"],
html[data-theme="light"] [style*="color: #8fb3c9"] {
  color: #2b6480 !important;
}

html[data-theme="light"] [style*="color:#f87171"],
html[data-theme="light"] [style*="color: #f87171"] {
  color: #b91c1c !important;
}

/* ---- class-based muted text ---- */
html[data-theme="light"] .milestone__when,
html[data-theme="light"] .milestone__chip,
html[data-theme="light"] .charter-kicker,
html[data-theme="light"] .charter-num,
html[data-theme="light"] .silk-footer__network-label,
html[data-theme="light"] .silk-trust-label,
html[data-theme="light"] .record-inst__label,
html[data-theme="light"] .roster__desc,
html[data-theme="light"] .pillar-desc,
html[data-theme="light"] .spot-list li,
html[data-theme="light"] .pricing-row-chip,
html[data-theme="light"] .draft-tone,
html[data-theme="light"] .draft-discard {
  color: #4b544f !important;
}

html[data-theme="light"] .inst-logo-badge,
html[data-theme="light"] .roster-card__chip,
html[data-theme="light"] .rl-text {
  color: #2a312d !important;
}

html[data-theme="light"] .spot-num,
html[data-theme="light"] .card-num,
html[data-theme="light"] .cyber-pill-badge,
html[data-theme="light"] .pricing-row-btn {
  color: #0b6b45 !important;
}

html[data-theme="light"] .cyber-pill-badge {
  color: #2b6480 !important;
}

/* ---- footer buttons and labels ---- */
html[data-theme="light"] .silk-footer button,
html[data-theme="light"] .silk-footer .footer-link-btn {
  color: #3f4843 !important;
}

/* ---- native select options ---- */
html[data-theme="light"] option {
  color: #12161a;
  background: #ffffff;
}

/* ---- lanyard badges (register page) ---- */
html[data-theme="light"] .lanyard-face {
  background: linear-gradient(180deg, #ffffff 0%, #f2f4ec 100%);
  border-color: rgba(10, 14, 12, 0.12);
  box-shadow: 0 16px 30px rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .lanyard-tier,
html[data-theme="light"] .lanyard-name,
html[data-theme="light"] .lanyard-price,
html[data-theme="light"] .lanyard-flip {
  color: #12161a !important;
}

html[data-theme="light"] .lanyard-flip {
  border-color: rgba(10, 14, 12, 0.2);
}

/* ---- student grants panel (call for papers) ---- */
html[data-theme="light"] .student-grants-card {
  background: #ffffff !important;
  box-shadow: 0 16px 45px rgba(10, 14, 12, 0.10) !important;
}

/* the four pillars inside the panel: white on white needs a real edge */
html[data-theme="light"] .student-grants-card .grant-pillar {
  background: #ffffff !important;
  border-color: rgba(10, 14, 12, 0.10) !important;
  box-shadow: 0 1px 2px rgba(10, 14, 12, 0.04);
}

/* ---- hero re-pin: these must stay light on the dark hero ---- */
html[data-theme="light"] .hero-ascii [style*="color:#ffffff"],
html[data-theme="light"] .hero-ascii [style*="color: #ffffff"],
html[data-theme="light"] .hero-ascii [style*="color:#f3f1e7"],
html[data-theme="light"] .hero-ascii [style*="color: #f3f1e7"],
html[data-theme="light"] .hero-ascii [style*="color:#d4d4d8"],
html[data-theme="light"] .hero-ascii [style*="color: #d4d4d8"] {
  color: #f3f1e7 !important;
}

html[data-theme="light"] .hero-ascii [style*="color:#b9f227"],
html[data-theme="light"] .hero-ascii [style*="color: #b9f227"] {
  color: #b9f227 !important;
}

html[data-theme="light"] .hero-ascii .cyber-pill-badge {
  color: #8fb3c9 !important;
}

html[data-theme="light"] .hero-ascii .card-num {
  color: #b9f227 !important;
}

/* ==========================================================================
   LIGHT MODE - CONTRAST PASS, ROUND 2
   Remaining values measured below 3:1 after round 1.
   ========================================================================== */

/* milestone rail text */
html[data-theme="light"] .milestone__body h3,
html[data-theme="light"] .milestone__body p,
html[data-theme="light"] .milestone__date,
html[data-theme="light"] .milestone__when,
html[data-theme="light"] .milestone__chip {
  color: #3f4843 !important;
}

html[data-theme="light"] .milestone__body h3 {
  color: #12161a !important;
}

html[data-theme="light"] .milestone__chip {
  border-color: rgba(10, 14, 12, 0.14);
  background: rgba(10, 14, 12, 0.04);
}

/* roster pause control */
html[data-theme="light"] .roster__pause {
  color: #3f4843 !important;
}

/* lanyard back-of-card list */
html[data-theme="light"] .lanyard-list li {
  color: #2a312d !important;
}

/* institution name under a speaker */
html[data-theme="light"] .roster-card__meta span {
  color: #4b544f !important;
}

/* active tone chip: dark green fill needs white text */
html[data-theme="light"] .draft-tone.is-active {
  background: #4a7a00;
  color: #ffffff !important;
}

/* policy pages: the container sets an inline light grey that children inherit */
html[data-theme="light"] [style*="color: #d1d5db"] p,
html[data-theme="light"] [style*="color: #d1d5db"] li,
html[data-theme="light"] [style*="color: #d1d5db"] strong,
html[data-theme="light"] [style*="color: #d1d5db"] em,
html[data-theme="light"] [style*="color: #d1d5db"] code,
html[data-theme="light"] [style*="color: #d1d5db"] span,
html[data-theme="light"] [style*="color:#d1d5db"] p,
html[data-theme="light"] [style*="color:#d1d5db"] li,
html[data-theme="light"] [style*="color:#d1d5db"] strong,
html[data-theme="light"] [style*="color:#d1d5db"] em,
html[data-theme="light"] [style*="color:#d1d5db"] code,
html[data-theme="light"] [style*="color:#d1d5db"] span {
  color: #2a312d !important;
}

/* body copy in the data / publication / charter / faq blocks */
html[data-theme="light"] .sdg-tile__body p,
html[data-theme="light"] .pub-row p,
html[data-theme="light"] .charter-item p,
html[data-theme="light"] .faq-split .faq-drawer,
html[data-theme="light"] .scvs-homepage-audit-desc {
  color: #4b544f !important;
}
/* grant sub-tiles inside the scholarship panel */
html[data-theme="light"] .grant-tile {
  background: #f7f8f2 !important;
  border-color: rgba(10, 14, 12, 0.10) !important;
}

html[data-theme="light"] .grant-tile strong {
  color: #12161a !important;
}

html[data-theme="light"] .grant-tile p {
  color: #4b544f !important;
}
/* ---------- pillar / track bento cards ---------- */
html[data-theme="light"] .pillar {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 6px 24px rgba(10, 14, 12, 0.05);
}

html[data-theme="light"] .pillar::after {
  color: rgba(10, 14, 12, 0.05);
}

html[data-theme="light"] .pillar:hover {
  border-color: rgba(74, 122, 0, 0.45);
  box-shadow: 0 18px 44px rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .pillar-title {
  color: #12161a;
}

html[data-theme="light"] .pillar-desc {
  color: #4b544f;
}

html[data-theme="light"] .pillar-topics {
  border-top-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .pillar-topics li {
  color: #2a312d;
}

html[data-theme="light"] .pillar-num {
  color: #0b6b45;
}

html[data-theme="light"] .pillar-link {
  color: #0b6b45;
}

html[data-theme="light"] .pillar-icon {
  background: rgba(11, 107, 69, 0.08);
  border-color: rgba(11, 107, 69, 0.22);
  color: #0b6b45;
}
/* ==========================================================================
   LIGHT MODE - NO DARK SURFACES
   --------------------------------------------------------------------------
   Everything below replaces a panel that was drawn for the dark theme with a
   paper surface. The earlier "hero stays dark" rules are superseded here on
   purpose: white mode means white, hero included.
   ========================================================================== */

/* ---------- hero ---------- */
html[data-theme="light"] .hero-ascii {
  background: linear-gradient(160deg, #f8f9f3 0%, #eef2e6 52%, #e3ebd8 100%);
}

html[data-theme="light"] .hero-ascii__canvas {
  filter: invert(1) hue-rotate(180deg);
  opacity: 0.45;
}

html[data-theme="light"] .hero-ascii__scrim {
  background-image:
    linear-gradient(
      90deg,
      rgba(248, 249, 243, 0.97) 0%,
      rgba(248, 249, 243, 0.95) 32%,
      rgba(248, 249, 243, 0.8) 44%,
      rgba(248, 249, 243, 0.32) 55%,
      rgba(248, 249, 243, 0) 66%
    ),
    linear-gradient(
      180deg,
      rgba(248, 249, 243, 0.72) 0%,
      rgba(248, 249, 243, 0) 15%,
      rgba(248, 249, 243, 0) 68%,
      rgba(248, 249, 243, 0.62) 88%,
      rgba(248, 249, 243, 0.92) 100%
    );
}

html[data-theme="light"] .hero-ascii__glow {
  background: radial-gradient(
    closest-side,
    rgba(74, 122, 0, 0.14) 0%,
    rgba(74, 122, 0, 0.05) 52%,
    rgba(74, 122, 0, 0) 76%
  );
}

html[data-theme="light"] .hero-ascii .headline,
html[data-theme="light"] .hero-ascii .subhead strong {
  color: #12161a;
}

html[data-theme="light"] .hero-ascii .subhead {
  color: #4b544f;
}

html[data-theme="light"] .hero-ascii .hero-facts-line {
  color: #5a635e;
}

html[data-theme="light"] .hero-ascii .hero-facts-line i {
  color: #0b6b45;
}

html[data-theme="light"] .hero-ascii .cyber-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  color: #3f4843;
  box-shadow: 0 8px 24px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .hero-ascii .cyber-pill-item strong {
  color: #12161a;
}

html[data-theme="light"] .hero-ascii .cyber-pill-badge {
  color: #4a7a00 !important;
}

html[data-theme="light"] .hero-ascii .kicker-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  color: #3f4843;
}

html[data-theme="light"] .hero-ascii .cta-secondary {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.16);
  color: #12161a;
}

html[data-theme="light"] .hero-ascii .cta-secondary:hover {
  background: #f0f2ea;
  border-color: rgba(10, 14, 12, 0.3);
}

html[data-theme="light"] .hero-ascii .hero-event {
  background: linear-gradient(180deg, #ffffff 0%, #f7f8f2 100%);
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 18px 44px rgba(10, 14, 12, 0.10);
  color: #12161a;
}

html[data-theme="light"] .hero-ascii .hero-event * {
  color: #12161a;
}

html[data-theme="light"] .hero-ascii .hero-event i {
  color: #0b6b45;
}

html[data-theme="light"] .hero-ascii .hero-thought {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  color: #0b6b45;
}

html[data-theme="light"] .hero-ascii .hero-meta-card {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 30px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .hero-ascii .hero-meta-icon {
  background: rgba(11, 107, 69, 0.08);
  color: #0b6b45;
}

html[data-theme="light"] .hero-ascii .date-badge-box {
  background: #f2f4ec;
  border-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .hero-ascii .card-num {
  color: #4a7a00 !important;
}

html[data-theme="light"] .hero-ascii [style*="color:#ffffff"],
html[data-theme="light"] .hero-ascii [style*="color: #ffffff"],
html[data-theme="light"] .hero-ascii [style*="color:#f3f1e7"],
html[data-theme="light"] .hero-ascii [style*="color: #f3f1e7"],
html[data-theme="light"] .hero-ascii [style*="color:#d4d4d8"],
html[data-theme="light"] .hero-ascii [style*="color: #d4d4d8"] {
  color: #12161a !important;
}

html[data-theme="light"] .hero-ascii [style*="color:#b9f227"],
html[data-theme="light"] .hero-ascii [style*="color: #b9f227"] {
  color: #4a7a00 !important;
}

/* ---------- milestone panel ---------- */
html[data-theme="light"] .milestone-panel {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 34px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .milestone-panel__kicker {
  color: #5a635e;
}

html[data-theme="light"] .milestone-panel__count {
  color: #12161a;
}

html[data-theme="light"] .milestone-panel__pct {
  color: #4a7a00;
}

html[data-theme="light"] .milestone-bar {
  background: rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .milestone__body h3 {
  color: #12161a !important;
}

html[data-theme="light"] .milestone__body p,
html[data-theme="light"] .milestone__when {
  color: #4b544f !important;
}

/* ---------- registration tickets (index) ---------- */
html[data-theme="light"] .receipt {
  background: linear-gradient(180deg, #ffffff 0%, #f7f8f2 100%);
  border-color: rgba(10, 14, 12, 0.14);
  color: #12161a;
  box-shadow: 0 8px 26px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .receipt.is-featured {
  background: linear-gradient(180deg, #ffffff 0%, #f2f7e6 100%);
  border-color: rgba(74, 122, 0, 0.45);
}

html[data-theme="light"] .receipt-tier,
html[data-theme="light"] .receipt-sub,
html[data-theme="light"] .receipt-total-label {
  color: #5a635e;
}

html[data-theme="light"] .receipt-stamp {
  color: #4a7a00;
  border-color: rgba(74, 122, 0, 0.45);
}

html[data-theme="light"] .receipt-name,
html[data-theme="light"] .receipt-amount {
  color: #12161a;
}

html[data-theme="light"] .receipt-rule {
  background-image: linear-gradient(
    90deg,
    rgba(10, 14, 12, 0.22) 0 6px,
    transparent 6px 12px
  );
}

html[data-theme="light"] .receipt-lines li {
  color: #2a312d;
}

html[data-theme="light"] .receipt-lines .rl-dots {
  border-bottom-color: rgba(10, 14, 12, 0.2);
}

html[data-theme="light"] .receipt-lines i {
  color: #0b6b45;
}

html[data-theme="light"] .receipt-gold {
  color: #4a7a00;
}

html[data-theme="light"] .receipt-btn {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.18);
  color: #12161a;
}

html[data-theme="light"] .receipt-btn:hover {
  background: #4a7a00;
  border-color: #4a7a00;
  color: #ffffff;
}

html[data-theme="light"] .receipt.is-featured .receipt-btn {
  background: #4a7a00;
  border-color: #4a7a00;
  color: #ffffff;
}

html[data-theme="light"] .receipt.is-featured .receipt-btn:hover {
  background: #3d6600;
}

html[data-theme="light"] .receipt-barcode {
  background-image: repeating-linear-gradient(
    90deg,
    rgba(10, 14, 12, 0.7) 0 2px,
    transparent 2px 4px,
    rgba(10, 14, 12, 0.7) 4px 5px,
    transparent 5px 9px,
    rgba(10, 14, 12, 0.7) 9px 12px,
    transparent 12px 14px
  );
}

/* ---------- register: pricing matrix shell ---------- */
html[data-theme="light"] .pricing-matrix-container {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 14px 40px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .pricing-matrix-header {
  border-bottom-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .pricing-matrix-header-title {
  color: #12161a;
}

html[data-theme="light"] .pricing-matrix-header-sub {
  color: #5a635e;
}

/* ---------- contact: draft pane ---------- */
html[data-theme="light"] .draft-pane {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 34px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .draft-pane__title {
  color: #12161a;
}

html[data-theme="light"] .draft-pane p,
html[data-theme="light"] .draft-pane label,
html[data-theme="light"] .draft-pane span {
  color: #3f4843;
}

html[data-theme="light"] .draft-pane i {
  color: #0b6b45;
}

/* ==========================================================================
   LIGHT MODE - NO DARK SURFACES, PART 2
   Cards that sit below the fold and were missed by the first pass.
   ========================================================================== */

/* ---------- abstract deadline countdown card ---------- */
html[data-theme="light"] .deadline-card {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 34px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .deadline-card__title {
  color: #12161a;
}

html[data-theme="light"] .deadline-card__sub {
  color: #4b544f;
}

html[data-theme="light"] .deadline-card__eyebrow {
  background: rgba(43, 100, 128, 0.08);
  border-color: rgba(43, 100, 128, 0.22);
  color: #2b6480;
}

html[data-theme="light"] .deadline-card .cd-box {
  background: #f2f4ec;
  border-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .deadline-card .cd-num {
  color: #12161a;
}

html[data-theme="light"] .deadline-card .cd-label {
  color: #4b544f;
}

/* ---------- publication sheet ---------- */
html[data-theme="light"] .pub-sheet {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 34px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .pub-row {
  border-bottom-color: rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .pub-row__idx {
  color: #0b6b45;
}

html[data-theme="light"] .pub-row__kicker {
  color: #5a635e;
}

html[data-theme="light"] .pub-badge--slate {
  background: rgba(43, 100, 128, 0.10);
  border-color: rgba(43, 100, 128, 0.24);
  color: #2b6480;
}

/* ---------- past-conference record band ---------- */
html[data-theme="light"] .record-band__caption {
  background: rgba(255, 255, 255, 0.94);
  border-top: 1px solid rgba(10, 14, 12, 0.08);
  color: #12161a;
}

html[data-theme="light"] .record-band__caption span {
  color: #12161a;
}

/* ---------- submission journey ---------- */
html[data-theme="light"] .jstep {
  border-left-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .jstep-num {
  color: #0b6b45;
}

html[data-theme="light"] .jstep p {
  color: #4b544f;
}

/* ---------- hero secondary links + scroll cue ---------- */
html[data-theme="light"] .hero-secondary-links,
html[data-theme="light"] .hero-secondary-links a,
html[data-theme="light"] .hero-secondary-links button {
  color: #3f4843;
}

html[data-theme="light"] .hero-secondary-links a:hover,
html[data-theme="light"] .hero-secondary-links button:hover {
  color: #12161a;
}

html[data-theme="light"] .scroll-cue {
  color: #5a635e;
}

/* ---------- mobile navigation sheet ---------- */
html[data-theme="light"] .mobile-sheet {
  background: #ffffff;
  border-left-color: rgba(10, 14, 12, 0.10);
  box-shadow: -12px 0 45px rgba(10, 14, 12, 0.18);
}

html[data-theme="light"] .sheet-link {
  background: #f6f7f1;
  border-color: rgba(10, 14, 12, 0.10);
  color: #12161a !important;
}

html[data-theme="light"] .sheet-action {
  background: #4a7a00 !important;
  border-color: #4a7a00 !important;
  color: #ffffff !important;
}

/* ==========================================================================
   LIGHT MODE - NO DARK SURFACES, PART 3
   Newsletter strip, contact dispatch banner, SDG tiles, hero text link,
   and the inline-styled grants banner on brochure.html.
   ========================================================================== */

/* ---------- newsletter strip ---------- */
html[data-theme="light"] .newsletter-glass-card {
  background: linear-gradient(135deg, #ffffff 0%, #f4f7ec 100%);
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 14px 40px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .newsletter-copy-side h2 {
  color: #12161a;
}

html[data-theme="light"] .newsletter-copy-side p {
  color: #4b544f;
}

html[data-theme="light"] .newsletter-flex-form input {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.18);
  color: #12161a;
}

html[data-theme="light"] .newsletter-flex-form input::placeholder {
  color: #7a837d;
}

html[data-theme="light"] .newsletter-flex-form input:focus {
  border-color: #4a7a00;
}

/* ---------- contact dispatch banner ---------- */
html[data-theme="light"] .contact-dispatch-banner {
  background: linear-gradient(135deg, #ffffff 0%, #f4f7ec 100%);
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 14px 40px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .contact-dispatch-banner h3 {
  color: #12161a !important;
}

html[data-theme="light"] .contact-dispatch-banner p {
  color: #4b544f !important;
}

html[data-theme="light"] .frosted-pill {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.18);
  color: #12161a;
}

html[data-theme="light"] .frosted-pill:hover {
  background: #f0f2ea;
  border-color: rgba(10, 14, 12, 0.32);
}

/* ---------- SDG tiles ---------- */
html[data-theme="light"] .sdg-tile {
  background: linear-gradient(180deg, #ffffff 0%, #f7f8f2 100%);
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 8px 24px rgba(10, 14, 12, 0.05);
}

html[data-theme="light"] .sdg-tile__body strong {
  color: #12161a;
}

html[data-theme="light"] .sdg-tile__body p {
  color: #4b544f;
}

/* ---------- hero text link (Get Brochure) ---------- */
html[data-theme="light"] .cta-text-link {
  color: #3f4843;
  border-bottom-color: rgba(10, 14, 12, 0.28);
}

html[data-theme="light"] .cta-text-link:hover {
  color: #12161a;
  border-bottom-color: rgba(10, 14, 12, 0.55);
}

/* ---------- brochure: inline dark grants banner ---------- */
html[data-theme="light"] .glass-card[style*="rgba(20, 20, 25"] {
  background: linear-gradient(135deg, #f2f7e6 0%, #ffffff 100%) !important;
  border-color: rgba(74, 122, 0, 0.35) !important;
  box-shadow: 0 14px 40px rgba(10, 14, 12, 0.08) !important;
}

/* ==========================================================================
   LIGHT MODE - NO DARK SURFACES, PART 4
   Remaining text-level fixes found by the scroll-aware audit.
   ========================================================================== */

/* DOI links inside the publication sheet */
html[data-theme="light"] .pub-row p a {
  color: #2b6480;
}

html[data-theme="light"] .pub-row p a:hover {
  color: #1d4a60;
}

/* timezone sync badge injected by academic-enrichment.js */
html[data-theme="light"] .dual-tz-badge {
  background: #f2f4ec;
  border-color: rgba(10, 14, 12, 0.10);
  color: #4b544f;
}

html[data-theme="light"] .dual-tz-badge strong {
  color: #8a5a00;
}

html[data-theme="light"] .dual-tz-badge i {
  color: #0b6b45;
}

/* ==========================================================================
   LIGHT MODE - NO DARK SURFACES, PART 5
   The footer keeps a light background but its decorative silk overlay was
   still painting a dark green wash over the top third, hiding the text.
   ========================================================================== */

html[data-theme="light"] .silk-footer__silk {
  opacity: 0.22;
  filter: blur(26px) saturate(0.55) brightness(1.9);
}

html[data-theme="light"] .silk-footer__canvas {
  opacity: 0.22;
  filter: invert(1) hue-rotate(180deg) saturate(0.6);
}

html[data-theme="light"] .silk-footer__grain {
  opacity: 0.06;
}

html[data-theme="light"] .silk-footer__network {
  border-top-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .silk-footer__bottom {
  border-top-color: rgba(10, 14, 12, 0.10);
}

/* ==========================================================================
   LIGHT MODE - PART 6
   On narrow screens the ASCII art sits directly behind the hero copy, so the
   desktop scrim is not enough. Fade the art and thicken the wash.
   ========================================================================== */

@media (max-width: 900px) {
  html[data-theme="light"] .hero-ascii__canvas {
    opacity: 0.18;
  }

  html[data-theme="light"] .hero-ascii__scrim {
    background-image:
      linear-gradient(
        180deg,
        rgba(248, 249, 243, 0.94) 0%,
        rgba(248, 249, 243, 0.90) 30%,
        rgba(248, 249, 243, 0.86) 62%,
        rgba(248, 249, 243, 0.94) 100%
      );
  }
}

/* ==========================================================================
   LIGHT MODE - PART 7
   The past-conference band is a dark bitmap. Frame it inside a white card so
   it reads as a photograph rather than a black panel.
   ========================================================================== */

html[data-theme="light"] .record-band {
  padding: 10px;
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.10);
  box-shadow: 0 10px 34px rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .record-band img {
  border-radius: 14px;
}

html[data-theme="light"] .record-band__caption {
  left: 10px;
  right: 10px;
  bottom: 10px;
  border-radius: 0 0 14px 14px;
}

/* ==========================================================================
   LIGHT MODE - PART 8
   Contrast fixes measured against the rendered background:
   - hero Y/N chips were 1.19:1 (pale mint on near-white)
   - active nav pill was 3.53:1 (dark text on #4a7a00)
   - scroll cue line was white on white
   ========================================================================== */

/* hero assistant Y/N chips */
html[data-theme="light"] .hero-thought__chip {
  background: #eef7f1;
  border-color: rgba(11, 107, 69, 0.38);
  color: #0b6b45;
}

html[data-theme="light"] .hero-thought__chip:hover,
html[data-theme="light"] .hero-thought__chip:focus-visible {
  background: #0b6b45;
  border-color: #0b6b45;
  color: #ffffff;
}

/* scroll cue: text and the animated line */
html[data-theme="light"] .scroll-cue {
  color: #3f4843;
}

html[data-theme="light"] .scroll-cue-line {
  background: rgba(10, 14, 12, 0.22);
}

html[data-theme="light"] .scroll-cue-line::after {
  background: #0b6b45;
}

/* active nav pill: white on the darkened brand green (5.14:1) */
html[data-theme="light"] .futuristic-nav-link.active {
  color: #ffffff;
}

/* ==========================================================================
   LIGHT MODE - PART 9
   Every control filled with the darkened accent green (#4a7a00) kept the
   dark-mode text colour (#0a0e0c), giving 3.77:1. White text gives 5.15:1.
   Hover states that brightened to #c9ff4a / #d3ff5c now darken instead, so
   white text stays valid.
   ========================================================================== */

html[data-theme="light"] .cta-btn,
html[data-theme="light"] .pill-btn.glowing-pill,
html[data-theme="light"] .sv-submit,
html[data-theme="light"] .modal-submit-btn,
html[data-theme="light"] .lanyard-select,
html[data-theme="light"] .draft-generate,
html[data-theme="light"] .draft-send,
html[data-theme="light"] .draft-tone.is-active,
html[data-theme="light"] .receipt-btn:hover,
html[data-theme="light"] .receipt.is-featured .receipt-btn,
html[data-theme="light"] .sheet-action,
html[data-theme="light"] .futuristic-nav-link.active,
html[data-theme="light"] .btn-download .dl-stage {
  color: #ffffff;
}

html[data-theme="light"] .cta-btn i,
html[data-theme="light"] .pill-btn.glowing-pill i,
html[data-theme="light"] .sv-submit i,
html[data-theme="light"] .modal-submit-btn i,
html[data-theme="light"] .lanyard-select i,
html[data-theme="light"] .draft-generate i,
html[data-theme="light"] .draft-send i,
html[data-theme="light"] .receipt-btn:hover i,
html[data-theme="light"] .sheet-action i {
  color: #ffffff;
}

/* hover: darken the green instead of brightening it */
html[data-theme="light"] .pill-btn.glowing-pill:hover,
html[data-theme="light"] .sv-submit:hover,
html[data-theme="light"] .modal-submit-btn:hover,
html[data-theme="light"] .lanyard-select:hover,
html[data-theme="light"] .draft-generate:hover,
html[data-theme="light"] .draft-send:hover,
html[data-theme="light"] .receipt-btn:hover,
html[data-theme="light"] .receipt.is-featured .receipt-btn:hover {
  background: #3d6600;
  border-color: #3d6600;
  color: #ffffff;
}

/* active theme button: brand green, not black */
html[data-theme="light"] .theme-switch__btn[aria-pressed="true"] {
  background: #4a7a00;
  color: #ffffff;
}

html[data-theme="light"] .theme-switch__btn[aria-pressed="true"]:hover {
  background: #3d6600;
  color: #ffffff;
}

/* ==========================================================================
   LIGHT MODE - PART 10
   Two hover-only failures found by the hover audit:
   1. The active nav pill inherits the dark-mode hover colour (#ffffff) on a
      pale background. It needs its own hover rule.
   2. The Zenodo pill carries an inline colour. The magnetic-hover script
      rewrites that attribute and normalises #8fb3c9 to rgb(143, 179, 201),
      so the light-mode override stops matching mid-hover. Both forms are
      matched with !important to beat the inline style.
   ========================================================================== */

html[data-theme="light"] .futuristic-nav-link:hover {
  color: #12161a;
  background: rgba(10, 14, 12, 0.07);
}

html[data-theme="light"] .futuristic-nav-link.active:hover {
  color: #ffffff;
  background: #3d6600;
}

html[data-theme="light"] .pill-btn.frosted-pill[style*="color: #8fb3c9"],
html[data-theme="light"] .pill-btn.frosted-pill[style*="color:#8fb3c9"],
html[data-theme="light"] .pill-btn.frosted-pill[style*="rgb(143, 179, 201)"],
html[data-theme="light"] .pill-btn.frosted-pill[style*="rgb(143,179,201)"] {
  color: #2b6480 !important;
}

html[data-theme="light"] .pill-btn.frosted-pill[style*="color: #8fb3c9"]:hover,
html[data-theme="light"] .pill-btn.frosted-pill[style*="color:#8fb3c9"]:hover,
html[data-theme="light"] .pill-btn.frosted-pill[style*="rgb(143, 179, 201)"]:hover,
html[data-theme="light"] .pill-btn.frosted-pill[style*="rgb(143,179,201)"]:hover {
  color: #1f4d63 !important;
}

/* ==========================================================================
   LIGHT MODE - PART 11 (register page)
   The duplicate pass catalogue was removed; the lanyard badges are now the
   only selector. These are the remaining dark-mode surfaces and inline
   colours on the intake form.
   ========================================================================== */

/* Student grants banner: the dark radial gradient left dark text on a
   near-black surface (1.07:1). Invert it to a light green surface. */
html[data-theme="light"] .grants-available-card {
  background: linear-gradient(135deg, #f6fbee 0%, #e9f4d9 60%, #e2f0cf 100%);
  border-color: rgba(74, 122, 0, 0.28);
  box-shadow: 0 10px 30px -18px rgba(10, 14, 12, 0.25);
}

html[data-theme="light"] .grants-available-title,
html[data-theme="light"] .grants-available-title span {
  color: #12161a;
}

html[data-theme="light"] .grants-available-desc {
  color: #2a312d;
}

html[data-theme="light"] .grants-available-link {
  color: #3d6600;
  border-bottom-color: rgba(61, 102, 0, 0.4);
}

html[data-theme="light"] .grants-available-link:hover {
  color: #2f4f00;
  border-bottom-color: #2f4f00;
}

html[data-theme="light"] .grants-available-count {
  background: #4a7a00;
  color: #ffffff;
}

/* Pass inclusions panel: a 20% black overlay reads as a grey slab. */
html[data-theme="light"] #passBenefitsWrap {
  background: #f4f8ee !important;
  border-color: rgba(10, 14, 12, 0.10) !important;
}

html[data-theme="light"] #passBenefitsList {
  color: #2a312d !important;
}

/* Selected pass pill: JS serialises the inline hex to rgb(), so the
   attribute selector no longer matches. Target the id instead. */
html[data-theme="light"] #selectedCategoryPill {
  color: #1f4d63 !important;
  background: rgba(43, 100, 128, 0.10) !important;
  border-color: rgba(43, 100, 128, 0.32) !important;
}

html[data-theme="light"] #summaryBadgeTier {
  color: #1f4d63 !important;
  background: rgba(43, 100, 128, 0.10) !important;
  border-color: rgba(43, 100, 128, 0.32) !important;
}

/* Total payable: #8fb3c9 on white was 2.4:1. */
html[data-theme="light"] #finalPriceDisplay {
  color: #1f4d63 !important;
}

/* Calendar sync hint injected by academic-enrichment.js. */
html[data-theme="light"] .calendar-sync-hint {
  color: #4b544f !important;
}

/* ==========================================================================
   LIGHT MODE - PART 12 (register page, follow-up)
   Two pairs still under 4.5:1 after part 11.
   ========================================================================== */

/* The "Open" chip sits inside .grants-available-title, whose span rule was
   more specific and kept the dark text on the green fill. */
html[data-theme="light"] .grants-available-title .grants-available-count {
  color: #ffffff;
}

/* Step numbers: #4a7a00 on #ebf2df measured 4.48:1. */
html[data-theme="light"] .silk-col__badge {
  color: #3d6600;
}

/* ==========================================================================
   LIGHT MODE - PART 13 (lanyard badges)
   The barcode was bone-on-white and disappeared; the back-face chips and
   the hover lift need light values.
   ========================================================================== */

/* Barcode: bone lines on a white card were invisible. Ink lines instead. */
html[data-theme="light"] .lanyard-barcode {
  opacity: 0.72;
  background-image: repeating-linear-gradient(
    90deg,
    rgba(18, 22, 26, 0.78) 0 2px,
    transparent 2px 4px,
    rgba(18, 22, 26, 0.78) 4px 5px,
    transparent 5px 9px
  );
}

/* Highlight chips on the back face. */
html[data-theme="light"] .lanyard-tag {
  color: #3d6600;
  background: rgba(74, 122, 0, 0.08);
  border-color: rgba(74, 122, 0, 0.24);
}

/* Hover lift: the dark shadow is too heavy on paper. */
html[data-theme="light"] .lanyard-badge.is-hovered .lanyard-face {
  border-color: rgba(74, 122, 0, 0.5);
  box-shadow: 0 22px 44px rgba(10, 14, 12, 0.16), 0 0 0 1px rgba(74, 122, 0, 0.16);
}

/* ==========================================================================
   LIGHT MODE - PART 14 (submission conversion blocks + participant voices)
   ========================================================================== */

html[data-theme="light"] .sv-panel,
html[data-theme="light"] .sv-recog-card,
html[data-theme="light"] .sv-voice {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
  box-shadow: 0 16px 34px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .sv-step {
  background: #f7f9f2;
  border-color: rgba(10, 14, 12, 0.10);
}

html[data-theme="light"] .sv-panel__title,
html[data-theme="light"] .sv-step h3,
html[data-theme="light"] .sv-recog-card h3,
html[data-theme="light"] .sv-voice__name {
  color: #12161a;
}

html[data-theme="light"] .sv-list li,
html[data-theme="light"] .sv-voice__text {
  color: #2b332d;
}

html[data-theme="light"] .sv-step p,
html[data-theme="light"] .sv-recog-card p,
html[data-theme="light"] .sv-support-card__lead,
html[data-theme="light"] .sv-voice__role {
  color: #4b544f;
}

html[data-theme="light"] .sv-panel__eyebrow,
html[data-theme="light"] .sv-step__num,
html[data-theme="light"] .sv-voice__quote {
  color: #4a7a00;
}

html[data-theme="light"] .sv-voice__tag {
  color: #1f4d63;
}

html[data-theme="light"] .sv-voice::before,
html[data-theme="light"] .sv-voice::after {
  background:
    linear-gradient(#4a7a00, #4a7a00) center / 11px 1px no-repeat,
    linear-gradient(#4a7a00, #4a7a00) center / 1px 11px no-repeat;
  opacity: 0.45;
}

html[data-theme="light"] .sv-voice__avatar {
  border-color: rgba(10, 14, 12, 0.16);
}

html[data-theme="light"] .sv-voice:hover {
  border-color: rgba(74, 122, 0, 0.4);
  box-shadow: 0 22px 44px rgba(10, 14, 12, 0.14);
}

html[data-theme="light"] .sv-support-card {
  background: #f4f8ee;
  border-color: rgba(74, 122, 0, 0.24);
  box-shadow: 0 16px 34px rgba(10, 14, 12, 0.08);
}

html[data-theme="light"] .sv-support-card--alt {
  background: #ffffff;
  border-color: rgba(10, 14, 12, 0.12);
}

html[data-theme="light"] .sv-recog-card__icon {
  background: rgba(74, 122, 0, 0.10);
  border-color: rgba(74, 122, 0, 0.24);
  color: #4a7a00;
}

html[data-theme="light"] .sv-list i {
  color: #3d6600;
}

/* --- participant voices: initials avatar (light) --- */
html[data-theme="light"] .sv-voice__avatar--initials {
  background: #eef4e2;
  border-color: rgba(74, 122, 0, 0.28);
  color: #3d6600;
}
