/*
Theme Name: Ejerlauget Bastrupgaard
Theme URI: https://bastrupgaard.dk
Description: Blok-tema til Ejerlauget Bastrupgaard. Alt indhold — tal, navne, datoer — ligger i databasen, ikke i temaet.
Author: Anders
Version: 0.1.2
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bastrupgaard
Tags: block-theme, full-site-editing
*/

/* Palette, type and spacing live in theme.json. This file holds two things
   theme.json cannot express: the dark-theme token overrides, and the handful
   of components (masthead, rail cards, post list) whose layout
   is not reachable through block supports. */

/* ---------------------------------------------------------------------------
   Dark theme. Only the palette tokens are redefined — every component below
   reads through them, so nothing needs a second set of rules.
   --------------------------------------------------------------------------- */
@media (prefers-color-scheme: dark) {
  :root {
    --wp--preset--color--ground: #0F161F;
    --wp--preset--color--surface: #161F2A;
    --wp--preset--color--surface-alt: #1D2833;
    --wp--preset--color--ink: #E6ECF3;
    --wp--preset--color--ink-muted: #A6B3C2;
    --wp--preset--color--ink-subtle: #8794A3;
    --wp--preset--color--accent: #74AEDD;
    --wp--preset--color--accent-strong: #A9CDEA;
    --wp--preset--color--accent-soft: #1B2C3D;
    --wp--preset--color--attention: #E3B76A;
    --wp--preset--color--rule: #2C3846;
    --wp--preset--color--rule-soft: #212C38;
  }
}

/* ---------------------------------------------------------------------------
   Afstandsskala

   Præcis de samme trin som spacingSizes i theme.json, plus ét finere trin til
   hårfine mellemrum. Al margin og padding i denne fil kommer herfra — ellers
   ender man med fireogtyve næsten-ens værdier, og det er dem man ser som
   "lidt skævt" uden at kunne pege på hvad.
   --------------------------------------------------------------------------- */
:root {
  --eb-1: 0.25rem;
  --eb-2: 0.5rem;
  --eb-3: 0.85rem;
  --eb-4: 1.35rem;
  --eb-5: 2rem;
  --eb-6: 3rem;
  --eb-7: 4rem;
}

/* ---------------------------------------------------------------------------
   Shared
   --------------------------------------------------------------------------- */
.eb-num { font-variant-numeric: tabular-nums; }

.eb-label {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
  color: var(--wp--preset--color--ink-subtle);
}

/* Selvstændige links — dem der står alene og ikke inde i en brødtekst — skal
   kunne rammes med en finger. WCAG 2.2 sætter minimum 24x24 px, og flere af
   dem målte 14. inline-flex med min-height løfter højden uden at flytte det
   afstandssystem der lige er sat på plads. */
.eb-sectionhead p a,
.eb-posts .wp-block-post-excerpt__more-link,
.eb-results .wp-block-post-excerpt__more-link,
.eb-footer a,
.eb-toc a,
.wp-block-table td a,
.has-sans-font-family a {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
}
/* Uden dette ville linkets nye højde lægge sig oven i listens egen margin. */
.eb-footer li { margin: 0; }

/* Den skjulte h1 (til skærmlæsere) er stadig et element i flowet, så det der
   følger den regnes som "ikke første barn" og får WordPress' søskendeafstand.
   Uden denne regel hænger forsidens første sektion 48 px nede i stedet for at
   ligge klods op ad menuen. */
.wp-block-post-content > .screen-reader-text + * { margin-block-start: 0; }

:where(a):focus-visible {
  outline: 2px solid var(--wp--preset--color--accent);
  outline-offset: 2px;
}

/* En overskrift skal høre til det der står under den. Med ens afstand over og
   under svæver den midt imellem to afsnit, og øjet kan ikke se hvor et afsnit
   begynder. Derfor: stor luft over, lille under.
   (:is() arver specificitet fra sit tungeste argument, så .wp-block-post-content
   > :is(h2,h3) er 0,1,1 og slår kernens 0,1,0-regel for søskendeafstand.) */
