/* Image3D public shell fallback.
   Loaded on sitemap pages after the approved V3.2 design stylesheet.
   It normalizes legacy Tailwind dark tokens without recoloring 3D canvases,
   code samples, or modal backdrops. */

html[data-design-variant="light_v32"] {
  color-scheme: light;
  --i3d-status-warn: #854d0e;
  --i3d-status-ok: #166534;
  --i3d-status-error: #b91c1c;
  --i3d-shell-bg: #f5f5f2;
  --i3d-shell-surface: #ffffff;
  --i3d-shell-soft: #f0f2f4;
  --i3d-shell-ink: #111318;
  --i3d-shell-muted: #5f6672;
  --i3d-shell-line: #d9dce2;
}

/* Status text lives on a light surface, including asynchronous failures. */
html[data-design-variant="light_v32"] :is(#toolStatus,.status)[data-tone="warn"] { color: var(--i3d-status-warn) !important; }
html[data-design-variant="light_v32"] :is(#toolStatus,.status)[data-tone="ok"] { color: var(--i3d-status-ok) !important; }
html[data-design-variant="light_v32"] :is(#toolStatus,.status):is([data-tone="err"],[data-tone="error"]) { color: var(--i3d-status-error) !important; }

html[data-design-variant="light_v32"] body {
  background: var(--i3d-shell-bg) !important;
  color: var(--i3d-shell-ink) !important;
}

/* Free-preview notices can inherit pale text from legacy .pill / .card li rules.
   Only these non-button copy nodes change; viewers and commercial modals do not. */
html[data-design-variant="light_v32"] [data-i18n^="freeCopy."] {
  color: #334155 !important;
}

html[data-design-variant="light_v32"] body > header,
html[data-design-variant="light_v32"] body > nav,
html[data-design-variant="light_v32"] body > footer {
  color: var(--i3d-shell-ink) !important;
  border-color: var(--i3d-shell-line) !important;
  background: rgba(255, 255, 255, .96) !important;
}
html[data-design-variant="light_v32"] body > header a,
html[data-design-variant="light_v32"] body > header .brand,
html[data-design-variant="light_v32"] body > header nav a {
  color: var(--i3d-shell-ink) !important;
}
html[data-design-variant="light_v32"] body > header .brand span { color: #315ef7 !important; }
html[data-design-variant="light_v32"] body > header a.cta,
html[data-design-variant="light_v32"] body > header a.button:not(.secondary),
html[data-design-variant="light_v32"] body > header a[class*="bg-primary"],
html[data-design-variant="light_v32"] body > header a[class*="bg-blue"] { color: #fff !important; }
html[data-design-variant="light_v32"] body > nav #navCtaBtn {
  color: #fff !important;
  background: linear-gradient(135deg, #315ef7, #0b8fba) !important;
  box-shadow: 0 8px 22px rgba(49, 94, 247, .2) !important;
}

/* Some legacy editorial pages reference Tailwind palette utilities that are
   absent from the current compiled bundle. Keep solid CTA text readable on
   the light shell without changing links that are not presented as buttons. */
html[data-design-variant="light_v32"] body > nav :is(a,button)[class*="bg-blue-"],
html[data-design-variant="light_v32"] body > main article :is(a,button)[class*="bg-blue-"],
html[data-design-variant="light_v32"] body > main article :is(a,button)[class*="bg-primary"],
html[data-design-variant="light_v32"] body > main article :is(a,button)[class*="bg-purple-"] {
  color: #fff !important;
  background-color: #315ef7 !important;
}

html[data-design-variant="light_v32"] body > main,
html[data-design-variant="light_v32"] body > article {
  color: var(--i3d-shell-ink);
  background-color: var(--i3d-shell-bg);
}

html[data-design-variant="light_v32"] .bg-background,
html[data-design-variant="light_v32"] .bg-surface,
html[data-design-variant="light_v32"] .bg-surface\/80,
html[data-design-variant="light_v32"] .bg-surface\/90 {
  background-color: var(--i3d-shell-bg) !important;
}

html[data-design-variant="light_v32"] .bg-surface-container,
html[data-design-variant="light_v32"] .bg-surface-container-high,
html[data-design-variant="light_v32"] .bg-surface-container-highest,
html[data-design-variant="light_v32"] .bg-surface-container-low,
html[data-design-variant="light_v32"] .bg-surface-container-lowest,
html[data-design-variant="light_v32"] .bg-surface-variant,
html[data-design-variant="light_v32"] .bg-surface-variant\/20,
html[data-design-variant="light_v32"] .bg-surface-variant\/30,
html[data-design-variant="light_v32"] .bg-white\/\[\.03\],
html[data-design-variant="light_v32"] .bg-white\/\[\.035\],
html[data-design-variant="light_v32"] .bg-white\/\[\.04\],
html[data-design-variant="light_v32"] .bg-white\/\[\.045\],
html[data-design-variant="light_v32"] .bg-white\/\[\.05\] {
  background-color: var(--i3d-shell-surface) !important;
}

html[data-design-variant="light_v32"] .border-outline,
html[data-design-variant="light_v32"] .border-outline-variant,
html[data-design-variant="light_v32"] [class*="border-surface"] {
  border-color: var(--i3d-shell-line) !important;
}

html[data-design-variant="light_v32"] .text-on-surface,
html[data-design-variant="light_v32"] .text-white:where(:not(button):not(.button):not(.cta):not([class*="bg-primary"]):not([class*="bg-blue"]):not([class*="bg-purple"])),
html[data-design-variant="light_v32"] .text-gray-100,
html[data-design-variant="light_v32"] .text-slate-100 {
  color: var(--i3d-shell-ink) !important;
}

html[data-design-variant="light_v32"] .text-on-surface-variant,
html[data-design-variant="light_v32"] .text-gray-300,
html[data-design-variant="light_v32"] .text-gray-400,
html[data-design-variant="light_v32"] .text-slate-300,
html[data-design-variant="light_v32"] .text-slate-400,
html[data-design-variant="light_v32"] .text-slate-500 {
  color: var(--i3d-shell-muted) !important;
}

html[data-design-variant="light_v32"] body > main article :is(.text-blue-300,.text-blue-400) {
  color: #1d4ed8 !important;
}

/* Functional dark surfaces are intentional, not page-theme leftovers. */
html[data-design-variant="light_v32"] model-viewer,
html[data-design-variant="light_v32"] canvas,
html[data-design-variant="light_v32"] pre,
html[data-design-variant="light_v32"] code,
html[data-design-variant="light_v32"] #viewerContainer,
html[data-design-variant="light_v32"] #modelViewer,
html[data-design-variant="light_v32"] .viewer-stage,
html[data-design-variant="light_v32"] .model-stage,
html[data-design-variant="light_v32"] .modal-backdrop {
  color-scheme: dark;
}

html[data-design-variant="light_v32"] .i3d-lang-wrap {
  color: #263247 !important;
  border-color: #cfd5df !important;
  background: #eef2f7 !important;
  box-shadow: none !important;
}
html[data-design-variant="light_v32"] .i3d-lang-wrap label { color: #526071 !important; }

html[data-design-variant="light_v32"] .i3d-lang-icon { color: #315ef7 !important; }
html[data-design-variant="light_v32"] .i3d-lang-select {
  color: #172033 !important;
  color-scheme: light !important;
  background: #ffffff !important;
}
html[data-design-variant="light_v32"] .i3d-lang-select option {
  color: #172033 !important;
  background: #ffffff !important;
}

/* Legacy editorial templates used dark typography and dark cards without a
   shared page class. Keep the whole reading surface light and high contrast. */
html[data-design-variant="light_v32"] body > main article {
  color: var(--i3d-shell-ink) !important;
  background: transparent !important;
}
html[data-design-variant="light_v32"] body > main article h1,
html[data-design-variant="light_v32"] body > main article h2,
html[data-design-variant="light_v32"] body > main article h3,
html[data-design-variant="light_v32"] body > main article h4,
html[data-design-variant="light_v32"] body > main article p,
html[data-design-variant="light_v32"] body > main article li,
html[data-design-variant="light_v32"] body > main article th,
html[data-design-variant="light_v32"] body > main article td,
html[data-design-variant="light_v32"] body > main article nav {
  color: var(--i3d-shell-ink) !important;
}
html[data-design-variant="light_v32"] body > main article strong { color: inherit !important; }
html[data-design-variant="light_v32"] body > main article > section,
html[data-design-variant="light_v32"] body > main article > div > section,
html[data-design-variant="light_v32"] body > main article + aside > div,
html[data-design-variant="light_v32"] body > main article table,
html[data-design-variant="light_v32"] body > main article [class*="answer"],
html[data-design-variant="light_v32"] body > main article [class*="card"] {
  border-color: var(--i3d-shell-line) !important;
  background-color: var(--i3d-shell-surface) !important;
  background-image: none !important;
}
html[data-design-variant="light_v32"] body > main article table {
  color: var(--i3d-shell-ink) !important;
}
html[data-design-variant="light_v32"] body > main article thead,
html[data-design-variant="light_v32"] body > main article th {
  background: var(--i3d-shell-soft) !important;
}
html[data-design-variant="light_v32"] body > main article a[class*="bg-primary"],
html[data-design-variant="light_v32"] body > main article a[class*="bg-blue"],
html[data-design-variant="light_v32"] body > main article button[class*="bg-primary"] {
  color: #fff !important;
}

html[data-design-variant="light_v32"] .pricing-truth-card {
  color: var(--i3d-shell-ink) !important;
  border: 1px solid var(--i3d-shell-line) !important;
  background: var(--i3d-shell-surface) !important;
}
html[data-design-variant="light_v32"] .pricing-truth-card small { color: #315ef7 !important; }
html[data-design-variant="light_v32"] .pricing-truth-card span { color: var(--i3d-shell-muted) !important; }

/* Privacy and Terms are older legal templates whose local --ink/--muted
   variables were authored for a dark page. Keep their reading hierarchy
   explicit instead of relying on inherited theme tokens. */
html[data-design-variant="light_v32"] .legal-container h1,
html[data-design-variant="light_v32"] .legal-container h2,
html[data-design-variant="light_v32"] .legal-container h3,
html[data-design-variant="light_v32"] .legal-container strong {
  color: var(--i3d-shell-ink) !important;
}
html[data-design-variant="light_v32"] .legal-container p,
html[data-design-variant="light_v32"] .legal-container li,
html[data-design-variant="light_v32"] .legal-container .last-updated {
  color: #4d5664 !important;
}
html[data-design-variant="light_v32"] .legal-container a { color: #1457c7 !important; }
html[data-design-variant="light_v32"] body > footer a { color: #4d5664 !important; }
html[data-design-variant="light_v32"] body > footer p { color: #4d5664 !important; }

/* Legacy editorial and answer templates used dark information panels even
   after the page shell moved to light. These are ordinary reading surfaces,
   not 3D viewports, so keep them consistent with the public light system. */
html[data-design-variant="light_v32"] main .answer-panel,
html[data-design-variant="light_v32"] main .answer-box,
html[data-design-variant="light_v32"] main .panel,
html[data-design-variant="light_v32"] main .table-wrap,
html[data-design-variant="light_v32"] main .category-board,
html[data-design-variant="light_v32"] main .case-panel,
html[data-design-variant="light_v32"] article .article-card,
html[data-design-variant="light_v32"] main .article-card,
html[data-design-variant="light_v32"] main .check-table,
html[data-design-variant="light_v32"] article figure.card,
html[data-design-variant="light_v32"] main figure.card,
html[data-design-variant="light_v32"] main .visual-side,
html[data-design-variant="light_v32"] main .i3d-photo-hero__evidence {
  background: #fff !important;
  color: var(--i3d-shell-ink) !important;
  border-color: #dce3ec !important;
  box-shadow: 0 12px 32px rgba(34, 49, 70, .07) !important;
}
html[data-design-variant="light_v32"] .i3d-blender-page main .hero-shell .article-card,
html[data-design-variant="light_v32"] body.i3d-blender-page main .hero-shell .article-card {
  background: #fff !important;
  color: var(--i3d-shell-ink) !important;
  border-color: #dce3ec !important;
}

html[data-design-variant="light_v32"] main :is(.answer-panel,.answer-box,.panel,.table-wrap,.category-board,.case-panel,.visual-side) :is(.text-white,.text-slate-100,.text-slate-200,.text-slate-300),
html[data-design-variant="light_v32"] article :is(.article-card,figure.card) :is(.text-white,.text-slate-100,.text-slate-200,.text-slate-300) {
  color: var(--i3d-shell-ink) !important;
}
html[data-design-variant="light_v32"] main :is(.article-card,.check-table) :is(.text-white,.text-slate-100,.text-slate-200,.text-slate-300) {
  color: var(--i3d-shell-ink) !important;
}

html[data-design-variant="light_v32"] main :is(.answer-panel,.answer-box,.panel,.table-wrap,.category-board,.case-panel,.visual-side) :is(.text-slate-400,.text-gray-400),
html[data-design-variant="light_v32"] article :is(.article-card,figure.card) :is(.text-slate-400,.text-gray-400) {
  color: var(--i3d-shell-muted) !important;
}
html[data-design-variant="light_v32"] main :is(.article-card,.check-table) :is(.text-slate-400,.text-gray-400) {
  color: var(--i3d-shell-muted) !important;
}

html[data-design-variant="light_v32"] main :is(.answer-panel,.answer-box,.panel,.table-wrap,.category-board,.case-panel) :is(.text-sky-300,.text-cyan-300) {
  color: #1457c7 !important;
}

html[data-design-variant="light_v32"] main :is(.answer-panel,.answer-box,.panel,.table-wrap,.category-board,.case-panel) .text-emerald-300 {
  color: #087454 !important;
}

/* Close the remaining contrast gaps in legacy dark-authored public templates.
   These selectors are page-scoped so functional dark canvases and commercial
   surfaces retain their intentional treatment. */
html[data-design-variant="light_v32"] .about-image3d-page .pill {
  color: #1457c7 !important;
  border-color: #b9d5f4 !important;
  background: #edf6ff !important;
}
html[data-design-variant="light_v32"] .about-image3d-page .soft,
html[data-design-variant="light_v32"] .about-image3d-page .muted,
html[data-design-variant="light_v32"] .about-image3d-page .faq p {
  color: #4d5664 !important;
}
html[data-design-variant="light_v32"] .about-image3d-page .secondary {
  color: #273245 !important;
  border-color: #cfd5df !important;
  background: #fff !important;
}
html[data-design-variant="light_v32"] .about-image3d-page :is(.fact,.link-card,.faq details) {
  color: var(--i3d-shell-ink) !important;
  border-color: var(--i3d-shell-line) !important;
  background: #fff !important;
}
html[data-design-variant="light_v32"] .about-image3d-page .fact dt { color: #1457c7 !important; }
html[data-design-variant="light_v32"] .about-image3d-page :is(.fact dd,.faq summary) { color: var(--i3d-shell-ink) !important; }
html[data-design-variant="light_v32"] .about-image3d-page :is(th,td) { color: #273245 !important; }

html[data-design-variant="light_v32"] .blog-index-page .guide-hero {
  border-color: var(--i3d-shell-line) !important;
  background: linear-gradient(135deg, #fff, #f4f8fb 58%, #eef8f6) !important;
}
html[data-design-variant="light_v32"] .blog-index-page .guide-kicker { color: #1457c7 !important; }
html[data-design-variant="light_v32"] .blog-index-page .column-card {
  color: var(--i3d-shell-ink) !important;
  border-color: var(--i3d-shell-line) !important;
  background: #fff !important;
  box-shadow: 0 12px 32px rgba(34, 49, 70, .07) !important;
}
html[data-design-variant="light_v32"] .blog-index-page .column-card h2 { color: var(--i3d-shell-ink) !important; }
html[data-design-variant="light_v32"] .blog-index-page .column-card > p,
html[data-design-variant="light_v32"] .blog-index-page .feed-heading p { color: #4d5664 !important; }
html[data-design-variant="light_v32"] .blog-index-page .column-links a {
  color: #334155 !important;
  border-color: #d5dbe4 !important;
  background: #eef2f6 !important;
}
html[data-design-variant="light_v32"] .blog-index-page .column-links a:hover {
  color: #111318 !important;
  border-color: #8ba5c7 !important;
  background: #e7edf4 !important;
}
html[data-design-variant="light_v32"] .blog-index-page .guide-hero a[style*="linear-gradient"] { color: #fff !important; }

html[data-design-variant="light_v32"] .gallery-page #gal3d-astro-ultra-status { color: #fff !important; }
html[data-design-variant="light_v32"] .gallery-page #gal3d-astro-ultra-load {
  color: #111827 !important;
  border: 1px solid #d79a08 !important;
  background: #fbbf24 !important;
}

html[data-design-variant="light_v32"] body.showcase-page .btn-gradient.text-white:not(button):not(.button):not(.cta):not([class*="bg-primary"]):not([class*="bg-blue"]):not([class*="bg-purple"]) { color: #fff !important; }
html[data-design-variant="light_v32"] body.showcase-page .card-glow > .p-5 .text-white:not(button):not(.button):not(.cta):not([class*="bg-primary"]):not([class*="bg-blue"]):not([class*="bg-purple"]) { color: #f8fafc !important; }
html[data-design-variant="light_v32"] .showcase-page .card-glow > .p-5 .text-gray-400 { color: #b8c2cf !important; }
html[data-design-variant="light_v32"] .showcase-page #showcaseUploadTitle { color: #111318 !important; }

/* Product GLB uses section/div cards, not the article-based legacy template.
   Pair light surfaces with explicit foregrounds; do not recolor other pages. */
html[data-design-variant="light_v32"] .product-photo-glb-page main :is(.card,.faq-card,.example-card,.metric) {
  background: #fff !important;
  color: var(--i3d-shell-ink) !important;
  border-color: var(--i3d-shell-line) !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page main :is(.card p,.card li,.faq-card p,.example-card p,.metric span,td) {
  color: #4d5664 !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page main th {
  color: #075e46 !important;
  background: #eaf5ef !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page main :is(th,td) { border-color: var(--i3d-shell-line) !important; }
html[data-design-variant="light_v32"] .product-photo-glb-page .pill {
  color: #1457c7 !important;
  background: #edf6ff !important;
  border-color: #b9d5f4 !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page a.pill:hover {
  color: #123d83 !important;
  background: #dbeafe !important;
  border-color: #789ccc !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page .nav-link { color: #4d5664 !important; }
/* The shared language picker is appended directly to this legacy nav.
   Reserve its space in the existing row instead of hiding the page heading. */
html[data-design-variant="light_v32"] .product-photo-glb-page > nav { height: 64px; }
html[data-design-variant="light_v32"] .product-photo-glb-page > nav > div:first-child {
  height: 64px;
  padding-right: 120px;
}
html[data-design-variant="light_v32"] .product-photo-glb-page > nav > div:first-child > div { gap: 24px; }
html[data-design-variant="light_v32"] .product-photo-glb-page > nav > .i3d-lang-wrap {
  position: absolute;
  top: 14px;
  right: max(16px, calc((100% - 1280px) / 2 + 24px));
  height: 36px;
  margin: 0;
  padding: 4px;
}
html[data-design-variant="light_v32"] .product-photo-glb-page .nav-link:hover { color: #111318 !important; }
html[data-design-variant="light_v32"] .product-photo-glb-page > nav a > span[style*="color"] { color: #1457c7 !important; text-shadow: none !important; }
html[data-design-variant="light_v32"] .product-photo-glb-page :is(main,nav) a[style*="linear-gradient"] {
  color: #fff !important;
  background: linear-gradient(135deg, #2563eb, #087454) !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page :is(main,nav) a[style*="linear-gradient"]:hover {
  background: linear-gradient(135deg, #1d4ed8, #065f46) !important;
}
html[data-design-variant="light_v32"] .product-photo-glb-page a:focus-visible {
  outline: 3px solid #1457c7;
  outline-offset: 3px;
}

/* Three legacy STL guides: pair the old template's surfaces and text.
   Scope to these pages; keep the existing layout and model canvases. */
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(.card,.decision-card,.source-list span,.example-card,.faq-card,.metric,.preview-panel,.stage-card,.model-option,.mini-cell,.bridge-panel,.category-board,.category-link,.case-seed,.idea-card,.plan,.hook,.faq,.table-wrap) {
  background: #fff !important;
  color: var(--i3d-shell-ink) !important;
  border-color: var(--i3d-shell-line) !important;
  box-shadow: 0 6px 20px rgba(34,49,70,.05) !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(p,li,td,.metric span,.model-caption,.model-caption span,.model-option span,.category-link span,.mini-cell span) {
  color: #4d5664 !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(h1,h2,h3,strong,b,.price) { color: #111318 !important; }
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(.pill,.chip,.eyebrow,.case-seed > span,.label) {
  color: #1457c7 !important;
  background: #edf6ff !important;
  border-color: #b9d5f4 !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide main th {
  color: #075e46 !important;
  background: #eaf5ef !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(th,td) { border-color: var(--i3d-shell-line) !important; }
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(.band,.final-cta) { background: #eef4f8 !important; }
html[data-design-variant="light_v32"] body.i3d-legacy-guide main .status { color: #075e46 !important; }
html[data-design-variant="light_v32"] .i3d-bambu-page .i3d-evidence-viewer { background: #fff !important; border: 1px solid var(--i3d-shell-line); }
html[data-design-variant="light_v32"] .i3d-bambu-page .i3d-evidence-viewer__head { color: #111318 !important; }
html[data-design-variant="light_v32"] .i3d-bambu-page .i3d-evidence-viewer__head span:last-child { color: #1457c7 !important; }
html[data-design-variant="light_v32"] .i3d-bambu-page .i3d-evidence-viewer figcaption { color: #4d5664 !important; }
html[data-design-variant="light_v32"] body.i3d-legacy-guide main :is(.btn-dark,.idea-link) {
  color: #273245 !important;
  background: #fff !important;
  border-color: #cfd5df !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide main .model-option.is-active {
  border-color: #1457c7 !important;
  box-shadow: 0 0 0 1px #1457c7 !important;
}
html[data-design-variant="light_v32"] body.i3d-legacy-guide > nav .nav-link { color: #4d5664 !important; }
html[data-design-variant="light_v32"] body.i3d-legacy-guide > nav a > span[style*="color"] { color: #1457c7 !important; text-shadow: none !important; }
html[data-design-variant="light_v32"] body:is(.i3d-legacy-guide,.i3d-bambu-page) :is(main,nav) :is(a[style*="linear-gradient"],.btn-primary,.number,#navCtaBtn) {
  color: #fff !important;
  background: linear-gradient(135deg,#2563eb,#087454) !important;
}
html[data-design-variant="light_v32"] body:is(.i3d-legacy-guide,.i3d-bambu-page) :is(a,button,select):focus-visible { outline: 3px solid #1457c7; outline-offset: 3px; }
body[data-content-i18n-only] .i3d-content-language-slot { display: inline-flex; flex-shrink: 0; }
body[data-content-i18n-only] .i3d-content-language-slot .i3d-lang-wrap { margin: 0; }
body.i3d-legacy-guide > nav > div > div:first-child { gap: 24px; }
html[lang="zh-CN"] body.i3d-legacy-guide .hero-title { font-size: clamp(34px,4vw,56px); line-height: 1.16; }
@media(max-width:640px) {
  body[data-content-i18n-only] .i3d-content-language-slot label { display: none; }
  body.i3d-legacy-guide > nav > div > div { gap: 8px; }
}

/* Model canvases, embedded renderers and modal backdrops intentionally keep
   their dark functional surface; the selectors above do not target them. */
/* Text contrast corrections: pair foregrounds with the actual component surface.
   Do not remap every .text-white descendant: solid buttons and viewer overlays
   deliberately retain light text. */
html[data-design-variant="light_v32"] body > :is(nav,header,footer) a > span[style*="color:#5eb4ff"] { color:#1457c7 !important; text-shadow:none !important; }
html[data-design-variant="light_v32"] body > nav .nav-link { color:#475569 !important; }
html[data-design-variant="light_v32"] .home-route-card a { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .home-route-label { color:#854d0e !important; }
html[data-design-variant="light_v32"] #toolSidebar :is(#sidebarLightStudio,#sidebarLightSun,#sidebarLightMoon).text-primary { color:#1e40af !important; background:#eff6ff !important; }
html[data-design-variant="light_v32"] #toolSidebar .text-primary > span { color:inherit; }
html[data-design-variant="light_v32"] .text-gray-500 { color:#515b6b !important; }
html[data-design-variant="light_v32"] .text-primary[class*="bg-primary/"] { color:#1e40af !important; }
html[data-design-variant="light_v32"] .endpoint-badge.method-post { color:#1e40af !important; }
html[data-design-variant="light_v32"] .endpoint-badge.method-get { color:#166534 !important; }
html[data-design-variant="light_v32"] .pricing-plan.maker .pricing-plan-label { color:#0f766e !important; }
html[data-design-variant="light_v32"] .pricing-plan.power .pricing-plan-label,
html[data-design-variant="light_v32"] .pricing-table th:last-child { color:#854d0e !important; }
html[data-design-variant="light_v32"] .pricing-cadence { color:#475569 !important; opacity:1; }
html[data-design-variant="light_v32"] .pricing-service-card a { color:#fff !important; background:#0f766e !important; }

/* Editorial templates use light cards; their original dark-theme colors were
   spread across local styles. Scope the shared correction to content pages. */
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.card,.panel,.metric,.step,.step-card,.faq,.faq-card,.table-wrap,.info-card,.note,.callout,.answer,.answer-box,.answer-panel,.check-card,.decision-card,.source-card,.compare-card,.feature-card,.example-card,.tier-card,.mini-card,.comparison-table,.surface,.content-card,.quiet-card,.check,.route,.review-card,.review-row,.fact,.faq details,.faq article) {
  color:#172033 !important; background:#fff !important; border-color:#cbd5e1 !important;
}
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(h1,h2,h3,h4,strong,b,summary,label,.price,.tier-price,.hero-title) { color:#172033 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(p,li,td,.lead,.muted,.soft,.fine,.help,.hero-copy,.visual-note,.metric span,.model-caption,.format-pill,.compat-chip) { color:#475569 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.pill,.chip,.eyebrow,.badge,.signal-chip,.value-chip,.example-tag,.tier-badge,.step-num,.num) { color:#1e40af !important; background:#eff6ff !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main th { color:#172033 !important; background:#eaf0f5 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(p,li,td,.prose,.article-body,.source-list,.crumbs) a:not([class*="cta"]):not([class*="btn"]):not(.button),
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.source-link,.related-link,.jump-links a,.toc a) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.hero-btn-secondary,.btn-secondary,a.secondary) { color:#172033 !important; background:#fff !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.text-green-300,.text-green-400,.text-emerald-300,.text-emerald-400) { color:#166534 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.text-yellow-300,.text-yellow-400,.text-amber-300,.text-amber-400) { color:#854d0e !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.text-red-300,.text-red-400,.text-rose-300,.text-rose-400) { color:#b91c1c !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.text-blue-300,.text-blue-400,.text-sky-300,.text-cyan-300,.text-violet-300,.text-purple-300) { color:#1e40af !important; }
/* Code blocks remain dark, including their nested syntax spans. */
html[data-design-variant="light_v32"] .i3d-contrast-content main pre { color:#e2e8f0 !important; background:#111827 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main pre :is(code,span,a) { color:#e2e8f0 !important; }

html[data-design-variant="light_v32"] .model-detail-page :is(.crumbs,.lead,.fine,.fact span) { color:#475569 !important; }
html[data-design-variant="light_v32"] .model-detail-page :is(.crumbs a,.eyebrow) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .model-detail-page .chip { color:#334155 !important; background:#eef2f6 !important; }
html[data-design-variant="light_v32"] .model-detail-page .chip.candidate { color:#854d0e !important; background:#fff7ed !important; }
html[data-design-variant="light_v32"] .model-detail-page .nav-cta { color:#fff !important; background:#172033 !important; }
html[data-design-variant="light_v32"] .model-detail-page .source { color:#475569 !important; }
html[data-design-variant="light_v32"] .home-answer-block a { color:#1457c7 !important; }
/* Inline dark panel fills used by older articles, not model stages. */
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(div,section,aside)[style*="background:rgba(15,23,42"],
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(div,section,aside)[style*="background:rgba(30,33,48"] { background:#fff !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.i3d-photo-cta--primary,.btn-primary,.button:not(.secondary)) { color:#fff !important; background:#172033 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.i3d-evidence-viewer__head,figcaption) { color:#475569 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.i3d-evidence-viewer__head,figcaption) span { color:inherit !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main .source { color:#475569 !important; }
/* Showcase intentionally keeps dark example cards. Restore light text inside
   those cards instead of inheriting the page's light-surface utility mapping. */
html[data-design-variant="light_v32"] .showcase-page #quality-tiers :is(h3,span,li),
html[data-design-variant="light_v32"] .showcase-page .card-glow:not(#showcaseUploadCard) :is(h3,p,li) { color:#e2e8f0 !important; }
html[data-design-variant="light_v32"] .showcase-page #quality-tiers .text-gray-400 { color:#cbd5e1 !important; }
html[data-design-variant="light_v32"] .showcase-page > section:first-of-type :is(.text-blue-400,[style*="color:"]) { color:#1e40af !important; }
html[data-design-variant="light_v32"] .showcase-page #quality-tiers a { color:#fff !important; }
html[data-design-variant="light_v32"] .showcase-page .faq-item { background:#fff !important; }
html[data-design-variant="light_v32"] .showcase-page .faq-item :is(summary,p) { color:#334155 !important; }
/* Feedback form is a light product surface, including its nested cards. */
html[data-design-variant="light_v32"] body:has(#feedbackForm) :is(.glass-panel,.category-card,.commitment-strip,.info-item) { background:#fff !important; border-color:#cbd5e1 !important; }
html[data-design-variant="light_v32"] body:has(#feedbackForm) :is(h1,h2,h3,.panel-title,.category-name,.form-label,.form-label span) { color:#172033 !important; }
html[data-design-variant="light_v32"] body:has(#feedbackForm) :is(.subtitle,.category-desc,.char-count,.char-count span,.optional,.commitment-text,.info-item-label) { color:#475569 !important; }
html[data-design-variant="light_v32"] body:has(#feedbackForm) :is(.badge,.info-item-value,.commitment-text strong) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.path,.mini,.faq-block,.check > div,.decision > div) { color:#172033 !important; background:#fff !important; border-color:#cbd5e1 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.check > div,.decision > div) span { color:#475569 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.tag,.workflow-card > span,.column-number) { color:#1e40af !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.warning,.warning em) { color:#713f12 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.source-link,.related,.related-link) { color:#1457c7 !important; background:#eff6ff !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.refs a,.warning a,.prose-copy nav a) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main :is(.visual-top,.case-panel-head,.i3d-photo-hero__evidence-head) span { color:#475569 !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main div[style*="background:rgba(2,6,23"] { background:#fff !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main nav { color:#475569 !important; }
html[data-design-variant="light_v32"] body > header :is(.brand span,.links a) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .models-library-page .principles .eyebrow { color:#1457c7 !important; }
html[data-design-variant="light_v32"] .model-detail-page :is(.stage-head span:last-child,.crumbs) { color:#475569 !important; }
html[data-design-variant="light_v32"] body.model-detail-page header a.nav-cta,
html[data-design-variant="light_v32"] body.model-detail-page a.button.primary { color:#fff !important; }
html[data-design-variant="light_v32"] .showcase-page section[style*="padding-top"] :is(.text-blue-400,span[style*="color:"]) { color:#1e40af !important; }
html[data-design-variant="light_v32"] .showcase-page #quality-tiers > div > p.text-gray-400 { color:#475569 !important; }
html[data-design-variant="light_v32"] .showcase-page [style*="background:#111827"] :is(.text-white,.text-gray-400,.text-gray-500) { color:#e2e8f0 !important; }
html[data-design-variant="light_v32"] body:has(#feedbackForm) :is(.commitment-icon,.log-card-icon) { color:#1457c7 !important; }
html[data-design-variant="light_v32"] body:has(#feedbackForm) .log-card-body p { color:#475569 !important; }
html[data-design-variant="light_v32"] body.i3d-contrast-content > :is(header,nav) :is(.brand span,.links a),
html[data-design-variant="light_v32"] body.i3d-contrast-content > :is(header,nav) a > span { color:#1457c7 !important; text-shadow:none !important; }
html[data-design-variant="light_v32"] .i3d-contrast-content main code { color:#334155 !important; background:#f1f5f9; }
html[data-design-variant="light_v32"] .i3d-contrast-content main pre code { color:#e2e8f0 !important; background:transparent; }
html[data-design-variant="light_v32"] .i3d-contrast-content main .article-card > a[style*="background:#0f766e"] { color:#fff !important; }
html[data-design-variant="light_v32"] body.model-detail-page a.button.secondary { color:#172033 !important; }
