/* ============================================================
   StremioTV Checkout — Navy/Teal palette
   ============================================================ */

body.woocommerce-checkout { background: #f5f7ff !important; }

.stv-checkout-wrap {
  --ck-bg:      #f5f7ff;
  --ck-surface: #ffffff;
  --ck-bg2:     #eceffe;
  --ck-border:  #dde2f0;
  --ck-navy:    #0a1535;
  --ck-navy2:   #1b2c5e;
  --ck-teal:    #0ea5e9;
  --ck-teal-d:  #0284c7;
  --ck-green:   #16a34a;
  --ck-green-l: #f0fdf4;
  --ck-green-b: #bbf7d0;
  --ck-text:    #0a1535;
  --ck-text2:   #4e5b7b;
  --ck-text3:   #8b95b3;
  --ck-r:       14px;
  --ck-r-sm:    8px;
  --ck-tr:      .2s cubic-bezier(.4,0,.2,1);
}
.stv-checkout-wrap {
  max-width: 1120px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 4rem;
  font-family: 'Outfit', sans-serif;
  color: var(--ck-text);
  -webkit-font-smoothing: antialiased;
}

/* STEPS */
.ck-steps { display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:500;color:var(--ck-text3);margin-bottom:1.75rem;flex-wrap:wrap; }
.ck-step { display:flex;align-items:center;gap:.3rem; }
.ck-step.active { color:var(--ck-teal-d);font-weight:700; }
.ck-step.done   { color:var(--ck-green); }
.ck-step-dot { width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5; }
.ck-step.active .ck-step-dot, .ck-step.done .ck-step-dot { opacity:1; }
.ck-step-sep { color:var(--ck-border);margin:0 2px;font-size:1rem; }

/* GRID */
.ck-grid { display:grid;grid-template-columns:1fr 420px;gap:2rem;align-items:start; }

/* CARD */
.ck-card { background:var(--ck-surface);border:1px solid var(--ck-border);border-radius:var(--ck-r);overflow:hidden;box-shadow:0 2px 16px rgba(10,21,53,.07);margin-bottom:1.25rem;animation:ckFadeUp .4s ease both; }
.ck-card:nth-child(2){animation-delay:.08s}
.ck-card:nth-child(3){animation-delay:.16s}
.ck-card:last-child { margin-bottom:0; }
@keyframes ckFadeUp { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }

.ck-card-header { display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--ck-border);background:#fafbff; }
.ck-card-num { width:28px;height:28px;border-radius:50%;background:var(--ck-navy);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.ck-card-title { font-size:1.05rem!important;font-weight:700!important;color:var(--ck-navy)!important;margin:0!important;font-family:'Outfit',sans-serif!important; }
.ck-card-body { padding:1.5rem; }

/* RETURNING */
.ck-returning { background:rgba(14,165,233,.08);border:1px solid rgba(14,165,233,.2);border-radius:var(--ck-r-sm);padding:.85rem 1.1rem;font-size:.88rem;color:var(--ck-teal-d);margin-bottom:1.25rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap; }
.ck-returning a { color:inherit;font-weight:700; }

/* FORM FIELDS */
.ck-card-body .form-row { margin-bottom:1rem!important;clear:none!important; }
.ck-card-body .form-row:last-child { margin-bottom:0!important; }
.ck-card-body .form-row label { display:block!important;font-size:.78rem!important;font-weight:600!important;color:var(--ck-text2)!important;letter-spacing:.04em!important;text-transform:uppercase!important;margin-bottom:.38rem!important;font-family:'Outfit',sans-serif!important; }
.ck-card-body .form-row label .required { color:var(--ck-teal-d)!important; }
.ck-card-body input.input-text,
.ck-card-body input[type="text"],
.ck-card-body input[type="email"],
.ck-card-body input[type="tel"],
.ck-card-body input[type="password"],
.ck-card-body select,
.ck-card-body textarea {
  width:100%!important;padding:.72rem .95rem!important;
  border:1.5px solid var(--ck-border)!important;border-radius:var(--ck-r-sm)!important;
  background:var(--ck-surface)!important;color:var(--ck-text)!important;
  font-family:'Outfit',sans-serif!important;font-size:.95rem!important;
  outline:none!important;transition:border-color var(--ck-tr),box-shadow var(--ck-tr)!important;
  box-shadow:none!important;-webkit-appearance:none!important;appearance:none!important;
}
.ck-card-body input.input-text::placeholder { color:#b0b8cc!important; }
.ck-card-body input.input-text:focus,
.ck-card-body input[type="text"]:focus,
.ck-card-body input[type="email"]:focus,
.ck-card-body input[type="tel"]:focus,
.ck-card-body select:focus,
.ck-card-body textarea:focus {
  border-color:var(--ck-teal)!important;
  box-shadow:0 0 0 3px rgba(14,165,233,.12)!important;
}
.ck-card-body select {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b95b3' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right .9rem center!important;padding-right:2.5rem!important;
}
.ck-card-body .form-row-first,.ck-card-body .form-row-last { width:calc(50% - .45rem)!important;float:left!important; }
.ck-card-body .form-row-first { margin-right:.9rem!important; }
.ck-card-body .form-row-wide { width:100%!important;clear:both!important;float:none!important; }
.ck-card-body::after { content:'';display:table;clear:both; }

/* DELIVERY BANNER */
.ck-delivery { display:flex;align-items:flex-start;gap:1rem;background:linear-gradient(135deg,#f0fdf4 0%,#f0f7ff 100%);border:1.5px solid var(--ck-green-b);border-radius:var(--ck-r-sm);padding:1.1rem 1.2rem;margin-top:1.25rem; }
.ck-delivery-icon { width:46px;height:46px;border-radius:50%;background:#fff;border:1.5px solid var(--ck-green-b);display:flex;align-items:center;justify-content:center;color:var(--ck-green);flex-shrink:0; }
.ck-delivery-text { flex:1; }
.ck-delivery-text strong { font-size:.92rem;color:var(--ck-green);display:block;margin-bottom:.25rem; }
.ck-delivery-text span { font-size:.8rem;color:var(--ck-text2);line-height:1.5; }
.ck-delivery-free { background:var(--ck-green);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:.25rem .65rem;border-radius:99px;flex-shrink:0; }

/* PAYMENT NOTE */
.ck-pay-note { display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--ck-text2);margin-bottom:1rem;background:var(--ck-bg2);padding:.65rem .85rem;border-radius:var(--ck-r-sm);border:1px solid var(--ck-border); }
.ck-pay-note svg { color:var(--ck-green);flex-shrink:0; }

/* PAYMENT METHODS */
#payment,.woocommerce-checkout-payment { background:none!important;padding:0!important;border:none!important;border-radius:0!important; }
.wc_payment_methods { list-style:none!important;padding:0!important;margin:0 0 1.25rem!important;display:flex!important;flex-direction:column!important;gap:.6rem!important; }
.wc_payment_methods li.payment_method { border:1.5px solid var(--ck-border)!important;border-radius:var(--ck-r-sm)!important;overflow:hidden!important;background:var(--ck-surface)!important;transition:border-color var(--ck-tr),background var(--ck-tr)!important; }
.wc_payment_methods li.payment_method:has(input:checked),.wc_payment_methods li.payment_method.selected { border-color:var(--ck-teal)!important;background:rgba(14,165,233,.05)!important; }
.wc_payment_methods li.payment_method > label,.wc_payment_methods li.payment_method label.radio { display:flex!important;align-items:center!important;gap:.85rem!important;padding:.9rem 1.1rem!important;cursor:pointer!important;font-weight:600!important;font-size:.92rem!important;color:var(--ck-text)!important;margin:0!important;background:transparent!important;width:100%!important; }
.wc_payment_methods li.payment_method input[type="radio"] { width:17px!important;height:17px!important;accent-color:var(--ck-teal)!important;flex-shrink:0!important;margin:0!important; }
.wc_payment_methods li img,.wc_payment_methods .payment_box img,.payment_method_nowpayments img { max-width:80px!important;max-height:24px!important;width:auto!important;height:auto!important;object-fit:contain!important;vertical-align:middle!important; }
.payment_box { padding:.75rem 1.1rem .9rem!important;background:var(--ck-bg2)!important;border-top:1px solid var(--ck-border)!important;font-size:.85rem!important;color:var(--ck-text2)!important;overflow:hidden!important;box-sizing:border-box!important; }

/* PLACE ORDER BUTTON */
#place_order,button#place_order,input#place_order,
.woocommerce-checkout #payment #place_order,
form.woocommerce-checkout #place_order,
.place-order #place_order {
  display:flex!important;align-items:center!important;justify-content:center!important;gap:.55rem!important;
  width:100%!important;min-height:52px!important;padding:1rem 1.5rem!important;
  background:var(--ck-navy)!important;color:#fff!important;
  font-family:'Outfit',sans-serif!important;font-size:1.05rem!important;font-weight:700!important;
  border:none!important;border-radius:var(--ck-r-sm)!important;cursor:pointer!important;
  text-align:center!important;letter-spacing:.01em!important;
  box-shadow:0 4px 18px rgba(10,21,53,.28)!important;
  transition:background var(--ck-tr),transform var(--ck-tr),box-shadow var(--ck-tr)!important;
  visibility:visible!important;opacity:1!important;position:static!important;
  z-index:10!important;pointer-events:auto!important;clip:auto!important;clip-path:none!important;
  overflow:visible!important;margin:0!important;height:auto!important;max-height:none!important;
}
#place_order:hover,button#place_order:hover { background:var(--ck-navy2)!important;transform:translateY(-1px)!important;box-shadow:0 6px 22px rgba(10,21,53,.38)!important; }
#payment .place-order,.woocommerce-checkout #payment .place-order { display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;overflow:visible!important;position:static!important;padding:0!important;background:none!important;border:none!important;margin:0!important; }

/* RIGHT COLUMN */
.ck-right { position:sticky;top:calc(var(--nav-h,68px) + 1rem);animation:ckFadeUp .4s .24s ease both; }

/* COUPON */
.ck-coupon { margin-bottom:1rem; }
.ck-coupon .checkout_coupon,.ck-coupon form { display:flex!important;gap:.55rem!important;width:100%!important;margin:0!important;border:none!important;padding:0!important;background:none!important;box-shadow:none!important; }
.ck-coupon input[name="coupon_code"] { flex:1!important;padding:.68rem .9rem!important;border:1.5px solid var(--ck-border)!important;border-radius:var(--ck-r-sm)!important;font-family:'Outfit',sans-serif!important;font-size:.9rem!important;outline:none!important;color:var(--ck-text)!important;background:var(--ck-surface)!important;transition:border-color var(--ck-tr)!important; }
.ck-coupon input[name="coupon_code"]:focus { border-color:var(--ck-teal)!important; }
.ck-coupon button[name="apply_coupon"] { padding:.68rem 1.1rem!important;border:1.5px solid var(--ck-border)!important;border-radius:var(--ck-r-sm)!important;background:var(--ck-surface)!important;color:var(--ck-text)!important;font-family:'Outfit',sans-serif!important;font-size:.88rem!important;font-weight:600!important;cursor:pointer!important;white-space:nowrap!important;transition:background var(--ck-tr)!important; }
.ck-coupon button[name="apply_coupon"]:hover { background:var(--ck-bg2)!important; }

/* SUMMARY CARD */
.ck-summary-card { margin-bottom:0!important; }
.ck-summary-header { padding:1.1rem 1.5rem .85rem;border-bottom:1px solid var(--ck-border);background:#fafbff; }

/* CART ITEMS */
.ck-items { display:flex;flex-direction:column; }
.ck-item { display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--ck-border); }
.ck-item:last-child { border-bottom:none; }
.ck-item-icon { position:relative;width:54px;height:54px;min-width:54px;border-radius:10px;background:var(--ck-bg2);border:1px solid var(--ck-border);display:flex;align-items:center;justify-content:center;color:var(--ck-text3);overflow:hidden;flex-shrink:0; }
.ck-item-icon img { width:100%;height:100%;object-fit:cover; }
.ck-item-qty-badge { position:absolute;top:-5px;right:-5px;width:18px;height:18px;border-radius:50%;background:var(--ck-navy);color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center; }
.ck-item-info { flex:1;min-width:0; }
.ck-item-name { font-size:.9rem;font-weight:600;line-height:1.3;color:var(--ck-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.ck-item-sub { font-size:.75rem;color:var(--ck-text3);margin-top:.15rem; }
.ck-remove-btn { display:inline-flex;align-items:center;gap:.25rem;margin-top:.3rem;font-size:.73rem;color:#c0392b;text-decoration:none;font-weight:500;opacity:.65;transition:opacity var(--ck-tr);background:none;border:none;cursor:pointer;padding:0;font-family:'Outfit',sans-serif; }
.ck-remove-btn:hover { opacity:1; }
.ck-item-price { font-size:.95rem;font-weight:700;color:var(--ck-text);white-space:nowrap;flex-shrink:0; }

/* TOTALS */
.ck-totals { padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.5rem;border-top:1px solid var(--ck-border); }
.ck-total-row { display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--ck-text2); }
.ck-free { color:var(--ck-green); }
.ck-total-grand { display:flex;justify-content:space-between;align-items:center;font-size:1.15rem;font-weight:800;color:var(--ck-text);margin-top:.4rem;padding-top:.7rem;border-top:1.5px solid var(--ck-border); }

/* WHATSAPP */
.ck-wa-wrap { padding:0 1.5rem 1.25rem; }
.ck-wa-btn { display:flex;align-items:center;justify-content:center;gap:.55rem;width:100%;padding:.82rem;border-radius:var(--ck-r-sm);background:#fff;border:2px solid #25d366;color:#128c7e;font-family:'Outfit',sans-serif;font-size:.92rem;font-weight:700;text-decoration:none;margin-top:.75rem;transition:background var(--ck-tr),color var(--ck-tr),transform var(--ck-tr),box-shadow var(--ck-tr); }
.ck-wa-btn:hover { background:#25d366;color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px rgba(37,211,102,.35); }
.ck-wa-note { text-align:center;font-size:.72rem;color:var(--ck-text3);margin-top:.4rem; }

/* TRUST */
.ck-trust-row { display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem .85rem;padding:.7rem 1.5rem 1.1rem;font-size:.73rem;color:var(--ck-text3);border-top:1px solid var(--ck-border); }
.ck-trust-item { display:flex;align-items:center;gap:.3rem;white-space:nowrap; }
.ck-trust-item svg { flex-shrink:0;color:var(--ck-green); }

/* FOOTER LINKS */
.ck-footer-links { display:flex;justify-content:center;flex-wrap:wrap;gap:.3rem .75rem;margin-top:.85rem; }
.ck-footer-links a { font-size:.73rem;color:var(--ck-text3);text-decoration:none; }
.ck-footer-links a:hover { color:var(--ck-teal-d); }

/* WC NOTICES */
.woocommerce-error,.woocommerce-message,.woocommerce-info { border-radius:var(--ck-r-sm)!important;margin-bottom:1.25rem!important; }

/* RESPONSIVE */
@media(max-width:880px) {
  .ck-grid { grid-template-columns:1fr;gap:1.25rem; }
  .ck-right { position:static;order:-1; }
}
@media(max-width:560px) {
  .stv-checkout-wrap { padding:1.25rem 1rem 3rem; }
  .ck-card-body { padding:1.1rem; }
  .ck-card-header { padding:1rem 1.1rem; }
  .ck-card-body .form-row-first,.ck-card-body .form-row-last { width:100%!important;float:none!important;margin-right:0!important; }
  .ck-item { padding:.85rem 1rem; }
  .ck-totals { padding:.85rem 1rem; }
  .ck-wa-wrap { padding:0 1rem 1rem; }
  .ck-trust-row { padding:.6rem 1rem .9rem; }
}

/* ── Email delivery note under email field ── */
.ck-card-body .form-row .description,
.ck-card-body .form-row p.description {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .75rem;
  color: var(--ck-green);
  background: var(--ck-green-l);
  border: 1px solid var(--ck-green-b);
  border-radius: 6px;
  padding: .4rem .75rem;
  margin-top: .45rem;
  font-weight: 500;
  line-height: 1.4;
}
.ck-card-body .form-row .description::before {
  content: '✓';
  font-weight: 800;
  flex-shrink: 0;
}

/* ── Country field label tweak ── */
.ck-card-body #billing_country_field label::after {
  content: ' (optional)';
  font-weight: 400;
  font-size: .7rem;
  color: var(--ck-text3);
  text-transform: none;
  letter-spacing: 0;
}

/* ── Remove shipping section entirely ── */
.woocommerce-shipping-fields,
.ship-to-different-address,
#ship-to-different-address,
.shipping_address { display: none !important; }
