.elementor-380 .elementor-element.elementor-element-5e2f8b5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.95;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-380 .elementor-element.elementor-element-5e2f8b5:not(.elementor-motion-effects-element-type-background), .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tcg-beurs.nl/wp-content/uploads/2026/01/TCG-Beurs-Venray-Pokemon-beurs-Zuid-Limburg.jpg");background-position:center center;background-size:cover;}.elementor-380 .elementor-element.elementor-element-5e2f8b5::before, .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .elementor-background-video-container::before, .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .e-con-inner > .elementor-background-video-container::before, .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .elementor-background-slideshow::before, .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-380 .elementor-element.elementor-element-5e2f8b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #090D16 0%, #1518268C 100%);}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-380 .elementor-element.elementor-element-d3bc5ba{text-align:center;}.elementor-380 .elementor-element.elementor-element-d3bc5ba .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:60px;font-weight:800;color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-380 .elementor-element.elementor-element-c6faa3d .elementor-button{background-color:transparent;font-family:"Inter", Sans-serif;font-size:18px;font-weight:500;fill:#0F172A;color:#0F172A;background-image:linear-gradient(90deg, #F59F0B 0%, #EAB308 100%);box-shadow:0px 0px 18px 0px rgba(255, 193, 7.0000000000000036, 0.45);border-style:none;border-radius:8px 8px 8px 8px;padding:20px 35px 20px 35px;}.elementor-380 .elementor-element.elementor-element-c6faa3d .elementor-button:hover, .elementor-380 .elementor-element.elementor-element-c6faa3d .elementor-button:focus{background-color:transparent;background-image:linear-gradient(90deg, #EAB308 0%, #F59F0B 100%);box-shadow:0px 0px 28px 2px rgba(255, 193, 7.0000000000000036, 0.65);}.elementor-380 .elementor-element.elementor-element-c6faa3d.elementor-element{--align-self:center;}.elementor-380 .elementor-element.elementor-element-4cbbc06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-380 .elementor-element.elementor-element-4cbbc06:not(.elementor-motion-effects-element-type-background), .elementor-380 .elementor-element.elementor-element-4cbbc06 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}@media(min-width:768px){.elementor-380 .elementor-element.elementor-element-5e2f8b5{--content-width:1300px;}.elementor-380 .elementor-element.elementor-element-4cbbc06{--content-width:1300px;}}@media(max-width:1024px){.elementor-380 .elementor-element.elementor-element-d3bc5ba .elementor-heading-title{font-size:45px;}}@media(max-width:767px){.elementor-380 .elementor-element.elementor-element-d3bc5ba .elementor-heading-title{font-size:26px;}.elementor-380 .elementor-element.elementor-element-c6faa3d{width:100%;max-width:100%;}.elementor-380 .elementor-element.elementor-element-c6faa3d .elementor-button{padding:15px 25px 15px 25px;}}/* Start custom CSS for shortcode, class: .elementor-element-74ae7cb *//* =========================================================
   TCG Beurs — WooCommerce Cart (Clean v1)
   Voor [woocommerce_cart] — light, modern, stabiele layout
   ========================================================= */

:root{
  --tcg-bg: #f6f8fc;
  --tcg-card: #ffffff;
  --tcg-border: rgba(15, 23, 42, .10);
  --tcg-text: #0f172a;
  --tcg-muted: rgba(15, 23, 42, .65);

  --tcg-accent: #f4b400;      /* geel */
  --tcg-accent2: #5b5ef6;     /* paars/blauw */
  --tcg-danger: #ef4444;

  --tcg-radius: 16px;
  --tcg-radius-sm: 12px;
  --tcg-shadow: 0 14px 34px rgba(15, 23, 42, .10);
  --tcg-shadow-sm: 0 8px 20px rgba(15, 23, 42, .08);
}

/* Page base */
body.woocommerce-cart{
  background: var(--tcg-bg);
}
body.woocommerce-cart .woocommerce{
  max-width: 1180px;
  margin: 0 auto;
  color: var(--tcg-text);
}

/* Kill legacy floats that break layout */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart-collaterals .cart_totals{
  float: none !important;
  clear: none !important;
  width: auto !important;
}

