.pi-stock-shell{max-width:1360px;margin:0 auto;padding:0 18px}
.pi-cart-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);gap:28px;align-items:start;max-width:1360px;margin:0 auto;padding:18px}
.pi-cart-shell .woocommerce-cart-form,.pi-cart-shell .cart-collaterals{width:100%!important;float:none!important}
.pi-cart-shell .cart-collaterals{position:sticky;top:24px}
.pi-cart-shell .cart-collaterals .cart_totals{width:100%!important}
.pi-checkout-shell-enhanced{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);gap:28px;align-items:start;max-width:1360px;margin:0 auto;padding:18px}
.pi-checkout-shell-enhanced .pi-left-col,.pi-checkout-shell-enhanced .pi-right-col{min-width:0}
.pi-checkout-shell-enhanced .pi-right-col #order_review_heading{margin:0 0 14px;font-size:1.1rem}
.pi-checkout-shell-enhanced .pi-right-col #order_review{position:sticky;top:24px}
.pi-card{background:#fff;border:1px solid #d9e3f0;border-radius:26px;padding:26px;box-shadow:0 12px 34px rgba(10,24,56,.06)}
.pi-tax-card,.pi-group-card,.pi-ship-card{margin-bottom:20px}
.pi-tax-head,.pi-group-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}.pi-group-head{display:block}
.pi-panel-title{margin:0 0 6px;font-size:1.15rem;font-weight:800;color:#18233a}.pi-panel-copy,.pi-tax-note,.pi-vat-hint{margin:0;color:#5b6d90;line-height:1.45}
.pi-tax-tabs{display:flex;gap:10px;flex-wrap:wrap}.pi-tax-tab{border:1px solid #c9d6ea;background:#fff;color:#18233a;border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer}.pi-tax-tab.is-active{background:linear-gradient(135deg,#101b34 0%,#1d2d57 100%);color:#fff;border-color:#1d2d57}
.pi-tax-pane{display:none}.pi-tax-pane.is-active{display:block}.pi-vat-grid{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(260px,1.2fr) auto;gap:16px;align-items:end;margin-bottom:14px}.pi-field label{display:block;margin:0 0 8px;font-weight:700;color:#18233a}.pi-field input,.pi-field select{width:100%;height:58px;border-radius:20px;border:1px solid #c9d6ea;padding:0 18px;font-size:1rem;background:#fff}.pi-vies-btn{height:58px;border:none;border-radius:999px;padding:0 28px;background:linear-gradient(135deg,#101b34 0%,#1d2d57 100%);color:#fff;font-weight:800;cursor:pointer;white-space:nowrap}.pi-vat-badge,.pi-vat-alert{display:flex;gap:14px;align-items:flex-start;border-radius:22px;padding:18px 20px;margin:14px 0}.pi-vat-badge{background:#eaf7ec;border:1px solid #b8dfbf}.pi-vat-alert{background:#fbf2e8;border:1px solid #f0d0ab}.pi-vat-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;font-weight:900;color:#fff;flex:0 0 38px}.pi-vat-badge .pi-vat-icon{background:#1f9447}.pi-vat-alert .pi-vat-icon{background:#f0a11a}.pi-vat-message strong{display:block;margin-bottom:6px;color:#18233a}.pi-billing-grid,.pi-contact-grid,.pi-shipping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pi-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pi-span-2{grid-column:span 2}.pi-span-3{grid-column:span 3}
.pi-billing-grid .form-row,.pi-contact-grid .form-row,.pi-shipping-grid .form-row{width:100%!important;float:none!important;margin:0!important}.pi-billing-grid label,.pi-contact-grid label,.pi-shipping-grid label{font-weight:700;color:#18233a}.pi-billing-grid input,.pi-billing-grid select,.pi-billing-grid textarea,.pi-contact-grid input,.pi-contact-grid select,.pi-contact-grid textarea,.pi-shipping-grid input,.pi-shipping-grid select,.pi-shipping-grid textarea{border:1px solid #c9d6ea;border-radius:20px;min-height:58px;padding:14px 18px;background:#fff}.pi-billing-grid textarea,.pi-contact-grid textarea,.pi-shipping-grid textarea{min-height:140px}.pi-hidden{display:none!important}
.pi-shipping-toggle{display:flex;justify-content:space-between;align-items:center;border:1px solid #c9d6ea;background:#fff;border-radius:20px;padding:18px 18px;font-weight:800;color:#18233a;cursor:pointer}.pi-shipping-toggle .pi-icon{font-size:28px;line-height:1;color:#1783aa}.pi-shipping-body{display:none;padding-top:18px}.pi-ship-card.is-open .pi-shipping-body{display:block}
#order_review .shop_table{table-layout:fixed!important;width:100%!important}#order_review .product-name{white-space:normal!important;overflow:visible!important;word-break:normal!important}.woocommerce-checkout-review-order-table tr.cart_item th.product-name{display:table-cell!important;vertical-align:top!important;padding-right:18px!important}.woocommerce-checkout-review-order-table tr.cart_item td.product-total{display:table-cell!important;vertical-align:top!important;text-align:right!important;width:140px!important;white-space:nowrap!important}.woocommerce-checkout-review-order-table tr.cart_item .product-quantity{display:inline-block!important;margin-left:6px;font-weight:800}.woocommerce-checkout-review-order-table tr.cart_item .wc-item-meta,.woocommerce-checkout-review-order-table tr.cart_item dl.variation{display:block!important;margin:10px 0 0!important;padding:0!important}.woocommerce-checkout-review-order-table tr.cart_item .wc-item-meta li,.woocommerce-checkout-review-order-table tr.cart_item dl.variation dt,.woocommerce-checkout-review-order-table tr.cart_item dl.variation dd{display:block!important;float:none!important;margin:0 0 4px!important}.woocommerce-checkout-review-order-table tr.cart_item .wc-item-meta p{margin:0!important}.woocommerce-checkout-review-order-table tr.cart_item th.product-name br{display:block}
@media (max-width: 1024px){.pi-cart-shell,.pi-checkout-shell-enhanced{grid-template-columns:1fr}.pi-vat-grid,.pi-billing-grid,.pi-contact-grid,.pi-shipping-grid{grid-template-columns:1fr}.pi-span-2,.pi-span-3{grid-column:auto}.pi-checkout-shell-enhanced .pi-right-col #order_review{position:static}}


/* v0.8 checkout layout hardening */
.pi-checkout-shell-enhanced #customer_details{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.pi-checkout-shell-enhanced #customer_details > .col-1,.pi-checkout-shell-enhanced #customer_details > .col-2{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.pi-checkout-shell-enhanced #customer_details > .col-2.pi-empty-col2{display:none!important}
.pi-checkout-shell-enhanced .woocommerce-billing-fields,.pi-checkout-shell-enhanced .woocommerce-shipping-fields,.pi-checkout-shell-enhanced .woocommerce-additional-fields{width:100%!important;max-width:none!important}
.pi-tax-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:18px!important}
.pi-tax-tabs{justify-self:end;align-self:start}
.pi-billing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.pi-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.pi-notes-grid{display:block!important}
.pi-notes-grid .form-row{width:100%!important;float:none!important;margin:0!important}
.pi-notes-grid textarea{width:100%!important;min-height:160px!important}
.pi-billing-grid .pi-span-3,.pi-billing-grid .pi-span-2,.pi-contact-grid .pi-span-2,.pi-shipping-grid .pi-span-2,.pi-shipping-grid .pi-span-3{grid-column:1/-1!important}
.pi-ship-card{margin-top:20px}
.pi-left-col .pi-ship-card .pi-shipping-body{padding-top:18px}
.pi-shipping-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.pi-shipping-grid #shipping_address_1_field,.pi-shipping-grid #shipping_address_2_field{grid-column:1/-1!important}
.pi-right-col .payment_box{border-radius:18px!important}
@media (max-width:1200px){.pi-checkout-shell-enhanced{grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr)!important}.pi-tax-head{grid-template-columns:1fr!important}.pi-tax-tabs{justify-self:start}}


/* v0.9 shipping + order polish */
.pi-ship-card[data-pi-main="1"]{margin-top:20px}
.pi-ship-card .woocommerce-shipping-fields{display:block!important;width:100%!important;margin:0!important}
.pi-ship-card .shipping_address{display:none}
.pi-ship-card.is-open .shipping_address{display:block!important}
.pi-right-col #order_review table.shop_table th,.pi-right-col #order_review table.shop_table td{padding-top:14px!important;padding-bottom:14px!important}
.pi-right-col #order_review .cart_item .product-name{font-size:16px!important;line-height:1.45!important}
.pi-right-col #order_review .cart_item .product-total{font-size:16px!important}
.pi-right-col #order_review .cart_item .wc-item-meta,.pi-right-col #order_review .cart_item dl.variation{font-size:14px!important;color:#4e5d7a!important}
.pi-right-col #order_review .shop_table tbody tr.cart_item th.product-name{width:auto!important}
.pi-right-col #order_review .shop_table tfoot th{font-weight:600!important}
.pi-right-col #order_review .shop_table tfoot td{font-weight:700!important}

/* v0.11 softer actions + card colors + thankyou */
.pi-tax-card,.pi-company-card,.pi-contact-card,.pi-notes-card,.pi-ship-card{background:#f5f7fb;border-color:#d8dee8}
.pi-group-card .pi-panel-copy,.pi-tax-card .pi-panel-copy,.pi-tax-note,.pi-vat-hint{color:#5f6f8f}

.pi-vies-btn{
  background:linear-gradient(180deg,#2f76e5 0%,#1f67d7 100%)!important;
  box-shadow:0 8px 20px rgba(47,118,229,.20);
}
.pi-vies-btn:hover{filter:brightness(.98)}
.pi-vies-btn:disabled{opacity:.7;cursor:wait}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
#place_order{
  background:linear-gradient(180deg,#f8d978 0%,#efbf42 100%)!important;
  border:1px solid #c7951f!important;
  color:#2d2410!important;
  border-radius:999px!important;
  min-height:52px!important;
  padding:0 28px!important;
  font-weight:800!important;
  box-shadow:0 8px 18px rgba(200,149,31,.18)!important;
  text-shadow:none!important;
}
.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover,
#place_order:hover{filter:brightness(.98)!important}

.pi-shipping-toggle{
  gap:16px;
  padding:18px 22px!important;
}
.pi-shipping-toggle .pi-shipping-label{display:inline-block;padding-right:10px}
.pi-shipping-toggle .pi-icon{margin-left:14px;min-width:18px;text-align:center}

/* order received / thank you */
.woocommerce-order,
.woocommerce-thankyou-order-received,
.woocommerce-view-order{
  max-width:1360px;
  margin:0 auto;
}
.woocommerce-order{padding:18px}
.woocommerce-order > p:first-of-type{
  background:#f3fbf5;
  border:1px solid #d7eadc;
  border-radius:22px;
  padding:18px 22px;
}
.woocommerce-order-overview{
  list-style:none;
  margin:20px 0 26px!important;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.woocommerce-order-overview li{
  background:#fff;
  border:1px solid #d9e3f0;
  border-radius:22px;
  padding:16px 18px;
  margin:0!important;
}
.woocommerce-order-details,
.woocommerce-bacs-bank-details,
.woocommerce-customer-details{
  background:#fff;
  border:1px solid #d9e3f0;
  border-radius:26px;
  padding:24px 24px 18px;
  margin:22px 0;
  box-shadow:0 12px 34px rgba(10,24,56,.05);
}
.woocommerce-order-details h2,
.woocommerce-bacs-bank-details h2,
.woocommerce-customer-details h2{margin-top:0}
.woocommerce-table--order-details,
.woocommerce-table--customer-details{width:100%;border-collapse:collapse}
.woocommerce-table--order-details th,
.woocommerce-table--order-details td,
.woocommerce-table--customer-details th,
.woocommerce-table--customer-details td{padding:14px 10px;border-bottom:1px solid #e8eef5}
.woocommerce-table--order-details tr:last-child th,
.woocommerce-table--order-details tr:last-child td{border-bottom:none}
.woocommerce-customer-details .woocommerce-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.woocommerce-customer-details address{
  background:#f8fbff;
  border:1px solid #dde9f6;
  border-radius:22px;
  padding:18px 20px;
  min-height:100%;
}
.woocommerce-order .button,
.woocommerce-order .button:visited,
.woocommerce-order .button:hover,
.woocommerce-order .button:focus,
.woocommerce-order .button:active,
.woocommerce-order-details .button,
.woocommerce-order-details .button:visited,
.woocommerce-order-details .button:hover,
.woocommerce-order-details .button:focus,
.woocommerce-order-details .button:active{
  border-radius:999px!important;
  border:1px solid #108ea3!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  background:linear-gradient(180deg,#1aa7b8 0%,#108ea3 100%)!important;
  text-decoration:none!important;
  padding:11px 18px!important;
  font-weight:700!important;
  box-shadow:0 8px 18px rgba(16,142,163,.18)!important;
}
.woocommerce-order .button:hover,
.woocommerce-order .button:focus,
.woocommerce-order .button:active,
.woocommerce-order-details .button:hover,
.woocommerce-order-details .button:focus,
.woocommerce-order-details .button:active{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  background:linear-gradient(180deg,#169db1 0%,#0f8396 100%)!important;
  text-decoration:none!important;
  outline:none!important;
}

@media (max-width: 980px){
  .pi-checkout-shell-enhanced{grid-template-columns:1fr!important;padding:14px!important}
  .pi-checkout-shell-enhanced .pi-right-col{order:2}
  .pi-checkout-shell-enhanced .pi-left-col{order:1}
  .pi-checkout-shell-enhanced .pi-right-col #order_review{position:static!important;margin-top:8px}
  .pi-tax-head{grid-template-columns:1fr!important}
  .pi-tax-tabs{justify-self:start!important}
  .pi-vat-grid,.pi-billing-grid,.pi-contact-grid,.pi-shipping-grid{grid-template-columns:1fr!important}
  .pi-card{padding:20px!important;border-radius:22px!important}
  .pi-vies-btn,
  .woocommerce #payment #place_order,
  .woocommerce-page #payment #place_order,
  #place_order{width:100%!important}
  .woocommerce-order-overview{grid-template-columns:1fr 1fr}
  .woocommerce-customer-details .woocommerce-columns{grid-template-columns:1fr}
}

@media (max-width: 640px){
  .pi-stock-shell,.pi-cart-shell,.pi-checkout-shell-enhanced,.woocommerce-order{padding:12px!important}
  .pi-panel-title{font-size:1.05rem}
  .pi-panel-copy,.pi-tax-note,.pi-vat-hint{font-size:.95rem}
  .pi-tax-tabs{width:100%;gap:8px}
  .pi-tax-tab{flex:1 1 calc(50% - 4px);text-align:center;padding:12px 14px}
  .pi-vat-grid{gap:12px}
  .pi-field input,.pi-field select,.pi-billing-grid input,.pi-billing-grid select,.pi-contact-grid input,.pi-contact-grid select,.pi-shipping-grid input,.pi-shipping-grid select{min-height:54px!important;height:auto!important}
  #order_review{margin-top:12px}
  #order_review .shop_table{display:block;overflow:hidden}
  #order_review .shop_table thead,#order_review .shop_table tbody,#order_review .shop_table tfoot,#order_review .shop_table tr,#order_review .shop_table th,#order_review .shop_table td{display:block}
  #order_review .shop_table thead tr{display:grid;grid-template-columns:1fr auto}
  #order_review .shop_table thead th{display:block}
  #order_review .shop_table tr.cart_item{padding:14px 0;border-bottom:1px solid #e8eef5}
  #order_review .shop_table tr.cart_item th.product-name,#order_review .shop_table tr.cart_item td.product-total{display:block!important;width:100%!important;text-align:left!important;padding:6px 0!important}
  #order_review .shop_table tfoot tr{display:grid;grid-template-columns:1fr auto;align-items:center;padding:10px 0}
  .woocommerce-order-overview{grid-template-columns:1fr}
}


.pi-billing-grid input,.pi-billing-grid select,.pi-billing-grid textarea,.pi-contact-grid input,.pi-contact-grid select,.pi-contact-grid textarea,.pi-shipping-grid input,.pi-shipping-grid select,.pi-shipping-grid textarea,.pi-field input,.pi-field select{background:#fff!important;border-color:#cfd8e5!important}
.pi-soft-locked{background:#f8fbff!important;color:#41526d!important}
.pi-soft-locked-wrap .select2-selection,.pi-soft-locked-ui .select2-selection{background:#f7f9fc!important;border-color:#c9d6ea!important;pointer-events:none!important}
.pi-soft-locked-wrap select,.pi-soft-locked-ui{pointer-events:none!important}

.pi-card{box-shadow:0 10px 26px rgba(13,27,62,.04)!important}
.pi-shipping-toggle{background:#fff!important;border:1px solid #cad6e6!important}
.pi-shipping-toggle:hover{background:#f9fbff!important}
.pi-vat-badge{background:#f1faf3!important;border:1px solid #cce6d2!important;border-radius:18px;padding:16px 18px}
.pi-vat-alert{background:#fff7eb!important;border:1px solid #f2d3a5!important;border-radius:18px;padding:16px 18px}


/* v0.11.4 white checkout cards + emerald VIES + better thank you layout */
.pi-tax-card,.pi-company-card,.pi-contact-card,.pi-notes-card,.pi-ship-card{
  background:#fff !important;
  border-color:#d8e1ee !important;
  box-shadow:0 10px 26px rgba(13,27,62,.045) !important;
}
.pi-panel-title{color:#18233a!important}
.pi-panel-copy,.pi-tax-note,.pi-vat-hint{color:#5b6d90!important}
.pi-vies-btn{
  background:linear-gradient(180deg,#1aa7b8 0%,#108ea3 100%) !important;
  box-shadow:0 10px 22px rgba(16,142,163,.22) !important;
}
.pi-vies-btn:hover{filter:brightness(.98)!important}
.pi-vat-badge{background:#f3fbf7!important;border-color:#cae9d8!important}
.pi-vat-alert{background:#fff8ee!important;border-color:#f1d5af!important}

.woocommerce-order,
.woocommerce-thankyou-order-received,
.woocommerce-view-order{max-width:1360px!important;margin:0 auto!important}
.woocommerce-order{padding:18px!important}
.woocommerce-order > p:first-of-type{
  background:#f7fbf8!important;
  border:1px solid #d8e8dd!important;
  border-radius:22px!important;
  padding:18px 22px!important;
}
.woocommerce-bacs-bank-details h2,
.woocommerce-order-details h2,
.woocommerce-customer-details > h2{
  font-size:2.35rem!important;
  line-height:1.08!important;
  letter-spacing:-0.02em!important;
  margin:0 0 12px!important;
  color:#18233a!important;
}
.woocommerce-bacs-bank-details h3{
  font-size:1.7rem!important;
  line-height:1.15!important;
  margin:6px 0 10px!important;
  color:#18233a!important;
}
.woocommerce-bacs-bank-details ul{
  margin:12px 0 0 18px!important;
}
.woocommerce-bacs-bank-details li{
  margin:6px 0!important;
  line-height:1.55!important;
}
.woocommerce-order-details,
.woocommerce-bacs-bank-details,
.woocommerce-customer-details{
  background:#fff!important;
  border:1px solid #d9e3f0!important;
  border-radius:26px!important;
  padding:24px 24px 18px!important;
}
.woocommerce-customer-details .woocommerce-columns,
.woocommerce-customer-details .woocommerce-columns--addresses,
.woocommerce-customer-details .col2-set{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:start!important;
}
.woocommerce-customer-details .woocommerce-column,
.woocommerce-customer-details .woocommerce-column--billing-address,
.woocommerce-customer-details .woocommerce-column--shipping-address,
.woocommerce-customer-details .col-1,
.woocommerce-customer-details .col-2{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.woocommerce-customer-details .woocommerce-column h2,
.woocommerce-customer-details .col-1 h2,
.woocommerce-customer-details .col-2 h2{
  font-size:1.75rem!important;
  line-height:1.08!important;
  letter-spacing:-0.02em!important;
  margin:0 0 14px!important;
  color:#18233a!important;
}
.woocommerce-customer-details address{
  background:#fff!important;
  border:1px solid #dce6f2!important;
  border-radius:22px!important;
  padding:18px 20px!important;
  min-height:100%!important;
  font-style:normal!important;
  line-height:1.6!important;
  color:#2b3850!important;
  word-break:break-word!important;
}
@media (max-width: 980px){
  .woocommerce-bacs-bank-details h2,
  .woocommerce-order-details h2,
  .woocommerce-customer-details > h2{font-size:1.95rem!important}
  .woocommerce-bacs-bank-details h3{font-size:1.45rem!important}
  .woocommerce-customer-details .woocommerce-columns,
  .woocommerce-customer-details .woocommerce-columns--addresses,
  .woocommerce-customer-details .col2-set{grid-template-columns:1fr!important}
  .woocommerce-customer-details .woocommerce-column h2,
  .woocommerce-customer-details .col-1 h2,
  .woocommerce-customer-details .col-2 h2{font-size:1.45rem!important}
}
