/* ==========================================================================
   Bridle2Fit · winkelwagen, afrekenen, bevestiging, account en inloggen
   Borden Cart, MCart, Checkout, MCheckout, Confirm, MConfirm, Account,
   Inloggen. Hoofdstuk 3a.2, 5.3 en 5.4.
   ========================================================================== */

/* ---------- Opbouw ---------- */

.b2f-cartpage,
.b2f-account,
.b2f-checkout,
.b2f-thanks__body,
.b2f-thanks__inner,
.b2f-thanks__failed,
.b2f-login,
.b2f-loginhead__inner{
  width:100%;
  max-width:var(--b2f-max);
  margin-inline:auto;
  padding-inline:var(--b2f-gutter);
}

.b2f-orderhead{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:flex-end;
  gap:8px 24px;
  padding-block:8px 24px;
}
.b2f-orderhead > div{display:flex;flex-direction:column;gap:12px}
.b2f-orderhead__aside{font-size:13.5px;color:var(--b2f-muted)}
@media (min-width:1100px){
  .b2f-orderhead{padding-block:24px 36px}
}

/* Overzicht in een kaart: winkelwagen, afrekenen en bevestiging. */
.b2f-summary{
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:24px 20px;
  border:1px solid var(--b2f-line);
  background:var(--b2f-paper);
}
@media (min-width:768px){
  .b2f-summary{padding:28px}
}
.b2f-summary__title{
  padding-bottom:12px;
  border-bottom:1px solid var(--b2f-line);
  font-size:11.5px;
  font-weight:400;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--b2f-muted);
}
.b2f-summary__subtitle{
  margin-bottom:8px;
  font-size:11px;
  font-weight:400;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--b2f-muted);
}
.b2f-summary address{font-style:normal;font-size:13.5px;line-height:1.6;color:var(--b2f-muted)}
.b2f-summary__address{padding-top:16px;border-top:1px solid var(--b2f-line)}
.b2f-summary__assurance{padding-top:16px;border-top:1px solid var(--b2f-line)}
.b2f-summary__assurance .b2f-checks li{font-size:13px}

/* Totalen: label links, bedrag rechts. */
.b2f-totals,
.b2f-review tfoot{width:100%;border-collapse:collapse;font-size:14px}
.b2f-totals th,
.b2f-totals td,
.b2f-review tfoot th,
.b2f-review tfoot td{padding:6px 0;font-weight:400;vertical-align:top}
.b2f-totals th,
.b2f-review tfoot th{text-align:left;color:var(--b2f-muted)}
.b2f-totals td,
.b2f-review tfoot td{text-align:right}
.b2f-totals .order-total th,
.b2f-totals .order-total td,
.b2f-review tfoot .order-total th,
.b2f-review tfoot .order-total td{
  padding-top:16px;
  border-top:1px solid var(--b2f-line);
  font-size:20px;
  color:var(--b2f-charcoal);
}
.b2f-totals .order-total td strong,
.b2f-review .order-total td strong{font-weight:400}
.includes_tax,
.b2f-totals small,
.b2f-review small{display:block;margin-top:2px;font-size:12px;color:var(--b2f-muted)}
.b2f-totals .woocommerce-shipping-methods{margin:0;padding:0;list-style:none;text-align:right}
.b2f-totals .woocommerce-shipping-methods li{display:flex;justify-content:flex-end;align-items:center;gap:8px;min-height:32px}
.woocommerce-shipping-destination{margin-top:6px;font-size:12px;color:var(--b2f-muted)}
.woocommerce-remove-coupon{margin-left:6px;font-size:12px;color:var(--b2f-muted);text-decoration:underline}

/* Itemdata (kleur, maat, steenkleuren) van WooCommerce en de plugins: een
   nette lijst, per regel het label links en de waarde rechts. Zo breekt een
   lange waarde (drie steenkleuren) binnen zijn eigen kolom af, niet midden in
   de regel. */
dl.variation,
.wc-item-meta{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:2px 12px;
  margin:6px 0 0;
  padding:0;
  list-style:none;
  font-size:12.5px;
  line-height:1.5;
  color:var(--b2f-muted);
}
dl.variation dt,
.wc-item-meta .wc-item-meta-label{float:none;margin:0;font-weight:400;color:var(--b2f-charcoal)}
dl.variation dd{margin:0;min-width:0;overflow-wrap:anywhere}
dl.variation dd p,
.wc-item-meta p{display:inline;margin:0}
.wc-item-meta li{display:contents}

