/* Generated from SITE_PALETTE=default. Local fonts only. */
:root:root {
  --appearance-name: default;
  --ink: #332a33;
  --muted: #665764;
  --paper: #fbf7f9;
  --surface: #fff;
  --green: #70465f;
  --green-dark: #543448;
  --green-soft: #f3eaf0;
  --green-line: #dac3d1;
  --clay: #7d5035;
  --clay-soft: #f4e9e0;
  --sand: #f2edf0;
  --sand-line: #e3d6df;
  --line: #e4d8e0;
  --field-line: #806c7c;
  --focus: #9b470b;
  --shadow: 0 1px 2px #332a330a, 0 10px 30px #332a330f;
  --preview-body-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --preview-heading-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --preview-glow: #efe1e9;
  --preview-hover: #faf4f7;
  --preview-footer: #332833;
  --preview-footer-text: #eee5eb;
  --preview-footer-muted: #cebfca;
  --preview-footer-line: #614e60;
  --action: #1f7a8c;
  --action-hover: #17667a;
  --heading-color: #70465f;
  --brand-color: #70465f;
}
/* Applied after base styles. Safety, warning and error colors remain unchanged. */
:root:root body {
  background: radial-gradient(64rem 30rem at 50% -10rem, var(--preview-glow), transparent 70%) no-repeat, var(--paper);
  font-family: var(--preview-body-font);
}
:root:root :is(h1, h2, h3) { font-family: var(--preview-heading-font); color: var(--heading-color); }
:root:root :is(.safety-note, .safety-panel, .idle-warning, .error-summary, .result-panel.attention) :is(h1, h2, h3) { color: var(--ink); }
:root:root :is(.brand, .brand-line, .eyebrow) { color: var(--brand-color); }
:root:root .hero { background: radial-gradient(60rem 28rem at 15% -6rem, var(--preview-glow), transparent 70%) no-repeat, var(--paper); }
:root:root .page-head { background: radial-gradient(60rem 22rem at 10% -8rem, var(--preview-glow), transparent 70%) no-repeat, var(--paper); }
:root:root a:not(.quick-exit, .brand, .button),
:root:root :is(.text-link, .text-button, .site-nav a) { color: var(--action); }
:root:root a:not(.quick-exit, .brand, .button):hover,
:root:root :is(.text-link, .text-button):hover { color: var(--action-hover); }
/* The approved darker teal keeps text actions readable on tinted panels. */
:root:root :is(.section.sand, .need-assistance-entry, .result-panel, .ai-notice, .error-summary, .safety-panel, .safety-note) :is(a:not(.button, .quick-exit), .text-button) { color: var(--action-hover); }
:root:root .button { background: var(--action); border-color: var(--action); color: #fff; }
:root:root .button:is(:hover, :active) { background: var(--action-hover); border-color: var(--action-hover); }
:root:root .button.secondary { background: var(--surface); color: var(--action); }
:root:root .button.secondary:is(:hover, :active) { background: var(--green-soft); color: var(--action-hover); }
:root:root .button[aria-disabled=true] { background: var(--sand); border-color: var(--sand-line); color: var(--muted); }
:root:root .site-nav a[aria-current=page] { border-bottom-color: var(--action); }
:root:root .panel :is(h2, h3) { color: #fff; }
:root:root :is(.panel, .section.sand .panel) a:not(.button) { color: #fff; }
:root:root .panel .button { background: #fff; border-color: #fff; color: var(--action); }
:root:root .panel .button:hover { background: var(--green-soft); color: var(--action-hover); }
:root:root .panel .check-list .icon { color: var(--green-soft); }
:root:root .site-footer { background: var(--preview-footer); color: var(--preview-footer-text); }
:root:root .site-footer :is(.brand, h2) { color: #fff; }
:root:root .site-footer :is(.brand-line, .muted, .copyright) { color: var(--preview-footer-muted); }
:root:root .site-footer a:not(.button) { color: var(--preview-footer-text); }
:root:root .copyright { border-top-color: var(--preview-footer-line); }
:root:root :is(.site-footer, .panel) :focus-visible { outline-color: #fff; }
:root:root :is(.topic-card, .choice-card):hover:not(:has(input:checked)) { background: var(--preview-hover); }
:root:root .ai-notice { background: var(--sand); }
:root:root :is(.button, .safety-resources > summary) { max-width: 100%; min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 460px) { :root:root .nowrap { white-space: normal; } }