/* --- Stable layout wrapper (desktop) --- */
@media (min-width: 1024px){
  body.woocommerce-cart .woocommerce{
    display: grid !important;
    grid-template-columns: minmax(680px, 1fr) 380px;
    gap: 22px;
    align-items: start;
  }

  body.woocommerce-cart .woocommerce-notices-wrapper{
    grid-column: 1 / -1;
  }

  body.woocommerce-cart form.woocommerce-cart-form{
    grid-column: 1 / 2;
  }

  body.woocommerce-cart .cart-collaterals{
    grid-column: 2 / 3;
    position: sticky;
    top: 18px;
  }
}

/* Notices */
body.woocommerce-cart .woocommerce-notices-wrapper > *{
  background: var(--tcg-card);
  border: 1px solid var(--tcg-border);
  border-radius: var(--tcg-radius);
  box-shadow: var(--tcg-shadow-sm);
  padding: 14px 16px;
  margin: 0 0 14px;
}
body.woocommerce-cart .woocommerce-message{ border-left: 6px solid var(--tcg-accent); }
body.woocommerce-cart .woocommerce-info{ border-left: 6px solid var(--tcg-accent2); }
body.woocommerce-cart .woocommerce-error{ border-left: 6px solid var(--tcg-danger); }

/* --- Cart card --- */
body.woocommerce-cart form.woocommerce-cart-form{
  background: var(--tcg-card);
  border: 1px solid var(--tcg-border);
  border-radius: var(--tcg-radius);
  box-shadow: var(--tcg-shadow);
  padding: 16px;
}

/* Table base */
body.woocommerce-cart table.shop_table{
  border: 0 !important;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  background: transparent;
}

body.woocommerce-cart table.shop_table thead th{
  padding: 12px 12px;
  font-size: 13px;
  font-weight: 800;
  color: var(--tcg-muted);
  border-bottom: 1px solid var(--tcg-border);
  background: transparent;
}

body.woocommerce-cart table.shop_table tbody td{
  padding: 14px 12px;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
  vertical-align: middle;
}
body.woocommerce-cart table.shop_table tbody tr:last-child td{
  border-bottom: 0;
}

/* Thumbnail */
body.woocommerce-cart .product-thumbnail img{
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .10);
  box-shadow: 0 6px 14px rgba(15, 23, 42, .06);
}

/* Product name */
body.woocommerce-cart .product-name a{
  color: var(--tcg-text);
  font-weight: 900;
  text-decoration: none;
}
body.woocommerce-cart .product-name a:hover{
  text-decoration: underline;
}

/* Remove button */
body.woocommerce-cart a.remove{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: var(--tcg-danger) !important;
  background: rgba(239, 68, 68, .10) !important;
  border: 1px solid rgba(239, 68, 68, .25) !important;
  transition: transform .15s ease, background .15s ease;
}
body.woocommerce-cart a.remove:hover{
  transform: scale(1.05);
  background: rgba(239, 68, 68, .16) !important;
}

/* Quantity */
body.woocommerce-cart .quantity .qty{
  height: 42px;
  border-radius: 12px;
  border: 1px solid var(--tcg-border);
  padding: 0 10px;
  background: #fff;
}

/* Actions row (coupon + update) */
body.woocommerce-cart table.shop_table td.actions{
  padding-top: 16px;
  border-top: 1px solid var(--tcg-border);
}