/* ---------- Winkelwagen ---------- */

.b2f-cartpage{padding-bottom:var(--b2f-section-y)}
.b2f-cart__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
@media (min-width:1100px){
  .b2f-cart__grid{grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:start}
  .b2f-cart__aside{position:sticky;top:calc(var(--b2f-header-h) + var(--wp-admin--admin-bar--height, 0px) + 24px)}
}

.b2f-cart__table{width:100%;border-collapse:collapse}
.b2f-cart__table thead{display:none}
.b2f-cart__table tbody tr{
  display:grid;
  grid-template-columns:96px minmax(0,1fr) auto;
  grid-template-areas:
    "thumb name price"
    "thumb qty  remove";
  gap:10px 14px;
  padding:18px 0;
  border-top:1px solid var(--b2f-line);
}
.b2f-cart__table tbody tr:last-child{border-bottom:1px solid var(--b2f-line)}
.b2f-cart__table td{display:block;padding:0}
.b2f-cart__table .product-thumbnail{grid-area:thumb}
.b2f-cart__table .product-name{grid-area:name;min-width:0}
.b2f-cart__table .product-subtotal{grid-area:price;text-align:right}
.b2f-cart__table td.product-subtotal{font-size:15px}
.b2f-cart__table .product-quantity{grid-area:qty}
.b2f-cart__table .product-remove{grid-area:remove;align-self:center;text-align:right}

/* Miniatuur: ongeveer 140 px, geen vaste hoogte, want de configurator zet
   hier een mini-frontriem in (hoofdstuk 7.2). */
.b2f-cart__table .product-thumbnail a,
.b2f-cart__table .product-thumbnail > img{display:block;background:var(--b2f-stone)}
/* Alleen de productfoto: de steentjes in de mini-frontriem van de configurator
   (.b2fc-mini) zijn 12 px en zouden met deze binnenmarge verdwijnen. */
.b2f-cart__table .product-thumbnail img:not(:where(.b2fc-mini,.b2fh-mini) *){width:100%;height:auto;aspect-ratio:1 / 1;padding:8px;object-fit:contain;mix-blend-mode:multiply}
/* De mini-frontriem is van zichzelf zo'n 140 px breed. Hij schaalt mee met het
   vakje: 96 px op telefoon, 118 px vanaf 1100 px, 56 px in het besteloverzicht. */
.b2f-cart__table .product-thumbnail :is(.b2fc-mini,.b2fh-mini){zoom:.68;margin-top:8px}

.b2f-cart__label{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--b2f-muted)}
.b2f-cart__name{margin:2px 0 0;font-size:16px;line-height:1.3;letter-spacing:.02em}
.b2f-cart__unit{display:none}

.b2f-cartpage .quantity{display:inline-flex}
.b2f-cartpage .quantity .qty{min-height:40px}
.b2f-cartpage .b2f-qty__btn{min-height:40px;width:40px}

.b2f-remove{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  min-width:44px;
  justify-content:flex-end;
  color:var(--b2f-muted);
  font-size:13px;
}
.b2f-remove:hover{color:var(--b2f-charcoal)}
.b2f-remove .b2f-icon{display:none}

