﻿@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,600;8..60,700&display=swap");

html {
  color-scheme: dark;
}

/* Shared design tokens (Claude-inspired layout system) */
:root {
  --sidebar-w: 264px;
  --sidebar-w-collapsed: 0px;
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --radius-sm: 10px;
  --radius: 14px;
  --radius-lg: 20px;
}

/* ===== Dark theme (warm neutral canvas, gold brand accent) ===== */
html[data-theme="dark"] {
  --bg: #262624;
  --bg-soft: #1f1e1d;
  --sidebar-bg: #1c1b19;
  --card: #2f2e2b;
  --card-strong: #383732;
  --gold: #d7a642;
  --gold-light: #ecc66b;
  --accent: #d7a642;
  --accent-soft: rgba(215, 166, 66, 0.14);
  --bronze: #9f6b27;
  --ivory: #f5f4ef;
  --muted: #9d9b93;
  --green: #5cae7e;
  --red: #d2776a;
  --border: rgba(255, 255, 255, 0.09);
  --shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
  --page-bg: #262624;
  --surface: #2f2e2b;
  --surface-2: #1f1e1d;
  --surface-3: #34332f;
  --heading: #f5f4ef;
  --body-text: #e6e5df;
  --nav-text: #c9c7bf;
  --footer-note: #8a8881;
  --input-placeholder: #8a8881;
  --row-hover: rgba(255, 255, 255, 0.04);
  --line-soft: rgba(255, 255, 255, 0.06);
  --primary-text: #1b1205;
}

/* ===== Light theme (warm cream canvas, deep gold accent) ===== */
html[data-theme="light"] {
  color-scheme: light;
  --bg: #faf9f5;
  --bg-soft: #f0efe8;
  --sidebar-bg: #f0eee6;
  --card: #ffffff;
  --card-strong: #ffffff;
  --gold: #9a6a14;
  --gold-light: #7d5410;
  --accent: #9a6a14;
  --accent-soft: rgba(154, 106, 20, 0.1);
  --bronze: #7a4d16;
  --ivory: #232220;
  --muted: #75736b;
  --green: #2d7a4f;
  --red: #b6493c;
  --border: rgba(0, 0, 0, 0.1);
  --shadow: 0 10px 30px rgba(60, 50, 20, 0.1);
  --page-bg: #faf9f5;
  --surface: #ffffff;
  --surface-2: #f5f4ee;
  --surface-3: #f0efe8;
  --heading: #232220;
  --body-text: #3a3833;
  --nav-text: #4a4842;
  --footer-note: #6f6d65;
  --input-placeholder: #9a978c;
  --row-hover: rgba(0, 0, 0, 0.035);
  --line-soft: rgba(0, 0, 0, 0.07);
  --primary-text: #fffaf0;
}

