/* WOW Light UI — isolated theme layer. Loaded last so every product page
   shares one readable surface system without rewriting the original visuals. */
:root {
  color-scheme: light;
  --light-bg: #f4f8fc;
  --light-surface: #ffffff;
  --light-surface-2: #f8fbfd;
  --light-ink: #14283a;
  --light-muted: #60788a;
  --light-line: #dbe8ee;
  --light-cyan: #118bb3;
  --light-mint: #0ea77c;
  --light-purple: #7457d8;
  --light-shadow: 0 16px 42px rgba(42, 82, 106, .10);
}

html { background: var(--light-bg); }
body.reference-layout,
body.portal-page,
body.academy-page,
body.presale-page {
  color: var(--light-ink);
  background: linear-gradient(180deg, #ffffff 0%, var(--light-bg) 54%, #edf5f8 100%);
}

.reference-layout .site-shell,
.portal-page .site-shell,
.academy-page .site-shell,
.presale-shell {
  color: var(--light-ink);
  background: rgba(255,255,255,.94);
  border-color: rgba(40,107,135,.14);
}

.reference-layout .topbar,
.portal-page .portal-topbar,
.academy-page .academy-topbar,
.presale-topbar {
  color: var(--light-ink);
  background: rgba(255,255,255,.92);
  border-color: var(--light-line);
  box-shadow: 0 8px 24px rgba(42,82,106,.08);
}

.reference-layout .brand-copy strong,
.reference-layout .nav-links a,
.portal-page .nav-links a,
.academy-page .nav-links a,
.reference-layout .portal-section h2,
.reference-layout .portal-card h3,
.reference-layout .profile-copy h1,
.reference-layout .panel-heading h2,
.reference-layout .invite-section-heading h2,
.reference-layout .presale-hero h1 {
  color: var(--light-ink);
}
.reference-layout .nav-links a.active,
.reference-layout .nav-links a:hover,
.portal-page .nav-links a.active,
.portal-page .nav-links a:hover,
.academy-page .nav-links a.active,
.academy-page .nav-links a:hover { color: #102536; }

.reference-layout .nav-more-btn,
.portal-page .nav-more-btn,
.academy-page .nav-more-btn {
  border-color: var(--light-line);
  color: var(--light-ink);
  background: #ffffff;
}

.reference-layout .nav-more-btn:hover,
.reference-layout .nav-more-btn[aria-expanded="true"],
.portal-page .nav-more-btn:hover,
.portal-page .nav-more-btn[aria-expanded="true"],
.academy-page .nav-more-btn:hover,
.academy-page .nav-more-btn[aria-expanded="true"] {
  border-color: var(--accent);
  color: var(--accent);
  background: var(--accent-light);
}

.reference-layout .nav-more-menu,
.portal-page .nav-more-menu,
.academy-page .nav-more-menu {
  border-color: var(--light-line);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 16px 46px rgba(16, 37, 54, 0.12);
}

.reference-layout .nav-more-menu a,
.portal-page .nav-more-menu a,
.academy-page .nav-more-menu a {
  color: var(--light-ink);
}

.reference-layout .nav-more-menu a:hover,
.reference-layout .nav-more-menu a.active,
.portal-page .nav-more-menu a:hover,
.portal-page .nav-more-menu a.active,
.academy-page .nav-more-menu a:hover,
.academy-page .nav-more-menu a.active {
  color: var(--accent);
  background: var(--accent-light);
}

.reference-layout .brand-copy small,
.reference-layout .portal-copy,
.reference-layout .portal-card p,
.reference-layout .section p,
.reference-layout .field-hint,
.reference-layout .action-note,
.portal-page .portal-copy,
.portal-page .portal-card p,
.academy-page .academy-intro,
.presale-page .hero-lede,
.presale-page .tab-hero > p:last-child { color: var(--light-muted); }

.reference-layout .portal-section,
.reference-layout .portal-card,
.reference-layout .quest-row,
.reference-layout .profile-card,
.reference-layout .asset-row,
.reference-layout .doc-item,
.reference-layout .docs-sidebar,
.reference-layout .checkin-card,
.reference-layout .quest-progress-card,
.reference-layout .panel,
.reference-layout .reservation-form,
.reference-layout .reservation-points,
.reference-layout .nft-position-card,
.reference-layout .release-card,
.reference-layout .transfer-panel,
.reference-layout .invite-link-card,
.reference-layout .invite-stats,
.reference-layout .delivery-card,
.reference-layout .schedule-panel,
.academy-page .academy-section,
.academy-page .article-card,
.academy-page .featured-main,
.academy-page .featured-small,
.academy-page .path-step {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: var(--light-line);
  box-shadow: var(--light-shadow);
}

.reference-layout input,
.reference-layout textarea,
.reference-layout select,
.reference-layout .amount-input,
.reference-layout .text-input,
.reference-layout .wallet-state,
.reference-layout .order-card,
.reference-layout .phase-card,
.reference-layout .delivery-status-list article,
.reference-layout .invite-record-row,
.reference-layout .invite-task-list article {
  color: var(--light-ink);
  background: var(--light-surface-2);
  border-color: var(--light-line);
}

.reference-layout input::placeholder,
.reference-layout textarea::placeholder { color: #8aa0ad; }
.reference-layout .language,
.reference-layout .menu-toggle,
.reference-layout .ghost-btn,
.reference-layout .feed-more,
.reference-layout .secondary-action {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: #bfd3dc;
}

.reference-layout .footer {
  color: var(--light-ink);
  background: rgba(255,255,255,.96);
  border-color: var(--light-line);
  box-shadow: 0 -8px 24px rgba(42,82,106,.08);
}

/* Homepage: light information surface, dark hero-art stage preserves the globe. */
.home-page .hero { background: linear-gradient(135deg, #ffffff, #eef7fa); }
.home-page .star-field {
  background:
    radial-gradient(circle at 72% 34%, rgba(36,177,224,.13), transparent 30rem),
    radial-gradient(circle at 38% 18%, rgba(125,95,235,.07), transparent 17rem),
    linear-gradient(180deg, rgba(255,255,255,.18), rgba(221,240,247,.38));
}
.home-page .hero-art {
  border-radius: 30px;
  background: linear-gradient(145deg, #061b31, #0a4b68);
  box-shadow: inset 0 0 0 1px rgba(30,154,199,.18), 0 22px 60px rgba(33,104,136,.16);
}
.home-page .hero-copy h1 span:first-child { color: #159d79; text-shadow: none; }
.home-page .hero-copy h1 span:last-child { color: #16a980; text-shadow: 0 8px 30px rgba(14,167,124,.12); }
.home-page .hero-copy .hero-quote,
.home-page .hero-copy .hero-subline,
.home-page .coin-title small { color: var(--light-ink); text-shadow: none; }
.home-page .coin-title span { color: #138db5; text-shadow: 0 5px 22px rgba(19,141,181,.16); }
.home-page .metrics,
.home-page .product-hub-card,
.home-page .section-card { background: rgba(255,255,255,.9); color: var(--light-ink); }
.home-page .feature-pills span { color: #28546a; background: rgba(14,167,124,.07); border-color: rgba(14,167,124,.18); }
.home-page .metric small,
.home-page .metric em { color: #4f6879; }
.home-page .metric strong { color: #102536; }

/* These homepage bands intentionally keep their original navy surface.
   Give every text role an explicit light-on-dark color instead of inheriting
   the global light-theme ink. */
.home-page .live-operations,
.home-page .product-hub,
.home-page .transmission,
.home-page .business-structure,
.home-page .token-dashboard,
.home-page .community-feed,
.home-page .roadmap,
.home-page .partners,
.home-page .global-alliance {
  color: #f4fbff;
}
.home-page .live-operations h2,
.home-page .product-hub h2,
.home-page .transmission h2,
.home-page .business-structure h2,
.home-page .token-dashboard h2,
.home-page .community-feed h2,
.home-page .roadmap h2,
.home-page .partners h2,
.home-page .global-alliance h2 { color: #f4fbff; }
.home-page .live-operations p,
.home-page .product-hub > p,
.home-page .transmission-copy > p:not(.eyebrow),
.home-page .business-structure > p,
.home-page .token-dashboard > p,
.home-page .community-feed > p,
.home-page .roadmap > p,
.home-page .partners > p,
.home-page .global-alliance > p { color: #c5d8e3; }
.home-page .live-operations .section-status,
.home-page .product-hub .section-status { color: #dfffa8; }
.home-page .product-hub-card { color: #14283a; }
.home-page .product-hub-card h3 { color: #102536; }
.home-page .product-hub-card p { color: #526c7d; }
.home-page .product-hub-card b { color: #087e99; }
.home-page .product-hub-card small { color: #28758e; }
.home-page .product-hub-note { color: #adc5d2 !important; }

/* IDO uses the same light shell while keeping its NFT/orb art vivid. */
.presale-page .presale-tabs { background: rgba(255,255,255,.94); border-color: var(--light-line); }
.presale-page .presale-tab { color: var(--light-muted); background: #f6fafc; border-color: var(--light-line); }
.presale-page .presale-tab.is-active { color: #08263b; }
.presale-page .hero-orb { box-shadow: 0 0 0 14px rgba(19,141,181,.05), 0 0 80px rgba(111,77,255,.18); }

/* Portal pages use navy feature panels inside the light shell. */
.portal-page .portal-hero,
.portal-page .portal-section,
.portal-page .playground-showcase,
.portal-page .task-growth-card,
.portal-page .today-reward-card,
.portal-page .quest-progress-card {
  color: #f3fbff;
}
.portal-page .portal-hero h1,
.portal-page .portal-section h2,
.portal-page .playground-showcase h2,
.portal-page .task-growth-card h2,
.portal-page .today-reward-card h2,
.portal-page .quest-progress-card h2 { color: #f3fbff; }
.portal-page .portal-hero-copy > p:not(.portal-kicker),
.portal-page .portal-section-head p,
.portal-page .portal-section > p,
.portal-page .playground-showcase > p,
.portal-page .task-growth-card p,
.portal-page .today-reward-card p,
.portal-page .quest-progress-card p { color: #c9dce6; }
.portal-page .portal-summary-card,
.portal-page .playground-card { color: #eaf7fc; }
.portal-page .portal-summary-card small,
.portal-page .portal-summary-card span,
.portal-page .portal-summary-card p,
.portal-page .playground-card p { color: #9db7c5; }
.portal-page .portal-summary-card strong,
.portal-page .playground-card h3 { color: #f3fbff; }
.portal-page .playground-card small { color: #62dff5; }
.portal-page .playground-card b { color: #b9ff65; }

/* Light profile/records panels need dark ink, while their embedded dashboard
   cards remain navy and use the light-on-dark rules above. */
.my-page .profile-card,
.my-page .profile-card h1,
.my-page .profile-card p,
.my-page .profile-card small,
.my-page .my-settings-panel { color: var(--light-ink); }
.my-page .profile-card p,
.my-page .profile-card small { color: var(--light-muted); }

/* IDO white command panels: never use the original pale-cyan-on-white roles. */
.presale-page .presale-command-center,
.presale-page .presale-command-center h2,
.presale-page .presale-command-center p,
.presale-page .presale-command-center span { color: var(--light-ink); }
.presale-page .presale-command-center .step-title,
.presale-page .presale-command-center .step-copy { color: #244b60; }
.presale-page .field-label,
.presale-page .consent-line,
.presale-page .field-hint { color: #3d5c6c; }
.presale-page .presale-hero h1 { color: #14283a; }

/* Academy cards are light in the product shell; override its original
   low-opacity white text so article labels stay readable. */
.academy-page .academy-section,
.academy-page .article-card,
.academy-page .featured-main,
.academy-page .featured-small,
.academy-page .path-step { color: var(--light-ink); }
.academy-page .academy-section p,
.academy-page .article-card p,
.academy-page .featured-small p,
.academy-page .path-step p { color: #526c7d; }
.academy-page .article-card h3,
.academy-page .featured-main h2,
.academy-page .featured-small h3,
.academy-page .path-step h3 { color: #14283a; }

/* Admin screens are intentionally light too, with stronger contrast for tables. */
.admin-presale-page,
.task-admin-page { color: var(--light-ink); background: var(--light-bg); }
.admin-presale-page .admin-shell,
.task-admin-page .admin-shell,
.admin-presale-page .admin-card,
.task-admin-page .task-admin-card,
.task-admin-page .task-admin-table-wrap { background: var(--light-surface); border-color: var(--light-line); box-shadow: var(--light-shadow); }



/* ==========================================================================
   Homepage light theme — comprehensive override.
   Every content section below the hero becomes a white/light card, and all
   nested cards/panels are flipped to readable dark-on-light surfaces.
   ========================================================================== */

/* All homepage content sections become light cards. */
.home-page .metrics,
.home-page .live-operations,
.home-page .product-hub,
.home-page .transmission,
.home-page .logo-showcase,
.home-page .waitlist-section,
.home-page .genesis-overview,
.home-page .genesis-stages,
.home-page .guardian-section,
.home-page .genesis-value-path,
.home-page .referral-settlement,
.home-page .nft-release,
.home-page .connection,
.home-page .business-flywheel,
.home-page .dashboard,
.home-page .token-allocation-section,
.home-page .transaction-tax-section,
.home-page .partners,
.home-page .about-grid,
.home-page .roadmap,
.home-page .platform-modules,
.home-page .docs-section,
.home-page .risk-section {
  color: var(--light-ink);
  background: var(--light-surface);
  border: 1px solid var(--light-line);
  border-radius: 24px;
  box-shadow: var(--light-shadow);
  padding: 32px 28px;
}

/* Keep the marquee/logo rails readable on light. */
.home-page .logo-rail {
  background: linear-gradient(90deg, rgba(20, 40, 58, 0.05), rgba(20, 40, 58, 0.08));
  border-color: var(--light-line);
}

/* Universal headings / copy inside homepage sections. */
.home-page .section h2,
.home-page .section h3,
.home-page .section h1,
.home-page .section strong,
.home-page .section b,
.home-page .section dt {
  color: var(--light-ink);
  text-shadow: none;
}

.home-page .section p,
.home-page .section small,
.home-page .section .section-head a,
.home-page .section dd,
.home-page .section li,
.home-page .live-operations-intro { color: #3d5c6c; }

.home-page .section .product-hub-intro,
.home-page .section .partner-disclaimer,
.home-page .section .allocation-intro,
.home-page .section .tax-risk-note,
.home-page .section .settlement-note,
.home-page .section .rule-warning,
.home-page .section .path-intro,
.home-page .section .product-hub-note,
.home-page .section .nft-copy p,
.home-page .section .waitlist-copy > p {
  color: var(--light-muted);
}

/* Eyebrow tags: gold/red gradient so important titles pop. */
.home-page .section .eyebrow {
  color: #fff;
  background: linear-gradient(135deg, #f59e0b, #ef4444);
  border-color: rgba(239, 68, 68, 0.28);
  box-shadow: 0 6px 18px rgba(245, 158, 11, 0.18);
}

/* Draft badges / section status pills. */
.home-page .section .draft-badge,
.home-page .section .section-status {
  color: #3d5c6c;
  background: #f1f7fa;
  border: 1px solid #cfe2e9;
}

/* Default card surface used by most inner articles. */
.home-page .section article,
.home-page .section .metric,
.home-page .section .product-hub-card,
.home-page .section .connect-card,
.home-page .section .flywheel-track article,
.home-page .section .participation-paths article,
.home-page .section .market-panel,
.home-page .section .social-panel,
.home-page .section .video-panel,
.home-page .section .allocation-item,
.home-page .section .allocation-total,
.home-page .section .tax-rate,
.home-page .section .tax-source,
.home-page .section .tax-destination-grid article,
.home-page .section .partner-row span,
.home-page .section .scene-row article,
.home-page .section .about-card,
.home-page .section .about-details article,
.home-page .section .module-card,
.home-page .section .docs-grid a,
.home-page .section .risk-entry-grid a,
.home-page .section .stage-grid article,
.home-page .section .guardian-grid article,
.home-page .section .qualification-flow li,
.home-page .section .value-role-grid article,
.home-page .section .settlement-node,
.home-page .section .genesis-dashboard article,
.home-page .section .genesis-progress-card,
.home-page .section .price-stages article,
.home-page .section .genesis-principles,
.home-page .section .waitlist-points span,
.home-page .section .safety-note {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}

.home-page .section article h3,
.home-page .section article h4,
.home-page .section article strong,
.home-page .section .metric strong,
.home-page .section .connect-card h3,
.home-page .section .module-card h3,
.home-page .section .docs-grid a strong {
  color: #102536;
}

.home-page .section article p,
.home-page .section article small,
.home-page .section article span:not(.allocation-rank):not(.eyebrow),
.home-page .section .metric small,
.home-page .section .metric em,
.home-page .section .connect-card p,
.home-page .section .module-card p,
.home-page .section .docs-grid a span,
.home-page .section .guardian-grid dt,
.home-page .section .guardian-grid dd {
  color: #526c7d;
}

/* Metrics strip. */
.home-page .metrics { padding: 22px 28px; }
.home-page .metric { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .metric small { color: #60788a; }
.home-page .metric strong { color: #102536; }
.home-page .metric em { color: #8aa0ad; }
.home-page .metric-icon { color: #0ea77c; }

/* Live operations chips. */
.home-page .product-status-chip {
  color: #102536;
  background: #f1f7fa;
  border-color: #cfe2e9;
}
.home-page .product-status-chip .status-live { color: #15803d !important; }
.home-page .product-status-chip .status-preview { color: #b45309 !important; }
.home-page .product-status-chip .status-chain { color: #0e7490 !important; }
.home-page .product-status-chip .status-disabled { color: #64748b !important; }

/* Product hub. */
.home-page .product-hub {
  background:
    radial-gradient(circle at 100% 0%, rgba(14, 167, 124, 0.06), transparent 24rem),
    linear-gradient(145deg, #ffffff, #f8fbfd);
}
.home-page .product-hub::before { color: rgba(17, 139, 179, 0.045); }
.home-page .product-hub-card {
  background: #ffffff;
  border-color: var(--light-line);
  box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08);
}
.home-page .product-hub-card:hover,
.home-page .product-hub-card:focus-visible { background: #ffffff; border-color: #b8d4de; }
.home-page .product-hub-card h3 { color: #102536; }
.home-page .product-hub-card p { color: #526c7d; }
.home-page .product-hub-card b { color: #087e99; }
.home-page .product-hub-card small { color: #8aa0ad; }
.home-page .product-hub-icon { color: #0ea77c; background: rgba(14, 167, 124, 0.08); border-color: rgba(14, 167, 124, 0.22); }
.home-page .product-hub-card-ido .product-hub-icon { color: #16a34a; background: rgba(22, 163, 74, 0.08); border-color: rgba(22, 163, 74, 0.22); }
.home-page .product-hub-card-quest .product-hub-icon { color: #4f46e5; background: rgba(79, 70, 229, 0.08); border-color: rgba(79, 70, 229, 0.22); }
.home-page .product-hub-card-discover .product-hub-icon { color: #0891b2; background: rgba(8, 145, 178, 0.08); border-color: rgba(8, 145, 178, 0.22); }
.home-page .product-hub-card-academy .product-hub-icon { color: #d97706; background: rgba(217, 119, 6, 0.08); border-color: rgba(217, 119, 6, 0.22); }
.home-page .product-hub-card-my .product-hub-icon { color: #7c3aed; background: rgba(124, 58, 237, 0.08); border-color: rgba(124, 58, 237, 0.22); }
.home-page .product-hub-note span { color: #0ea77c; text-shadow: none; }

/* Transmission / business structure. */
.home-page .transmission-actions span { color: var(--light-ink); background: #ffffff; border-color: var(--light-line); }
.home-page .transmission-actions span:nth-child(even) { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .connect-card { background: #ffffff; }
.home-page .connect-card span { color: #fff; }
.home-page .connect-card.green span { background: linear-gradient(135deg, #16a34a, #0ea77c); }
.home-page .connect-card.blue span { background: linear-gradient(135deg, #0891b2, #3b82f6); }
.home-page .connect-card.violet span { background: linear-gradient(135deg, #7c3aed, #a855f7); }
.home-page .connect-card.orange span { background: linear-gradient(135deg, #d97706, #f59e0b); }
.home-page .connect-card h3 { color: #102536; }
.home-page .connect-card p { color: #526c7d; }
.home-page .connection .section-head a { color: var(--light-cyan); }

/* Waitlist. */
.home-page .waitlist-copy { background: transparent; border: 0; box-shadow: none; }
.home-page .waitlist-copy h2 { color: var(--light-ink); }
.home-page .waitlist-points span { color: var(--light-ink); background: #ffffff; border: 1px solid var(--light-line); }
.home-page .safety-note { background: rgba(14, 167, 124, 0.08); border-color: rgba(14, 167, 124, 0.18); }
.home-page .safety-note strong { color: #0ea77c; }
.home-page .waitlist-form { color: var(--light-ink); background: #ffffff; border: 1px solid var(--light-line); box-shadow: var(--light-shadow); }
.home-page .waitlist-form label > span { color: #3d5c6c; }
.home-page .waitlist-form input { color: var(--light-ink); background: var(--light-surface-2); border-color: var(--light-line); }
.home-page .waitlist-form input::placeholder { color: #8aa0ad; }
.home-page .waitlist-form .field-note { color: #8aa0ad; }
.home-page .waitlist-form .waitlist-consent span { color: #526c7d; }
.home-page .waitlist-submit { color: #061019; background: linear-gradient(135deg, #9bff14, #1ee0b8); }

/* Genesis sections. */
.home-page .genesis-principles { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .genesis-principles strong { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .genesis-principles p { color: #526c7d; }
.home-page .genesis-dashboard article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .genesis-dashboard article small { color: #8aa0ad; }
.home-page .genesis-dashboard article strong { color: #102536; }
.home-page .genesis-dashboard article span { color: #526c7d; }
.home-page .genesis-progress-card { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .genesis-progress-card .progress-copy span { color: #8aa0ad; }
.home-page .genesis-progress-card .progress-copy strong { color: #102536; }
.home-page .genesis-progress-card .progress-copy small { color: #0ea77c; }
.home-page .price-stages article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .price-stages article span { color: #8aa0ad; }
.home-page .price-stages article strong { color: #102536; }
.home-page .price-stages article small { color: #0ea77c; }
.home-page .stage-grid article { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .stage-grid article > span { color: #fff; background: linear-gradient(135deg, #f59e0b, #ef4444); }
.home-page .stage-grid article h3 { color: #102536; }
.home-page .stage-grid article strong { color: #0ea77c; }
.home-page .stage-grid article p { color: #526c7d; }
.home-page .guardian-grid article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .guardian-grid article > span { color: #fff; background: linear-gradient(135deg, #f59e0b, #ef4444); }
.home-page .guardian-grid h3 { color: #102536; }
.home-page .guardian-grid dt { color: #8aa0ad; }
.home-page .guardian-grid dd { color: #102536; font-weight: 800; }
.home-page .qualification-flow li { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .qualification-flow li > span { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .qualification-flow li small { color: #8aa0ad; }
.home-page .qualification-flow li h3 { color: #102536; }
.home-page .qualification-flow li p { color: #526c7d; }
.home-page .value-role-grid article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .value-role-grid article > span { color: #0ea77c; background: rgba(14, 167, 124, 0.08); border: 1px solid rgba(14, 167, 124, 0.18); }

/* Referral settlement. */
.home-page .settlement-node { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .settlement-node small { color: #8aa0ad; }
.home-page .settlement-node strong { color: #102536; }
.home-page .settlement-node p { color: #526c7d; }
.home-page .settlement-arrow { color: #0ea77c; }

/* NFT release. */
.home-page .nft-release { display: grid; gap: 28px; }
.home-page .nft-copy { background: transparent; border: 0; box-shadow: none; }
.home-page .nft-copy h2 { color: var(--light-ink); }
.home-page .nft-copy p { color: var(--light-muted); }
.home-page .nft-copy ul li { color: #526c7d; }

/* Flywheel. */
.home-page .flywheel-track article { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .flywheel-track article > span { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .flywheel-track article h3 { color: #102536; }
.home-page .flywheel-track article p { color: #526c7d; }
.home-page .participation-paths article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .participation-paths article > strong { color: #0ea77c; }
.home-page .participation-paths article h3 { color: #102536; }
.home-page .participation-paths article p { color: #526c7d; }

/* Dashboard / token / feed / video. */
.home-page .dashboard { display: grid; gap: 18px; }
.home-page .market-panel,
.home-page .social-panel,
.home-page .video-panel { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .panel-title span { color: #102536; }
.home-page .panel-title small { color: #8aa0ad; }
.home-page .price-row strong { color: #0ea77c; }
.home-page .price-row span { color: #8aa0ad; }
.home-page .allocation-bars i { background: linear-gradient(180deg, #0ea77c, #118bb3); }
.home-page .token-list dt { color: #526c7d; }
.home-page .token-list dd { color: #102536; font-weight: 800; }
.home-page .feed-item { border-color: var(--light-line); }
.home-page .feed-item b { color: #102536; }
.home-page .feed-item p { color: #526c7d; }
.home-page .feed-item time { color: #8aa0ad; background: rgba(14, 167, 124, 0.08); }
.home-page .feed-more { color: var(--light-ink); background: #ffffff; border-color: #bfd3dc; }
.home-page .video-category-list span { color: #526c7d; background: #f1f7fa; border-color: #cfe2e9; }
.home-page .wide-action { color: #061019; background: linear-gradient(135deg, #9bff14, #1ee0b8); }

/* Token allocation. */
.home-page .allocation-item { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .allocation-item .allocation-rank { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .allocation-item h3 { color: #102536; }
.home-page .allocation-item p { color: #526c7d; }
.home-page .allocation-item strong { color: #0ea77c; }
.home-page .allocation-total { background: linear-gradient(135deg, rgba(14, 167, 124, 0.08), rgba(17, 139, 179, 0.08)); border: 1px solid rgba(14, 167, 124, 0.18); }
.home-page .allocation-total span { color: #8aa0ad; }
.home-page .allocation-total strong { color: #102536; }
.home-page .allocation-total small { color: #526c7d; }

/* Transaction tax. */
.home-page .tax-rate { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .tax-rate small { color: #8aa0ad; }
.home-page .tax-rate strong { color: #102536; }
.home-page .tax-rate p { color: #526c7d; }
.home-page .buy-tax strong { color: #16a34a; }
.home-page .sell-tax strong { color: #ef4444; }
.home-page .tax-source { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .tax-source span { color: #8aa0ad; }
.home-page .tax-source strong { color: #102536; }
.home-page .tax-source small { color: #526c7d; }
.home-page .tax-flow-arrow { color: #0ea77c; }
.home-page .tax-destination-grid article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .tax-destination-grid article strong { color: #0ea77c; }
.home-page .tax-destination-grid article h3 { color: #102536; }
.home-page .tax-destination-grid article p { color: #526c7d; }

/* Partners. */
.home-page .partner-row span { color: var(--light-ink); background: #ffffff; border: 1px solid var(--light-line); }
.home-page .partner-row strong { color: #102536; }
.home-page .scene-row article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .scene-row article b { color: #102536; }

/* About. */
.home-page .about-card { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .about-card h3 { color: #102536; }
.home-page .about-card p { color: #526c7d; }
.home-page .about-details article { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .about-details article > span { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .about-details article h3 { color: #102536; }
.home-page .about-details article p { color: #526c7d; }

/* Roadmap. */
.home-page .roadmap-track article { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .roadmap-track article > span { color: #fff; background: linear-gradient(135deg, #f59e0b, #ef4444); }
.home-page .roadmap-track article h3 { color: #102536; }
.home-page .roadmap-track article p { color: #526c7d; }
.home-page .roadmap-track article::before { background: linear-gradient(180deg, #0ea77c, #118bb3); }

/* Platform modules. */
.home-page .module-card { background: #ffffff; border: 1px solid var(--light-line); box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08); }
.home-page .module-card > span { color: #fff; background: linear-gradient(135deg, #0ea77c, #118bb3); }
.home-page .module-card h3 { color: #102536; }
.home-page .module-card p { color: #526c7d; }
.home-page .module-card b { color: #087e99; }

/* Docs & risk. */
.home-page .docs-grid a { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .docs-grid a strong { color: #102536; }
.home-page .docs-grid a span { color: #8aa0ad; background: rgba(14, 167, 124, 0.08); }
.home-page .risk-copy { background: transparent; border: 0; box-shadow: none; }
.home-page .risk-copy p { color: #526c7d; }
.home-page .risk-entry-grid a { background: #ffffff; border: 1px solid var(--light-line); }
.home-page .risk-entry-grid a strong { color: #102536; }
.home-page .risk-entry-grid a span { color: #0ea77c; }

/* Marquee strip between hero and metrics. */
.home-page .meme-marquee {
  background:
    linear-gradient(90deg, rgba(14, 167, 124, 0.08), rgba(17, 139, 179, 0.06), rgba(124, 58, 237, 0.08));
  border-color: rgba(14, 167, 124, 0.18);
}
.home-page .meme-track span {
  color: #102536;
  text-shadow: none;
}
.home-page .meme-track span::before { background: #0ea77c; }

/* Safety note in waitlist section. */
.home-page .safety-note {
  color: #3d5c6c;
  background: rgba(14, 167, 124, 0.08);
  border: 1px solid rgba(14, 167, 124, 0.18);
}
.home-page .safety-note strong { color: #0ea77c; }
.home-page .safety-note span { color: #526c7d; }

/* Footer on homepage. */
.home-page .footer {
  color: var(--light-ink);
  background: var(--light-surface);
  border-top: 1px solid var(--light-line);
  border-radius: 24px 24px 0 0;
}
.home-page .footer .brand-copy small { color: #526c7d; }
.home-page .footer-links a,
.home-page .social-links a { color: var(--light-ink); }
.home-page .social-links a {
  background: #ffffff;
  border-color: var(--light-line);
}
.home-page .footer-links a:hover { color: #0ea77c; }
.home-page .social-links a:hover { border-color: #0ea77c; background: #ffffff; }

/* Notification drawer — light theme. */
.notification-layer { background: rgba(20, 40, 58, 0.32); backdrop-filter: blur(8px); }
.notification-drawer {
  color: var(--light-ink);
  background: #ffffff;
  border-left: 1px solid var(--light-line);
  box-shadow: -20px 0 80px rgba(42, 82, 106, 0.18);
}
.notification-drawer-head h2 { color: var(--light-ink); }
.notification-close { color: #60788a; }
.notification-close:hover { color: #0ea77c; }
.notification-item {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}
.notification-item:hover {
  background: #f8fbfd;
  border-color: #b8d4de;
}
.notification-item.is-read { opacity: 0.72; }
.notification-item-copy small { color: #0ea77c; }
.notification-item-copy strong { color: #102536; }
.notification-item-copy span { color: #526c7d; }
.notification-item-arrow { color: #0ea77c; }
.notification-drawer-foot { border-top-color: var(--light-line); }
.notification-drawer-foot button,
.notification-drawer-foot a { color: #0ea77c; }
.notification-drawer-foot button:hover,
.notification-drawer-foot a:hover { color: #087e99; }

/* ==========================================================================
   Academy page — full light-theme override.
   ========================================================================== */

.academy-page {
  --academy-blue: #0e7490;
  --academy-mint: #0ea77c;
  --academy-lime: #65a30d;
  --academy-ink: #14283a;
  --academy-card: #ffffff;
  background:
    radial-gradient(circle at 76% 4%, rgba(14, 167, 124, 0.06), transparent 31rem),
    radial-gradient(circle at 10% 28%, rgba(17, 139, 179, 0.04), transparent 30rem),
    linear-gradient(180deg, #ffffff 0%, var(--light-bg) 48%, #edf5f8 100%);
}

.academy-page::before { opacity: 0.16; }

.academy-page .site-shell {
  background: rgba(255, 255, 255, 0.94);
}

/* Hero. */
.academy-page .academy-hero {
  border-bottom-color: var(--light-line);
}
.academy-page .academy-hero::before {
  background: radial-gradient(circle at 50% 50%, rgba(14, 167, 124, 0.12), rgba(17, 139, 179, 0.04) 42%, transparent 70%);
}
.academy-page .academy-hero::after { color: rgba(14, 167, 124, 0.045); }
.academy-page .academy-hero-grid {
  opacity: 0.22;
  background:
    linear-gradient(90deg, rgba(14, 167, 124, 0.08) 1px, transparent 1px),
    linear-gradient(0deg, rgba(17, 139, 179, 0.06) 1px, transparent 1px);
}

.academy-page .academy-kicker,
.academy-page .academy-section-head p,
.academy-page .security-kicker,
.academy-page .academy-cta p {
  color: #60788a;
}
.academy-page .academy-kicker span {
  color: #0ea77c;
  background: rgba(14, 167, 124, 0.08);
  border-color: rgba(14, 167, 124, 0.2);
}

.academy-page .academy-hero h1 { color: var(--light-ink); }
.academy-page .academy-hero h1 em {
  color: #0ea77c;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  text-shadow: none;
}

.academy-page .academy-intro { color: #3d5c6c; }

.academy-page .academy-search {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
  box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08);
}
.academy-page .academy-search:focus-within {
  border-color: rgba(14, 167, 124, 0.45);
  box-shadow: inset 0 0 0 1px rgba(14, 167, 124, 0.08), 0 0 28px rgba(14, 167, 124, 0.08);
}
.academy-page .academy-search .search-icon { color: #0ea77c; }
.academy-page .academy-search input { color: var(--light-ink); }
.academy-page .academy-search input::placeholder { color: #8aa0ad; }
.academy-page .search-shortcut {
  color: #8aa0ad;
  background: #f1f7fa;
  border-color: #cfe2e9;
}
.academy-page .search-clear {
  color: #60788a;
  background: #f1f7fa;
}
.academy-page .search-clear:hover { color: #0ea77c; background: #e8f5f1; }

.academy-page .hero-topic-links { color: #8aa0ad; }
.academy-page .hero-topic-links button { color: #526c7d; }
.academy-page .hero-topic-links button:hover { color: #0ea77c; }

.academy-page .academy-facts span { color: #60788a; }
.academy-page .academy-facts strong { color: var(--light-ink); }

.academy-page .learning-core {
  color: var(--light-ink);
  background: linear-gradient(145deg, #ffffff, #f1f7fa);
  border-color: var(--light-line);
  box-shadow: 0 22px 46px rgba(42, 82, 106, 0.1);
}
.academy-page .learning-core::before {
  background:
    linear-gradient(90deg, transparent 48%, rgba(14, 167, 124, 0.08) 50%, transparent 52%),
    linear-gradient(0deg, transparent 48%, rgba(17, 139, 179, 0.06) 50%, transparent 52%);
}
.academy-page .learning-core small,
.academy-page .learning-core p { color: #60788a; }
.academy-page .learning-core strong { color: var(--light-ink); }

.academy-page .floating-note {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
  box-shadow: 0 16px 36px rgba(42, 82, 106, 0.1);
}
.academy-page .floating-note b { color: var(--light-ink); }
.academy-page .floating-note small { color: #60788a; }

/* Topic rail. */
.academy-page .topic-rail {
  background: rgba(255, 255, 255, 0.92);
  border-bottom-color: var(--light-line);
}
.academy-page .topic-rail button { color: #526c7d; }
.academy-page .topic-rail button:hover,
.academy-page .topic-rail button.is-active {
  color: #0ea77c;
  background: rgba(14, 167, 124, 0.08);
}

/* Section headers. */
.academy-page .academy-section { border-top-color: var(--light-line); }
.academy-page .academy-section-head h2 { color: var(--light-ink); }
.academy-page .academy-section-head > a { color: #0ea77c; }
.academy-page .section-caption,
.academy-page .result-count { color: #8aa0ad; }

/* Featured / cards / path. */
.academy-page .featured-main,
.academy-page .featured-small,
.academy-page .path-step,
.academy-page .article-card,
.academy-page .security-button {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
  box-shadow: 0 8px 24px rgba(42, 82, 106, 0.08);
}
.academy-page .featured-main {
  background:
    radial-gradient(circle at 82% 22%, rgba(14, 167, 124, 0.08), transparent 26%),
    linear-gradient(140deg, #ffffff, #f8fbfd 62%, #f1f7fa);
}
.academy-page .featured-main:hover,
.academy-page .featured-small:hover,
.academy-page .path-step:hover,
.academy-page .article-card:hover,
.academy-page .security-button:hover {
  border-color: #b8d4de;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(42, 82, 106, 0.12);
}

.academy-page .featured-label {
  color: #15803d;
  background: rgba(22, 163, 74, 0.08);
  border-color: rgba(22, 163, 74, 0.2);
}
.academy-page .featured-main small,
.academy-page .featured-small small,
.academy-page .article-card > small { color: #0ea77c; }
.academy-page .featured-main h3,
.academy-page .featured-small h3,
.academy-page .article-card h3 { color: var(--light-ink); }
.academy-page .featured-main p,
.academy-page .article-card p { color: #526c7d; }
.academy-page .featured-main b { color: #0ea77c; }
.academy-page .featured-small > i { color: #8aa0ad; }
.academy-page .featured-signal { color: rgba(14, 167, 124, 0.12); }
.academy-page .featured-signal strong { color: rgba(22, 163, 74, 0.14); }

.academy-page .card-symbol,
.academy-page .article-icon {
  color: #fff;
  border-color: rgba(14, 167, 124, 0.18);
}
.academy-page .article-card > b {
  color: #8aa0ad;
  border-top-color: var(--light-line);
}
.academy-page .article-card > b i { color: #0ea77c; }

.academy-page .path-number { color: rgba(14, 167, 124, 0.14); }
.academy-page .path-step small { color: #0ea77c; }
.academy-page .path-step h3 { color: var(--light-ink); }
.academy-page .path-step p { color: #526c7d; }
.academy-page .path-step b { color: #60788a; }
.academy-page .path-step::after { color: rgba(14, 167, 124, 0.38); }

/* Category panel. */
.academy-page .category-panel {
  background: #ffffff;
  border-color: var(--light-line);
}
.academy-page .category-panel > strong { color: #8aa0ad; }
.academy-page .category-panel button { color: #526c7d; }
.academy-page .category-panel button b { color: #8aa0ad; }
.academy-page .category-panel button:hover,
.academy-page .category-panel button.is-active {
  color: #0ea77c;
  background: rgba(14, 167, 124, 0.08);
}
.academy-page .category-panel button.is-active b { color: #0ea77c; }

/* Empty state. */
.academy-page .library-empty {
  color: #60788a;
  background: #f8fbfd;
  border-color: var(--light-line);
}
.academy-page .library-empty > span { color: #0ea77c; }
.academy-page .library-empty h3 { color: var(--light-ink); }
.academy-page .library-empty button {
  color: #0ea77c;
  background: rgba(14, 167, 124, 0.08);
  border-color: rgba(14, 167, 124, 0.2);
}

/* Security section. */
.academy-page .security-copy h2 { color: var(--light-ink); }
.academy-page .security-copy > p:not(.security-kicker) { color: #526c7d; }
.academy-page .security-checks span {
  color: #3d5c6c;
  background: #ffffff;
  border-color: var(--light-line);
}
.academy-page .security-checks span::before { color: #0ea77c; }
.academy-page .security-button {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}
.academy-page .security-button:hover { border-color: #b8d4de; background: #f8fbfd; }

/* CTA. */
.academy-page .academy-cta {
  background:
    radial-gradient(circle at 90% 30%, rgba(14, 167, 124, 0.08), transparent 28%),
    linear-gradient(135deg, #ffffff, #f1f7fa);
  border-color: var(--light-line);
}
.academy-page .academy-cta h2 { color: var(--light-ink); }
.academy-page .academy-cta span { color: #526c7d; }
.academy-page .academy-cta-actions a {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}
.academy-page .academy-cta-actions a:hover { border-color: #b8d4de; background: #f8fbfd; }
.academy-page .academy-cta-actions .cta-primary {
  color: #061019;
  background: linear-gradient(90deg, #9bff14, #1ee0b8);
  border-color: transparent;
}

/* Footer. */
.academy-page .academy-footer { border-top-color: var(--light-line); }
.academy-page .academy-disclaimer { color: #8aa0ad; border-top-color: var(--light-line); }

/* Article modal. */
.academy-page .academy-article-layer { background: rgba(20, 40, 58, 0.32); }
.academy-page .academy-article-modal {
  color: var(--light-ink);
  background:
    radial-gradient(circle at 92% 4%, rgba(14, 167, 124, 0.06), transparent 26rem),
    #ffffff;
  border-color: var(--light-line);
  box-shadow: 0 35px 100px rgba(42, 82, 106, 0.18);
}
.academy-page .article-modal-close {
  color: #60788a;
  background: #f1f7fa;
  border-color: var(--light-line);
}
.academy-page .article-modal-close:hover { color: #0ea77c; }
.academy-page .article-modal-progress { background: rgba(14, 167, 124, 0.08); }
.academy-page .academy-article-modal > header { border-bottom-color: var(--light-line); }
.academy-page .article-modal-category {
  color: #0ea77c;
  background: rgba(14, 167, 124, 0.08);
  border-color: rgba(14, 167, 124, 0.2);
}
.academy-page .academy-article-modal h2 { color: var(--light-ink); }
.academy-page .article-modal-summary { color: #526c7d; }
.academy-page .article-modal-meta { color: #8aa0ad; }
.academy-page .article-modal-body h3 { color: var(--light-ink); }
.academy-page .article-modal-body p,
.academy-page .article-modal-body li { color: #526c7d; }
.academy-page .article-callout {
  color: #3d5c6c;
  background: rgba(14, 167, 124, 0.06);
  border-left-color: #0ea77c;
}
.academy-page .academy-article-modal > footer {
  background: #f8fbfd;
  border-top-color: var(--light-line);
}
.academy-page .academy-article-modal > footer p { color: #8aa0ad; }
.academy-page .article-modal-done {
  color: #061019;
  background: linear-gradient(90deg, #9bff14, #1ee0b8);
}

@media (max-width: 760px) {
  .reference-layout .site-shell,
  .presale-shell { border-inline: 0; }
  .home-page .hero { background: #f4f9fb; }
}

/* ==========================================================================
   Portal pages — comprehensive light-theme override.
   All feature panels, cards, dashboards and lists become light surfaces
   with dark ink so every interactive element is readable.
   ========================================================================== */

/* Primary content surfaces. */
.portal-page .portal-hero,
.portal-page .portal-summary-card,
.portal-page .portal-section,
.portal-page .portal-card,
.portal-page .playground-showcase,
.portal-page .playground-card,
.portal-page .quest-feature-group,
.portal-page .quest-feature-card,
.portal-page .quest-feature-extension,
.portal-page .task-growth-card,
.portal-page .today-reward-card,
.portal-page .quest-progress-card,
.portal-page .checkin-card,
.portal-page .quest-row,
.portal-page .discover-feature,
.portal-page .discover-feed-row,
.portal-page .alliance-path article,
.portal-page .profile-card,
.portal-page .asset-row,
.portal-page .docs-sidebar,
.portal-page .doc-item,
.portal-page .discover-product-switcher,
.portal-page .discover-product-card,
.portal-page .my-passport,
.portal-page .my-passport-grid > article,
.portal-page .task-dialog,
.portal-page .portal-drawer,
.portal-page .portal-drawer-header,
.portal-page .drawer-list li,
.portal-page .drawer-notice,
.portal-page .reward-ledger-preview > span,
.portal-page .reward-ledger-row,
.portal-page .quest-empty,
.portal-page .portal-empty,
.portal-page .theme-switch button {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: var(--light-line);
  box-shadow: var(--light-shadow);
}

/* Inputs, buttons and small controls. */
.portal-page .portal-search,
.portal-page .portal-tabs button,
.portal-page .quest-feature-extension-list button,
.portal-page .quest-row-action,
.portal-page .quest-row-status,
.portal-page .quest-reward-tags span,
.portal-page .profile-meta span,
.portal-page .menu-row,
.portal-page .docs-sidebar button,
.portal-page .discover-product-tabs button,
.portal-page .task-dialog-head button,
.portal-page .task-dialog-card input,
.portal-page .task-dialog-card textarea,
.portal-page .checkin-days span,
.portal-page .task-growth-meta span,
.portal-page .today-reward-grid span,
.portal-page .quest-progress-stats span,
.portal-page .portal-header-button,
.portal-page .portal-wallet-button,
.portal-page .portal-secondary {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: var(--light-line);
}

/* Headings and strong values. */
.portal-page .portal-hero h1,
.portal-page .portal-section-head h2,
.portal-page .portal-card h3,
.portal-page .portal-summary-card strong,
.portal-page .playground-showcase h2,
.portal-page .playground-card h3,
.portal-page .playground-card b,
.portal-page .quest-feature-group-head h3,
.portal-page .quest-feature-copy strong,
.portal-page .task-growth-card h2,
.portal-page .today-reward-card h2,
.portal-page .quest-progress-card h2,
.portal-page .checkin-heading h2,
.portal-page .quest-row-copy strong,
.portal-page .discover-feature h2,
.portal-page .discover-feature h3,
.portal-page .discover-feature b,
.portal-page .discover-feed-row strong,
.portal-page .alliance-path h3,
.portal-page .profile-copy h1,
.portal-page .asset-row strong,
.portal-page .menu-row strong,
.portal-page .doc-item strong,
.portal-page .docs-group-head h2,
.portal-page .discover-product-card h3,
.portal-page .discover-product-card b,
.portal-page .my-passport-grid article h3,
.portal-page .my-passport-grid article strong,
.portal-page .passport-meta strong,
.portal-page .growth-metrics strong,
.portal-page .task-dialog-head h2,
.portal-page .portal-drawer-body h2,
.portal-page .checkin-days span b,
.portal-page .task-growth-meta strong,
.portal-page .today-reward-grid strong,
.portal-page .quest-progress-stats strong,
.portal-page .portal-summary-card:first-child strong,
.portal-page .task-level-row b,
.portal-page .reward-ledger-row strong,
.portal-page .menu-row > b {
  color: #102536;
}

/* Body and muted text. */
.portal-page .portal-hero-copy > p:not(.portal-kicker),
.portal-page .portal-section-head p,
.portal-page .portal-section > p,
.portal-page .portal-card p,
.portal-page .portal-card small,
.portal-page .portal-summary-card small,
.portal-page .portal-summary-card span,
.portal-page .playground-showcase > p,
.portal-page .playground-card p,
.portal-page .playground-card small,
.portal-page .quest-feature-group-head small,
.portal-page .quest-feature-copy small,
.portal-page .quest-feature-card em,
.portal-page .quest-feature-extension > div:first-child span,
.portal-page .quest-feature-extension > div:first-child strong,
.portal-page .task-growth-card p,
.portal-page .today-reward-card p,
.portal-page .quest-progress-card p,
.portal-page .checkin-heading span,
.portal-page .quest-row-copy small,
.portal-page .quest-row-status,
.portal-page .discover-feature p,
.portal-page .discover-feed-row small,
.portal-page .discover-feed-row time,
.portal-page .alliance-path p,
.portal-page .profile-card p,
.portal-page .profile-card small,
.portal-page .profile-address,
.portal-page .profile-meta span,
.portal-page .asset-row small,
.portal-page .menu-row small,
.portal-page .docs-group-head p,
.portal-page .doc-item small,
.portal-page .discover-product-card p,
.portal-page .discover-product-card small,
.portal-page .my-passport-grid article p,
.portal-page .my-passport-grid article small,
.portal-page .passport-meta,
.portal-page .passport-identity-card > p,
.portal-page .passport-world-card p,
.portal-page .passport-ai-card p,
.portal-page .growth-metrics span,
.portal-page .task-dialog-card > p,
.portal-page .task-dialog-card label > span,
.portal-page .portal-drawer-body > p,
.portal-page .drawer-list li,
.portal-page .portal-empty,
.portal-page .quest-empty,
.portal-page .task-auth-status,
.portal-page .task-level-row,
.portal-page .reward-ledger-row,
.portal-page .reward-ledger-preview > span {
  color: #526c7d;
}

/* Accent / interactive colors. */
.portal-page .portal-kicker,
.portal-page .portal-section-head p,
.portal-page .task-card-label,
.portal-page .quest-feature-group-head > span,
.portal-page .quest-feature-card.is-ready em,
.portal-page .quest-row-action,
.portal-page .discover-feature > span,
.portal-page .discover-product-card small,
.portal-page .discover-product-tabs button.is-active,
.portal-page .discover-product-tabs button:hover,
.portal-page .portal-tabs button.is-active,
.portal-page .portal-tabs button:hover,
.portal-page .docs-sidebar button.is-active,
.portal-page .docs-sidebar button:hover,
.portal-page .theme-switch button.is-active,
.portal-page .checkin-days span.is-today,
.portal-page .checkin-days span.is-complete,
.portal-page .quest-reward-tags span,
.portal-page .quest-row-status.status-completed,
.portal-page .quest-row-status.status-claimed {
  color: #0ea77c;
}

/* Primary CTA buttons keep gradient. */
.portal-page .portal-primary,
.portal-page .portal-wallet-button.is-connected {
  color: #061019;
  background: linear-gradient(90deg, #65e9ff, #a8ff6e);
  border-color: transparent;
}

/* Search bar. */
.portal-page .portal-search {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
  box-shadow: var(--light-shadow);
}
.portal-page .portal-search > span { color: var(--light-cyan); }
.portal-page .portal-search input { color: var(--light-ink); background: transparent; }
.portal-page .portal-search input::placeholder { color: #8aa0ad; }
.portal-page .portal-search button { color: #526c7d; background: #f1f7fa; }

/* Hero gradient surface. */
.portal-page .portal-hero {
  background: linear-gradient(135deg, #ffffff, #f1f7fa);
}
.portal-page .portal-hero h1 em {
  color: #0ea77c;
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
}

/* Orbit art on light. */
.portal-page .portal-orbit {
  border-color: rgba(17, 139, 179, 0.22);
  box-shadow: 0 0 0 34px rgba(17, 139, 179, 0.04), 0 0 0 68px rgba(14, 167, 124, 0.03);
}
.portal-page .portal-orbit::before { background: var(--light-cyan); box-shadow: 0 0 18px var(--light-cyan); }
.portal-page .portal-orbit::after { background: var(--light-mint); box-shadow: 0 0 18px var(--light-mint); }
.portal-page .portal-orbit span {
  color: #061019;
  background: linear-gradient(135deg, #63e8ff, #a9ff68);
}

/* Icon badges keep dark-on-gradient. */
.portal-page .portal-card-icon,
.portal-page .portal-row-icon,
.portal-page .task-profile-avatar,
.portal-page .profile-avatar,
.portal-page .passport-avatar {
  color: #061923;
}

/* Footer. */
.portal-page footer,
.portal-page .footer {
  color: var(--light-ink);
  background: rgba(255,255,255,.96);
  border-color: var(--light-line);
  box-shadow: 0 -8px 24px rgba(42,82,106,.08);
}

/* ==========================================================================
   Presale / IDO pages — comprehensive light-theme override.
   Every panel, card, form and campaign surface flips to dark-on-light.
   ========================================================================== */

/* Primary content surfaces. */
.presale-page .presale-shell,
.presale-page .presale-topbar,
.presale-page .presale-tabs,
.presale-page .presale-hero,
.presale-page .tab-hero,
.presale-page .panel,
.presale-page .purchase-panel,
.presale-page .position-panel,
.presale-page .phase-card,
.presale-page .order-card,
.presale-page .nft-card,
.presale-page .nft-position-card,
.presale-page .release-card,
.presale-page .transfer-panel,
.presale-page .steps-grid article,
.presale-page .risk-box,
.presale-page .invite-campaign-hero,
.presale-page .invite-summary-strip article,
.presale-page .invite-mission-card,
.presale-page .invite-share-card,
.presale-page .invite-task-card,
.presale-page .invite-record-card,
.presale-page .invite-rules-panel,
.presale-page .ido-command-center,
.presale-page .digital-human-grid article,
.presale-page .invite-link-card,
.presale-page .invite-stats,
.presale-page .progress-panel,
.presale-page .reservation-form,
.presale-page .reservation-points,
.presale-page .delivery-card,
.presale-page .schedule-panel,
.presale-page .record-lookup-panel,
.presale-page .delivery-status-list article,
.presale-page .invite-reward-overview,
.presale-page .invite-reward-card,
.presale-page .invite-how-card,
.presale-page .invite-funnel-card,
.presale-page .invite-milestones article,
.presale-page .invite-sprint-callout,
.presale-page .invite-team-banner,
.presale-page .ido-stage,
.presale-page .invite-reward-row,
.presale-page .presale-mobile-nav {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: var(--light-line);
  box-shadow: var(--light-shadow);
}

/* Inputs, buttons and small controls. */
.presale-page .amount-input,
.presale-page .text-input,
.presale-page .wallet-state,
.presale-page .primary-action,
.presale-page .secondary-action,
.presale-page .presale-tab,
.presale-page .ido-payment-option,
.presale-page .invite-filter-bar button,
.presale-page .invite-stage-badge,
.presale-page .invite-reward-badge,
.presale-page .invite-channel-button,
.presale-page .invite-record-row,
.presale-page .invite-task-list article {
  color: var(--light-ink);
  background: var(--light-surface);
  border-color: var(--light-line);
}

/* Headings and strong values. */
.presale-page .tab-hero h1,
.presale-page .tab-hero h2,
.presale-page .presale-hero h1,
.presale-page .panel-heading h2,
.presale-page .purchase-panel h2,
.presale-page .position-panel h2,
.presale-page .phase-card strong,
.presale-page .order-card-heading strong,
.presale-page .order-details strong,
.presale-page .nft-card strong,
.presale-page .position-number,
.presale-page .position-meta strong,
.presale-page .release-row strong,
.presale-page .stat-row strong,
.presale-page .steps-grid h3,
.presale-page .risk-box strong,
.presale-page .invite-campaign-hero h1,
.presale-page .invite-hero-copy h2,
.presale-page .invite-section-heading h2,
.presale-page .invite-summary-strip strong,
.presale-page .invite-mission-card h2,
.presale-page .invite-share-card h2,
.presale-page .invite-task-card h2,
.presale-page .invite-record-card h2,
.presale-page .invite-rules-panel summary,
.presale-page .ido-command-center h2,
.presale-page .ido-stage strong,
.presale-page .digital-human-grid article strong,
.presale-page .invite-reward-overview > b,
.presale-page .invite-overview-stats strong,
.presale-page .invite-how-grid strong,
.presale-page .invite-funnel-list strong,
.presale-page .invite-funnel-list b,
.presale-page .invite-record-row > span:first-child,
.presale-page .delivery-title > span,
.presale-page .schedule-grid strong,
.presale-page .presale-brand strong {
  color: #102536;
}

/* Body and muted text. */
.presale-page .hero-lede,
.presale-page .tab-hero > p:last-child,
.presale-page .panel-heading small,
.presale-page .phase-card span,
.presale-page .field-label,
.presale-page .field-hint,
.presale-page .action-note,
.presale-page .consent-line,
.presale-page .consent-line span,
.presale-page .estimate-row,
.presale-page .wallet-state,
.presale-page .order-card-heading small,
.presale-page .order-details span,
.presale-page .nft-card small,
.presale-page .position-meta span,
.presale-page .position-number small,
.presale-page .release-row,
.presale-page .stat-row,
.presale-page .transfer-panel > p,
.presale-page .text-action,
.presale-page .steps-grid p,
.presale-page .risk-box p,
.presale-page .invite-hero-copy > p:not(.eyebrow):not(.invite-trust-line),
.presale-page .invite-section-copy,
.presale-page .invite-summary-strip span,
.presale-page .invite-summary-strip small,
.presale-page .invite-task-list small,
.presale-page .invite-record-row > span,
.presale-page .invite-record-row small,
.presale-page .invite-record-empty span,
.presale-page .invite-rules-panel p,
.presale-page .ido-stage small,
.presale-page .ido-payment-label,
.presale-page .ido-payment-note,
.presale-page .digital-human-grid article small,
.presale-page .invite-reward-overview > small,
.presale-page .invite-reward-overview > p,
.presale-page .invite-overview-stats span,
.presale-page .invite-how-grid small,
.presale-page .invite-funnel-list small,
.presale-page .invite-filter-bar button,
.presale-page .invite-stage-badge,
.presale-page .invite-reward-badge,
.presale-page .invite-reward-row > b,
.presale-page .presale-brand small,
.presale-page .back-link,
.presale-page .label-note,
.presale-page .invite-trust-line {
  color: #526c7d;
}

/* Accent colors. */
.presale-page .eyebrow,
.presale-page .status-pill,
.presale-page .draft-tag,
.presale-page .nft-chip,
.presale-page .estimate-row strong,
.presale-page .invite-activity-pill,
.presale-page .invite-count-badge strong,
.presale-page .invite-task-total,
.presale-page .invite-record-status,
.presale-page .invite-sprint-callout strong,
.presale-page .invite-team-banner > div > span,
.presale-page .ido-stage b,
.presale-page .ido-stage.is-active b,
.presale-page .ido-stage.is-done b,
.presale-page .invite-stage-effective,
.presale-page .invite-stage-pending,
.presale-page .invite-stage-invalid,
.presale-page .invite-reward-badge,
.presale-page .benefit-list li > span {
  color: #0ea77c;
}

/* Tab bar. */
.presale-page .presale-tabs {
  background: rgba(255,255,255,.94);
  border-color: var(--light-line);
}
.presale-page .presale-tab {
  color: #526c7d;
  background: #f1f7fa;
  border-color: var(--light-line);
  box-shadow: none;
}
.presale-page .presale-tab:hover,
.presale-page .presale-tab.is-active {
  color: #061019;
  background: linear-gradient(135deg, #9bff14, #1ee0b8);
  border-color: transparent;
}

/* Form controls. */
.presale-page .amount-input input,
.presale-page .text-input,
.presale-page .wallet-state {
  color: var(--light-ink);
  background: var(--light-surface-2);
}
.presale-page .amount-input:focus-within,
.presale-page .text-input:focus {
  border-color: var(--light-cyan);
  box-shadow: 0 0 0 3px rgba(17,139,179,.1);
}

/* Actions. */
.presale-page .primary-action {
  color: #061019;
  background: linear-gradient(135deg, #9bff14, #1ee0b8);
  border-color: transparent;
}
.presale-page .secondary-action {
  color: var(--light-ink);
  background: #f1f7fa;
  border-color: var(--light-line);
}
.presale-page .secondary-action:hover {
  background: #e8f5f1;
  border-color: #b8d4de;
}

/* Mobile bottom nav. */
.presale-page .presale-mobile-nav {
  color: var(--light-ink);
  background: rgba(255,255,255,.96);
  border-color: var(--light-line);
  box-shadow: 0 -8px 24px rgba(42,82,106,.08);
}
.presale-page .presale-mobile-nav a { color: #526c7d; }
.presale-page .presale-mobile-nav a.active { color: var(--light-cyan); background: rgba(17,139,179,.08); }

/* Hero orb. */
.presale-page .hero-orb {
  border-color: rgba(17, 139, 179, 0.25);
  background: radial-gradient(circle at 35% 25%, rgba(17, 139, 179, 0.18), transparent 28%), radial-gradient(circle, rgba(116, 87, 216, 0.18), rgba(240, 248, 252, 0.9) 66%);
}
.presale-page .hero-orb span { color: var(--light-cyan); }
.presale-page .hero-orb strong { color: #102536; text-shadow: none; }
.presale-page .hero-orb small { color: #526c7d; }

/* Invite campaign hero. */
.presale-page .invite-campaign-hero,
.presale-page .invite-exchange-hero {
  background: linear-gradient(135deg, #ffffff, #f1f7fa);
}
.presale-page .invite-goal-card {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}
.presale-page .invite-goal-card strong { color: #102536; }
.presale-page .invite-goal-card small { color: #0ea77c; }
.presale-page .invite-goal-card span { color: #526c7d; }
.presale-page .invite-boost-tag {
  color: var(--light-ink);
  background: #ffffff;
  border-color: var(--light-line);
}
.presale-page .invite-boost-tag strong { color: #0ea77c; }

/* IDO command center subtle gradient. */
.presale-page .ido-command-center {
  background: linear-gradient(135deg, #ffffff, #f8fbfd);
}
.presale-page .ido-payment-option.is-selected {
  color: #061019;
  background: rgba(14, 167, 124, 0.1);
  border-color: rgba(14, 167, 124, 0.35);
}