.b2f-cart__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:14px 20px;
  padding-top:20px;
}
.b2f-cart__back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:13.5px;color:var(--b2f-muted)}
.b2f-coupon{display:flex;gap:8px;flex:1 1 280px;max-width:420px}
.b2f-coupon .b2f-input{min-height:48px;padding-block:8px;font-size:14px}
.b2f-coupon .b2f-btn{flex-shrink:0}
/* Met JavaScript werkt de winkelwagen zichzelf bij; de knop is er voor zonder. */
.js .b2f-cart__update{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

.b2f-cartpage .b2f-note{margin-top:4px}
.b2f-cartpage .wc-proceed-to-checkout{display:block}

@media (min-width:768px){
  .b2f-cart__table thead{display:table-header-group}
  .b2f-cart__table thead th{
    padding:0 0 12px;
    border-bottom:1px solid var(--b2f-charcoal);
    font-size:11.5px;
    font-weight:400;
    letter-spacing:.16em;
    text-transform:uppercase;
    text-align:left;
    color:var(--b2f-muted);
  }
  .b2f-cart__table thead .product-subtotal{text-align:right}
  .b2f-cart__table tbody tr{display:table-row;border:0}
  .b2f-cart__table tbody td{display:table-cell;padding:22px 0;border-bottom:1px solid var(--b2f-line);vertical-align:middle}
  .b2f-cart__table tbody tr:last-child{border:0}
  .b2f-cart__table .product-thumbnail{width:140px;padding-right:22px}
  .b2f-cart__table .product-thumbnail :is(.b2fc-mini,.b2fh-mini){zoom:.85}
  .b2f-cart__table .product-name{padding-right:20px}
  .b2f-cart__table .product-quantity{width:150px}
  .b2f-cart__table .product-subtotal{width:110px}
  .b2f-cart__table .product-remove{width:56px}
  .b2f-remove .b2f-icon{display:block}
  .b2f-remove__text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
}

/* ---------- Afrekenen: kop en stappen ---------- */

.b2f-header--checkout .b2f-header__bar{
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  padding-inline:var(--b2f-gutter);
}
.b2f-header__back,
.b2f-header__secure{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  margin:0;
  font-size:12.5px;
  color:var(--b2f-muted-dark);
}
.b2f-header__back span,
.b2f-header__secure span{display:none}
.b2f-header__secure{justify-self:end}
.b2f-header--checkout .b2f-logo{justify-self:center}
@media (min-width:768px){
  .b2f-header__back span,
  .b2f-header__secure span{display:inline}
}
@media (min-width:1100px){
  .b2f-header--checkout .b2f-logo__word{position:static;width:auto;height:auto;clip:auto}
}

.b2f-steps-bar{border-bottom:1px solid var(--b2f-line)}
.b2f-steps-bar ol{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  max-width:var(--b2f-max);
  margin:0 auto;
  padding:10px var(--b2f-gutter);
  list-style:none;
  font-size:12.5px;
  color:var(--b2f-muted);
}
.b2f-steps-bar li{display:flex;align-items:center;gap:8px}
.b2f-steps-bar li + li::before{content:"";width:24px;height:1px;margin-right:4px;background:var(--b2f-line)}
.b2f-steps-bar a,
.b2f-steps-bar li > span{display:inline-flex;align-items:center;gap:8px;min-height:32px}
.b2f-steps-bar__dot{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border:1px solid var(--b2f-line);
  border-radius:var(--b2f-radius-round);
  font-size:11px;
}
.b2f-steps-bar .is-done .b2f-steps-bar__dot{border-color:var(--b2f-gold);background:var(--b2f-gold);color:var(--b2f-graphite)}
.b2f-steps-bar .is-current{color:var(--b2f-charcoal);font-weight:600}
.b2f-steps-bar .is-current .b2f-steps-bar__dot{border-color:var(--b2f-gold-deep)}
.b2f-steps-bar .b2f-steps-bar__long{display:none}
@media (min-width:768px){
  .b2f-steps-bar ol{gap:14px;padding-block:14px}
  .b2f-steps-bar li + li::before{width:60px;margin-right:6px}
  .b2f-steps-bar .b2f-steps-bar__long{display:inline}
  .b2f-steps-bar .b2f-steps-bar__short{display:none}
}

/* ---------- Afrekenen: formulier en overzicht ---------- */

.b2f-checkout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:36px;
  padding-block:24px var(--b2f-section-y);
}
@media (min-width:1100px){
  .b2f-checkout{grid-template-columns:minmax(0,1fr) 420px;gap:56px;align-items:start;padding-top:36px}
  .b2f-checkout__aside{position:sticky;top:24px}
}
.b2f-checkout__main,
.b2f-checkout__details,
.woocommerce-billing-fields{display:flex;flex-direction:column;gap:36px;min-width:0}
.b2f-checkout__section{display:flex;flex-direction:column;gap:18px}
.b2f-checkout__titlerow{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:baseline;
  gap:4px 16px;
  padding-bottom:10px;
  border-bottom:1px solid var(--b2f-charcoal);
}
.b2f-checkout__title{
  font-size:var(--b2f-fs-card);
  font-weight:400;
  line-height:1.2;
  letter-spacing:.02em;
}
.b2f-checkout__section > .b2f-checkout__title{padding-bottom:10px;border-bottom:1px solid var(--b2f-charcoal)}
.b2f-checkout__titlerow .b2f-checkout__title{padding:0;border:0}
.b2f-checkout__login{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:var(--b2f-muted);text-decoration:underline;text-underline-offset:5px}
.b2f-checkout .woocommerce-billing-fields > h3{display:none}