body,
body[data-theme] {
  background: var(--page-bg) !important;
  color: var(--ivory) !important;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.navbar,
.footer {
  background: color-mix(in srgb, var(--bg) 84%, transparent) !important;
  border-color: var(--border) !important;
}

html[data-theme="light"] .navbar,
html[data-theme="light"] .footer {
  box-shadow: 0 12px 38px rgba(93, 66, 24, 0.08) !important;
}

.brand-name,
.eyebrow,
.blog-meta,
.nav-links a:hover,
.nav-links a.active,
.footer-link:hover,
.footer a.footer-link:hover,
[style*="var(--gold-light)"],
[style*="#f5d37a"],
[style*="#d7a642"] {
  color: var(--gold-light) !important;
}

.brand-tag,
.page-desc,
.metric span,
.blog-card p,
.soft-card p,
.article-body,
.discussion p,
.discussion-footer,
.form small,
.chat-item span,
.footer p,
.footer-link,
.footer a.footer-link,
th,
[style*="var(--muted)"],
[style*="#b8aa91"],
[style*="#c8b89b"],
[style*="#cfc0a5"],
[style*="#d7c7aa"],
[style*="#a9997c"],
[style*="#8f8168"] {
  color: var(--muted) !important;
}

h1,
h2,
h3,
.footer h3,
.chat-item strong,
.discussion h3,
.article-body h2,
[style*="#fff2d5"],
[style*="#fff3d4"],
[style*="#fff0ce"],
[style*="#fff1d0"],
[style*="#f5ead2"] {
  color: var(--heading) !important;
}

.nav-links {
  color: var(--nav-text) !important;
}

td,
.article-body p,
.bar-top,
.message.ai,
[style*="#f2e6ce"],
[style*="#e8d8bd"],
[style*="#e6d7bd"],
[style*="#d9c9ad"],
[style*="#dfd2b7"],
[style*="#e7d8bd"] {
  color: var(--body-text) !important;
}

.card,
.metric,
.soft-card,
.discussion,
.chat-item,
.message.ai,
.auth-tabs a,
.tag,
[class*="card"] {
  background: var(--surface) !important;
  border-color: var(--border) !important;
  color: var(--body-text) !important;
  box-shadow: var(--shadow) !important;
}

.soft-card,
.discussion,
.chat-item,
.auth-tabs a,
.tag {
  background: var(--surface-2) !important;
}

input,
select,
textarea {
  background: var(--surface-3) !important;
  border-color: var(--border) !important;
  color: var(--ivory) !important;
}

input::placeholder,
textarea::placeholder {
  color: var(--input-placeholder) !important;
}

.btn-ghost,
.btn-theme-toggle {
  background: var(--surface-2) !important;
  border-color: var(--border) !important;
  color: var(--ivory) !important;
}

.btn-ghost:hover,
.btn-theme-toggle:hover {
  background: color-mix(in srgb, var(--gold) 13%, transparent) !important;
  border-color: color-mix(in srgb, var(--gold) 38%, transparent) !important;
}

.btn-primary,
.auth-tabs a.active,
.message.user,
.avatar,
[style*="#1b1205"],
[style*="#1c1306"] {
  color: var(--primary-text) !important;
}

td,
th,
.footer-bottom,
.chat-input,
tbody td {
  border-color: var(--line-soft) !important;
}

tbody tr:hover {
  background: var(--row-hover) !important;
}

.score,
.positive {
  color: var(--green) !important;
}

.negative {
  color: var(--red) !important;
}

.score {
  background: color-mix(in srgb, var(--green) 12%, transparent) !important;
}

.chart-box {
  border-color: var(--border) !important;
  background: linear-gradient(to top, color-mix(in srgb, var(--green) 12%, transparent), transparent), repeating-linear-gradient(to right, transparent 0, transparent 65px, var(--line-soft) 66px), repeating-linear-gradient(to top, transparent 0, transparent 54px, var(--line-soft) 55px) !important;
}

.chart-line {
  background: linear-gradient(180deg, color-mix(in srgb, var(--green) 62%, transparent), color-mix(in srgb, var(--green) 3%, transparent)) !important;
}

.bar {
  background: color-mix(in srgb, var(--gold) 12%, transparent) !important;
}

.donut::after {
  background: var(--bg-soft) !important;
  color: var(--gold-light) !important;
  border-color: var(--border) !important;
}

.footer-bottom {
  color: var(--footer-note) !important;
}

.hero,
.fund-hero,
.section,
.feature-section,
.cta-section,
[class*="hero"],
[class*="visual"],
[class*="mockup"] {
  border-color: var(--border) !important;
}

.btn-theme-toggle {
  min-width: 104px;
  padding-inline: 14px;
}

.theme-icon {
  display: inline-grid;
  width: 18px;
  height: 18px;
  place-items: center;
  font-size: 15px;
  line-height: 1;
}

@media (max-width: 720px) {
  .btn-theme-toggle {
    min-width: 46px;
    padding-inline: 12px;
  }

  .btn-theme-toggle .theme-label {
    display: none;
  }
}

/* Home page section fixes */
html[data-theme="light"] .fund-panel,
html[data-theme="light"] .dash-card,
html[data-theme="light"] .feature-card,
html[data-theme="light"] .article,
html[data-theme="light"] .discussion,
html[data-theme="light"] .metric,
html[data-theme="light"] .stat {
  background: rgba(255, 255, 255, 0.82) !important;
  border-color: rgba(137, 96, 28, 0.18) !important;
  box-shadow: 0 18px 48px rgba(93, 66, 24, 0.1) !important;
}

html[data-theme="light"] .fund-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 250, 240, 0.78)) !important;
}

html[data-theme="light"] .fund-row {
  background: rgba(255, 250, 240, 0.76) !important;
  border-color: rgba(137, 96, 28, 0.16) !important;
}

