/* Infrastructure — © 2026 Πασχάλης Κυρανούδης. Δημιουργός και δικαιούχος (ν. 2121/1993, άρθρα 6, 10).
 *
 * viberry.me — cart + checkout 2 βήματα (Επιλογή B, 19 Οκτ. 2026). Φορτώνει μετά το vb-modern.css, μόνο σε καλάθι/checkout (vb-checkout.php).
 * Μόνο εμφάνιση· για επαναφορά σβήνεται το vb-checkout.php. */

/* Το παλιό «NEED HELP WITH YOUR PAYMENT?» (οδηγίες για το παλιό PayPal Standard με στιγμιότυπα) είναι πλέον λάθος περιεχόμενο: κρύβεται.
   Δεν ανήκει σε κανένα βήμα (βλ. jcmc_checkout_steps), άρα θα έμενε ορατό πάνω από τη φόρμα. */
#payment_help { display: none !important; }

/* ---- προτροπή δωρεάν αποστολής ---- */
.vb-freeship { margin: 14px 0; padding: 12px 14px; border-radius: 12px; background: #eef7f2; border: 1px solid #b7dcc8; }
.vb-freeship-text { font: 600 13px/1.3 Inter, system-ui, sans-serif; color: #14583b; }
.vb-freeship-bar { height: 8px; margin-top: 8px; border-radius: 6px; background: #cfe6da; overflow: hidden; }
.vb-freeship-bar span { display: block; height: 100%; background: #1c7c54; }

/* ---- σύνοψη πριν την πληρωμή ---- */
.vb-review { margin: 0 0 18px; border: 1px solid #c4c5cf; border-radius: 12px; overflow: hidden; background: #fff; }
.vb-review-row { display: flex; align-items: flex-start; gap: 12px; padding: 12px 14px; border-bottom: 1px solid #e3e3ea; font: 500 14px/1.35 Inter, system-ui, sans-serif; color: #1d1e24; }
.vb-review-row:last-child { border-bottom: 0; }
.vb-review-title { flex: none; width: 74px; font-size: 12px; color: #5b5e6b; padding-top: 1px; }
.vb-review-text { flex-grow: 1; min-width: 0; overflow-wrap: anywhere; }
.vb-change { flex: none; border: 0; background: transparent; padding: 4px 0; font: 600 13px Inter, system-ui, sans-serif; color: #b01a45; text-decoration: underline; cursor: pointer; }
.vb-change:focus-visible { outline: 2px solid #b01a45; outline-offset: 2px; }

/* ---- σταθερή μπάρα κινητού: σύνολο + κουμπιά ---- */
.vb-bar-total { display: none; }
@media (max-width: 767px) {
  .jcmc-buttons { position: sticky; bottom: 0; z-index: 40; display: flex; align-items: center; gap: 10px; box-sizing: border-box;
    margin: 18px -15px 0; padding: 10px 15px 14px; background: #fff; border-top: 1px solid #d3d4dc; box-shadow: 0 -6px 18px rgba(20, 20, 40, .08); }
  .jcmc-buttons:before, .jcmc-buttons:after { display: none; }
  .jcmc-buttons .jcmc-button { float: none; flex: 1 1 0; margin: 0; text-align: center; }
  .jcmc-buttons .jcmc-prev { flex: 0 0 auto; }
  .vb-bar-total { display: inline-flex; flex-direction: column; flex: none; line-height: 1.15; font-family: Inter, system-ui, sans-serif; }
  .vb-bar-total small { font-size: 12px; color: #5b5e6b; }
  .vb-bar-total strong { font-size: 17px; color: #1d1e24; }
}

/* ---- Τα βήματα (πράσινο/γκρι) καλύπτουν ΟΛΟ το πλάτος της φόρμας, όσα κι αν είναι (flex), και στο κινητό (εκεί το plugin τα έκανε κάθετη λίστα). Οι χρωματισμοί
   (πράσινο ενεργό, σκούρο πράσινο ολοκληρωμένο, γκρι επόμενο) μένουν από τις ρυθμίσεις του plugin: εδώ αλλάζει ΜΟΝΟ η γεωμετρία. ---- */
#jcmc-tabs.jcmc-progress { display: flex; width: 100%; margin-bottom: 20px; }
#jcmc-tabs.jcmc-progress:before, #jcmc-tabs.jcmc-progress:after { display: none; }
#jcmc-tabs.jcmc-progress li { float: none; flex: 1 1 0; clear: none !important; position: relative; width: auto !important; margin: 0 0 20px !important; border-left: 0 !important; }
#jcmc-tabs.jcmc-progress li .jcmc-tab-span { padding: 0 0 20px; }
#jcmc-tabs.jcmc-progress li a { height: auto; line-height: normal; text-indent: 0; padding: 0; border-top: 0; border-left: 0; border-right: 0; border-bottom-width: 4px; border-bottom-style: solid; text-align: center; background: none; }
#jcmc-tabs.jcmc-progress li a .jcmc-number { position: absolute; top: 100%; left: 50%; margin: -20px 0 0 -20px; border-width: 4px; border-style: solid; text-indent: 0; }

/* ---- Διάταξη πεδίων με πλέγμα (ΣΕΙΡΑ μέσω CSS order, ώστε να μένει ίδια ό,τι κι αν αναδιατάξει το address-i18n.js του WooCommerce ανά χώρα) ----
   Desktop: [Όνομα | Επώνυμο] [Email | Τηλέφωνο] [Χώρα | Νομός] [Διεύθυνση | Πόλη | ΤΚ].
   Κινητό: Όνομα/Επώνυμο δίπλα-δίπλα, Email, Τηλέφωνο, Χώρα, Νομός, Διεύθυνση από μόνα τους, Πόλη | ΤΚ δίπλα-δίπλα. */
.woocommerce-billing-fields, .woocommerce-shipping-fields .shipping_address { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; align-items: start; }
.woocommerce-billing-fields > *, .woocommerce-shipping-fields .shipping_address > * { grid-column: 1 / -1; }
.woocommerce-billing-fields > p.form-row, .woocommerce-shipping-fields .shipping_address > p.form-row { float: none !important; clear: none !important; width: auto !important; margin-left: 0 !important; margin-right: 0 !important; }
#billing_first_name_field, #shipping_first_name_field { grid-column: span 1; order: 10; }
#billing_last_name_field, #shipping_last_name_field { grid-column: span 1; order: 20; }
#billing_email_field { grid-column: 1 / -1; order: 30; }
#billing_phone_field { grid-column: 1 / -1; order: 40; }
#billing_country_field, #shipping_country_field { grid-column: 1 / -1; order: 50; }
#billing_state_field, #shipping_state_field { grid-column: 1 / -1; order: 60; }
#billing_address_1_field, #shipping_address_1_field { grid-column: 1 / -1; order: 70; }
#billing_city_field, #shipping_city_field { grid-column: span 1; order: 80; }
#billing_postcode_field, #shipping_postcode_field { grid-column: span 1; order: 90; }
/* το θέμα άφηνε ~50 px κενό κάτω από τα πεδία πριν το «Ship to a different address?» */
.woocommerce-billing-fields { margin-bottom: 0 !important; }
.woocommerce-shipping-fields { margin-top: 0 !important; }
#ship-to-different-address, h3#ship-to-different-address { clear: both; margin-top: 0; padding-top: 6px; }
@media (min-width: 768px) {
  .woocommerce-billing-fields, .woocommerce-shipping-fields .shipping_address { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  #billing_first_name_field, #shipping_first_name_field, #billing_last_name_field, #shipping_last_name_field,
  #billing_email_field, #billing_phone_field, #billing_country_field, #shipping_country_field, #billing_state_field, #shipping_state_field { grid-column: span 6; }
  #billing_address_1_field, #shipping_address_1_field { grid-column: span 6; }
  #billing_city_field, #shipping_city_field, #billing_postcode_field, #shipping_postcode_field { grid-column: span 3; }
}

/* ---- καλάθι: το πάνελ «Cart totals» είναι σκούρο ---- */
.cart_totals .vb-freeship, .cart-collaterals .vb-freeship { margin: 0 0 18px; }

/* ---- βήμα «Payment»: διαχωριστικό (hr) ανά ενότητα: σύνοψη | παραγγελία | πληρωμή | όροι (εντολή χρήστη, 19 Οκτ. 2026) ---- */
#jcmc-tab-1 #order_review_heading { margin: 26px 0 12px; padding-top: 24px; border-top: 1px solid #d3d4dc; }
/* Η πληρωμή είναι ΔΙΚΟ ΤΗΣ βήμα (tab-2): δεν χρειάζεται όριο πάνω από τις μεθόδους· το όριο μένει πάνω από τους όρους. ΠΡΟΣΟΧΗ: το #order_review υπάρχει ΔΥΟ φορές στο DOM και έχει border-radius στο θέμα, γι' αυτό δεν του βάζουμε border */
#jcmc-tab-2 #payment .form-row.terms, #jcmc-tab-2 #payment .woocommerce-terms-and-conditions-wrapper { margin-top: 24px; padding-top: 24px; border-top: 1px solid #d3d4dc; }

/* ---- πίνακας παραγγελίας: η στήλη των ποσών παίρνει ΜΟΝΟ όσο χρειάζεται (χωρίς αναδίπλωση), η αριστερή (όνομα προϊόντος) όλο το υπόλοιπο ---- */
#jcmc-tab-1 .woocommerce-checkout-review-order-table { table-layout: auto; width: 100%; }
#jcmc-tab-1 .woocommerce-checkout-review-order-table th:last-child, #jcmc-tab-1 .woocommerce-checkout-review-order-table td:last-child { width: 1%; white-space: nowrap; }
/* radios αποστολής: αριστερή στοίχιση με τις τιμές (το θέμα έβαζε margin-left 22px στη λίστα) και χωρίς αναδίπλωση του κειμένου */
#jcmc-tab-1 .woocommerce-checkout-review-order-table #shipping_method { margin: 0 !important; padding: 0 !important; text-align: left; }
#jcmc-tab-1 .woocommerce-checkout-review-order-table #shipping_method li { text-align: left; }
#jcmc-tab-1 .woocommerce-checkout-review-order-table #shipping_method li label { white-space: nowrap; }
/* κινητό: δεν χωρούν δύο στήλες με όνομα προϊόντος ΚΑΙ radios χωρίς αναδίπλωση. Κάθε γραμμή (εκτός από τη «Subtotal», που το θέμα κρύβει) = πλέγμα «όνομα | ποσό (δεξιά)» και η αποστολή σπάει σε δύο επίπεδα:
   ο τίτλος πάνω, οι επιλογές κάτω σε όλο το πλάτος */
@media (max-width: 767px) {
  #jcmc-tab-1 .woocommerce-checkout-review-order-table, #jcmc-tab-1 .woocommerce-checkout-review-order-table thead,
  #jcmc-tab-1 .woocommerce-checkout-review-order-table tbody, #jcmc-tab-1 .woocommerce-checkout-review-order-table tfoot { display: block; }
  #jcmc-tab-1 .woocommerce-checkout-review-order-table tr:not(.cart-subtotal) { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
  #jcmc-tab-1 .woocommerce-checkout-review-order-table th:last-child, #jcmc-tab-1 .woocommerce-checkout-review-order-table td:last-child { width: auto; text-align: right; }
  #jcmc-tab-1 .woocommerce-checkout-review-order-table tr.shipping th, #jcmc-tab-1 .woocommerce-checkout-review-order-table tr.shipping td { grid-column: 1 / -1; text-align: left; }
  #jcmc-tab-1 .woocommerce-checkout-review-order-table tr.shipping th { padding-bottom: 0; }
  #jcmc-tab-1 .woocommerce-checkout-review-order-table tr.shipping td { padding-top: 8px; }
}