/* Afleveradres achter een vinkje (hoofdstuk 5.3), als kaart. */
#ship-to-different-address{margin:0;font-size:inherit;font-weight:400}
#ship-to-different-address label{
  min-height:60px;
  padding:12px 18px;
  border:1px solid var(--b2f-line);
  background:var(--b2f-paper);
  font-size:15px;
}
.woocommerce-shipping-fields .shipping_address{margin-top:18px}
.woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:16px;
}
@media (min-width:768px){
  .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
  .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper > .form-row-wide{grid-column:1 / -1}
}
.woocommerce-additional-fields{margin-top:36px}
.woocommerce-additional-fields > h3{
  margin-bottom:18px;
  padding-bottom:10px;
  border-bottom:1px solid var(--b2f-charcoal);
  font-size:var(--b2f-fs-card);
  font-weight:400;
}
.b2f-checkout-shipping{display:flex;flex-direction:column;gap:14px}
.woocommerce-account-fields{display:flex;flex-direction:column;gap:12px}

/* Overzicht rechts. */
.b2f-review{width:100%;border-collapse:collapse}
.b2f-review tbody td{padding:10px 0;vertical-align:middle;border-bottom:1px solid var(--b2f-line)}
.b2f-review tbody tr:first-child td{padding-top:0}
.b2f-review .product-total{text-align:right;font-size:14px;white-space:nowrap;padding-left:12px}
.b2f-review__item{display:flex;align-items:center;gap:14px;min-width:0}
.b2f-review__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.b2f-review__list .b2f-review__item{padding:10px 0;border-bottom:1px solid var(--b2f-line)}
.b2f-review__list .b2f-review__item:first-child{padding-top:0}
.b2f-review__thumb{position:relative;flex-shrink:0;display:block;width:56px;height:56px}
.b2f-review__thumb img:not(:where(.b2fc-mini,.b2fh-mini) *){width:100%;height:100%;padding:4px;object-fit:contain;mix-blend-mode:multiply}
.b2f-review__thumb:has(.b2fc-mini,.b2fh-mini){display:flex;align-items:center;justify-content:center}
.b2f-review__thumb :is(.b2fc-mini,.b2fh-mini){zoom:.4}
.b2f-review__qty{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:var(--b2f-radius-badge);
  background:var(--b2f-charcoal);
  color:var(--b2f-warm-white);
  font-size:11px;
  line-height:20px;
  text-align:center;
}
.b2f-review__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.b2f-review__name{font-size:14px;line-height:1.35}
.b2f-review__price{margin-left:auto;padding-left:12px;font-size:14px;white-space:nowrap}
.b2f-review dl.variation{font-size:12px}

.b2f-coupon--checkout{flex:none;max-width:none}
.b2f-place-order{display:flex;flex-direction:column;gap:14px;margin:0}
.b2f-place-order .b2f-btn{min-height:56px}
.woocommerce-terms-and-conditions-wrapper,
.woocommerce-privacy-policy-text{font-size:12.5px;line-height:1.6;color:var(--b2f-muted)}
.woocommerce-privacy-policy-text p{margin:0}
.woocommerce-terms-and-conditions-wrapper a,
.woocommerce-privacy-policy-text a{text-decoration:underline}

/* Onder 1100 px: overzicht ingeklapt tot een samenvatting (hoofdstuk 3a.2). */
.b2f-summary__toggle{display:none}
@media (max-width:1099.98px){
  .js .b2f-checkout__aside .b2f-summary__toggle{
    display:flex;
    justify-content:space-between;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:0;
    border:0;
    background:none;
    color:var(--b2f-charcoal);
    font:inherit;
    font-size:14px;
    cursor:pointer;
  }
  .js .b2f-checkout__aside .b2f-summary__toggle .b2f-icon{transition:transform var(--b2f-dur) var(--b2f-ease)}
  .js .b2f-checkout__aside .b2f-summary[data-open="true"] .b2f-summary__toggle .b2f-icon{transform:rotate(180deg)}
  .js .b2f-checkout__aside .b2f-summary:not([data-open="true"]) .b2f-review tbody{display:none}
}

/* ---------- Bevestiging ---------- */