html[data-theme="light"] .fund-row:hover,
html[data-theme="light"] .article:hover,
html[data-theme="light"] .discussion:hover,
html[data-theme="light"] .feature-card:hover {
  background: rgba(245, 232, 204, 0.72) !important;
  border-color: rgba(137, 96, 28, 0.28) !important;
}

html[data-theme="light"] .panel-head h3,
html[data-theme="light"] .dash-title h3,
html[data-theme="light"] .feature-card h3,
html[data-theme="light"] .article h3,
html[data-theme="light"] .discussion h4,
html[data-theme="light"] td strong,
html[data-theme="light"] .metric strong,
html[data-theme="light"] .fund-name {
  color: #1f170b !important;
}

html[data-theme="light"] .fund-meta,
html[data-theme="light"] .risk,
html[data-theme="light"] td small,
html[data-theme="light"] .feature-card p,
html[data-theme="light"] .article p,
html[data-theme="light"] .discussion p,
html[data-theme="light"] .discussion-footer,
html[data-theme="light"] .metric span,
html[data-theme="light"] .stat span,
html[data-theme="light"] .section-desc {
  color: #62563f !important;
}

html[data-theme="light"] .article-meta,
html[data-theme="light"] .section-kicker,
html[data-theme="light"] .pill,
html[data-theme="light"] .badge,
html[data-theme="light"] .fund-return,
html[data-theme="light"] .return,
html[data-theme="light"] .icon {
  color: #8f5f14 !important;
}

html[data-theme="light"] .pill,
html[data-theme="light"] .badge,
html[data-theme="light"] .icon {
  background: rgba(215, 166, 66, 0.12) !important;
  border-color: rgba(137, 96, 28, 0.22) !important;
}

html[data-theme="light"] .dash-card table td,
html[data-theme="light"] .dash-card table th {
  border-color: rgba(137, 96, 28, 0.14) !important;
}

html[data-theme="light"] .dash-card table td {
  color: #2b2112 !important;
}



/* Two-sided onboarding light mode */
html[data-theme="light"] .role-choice label,
html[data-theme="light"] .check-line,
html[data-theme="light"] .proof-list div,
html[data-theme="light"] .connect-strip {
  background: rgba(255, 255, 255, 0.76) !important;
  border-color: rgba(137, 96, 28, 0.18) !important;
  color: #62563f !important;
}

html[data-theme="light"] .signup-card-head p,
html[data-theme="light"] .connect-strip p,
html[data-theme="light"] .distributor-feature-grid p,
html[data-theme="light"] .proof-list span,
html[data-theme="light"] .auth-benefit-grid .soft-card span {
  color: #62563f !important;
}

html[data-theme="light"] .role-badge,
html[data-theme="light"] .proof-list strong,
html[data-theme="light"] .auth-benefit-grid .soft-card strong {
  color: #8f5f14 !important;
}

html[data-theme="light"] .role-badge {
  background: rgba(215, 166, 66, 0.12) !important;
  border-color: rgba(137, 96, 28, 0.22) !important;
}

/* SEBI distributor course light mode */
html[data-theme="light"] .course-stat-grid div,
html[data-theme="light"] .score-row,
html[data-theme="light"] .course-nav,
html[data-theme="light"] .question-block {
  background: rgba(255, 255, 255, 0.76) !important;
  border-color: rgba(137, 96, 28, 0.18) !important;
}

html[data-theme="light"] .lesson-video {
  background: radial-gradient(circle at top right, rgba(215, 166, 66, 0.18), transparent 40%), linear-gradient(135deg, rgba(255, 250, 240, 0.94), rgba(245, 232, 204, 0.82)) !important;
  border-color: rgba(137, 96, 28, 0.18) !important;
}

html[data-theme="light"] .lesson-video strong,
html[data-theme="light"] .question-block strong {
  color: #1f170b !important;
}

html[data-theme="light"] .lesson-body p,
html[data-theme="light"] .quiz-card label,
html[data-theme="light"] .mock-card p,
html[data-theme="light"] .compact-lesson p,
html[data-theme="light"] .score-row span,
html[data-theme="light"] .score-row em,
html[data-theme="light"] .course-stat-grid span,
html[data-theme="light"] .course-nav {
  color: #62563f !important;
}

