@import url("https://fonts.googleapis.com/css2?family=Commissioner:wght@400;500;600&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap");

@font-face {
  font-family: "Fraunces9pt-Light";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/fonts/Fraunces9pt-Light.woff2") format("woff2");
}

:root {
  --rtichoke-bg: #fff7f5;
  --rtichoke-surface: #ffffff;
  --rtichoke-soft: #fef0ec;
  --rtichoke-primary: #c54b29;
  --rtichoke-accent: #ce3d15;
  --rtichoke-border: #f0cfc3;
  --rtichoke-text: #281d19;
  --rtichoke-muted: #725f57;
  --rtichoke-shadow: 0 10px 28px rgba(96, 46, 27, 0.07);
}

body {
  background: var(--rtichoke-bg);
  color: var(--rtichoke-text);
  font-family: "Commissioner", system-ui, sans-serif;
  font-weight: 400;
  letter-spacing: 0.005em;
}

h1,
h2,
h3,
h4,
h5,
h6,
.navbar-brand,
.quarto-title-block .title,
.sidebar-title {
  color: var(--rtichoke-primary);
  font-family: "Fraunces9pt-Light", "Fraunces", Georgia, serif;
  font-weight: 700;
  letter-spacing: -0.015em;
}

a {
  color: var(--rtichoke-accent);
  text-decoration-color: rgba(206, 61, 21, 0.35);
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.14em;
}

a:hover,
a:focus-visible {
  color: var(--rtichoke-primary);
  text-decoration-color: currentColor;
}

.navbar,
.navbar-dark,
.navbar-light {
  background: rgba(255, 247, 245, 0.96) !important;
  border-bottom: 1px solid var(--rtichoke-border);
  box-shadow: 0 5px 18px rgba(96, 46, 27, 0.05);
  backdrop-filter: blur(12px);
}

.navbar-brand,
.navbar .nav-link,
.navbar .navbar-title {
  color: var(--rtichoke-primary) !important;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus,
.navbar .nav-link.active {
  color: var(--rtichoke-accent) !important;
}

#quarto-sidebar,
.sidebar,
.quarto-secondary-nav {
  background: var(--rtichoke-bg);
  border-color: var(--rtichoke-border);
}

.sidebar-item a,
.sidebar-navigation a {
  border-radius: 0.55rem;
}

.sidebar-item a:hover,
.sidebar-item a.active,
.sidebar-navigation a:hover,
.sidebar-navigation a.active {
  background: var(--rtichoke-soft);
  color: var(--rtichoke-accent) !important;
}

.quarto-title-block,
.gd-group-card,
.gd-api-card,
.card,
.callout {
  background: var(--rtichoke-surface);
  border-color: var(--rtichoke-border) !important;
  border-radius: 0.9rem;
  box-shadow: var(--rtichoke-shadow);
}

.quarto-title-block {
  padding: 1.25rem 1.4rem;
}

blockquote {
  background: var(--rtichoke-soft);
  border-left: 4px solid var(--rtichoke-primary);
  border-radius: 0 0.7rem 0.7rem 0;
  color: #523d35;
  padding: 0.85rem 1.1rem;
}

div.sourceCode,
pre,
code:not(.sourceCode) {
  border-color: var(--rtichoke-border) !important;
}

div.sourceCode,
pre {
  background: #fffdfc;
  border-radius: 0.75rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

code:not(.sourceCode) {
  background: var(--rtichoke-soft);
  color: #8f321b;
  border-radius: 0.35rem;
}

.table,
table {
  --bs-table-bg: transparent;
  --bs-table-striped-bg: rgba(254, 240, 236, 0.72);
  border-color: var(--rtichoke-border);
}

.badge,
.btn-primary {
  background-color: var(--rtichoke-primary) !important;
  border-color: var(--rtichoke-primary) !important;
}

.btn-outline-primary {
  color: var(--rtichoke-primary);
  border-color: var(--rtichoke-primary);
}

.btn-outline-primary:hover {
  background-color: var(--rtichoke-primary);
  color: #fff;
}

.page-footer,
footer.footer {
  background: var(--rtichoke-surface);
  border-top: 1px solid var(--rtichoke-border);
  color: var(--rtichoke-muted);
}

@media (prefers-color-scheme: dark) {
  body.quarto-dark {
    --rtichoke-bg: #211815;
    --rtichoke-surface: #2d211d;
    --rtichoke-soft: #3a2721;
    --rtichoke-primary: #f29a7f;
    --rtichoke-accent: #ffad91;
    --rtichoke-border: #684235;
    --rtichoke-text: #fff4f0;
    --rtichoke-muted: #d5b9af;
    --rtichoke-shadow: none;
  }
}
