/* ─────────────────────────────────────────────────────────
   Light theme tokens
────────────────────────────────────────────────────────── */
:root {
  --card-bg: #fff;
  --page-bg: #f8fafc;
  --text: #0b1220;
  --muted: #667085;
  --border: #e6eaf2;
  --accent: #2563eb;
  --accent-weak: #eef4ff;
  --radius: 16px;
  --shadow: 0 6px 18px rgba(17, 24, 39, .06);
  --shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .6);
  --space: 16px;
}

/* ─────────────────────────────────────────────────────────
   Scope: Checkout/Cart Blocks sidebar
   (Gebruik :where om specificiteit laag te houden)
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar,
       .wc-block-cart .wc-block-cart__sidebar) {
  font: 500 15px/1.45 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
  color: var(--text);
}

/* Optionele light variant (JS voegt class toe) */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-block.sub-summary--light {
  background: linear-gradient(#fff, #fff) padding-box;
}

/* ─────────────────────────────────────────────────────────
   Order Summary – resets/structuur
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar,
       .wc-block-cart .wc-block-cart__sidebar)
  .wc-block-components-checkout-order-summary__title {
  display: none !important; /* vervangt WP-kop */
}

:where(.wc-block-checkout .wc-block-checkout__sidebar,
       .wc-block-cart .wc-block-cart__sidebar)
  .wc-block-components-order-summary {
  padding: 0 !important;
}

/* Eerste totals-wrapper compacter */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-block
  .wc-block-components-totals-wrapper:first-of-type {
  padding: 1rem 0 !important;
}


/* Egaliseer nested slot-padding */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-wrapper.slot-wrapper > * > * {
  padding: 16px 0 0 0 !important;
}

/* Verberg onderdelen die je niet toont */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-shipping,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-fee-block,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-discount-block,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-subtotal-block,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wp-block-woocommerce-checkout-order-summary-totals-block {
  display: none !important;
}

/* Productafbeeldingen en “Return to cart” verbergen voor strak uiterlijk */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-order-summary-item__image,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-checkout-return-to-cart-button {
  display: none !important;
}

/* Productnaam + prijsregels */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-order-summary-item__description .wc-block-components-product-name {
  font-weight: 700;
  font-size: 15px;
  margin: 0 0 4px;
  color: inherit;
}

/* “every X months” subtieler */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-order-summary-item__individual-prices {
  display: block;
  color: #475467;
  font-weight: 600;
  margin: 2px 0 6px;
  white-space: nowrap;
}

