/* GapPlate look (plugin 1.0.21): direction A+ "Saffron Kitchen, compact".
   Everything is scoped to body.gpr-look, added only when the look is on. */

body.gpr-look {
  --wp--preset--color--primary: #A63D24;
  --wp--preset--color--secondary: #C4581F;
  --wp--preset--color--tertiary: #E3A21A;
  --wp--preset--color--header-titles: #A63D24;
  --wp--preset--color--contrast: #2B2320;
  --wp--preset--color--gp-forest: #2B2320;
  --wp--preset--color--gp-leaf: #3D7A3A;
  --wp--preset--color--gp-mint: #DDEBD6;
  --wp--preset--color--gp-cream: #FBF5EC;
  --wp--preset--color--gp-sand: #F4E3C4;
  --wp--preset--color--gp-gold: #E3A21A;
  --wp--preset--color--gp-clay: #A63D24;
  --wp--preset--color--gp-ink: #2B2320;
  --wp--custom--button-border-radius: 12px;
  --wp--custom--vertical-spacing: 1rem;
  --wp--custom--xl-spacing: clamp(1.5rem, calc(1.2rem + 1.4vw), 2.5rem);
  --wp--custom--4-xl-spacing: clamp(2.5rem, calc(2rem + 3vw), 4.5rem);
  --gp-paprika: #A63D24;
  --gp-saffron: #E3A21A;
  --gp-glow: linear-gradient(120deg, #A63D24 0%, #C4581F 55%, #E3A21A 100%);
  background-color: #FBF5EC;
  color: #2B2320;
  font-family: Nunito, "Nunito Sans", "Segoe UI", system-ui, sans-serif;
}

/* Headings: a warm serif, clove brown */
body.gpr-look h1, body.gpr-look h2, body.gpr-look h3,
body.gpr-look h4, body.gpr-look h5, body.gpr-look h6 {
  color: #2B2320;
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.15;
}
body.gpr-look h2 { margin-top: 1.4em; margin-bottom: .45em; }
body.gpr-look h3 { margin-top: 1.2em; margin-bottom: .35em; }
body.gpr-look .wp-block-post-title,
body.gpr-look .wp-block-post-title.has-huge-font-size {
  font-size: clamp(1.9rem, calc(1.5rem + 1.6vw), 2.6rem) !important;
  margin-top: .8em;
  margin-bottom: .4em;
}
body.gpr-look p, body.gpr-look li { line-height: 1.55; }

/* Links */
body.gpr-look a:where(:not(.wp-element-button)) { color: #A63D24; }
body.gpr-look a:where(:not(.wp-element-button)):hover { color: #7E2C18; }

/* Buttons: warm glow, rounder */
body.gpr-look :where(.wp-element-button, .wp-block-button__link) {
  background: var(--gp-glow) !important;
  border-radius: 12px !important;
  color: #FFFFFF !important;
  font-weight: 700;
  box-shadow: 0 3px 10px rgba(166, 61, 36, .22);
}
body.gpr-look :where(.wp-element-button, .wp-block-button__link):hover { filter: brightness(1.06); }
body.gpr-look .wp-block-button.is-style-outline > .wp-block-button__link {
  background: transparent !important;
  color: #A63D24 !important;
  border: 2px solid #A63D24;
  box-shadow: none;
}

/* Header: white, compact, a warm strip underneath */
body.gpr-look header.wp-block-template-part > .wp-block-group {
  position: relative;
  background: #FFFFFF !important;
  color: #2B2320 !important;
  border-bottom: 0 !important;
  padding-top: .6rem !important;
  padding-bottom: .7rem !important;
}
body.gpr-look header.wp-block-template-part > .wp-block-group::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 4px;
  background: var(--gp-glow);
}
body.gpr-look header .wp-block-site-title,
body.gpr-look header .wp-block-site-title a {
  color: #A63D24 !important;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
}
body.gpr-look header .wp-block-site-tagline { color: #5E524A !important; }
body.gpr-look header .wp-block-site-logo img { border-radius: 12px; }
body.gpr-look header .wp-block-navigation { color: #2B2320; font-weight: 700; }
body.gpr-look header .wp-block-navigation a:where(:not(.wp-element-button)) { color: #2B2320; }
body.gpr-look header .wp-block-navigation a:where(:not(.wp-element-button)):hover,
body.gpr-look header .wp-block-navigation .current-menu-item > a { color: #A63D24; }
body.gpr-look .wp-block-navigation__submenu-container {
  border: 1px solid #E6D9C4 !important;
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(43, 35, 32, .12);
  overflow: hidden;
}

/* Footer: the warm glow with a faint pattern of spice dots */
body.gpr-look footer.wp-block-template-part > .wp-block-group {
  position: relative;
  overflow: hidden;
  background: var(--gp-glow) !important;
  color: #FFF8EC !important;
}
body.gpr-look footer.wp-block-template-part > .wp-block-group::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, .16) 1.5px, transparent 1.6px);
  background-size: 16px 16px;
  pointer-events: none;
}
body.gpr-look footer.wp-block-template-part > .wp-block-group > * { position: relative; }
body.gpr-look footer a:where(:not(.wp-element-button)) { color: #FFFFFF !important; text-decoration: underline; text-underline-offset: 2px; }

/* Tables, quotes, details (FAQ) */
body.gpr-look details {
  border: 1px solid #E6D9C4;
  border-radius: 12px;
  background: #FFFFFF;
  padding: .6em 1em;
  margin: .5em 0;
}
body.gpr-look details > summary { cursor: pointer; font-weight: 700; color: #2B2320; }
body.gpr-look details[open] > summary { color: #A63D24; margin-bottom: .4em; }
body.gpr-look blockquote, body.gpr-look .wp-block-quote { border-left-color: #E3A21A; }
body.gpr-look .wp-block-separator { border-color: #E6D9C4; }
body.gpr-look ::selection { background: #F4E3C4; }

/* Recipes pages (the plugin's own classes) */
body.gpr-look .gpr { --gpr-accent: #A63D24; --gpr-line: #E6D9C4; --gpr-muted: #5E524A; }
body.gpr-look .gpr .gpr-button { border-radius: 12px; font-weight: 700; }
body.gpr-look .gpr .gpr-button:not(.gpr-button-quiet):not(.gpr-button-danger) { background: var(--gp-glow); border-color: #A63D24; }
body.gpr-look .gpr .gpr-button-quiet { background: #FFFFFF; }
body.gpr-look .gpr .gpr-badge { background: #E6F0E3; color: #2E5C2B; font-weight: 700; }
body.gpr-look .gpr .gpr-badge-muted { background: #F4E3C4; color: #6B4A0E; }
body.gpr-look .gpr .gpr-tags { color: #2E5C2B; }
body.gpr-look .gpr .gpr-notice { background: #FFF6E3; border-color: #F0D58A; border-radius: 12px; }
body.gpr-look .gpr .gpr-search { gap: .5em; margin: .6em 0; }
body.gpr-look .gpr .gpr-search input[type=search] { border-radius: 12px; background: #FFFFFF; }
body.gpr-look .gpr .gpr-search > .gpr-button { justify-self: start; }
body.gpr-look .gpr .gpr-chip { background: #FFFFFF; padding: .15em .65em; font-size: .92em; }
body.gpr-look .gpr .gpr-chip:has(input:checked) { border-color: #A63D24; background: #FBE9E3; }
body.gpr-look .gpr .gpr-cards { gap: .5em; }
body.gpr-look .gpr .gpr-card {
  background: #FFFFFF;
  border-radius: 12px;
  padding: .65em .9em;
  transition: transform .15s ease, box-shadow .15s ease;
}
body.gpr-look .gpr .gpr-card:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(166, 61, 36, .12); }
body.gpr-look .gpr .gpr-card > a, body.gpr-look .gpr .gpr-card-body > a {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  color: #2B2320;
}
body.gpr-look .gpr h2 { margin-top: 1.2em; }
body.gpr-look .gpr .gpr-ingredients li, body.gpr-look .gpr .gpr-steps li { margin: .2em 0; }
body.gpr-look .gpr .gpr-steps li::marker { color: #A63D24; font-weight: 800; }
body.gpr-look .gpr table { border-radius: 12px; }
body.gpr-look .gpr-form input[type=text], body.gpr-look .gpr-form input[type=email],
body.gpr-look .gpr-form input[type=number], body.gpr-look .gpr-form select,
body.gpr-look .gpr-form textarea { border-radius: 10px; }

@media (max-width: 600px) {
  body.gpr-look header.wp-block-template-part > .wp-block-group { padding-top: .4rem !important; padding-bottom: .55rem !important; }
}
@media print {
  body.gpr-look footer.wp-block-template-part > .wp-block-group { background: none !important; color: #2B2320 !important; }
}
