/* ===== OVERRIDE SZEROKOŚCI MOTYWU ===== */
/* Nadpisz max-width i padding z motywu crave-theme */
body.woocommerce-checkout .page-content,
body.woocommerce-cart .page-content {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.woocommerce-checkout .woocommerce,
body.woocommerce-cart .woocommerce {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}
body.woocommerce-checkout .entry-content,
body.woocommerce-cart .entry-content,
body.woocommerce-checkout .post-content,
body.woocommerce-cart .post-content,
body.woocommerce-checkout article,
body.woocommerce-cart article {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}
/* Usuń padding nawigacji — checkout sam zarządza padding-top */
body.woocommerce-checkout #main-content,
body.woocommerce-cart #main-content {
  padding-top: 0 !important;
}

/* CRAVE — Checkout zawsze ciemny, pełna szerokość */

/* Dark mode (domyślny) */
body.woocommerce-checkout:not(.light-mode),
body.woocommerce-cart:not(.light-mode),
body.woocommerce-order-received:not(.light-mode) {
  background: #090C09 !important;
  color: #fff !important;
}
body.woocommerce-checkout:not(.light-mode) .site-main,
body.woocommerce-checkout:not(.light-mode) #main-content,
body.woocommerce-checkout:not(.light-mode) main,
body.woocommerce-checkout:not(.light-mode) #primary,
body.woocommerce-cart:not(.light-mode) .site-main,
body.woocommerce-cart:not(.light-mode) #main-content,
body.woocommerce-cart:not(.light-mode) main,
body.woocommerce-cart:not(.light-mode) #primary {
  background: #090C09 !important;
  color: #fff !important;
}