.b2f-thanks__head{position:relative;overflow:hidden}
.b2f-thanks__photo,
.b2f-loginhead__photo{display:none}
.b2f-thanks__inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:16px;
  padding-block:32px 28px;
}
.b2f-thanks__check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border:1px solid var(--b2f-gold);
  border-radius:var(--b2f-radius-round);
  color:var(--b2f-gold);
}
.b2f-thanks__lead{max-width:52ch;font-size:15.5px;line-height:1.65;color:var(--b2f-muted-dark)}
.b2f-thanks__facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 24px;
  max-width:560px;
  margin:6px 0 0;
  padding:18px 0 0;
  border-top:1px solid var(--b2f-line-dark);
}
.b2f-thanks__facts dt{order:2;font-size:12px;color:var(--b2f-muted-dark)}
.b2f-thanks__facts dd{margin:0;font-size:15px}
.b2f-thanks__facts div{display:flex;flex-direction:column-reverse;gap:2px}
@media (min-width:768px){
  .b2f-thanks__facts{grid-template-columns:repeat(4,auto);justify-content:start}
  .b2f-thanks__inner{padding-block:48px}
  .b2f-thanks__head.has-photo .b2f-thanks__photo,
  .b2f-loginhead.has-photo .b2f-loginhead__photo{
    display:block;
    position:absolute;
    top:0;
    right:0;
    width:50%;
    height:100%;
    object-fit:cover;
    object-position:50% 25%;
    opacity:.75;
  }
  .b2f-thanks__head.has-photo::after,
  .b2f-loginhead.has-photo::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    right:0;
    width:50%;
    background:linear-gradient(90deg, var(--b2f-night) 0%, rgba(23,22,27,.4) 45%, rgba(23,22,27,0) 100%);
  }
  .b2f-thanks__head.has-photo .b2f-thanks__inner > *,
  .b2f-loginhead.has-photo .b2f-loginhead__inner > *{max-width:56%}
}
@media (min-width:1100px){
  .b2f-thanks__inner{min-height:420px;justify-content:center;padding-block:56px}
}

.b2f-thanks__body{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:36px;
  padding-block:var(--b2f-section-y);
}
@media (min-width:1100px){
  .b2f-thanks__body{grid-template-columns:minmax(0,1fr) 420px;gap:72px;align-items:start}
}
.b2f-thanks__next{display:flex;flex-direction:column;gap:14px}

/* Tijdlijn: verticaal op mobiel en tablet, in kolommen op desktop. */
.b2f-steps{
  counter-reset:b2f-step;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:0;
  margin:14px 0 0;
  padding:0;
  list-style:none;
}
.b2f-steps li{
  counter-increment:b2f-step;
  position:relative;
  padding:16px 0 16px 40px;
  border-top:1px solid var(--b2f-line);
}
.b2f-steps li::before{
  content:counter(b2f-step, decimal-leading-zero);
  position:absolute;
  left:0;
  top:18px;
  font-size:12px;
  letter-spacing:.18em;
  color:var(--b2f-gold-deep);
}
.b2f-steps__title{font-size:16px;font-weight:500;margin-bottom:6px}
.b2f-steps p{font-size:14px;line-height:1.6;color:var(--b2f-muted)}
@media (min-width:1100px){
  .b2f-steps{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:28px}
  .b2f-steps li{padding:16px 0 0}
  .b2f-steps li::before{position:static;display:block;margin-bottom:10px}
}
.b2f-thanks__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.b2f-thanks__failed{display:flex;flex-direction:column;gap:16px;padding-block:var(--b2f-section-y)}
.b2f-thanks__failed .woocommerce-thankyou-order-failed-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Betaalinstructies van een betaalmethode, bijvoorbeeld overmaken. */
.b2f-thanks__next .wc-bacs-bank-details-heading,
.b2f-thanks__next .woocommerce-bacs-bank-details h2{margin-top:24px;font-size:var(--b2f-fs-card);font-weight:400}
.b2f-thanks__next ul.bacs_details{margin:10px 0 0;padding:0;list-style:none;font-size:14px}

/* ---------- Mijn account ---------- */

.b2f-account{padding-bottom:var(--b2f-section-y)}
.b2f-account__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
@media (min-width:1100px){
  .b2f-account__grid{grid-template-columns:240px minmax(0,1fr);gap:48px;align-items:start}
}