/* Metadata-badges op li's */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-product-metadata .wc-block-components-product-details {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 2px 0 8px 0;
  padding: 0;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-product-details > li {
  list-style: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid #bfdbfe;
  background: #eff6ff;
  color: #2563eb;
  white-space: nowrap;
  box-shadow: var(--shadow-inset);
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-product-details__sign-up-fee {
  background: #f6f7fb;
  color: #475467;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-product-details__free-trial {
  background-color: #eff6ff;
  color: #2563eb;
  border: 1px solid #bfdbfe;
  padding: .25rem .5rem;
  border-radius: 24px;
}

/* Visueel verbergen, toegankelijk houden */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-order-summary-item .screen-reader-text[aria-hidden="false"] {
  position: absolute !important;
  clip: rect(1px,1px,1px,1px);
}

/* Totals: “Due today” compacter + typografie */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-footer-item {
  margin-top: 6px;
  padding-top: 8px;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-weight: 600;
  letter-spacing: .2px;
  padding-left: 16px;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  font-weight: 600;
  padding-right: 16px;
}

.wc-block-components-totals-itemwc-block-components-totals-footer-item {
    padding-left: 16px !important;
    padding-right:16px !important;
}

.wc-block-components-totals-item.wc-block-components-totals-footer-item {
    padding-left: unset !important;
    padding-right: unset !important;
}

/* PayPal payment method: align logo to the right */
.wc-ppcp-blocks-payment-method__label {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
}

.wc-ppcp-blocks-payment-method__label 
.wc-block-components-payment-method-icons {
    display: flex;
    flex: 1 1 auto !important;
    justify-content: flex-end;
}

.wcs-recurring-totals-panel__details
.wc-block-components-totals-wrapper
> .wc-block-components-totals-item.wc-block-components-totals-taxes,
.wcs-recurring-totals-panel__details
.wc-block-components-totals-wrapper
> .wc-block-components-totals-item.wcs-recurring-totals-panel__details-total {
    padding-left: 0 !important;
    padding-right: 0 !important;
}






/* Divider */
:where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__divider {
  border: 0;
  height: 1px;
  background: var(--border);
  margin: 6px 0 8px;
}

/* Geldbedragen: tabular-nums + rechts uitlijnen */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-item__value,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-formatted-money-amount {
  font-variant-numeric: tabular-nums;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-totals-item__value,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__title .wc-block-components-totals-item__value {
  margin-left: auto;
  text-align: right;
}

/* Fijne tekst */
:where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__foot { margin-top: 8px; }
:where(.wc-block-checkout .wc-block-checkout__sidebar) .fineprint {
  margin: 0;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel .fineprint[data-role="after-details"] {
  margin-top: 8px;
}

/* ─────────────────────────────────────────────────────────
   Recurring totals panel
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar) .wcs-recurring-totals-panel__title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__title .wc-block-components-totals-item__label { font-weight: 600; }
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__title .wc-block-components-totals-item__value { font-weight: 600; }
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__title .wc-block-components-totals-item__description {
  color: var(--muted);
  font-size: 12px;
  margin-top: 2px;
}

/* Details-body spacing & panel button styling */
:where(.wc-block-checkout .wc-block-checkout__sidebar) .wcs-recurring-totals-panel__details {
  padding: 0 var(--space) !important;
  margin: 1rem 0 0 !important;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar) .wc-block-components-panel__button {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: .75rem 1rem;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar) .wc-block-components-panel__button[aria-expanded="true"] {
  margin-bottom: 0 !important;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__details .wc-block-components-panel__button,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__details .wc-block-components-panel__button:focus,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wcs-recurring-totals-panel__details .wc-block-components-panel__button:hover {
  padding-left: var(--space) !important;
  padding-top: .25em;
  margin-bottom: 1em !important;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-panel__button > .wc-block-components-panel__button-icon {
  padding-right: 8px !important;
}

/* ─────────────────────────────────────────────────────────
   Header/badges (JS-inject)
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__header { display: none; }
:where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__title {
  font-size: 18px;
  line-height: 1.2;
  margin: 0;
  font-weight: 700;
  letter-spacing: .2px;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
:where(.wc-block-checkout .wc-block-checkout__sidebar) .badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--accent-weak);
  color: var(--accent);
  white-space: nowrap;
  box-shadow: var(--shadow-inset);
}
:where(.wc-block-checkout .wc-block-checkout__sidebar) .badge--cycle {
  background: #f6f7fb;
  color: #475467;
}

/* ─────────────────────────────────────────────────────────
   Payments – label gewicht & iDEAL layout fix
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-checkout__payment-method
  .wc-block-components-radio-control-accordion-option
  .wc-block-components-radio-control__label {
  font-weight: 600 !important;
}

/* Verberg PayPal PPCP beschrijving */
#radio-control-wc-payment-method-options-ppcp__content {
  display: none !important;
}

/* iDEAL: tekst links, logo helemaal rechts, inline margin overrulen */
#radio-control-wc-payment-method-options-mollie_wc_gateway_ideal ~ .wc-block-components-radio-control__option-layout .wc-block-components-radio-control__label-group,
#radio-control-wc-payment-method-options-mollie_wc_gateway_ideal__label {
  display: block !important;
  width: 100% !important;
}
#radio-control-wc-payment-method-options-mollie_wc_gateway_ideal__label > div {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
}
#radio-control-wc-payment-method-options-mollie_wc_gateway_ideal__label > div > span {
  flex: 1 1 auto !important;
  margin-right: 0 !important; /* override inline */
}
#radio-control-wc-payment-method-options-mollie_wc_gateway_ideal__label img.mollie-gateway-icon {
  margin-left: auto !important;
  display: block !important;
  padding-right: 16px;
}

/* ─────────────────────────────────────────────────────────
   Sidebar nested padding fix (no double padding in panels)
────────────────────────────────────────────────────────── */
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-sidebar .wc-block-components-panel .wc-block-components-totals-item,
:where(.wc-block-checkout .wc-block-checkout__sidebar)
  .wc-block-components-sidebar .wc-block-components-totals-item .wc-block-components-panel {
  padding: 0 !important;
}

/* ─────────────────────────────────────────────────────────
   Responsive
────────────────────────────────────────────────────────── */
@media (max-width: 560px) {
  :where(.wc-block-checkout .wc-block-checkout__sidebar) .sub-summary__title {
    font-size: 16px;
  }
  :where(.wc-block-checkout .wc-block-checkout__sidebar)
    .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 17px;
  }
}

