/* ============================================================
   MC — Premium winkelwagen
   Styling voor de custom cart-template (thema mcdeurcilindernew).
   Alles gescoped onder body.woocommerce-cart.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&display=swap');

.woocommerce-cart{
  --teal:#1c8ea3; --teal-d:#12707f; --teal-50:#ecf8fb; --deep:#0a444e;
  --ink:#123138; --muted:#5a6e74; --line:#e2ebed; --bg:#f1f8f9; --gold-d:#9a6500;
}

/* ---- kader + basistypografie ---- */
.woocommerce-cart .woocommerce-cart-form.new-cart{
  font-family:'Inter',system-ui,sans-serif; color:var(--ink);
  max-width:1180px; margin:0 auto;
}
.woocommerce-cart .new-cart *{box-sizing:border-box}

/* ---- paginatitel "Winkelwagen" ---- */
.woocommerce-cart h1{
  font-family:'Inter',system-ui,sans-serif !important; color:var(--deep) !important;
  font-weight:800 !important; letter-spacing:.2px;
}

/* ---- sectiekoppen ---- */
.woocommerce-cart .checkout-title{
  font-family:'Inter',system-ui,sans-serif; font-size:17px; font-weight:700;
  color:var(--deep); margin:0 0 16px; padding:0; line-height:1.25; letter-spacing:-.1px;
}
.woocommerce-cart .checkout-title.payment-block-padding{
  font-size:14px; font-weight:600; color:var(--muted); margin:4px 0 16px;
}

/* ---- productenlijst ---- */
.woocommerce-cart .checkout-middle{display:flex; flex-direction:column; gap:14px}
.woocommerce-cart .checkout-middle > h2{
  font-family:'Fraunces',serif; font-size:19px; color:var(--deep);
  margin:12px 0 0; font-weight:600;
}
.woocommerce-cart .checkout-products-data{
  position:relative; background:#fff; border:1px solid var(--line);
  border-radius:16px; padding:16px 18px; box-shadow:0 6px 20px rgba(12,91,102,.05);
}
.woocommerce-cart .cilinder-config-options.row{
  display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin:0;
}