/* Navigatie: chiprij onder 1100 px, kolom daarboven. */
.b2f-accnav{overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--b2f-gutter));padding-inline:var(--b2f-gutter)}
.b2f-accnav::-webkit-scrollbar{display:none}
.b2f-accnav ul{display:flex;gap:8px;width:max-content;margin:0;padding:3px 0;list-style:none}
.b2f-accnav a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 16px;
  border:1px solid var(--b2f-line);
  font-size:14px;
  white-space:nowrap;
}
.b2f-accnav a[aria-current="page"]{border-color:var(--b2f-gold-deep);box-shadow:inset 0 0 0 1px var(--b2f-gold-deep)}
@media (min-width:1100px){
  .b2f-accnav{overflow:visible;margin:0;padding:0}
  .b2f-accnav ul{flex-direction:column;gap:0;width:auto;border-left:1px solid var(--b2f-line)}
  .b2f-accnav a{
    display:flex;
    justify-content:space-between;
    min-height:48px;
    margin-left:-1px;
    padding:0 16px;
    border:0;
    border-left:2px solid transparent;
    color:var(--b2f-muted);
  }
  .b2f-accnav a:hover{color:var(--b2f-charcoal)}
  .b2f-accnav a[aria-current="page"]{
    border-left-color:var(--b2f-gold-deep);
    box-shadow:none;
    background:var(--b2f-paper);
    color:var(--b2f-charcoal);
    font-weight:600;
  }
}

.b2f-account__content{min-width:0;display:flex;flex-direction:column;gap:28px}
.b2f-account__content > p,
.b2f-account__content address{font-size:15px;line-height:1.7}

.b2f-dash{display:flex;flex-direction:column;gap:40px}
.b2f-dash__cards{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:768px){
  .b2f-dash__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
.b2f-dash__card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  padding:20px;
  border:1px solid var(--b2f-line);
  background:var(--b2f-paper);
}
.b2f-dash__label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--b2f-muted)}
.b2f-dash__big{font-size:22px;letter-spacing:.02em}
.b2f-dash__muted{font-size:13.5px;color:var(--b2f-muted)}
.b2f-dash__card address{font-style:normal;font-size:14px;line-height:1.6}
.b2f-dash__link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;text-decoration-color:var(--b2f-gold-deep);text-underline-offset:5px}
.b2f-dash__head{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:baseline;
  gap:4px 16px;
  padding-bottom:10px;
  margin-bottom:6px;
  border-bottom:1px solid var(--b2f-charcoal);
}

/* Tabellen met bestellingen: kaarten onder 768 px (hoofdstuk 3a.2). */
.b2f-ordertable,
.woocommerce-orders-table{width:100%;border-collapse:collapse;font-size:14px}
.b2f-ordertable thead,
.woocommerce-orders-table thead{display:none}
.b2f-ordertable tr,
.woocommerce-orders-table tr{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px 16px;
  margin-bottom:12px;
  padding:16px;
  border:1px solid var(--b2f-line);
  background:var(--b2f-paper);
}
.b2f-ordertable td,
.woocommerce-orders-table td,
.woocommerce-orders-table th[scope="row"]{display:flex;flex-direction:column;gap:2px;padding:0;text-align:left;font-weight:400}
.b2f-ordertable td::before,
.woocommerce-orders-table td::before,
.woocommerce-orders-table th[scope="row"]::before{
  content:attr(data-title);
  font-size:10.5px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--b2f-muted);
}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions{grid-column:1 / -1;flex-direction:row;flex-wrap:wrap;gap:8px}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions::before{display:none}
.woocommerce-orders-table .button{min-height:44px;font-size:11.5px}
@media (min-width:768px){
  .b2f-ordertable thead,
  .woocommerce-orders-table thead{display:table-header-group}
  .b2f-ordertable tr,
  .woocommerce-orders-table tr{display:table-row;margin:0;padding:0;border:0;background:none}
  .b2f-ordertable th,
  .b2f-ordertable td,
  .woocommerce-orders-table th,
  .woocommerce-orders-table td{display:table-cell;padding:16px 12px 16px 0;border-bottom:1px solid var(--b2f-line);text-align:left;vertical-align:middle}
  .b2f-ordertable thead th,
  .woocommerce-orders-table thead th{
    padding-bottom:12px;
    font-size:11px;
    font-weight:400;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:var(--b2f-muted);
  }
  .b2f-ordertable td::before,
  .woocommerce-orders-table td::before,
  .woocommerce-orders-table th[scope="row"]::before{display:none}
  .b2f-ordertable td.b2f-ordertable__total{text-align:right;padding-right:0}
}