/* Steps bar */
.crave-steps-bar {
  display:flex;align-items:center;justify-content:center;gap:0;
  padding:16px 24px;background:#090C09;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.crave-step{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-family:'Commissioner',Helvetica,sans-serif;}
.crave-step .csn{width:24px;height:24px;border-radius:50%;border:1px solid #444;display:flex;align-items:center;justify-content:center;font-size:10px;color:#444;flex-shrink:0;font-family:'Lexend',sans-serif;}
.crave-step .csl{color:#444;}
.crave-step.is-done .csn{background:#FA008F;border-color:#FA008F;color:#fff;}
.crave-step.is-done .csl{color:#FA008F;}
.crave-step.is-active .csn{border-color:#fff;color:#fff;}
.crave-step.is-active .csl{color:#fff;}
.crave-step-sep{width:40px;height:1px;background:rgba(255,255,255,.09);margin:0 12px;}

/* Layout — pełna szerokość */
.crave-checkout-wrap{
  display:grid !important;
  grid-template-columns:1fr 360px !important;
  gap:0 !important;
  width:100% !important;
  max-width:1300px !important;
  margin:0 auto !important;
  padding:0 32px !important;
  box-sizing:border-box !important;
  align-items:start !important;
}
.crave-checkout-left{
  padding:28px 40px 60px 0 !important;
  border-right:1px solid rgba(255,255,255,.09) !important;
  min-width:0 !important;
}
.crave-checkout-right{
  padding:28px 0 60px 32px !important;
  position:sticky !important;
  top:80px !important;
  min-width:0 !important;
}

/* Sekcje */
.crave-section{margin-bottom:28px;}
.crave-section-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.crave-sec-num{width:28px;height:28px;border-radius:50%;background:#FA008F;color:#fff;font-family:'Lexend',sans-serif;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.crave-sec-title{font-family:'Lexend',sans-serif;font-weight:300;font-size:17px;color:#fff;}
.crave-divider{height:1px;background:rgba(255,255,255,.09);margin:24px 0;}

/* Grid pól */
.crave-grid2{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;}
.crave-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.crave-field.span2{grid-column:span 2 !important;}

/* NIP toggle */
.crave-nip-toggle{
  display:flex;align-items:center;gap:10px;padding:12px 14px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);
  border-radius:8px;cursor:pointer;font-size:12px;color:#A0A0A0;
  grid-column:span 2;font-family:'Commissioner',sans-serif;
}
.crave-nip-toggle input{accent-color:#FA008F;width:14px;height:14px;flex-shrink:0;}

/* WC form-row reset */
.crave-field .form-row{border:none !important;padding:0 !important;margin:0 !important;display:flex !important;flex-direction:column !important;gap:0 !important;width:100% !important;}
.crave-field .form-row .woocommerce-input-wrapper{width:100% !important;}
.crave-field .form-row>label{
  font-size:10px !important;letter-spacing:.15em !important;text-transform:uppercase !important;
  color:#A0A0A0 !important;font-weight:400 !important;font-family:'Commissioner',sans-serif !important;
  margin-bottom:6px !important;display:block !important;
}
.crave-field .form-row>label .required{color:#FA008F !important;}

/* Inputy */
.crave-field .form-row input.input-text,
.crave-field .form-row select,
.crave-field .form-row textarea,
.crave-inp{
  background:rgba(255,255,255,.05) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:8px !important;padding:11px 14px !important;color:#fff !important;
  font-family:'Commissioner',sans-serif !important;font-size:13px !important;
  height:auto !important;width:100% !important;box-sizing:border-box !important;
  transition:border-color .2s !important;box-shadow:none !important;
}
.crave-field .form-row input.input-text:focus,
.crave-field .form-row select:focus,
.crave-inp:focus{border-color:#FA008F !important;outline:none !important;background:rgba(255,255,255,.08) !important;}
.crave-field .form-row input.input-text::placeholder{color:#444 !important;}

/* Select2 */
.select2-container--default .select2-selection--single{background:rgba(255,255,255,.05) !important;border:1px solid rgba(255,255,255,.1) !important;border-radius:8px !important;height:42px !important;}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:#fff !important;line-height:42px !important;padding-left:14px !important;font-family:'Commissioner',sans-serif !important;font-size:13px !important;}
.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:rgba(255,255,255,.3) transparent transparent !important;}
.select2-dropdown{background:#111411 !important;border:1px solid rgba(255,255,255,.09) !important;border-radius:8px !important;z-index:99999 !important;}
.select2-results__option{color:#A0A0A0 !important;font-size:13px !important;padding:9px 14px !important;}
.select2-results__option--highlighted{background:rgba(250,0,143,.12) !important;color:#fff !important;}
.select2-search__field{background:rgba(255,255,255,.07) !important;border:1px solid rgba(255,255,255,.09) !important;color:#fff !important;border-radius:6px !important;}

/* Wysyłka */
.crave-ship-list{display:flex;flex-direction:column;gap:8px;}
.crave-ship-opt{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:12px;border:1px solid rgba(255,255,255,.09);cursor:pointer;transition:all .2s;background:transparent;position:relative;}
.crave-ship-opt:hover{border-color:rgba(250,0,143,.3);}
.crave-ship-opt.crave-sel{border-color:#FA008F;background:rgba(250,0,143,.06);}
.crave-ship-left{display:flex;align-items:center;gap:14px;}
.crave-radio{width:16px;height:16px;border-radius:50%;border:1px solid #555;flex-shrink:0;display:flex;align-items:center;justify-content:center;}
.crave-ship-opt.crave-sel .crave-radio{border-color:#FA008F;}
.crave-radio-dot{width:8px;height:8px;border-radius:50%;background:#FA008F;display:none;}
.crave-ship-opt.crave-sel .crave-radio-dot{display:block;}
.crave-ship-name{font-size:13px;color:#fff;margin-bottom:2px;font-family:'Commissioner',sans-serif;}
.crave-ship-sub{font-size:11px;color:#555;font-family:'Commissioner',sans-serif;}
.crave-ship-price{font-family:'Lexend',sans-serif;font-size:14px;color:#A0A0A0;white-space:nowrap;}
.crave-ship-opt.crave-sel .crave-ship-price{color:#FA008F;}
.crave-ship-free{color:#00C878 !important;}
.crave-inpost-widget{margin-top:10px;padding:14px 16px;border-radius:8px;background:rgba(250,0,143,.04);border:1px dashed rgba(250,0,143,.2);display:none;align-items:center;gap:12px;cursor:pointer;transition:all .2s;}
.crave-inpost-widget.show{display:flex;}
.crave-inpost-widget:hover{background:rgba(250,0,143,.08);border-color:rgba(250,0,143,.3);}
.crave-inpost-icon{width:32px;height:32px;border-radius:6px;background:#FFD100;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.crave-inpost-text{flex:1;}
.crave-inpost-text strong{font-size:13px;color:#fff;font-weight:400;display:block;margin-bottom:2px;}
.crave-inpost-text p{font-size:11px;color:#A0A0A0;margin:0;}
.crave-map-btn{font-size:11px;color:#FA008F;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-family:'Commissioner',sans-serif;}

/* Płatność */
.crave-pay-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;}
.crave-pay-tab{padding:8px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.09);background:transparent;color:#A0A0A0;font-family:'Commissioner',sans-serif;font-size:12px;letter-spacing:.08em;cursor:pointer;transition:all .2s;}
.crave-pay-tab:hover{border-color:rgba(250,0,143,.3);}
.crave-pay-tab.crave-sel{border-color:#FA008F;color:#FA008F;background:rgba(250,0,143,.07);}
#payment{background:transparent !important;border:none !important;border-radius:0 !important;}
#payment .payment_methods{list-style:none !important;padding:0 !important;margin:0 !important;background:transparent !important;}
#payment .payment_methods li{background:transparent !important;border:none !important;padding:0 !important;margin:0 !important;}
#payment .payment_methods li label{display:none !important;}
#payment .payment_methods li input[type="radio"]{display:none !important;}
#payment .payment_box{background:rgba(255,255,255,.04) !important;border:1px solid rgba(255,255,255,.09) !important;border-radius:10px !important;padding:16px !important;margin-top:12px !important;}
#payment .payment_box p{color:#A0A0A0 !important;font-size:13px !important;}
#payment .place-order{display:none !important;}
.woocommerce-billing-fields h3,.woocommerce-shipping-fields h3,.woocommerce-additional-fields h3,#order_review_heading{display:none !important;}
.woocommerce-info{background:rgba(255,255,255,.04) !important;border:none !important;border-left:3px solid #FA008F !important;border-radius:8px !important;color:#A0A0A0 !important;padding:12px 16px !important;margin:0 0 20px !important;font-family:'Commissioner',sans-serif !important;font-size:13px !important;}
.woocommerce-info a{color:#FA008F !important;}
.crave-terms{font-size:11px;color:#555;line-height:1.7;margin-top:12px;font-family:'Commissioner',sans-serif;}
.crave-terms a{color:#FA008F;text-decoration:none;}
#place_order,.crave-submit-btn{width:100% !important;padding:17px !important;border-radius:12px !important;background:linear-gradient(103deg,#FA008F,#9618FF) !important;border:none !important;color:#fff !important;font-family:'Lexend',sans-serif !important;font-weight:300 !important;font-size:14px !important;letter-spacing:.15em !important;text-transform:uppercase !important;cursor:pointer !important;margin-top:20px !important;transition:opacity .2s !important;display:block !important;}
#place_order:hover{opacity:.9 !important;}

/* Order summary */
.crave-order-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:12px;overflow:hidden;}
.crave-order-head{padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:space-between;}
.crave-order-head-title{font-family:'Lexend',sans-serif;font-weight:300;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#A0A0A0;}
.crave-order-count{font-size:11px;color:#555;background:rgba(255,255,255,.07);padding:3px 10px;border-radius:20px;}
.crave-order-item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.09);}
.crave-order-item:last-child{border-bottom:none;}
.crave-item-img{width:48px;height:48px;border-radius:6px;background:linear-gradient(135deg,#1a1a1a,#0d0d0d);border:1px solid rgba(255,255,255,.09);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;}
.crave-item-img img{width:100%;height:100%;object-fit:cover;}
.crave-item-badge{position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;background:#FA008F;color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center;font-family:'Lexend',sans-serif;}
.crave-item-name{font-size:12px;line-height:1.4;color:#fff;margin-bottom:3px;font-family:'Commissioner',sans-serif;}
.crave-item-meta{font-size:10px;color:#444;font-family:'Commissioner',sans-serif;}
.crave-item-price{text-align:right;}
.crave-item-price .orig{font-size:10px;color:#444;text-decoration:line-through;margin-bottom:2px;}
.crave-item-price .curr{font-family:'Lexend',sans-serif;font-size:13px;color:#FA008F;white-space:nowrap;}
.crave-coupon-row{display:flex;gap:8px;padding:12px 20px;border-top:1px solid rgba(255,255,255,.09);}
.crave-coupon-inp{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:9px 12px;color:#fff;font-family:'Commissioner',sans-serif;font-size:12px;}
.crave-coupon-inp::placeholder{color:#444;}
.crave-coupon-inp:focus{border-color:#FA008F;outline:none;}
.crave-coupon-apply{padding:9px 16px;background:transparent;border:1px solid #FA008F;color:#FA008F;border-radius:8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:all .2s;font-family:'Commissioner',sans-serif;}
.crave-coupon-apply:hover{background:#FA008F;color:#fff;}
.crave-totals{padding:16px 20px;border-top:1px solid rgba(255,255,255,.09);}
.crave-total-row{display:flex;justify-content:space-between;font-size:12px;padding:5px 0;color:#A0A0A0;font-family:'Commissioner',sans-serif;}
.crave-total-row .v{color:#fff;}
.crave-total-row.discount .v{color:#00C878;}
.crave-grand{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0 4px;border-top:1px solid rgba(255,255,255,.09);margin-top:8px;}
.crave-grand .gl{font-family:'Lexend',sans-serif;font-weight:300;font-size:15px;color:#fff;}
.crave-grand .gv{font-family:'Lexend',sans-serif;font-size:24px;font-weight:300;background:linear-gradient(103deg,#FA008F,#9618FF);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.crave-vat-note{font-size:10px;color:#444;text-align:right;font-family:'Commissioner',sans-serif;}
.crave-free-progress{margin-top:14px;padding:12px 16px;border-radius:8px;background:rgba(0,200,120,.05);border:1px solid rgba(0,200,120,.15);}
.crave-fp-label{font-size:11px;color:#A0A0A0;margin-bottom:8px;font-family:'Commissioner',sans-serif;}
.crave-fp-label strong{color:#00C878;}
.crave-fp-bar{height:3px;background:rgba(255,255,255,.09);border-radius:3px;overflow:hidden;margin-bottom:6px;}
.crave-fp-fill{height:100%;background:linear-gradient(90deg,#00C878,#00E8A0);border-radius:3px;}
.crave-fp-note{font-size:10px;color:#444;font-family:'Commissioner',sans-serif;}
.crave-fp-note span{color:#00C878;}
.crave-usp-list{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
.crave-usp-item{display:flex;align-items:center;gap:10px;font-size:11px;color:#555;font-family:'Commissioner',sans-serif;}
.crave-usp-dot{width:5px;height:5px;border-radius:50%;background:#FA008F;flex-shrink:0;}
.crave-badge-secure{display:flex;align-items:center;gap:6px;font-size:10px;color:#444;justify-content:center;margin-top:12px;font-family:'Commissioner',sans-serif;}
.crave-secure-dot{width:6px;height:6px;border-radius:50%;background:#00C878;}

/* Potwierdzenie */
.crave-confirm-wrap{max-width:800px;margin:0 auto;padding:40px 24px;color:#fff;}
.crave-confirm-hero{text-align:center;padding:40px 20px 32px;}
.crave-check-circle{width:64px;height:64px;border-radius:50%;background:rgba(250,0,143,.12);border:1px solid rgba(250,0,143,.3);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;}
.crave-confirm-title{font-family:'Lexend',sans-serif;font-weight:200;font-size:28px;color:#fff;margin-bottom:8px;}
.crave-confirm-sub{font-size:14px;color:#A0A0A0;max-width:380px;margin:0 auto 8px;font-family:'Commissioner',sans-serif;line-height:1.6;}
.crave-order-num{font-size:12px;color:#555;letter-spacing:.12em;font-family:'Commissioner',sans-serif;}
.crave-order-num span{color:#FA008F;}
.crave-confirm-grid{display:grid;grid-template-columns:1fr 260px;gap:20px;margin-top:24px;}
.crave-timeline{display:flex;flex-direction:column;}
.crave-tl-item{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.09);}
.crave-tl-item:last-child{border-bottom:none;}
.crave-tl-side{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0;padding-top:2px;}
.crave-tl-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.09);flex-shrink:0;}
.crave-tl-dot.done{background:#FA008F;}
.crave-tl-dot.now{background:#FA008F;box-shadow:0 0 0 3px rgba(250,0,143,.2);}
.crave-tl-line{width:1px;flex:1;background:rgba(255,255,255,.09);margin-top:4px;}
.crave-tl-item:last-child .crave-tl-line{display:none;}
.crave-tl-title{font-size:13px;color:#fff;margin-bottom:2px;font-family:'Commissioner',sans-serif;}
.crave-tl-title.muted{color:#A0A0A0;}
.crave-tl-sub{font-size:11px;color:#555;font-family:'Commissioner',sans-serif;}

/* Responsive */
@media (max-width:960px){
  .crave-checkout-wrap{grid-template-columns:1fr !important;padding:0 16px !important;}
  .crave-checkout-left{padding:24px 0 !important;border-right:none !important;border-bottom:1px solid rgba(255,255,255,.09) !important;}
  .crave-checkout-right{padding:24px 0 60px !important;position:static !important;}
  .crave-confirm-grid{grid-template-columns:1fr !important;}
}
@media (max-width:600px){
  .crave-grid2{grid-template-columns:1fr !important;}
  .crave-field.span2{grid-column:1 !important;}
  .crave-nip-toggle{grid-column:1 !important;}
  .crave-step .csl{display:none;}
}
/* ===== CONSENT CHECKBOXY ===== */
.crave-consent-wrap {
  display: flex; flex-direction: column; gap: 10px; margin-top: 16px;
}
.crave-consent-row {
  display: flex; align-items: flex-start; gap: 12px;
  cursor: pointer; padding: 12px 14px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px; transition: border-color .2s;
  font-family: 'Commissioner', sans-serif;
}
body.woocommerce-checkout.light-mode .crave-consent-row,
body.light-mode .crave-consent-row {
  background: #fff; border-color: rgba(0,0,0,0.1);
}
.crave-consent-row:hover { border-color: rgba(250,0,143,0.3); }
.crave-consent-row.crave-consent-required { border-color: rgba(250,0,143,0.15); }
.crave-consent-row.crave-consent-required:has(input:checked) { border-color: rgba(250,0,143,0.4); }

/* Ukryj natywny checkbox */
.crave-consent-row input[type="checkbox"] {
  position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;
}

/* Custom checkbox */
.crave-consent-check {
  width: 18px; height: 18px; flex-shrink: 0; margin-top: 1px;
  border-radius: 4px; border: 1.5px solid rgba(255,255,255,0.2);
  background: transparent; transition: all .2s; position: relative;
  display: flex; align-items: center; justify-content: center;
}
.crave-consent-row:hover .crave-consent-check { border-color: rgba(250,0,143,0.5); }
.crave-consent-row input:checked ~ .crave-consent-check {
  background: #FA008F; border-color: #FA008F;
}
.crave-consent-row input:checked ~ .crave-consent-check::after {
  content: '';
  display: block;
  width: 5px; height: 9px;
  border: 2px solid #fff;
  border-top: none; border-left: none;
  transform: rotate(42deg) translateY(-1px);
}
/* Required star */
.crave-consent-required-star { color: #FA008F; margin-left: 2px; }

/* Tekst obok checkboxa */
.crave-consent-text {
  font-size: 12px; line-height: 1.6; color: #A0A0A0;
  font-family: 'Commissioner', sans-serif;
}
.crave-consent-text a {
  color: #FA008F; text-decoration: none; transition: opacity .2s;
}
.crave-consent-text a:hover { opacity: 0.8; }
.crave-consent-row.crave-consent-required .crave-consent-text { color: #ccc; }

/* Walidacja — highlight gdy brak */
.crave-consent-row.crave-error { border-color: rgba(226,75,74,0.5) !important; }
.crave-consent-row.crave-error .crave-consent-check { border-color: #E24B4A !important; }

/* Light mode override */
body.woocommerce-checkout .crave-consent-check { border-color: rgba(255,255,255,0.2); }

/* ===== BLIK BOX ===== */
.crave-blik-box {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(250,0,143,0.25);
  border-radius: 12px;
  padding: 24px 20px;
  text-align: center;
  margin-bottom: 4px;
  animation: crave-fade-in .3s ease;
}
@keyframes crave-fade-in { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }

.crave-blik-title {
  font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
  color: #A0A0A0; margin-bottom: 20px;
  font-family: 'Commissioner', sans-serif;
}

.crave-blik-inputs {
  display: flex; gap: 8px; justify-content: center; align-items: center;
  margin-bottom: 14px;
}

.crave-blik-inp {
  width: 48px; height: 56px;
  background: rgba(255,255,255,0.06);
  border: 1.5px solid rgba(255,255,255,0.12);
  border-radius: 10px;
  text-align: center;
  color: #fff;
  font-family: 'Lexend', sans-serif;
  font-size: 22px; font-weight: 300;
  transition: all .2s;
  -webkit-appearance: none;
  appearance: none;
}
.crave-blik-inp:focus {
  border-color: #FA008F;
  background: rgba(250,0,143,0.08);
  outline: none;
  box-shadow: 0 0 0 3px rgba(250,0,143,0.15);
}
.crave-blik-inp:not(:placeholder-shown) {
  border-color: rgba(250,0,143,0.4);
  background: rgba(250,0,143,0.06);
  color: #FA008F;
}

.crave-blik-sep {
  width: 10px; height: 2px;
  background: rgba(255,255,255,0.15);
  border-radius: 2px; flex-shrink: 0;
}

.crave-blik-hint {
  font-size: 11px; color: #555;
  font-family: 'Commissioner', sans-serif;
}
#crave-blik-timer {
  font-family: 'Lexend', sans-serif; font-size: 12px;
  color: #A0A0A0; transition: color .3s;
}

/* ================================================================
   CRAVE CHECKOUT — LIGHT MODE
   Aktywowany przez body.light-mode (przełącznik na stronie)
   ================================================================ */

body.light-mode.woocommerce-checkout,
body.light-mode.woocommerce-cart,
body.light-mode.woocommerce-order-received {
  background: #F0F0F0 !important;
  color: #0A0A0A !important;
}
body.light-mode.woocommerce-checkout .site-main,
body.light-mode.woocommerce-checkout #main-content,
body.light-mode.woocommerce-checkout main,
body.light-mode.woocommerce-checkout #primary,
body.light-mode.woocommerce-checkout #content,
body.light-mode.woocommerce-cart .site-main,
body.light-mode.woocommerce-cart #main-content,
body.light-mode.woocommerce-cart main,
body.light-mode.woocommerce-cart #primary {
  background: #F0F0F0 !important;
  color: #0A0A0A !important;
}

/* Steps bar */
body.light-mode .crave-steps-bar {
  background: #F0F0F0;
  border-bottom-color: rgba(0,0,0,0.08);
}
body.light-mode .crave-step .csn { border-color: #ccc; color: #ccc; }
body.light-mode .crave-step .csl { color: #ccc; }
body.light-mode .crave-step.is-done .csn { background: #C5006E; border-color: #C5006E; color: #fff; }
body.light-mode .crave-step.is-done .csl { color: #C5006E; }
body.light-mode .crave-step.is-active .csn { border-color: #0A0A0A; color: #0A0A0A; }
body.light-mode .crave-step.is-active .csl { color: #0A0A0A; }
body.light-mode .crave-step-sep { background: rgba(0,0,0,0.08); }

/* Layout */
body.light-mode .crave-checkout-left { border-right-color: rgba(0,0,0,0.08) !important; }
body.light-mode .crave-divider { background: rgba(0,0,0,0.08); }

/* Section numbers */
body.light-mode .crave-sec-num { background: #C5006E; }
body.light-mode .crave-sec-title { color: #0A0A0A; }

/* Form fields */
body.light-mode .crave-field .form-row > label { color: #666 !important; }
body.light-mode .crave-field .form-row input.input-text,
body.light-mode .crave-field .form-row select,
body.light-mode .crave-field .form-row textarea,
body.light-mode .crave-inp {
  background: #fff !important;
  border-color: rgba(0,0,0,0.12) !important;
  color: #0A0A0A !important;
}
body.light-mode .crave-field .form-row input.input-text:focus,
body.light-mode .crave-field .form-row select:focus,
body.light-mode .crave-inp:focus {
  border-color: #C5006E !important;
  background: #fff !important;
}
body.light-mode .crave-field .form-row input.input-text::placeholder { color: #bbb !important; }

/* Select2 light */
body.light-mode .select2-container--default .select2-selection--single {
  background: #fff !important;
  border-color: rgba(0,0,0,0.12) !important;
}
body.light-mode .select2-container--default .select2-selection--single .select2-selection__rendered { color: #0A0A0A !important; }
body.light-mode .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: rgba(0,0,0,0.3) transparent transparent !important; }
body.light-mode .select2-dropdown { background: #fff !important; border-color: rgba(0,0,0,0.1) !important; }
body.light-mode .select2-results__option { color: #4A4A4A !important; }
body.light-mode .select2-results__option--highlighted { background: rgba(197,0,110,0.08) !important; color: #0A0A0A !important; }

/* NIP toggle */
body.light-mode .crave-nip-toggle {
  background: #fff;
  border-color: rgba(0,0,0,0.1);
  color: #666;
}

/* Wysyłka */
body.light-mode .crave-ship-opt {
  background: #fff;
  border-color: rgba(0,0,0,0.1);
}
body.light-mode .crave-ship-opt:hover { border-color: rgba(197,0,110,0.3); }
body.light-mode .crave-ship-opt.crave-sel { border-color: #C5006E; background: rgba(197,0,110,0.04); }
body.light-mode .crave-ship-name { color: #0A0A0A; }
body.light-mode .crave-ship-sub { color: #888; }
body.light-mode .crave-ship-opt.crave-sel .crave-ship-price { color: #C5006E; }
body.light-mode .crave-radio { border-color: #ccc; }
body.light-mode .crave-ship-opt.crave-sel .crave-radio { border-color: #C5006E; }
body.light-mode .crave-radio-dot { background: #C5006E; }
body.light-mode .crave-inpost-widget {
  background: rgba(197,0,110,0.04);
  border-color: rgba(197,0,110,0.2);
}
body.light-mode .crave-inpost-text strong { color: #0A0A0A; }
body.light-mode .crave-inpost-text p { color: #666; }
body.light-mode .crave-map-btn { color: #C5006E; }

/* Płatność */
body.light-mode .crave-pay-tab {
  background: #fff;
  border-color: rgba(0,0,0,0.1);
  color: #666;
}
body.light-mode .crave-pay-tab:hover { border-color: rgba(197,0,110,0.3); }
body.light-mode .crave-pay-tab.crave-sel { border-color: #C5006E; color: #C5006E; background: rgba(197,0,110,0.05); }
body.light-mode #payment .payment_box { background: #F8F7F5 !important; border-color: rgba(0,0,0,0.08) !important; }
body.light-mode #payment .payment_box p { color: #666 !important; }
body.light-mode .woocommerce-info {
  background: rgba(0,0,0,0.03) !important;
  border-left-color: #C5006E !important;
  color: #666 !important;
}
body.light-mode .woocommerce-info a { color: #C5006E !important; }

/* BLIK box */
body.light-mode .crave-blik-box {
  background: #fff;
  border-color: rgba(197,0,110,0.2);
}
body.light-mode .crave-blik-title { color: #888; }
body.light-mode .crave-blik-inp {
  background: #F8F7F5;
  border-color: rgba(0,0,0,0.1);
  color: #0A0A0A;
}
body.light-mode .crave-blik-inp:focus {
  border-color: #C5006E;
  background: rgba(197,0,110,0.04);
  box-shadow: 0 0 0 3px rgba(197,0,110,0.1);
}
body.light-mode .crave-blik-inp:not(:placeholder-shown) {
  border-color: rgba(197,0,110,0.35);
  background: rgba(197,0,110,0.04);
  color: #C5006E;
}
body.light-mode .crave-blik-sep { background: rgba(0,0,0,0.1); }
body.light-mode .crave-blik-hint { color: #aaa; }
body.light-mode #crave-blik-timer { color: #888; }

/* Konsent checkboxy */
body.light-mode .crave-consent-row {
  background: #fff;
  border-color: rgba(0,0,0,0.08);
  color: #666;
}
body.light-mode .crave-consent-row:hover { border-color: rgba(197,0,110,0.25); }
body.light-mode .crave-consent-row.crave-consent-required { border-color: rgba(197,0,110,0.12); }
body.light-mode .crave-consent-row.crave-consent-required .crave-consent-text { color: #1a1a1a; }
body.light-mode .crave-consent-check { border-color: rgba(0,0,0,0.15); }
body.light-mode .crave-consent-row input:checked ~ .crave-consent-check { background: #C5006E; border-color: #C5006E; }
body.light-mode .crave-consent-text { color: #1a1a1a; }
body.light-mode .crave-consent-text a { color: #C5006E; }
body.light-mode .crave-consent-required-star { color: #C5006E; }
body.light-mode .crave-terms a { color: #C5006E; }

/* Submit */
body.light-mode #place_order,
body.light-mode .crave-submit-btn {
  background: linear-gradient(103deg, #C5006E, #7B10C5) !important;
}

/* Order summary */
body.light-mode .crave-order-card {
  background: #fff;
  border-color: rgba(0,0,0,0.08);
}
body.light-mode .crave-order-head { border-bottom-color: rgba(0,0,0,0.08); }
body.light-mode .crave-order-head-title { color: #888; }
body.light-mode .crave-order-count { color: #aaa; background: #F3F2F0; }
body.light-mode .crave-order-item { border-bottom-color: rgba(0,0,0,0.06); }
body.light-mode .crave-item-img { background: #F3F2F0; border-color: rgba(0,0,0,0.06); }
body.light-mode .crave-item-name { color: #0A0A0A; }
body.light-mode .crave-item-meta { color: #aaa; }
body.light-mode .crave-item-price .orig { color: #bbb; }
body.light-mode .crave-item-price .curr { color: #C5006E; }
body.light-mode .crave-item-badge { background: #C5006E; }
body.light-mode .crave-coupon-row { border-top-color: rgba(0,0,0,0.06); }
body.light-mode .crave-coupon-inp {
  background: #F3F2F0;
  border-color: rgba(0,0,0,0.08);
  color: #0A0A0A;
}
body.light-mode .crave-coupon-apply { border-color: #C5006E; color: #C5006E; }
body.light-mode .crave-coupon-apply:hover { background: #C5006E; color: #fff; }
body.light-mode .crave-totals { border-top-color: rgba(0,0,0,0.06); }
body.light-mode .crave-total-row { color: #888; }
body.light-mode .crave-total-row .v { color: #0A0A0A; }
body.light-mode .crave-grand { border-top-color: rgba(0,0,0,0.08); }
body.light-mode .crave-grand .gl { color: #0A0A0A; }
body.light-mode .crave-grand .gv {
  background: linear-gradient(103deg, #C5006E, #7B10C5);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
body.light-mode .crave-vat-note { color: #bbb; }

/* Free shipping progress */
body.light-mode .crave-free-progress {
  background: rgba(0,160,80,0.04);
  border-color: rgba(0,160,80,0.15);
}
body.light-mode .crave-fp-label { color: #666; }
body.light-mode .crave-fp-bar { background: rgba(0,0,0,0.08); }
body.light-mode .crave-fp-note { color: #aaa; }

/* USP */
body.light-mode .crave-usp-item { color: #aaa; }
body.light-mode .crave-usp-dot { background: #C5006E; }
body.light-mode .crave-badge-secure { color: #bbb; }

/* Potwierdzenie zamówienia */
body.light-mode .crave-confirm-wrap { color: #0A0A0A; }
body.light-mode .crave-check-circle {
  background: rgba(197,0,110,0.08);
  border-color: rgba(197,0,110,0.25);
}
body.light-mode .crave-confirm-title { color: #0A0A0A; }
body.light-mode .crave-confirm-sub { color: #666; }
body.light-mode .crave-order-num { color: #aaa; }
body.light-mode .crave-order-num span { color: #C5006E; }
body.light-mode .crave-tl-item { border-bottom-color: rgba(0,0,0,0.07); }
body.light-mode .crave-tl-dot { background: rgba(0,0,0,0.1); }
body.light-mode .crave-tl-dot.done { background: #C5006E; }
body.light-mode .crave-tl-dot.now { background: #C5006E; box-shadow: 0 0 0 3px rgba(197,0,110,0.15); }
body.light-mode .crave-tl-line { background: rgba(0,0,0,0.08); }
body.light-mode .crave-tl-title { color: #0A0A0A; }
body.light-mode .crave-tl-title.muted { color: #888; }
body.light-mode .crave-tl-sub { color: #aaa; }

/* WC error messages light */
body.light-mode .woocommerce-error {
  background: rgba(226,75,74,0.05) !important;
  border-left-color: #E24B4A !important;
  color: #A32D2D !important;
}

/* ===== LISTA METOD PŁATNOŚCI — jak wysyłka, z logotypami ===== */

/* Ukryj WC #payment visual — zostawiamy tylko ukryte pola */
#payment .wc_payment_methods { display: none !important; }
#payment .payment_box { display: none !important; }
#payment .place-order { display: none !important; }
#payment::before { display: none !important; }

.crave-pay-list { display: flex; flex-direction: column; gap: 8px; }

.crave-pay-opt {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 18px; border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.09);
  cursor: pointer; transition: all .2s; background: transparent; position: relative;
}
.crave-pay-opt:hover { border-color: rgba(250,0,143,0.3); }
.crave-pay-opt.crave-sel { border-color: #FA008F; background: rgba(250,0,143,0.06); }

.crave-pay-left { display: flex; align-items: center; gap: 14px; flex: 1; }

.crave-pay-info-wrap { display: flex; align-items: center; gap: 14px; flex: 1; }

/* Logotyp metody */
.crave-pay-logo { display: flex; align-items: center; flex-shrink: 0; }
.crave-pay-logo img {
  height: 24px; width: auto; max-width: 80px;
  object-fit: contain; display: block;
  filter: none; border-radius: 4px;
}
/* Przy wyborze list banków — pokaż tylko główne logo */
.crave-pay-opt[data-gw="payulistbanks"] .crave-pay-logo img:not(:first-child) { display: none; }

.crave-pay-name { font-size: 13px; color: #fff; margin-bottom: 2px; font-family: 'Commissioner', sans-serif; }
.crave-pay-sub  { font-size: 11px; color: #555; font-family: 'Commissioner', sans-serif; }
.crave-pay-opt.crave-sel .crave-pay-name { color: #fff; }

/* Light mode */
body.light-mode .crave-pay-opt { background: #fff; border-color: rgba(0,0,0,0.1); }
body.light-mode .crave-pay-opt:hover { border-color: rgba(197,0,110,0.3); }
body.light-mode .crave-pay-opt.crave-sel { border-color: #C5006E; background: rgba(197,0,110,0.04); }
body.light-mode .crave-pay-name { color: #0A0A0A; }
body.light-mode .crave-pay-sub  { color: #888; }
body.light-mode .crave-pay-opt.crave-sel .crave-radio { border-color: #C5006E; }
body.light-mode .crave-pay-opt.crave-sel .crave-radio-dot { background: #C5006E; }

/* Reuse crave-radio z wysyłki */
.crave-pay-opt .crave-radio { border-color: #555; }
.crave-pay-opt.crave-sel .crave-radio { border-color: #FA008F; }
.crave-pay-opt .crave-radio-dot { background: #FA008F; }

/* Edytuj koszyk link */
.crave-edit-cart {
  font-size: 10px; letter-spacing: .1em; text-transform: uppercase;
  color: #FA008F; text-decoration: none;
  font-family: 'Commissioner', sans-serif;
  opacity: 0.7; transition: opacity .2s;
}
.crave-edit-cart:hover { opacity: 1; }
body.light-mode .crave-edit-cart { color: #C5006E; }

/* ===== ADRES DOSTAWY — nagłówek i wyszarzenie pól gdy "taki sam" ===== */
#crave-shipping-header {
  grid-column: span 2;
  padding-top: 4px;
}
#crave-shipping-header .crave-sec-title {
  font-size: 13px !important;
  color: #A0A0A0 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-family: 'Lexend', sans-serif;
}
body.light-mode #crave-shipping-header .crave-sec-title { color: #888 !important; }

/* Wyszarzenie pól gdy "taki sam jak rozliczeniowy" */
#crave-shipping-fields.crave-fields-locked .form-row input.input-text,
#crave-shipping-fields.crave-fields-locked .form-row select,
#crave-shipping-fields.crave-fields-locked .crave-inp {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  background: rgba(255,255,255,0.02) !important;
  border-color: rgba(255,255,255,0.05) !important;
  user-select: none !important;
}
body.light-mode #crave-shipping-fields.crave-fields-locked .form-row input.input-text,
body.light-mode #crave-shipping-fields.crave-fields-locked .crave-inp {
  opacity: 0.45 !important;
  background: #f5f5f5 !important;
  border-color: rgba(0,0,0,0.05) !important;
}
#crave-shipping-fields.crave-fields-locked label { opacity: 0.45 !important; }

/* Select2 locked */
#crave-shipping-fields.crave-fields-locked .select2-container {
  opacity: 0.45 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
}

/* ===== FORMULARZ DOSTAWY — ujednolicony styl etykiet i inputów ===== */

/* Etykiety w formularz dostawy (nasze własne spany + WC form-row labels) */
#crave-shipping-fields .crave-label,
#crave-shipping-fields .form-row > label {
  font-size: 10px !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: #A0A0A0 !important;
  font-weight: 400 !important;
  font-family: 'Commissioner', sans-serif !important;
  margin-bottom: 6px !important;
  display: block !important;
}
#crave-shipping-fields .form-row > label .required { color: #FA008F !important; }

/* Nasze własne inputy (shipping_first_name, shipping_email itd.) */
#crave-shipping-fields input.crave-inp,
#crave-shipping-fields input[type="text"].input-text,
#crave-shipping-fields input[type="email"].input-text,
#crave-shipping-fields input[type="tel"].input-text {
  font-size: 13px !important;
  font-family: 'Commissioner', sans-serif !important;
  padding: 11px 14px !important;
  border-radius: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Light mode */
body.light-mode #crave-shipping-fields .crave-label,
body.light-mode #crave-shipping-fields .form-row > label {
  color: #666 !important;
}

/* Select2 w formularzu dostawy — ujednolicony rozmiar */
#crave-shipping-fields .select2-container--default .select2-selection--single .select2-selection__rendered {
  font-size: 13px !important;
  font-family: 'Commissioner', sans-serif !important;
}
#crave-shipping-fields .select2-container--default .select2-selection--single {
  height: 42px !important;
}

/* ===== SEPARATOR przed formularzem adresu dostawy ===== */
#crave-shipping-address-wrap {
  margin-top: 0 !important;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.09);
}
body.light-mode #crave-shipping-address-wrap {
  border-top-color: rgba(0,0,0,0.08);
}

/* Checkbox "taki sam" — trochę więcej oddechu */
#crave-same-cb-wrap {
  margin-bottom: 16px !important;
}

/* Ukryj komunikat kuponu nad formularzem checkout */
.woocommerce-info.woocommerce-form-coupon-toggle,
.checkout-coupon-toggle,
.wc-checkout-coupon {
  display: none !important;
}

/* Komunikat kuponu */
.crave-coupon-msg {
  font-size: 11px;
  font-family: 'Commissioner', sans-serif;
  padding: 0 4px;
  margin-top: 4px;
  transition: opacity .3s;
}
.crave-coupon-err { color: #E24B4A; }
.crave-coupon-ok  { color: #00C878; }
body.light-mode .crave-coupon-err { color: #C0392B; }
body.light-mode .crave-coupon-ok  { color: #1a8a5a; }