body.woocommerce-cart .coupon{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

body.woocommerce-cart .coupon input.input-text{
  height: 44px;
  border-radius: 12px;
  border: 1px solid var(--tcg-border);
  padding: 0 12px;
  min-width: 240px;
  background: #fff;
}

/* Buttons */
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce input.button{
  border-radius: 14px;
  padding: 12px 16px;
  font-weight: 900;
  border: 1px solid rgba(15, 23, 42, .14);
  background: #fff;
  color: var(--tcg-text);
  box-shadow: 0 10px 18px rgba(15, 23, 42, .06);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart .woocommerce input.button:hover{
  transform: translateY(-1px);
  box-shadow: 0 14px 24px rgba(15, 23, 42, .10);
  border-color: rgba(15, 23, 42, .20);
}

/* --- Totals card --- */
body.woocommerce-cart .cart-collaterals .cart_totals{
  background: var(--tcg-card);
  border: 1px solid var(--tcg-border);
  border-radius: var(--tcg-radius);
  box-shadow: var(--tcg-shadow);
  padding: 16px;
}

body.woocommerce-cart .cart-collaterals .cart_totals h2{
  margin: 6px 0 14px;
  font-size: 18px;
  font-weight: 900;
  color: var(--tcg-text);
}

body.woocommerce-cart .cart-collaterals .cart_totals table{
  border: 0 !important;
  margin: 0 0 12px;
}

body.woocommerce-cart .cart-collaterals .cart_totals th,
body.woocommerce-cart .cart-collaterals .cart_totals td{
  padding: 10px 0;
  border-bottom: 1px solid rgba(15, 23, 42, .08) !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals tr:last-child th,
body.woocommerce-cart .cart-collaterals .cart_totals tr:last-child td{
  border-bottom: 0 !important;
}

body.woocommerce-cart .cart-collaterals .order-total strong{
  font-size: 18px;
}

/* Checkout block */
body.woocommerce-cart .wc-proceed-to-checkout{
  padding: 0;
  margin: 0;
}

body.woocommerce-cart .woocommerce a.checkout-button,
body.woocommerce-cart .woocommerce a.button.checkout-button{
  display: flex !important;
  width: 100% !important;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 14px 18px;
  border-radius: 16px;
  border: 0;
  background: linear-gradient(90deg, var(--tcg-accent), #ffd66b);
  color: #111827 !important;
  font-weight: 1000;
  box-shadow: 0 18px 34px rgba(244, 180, 0, .26);
  white-space: normal; /* mag 2 regels op kleine breedtes */
  line-height: 1.15;
}
body.woocommerce-cart .woocommerce a.checkout-button:hover{
  transform: translateY(-1px);
  box-shadow: 0 22px 40px rgba(244, 180, 0, .32);
}

/* Links */
body.woocommerce-cart .woocommerce a{
  color: var(--tcg-accent2);
}

/* --- Responsive (mobile) --- */
@media (max-width: 1023px){
  body.woocommerce-cart .woocommerce{
    display: block !important;
  }
  body.woocommerce-cart .cart-collaterals{
    margin-top: 16px;
  }
}

/* Optional: Mobile “card rows” voor table (veilig, geen floats/absolute) */
@media (max-width: 680px){
  body.woocommerce-cart table.shop_table thead{ display: none; }

  body.woocommerce-cart table.shop_table,
  body.woocommerce-cart table.shop_table tbody,
  body.woocommerce-cart table.shop_table tr,
  body.woocommerce-cart table.shop_table td{
    display: block;
    width: 100%;
  }

  body.woocommerce-cart table.shop_table tr{
    background: #fff;
    border: 1px solid var(--tcg-border);
    border-radius: 16px;
    box-shadow: var(--tcg-shadow-sm);
    padding: 12px;
    margin: 0 0 12px;
  }

  body.woocommerce-cart table.shop_table td{
    border: 0;
    padding: 8px 0;
  }

  body.woocommerce-cart td.product-remove{ margin-bottom: 6px; }
}
/* =========================================================
   Mobile fix — coupon button/field (plaats ONDERAAN)
   ========================================================= */
@media (max-width: 680px){

  /* Coupon blok: alles onder elkaar */
  body.woocommerce-cart td.actions .coupon{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
  }

  /* Input altijd volle breedte */
  body.woocommerce-cart td.actions .coupon input.input-text{
    width: 100% !important;
    min-width: 0 !important;
  }

  /* Knop volle breedte + geen rare woordafbreking */
  body.woocommerce-cart td.actions .coupon button,
  body.woocommerce-cart td.actions .coupon .button,
  body.woocommerce-cart td.actions .coupon input.button{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    text-align: center !important;

    white-space: nowrap !important;     /* blijft 1 regel */
    word-break: keep-all !important;    /* voorkom Waard/ebon */
    overflow-wrap: normal !important;   /* geen afbreken */
    hyphens: none !important;

    padding: 12px 14px !important;
  }

  /* Update winkelwagen knop ook netjes full width (optioneel maar fijn) */
  body.woocommerce-cart td.actions button[name="update_cart"]{
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  /* Actions padding wat netter op mobiel */
  body.woocommerce-cart table.shop_table td.actions{
    padding-top: 14px !important;
  }
}/* End custom CSS */