.wp-block-post-content > :is(h2, h3):not(:first-child) { margin-block-start: var(--eb-6); }
.wp-block-post-content > h3:not(:first-child) { margin-block-start: var(--eb-5); }
.wp-block-post-content > :is(h2, h3) + * { margin-block-start: var(--eb-3); }

/* Brede tabeller ruller i sig selv frem for at skubbe siden sidelæns. */
.wp-block-table { overflow-x: auto; }

/* Tabeller sættes som resten af sitet: vandrette hårstreger og luft, ingen
   cellerammer. WordPress' standard sætter en ramme om hver eneste celle.
   Bemærk: ingen :where() her. Kernens regel er .wp-block-table td (0,1,1), og
   :where() nulstiller specificitet — så taber vores regel. Samme fælde kostede
   os de hvide formularfelter i mørkt tema. */
.wp-block-table table {
  font-variant-numeric: tabular-nums;
  border-collapse: collapse;
  width: 100%;
}
.wp-block-table th,
.wp-block-table td {
  border: 0;
  border-bottom: 1px solid var(--wp--preset--color--rule-soft);
  padding: var(--eb-2) var(--eb-3) var(--eb-2) 0;
  text-align: left;
  vertical-align: top;
}
.wp-block-table th {
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  border-bottom: 1px solid var(--wp--preset--color--rule);
  white-space: nowrap;
}
/* tbody, ikke bare tr: en <thead> har som regel én række, og den er dermed
   også sin egen :last-child. Uden tbody her slog reglen overskriftsrækkens
   hårstreg ihjel, og kernens egen `thead {border-bottom: 3px solid}` stod
   tilbage — en tyk sort streg på et site der ellers kun har hårstreger. */
.wp-block-table thead { border-bottom: 0; }
.wp-block-table tbody tr:last-child th,
.wp-block-table tbody tr:last-child td { border-bottom: 0; }
.wp-block-table th:last-child,
.wp-block-table td:last-child { padding-right: 0; }

/* Talkolonner højrestilles, så cifrene står under hinanden og en sum kan
   aflæses ned ad kanten. Kun på tabeller hvor alt efter første kolonne er tal. */
.eb-table-num th:not(:first-child),
.eb-table-num td:not(:first-child) { text-align: right; }

/* ---------------------------------------------------------------------------
   Masthead — association name plus the three streets and their house counts.
   The counts are real data (115 + 67 + 66 = 248), not ornament.
   --------------------------------------------------------------------------- */
.eb-streets {
  display: flex;
  flex-wrap: wrap;
  gap: var(--eb-1) var(--eb-4);
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--ink-muted);
}
.eb-streets strong {
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  font-variant-numeric: tabular-nums;
}

/* ---------------------------------------------------------------------------
   Navigation
   --------------------------------------------------------------------------- */
.eb-nav {
  border-bottom: 1px solid var(--wp--preset--color--rule);
  background: var(--wp--preset--color--surface);
}
/* Pull the row out by one item's inline padding so the first item's text lines
   up with the masthead title above it, while every item keeps a symmetric
   hover target. */
.eb-nav .wp-block-navigation__container { margin-inline: calc(var(--eb-3) * -1); }
.eb-nav .wp-block-navigation-item__content {
  padding: var(--eb-3);
  text-decoration: none;
}
/* Klassen står med vilje to gange. Kernen skriver selv
   `.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content
   {color:inherit}` for at slå temaers farve, og med ét klassenavn taber vi —
   punkterne stod i kernens #000 i stedet for temaets ink. Forskellen er lille
   nok til ikke at kunne ses, men så er farven heller ikke vores. */
