/* Allma Theme Builder — variants and switches driven by body classes.
   Values (colors, radii, spacing, fonts) come from CSS variables printed by inc/builder.php;
   this file only adds the structure for header/footer variants and button styles.
   Loaded after main/pages/woo so that it can refine them. */

/* ---------- global layout ---------- */
.a-btn { letter-spacing: var(--a-btn-ls, 0); }
.allma-layout-full .a-container,
.allma-layout-full .a-topbar__list { max-width: none; padding-left: clamp(16px, 3vw, 48px); padding-right: clamp(16px, 3vw, 48px); }
.allma-nocrumbs .a-crumbs { display: none; }
.allma-notopbar .a-topbar { display: none; }
.allma-nosearch .a-search { display: none; }

/* ---------- header: sticky + dark ---------- */
.allma-nosticky .a-header,
.admin-bar.allma-nosticky .a-header { position: relative; top: 0; }

.allma-header-dark .a-header { border-bottom-color: rgba(255, 255, 255, .1); }
.allma-header-dark .a-logo__text strong { color: #fff; }
.allma-header-dark .a-nav__list > li > a { color: #f4f4f6; }
.allma-header-dark .a-nav__list > li > a:hover,
.allma-header-dark .a-nav__list > li.is-current > a { color: var(--a-orange-2); }
.allma-header-dark .a-iconbtn { color: #fff; }
.allma-header-dark .a-iconbtn:hover { background: rgba(255, 255, 255, .1); color: var(--a-orange-2); }
.allma-header-dark .a-search input { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .16); color: #fff; }
.allma-header-dark .a-search input::placeholder { color: rgba(255, 255, 255, .6); }
.allma-header-dark .a-search input:focus { background: rgba(255, 255, 255, .14); border-color: var(--a-orange-3); }
.allma-header-dark .a-search svg { color: rgba(255, 255, 255, .7); }
.allma-header-dark .a-burger { background: transparent; border-color: rgba(255, 255, 255, .22); color: #fff; }

/* ---------- header: centered logo ---------- */
@media (min-width: 901px) {
  .allma-hv-centered .a-header__bar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: "search logo actions" "nav nav nav";
    align-items: center;
    min-height: 0;
    padding-top: 12px;
    padding-bottom: 4px;
    row-gap: 4px;
  }
  .allma-hv-centered .a-logo { grid-area: logo; justify-self: center; }
  .allma-hv-centered .a-search { grid-area: search; justify-self: start; }
  .allma-hv-centered .a-actions { grid-area: actions; justify-self: end; }
  .allma-hv-centered .a-nav { grid-area: nav; }
  .allma-hv-centered .a-nav__list { justify-content: center; }
  .allma-hv-centered .a-burger { display: none; }
}

/* ---------- header: minimal ---------- */
@media (min-width: 901px) {
  .allma-hv-minimal .a-header { border-bottom-color: transparent; box-shadow: 0 1px 0 var(--a-line); }
  .allma-hv-minimal .a-nav { display: flex; justify-content: flex-end; }
  .allma-hv-minimal .a-search { width: 44px; transition: width .2s ease; }
  .allma-hv-minimal .a-search input { padding-left: 42px; padding-right: 0; cursor: pointer; background: transparent; border-color: transparent; }
  .allma-hv-minimal .a-search input::placeholder { color: transparent; }
  .allma-hv-minimal .a-search:focus-within { width: 270px; }
  .allma-hv-minimal .a-search:focus-within input { padding-right: 16px; cursor: text; background: #fff; border-color: var(--a-orange-3); }
  .allma-hv-minimal .a-search:focus-within input::placeholder { color: var(--a-faint); }
  .allma-hv-minimal.allma-header-dark .a-search:focus-within input { background: rgba(255, 255, 255, .14); }
}

/* mobile panel when the header is dark */
@media (max-width: 900px) {
  .allma-header-dark .a-nav { background: var(--a-dark-2); border-color: rgba(255, 255, 255, .12); }
}

/* ---------- primary button styles ---------- */
.allma-btn-solid .a-btn--primary,
.allma-btn-solid .allma-product-cart-form .single_add_to_cart_button,
.allma-btn-solid .woocommerce a.button.alt,
.allma-btn-solid .woocommerce button.button.alt,
.allma-btn-solid .woocommerce input.button.alt,
.allma-btn-solid .woocommerce #place_order,
.allma-btn-solid .allma-product-reviews-card .comment-form .submit { background: var(--a-orange); }
.allma-btn-solid .a-btn--primary:hover { filter: brightness(.94); }

.allma-btn-outline .a-btn--primary,
.allma-btn-outline .allma-product-cart-form .single_add_to_cart_button,
.allma-btn-outline .woocommerce a.button.alt,
.allma-btn-outline .woocommerce button.button.alt,
.allma-btn-outline .woocommerce input.button.alt,
.allma-btn-outline .woocommerce #place_order,
.allma-btn-outline .allma-product-reviews-card .comment-form .submit { background: transparent; color: var(--a-orange) !important; border: 1.5px solid var(--a-orange); box-shadow: none; }
.allma-btn-outline .a-btn--primary:hover,
.allma-btn-outline .allma-product-cart-form .single_add_to_cart_button:hover,
.allma-btn-outline .woocommerce a.button.alt:hover,
.allma-btn-outline .woocommerce button.button.alt:hover,
.allma-btn-outline .woocommerce #place_order:hover { background: var(--a-orange); color: #fff !important; filter: none; }

.allma-btn-noshadow .a-btn--primary,
.allma-btn-noshadow .a-btn--primary:hover,
.allma-btn-noshadow .allma-product-cart-form .single_add_to_cart_button,
.allma-btn-noshadow .woocommerce a.button.alt,
.allma-btn-noshadow .woocommerce button.button.alt,
.allma-btn-noshadow .woocommerce input.button.alt,
.allma-btn-noshadow .woocommerce #place_order { box-shadow: none; }

/* ---------- footer: extra row (ANPC + credit) and cookie-settings button ---------- */
.a-linkbtn { background: none; border: 0; padding: 0; margin: 0; font: inherit; color: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.a-linkbtn:hover { color: var(--a-orange-2); }
.a-footer__extra { display: flex; align-items: center; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; padding-top: 0; padding-bottom: 14px; font-size: 12.5px; color: #9a9aa4; }
.a-footer__extra:empty { display: none; }
.a-footer__anpc img { display: block; max-width: 100%; height: auto; }
.a-footer__anpc--text { color: #c8c8d0; text-decoration: underline; text-underline-offset: 3px; }
.a-footer__anpc--text:hover { color: var(--a-orange-2); }
.a-footer__credit { margin-left: auto; text-align: right; }
.a-footer__credit a { color: var(--a-orange-2); font-weight: 700; }
.a-footer__credit a:hover { text-decoration: underline; }
@media (max-width: 640px) {
  .a-footer__credit { margin-left: 0; text-align: left; }
}

/* ---------- footer: light ---------- */
.allma-fv-light .a-footer { background: var(--a-bg-2); color: var(--a-text); border-top: 1px solid var(--a-line); }
.allma-fv-light .a-footer h3 { color: var(--a-ink); }
.allma-fv-light .a-footer__brand p { color: var(--a-muted); }
.allma-fv-light .a-footer__col a { color: var(--a-text); }
.allma-fv-light .a-footer__col a:hover,
.allma-fv-light .a-footer__bar a:hover { color: var(--a-orange); }
.allma-fv-light .a-logo--light .a-logo__text strong { color: var(--a-ink); }
.allma-fv-light .a-social a,
.allma-fv-light .a-footer__contact svg { color: var(--a-ink); }
.allma-fv-light .a-social a:hover { background: var(--a-orange-soft); color: var(--a-orange); }
.allma-fv-light .a-footer__contact svg { color: var(--a-orange); }
.allma-fv-light .a-footer__bar { border-top-color: var(--a-line); color: var(--a-muted); }
.allma-fv-light .a-footer__bar li + li::before { background: var(--a-line); }
.allma-fv-light .a-footer__extra { color: var(--a-muted); }
.allma-fv-light .a-footer__anpc--text { color: var(--a-text); }
.allma-fv-light .a-footer__credit a { color: var(--a-orange); }
.allma-fv-light .a-linkbtn:hover { color: var(--a-orange); }

/* ---------- footer: compact ---------- */
.allma-fv-compact .a-footer { margin-top: 48px; }
.allma-fv-compact .a-footer__grid { grid-template-columns: 1.6fr 1fr 1fr 1.3fr; padding-top: 32px; padding-bottom: 20px; }
.allma-fv-compact .a-footer__col--categories { display: none; }
.allma-fv-compact .a-footer__col li { margin-bottom: 7px; }
@media (max-width: 1000px) {
  .allma-fv-compact .a-footer__grid { grid-template-columns: 1fr 1fr; }
  .allma-fv-compact .a-footer__brand,
  .allma-fv-compact .a-footer__contact { grid-column: 1 / -1; }
}
