/*
 * Shared chain colour system for plumbers.farm and foodfarm.fun.
 *
 * Components below consume generic colour roles. A new chain only needs a
 * data-chain-theme token block and the matching root attribute; component
 * selectors must not contain chain-specific colour names.
 */

:root {
  color-scheme: dark;

  --color-bg: #070a0d;
  --color-surface-1: #0d1217;
  --color-surface-2: #121920;
  --color-surface-3: #18212b;

  --color-border: #25303b;
  --color-border-strong: #354454;

  --color-text-primary: #f4f7fa;
  --color-text-secondary: #9da8b5;
  --color-text-muted: #687583;

  --color-success: #31d07c;
  --color-warning: #f2b84b;
  --color-danger: #f05d68;

  --color-success-soft: rgb(49 208 124 / 12%);
  --color-success-border: rgb(49 208 124 / 34%);
  --color-warning-soft: rgb(242 184 75 / 12%);
  --color-warning-border: rgb(242 184 75 / 34%);
  --color-danger-soft: rgb(240 93 104 / 12%);
  --color-danger-border: rgb(240 93 104 / 34%);
  --color-scrim: rgb(0 0 0 / 68%);
  --color-shadow: rgb(0 0 0 / 34%);
}

[data-chain-theme="ethereum"] {
  --color-accent: #4d7cfe;
  --color-accent-hover: #6b91ff;
  --color-accent-pressed: #355fd4;
  --color-accent-soft: rgba(77, 124, 254, 0.12);
  --color-accent-border: rgba(77, 124, 254, 0.35);
  --color-accent-glow: rgba(77, 124, 254, 0.24);
  --color-on-accent: #ffffff;
  /* White needs the supplied pressed shade behind normal-sized control text. */
  --color-accent-fill: var(--color-accent-pressed);
  --color-accent-fill-hover: color-mix(in srgb, var(--color-accent-pressed), white 8%);
  --color-accent-fill-pressed: color-mix(in srgb, var(--color-accent-pressed), black 12%);
  --color-accent-readable: var(--color-accent-hover);
}

[data-chain-theme="robinhood"] {
  --color-accent: #b8ff3d;
  --color-accent-hover: #cbff70;
  --color-accent-pressed: #91c92c;
  --color-accent-soft: rgba(184, 255, 61, 0.10);
  --color-accent-border: rgba(184, 255, 61, 0.32);
  --color-accent-glow: rgba(184, 255, 61, 0.20);
  --color-on-accent: #071006;
  --color-accent-fill: var(--color-accent);
  --color-accent-fill-hover: var(--color-accent-hover);
  --color-accent-fill-pressed: var(--color-accent-pressed);
  --color-accent-readable: var(--color-accent);
}

/* Legacy aliases keep the existing layouts intact while their paint is themed. */
[data-chain-theme] {
  --paper: var(--color-bg);
  --paper-light: var(--color-surface-1);
  --paper-deep: var(--color-surface-1);
  --paper-dark: var(--color-surface-3);
  --card: var(--color-surface-2);
  --panel: var(--color-surface-1);
  --panel-solid: var(--color-surface-2);
  --ink: var(--color-text-primary);
  --ink-2: var(--color-surface-1);
  --ink-3: var(--color-surface-3);
  --ink-soft: var(--color-text-secondary);
  --ink-faint: var(--color-text-muted);
  --muted: var(--color-text-secondary);
  --text: var(--color-text-primary);
  --line: var(--color-border);
  --line-strong: var(--color-border-strong);
  --navy: var(--color-surface-2);
  --navy-2: var(--color-surface-1);
  --navy-deep: var(--color-bg);
  --casino: var(--color-bg);
  --casino-soft: var(--color-surface-2);
  --blue: var(--color-accent);
  --blue-soft: var(--color-accent-soft);
  --yellow: var(--color-accent);
  --yellow-pale: var(--color-surface-3);
  --gold: var(--color-accent);
  --gold-pale: var(--color-text-primary);
  --lime: var(--color-accent);
  --lime-2: var(--color-accent-pressed);
  --copper: var(--color-accent);
  --copper-dark: var(--color-accent-hover);
  --brass: var(--color-accent);
  --brass-pale: var(--color-accent-hover);
  --amber: var(--color-warning);
  --amber-soft: var(--color-warning-soft);
  --orange: var(--color-warning);
  --green: var(--color-success);
  --green-soft: var(--color-success-soft);
  --pink: var(--color-danger);
  --red: var(--color-danger);
  --red-bright: var(--color-danger);
  --red-soft: var(--color-danger-soft);
  --cream: var(--color-text-primary);
  --shadow: 0 18px 48px var(--color-shadow);

  --site-ink: var(--color-text-primary);
  --site-muted: var(--color-text-secondary);
  --site-cream: var(--color-text-primary);
  --site-paper: var(--color-surface-2);
  --site-night: var(--color-bg);
  --site-night-raised: var(--color-surface-2);
  --site-copper: var(--color-accent);
  --site-copper-light: var(--color-accent-hover);
  --site-copper-dark: var(--color-accent-pressed);
  --site-gold: var(--color-accent);
  --site-green: var(--color-success);
  --site-line-light: var(--color-border);
  --site-line-dark: var(--color-border-strong);
  --site-shadow: 0 20px 56px var(--color-shadow);

  --chart-paper: var(--color-surface-1);
  --chart-grid: var(--color-border);
  --chart-ink: var(--color-text-primary);
  --chart-up: var(--color-success);
  --chart-down: var(--color-danger);
  --chart-muted: var(--color-text-muted);

  --stocks-panel: var(--color-surface-1);
  --stocks-panel-strong: var(--color-surface-2);
  --stocks-line: var(--color-border);
  --teaser-panel: var(--color-surface-1);
  --teaser-line: var(--color-border);
}

[data-chain-theme],
[data-chain-theme] body {
  background-color: var(--color-bg);
}