.eb-nav .wp-block-navigation-item__content.wp-block-navigation-item__content {
  color: var(--wp--preset--color--ink);
}
.eb-nav .wp-block-navigation-item__content:hover {
  color: var(--wp--preset--color--accent);
}
/* Aktivt punkt markeres med vægt og en streg, ikke med en fyldt flade. */
.eb-nav .current-menu-item > .wp-block-navigation-item__content {
  color: var(--wp--preset--color--ink);
  font-weight: 600;
  box-shadow: inset 0 -2px 0 var(--wp--preset--color--accent);
}
/* WordPress ships a 24x24 burger. On mobile it is the only way to navigate, and
   this site's readers skew older — 44x44 is the comfortable target. */
/* Sæt ikke display her: WordPress skjuler selv knappen over mobilbredde, og en
   display-erklæring vinder over den, så burgeren dukker op på desktop.
   min-width/min-height virker på et <button> uden at røre display. */
.eb-nav .wp-block-navigation__responsive-container-open,
.eb-nav .wp-block-navigation__responsive-container-close {
  min-width: 44px;
  min-height: 44px;
}
.eb-nav .wp-block-navigation__responsive-container-open { margin-inline-start: var(--eb-3); }
/* The mobile overlay's own items need a comfortable row height too.
   Selektoren skal have fire klasser: kernen nulstiller polstringen i overlayet
   med `…responsive-container.is-menu-open:where(…) …-container-content
   .…item__content`. Med tre tabte reglen, og rækkerne blev 22 px. */
.eb-nav .is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
  padding-block: var(--eb-3);
}
/* ---------------------------------------------------------------------------
   Rail cards
   --------------------------------------------------------------------------- */
/* Kort med flade og ramme. Prøvede først kun hårstreger, men sidespalten
   hænger bedre sammen som afgrænsede kort — de holder de fire blokke adskilt
   uden at man skal læse sig frem til hvor den ene slutter. Skyggen er holdt
   næsten usynlig; den løfter kortet fra baggrunden og gør intet andet. */
.eb-card {
  background: var(--wp--preset--color--surface);
  border: 1px solid var(--wp--preset--color--rule);
  box-shadow: 0 1px 2px rgba(19, 31, 44, 0.04);
  padding: var(--eb-4);
}
@media (prefers-color-scheme: dark) {
  .eb-card { box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35); }
}
.eb-card--accent {
  background: var(--wp--preset--color--accent-soft);
  border-color: var(--wp--preset--color--accent);
}

/* Label / value rows inside a card. */
.eb-keyval :where(p) {
  display: flex;
  justify-content: space-between;
  gap: var(--eb-3);
  margin: 0;
  padding-bottom: var(--eb-2);
  border-bottom: 1px dotted var(--wp--preset--color--rule);
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--ink-muted);
}
.eb-keyval :where(p):last-child { border-bottom: 0; padding-bottom: 0; }
.eb-keyval strong {
  font-weight: 600;
  color: var(--wp--preset--color--ink);
  font-variant-numeric: tabular-nums;
}

/* Link list with a trailing note (PDF, source, count). */
.eb-linklist ul { list-style: none; margin: 0; padding: 0; }
.eb-linklist li { border-bottom: 1px solid var(--wp--preset--color--rule-soft); }
.eb-linklist li:last-child { border-bottom: 0; }
.eb-linklist a {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--eb-3);
  padding: var(--eb-2) 0;
  font-family: var(--wp--preset--font-family--sans);
  font-weight: 500;
  text-decoration: none;
}
.eb-linklist a em {
  color: var(--wp--preset--color--ink-subtle);
  font-size: var(--wp--preset--font-size--small);
  font-style: normal;
  font-weight: 400;
  white-space: nowrap;
}

/* Sektionsoverskrift: streg over, ikke under — så venstre spalte og
   sidespalten starter på præcis samme linje. Værdierne matcher .eb-card. */
