/* Shared calm palette. Keep marketing pages on one luminance level. */
:root {
  --cb-background: #edf0eb;
  --cb-surface: #e3e9e2;
  --cb-card: #f3f5f0;
  --cb-text: #26382f;
  --cb-muted: #536459;
  --cb-border: #bdcbbf;
  --cb-accent: #326b53;
  --cb-button-text: #f3f5f0;
  --cb-hover: #d5e0d5;
  --cb-art: #d8dfcc;
  color-scheme: light;
}
body.calm-theme, .calm-theme .home-page {
  color-scheme: inherit;
  --ink: var(--cb-text); --page: var(--cb-background); --paper: var(--cb-surface);
  --muted: var(--cb-muted); --line: var(--cb-border); --accent: var(--cb-accent);
  --gold: var(--cb-accent); --green: var(--cb-accent);
  background: var(--cb-background); color: var(--cb-text);
}
.calm-theme .site-header, .calm-theme header.nav {
  background: var(--cb-background); border-color: var(--cb-border);
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
.calm-theme .home-page main > .hero-new,
.calm-theme .hero-zone, .calm-theme .content,
.calm-theme .home-page .evidence-band, .calm-theme .home-page .final {
  background: var(--cb-background); color: var(--cb-text);
}
.calm-theme .home-page h1, .calm-theme .home-page h2,
.calm-theme .home-page h3, .calm-theme .home-page .proof-rail strong,
.calm-theme h1 em, .calm-theme .status strong {color: var(--cb-text)}
.calm-theme .home-page .hero-statement, .calm-theme .home-page .sublead,
.calm-theme .home-page .hero-new .hero-facts, .calm-theme .home-page .hero-release,
.calm-theme .home-page .hero-release a, .calm-theme .home-page .hero-new .product-stage figcaption,
.calm-theme .home-page .hero-new .product-stage figcaption a,
.calm-theme .home-page .community-preview p:not(.eyebrow),
.calm-theme .home-page .generation-choice p, .calm-theme .home-page .proof-rail span,
.calm-theme .home-page .evidence-copy > p, .calm-theme .home-page .evidence-copy .text-action,
.calm-theme .home-page .metric-list dt, .calm-theme .home-page .pro-panel > p,
.calm-theme .home-page .pro-panel li,
.calm-theme .v5 p, .calm-theme .v5-faq details p, .calm-theme .micro,
.calm-theme .status, .calm-theme .credit, .calm-theme footer,
.calm-theme .visual-tag span {color: var(--cb-muted)}
.calm-theme .home-page .eyebrow, .calm-theme .home-page .community-preview .eyebrow,
.calm-theme .home-page .metric-list dd, .calm-theme .v5-features article:before,
.calm-theme .kicker, .calm-theme .pro .kicker, .calm-theme .visual-tag strong {color: var(--cb-accent)}
.calm-theme .home-page main > .generation-choice,
.calm-theme .home-page main > .community-preview,
.calm-theme .home-page .trial-notice, .calm-theme .trial-notice,
.calm-theme .v5-license, .calm-theme .pro {
  background: var(--cb-surface); color: var(--cb-text);
  border: 1px solid var(--cb-border); box-shadow: none;
}
.calm-theme .trial-notice p, .calm-theme .trial-notice a,
.calm-theme .pro p, .calm-theme .v5-license p {color: var(--cb-muted)}
.calm-theme .home-page .proof-rail, .calm-theme .home-page .session-picker-grid a,
.calm-theme .home-page .plan-card, .calm-theme .home-page .cards article,
.calm-theme .home-page .price-panel, .calm-theme .home-page .discovery-links a,
.calm-theme .v5-features article, .calm-theme .visual-tag {
  background: var(--cb-card); color: var(--cb-text);
  border-color: var(--cb-border); box-shadow: none;
}
.calm-theme .home-page .button.primary, .calm-theme .home-page .button.light,
.calm-theme .home-page .hero-new .button.primary, .calm-theme .btn.primary,
.calm-theme .pro .btn, .calm-theme .home-page .nav-cta {
  background: var(--cb-accent); color: var(--cb-button-text);
  border-color: var(--cb-accent); box-shadow: none;
}
.calm-theme .home-page .button.secondary, .calm-theme .home-page .button.dark-outline,
.calm-theme .home-page .hero-new .button.secondary,
.calm-theme .home-page .community-preview .button, .calm-theme .btn.secondary,
.calm-theme .nav-download {
  background: transparent; color: var(--cb-text)!important;
  border-color: var(--cb-border); box-shadow: none;
}
.calm-theme .home-page .button:hover, .calm-theme .btn:hover,
.calm-theme .home-page .hero-new .button.primary:hover {
  background: var(--cb-hover); color: var(--cb-text); border-color: var(--cb-accent);
}
.calm-theme .home-page .hero-new .product-stage {transform:none}
.calm-theme .home-page .hero-new .product-stage img {
  background: var(--cb-surface); border-color: var(--cb-border);
  box-shadow: 0 12px 32px #26382f12; filter:none;
}
.calm-theme .home-page .hero-new .product-stage figcaption {background:transparent}
.calm-theme .home-page .proof-rail div, .calm-theme .home-page .metric-list,
.calm-theme .home-page .metric-list div, .calm-theme .v5 details,
.calm-theme .support-note, .calm-theme .status, .calm-theme footer {border-color:var(--cb-border)}
.calm-theme .cover {box-shadow:none;border-color:var(--cb-border)}
.calm-theme .disc {background:var(--cb-art);box-shadow:none}
.calm-theme .disc:after {border-color:var(--cb-border)}
.calm-theme a:focus-visible, .calm-theme summary:focus-visible {outline:3px solid var(--cb-accent);outline-offset:4px}

/* Native preference: updates immediately when the OS appearance changes. */
@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --cb-background: #18211e;
    --cb-surface: #202c26;
    --cb-card: #25322c;
    --cb-text: #e2e9e2;
    --cb-muted: #b0bfb3;
    --cb-border: #4c6355;
    --cb-accent: #99c5a8;
    --cb-button-text: #18251d;
    --cb-hover: #344b3c;
    --cb-art: #3a4b3e;
  }
}
/* These components previously used fixed colors outside the shared palette. */
.calm-theme nav, .calm-theme .nav-right .selected,
.calm-theme .home-page .plan-heading strong {color:var(--cb-text)}
.calm-theme .nav-right a, .calm-theme .section-head > p,
.calm-theme .signal p, .calm-theme .how-intro p,
.calm-theme .steps p, .calm-theme details p {color:var(--cb-muted)}
.calm-theme .signal-icon, .calm-theme .steps li:before {color:var(--cb-accent)}
.calm-theme .signals, .calm-theme .signal, .calm-theme .signal + .signal,
.calm-theme .steps li, .calm-theme .steps li:before,
.calm-theme details {border-color:var(--cb-border)}
.calm-theme .home-page .install-command,
.calm-theme .home-page .answer-list li:hover,
.calm-theme .home-page .discovery-links a:hover,
.calm-theme .home-page .discovery-links a:focus-visible {
  background:var(--cb-surface);color:var(--cb-text);border-color:var(--cb-border);
}
.calm-theme .home-page .hero-new .hero-facts li + li::before {color:var(--cb-muted)}
/* Consent UI must remain legible on launch pages that do not load styles.css. */
.calm-theme .analytics-consent{position:fixed;z-index:100;left:16px;right:16px;bottom:16px;max-width:640px;margin:0 auto;padding:18px 22px;background:var(--cb-card);color:var(--cb-text);border:1px solid var(--cb-border);border-radius:12px;box-shadow:0 8px 32px #0003;font-size:13px;line-height:1.5}
.calm-theme .analytics-consent p{margin:0 0 12px;color:var(--cb-text)}
.calm-theme .analytics-consent > div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.calm-theme .analytics-consent button{font:inherit;font-weight:650;border:1px solid var(--cb-accent);border-radius:6px;padding:9px 14px;background:var(--cb-accent);color:var(--cb-button-text);cursor:pointer;min-height:40px}
.calm-theme .analytics-consent .analytics-decline{background:transparent;color:var(--cb-text);border-color:var(--cb-border)}
.calm-theme .analytics-consent a{color:var(--cb-muted);text-underline-offset:3px}
.calm-theme .analytics-consent button:focus-visible{outline:3px solid var(--cb-accent);outline-offset:3px}