/* Bestelling bekijken en adressen bewerken. */
.woocommerce-order-details,
.woocommerce-customer-details{display:flex;flex-direction:column;gap:14px}
.woocommerce-order-details__title,
.woocommerce-column__title,
.woocommerce-Address-title h2,
.woocommerce-MyAccount-content > h2,
.woocommerce-MyAccount-content form > h2{font-size:var(--b2f-fs-card);font-weight:400;letter-spacing:.02em}
.woocommerce-table--order-details{width:100%;border-collapse:collapse;font-size:14px}
.woocommerce-table--order-details th,
.woocommerce-table--order-details td{padding:12px 0;border-bottom:1px solid var(--b2f-line);text-align:left;vertical-align:top;font-weight:400}
.woocommerce-table--order-details td:last-child,
.woocommerce-table--order-details tfoot td{text-align:right}
.woocommerce-customer-details address{font-style:normal;padding:20px;border:1px solid var(--b2f-line);background:var(--b2f-paper);line-height:1.7}
.woocommerce-Addresses{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:768px){
  .woocommerce-Addresses{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.woocommerce-Address{padding:20px;border:1px solid var(--b2f-line);background:var(--b2f-paper)}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}
.woocommerce-Address-title a{font-size:13px;text-decoration:underline;text-underline-offset:5px}
.woocommerce-Address address{font-style:normal;line-height:1.7}
.woocommerce-address-fields__field-wrapper,
.woocommerce-EditAccountForm{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.woocommerce-EditAccountForm fieldset{display:grid;gap:16px;margin:12px 0 0;padding:20px;border:1px solid var(--b2f-line)}
.woocommerce-EditAccountForm legend{padding:0 6px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--b2f-muted)}
@media (min-width:768px){
  .woocommerce-address-fields__field-wrapper{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
  .woocommerce-address-fields__field-wrapper > .form-row-wide{grid-column:1 / -1}
}
.woocommerce-MyAccount-content .button[name="save_address"],
.woocommerce-MyAccount-content .button[name="save_account_details"]{margin-top:20px}

/* ---------- Inloggen ---------- */

.b2f-loginhead{position:relative;overflow:hidden}
.b2f-loginhead__inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  min-height:180px;
  padding-block:32px;
}
@media (min-width:1100px){
  .b2f-loginhead__inner{min-height:300px}
}

.b2f-login{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:20px;
  max-width:calc(480px + 2 * var(--b2f-gutter));
  padding-block:var(--b2f-section-y);
}
@media (min-width:1100px){
  .b2f-login--two{max-width:var(--b2f-max);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
}
.b2f-login__card{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:28px 22px;
  border:1px solid var(--b2f-line);
  background:var(--b2f-paper);
}
@media (min-width:768px){
  .b2f-login__card{padding:36px}
}
.b2f-login__card--dark{border-color:var(--b2f-graphite);background:var(--b2f-graphite);color:var(--b2f-warm-white)}
.b2f-login__title{font-size:var(--b2f-fs-card);font-weight:400;letter-spacing:.02em}
.b2f-login__intro{font-size:14px;line-height:1.6;color:var(--b2f-muted)}
.b2f-login__card--dark .b2f-login__intro{color:var(--b2f-muted-dark)}
.b2f-login form{display:flex;flex-direction:column;gap:16px}
.b2f-login__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:4px}
.b2f-login__card--dark .b2f-checks li{color:var(--b2f-muted-dark)}
.b2f-login__card--dark .b2f-checks li::before{background:var(--b2f-gold)}
.b2f-login__card--dark .b2f-btn{align-self:flex-start}
/* !important: de veldlabels in woo.css hebben een lange :not()-keten en zijn
   daardoor zwaarder dan deze regel. */
.b2f-login__card--dark label{color:var(--b2f-muted-dark) !important}

/* ---------- Voet bij het afrekenen ---------- */

.b2f-footer--checkout .b2f-footer__inner{
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  padding-block:24px;
}
.b2f-footer__links{display:flex;flex-wrap:wrap;gap:0 22px;margin:0;padding:0;list-style:none;font-size:13px}
.b2f-footer__links a{display:inline-flex;align-items:center;min-height:44px}
.b2f-footer__links a:hover{color:var(--b2f-gold)}
@media (min-width:768px){
  .b2f-footer--checkout .b2f-footer__inner{flex-direction:row;justify-content:space-between;align-items:center;gap:20px}
}