.eb-sectionhead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--eb-3);
  border-top: 1px solid var(--wp--preset--color--rule);
  padding-top: var(--eb-4);
  margin-bottom: var(--eb-4);
}
.eb-sectionhead h2 { margin: 0; }
.eb-sectionhead p { margin: 0; }

/* Indholdsfortegnelse til vedtægterne. To kolonner, så 13 punkter ikke bliver
   en lang stribe, og hårstreger frem for en kasse — som resten af sitet. */
.eb-toc {
  border-top: 1px solid var(--wp--preset--color--rule);
  border-bottom: 1px solid var(--wp--preset--color--rule);
  padding: var(--eb-4) 0;
  margin-bottom: var(--eb-5);
}
.eb-toc ul {
  list-style: none;
  margin: var(--eb-2) 0 0;
  padding: 0;
  columns: 2;
  column-gap: var(--eb-5);
}
.eb-toc li { margin: 0 0 var(--eb-1); break-inside: avoid; }
.eb-toc a {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  text-decoration: none;
}
.eb-toc a:hover { text-decoration: underline; }
@media (max-width: 600px) { .eb-toc ul { columns: 1; } }

/* "Skrevet af" hører til datoen over den og sættes som den. */
.eb-forfatter {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--ink-subtle);
  margin-block-start: 0;
}
.eb-forfatter:empty { display: none; }

/* Ankerlinks må ikke lande med overskriften klistret til toppen af skærmen. */
:target { scroll-margin-top: var(--eb-4); }

/* Kernens galleri lader billederne i en ufuldstændig sidste række vokse til
   fuld bredde. Områdets syv billeder i tre kolonner gav ét kæmpebillede til
   sidst. Alle billeder holder spaltebredden. */
.wp-block-post-content .wp-block-gallery.has-nested-images figure.wp-block-image { flex-grow: 0; }

/* ---------------------------------------------------------------------------
   Bestyrelsen — kortene bygges af [bestyrelsen] ud fra indholdstypen, så de
   genbruger .eb-card og .eb-keyval fra sidespalten.
   --------------------------------------------------------------------------- */
.eb-bestyrelse {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
  gap: var(--eb-5) var(--eb-4);
}
.eb-bestyrelse .eb-card { margin: 0; }
.eb-bestyrelse h3 {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--x-large);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.015em;
  margin: 0 0 var(--eb-1);
}
.eb-bestyrelse__adresse {
  margin: 0 0 var(--eb-3);
  color: var(--wp--preset--color--ink-muted);
}
.eb-bestyrelse .eb-keyval p { margin: 0; }
.eb-bestyrelse .eb-keyval a { text-decoration: none; }
.eb-bestyrelse .eb-keyval a:hover { text-decoration: underline; }

/* ---------------------------------------------------------------------------
   Post list — date in a narrow left column, content beside it.
   --------------------------------------------------------------------------- */
.eb-posts .wp-block-post {
  display: grid;
  grid-template-columns: 7.5rem minmax(0, 1fr);
  gap: 0 var(--eb-5);
  padding-block: var(--eb-4);
  border-bottom: 1px solid var(--wp--preset--color--rule-soft);
}
.eb-posts .wp-block-post:first-child { padding-top: 0; }
@media (max-width: 620px) {
  .eb-posts .wp-block-post { grid-template-columns: 1fr; gap: var(--eb-2); }
}
.eb-posts .wp-block-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
.eb-posts .wp-block-post-title a:hover { color: var(--wp--preset--color--accent); text-decoration: underline; }
.eb-posts .wp-block-post-excerpt__excerpt { color: var(--wp--preset--color--ink-muted); }
/* Keeps the reading measure sane where the list runs at the full 1140px
   (archive and category pages), without affecting the narrower homepage column. */
.eb-posts .wp-block-post-excerpt { max-width: 62ch; }
.eb-posts .wp-block-post-excerpt__more-link {
  display: inline-block;
  margin-top: var(--eb-2);
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  text-decoration: none;
}
.eb-posts .wp-block-post-excerpt__more-link:hover { text-decoration: underline; }