.wc-block-components-order-summary-item__description {
  padding: 0 16px !important;
}


.wc-block-components-panel__button[aria-expanded=false] {
    margin-bottom: 16px !important;
}

.wc-block-components-panel__button {
    font-size: 1em !important;
    color: #2563eb !important;
    border: solid 1px #bfdbfe !important;
    background-color: #eff6ff !important;
    font-size: 14px !important;
}


.wc-block-components-panel__button > *:last-child { margin-left:auto !important; }
.wc-block-components-panel__button {
  padding-bottom: 6px !important;
}

.wc-block-components-product-details__gratis-proefperiode {
    background-color: #eff6ff;
    color: #2563eb;
    border: 1px solid #bfdbfe;
    padding: .25rem .5rem;
    border-radius: 24px;
}

h3.wc-block-components-product-name, .wc-block-components-totals-item__value, .wc-block-components-totals-item__label, .wc-block-components-totals-item__label {
  font-size:16px !important;
  font-weight: 600;
}

#radio-control-wc-payment-method-options-stripe_ideal__content, #radio-control-wc-payment-method-options-stripe_bancontact__content{
  display: none !important;
}

@media (max-width: 699px) {

.wc-block-components-panel__button {
    font-weight: 500;
    border-radius: var(--radius);
    padding-left: var(--space) !important;
    margin-bottom: 0 !important;
}

.wc-block-components-panel__button-icon {
    padding-right: 8px !important;
}

.wcs-recurring-totals-panel__details {
    padding: 0 var(--space) !important;
    margin: 1rem 0 0 !important;
}

.wc-block-components-totals-wrapper {
  padding:0 !important;
}
.fineprint {
  display:none !important;
}
.wc-block-components-product-price {
    color: #475467;
    font-weight: 600;
}

.wc-block-components-product-details__free-trial {
    background-color: #eff6ff;
    color: #2563eb;
    border: 1px solid #bfdbfe;
    padding: .25rem .5rem;
    border-radius: 24px;
    font-weight: 600;
}
.wc-block-components-order-summary-item__description {
  padding:0 !important;
}
.wc-block-components-order-summary, .wc-block-components-totals-item {
  padding: 16px !important;
}

.wp-block-woocommerce-checkout-order-summary-totals-block, .wcs-recurring-totals-panel {
  padding:0 !important;
}

.wc-block-components-panel__button[aria-expanded=false], .wc-block-components-panel__button[aria-expanded=true] {
    padding-left: 16px !important;
}

.wcs-recurring-totals-panel__title {
  padding-bottom: 0 !important;
}

.wc-block-components-product-details.wc-block-components-product-details:last-of-type {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

.wc-block-components-checkout-step__title {
  display: none !important;
}
.wcs-recurring-totals-panel__details .wc-block-components-panel__button, .wcs-recurring-totals-panel__details .wc-block-components-panel__button:focus, .wcs-recurring-totals-panel__details .wc-block-components-panel__button:hover {
    padding-left: 16px !important;
}
woocommerce-checkout.header, woocommerce-checkout.h1 {
    margin-bottom: 0 !important;
}

.wp-block-woocommerce-checkout {
    padding-top: 0 !important;
}
.wp-block-woocommerce-checkout-order-summary-block .checkout-order-summary-block-fill .wc-block-components-totals-coupon, .wp-block-woocommerce-checkout-order-summary-block .checkout-order-summary-block-fill .wc-block-components-totals-item {
    padding-left: 16px !important;
    padding-right: 16px !important;
}

.wcs-recurring-totals-panel__details
.wc-block-components-panel__content
> .wc-block-components-totals-wrapper:first-of-type
> .wc-block-components-totals-item {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-weight: 600;
}
}