/* afbeelding-tegel */
.woocommerce-cart .cilinder-config-options .col-md-8ths{
  flex:0 0 auto; width:auto; padding:0;
}
.woocommerce-cart .cilinder-count-item{
  background:linear-gradient(180deg,#f7fbfc,#eef6f8); border:1px solid var(--line);
  border-radius:14px; padding:10px; width:118px; text-align:center;
}
.woocommerce-cart .cilinder-count-item.active{border-color:#cdeaf0}
.woocommerce-cart .cilinder-count-img{
  width:100%; height:80px; background-size:contain; background-repeat:no-repeat;
  background-position:center; border-radius:8px;
}
.woocommerce-cart .cilinder-count-title,
.woocommerce-cart .cilinder-name{
  font-weight:700; color:var(--deep); font-size:13px; margin-bottom:6px;
}

/* parameters / specificatie-chips */
.woocommerce-cart .cilinder-params{flex:1 1 320px; padding:0}
.woocommerce-cart .cilinder-params .row{
  display:flex; flex-wrap:wrap; gap:10px; margin:0; align-items:stretch;
}
.woocommerce-cart .cilinder-params [class*="col-"]{
  width:auto; padding:0; flex:0 0 auto; float:none;
}
.woocommerce-cart .param-item{
  background:var(--bg); border:1px solid var(--line); border-radius:10px;
  padding:7px 13px; min-width:0; display:flex; flex-direction:column; justify-content:center;
}
.woocommerce-cart .param-item.hidden{display:none !important}
.woocommerce-cart .change-param-value{
  font-size:10.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.4px;
  font-weight:700; margin-bottom:2px; cursor:default; background:none; border:0; padding:0;
}
.woocommerce-cart .param-value{font-size:14px; color:var(--ink); font-weight:700}
/* prijs-chip accent (alleen bij de gedetailleerde cilinder-config-regels) */
.woocommerce-cart .param-5{background:var(--teal-50); border-color:#cdeaf0}
.woocommerce-cart .param-5 .param-value{color:var(--teal-d); font-size:16px}
.woocommerce-cart .param-5 .change-param-value{color:var(--teal-d)}
.woocommerce-cart .other-addon{font-size:13px !important; color:var(--muted) !important}

/* eenvoudige productregel (o.a. 'Sluitplan op maat') — rustig, naam + prijs op één lijn */
.woocommerce-cart .extra-products-data .cilinder-count-item{
  background:#fff; border:1px solid var(--line);
}
.woocommerce-cart .extra-products-data .cilinder-params{flex:1 1 auto; width:100%}
.woocommerce-cart .extra-products-data .cilinder-params .row{
  display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
}
.woocommerce-cart .extra-products-data .param-item{
  background:none !important; border:0 !important; padding:0 !important;
}
.woocommerce-cart .extra-products-data .param-item .param-value{font-size:16px; color:var(--ink); font-weight:700}
.woocommerce-cart .extra-products-data .cilinder-params [class*="col-"]:first-child{flex:1 1 auto}
.woocommerce-cart .extra-products-data .param-5 .param-value{color:var(--teal-d); font-family:'Inter',sans-serif}
.woocommerce-cart .extra-products-data .col-md-12{flex:1 1 100%}

/* aanpassen / verwijderen */
.woocommerce-cart .cilinder-edit.show-cilinder-params{
  display:inline-block; margin-top:12px; color:var(--teal-d); font-weight:700;
  font-size:13px; cursor:pointer; text-decoration:none;
}
.woocommerce-cart .cilinder-edit.show-cilinder-params:hover{text-decoration:underline}
.woocommerce-cart .product-remove{position:absolute; top:10px; right:12px; margin:0}
.woocommerce-cart .product-remove .remove{
  display:inline-flex !important; align-items:center; justify-content:center;
  width:28px; height:28px; border-radius:50%; background:#f4f6f7;
  color:#9aa7ab !important; font-size:18px; line-height:1; text-decoration:none; transition:.15s;
}
.woocommerce-cart .product-remove .remove:hover{background:#fbe9e9; color:#c0392b !important}

/* ---- sluitplan-matrix (indien keyplan) ---- */
.woocommerce-cart .cm-title{
  font-family:'Fraunces',serif; font-size:18px; color:var(--deep); margin:20px 0 10px;
}
.woocommerce-cart .keys-outer-table{border-collapse:separate; border-spacing:0}
.woocommerce-cart .keys-access-table{border-collapse:collapse; margin-right:14px}
.woocommerce-cart .keys-access-table th,
.woocommerce-cart .keys-access-table td{
  border:1px solid var(--line); padding:8px 11px; font-size:13px; text-align:center;
}
.woocommerce-cart .keys-access-table th{background:var(--bg); color:var(--deep); font-weight:700}
.woocommerce-cart .keys-access-table th .change-param-value,
.woocommerce-cart .keys-access-table th .cilinder-count-title{
  text-transform:none; letter-spacing:0; font-size:13px; color:var(--deep);
}
.woocommerce-cart .access-mark{color:var(--teal-d); font-weight:800}
.woocommerce-cart .save-excel-block{display:flex; gap:10px; margin-top:14px; flex-wrap:wrap}
.woocommerce-cart .excel-filename{
  border:1px solid var(--line); border-radius:10px; padding:11px 13px; font-size:14px;
  min-width:220px; font-family:inherit;
}
.woocommerce-cart .save-excel-text{font-size:13px; color:var(--muted); margin-top:10px; line-height:1.6}

/* ---- onderste blok: bijbestellen + besteloverzicht ---- */
.woocommerce-cart .checkout-bottom{
  display:flex; flex-wrap:wrap; gap:20px; margin-top:26px; align-items:flex-start;
}
.woocommerce-cart .checkout-bottom .checkout-col{padding:0; float:none; margin:0}
/* Bijbestellen (links, smal) */
.woocommerce-cart .checkout-col.col-md-4{
  flex:0 0 300px; background:var(--bg); border:1px solid var(--line);
  border-radius:18px; padding:20px;
}
@media(max-width:900px){.woocommerce-cart .checkout-col.col-md-4{flex:1 1 100%}}
.woocommerce-cart .extra-product{
  background:#fff; border:1px solid var(--line); border-radius:14px; padding:18px 16px 20px;
  text-align:center; display:flex; flex-direction:column; align-items:center; gap:6px; max-width:240px; margin:0 auto;
}
.woocommerce-cart .extra-product .cilinder-count-item{
  width:100% !important; background:none !important; border:0 !important; box-shadow:none !important;
  padding:0 !important; margin:0 !important; display:flex !important; flex-direction:column; align-items:center;
}
.woocommerce-cart .extra-product .cilinder-count-img{
  height:96px; width:100%; max-width:150px; margin:6px auto 0;
  background-position:center; background-size:contain;
}
.woocommerce-cart .extra-product .ep-text{text-align:center; width:100%; display:flex; flex-direction:column; align-items:center; gap:8px}
.woocommerce-cart .extra-product .order-extra-product{width:100%; max-width:180px}
/* 'Servicepen'-titel leesbaar boven de donkere afbeelding + gecentreerd */
.woocommerce-cart .extra-product .cilinder-count-title{
  position:static !important; color:var(--ink) !important; background:none !important;
  font-size:14px; font-weight:700; margin:0 0 8px; text-shadow:none; text-align:center;
}
.woocommerce-cart .ep-price{font-family:'Fraunces',serif; font-size:18px; color:var(--deep); margin:8px 0}

/* Besteloverzicht (rechts, prominent) */
.woocommerce-cart .checkout-col.col-md-8{
  flex:1 1 420px; background:#fff; border:1px solid var(--line);
  border-radius:18px; padding:22px 24px; box-shadow:0 10px 30px rgba(12,91,102,.07);
}
.woocommerce-cart .checkout-col.col-md-8 .checkout-title{margin-bottom:12px}
.woocommerce-cart .qc-totals .row{
  display:flex; justify-content:space-between; align-items:baseline; gap:16px;
  margin:0; padding:8px 2px; font-size:14.5px; color:var(--ink);
}
.woocommerce-cart .qc-totals .control-label{
  flex:1 1 auto; font-weight:500; color:var(--muted); padding:0; width:auto;
  text-align:left; margin:0; float:none;
}
.woocommerce-cart .qc-totals .form-control-static{
  flex:0 0 auto; min-width:120px; padding:0; min-height:0; font-weight:700;
  text-align:right; float:none; font-variant-numeric:tabular-nums;
}
.woocommerce-cart .qc-totals .cart_item .control-label{color:var(--ink); font-weight:600}
.woocommerce-cart .qc-totals .sep{height:1px; background:var(--line); margin:8px 0; padding:0}
.woocommerce-cart .qc-totals .order-total{padding:10px 2px}
.woocommerce-cart .qc-totals .order-total .label-total{
  font-family:'Inter',system-ui,sans-serif; font-size:16px; color:var(--deep); font-weight:700;
}
.woocommerce-cart .qc-totals .order-total .sum-total{
  font-family:'Inter',system-ui,sans-serif; font-size:20px; color:var(--deep);
  font-weight:800; font-variant-numeric:tabular-nums;
}
.woocommerce-cart .qc-totals .order-total .sum-total strong{font-weight:800}

/* hoofd-CTA */
.woocommerce-cart #place_order{
  display:block; width:100%; margin-top:18px; background:var(--teal); color:#fff !important;
  border:0; border-radius:12px; padding:16px 24px; font-size:16px; font-weight:700; cursor:pointer;
  box-shadow:0 12px 26px rgba(28,142,163,.3); transition:.15s; font-family:inherit; text-align:center;
}
.woocommerce-cart #place_order:hover{background:var(--teal-d)}
.woocommerce-cart #empty-cart{
  display:inline-block; margin-top:14px; color:var(--muted); font-size:13px;
  cursor:pointer; text-decoration:underline;
}
.woocommerce-cart .cc-payment-list{
  margin-top:16px; padding-top:14px; border-top:1px solid var(--line);
  display:flex; flex-wrap:wrap; gap:9px; align-items:center;
}
.woocommerce-cart .cc-payment-list img{height:26px; width:auto}

/* ---- sluitplan: geruststelling + projectie ---- */
.woocommerce-cart .mc-sp-cartbox{display:flex; flex-direction:column; gap:14px; margin:2px 0 4px}
.woocommerce-cart .mc-sp-reassure{
  display:flex; gap:14px; align-items:flex-start; font-size:14px; line-height:1.6;
  background:linear-gradient(120deg,#0a444e,#12707f); color:#e6f5f8;
  border-radius:16px; padding:18px 20px;
}
.woocommerce-cart .mc-sp-reassure strong{color:#fff; display:block; margin-bottom:3px; font-size:15px}
.woocommerce-cart .mc-sp-ico{
  flex:none; width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,.16);
  display:inline-flex; align-items:center; justify-content:center; font-weight:800; color:#fff; font-size:15px;
}
.woocommerce-cart .mc-sp-proj{
  background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px 20px;
  box-shadow:0 6px 20px rgba(12,91,102,.05);
}
.woocommerce-cart .mc-sp-proj-h{
  font-family:'Inter',system-ui,sans-serif; font-weight:700; font-size:16px; color:var(--deep);
  margin-bottom:12px; display:flex; align-items:center; gap:10px; flex-wrap:wrap;
}
.woocommerce-cart .mc-sp-proj-h span{
  font-size:11px; font-weight:800; color:var(--teal-d); background:var(--teal-50);
  border-radius:999px; padding:4px 10px; text-transform:uppercase; letter-spacing:.3px;
}
.woocommerce-cart .mc-sp-chips{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:14px}
.woocommerce-cart .mc-sp-chips span{
  background:var(--bg); border:1px solid var(--line); border-radius:10px;
  padding:8px 14px; font-size:13px; color:var(--muted);
}
.woocommerce-cart .mc-sp-chips b{color:var(--deep); font-size:15px; font-family:'Fraunces',serif; margin-right:3px}
.woocommerce-cart .mc-sp-matrixwrap{overflow-x:auto; border:1px solid var(--line); border-radius:12px}
.woocommerce-cart .mc-sp-matrix{border-collapse:collapse; width:100%; font-size:13px; min-width:420px}
.woocommerce-cart .mc-sp-matrix th,
.woocommerce-cart .mc-sp-matrix td{
  border-bottom:1px solid #eef1f4; border-right:1px solid #f2f5f7; padding:8px 10px; text-align:center;
}
.woocommerce-cart .mc-sp-matrix thead th{background:#f6fafb; color:var(--muted); font-weight:600; font-size:12px}
.woocommerce-cart .mc-sp-matrix .rowh{
  text-align:left; font-weight:700; color:var(--deep); white-space:nowrap; background:#fbfdfe;
}
.woocommerce-cart .mc-sp-matrix td.on{color:#fff; background:var(--teal-d); font-weight:800}
.woocommerce-cart .mc-sp-proj-note{font-size:12.5px; color:var(--muted); margin:12px 0 0}
/* configuratie-regels (M&C-set) */
.woocommerce-cart .mc-sp-lines{list-style:none; margin:10px 0 0; padding:0}
.woocommerce-cart .mc-sp-lines li{font-size:13.5px; color:var(--ink); padding:8px 0; border-bottom:1px solid #eef1f4}
.woocommerce-cart .mc-sp-lines li:last-child{border-bottom:0}
/* set-label achter de productnaam */
.woocommerce-cart .mrb-setno{display:inline-block; font-size:11px; font-weight:800; color:var(--teal-d);
  background:var(--teal-50); border-radius:999px; padding:3px 9px; margin-left:6px; vertical-align:middle; letter-spacing:.2px}
/* volledige set-kaart (afbeelding + kop + prijs + verwijderen) */
.woocommerce-cart .mrb-setcard .mc-sp-proj{position:relative; padding:22px 24px}
.woocommerce-cart .mrb-settop{display:flex; align-items:center; gap:18px; margin-bottom:14px}
.woocommerce-cart .mrb-setimg{flex:0 0 auto; width:92px; height:92px; border:1px solid var(--line);
  border-radius:14px; background:linear-gradient(180deg,#f7fbfc,#eef6f8); display:flex; align-items:center; justify-content:center; padding:8px}
.woocommerce-cart .mrb-setimg img{max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain}
.woocommerce-cart .mrb-sethead{flex:1 1 auto; min-width:0}
.woocommerce-cart .mrb-sethead .mc-sp-proj-h{margin-bottom:8px}
.woocommerce-cart .mrb-sethead .mc-sp-chips{margin-bottom:0}
.woocommerce-cart .mrb-setprice{flex:0 0 auto; font-family:'Fraunces',serif; font-size:22px; color:var(--deep); font-weight:600; white-space:nowrap}
.woocommerce-cart .mrb-setprice .amount{font-weight:600}
.woocommerce-cart .mrb-setremove{position:absolute; top:14px; right:16px; width:28px; height:28px; border-radius:50%;
  background:#f4f6f7; color:#9aa7ab; display:inline-flex; align-items:center; justify-content:center; font-size:18px; line-height:1; text-decoration:none; transition:.15s}
.woocommerce-cart .mrb-setremove:hover{background:#fbe9e9; color:#c0392b}
@media(max-width:560px){.woocommerce-cart .mrb-settop{flex-wrap:wrap}.woocommerce-cart .mrb-setprice{width:100%}}

/* ---- knoppen algemeen (binnen de winkelwagen) ---- */
.woocommerce-cart .view-btn{
  display:inline-block; background:var(--teal); color:#fff !important; border:0;
  border-radius:10px; padding:11px 18px; font-weight:700; font-size:14px; cursor:pointer;
  text-decoration:none; font-family:inherit; transition:.15s; box-shadow:none;
}
.woocommerce-cart .view-btn:hover{background:var(--teal-d)}
.woocommerce-cart .view-btn-inverse{
  background:#fff; color:var(--teal-d) !important; border:1.5px solid var(--teal);
}
.woocommerce-cart .view-btn-inverse:hover{background:var(--teal-50)}

/* ---- popups netjes ---- */
.woocommerce-cart .config-name{font-family:'Fraunces',serif; font-size:18px; color:var(--deep)}
.woocommerce-cart .popup-container .lead{color:var(--muted)}

/* ---- responsive ---- */
@media(max-width:640px){
  .woocommerce-cart .cilinder-config-options.row{gap:12px}
  .woocommerce-cart .cilinder-count-item{width:96px}
  .woocommerce-cart .checkout-title{font-size:19px}
  .woocommerce-cart .checkout-col.col-md-8{padding:18px 16px}
}