[data-chain-theme] body {
  color: var(--color-text-primary);
  background-image:
    radial-gradient(circle at 8% 2%, var(--color-accent-soft), transparent 30rem),
    linear-gradient(180deg, var(--color-bg), var(--color-bg));
}

[data-chain-theme] body::before {
  background-image: radial-gradient(rgb(157 168 181 / 10%) 0.65px, transparent 0.65px);
}

[data-chain-theme] ::selection {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme] :where(button, a, input, select, textarea, summary, canvas):focus-visible {
  outline-color: var(--color-accent);
}

[data-chain-theme] :where(input, select, textarea) {
  color: var(--color-text-primary);
  background-color: var(--color-surface-1);
  border-color: var(--color-border-strong);
}

[data-chain-theme] :where(input, textarea)::placeholder {
  color: var(--color-text-muted);
  opacity: 1;
}

[data-chain-theme] :where(button, input, select, textarea):disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

/* Shared PLUMBERS chrome */
[data-chain-theme="ethereum"] body.plumbers-site {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 12% 4%, var(--color-accent-soft), transparent 31rem),
    radial-gradient(circle at 88% 42%, rgb(77 124 254 / 6%), transparent 34rem),
    var(--color-bg);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(h1, h2, h3, h4, strong, dt, dd) {
  color: inherit;
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .eyebrow,
  .card-kicker,
  .panel-kicker,
  .game-kicker,
  .brand__copy small,
  .brand-copy small,
  .drawer-title small
) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .hero__lede,
  .hero-copy,
  .section-heading > p,
  .portal-section-heading > p,
  .portal-route small,
  .card-row span,
  .panel-heading p,
  .form-status,
  .micro-status,
  .action-status,
  .site-footer,
  footer
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-header,
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar {
  color: var(--color-text-primary);
  background:
    linear-gradient(118deg, rgb(255 255 255 / 4%), transparent 36%),
    rgb(13 18 23 / 96%);
  border-color: var(--color-accent-border);
  box-shadow: 0 18px 48px var(--color-shadow), 0 0 28px rgb(77 124 254 / 6%);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-header :where(
  .brand__name,
  .brand__copy strong,
  .brand-copy strong
),
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar .brand-copy strong {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(.brand, .brand__lockup) {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-header :where(
  .brand__copy small,
  .brand-copy small,
  .brand__lockup small
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-header :where(.brand__mark, .brand-mark),
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar :where(.brand__mark, .brand-mark) {
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 13%), 0 7px 18px var(--color-shadow);
}

[data-chain-theme="ethereum"] body.plumbers-site .global-nav a,
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar nav a {
  color: var(--color-text-secondary);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  text-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site .global-nav a::before,
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar nav a::before {
  border-color: transparent;
  box-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site .global-nav a:hover,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a:focus-visible,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a.active,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a.is-active,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a[aria-current="page"],
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar nav a:hover,
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar nav a:focus-visible,
[data-chain-theme="ethereum"] body.plumbers-site .preview-toolbar nav a[aria-current="page"] {
  color: var(--color-text-primary);
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
  box-shadow: none;
  text-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site .global-nav a[aria-current="page"]::after,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a.active::after,
[data-chain-theme="ethereum"] body.plumbers-site .global-nav a.is-active::after,
[data-chain-theme="ethereum"] body.plumbers-site .main-nav a[aria-current="page"]::after {
  background: var(--color-accent);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .button--primary,
  .button--nav,
  .button--copper,
  .button--jackpot,
  .button--buy,
  .button--enter,
  .button--turn,
  .portal-copper-button,
  .wallet-button,
  .site-wallet-button,
  .button-small,
  .button--claim,
  .token-contract-banner__copy
) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
  box-shadow: 0 8px 24px var(--color-accent-glow);
  text-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .button--primary,
  .button--nav,
  .button--copper,
  .button--jackpot,
  .button--buy,
  .button--enter,
  .button--turn,
  .portal-copper-button,
  .wallet-button,
  .site-wallet-button,
  .button-small,
  .button--claim,
  .token-contract-banner__copy
):not(:disabled):hover {
  color: var(--color-on-accent);
  background: var(--color-accent-fill-hover);
  border-color: var(--color-accent-fill-hover);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .button--primary,
  .button--nav,
  .button--copper,
  .button--jackpot,
  .button--buy,
  .button--enter,
  .button--turn,
  .portal-copper-button,
  .wallet-button,
  .site-wallet-button,
  .button-small,
  .button--claim,
  .token-contract-banner__copy
):not(:disabled):active {
  background: var(--color-accent-fill-pressed);
  border-color: var(--color-accent-fill-pressed);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .button--ghost,
  .button--ink,
  .button--lifecycle,
  .refresh-button,
  .select-button,
  .copy-button,
  .text-button,
  .icon-button,
  .wallet-icon-button
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border-strong);
  box-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .button--ghost,
  .button--ink,
  .button--lifecycle,
  .refresh-button,
  .select-button,
  .copy-button,
  .text-button,
  .icon-button,
  .wallet-icon-button
):not(:disabled):hover {
  color: var(--color-text-primary);
  background: var(--color-surface-3);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .text-link,
  .portal-text-link,
  .portal-route > i,
  .token-contract-banner__address,
  .token-contract-banner__telegram,
  .back-link:hover,
  .detail-metadata-summary a,
  .market-external-link,
  .address-copy
) {
  color: var(--color-accent-readable);
  text-decoration-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .main-nav,
  .tabs,
  .range-switch,
  .modal-tabs,
  .category-rail,
  .casino-categories
) {
  color: var(--color-text-secondary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
  box-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .main-nav a:hover,
  .main-nav a.is-active,
  .main-nav a[aria-current="page"],
  .tabs button.is-active,
  .range-switch button.is-active,
  .modal-tabs button.is-active,
  [role="tab"].active,
  [role="tab"].is-active,
  [role="tab"][aria-selected="true"]
) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
  box-shadow: none;
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .network-chip,
  .network-pill,
  .deployment-state,
  .record-pill
) {
  color: var(--color-text-secondary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(
  .network-chip,
  .network-pill
)::before {
  background: var(--color-accent);
  box-shadow: 0 0 12px var(--color-accent-glow);
}

[data-chain-theme="ethereum"] body.plumbers-site :where(.site-footer, footer) {
  color: var(--color-text-secondary);
  background-color: var(--color-bg);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-footer__telegram {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] body.plumbers-site .site-footer__telegram:hover,
[data-chain-theme="ethereum"] body.plumbers-site .site-footer__telegram:focus-visible {
  color: var(--color-on-accent);
  background: var(--color-accent-fill-hover);
  border-color: var(--color-accent-fill-hover);
}

/* PLUMBERS ecosystem home */
[data-chain-theme="ethereum"] .portal-home {
  color: var(--color-text-primary);
  background: var(--color-bg);
}

[data-chain-theme="ethereum"] .portal-hero {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 77% 40%, var(--color-accent-soft), transparent 27%),
    linear-gradient(145deg, var(--color-surface-3), var(--color-surface-1) 57%, var(--color-bg));
  border-color: var(--color-accent-border);
  box-shadow: 0 28px 70px var(--color-shadow);
}

[data-chain-theme="ethereum"] .portal-hero h1,
[data-chain-theme="ethereum"] .portal-section-heading h2,
[data-chain-theme="ethereum"] .portal-section-heading--light h2,
[data-chain-theme="ethereum"] .portal-reference h2 {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .portal-hero__copy > p,
[data-chain-theme="ethereum"] .portal-section-heading > p,
[data-chain-theme="ethereum"] .portal-section-heading--light > p,
[data-chain-theme="ethereum"] .portal-reference p {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .portal-hero__ring {
  border-color: var(--color-accent-border);
  box-shadow: inset 0 0 80px var(--color-accent-soft), 0 0 90px rgb(77 124 254 / 8%);
}

[data-chain-theme="ethereum"] .portal-hero__ring::before,
[data-chain-theme="ethereum"] .portal-hero__ring::after {
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .portal-group,
[data-chain-theme="ethereum"] .portal-group--casino {
  color: var(--color-text-primary);
  background:
    linear-gradient(145deg, rgb(255 255 255 / 2%), transparent),
    var(--color-surface-1);
  border-color: var(--color-border);
  box-shadow: 0 15px 38px var(--color-shadow);
}

[data-chain-theme="ethereum"] .portal-route {
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .portal-route:hover,
[data-chain-theme="ethereum"] .portal-route:focus-visible {
  background: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .portal-route__icon,
[data-chain-theme="ethereum"] .portal-group--casino .portal-route__icon {
  color: var(--color-accent-readable);
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .portal-route small,
[data-chain-theme="ethereum"] .portal-group--casino .portal-route small {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .portal-route > i,
[data-chain-theme="ethereum"] .portal-group--casino .portal-route > i {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .portal-claim {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 8% 0%, var(--color-accent-soft), transparent 30%),
    linear-gradient(145deg, var(--color-surface-2), var(--color-bg) 66%);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .portal-claim::after {
  border-color: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .portal-home .roster-form,
[data-chain-theme="ethereum"] .portal-home .wallet-dialog form {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
  box-shadow: 0 24px 56px var(--color-shadow);
}

[data-chain-theme="ethereum"] .portal-home .roster-form :where(label, h3, h4),
[data-chain-theme="ethereum"] .portal-home .safe-claim > summary {
  color: var(--color-text-primary);
}

/* ecosystem-portal.css deliberately scopes these panels to the portal body. */
[data-chain-theme="ethereum"] body.portal-home .safe-claim > summary,
[data-chain-theme="ethereum"] body.portal-home .safe-claim__body {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
}

[data-chain-theme="ethereum"] .portal-home .roster-form :where(p, .safe-claim__status) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] body.portal-home .roster-form .roster-form__heading p {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .portal-home .roster-form input,
[data-chain-theme="ethereum"] .portal-home .safe-claim textarea {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .portal-home .roster-form input:focus,
[data-chain-theme="ethereum"] .portal-home .safe-claim textarea:focus {
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .portal-home :where(
  .roster-result,
  .claim-control,
  .safe-claim > summary,
  .safe-claim__body,
  .safe-claim__step
) {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .portal-home .roster-result.is-eligible {
  color: var(--color-success);
  background: var(--color-success-soft);
}

[data-chain-theme="ethereum"] .portal-home :where(.roster-result.is-error, .roster-result.is-ineligible) {
  color: var(--color-danger);
  background: var(--color-danger-soft);
}

[data-chain-theme="ethereum"] .portal-claim__context,
[data-chain-theme="ethereum"] .portal-reference {
  color: var(--color-text-primary);
  background:
    linear-gradient(145deg, var(--color-accent-soft), transparent 55%),
    var(--color-surface-2);
  border-color: var(--color-accent-border);
  box-shadow: 0 22px 48px var(--color-shadow);
}

[data-chain-theme="ethereum"] .portal-claim__context :where(h3, li) {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .portal-claim__context p {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .portal-claim__context li::before {
  background: var(--color-accent);
}

[data-chain-theme="ethereum"] .portal-claim__context a {
  color: var(--color-accent-hover);
}

[data-chain-theme="ethereum"] .portal-reference nav a {
  color: var(--color-text-primary);
  background: var(--color-surface-3);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .portal-contract {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .portal-contract > div span,
[data-chain-theme="ethereum"] .portal-contract .token-contract-banner__address {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .portal-home .airdrop-claim-notice {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-success-border);
  border-left-color: var(--color-success);
}

[data-chain-theme="ethereum"] body.portal-home .site-footer__telegram {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] body.portal-home .site-footer__telegram:hover,
[data-chain-theme="ethereum"] body.portal-home .site-footer__telegram:focus-visible {
  color: var(--color-on-accent);
  background: var(--color-accent-fill-hover);
}

[data-chain-theme="ethereum"] body.plumbers-site .token-contract-banner__telegram {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] body.plumbers-site .token-contract-banner__telegram:hover,
[data-chain-theme="ethereum"] body.plumbers-site .token-contract-banner__telegram:focus-visible {
  color: var(--color-on-accent);
  background: var(--color-accent-fill-hover);
  border-color: var(--color-accent-fill-hover);
}

[data-chain-theme="ethereum"] body.plumbers-site .token-contract-banner__telegram span {
  color: inherit;
}

/* PLUMBERS farm and guide */
[data-chain-theme="ethereum"] :where(.farm-page, .guide-page) :where(
  .market-board,
  .market-stat,
  .stats-card,
  .meter-card,
  .farm-tvl,
  .job-card,
  .swap-card,
  .roster-form,
  .cohort-card,
  .roster-rule,
  .spec-grid,
  .guide-toc,
  .guide-article,
  .fact-grid article,
  .contract-list a
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
  box-shadow: 0 14px 34px var(--color-shadow);
}

[data-chain-theme="ethereum"] .farm-page :where(
  .market-stat--price,
  .market-stat--bonus,
  .stats-card--supply,
  .swap-settings,
  .apr-readout,
  .pressure-strip,
  .protocol-guide,
  .spec-banner
) {
  color: var(--color-text-primary);
  background: var(--color-surface-3);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 86% 8%, var(--color-accent-soft), transparent 38%),
    linear-gradient(135deg, var(--color-surface-3), var(--color-surface-1));
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card::after {
  border-color: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card__headline > strong {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card :where(
  .circulating-cap-card__headline > span,
  .circulating-cap-card__metrics dt,
  .circulating-cap-card__note
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card__metrics > div {
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .farm-page .circulating-cap-card__metrics dd {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .farm-page :where(
  .token-contract-banner,
  .stats-card--timeline > .stats-card__topline
) {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .farm-page :where(
  .market-stat span,
  .stats-card__topline p,
  .stats-segment__kicker,
  .card-kicker,
  .flow-list span,
  .spec-grid span,
  .community-pressure__copy .eyebrow
) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .farm-page :where(
  .market-stat small,
  .stats-card__primary-label,
  .stats-breakdown dt,
  .timeline-details dt,
  .swap-details small,
  .card-row span,
  .job-card__title p,
  .section-heading > p
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .farm-page :where(
  .stats-annulus__progress-value,
  .schedule-chart i,
  .split-bar > span i,
  .support-chart__creation,
  .support-chart__swaps,
  .flow-list li::before
) {
  border-color: var(--color-accent);
  background-color: var(--color-accent);
  stroke: var(--color-accent);
}

[data-chain-theme="ethereum"] .farm-page .community-pressure {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .farm-page .community-pressure__bonus {
  color: var(--color-text-primary);
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .farm-page .swap-slippage-controls > button.is-active {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .farm-page :where(.roster-result.is-eligible, [data-state="success"]) {
  color: var(--color-success);
}

[data-chain-theme="ethereum"] .farm-page :where(.roster-result.is-error, [data-state="error"], [data-level="high"]) {
  color: var(--color-danger);
}

[data-chain-theme="ethereum"] .farm-page :where([data-state="warning"], [data-level="warning"]) {
  color: var(--color-warning);
}

[data-chain-theme="ethereum"] .guide-page :where(.guide-toc a:hover, .guide-article a, .contract-list a:hover) {
  color: var(--color-accent-readable);
  background-color: var(--color-accent-soft);
}

/* Farm Factory */
[data-chain-theme="ethereum"] .factory-page {
  color: var(--color-text-primary);
  background: var(--color-bg);
}

[data-chain-theme="ethereum"] .factory-page :where(.eyebrow, h1 span, .brand__copy small) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .factory-page .main-nav a::after {
  background: var(--color-accent);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .factory-board,
  .how-to-steps,
  .directory-tools,
  .farm-card,
  .detail-stats,
  .panel,
  .create-shell,
  .review-card,
  .docs-card-grid article,
  .docs-contract-list article,
  .modal
) {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .factory-board article,
  .how-to-steps li,
  .detail-stats article,
  .panel-heading,
  .farm-card dl,
  .farm-card dl div,
  .docs-card-grid article
) {
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .directory-tools input,
  .directory-tools select,
  .create-form input,
  .create-form select,
  .modal input,
  .modal select,
  .inline-swap-panel input,
  .inline-swap-panel select,
  .asset-input,
  .amount-input
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .factory-board span,
  .factory-board small,
  .how-to-steps p,
  .how-to-creator,
  .directory-tools label > span,
  .farm-card dt,
  .farm-card footer,
  .detail-stats span,
  .detail-stats small,
  .docs-copy
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .how-to-steps li > span,
  .farm-card__apy strong,
  .detail-metadata-summary a,
  .copy-button,
  .inline-max,
  .auto-note
) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .factory-page .how-to-creator {
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .factory-page :where(.range-switch, .modal-tabs) {
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .factory-page :where(
  .range-switch button.is-active,
  .modal-tabs button.is-active,
  .factory-view-nav a[aria-current="page"]
) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .factory-page .factory-view-nav a[aria-current="page"] {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .factory-page :where(.factory-view-nav, .main-nav) {
  background: var(--color-surface-1);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .factory-page .site-footer a {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .factory-page .skip-link {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .factory-page :where(.form-status[data-state="error"], .text-button--danger, [data-direction="down"]) {
  color: var(--color-danger);
}

[data-chain-theme="ethereum"] .factory-page :where(.form-status[data-state="success"], [data-direction="up"], [data-depth="green"] strong) {
  color: var(--color-success);
}

[data-chain-theme="ethereum"] .factory-page :where([data-depth="amber"] strong, [data-state="warning"], [data-level="warning"]) {
  color: var(--color-warning);
}

/* Nametags and Pressure Gauge */
[data-chain-theme="ethereum"] :where(.names-page, .gauge-page) :where(
  .search-shell,
  .registration-card,
  .pricing-card,
  .truth-card,
  .manage,
  .panel,
  .status-strip,
  .snapshot-panel,
  .facts div,
  .bonus-list div,
  .family-card,
  .achievement-row,
  .rule-grid article
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
  box-shadow: 0 14px 34px var(--color-shadow);
}

[data-chain-theme="ethereum"] :where(.names-page, .gauge-page) :where(
  .name-field,
  .cost-panel,
  .manage-result,
  .board-row,
  .board-pagination,
  .pressure-state-card,
  .achievement-ladder,
  .achievement-progress,
  .rank-track,
  .threshold-track
) {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] :where(.names-page, .gauge-page) :where(
  .eyebrow,
  .hero__sign span,
  .text-link span,
  .board-row > span:first-child,
  .achievement-dropdown-summary small,
  .achievement-dropdown-summary::after,
  .family-copy > small,
  .family-meta b,
  .achievement-row-heading small,
  .rule-grid b
) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .names-page .hero__sign strong {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .names-page .hero__sign small {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .names-page .truth-card li {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] :where(.names-page, .gauge-page) :where(
  .rank-track i,
  .threshold-track i,
  .achievement-progress i
) {
  background: linear-gradient(90deg, var(--color-accent-pressed), var(--color-accent));
}

[data-chain-theme="ethereum"] .gauge-page :where(.board-row:hover, .board-row:focus-visible, .family-summary:hover, .family-summary:focus-visible) {
  background: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .gauge-page .achievement-filters button.active {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .gauge-page .achievement-row.is-highlighted {
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px var(--color-accent-soft), 0 10px 28px var(--color-shadow);
}

[data-chain-theme="ethereum"] .gauge-page .achievement-toast {
  color: var(--color-text-primary);
  background: linear-gradient(115deg, var(--color-bg), var(--color-surface-2));
  border-color: var(--color-accent);
}

[data-chain-theme="ethereum"] body.gauge-page .hero-actions .button,
[data-chain-theme="ethereum"] body.gauge-page .button:not(.button-ghost) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
  box-shadow: 0 8px 24px var(--color-accent-glow);
}

[data-chain-theme="ethereum"] body.gauge-page .button:not(.button-ghost):hover:not(:disabled) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill-hover);
  border-color: var(--color-accent-fill-hover);
}

[data-chain-theme="ethereum"] body.gauge-page .button-ghost {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border: 1px solid var(--color-border-strong);
  box-shadow: none;
}

[data-chain-theme="ethereum"] body.gauge-page .hero-actions .text-link {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] body.gauge-page .snapshot-checklist li > span {
  color: var(--color-bg);
}

/* Casino lobby and game pages */
[data-chain-theme="ethereum"] :where(.casino-page, .casino-game-page) {
  color: var(--color-text-primary);
  background: var(--color-bg);
}

[data-chain-theme="ethereum"] .casino-page :where(
  .casino-assurances,
  .casino-drawer,
  .history-table-wrap,
  .fairness li,
  .player-prizes__empty
) {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
  box-shadow: 0 12px 30px var(--color-shadow);
}

[data-chain-theme="ethereum"] .casino-page .casino-hero {
  border-color: var(--color-accent-border);
  box-shadow: 0 24px 60px var(--color-shadow), 0 0 32px rgb(77 124 254 / 7%);
}

[data-chain-theme="ethereum"] .casino-page .marquee {
  color: var(--color-on-accent);
  background:
    repeating-linear-gradient(90deg, transparent 0 5px, rgb(255 255 255 / 4%) 6px),
    linear-gradient(90deg, var(--color-accent-fill-pressed), var(--color-accent-fill-hover), var(--color-accent-fill-pressed));
  border-block-color: var(--color-accent-border);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 13%), 0 7px 20px var(--color-accent-glow);
}

[data-chain-theme="ethereum"] .casino-page .marquee i {
  color: var(--color-on-accent);
}

[data-chain-theme="ethereum"] .casino-page :where(.casino-category, .game-tile) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-page :where(.casino-category.is-active, .casino-category[aria-selected="true"]) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .casino-page .casino-categories a:hover {
  color: var(--color-text-primary);
  background: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .casino-page .casino-categories a.active {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
  box-shadow: 0 7px 18px var(--color-accent-glow);
}

[data-chain-theme="ethereum"] .casino-page .casino-categories a.active span {
  background: rgb(0 0 0 / 16%);
}

[data-chain-theme="ethereum"] .casino-page .game-tile:hover,
[data-chain-theme="ethereum"] .casino-page .game-tile:focus-visible {
  border-color: var(--color-accent);
  box-shadow: 0 18px 42px var(--color-accent-glow);
}

[data-chain-theme="ethereum"] .casino-page .game-facts b {
  color: var(--color-text-primary);
  background: var(--color-surface-3);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-page :where(.game-cta, .jackpot strong, .prize-card__round) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .casino-page .lottery-sign {
  color: var(--color-text-primary);
  background:
    linear-gradient(180deg, rgb(255 255 255 / 4%), transparent 36%),
    var(--color-surface-2);
  border-color: var(--color-surface-3);
  box-shadow: inset 0 0 0 2px var(--color-accent-border), 0 17px 36px var(--color-shadow);
}

[data-chain-theme="ethereum"] .casino-page .lottery-sign::before {
  border-color: var(--color-accent-border);
}

[data-chain-theme="ethereum"] .casino-page .lottery-sign__bulbs {
  background-image: radial-gradient(circle, var(--color-accent-hover) 0 2px, var(--color-accent-pressed) 3px, transparent 4px);
}

[data-chain-theme="ethereum"] .casino-page .lottery-sign :where(p, h2, span) {
  color: var(--color-text-primary);
  text-shadow: none;
}

[data-chain-theme="ethereum"] .casino-page .lottery-board {
  color: var(--color-text-primary);
  background: var(--color-border);
  border-color: var(--color-border-strong);
  box-shadow: 0 24px 48px var(--color-shadow);
}

[data-chain-theme="ethereum"] .casino-page :where(.round-display, .ticket-window) {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 18% 8%, var(--color-accent-soft), transparent 33%),
    var(--color-surface-1);
}

[data-chain-theme="ethereum"] .casino-page :where(
  .round-display__topline,
  .ticket-window__heading,
  .jackpot span,
  .jackpot small,
  .quantity-label,
  .ticket-receipt dt,
  .wallet-readout,
  .drawer-description
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="ethereum"] .casino-page :where(
  .round-stats,
  .round-stats div,
  .quantity-control button,
  .quantity-control input,
  .winner-vault,
  .vault-meter,
  .prize-card,
  .truth-strip
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .casino-page :where(.casino-drawer > summary:hover, .casino-drawer[open] > summary) {
  background: var(--color-surface-2);
}

[data-chain-theme="ethereum"] .casino-page :where(th, .drawer-number, .fairness li > b) {
  color: var(--color-accent-readable);
  background: var(--color-surface-2);
}

[data-chain-theme="ethereum"] .casino-page :where(th, td, .fairness li, .casino-assurances > span) {
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-page .vesting-track i,
[data-chain-theme="ethereum"] .casino-game-page :where(.reserve-meter i, .ticket-meter i) {
  background: var(--color-accent);
}

[data-chain-theme="ethereum"] .casino-page :where(.button--claim, .prize-card__button) {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
  border-color: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .casino-page :where(.status-lamp i.is-open, .game-state--live i) {
  background-color: var(--color-success);
}

[data-chain-theme="ethereum"] .casino-page .reserve-status {
  color: var(--color-success);
  background: transparent;
}

[data-chain-theme="ethereum"] .casino-page .status-lamp i.is-waiting {
  background-color: var(--color-warning);
}

[data-chain-theme="ethereum"] .casino-page .reserve-status.is-needed {
  color: var(--color-warning);
  background: transparent;
}

[data-chain-theme="ethereum"] .casino-page :where(.micro-status.is-error, .action-status.is-error, .player-prizes__status.is-error) {
  color: var(--color-danger);
}

[data-chain-theme="ethereum"] .casino-page :where(.micro-status.is-success, .action-status.is-success, .player-prizes__status.is-success) {
  color: var(--color-success);
}

[data-chain-theme="ethereum"] .casino-game-page :where(
  .game-hero,
  .game-board,
  .entry-card,
  .entry-panel,
  .outcome-card,
  .history-card,
  .empty-state,
  .round-chip,
  .rules,
  .ticket-meter,
  .number-control,
  .gauge-panel,
  .valve-panel,
  .turn-panel,
  .round-panel
) {
  color: var(--color-text-primary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
  box-shadow: 0 16px 42px var(--color-shadow);
}

[data-chain-theme="ethereum"] .casino-game-page :where(
  .game-hero .eyebrow,
  .game-hero__stat strong,
  .gauge-hub strong,
  .pressure-result,
  .ticket-meter__topline strong,
  .rules li::before
) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .casino-game-page :where(
  .number-control button,
  .number-control input,
  .history-replay,
  .rules li,
  .funding-rule
) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-game-page :where(.turn-receipt, .turn-receipt > div) {
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-game-page :where(.number-control button:hover, .history-replay:hover) {
  background: var(--color-accent-soft);
}

[data-chain-theme="ethereum"] .casino-game-page .ordering-rule {
  color: var(--color-text-primary);
  background: var(--color-danger-soft);
  border-left-color: var(--color-danger);
}

[data-chain-theme="ethereum"] .casino-game-page :where(.micro-status.error, .action-status.error) {
  color: var(--color-danger);
}

[data-chain-theme="ethereum"] .casino-game-page :where(.micro-status.success, .action-status.success, .state-badge) {
  color: var(--color-success);
}

[data-chain-theme="ethereum"] .casino-game-page .round-chip > span,
[data-chain-theme="ethereum"] .casino-game-page .round-chip span {
  color: var(--color-success);
}

[data-chain-theme="ethereum"] .casino-game-page .round-chip strong {
  color: var(--color-text-primary);
  border-color: var(--color-border);
}

[data-chain-theme="ethereum"] .casino-game-page .empty-state {
  color: var(--color-text-secondary);
  background: var(--color-surface-2);
}

[data-chain-theme="ethereum"] .casino-game-page .state-badge {
  color: var(--color-bg);
  background: var(--color-success);
}

[data-chain-theme="ethereum"] .casino-game-page :where(.state-badge.refund, .state-badge.skipped) {
  color: var(--color-bg);
  background: var(--color-warning);
}

[data-chain-theme="ethereum"] .casino-game-page .deployment-notice {
  color: var(--color-danger);
  background: var(--color-danger-soft);
  border-color: var(--color-danger-border);
}

/* System map: keep the recognisable copper pipes; theme the surrounding UI. */
[data-chain-theme="ethereum"] .system-map-page .system-map {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 50% 50%, var(--color-accent-soft), transparent 58%),
    var(--color-surface-1);
  border-color: var(--color-accent-border);
  box-shadow: 0 24px 70px var(--color-shadow), inset 0 0 70px var(--color-shadow);
}

[data-chain-theme="ethereum"] .system-map-page :where(.system-map__heading p, .system-map__legend b) {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .system-map-page :where(.system-map__heading h1, .system-map__heading span, .system-map__legend span) {
  color: var(--color-text-primary);
}

[data-chain-theme="ethereum"] .system-map-page .system-node {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border-strong);
}

[data-chain-theme="ethereum"] .system-map-page :where(.system-node--hero, .system-node--gold) {
  border-color: var(--color-accent);
}

[data-chain-theme="ethereum"] .system-map-page .system-node__topline b {
  color: var(--color-on-accent);
  background: var(--color-accent-fill);
}

[data-chain-theme="ethereum"] .system-map-page .system-node__topline span {
  color: var(--color-accent-readable);
}

[data-chain-theme="ethereum"] .system-map-page .system-node p {
  color: var(--color-text-secondary);
}

/* Food Farm: same neutrals, Robinhood Chain accent. */
[data-chain-theme="robinhood"] body {
  color: var(--color-text-primary);
  background:
    radial-gradient(circle at 8% 4%, var(--color-accent-soft), transparent 28rem),
    radial-gradient(circle at 94% 24%, rgb(184 255 61 / 4%), transparent 32rem),
    var(--color-bg);
}

[data-chain-theme="robinhood"] body.farm-stocks-page {
  --stocks-panel: var(--color-surface-1);
  --stocks-panel-strong: var(--color-surface-2);
  --stocks-line: var(--color-border);
  --stocks-warm: var(--color-accent);
  --stocks-copper: var(--color-accent);
}

[data-chain-theme="robinhood"] body.farm-stocks-teaser-page {
  --teaser-panel: var(--color-surface-1);
  --teaser-line: var(--color-border);
  --teaser-warm: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(.site-header, .farm-stocks-page, .farm-stocks-teaser-page) {
  background-color: var(--color-bg);
}

[data-chain-theme="robinhood"] .site-header {
  background: rgb(13 18 23 / 94%);
  border-color: var(--color-border);
}

[data-chain-theme="robinhood"] .global-banner {
  color: var(--color-text-primary);
  background: var(--color-accent-soft);
  border-bottom: 1px solid var(--color-accent-border);
}

[data-chain-theme="robinhood"] :where(.brand i, .eyebrow, h1 span, h2 span, a.text-link) {
  color: var(--color-accent);
}

[data-chain-theme="robinhood"] .brand-mark {
  color: var(--color-on-accent);
  background: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(
  .main-nav,
  .network-control,
  .price-mode-control,
  .points-pill,
  .referral-rewards-pill,
  .wallet-menu
) {
  color: var(--color-text-secondary);
  background: var(--color-surface-1);
  border-color: var(--color-border);
}

[data-chain-theme="robinhood"] :where(
  .stocks-global-banner.demo,
  .stocks-global-banner.preview
) {
  color: var(--color-text-primary);
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="robinhood"] :where(.main-nav a:hover, .nav-link:hover) {
  color: var(--color-text-primary);
  background: var(--color-surface-3);
}

[data-chain-theme="robinhood"] :where(.main-nav a.active, .nav-link.active) {
  color: var(--color-on-accent);
  background: var(--color-accent);
}

[data-chain-theme="robinhood"] body.farm-stocks-page .stocks-header .main-nav a.active,
[data-chain-theme="robinhood"] body.farm-stocks-teaser-page .stocks-header .main-nav a.active {
  color: var(--color-on-accent);
  background: var(--color-accent);
  border-color: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(
  .button-primary,
  .stocks-header .main-nav a.active,
  .stock-chart-controls [aria-selected="true"],
  .trade-tabs [aria-selected="true"],
  .action-tabs [aria-selected="true"]
) {
  color: var(--color-on-accent);
  background: var(--color-accent);
  border-color: var(--color-accent);
  box-shadow: 0 8px 24px var(--color-accent-glow);
}

[data-chain-theme="robinhood"] .button-primary:not(:disabled):hover {
  color: var(--color-on-accent);
  background: var(--color-accent-hover);
  border-color: var(--color-accent-hover);
}

[data-chain-theme="robinhood"] .button-primary:not(:disabled):active {
  background: var(--color-accent-pressed);
  border-color: var(--color-accent-pressed);
}

[data-chain-theme="robinhood"] :where(.button-ghost, .button-wallet) {
  color: var(--color-text-primary);
  background: var(--color-surface-2);
  border-color: var(--color-border-strong);
}

[data-chain-theme="robinhood"] :where(.button-ghost, .button-wallet):not(:disabled):hover {
  background: var(--color-surface-3);
  border-color: var(--color-accent-border);
}

[data-chain-theme="robinhood"] :where(
  .hero-card,
  .farm-card,
  .wizard-card,
  .token-detail,
  .action-card,
  .dialog-card,
  .reward-card,
  .panel-card,
  .stock-create-card,
  .farm-stock-console,
  .teaser-machine,
  .model-grid,
  .economics-flow,
  .principles-list,
  .teaser-boundary
) {
  color: var(--color-text-primary);
  background-color: var(--color-surface-1);
  border-color: var(--color-border);
  box-shadow: 0 24px 80px var(--color-shadow);
}

[data-chain-theme="robinhood"] :where(
  .hero-market,
  .farm-card,
  .wizard-step,
  .form-section,
  .token-about,
  .detail-metrics,
  .action-tabs,
  .curve-facts,
  .holder-values,
  .yield-ledger,
  .stock-activity-row,
  .model-grid article,
  .phase,
  .fee-rail,
  .principles-list p
) {
  border-color: var(--color-border);
}

[data-chain-theme="robinhood"] :where(
  .stocks-cycle,
  .cycle-node,
  .stocks-platform-orbit,
  .orbit-node,
  .stocks-platform-stats,
  .stock-farm-card,
  .stock-create-preview,
  .stocks-search,
  .stocks-sort,
  .stock-preview-chart,
  .stock-preview-metrics div,
  .stock-preview-allocation div,
  .machine-progress,
  .machine-output,
  .principles-list,
  .teaser-boundary
) {
  border-color: var(--color-border);
}

[data-chain-theme="robinhood"] :where(
  .hero-market,
  .farm-card,
  .farm-card::before,
  .wizard-card,
  .token-detail,
  .action-card,
  .panel-card,
  .stock-create-card,
  .farm-stock-console,
  .teaser-machine
) {
  background-image:
    linear-gradient(rgb(255 255 255 / 2%), rgb(255 255 255 / 0%)),
    linear-gradient(var(--color-surface-1), var(--color-surface-1));
}

[data-chain-theme="robinhood"] :where(
  .farm-stock-avatar,
  .stock-card-avatar,
  .stock-preview-token > span,
  .flow-seed,
  .stocks-fixed-pill
) {
  color: var(--color-accent);
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="robinhood"] .stock-farm-card:hover {
  border-color: var(--color-accent-border);
  box-shadow: 0 24px 60px var(--color-shadow), 0 0 24px var(--color-accent-glow);
}

[data-chain-theme="robinhood"] .stock-card-track i {
  background: linear-gradient(90deg, var(--color-accent-pressed), var(--color-accent));
}

[data-chain-theme="robinhood"] :where(
  .hero-copy > p,
  .page-heading p,
  .section-heading p,
  .farm-card p,
  .farm-card dt,
  .wizard-card small,
  .token-about p,
  .stocks-hero-lede,
  .stocks-hero-note,
  .teaser-lede,
  .teaser-note,
  .model-grid p,
  .phase span,
  .principles-list span,
  .teaser-boundary > p
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="robinhood"] body.farm-stocks-page :where(.orbit-core, .orbit-node) small,
[data-chain-theme="robinhood"] body.farm-stocks-page .stocks-platform-stats small,
[data-chain-theme="robinhood"] body.farm-stocks-page .stocks-platform-stats span,
[data-chain-theme="robinhood"] body.farm-stocks-page .stock-card-token small,
[data-chain-theme="robinhood"] body.farm-stocks-page .stock-card-metrics span {
  color: var(--color-text-secondary);
}

[data-chain-theme="robinhood"] body .audience-number {
  color: var(--color-text-muted);
}

[data-chain-theme="robinhood"] body footer small {
  color: var(--color-text-secondary);
}

[data-chain-theme="robinhood"] :where(
  .cycle-node span,
  .cycle-center,
  .stocks-platform-stats span,
  .stocks-platform-stats small,
  .stock-card-token small,
  .stock-card-progress-copy,
  .stock-card-metrics span,
  .stock-card-footer,
  .stocks-platform-principles article p:last-child,
  .stock-create-step label em,
  .stock-create-step label small,
  .stock-preview-token small,
  .stock-preview-token p,
  .stock-preview-chart > div,
  .stock-preview-metrics span,
  .stock-preview-allocation small,
  .stock-create-preview > p,
  .machine-pair div span,
  .machine-output small,
  .machine-lock,
  .phase span,
  .principles-list span
) {
  color: var(--color-text-secondary);
}

[data-chain-theme="robinhood"] :where(
  .hero-chart .chart-line,
  .stock-preview-chart .chart-line,
  .cycle-lines path
) {
  stroke: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(
  .hero-chart .chart-fill,
  .stock-preview-chart .chart-fill
) {
  fill: var(--color-accent-soft);
}

[data-chain-theme="robinhood"] :where(
  .progress-track i,
  .farm-card-progress i,
  .preview-track i,
  .harvest-progress-track i,
  .chart-loading i
) {
  background: var(--color-accent);
  box-shadow: 0 0 18px var(--color-accent-glow);
}

[data-chain-theme="robinhood"] .terminal-actions :where(.buy-dot, .lp-dot, .farm-dot, .harvest-dot) {
  background: var(--color-accent);
}

[data-chain-theme="robinhood"] .status-badge.status-active {
  color: var(--color-success);
  background: var(--color-success-soft);
  border-color: var(--color-success-border);
}

[data-chain-theme="robinhood"] .status-badge.status-upcoming {
  color: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(
  .stock-create-step input:focus,
  .trade-token-picker input:focus
) {
  border-color: var(--color-accent);
  box-shadow: 0 0 0 3px var(--color-accent-soft);
}

[data-chain-theme="robinhood"] :where(
  .stock-create-stepper li.active,
  .teaser-boundary
) {
  background: var(--color-accent-soft);
  border-color: var(--color-accent-border);
}

[data-chain-theme="robinhood"] :where(
  .stock-create-stepper li.active b,
  .stock-quick-quotes button.active,
  .stock-curve-presets button.active
) {
  color: var(--color-on-accent);
  background: var(--color-accent);
  border-color: var(--color-accent);
}

[data-chain-theme="robinhood"] .teaser-boundary .eyebrow {
  color: var(--color-accent);
}

[data-chain-theme="robinhood"] :where(
  .farm-card .apr-value,
  .launch-state,
  .machine-topline b,
  .machine-output b,
  .model-number,
  .model-grid small,
  .phase.active b,
  .fee-rail b,
  .stocks-network i
) {
  color: var(--color-accent);
}

[data-chain-theme="robinhood"] .stocks-network i {
  background: var(--color-accent);
  box-shadow: 0 0 12px var(--color-accent-glow);
}

[data-chain-theme="robinhood"] :where(.form-status.error, [data-state="error"], .negative) {
  color: var(--color-danger);
}

[data-chain-theme="robinhood"] :where(.form-status.success, [data-state="success"], .positive) {
  color: var(--color-success);
}

[data-chain-theme="robinhood"] .form-status.error {
  color: var(--color-danger) !important;
}

[data-chain-theme="robinhood"] .form-status.success {
  color: var(--color-success) !important;
}

[data-chain-theme="robinhood"] :where(.global-banner.warning, [data-state="warning"]) {
  color: var(--color-warning);
  background: var(--color-warning-soft);
  border-color: var(--color-warning-border);
}

[data-chain-theme="robinhood"] :where(.global-banner.error, .error-banner) {
  color: var(--color-danger);
  background: var(--color-danger-soft);
  border-color: var(--color-danger-border);
}

[data-chain-theme="robinhood"] :where(.global-banner.success, .success-banner) {
  color: var(--color-success);
  background: var(--color-success-soft);
  border-color: var(--color-success-border);
}

[data-chain-theme="robinhood"] :where(dialog, .dialog-card, .wallet-menu) {
  color: var(--color-text-primary);
  background-color: var(--color-surface-2);
  border-color: var(--color-border-strong);
}

[data-chain-theme="robinhood"] .site-footer {
  color: var(--color-text-secondary);
  background: var(--color-bg);
  border-color: var(--color-border);
}