/* Platform expansion light mode */
html[data-theme="light"] .profile-side {
  background: rgba(255, 255, 255, 0.76) !important;
  border-color: rgba(137, 96, 28, 0.18) !important;
}

html[data-theme="light"] .profile-card p,
html[data-theme="light"] .tool-card p,
html[data-theme="light"] .profile-hero p,
html[data-theme="light"] .profile-side span {
  color: #62563f !important;
}

/* Light mode filled-control contrast lock */
html[data-theme="light"] .btn-primary,
html[data-theme="light"] button.btn-primary,
html[data-theme="light"] a.btn-primary,
html[data-theme="light"] .message.user,
html[data-theme="light"] .avatar,
html[data-theme="light"] .auth-tabs a.active {
  color: #fffaf0 !important;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.28);
}

html[data-theme="light"] .btn-primary *,
html[data-theme="light"] button.btn-primary *,
html[data-theme="light"] a.btn-primary *,
html[data-theme="light"] .message.user *,
html[data-theme="light"] .avatar * {
  color: #fffaf0 !important;
}

html[data-theme="light"] .btn-primary {
  background: linear-gradient(135deg, #9a681f, #8a5718, #7a4d16) !important;
  border-color: rgba(122, 77, 22, 0.38) !important;
}

html[data-theme="light"] .badge:not(.role-badge),
html[data-theme="light"] [style*="#7a4d16"],
html[data-theme="light"] [style*="var(--bronze)"] {
  color: #fffaf0 !important;
}

/* Homepage wealth movement light lock */
html[data-theme="light"] .money-map-section {
    background:
        radial-gradient(circle at 50% 45%, rgba(245, 211, 122, 0.16), transparent 26%),
        linear-gradient(135deg, #12166f 0%, #10145c 48%, #0a1644 100%) !important;
    color: #fffaf0 !important;
}

html[data-theme="light"] .money-map-head h2,
html[data-theme="light"] .money-map-core strong,
html[data-theme="light"] .money-node h3 {
    color: #fffaf0 !important;
}

html[data-theme="light"] .money-node {
    background: rgba(17, 24, 112, 0.62) !important;
    border-color: rgba(59, 149, 255, 0.72) !important;
}

html[data-theme="light"] .money-node li {
    color: rgba(255, 250, 240, 0.88) !important;
}

/* Homepage wealth movement light theme correction */
html[data-theme="light"] .money-map-section {
    background:
        radial-gradient(circle at 50% 47%, rgba(122, 77, 22, 0.15), transparent 28%),
        radial-gradient(circle at 8% 28%, rgba(111, 143, 85, 0.18), transparent 22%),
        linear-gradient(135deg, #fff7e7 0%, #f6ead2 48%, #eef4e7 100%) !important;
    color: #2a2116 !important;
}

html[data-theme="light"] .money-map-head h2 {
    color: #5c3911 !important;
}

html[data-theme="light"] .money-map-core {
    background: linear-gradient(135deg, #7a4d16, #2d1e0f 54%, #263b20) !important;
    border-color: rgba(122, 77, 22, 0.3) !important;
}

html[data-theme="light"] .money-node {
    background: rgba(255, 252, 244, 0.82) !important;
    border-color: rgba(122, 77, 22, 0.2) !important;
    box-shadow: inset 0 0 0 1px rgba(122, 77, 22, 0.04), 0 18px 44px rgba(95, 69, 31, 0.12) !important;
}

html[data-theme="light"] .money-node h3 {
    color: #5c3911 !important;
    border-bottom-color: rgba(122, 77, 22, 0.18) !important;
}

html[data-theme="light"] .money-node li {
    color: #4f4638 !important;
}

html[data-theme="light"] .money-node li span {
    color: #fffaf0 !important;
    background: #6f8f55 !important;
    border-color: rgba(75, 112, 55, 0.42) !important;
}

/* Homepage map light icon and arrow polish */
html[data-theme="light"] .money-node .map-icon {
    color: #fffaf0 !important;
    background: #7a4d16 !important;
    border-color: rgba(122, 77, 22, 0.34) !important;
}

html[data-theme="light"] .flow-line {
    border-color: rgba(122, 77, 22, 0.72) !important;
}

html[data-theme="light"] .flow-left-a,
html[data-theme="light"] .flow-right-a,
html[data-theme="light"] .flow-right-b {
    border-top-color: rgba(122, 77, 22, 0.72) !important;
}

html[data-theme="light"] .flow-top-a,
html[data-theme="light"] .flow-bottom-a {
    border-left-color: rgba(122, 77, 22, 0.72) !important;
}

html[data-theme="light"] .flow-left-a::after {
    border-color: transparent transparent transparent #7a4d16 !important;
}

html[data-theme="light"] .flow-right-a::after,
html[data-theme="light"] .flow-right-b::after {
    border-color: transparent #7a4d16 transparent transparent !important;
}

html[data-theme="light"] .flow-top-a::after {
    border-color: #7a4d16 transparent transparent transparent !important;
}

html[data-theme="light"] .flow-bottom-a::after {
    border-color: transparent transparent #7a4d16 transparent !important;
}

/* SEBI course professional preview light */
html[data-theme="light"] .course-preview-copy,
html[data-theme="light"] .course-next-step span,
html[data-theme="light"] .course-stat-grid-pro span {
  color: #62563f !important;
}

html[data-theme="light"] .course-next-step {
  background: rgba(255, 252, 244, 0.76) !important;
  border-color: rgba(122, 77, 22, 0.14) !important;
}

html[data-theme="light"] .course-next-step strong {
  color: #5c3911 !important;
}

html[data-theme="light"] .course-next-step small,
html[data-theme="light"] .course-stat-grid-pro small {
  color: #7a6a50 !important;
}

html[data-theme="light"] .course-status-pill {
  color: #fffaf0 !important;
  background: #6f8f55 !important;
  border-color: rgba(111, 143, 85, 0.42) !important;
}

html[data-theme="light"] .course-preview-card .course-progress-ring {
  color: #5c3911 !important;
  box-shadow: inset 0 0 0 16px rgba(255, 252, 244, 0.88), 0 18px 38px rgba(95, 69, 31, 0.12) !important;
}

html[data-theme="light"] .course-preview-card .course-progress-ring strong {
  color: #5c3911 !important;
}

html[data-theme="light"] .course-preview-card .course-progress-ring span {
  color: #62563f !important;
}

/* Homepage direct hub connectors light */
html[data-theme="light"] .flow-line {
    border-color: rgba(122, 77, 22, 0.78) !important;
    box-shadow: 0 0 12px rgba(122, 77, 22, 0.12) !important;
}

html[data-theme="light"] .flow-left-a,
html[data-theme="light"] .flow-right-a,
html[data-theme="light"] .flow-right-b {
    border-top-color: rgba(122, 77, 22, 0.78) !important;
}

html[data-theme="light"] .flow-top-a,
html[data-theme="light"] .flow-bottom-a {
    border-left-color: rgba(122, 77, 22, 0.78) !important;
}

html[data-theme="light"] .flow-left-a::after {
    border-color: transparent transparent transparent #7a4d16 !important;
}

html[data-theme="light"] .flow-right-a::after,
html[data-theme="light"] .flow-right-b::after {
    border-color: transparent #7a4d16 transparent transparent !important;
}

html[data-theme="light"] .flow-top-a::after {
    border-color: #7a4d16 transparent transparent transparent !important;
}

html[data-theme="light"] .flow-bottom-a::after {
    border-color: transparent transparent #7a4d16 transparent !important;
}

/* Home social sidebar light */
html[data-theme="light"] .home-social-sidebar {
  background: rgba(255, 252, 244, 0.92) !important;
  border-right-color: rgba(122, 77, 22, 0.16) !important;
  box-shadow: 12px 0 32px rgba(95, 69, 31, 0.08);
}

html[data-theme="light"] .home-side-nav a,
html[data-theme="light"] .home-side-actions a,
html[data-theme="light"] .home-side-theme {
  color: #4f4638 !important;
}

html[data-theme="light"] .home-side-nav a:hover,
html[data-theme="light"] .home-side-actions a:hover,
html[data-theme="light"] .home-side-theme:hover,
html[data-theme="light"] .home-side-nav a.active {
  color: #5c3911 !important;
  background: rgba(122, 77, 22, 0.09) !important;
}

html[data-theme="light"] .home-side-nav a.active {
  border-color: rgba(122, 77, 22, 0.16) !important;
}

html[data-theme="light"] .side-start {
  color: #fffaf0 !important;
  background: linear-gradient(135deg, #9a681f, #8a5718, #7a4d16) !important;
  border-color: rgba(122, 77, 22, 0.32) !important;
}

/* Home sidebar visible primary actions light */
html[data-theme="light"] .home-side-actions-top {
  border-bottom-color: rgba(122, 77, 22, 0.12) !important;
}

html[data-theme="light"] .home-side-actions-top .side-start {
  color: #fffaf0 !important;
  background: linear-gradient(135deg, #9a681f, #8a5718, #7a4d16) !important;
}

/* Home sidebar final layout correction light */
html[data-theme="light"] .home-side-actions-top {
  border-bottom-color: rgba(122, 77, 22, 0.12) !important;
}

html[data-theme="light"] .home-side-actions-top .side-start {
  color: #7a4d16 !important;
  background: rgba(122, 77, 22, 0.08) !important;
  border-color: rgba(122, 77, 22, 0.16) !important;
}

html[data-theme="light"] .home-social-sidebar:hover .home-side-actions-top .side-start,
html[data-theme="light"] .home-social-sidebar:focus-within .home-side-actions-top .side-start {
  color: #fffaf0 !important;
  background: linear-gradient(135deg, #9a681f, #8a5718, #7a4d16) !important;
}

/* Final home typography correction */
body.has-side-nav[data-page="home"] .hero h1,
html body.has-side-nav[data-page="home"] .hero h1 {
  font-size: clamp(34px, 3.15vw, 46px) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  max-width: 700px !important;
}

body.has-side-nav[data-page="home"] .hero p,
html body.has-side-nav[data-page="home"] .hero p {
  max-width: 700px !important;
  font-size: 14px !important;
  line-height: 1.62 !important;
}

body.has-side-nav[data-page="home"] .hero-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.8fr) !important;
  gap: 44px !important;
}

body.has-side-nav[data-page="home"] .return,
html body.has-side-nav[data-page="home"] .return,
body.has-side-nav[data-page="home"] .fund-return,
html body.has-side-nav[data-page="home"] .fund-return {
  font-size: 18px !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
}

body.has-side-nav[data-page="home"] .fund-name {
  font-size: 13px !important;
}

body.has-side-nav[data-page="home"] .fund-meta,
body.has-side-nav[data-page="home"] .risk {
  font-size: 11.5px !important;
}

body.has-side-nav[data-page="home"] .stat strong {
  font-size: 24px !important;
}

@media (max-width: 1080px) {
  body.has-side-nav[data-page="home"] .hero-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 720px) {
  body.has-side-nav[data-page="home"] .hero h1,
  html body.has-side-nav[data-page="home"] .hero h1 {
    font-size: clamp(30px, 8vw, 38px) !important;
  }
}

/* Final global page-load typography correction */
body.has-side-nav h1,
html body.has-side-nav h1,
body.has-side-nav .page-head h1,
html body.has-side-nav .page-head h1,
body.has-side-nav .auth-intro h1,
body.has-side-nav .auth-centered h1,
body.has-side-nav .distributor-hero h1,
body.has-side-nav .course-hero h1,
body.has-side-nav .profile-hero h1,
body.has-side-nav .hero h1 {
  font-size: clamp(30px, 3.1vw, 46px) !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  max-width: 760px !important;
}

body.has-side-nav .section-header h2,
body.has-side-nav .section h2,
body.has-side-nav .card h2,
body.has-side-nav .dash-card h2,
body.has-side-nav .mock-card h2,
body.has-side-nav .connect-strip h2,
body.has-side-nav .money-map-head h2 {
  font-size: clamp(21px, 2vw, 30px) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
}

body.has-side-nav .card h3,
body.has-side-nav .feature-card h3,
body.has-side-nav .article h3,
body.has-side-nav .discussion h3,
body.has-side-nav .lesson-body h3,
body.has-side-nav .compact-lesson h3,
body.has-side-nav .panel-head h3 {
  font-size: clamp(16px, 1.35vw, 20px) !important;
  line-height: 1.25 !important;
}

body.has-side-nav .page-desc,
body.has-side-nav .section-desc,
body.has-side-nav .hero p,
body.has-side-nav .card p,
body.has-side-nav .article p,
body.has-side-nav .discussion p,
body.has-side-nav .lesson-body p,
body.has-side-nav .mock-card p,
body.has-side-nav .tool-card p,
body.has-side-nav .profile-card p,
body.has-side-nav td,
body.has-side-nav label,
body.has-side-nav input,
body.has-side-nav select,
body.has-side-nav textarea {
  font-size: 14px !important;
  line-height: 1.6 !important;
}

body.has-side-nav .return,
body.has-side-nav .fund-return {
  font-size: 18px !important;
  line-height: 1.1 !important;
}

body.has-side-nav .stat strong,
body.has-side-nav .metric strong,
body.has-side-nav .course-stat-grid strong,
body.has-side-nav .score-row strong {
  font-size: clamp(20px, 1.8vw, 24px) !important;
}

body.has-side-nav .eyebrow,
body.has-side-nav .section-kicker,
body.has-side-nav .role-badge,
body.has-side-nav .badge,
body.has-side-nav .pill,
body.has-side-nav .tag,
body.has-side-nav th,
body.has-side-nav small {
  font-size: 11px !important;
}

body.has-side-nav .btn {
  font-size: 13px !important;
}

@media (max-width: 720px) {
  body.has-side-nav h1,
  html body.has-side-nav h1,
  body.has-side-nav .page-head h1,
  body.has-side-nav .auth-intro h1,
  body.has-side-nav .auth-centered h1,
  body.has-side-nav .distributor-hero h1,
  body.has-side-nav .course-hero h1,
  body.has-side-nav .profile-hero h1,
  body.has-side-nav .hero h1 {
    font-size: clamp(28px, 8vw, 38px) !important;
  }
}

/* =====================================================================
   Light theme - Admin console
   The admin shell (style.css ~5150+) hardcodes dark colors instead of
   theme variables, so it stays dark in light mode. These overrides map it
   to the light palette. Scoped to .admin-* selectors (admin pages only).
   ===================================================================== */
html[data-theme="light"] .admin-body { background: var(--bg) !important; color: var(--body-text); }
html[data-theme="light"] .admin-shell {
  background:
    radial-gradient(circle at 80% 0%, rgba(154,106,20,.05), transparent 34%),
    linear-gradient(135deg, #faf9f5 0%, #f1efe7 55%, #faf9f5 100%);
}
html[data-theme="light"] .admin-sidebar {
  background: var(--sidebar-bg);
  border-right: 1px solid var(--border);
  backdrop-filter: none;
}
html[data-theme="light"] .admin-brand { color: var(--heading); }
html[data-theme="light"] .admin-sidebar nav a,
html[data-theme="light"] .admin-back { color: var(--muted); }
html[data-theme="light"] .admin-sidebar nav a:hover,
html[data-theme="light"] .admin-sidebar nav a.active,
html[data-theme="light"] .admin-back:hover { color: var(--heading); background: var(--accent-soft); }
html[data-theme="light"] .admin-back { border: 1px solid var(--border); }
html[data-theme="light"] .admin-topbar h1,
html[data-theme="light"] .admin-panel h2 { color: var(--heading); }
html[data-theme="light"] .admin-top-actions input,
html[data-theme="light"] .admin-panel-head input {
  background: var(--surface-3); border: 1px solid var(--border); color: var(--heading);
}
html[data-theme="light"] .admin-card,
html[data-theme="light"] .admin-panel {
  background: var(--card); border: 1px solid var(--border); box-shadow: 0 1px 3px rgba(0,0,0,.06);
}
html[data-theme="light"] .admin-card span,
html[data-theme="light"] .admin-card small,
html[data-theme="light"] .admin-panel p { color: var(--muted); }
html[data-theme="light"] .admin-card strong { color: var(--accent); }
html[data-theme="light"] .admin-table-wrap { border: 1px solid var(--border); }
html[data-theme="light"] .admin-table th,
html[data-theme="light"] .admin-table td { border-bottom: 1px solid var(--line-soft); }
html[data-theme="light"] .admin-table th { color: var(--accent); background: var(--surface-3); }
html[data-theme="light"] .admin-table td small { color: var(--muted); }
html[data-theme="light"] .admin-badge { color: #1d4ed8; background: rgba(59,130,246,.12); }