/* Søgeresultater: ingen datokolonne, bare titel og uddrag adskilt af luft. */
.eb-results .wp-block-post {
  padding-block: var(--eb-4);
  border-bottom: 1px solid var(--wp--preset--color--rule-soft);
}
.eb-results .wp-block-post:first-child { padding-top: 0; }
.eb-results .wp-block-post-title { margin-bottom: var(--eb-2); }
.eb-results .wp-block-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
.eb-results .wp-block-post-title a:hover { color: var(--wp--preset--color--accent); text-decoration: underline; }
.eb-results .wp-block-post-excerpt__excerpt { color: var(--wp--preset--color--ink-muted); }
.eb-results .wp-block-post-excerpt__more-link {
  display: inline-block;
  margin-top: var(--eb-2);
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  text-decoration: none;
}
.eb-results .wp-block-post-excerpt__more-link:hover { text-decoration: underline; }

/* ---------------------------------------------------------------------------
   Figures — the area's measurements, set large and tabular.
   --------------------------------------------------------------------------- */
.eb-figures {
  border-top: 1px solid var(--wp--preset--color--rule);
  padding-top: var(--eb-4);
}
/* Årstal som ryg i arkivet: sat som et mærkat, ikke som en overskrift — det
   skal kunne skimmes ned ad kanten uden at konkurrere med indlæggenes titler. */
.eb-arkiv__aar {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--wp--preset--color--ink-subtle);
  margin: var(--eb-6) 0 var(--eb-3);
}
.eb-arkiv__aar:first-child { margin-top: 0; }
/* Årstallet giver allerede luften over første indlæg. */
.eb-arkiv__aar + .wp-block-post { padding-top: 0; }
.eb-arkiv .eb-label { margin: 0 0 var(--eb-1); }

/* Keep a figure's number on one line — "74.734" breaking after "74.73" reads as
   two different numbers. */
.eb-fig :where(p:first-child) {
  white-space: nowrap;
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--display);
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  color: var(--wp--preset--color--ink);
  margin: 0;
}
.eb-fig :where(p:last-child) {
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--ink-muted);
  margin: var(--eb-2) 0 0;
}

/* ---------------------------------------------------------------------------
   Søgefelt
   Kernens søgeblok kommer med sin egen mørkegrå knap og hvide felt. Begge dele
   føres tilbage til temaets tokens, så søgning ser ud som resten af sitet og
   ikke lyser op i mørkt tema. Ingen :where() — kernens regler er klasse-baserede.
   --------------------------------------------------------------------------- */
.wp-block-search__input {
  background: var(--wp--preset--color--surface);
  color: var(--wp--preset--color--ink);
  border: 1px solid var(--wp--preset--color--rule);
  border-radius: 0;
  padding: var(--eb-2) var(--eb-3);
  font-family: var(--wp--preset--font-family--serif);
  font-size: var(--wp--preset--font-size--medium);
}
.wp-block-search__input:focus {
  outline: 2px solid var(--wp--preset--color--accent);
  outline-offset: 1px;
}
.wp-block-search__button {
  background: var(--wp--preset--color--accent);
  color: var(--wp--preset--color--surface);
  border: 0;
  border-radius: 0;
  padding: var(--eb-2) var(--eb-4);
  font-family: var(--wp--preset--font-family--sans);
  font-weight: 500;
}
.wp-block-search__button:hover { background: var(--wp--preset--color--accent-strong); }
.wp-block-search__label {
  font-family: var(--wp--preset--font-family--sans);
  font-weight: 500;
}

/* ---------------------------------------------------------------------------
   Footer
   --------------------------------------------------------------------------- */
