:root {
  --yz-brand-bg: #f6f1e8;
  --yz-brand-surface: #e7dcc9;
  --yz-brand-ink: #17324d;
  --yz-brand-ink-soft: #5f7285;
  --yz-brand-accent: #c89b3c;
  --yz-brand-accent-deep: #a67d28;
  --wp--preset--color--base: var(--yz-brand-bg);
  --wp--preset--color--base-2: var(--yz-brand-surface);
  --wp--preset--color--contrast: var(--yz-brand-ink);
  --wp--preset--color--contrast-2: var(--yz-brand-accent);
  --wp--preset--color--contrast-3: var(--yz-brand-ink-soft);
}

body {
  background:
    radial-gradient(circle at top, rgba(200, 155, 60, 0.12), transparent 36%),
    linear-gradient(180deg, #fbf7f1 0%, var(--yz-brand-bg) 55%, #efe6d9 100%);
  color: var(--yz-brand-ink);
}

.wp-site-blocks {
  background: transparent;
}

a {
  color: var(--yz-brand-accent-deep);
  transition: color 180ms ease, opacity 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

a:hover,
a:focus {
  color: var(--yz-brand-ink);
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-post-title a {
  color: var(--yz-brand-ink);
}

.wp-block-group.has-base-background-color,
.wp-block-cover.has-base-background-color {
  background-color: var(--yz-brand-bg) !important;
}

.wp-block-group.has-base-2-background-color,
.wp-block-cover.has-base-2-background-color {
  background-color: var(--yz-brand-surface) !important;
}

.wp-block-group.has-contrast-background-color,
.wp-block-cover.has-contrast-background-color {
  background:
    linear-gradient(135deg, #112a42 0%, var(--yz-brand-ink) 55%, #274d72 100%) !important;
}

.wp-block-template-part .wp-block-group.alignwide.has-base-background-color {
  background: rgba(246, 241, 232, 0.92) !important;
  border: 1px solid rgba(23, 50, 77, 0.08);
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(23, 50, 77, 0.08);
  margin-top: 24px;
}

.wp-block-navigation a,
.wp-block-site-title a,
.wp-block-site-tagline {
  color: var(--yz-brand-ink) !important;
}

.wp-block-site-logo a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.32rem;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid rgba(23, 50, 77, 0.12);
  box-shadow: 0 10px 24px rgba(23, 50, 77, 0.1);
}

.wp-block-site-logo img,
.wp-block-site-logo.is-default-size img,
.custom-logo {
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px;
  box-shadow: none !important;
}

.wp-block-navigation a:hover,
.wp-block-navigation a:focus,
.wp-block-site-title a:hover,
.wp-block-site-title a:focus {
  color: var(--yz-brand-accent-deep) !important;
}

.is-style-asterisk:before {
  background: var(--yz-brand-accent) !important;
}

.wp-element-button,
.wp-block-button__link {
  background: linear-gradient(135deg, var(--yz-brand-accent) 0%, #d7ad4e 100%) !important;
  border: 1px solid rgba(23, 50, 77, 0.12) !important;
  box-shadow: 0 10px 24px rgba(200, 155, 60, 0.22);
  color: var(--yz-brand-ink) !important;
  font-weight: 600;
}

.wp-element-button:hover,
.wp-element-button:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus {
  background: linear-gradient(135deg, #d4ab4d 0%, var(--yz-brand-accent-deep) 100%) !important;
  color: #10273d !important;
}

.wp-block-query-pagination a,
.wp-block-post-title a {
  text-decoration-color: rgba(200, 155, 60, 0.45);
  text-underline-offset: 0.18em;
}

.wp-block-separator.has-contrast-3-background-color {
  background-color: rgba(23, 50, 77, 0.18) !important;
}

.wp-block-columns.alignwide,
.wp-block-group.alignwide {
  position: relative;
}

.wp-block-group.alignwide.has-base-2-background-color {
  box-shadow: 0 22px 50px rgba(23, 50, 77, 0.08);
}

.wp-block-media-text__media img,
.wp-block-image img {
  box-shadow: 0 16px 36px rgba(23, 50, 77, 0.12);
}

.wp-block-list.is-style-checkmark-list li::marker {
  color: var(--yz-brand-accent-deep);
}

.wp-block-footer,
footer .wp-block-paragraph,
footer .wp-block-heading,
footer .wp-block-navigation a {
  color: var(--yz-brand-ink) !important;
}

@media (max-width: 781px) {
  .wp-block-template-part .wp-block-group.alignwide.has-base-background-color {
    border-radius: 0;
    margin-top: 0;
  }

  .wp-block-site-logo a {
    padding: 0.24rem;
    border-radius: 12px;
  }

  .wp-block-site-logo img,
  .wp-block-site-logo.is-default-size img,
  .custom-logo {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px;
  }
}

/* ── FRED Economic Chart Widgets ── */
.fred-chart-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid var(--yz-brand-surface);
  background: #fff;
  box-shadow: 0 8px 24px rgba(23, 50, 77, 0.06);
  transition: box-shadow 260ms ease;
}

.fred-chart-wrap:hover {
  box-shadow: 0 12px 32px rgba(23, 50, 77, 0.12);
}

.fred-chart-wrap img {
  display: block;
  width: 100%;
  height: auto;
  box-shadow: none !important;
}

.fred-chart-wrap a {
  display: block;
  text-decoration: none;
}

.fred-source {
  font-size: 0.78rem;
  color: var(--yz-brand-ink-soft);
  margin-top: 0.5rem;
  text-align: right;
}

.fred-source a {
  color: var(--yz-brand-accent-deep);
}

.fred-indicator-card {
  border-radius: 20px;
  background: #f5f9fd;
  padding: var(--wp--preset--spacing--35);
}

.fred-bridge-card {
  border-radius: 20px;
  background: linear-gradient(135deg, #eef5fb 0%, #f5f0e6 100%);
  border: 1px solid rgba(23, 50, 77, 0.08);
  padding: var(--wp--preset--spacing--35);
  text-align: center;
}