.eb-footer {
  background: var(--wp--preset--color--surface-alt);
  border-top: 1px solid var(--wp--preset--color--rule);
  font-family: var(--wp--preset--font-family--sans);
  font-size: var(--wp--preset--font-size--small);
}
.eb-footer :where(h2, h3, h4) {
  font-size: var(--wp--preset--font-size--small);
  font-weight: 500;
  color: var(--wp--preset--color--ink-subtle);
  /* Uden luft under overskriften løber den sammen med sit eget listepunkt,
     og kolonnen mister sin inddeling. */
  margin: 0 0 var(--eb-3);
}
.eb-footer :where(p:first-of-type) { margin-top: 0; }
.eb-footer :where(p) { color: var(--wp--preset--color--ink-muted); }
/* Log ind står i bundlinjen, ikke i menuen. Det gamle site havde det som et
   hovedpunkt, hvor 248 beboere så et felt kun fem personer kunne bruge.
   Blokken skifter selv til "Log ud", når man er logget ind. */
.eb-footer .eb-login a { color: var(--wp--preset--color--ink-subtle); }

.eb-footer :where(ul, ol) { list-style: none; margin: 0; padding: 0; }
.eb-footer li ul { padding-left: var(--eb-3); }
.eb-footer a { text-decoration: none; }
.eb-footer a:hover { text-decoration: underline; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* ---------------------------------------------------------------------------
   Kontaktformular

   Fluent Forms styrer sit udseende med egne custom properties. Dem sætter vi
   frem for at slås om specificitet — pluginets egne regler bruger variablerne,
   så de følger temaet af sig selv.

   (Første forsøg brugte :where(), som nulstiller specificitet. Pluginets
   .ff-default .ff-el-form-control vandt derfor, og felterne blev hvide på et
   mørkt tema.)
   --------------------------------------------------------------------------- */
.frm-fluent-form {
  --fluentform-primary: var(--wp--preset--color--accent);
  --fluentform-secondary: var(--wp--preset--color--ink-muted);
  --fluentform-border-color: var(--wp--preset--color--rule);
  --fluentform-border-radius: 0;
  --fluentform-danger: var(--wp--preset--color--attention);
}

/* Baggrund og tekstfarve kommer ikke fra variablerne, så de sættes med samme
   specificitet som pluginets egen regel — vores stylesheet indlæses efter. */
.ff-default .ff-el-form-control,
.ff-default select.ff-el-form-control {
  background: var(--wp--preset--color--surface);
  color: var(--wp--preset--color--ink);
  font-family: var(--wp--preset--font-family--serif);
  font-size: var(--wp--preset--font-size--medium);
  /* Samme polstring som søgefeltet — ellers har sitets to slags inputfelter
     hver sin højde, hvilket man ser uden at kunne sige hvorfor. */
  padding: var(--eb-2) var(--eb-3);
}
.ff-default .ff-el-form-control:focus {
  outline: 2px solid var(--wp--preset--color--accent);
  outline-offset: 1px;
}
.ff-default ::placeholder { color: var(--wp--preset--color--ink-subtle); opacity: 1; }
.ff-el-input--label label {
  font-family: var(--wp--preset--font-family--sans);
  font-weight: 500;
  color: var(--wp--preset--color--ink);
}
.ff-el-form-check-label, .ff_tc_label { color: var(--wp--preset--color--ink-muted); }
.ff-default .ff-btn-submit {
  background: var(--wp--preset--color--accent);
  /* Fladen bag knappen er accenten, teksten er fladefarven — det giver 8,3:1 i
     lyst tema og 7,0:1 i mørkt, uden en eneste hex-kode her i filen. */
  color: var(--wp--preset--color--surface);
  border: 0;
  border-radius: 0;
  font-family: var(--wp--preset--font-family--sans);
  font-weight: 500;
  padding: var(--eb-2) var(--eb-4);
}
.ff-default .ff-btn-submit:hover { background: var(--wp--preset--color--accent-strong); }
