/* Agossa v4.9 — deterministic checkout field rows.
 * Loaded after every historical commerce layer. This file deliberately owns the
 * checkout form geometry so WooCommerce float classes and old experiments cannot
 * collapse controls into three columns.
 */
:root{
  --ag49-ink:#171716;
  --ag49-muted:#77736d;
  --ag49-line:#dedbd6;
  --ag49-soft:#f6f5f2;
  --ag49-control:56px;
  --ag49-gap:14px;
  --ag49-radius:9px;
}

body.woocommerce-checkout .agossa-checkout-left{padding-top:30px!important}
body.woocommerce-checkout .agossa-checkout-inner{
  width:min(calc(100% - 52px),680px)!important;
  max-width:680px!important;
  margin:0 64px 0 auto!important;
}

/* Reset all legacy customer-details columns/floats. */
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .agossa-checkout-fields,
body.woocommerce-checkout .agossa-v49-billing,
body.woocommerce-checkout .agossa-v49-fields{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
}
body.woocommerce-checkout .agossa-v49-hidden-field{display:none!important}

/* Each row is an isolated layout context. */
body.woocommerce-checkout .agossa-v49-field-row{
  display:grid!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 var(--ag49-gap)!important;
  padding:0!important;
  gap:var(--ag49-gap)!important;
  float:none!important;
  clear:both!important;
  align-items:start!important;
}
body.woocommerce-checkout .agossa-v49-field-row--1{grid-template-columns:minmax(0,1fr)!important}
body.woocommerce-checkout .agossa-v49-field-row--2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
body.woocommerce-checkout .agossa-v49-field-row>.form-row,
body.woocommerce-checkout .agossa-v49-field-row .form-row{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
  grid-column:auto!important;
}
body.woocommerce-checkout .agossa-v49-field-row .woocommerce-input-wrapper,
body.woocommerce-checkout .agossa-v49-field-row .select2-container{display:block!important;width:100%!important;max-width:none!important}

/* Explicit controls: one visual language and zero inherited widths. */
body.woocommerce-checkout .agossa-v49-fields input.input-text,
body.woocommerce-checkout .agossa-v49-fields select,
body.woocommerce-checkout .agossa-v49-fields .select2-selection--single{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:var(--ag49-control)!important;
  min-height:var(--ag49-control)!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid #d5d2cd!important;
  border-radius:var(--ag49-radius)!important;
  background:#fff!important;
  box-shadow:none!important;
  color:var(--ag49-ink)!important;
  font-size:13px!important;
  line-height:1.25!important;
}
body.woocommerce-checkout .agossa-v49-fields .select2-selection__rendered{line-height:54px!important;padding:0!important}
body.woocommerce-checkout .agossa-v49-fields .select2-selection__arrow{height:54px!important;right:11px!important}
body.woocommerce-checkout .agossa-v49-fields input.input-text:focus,
body.woocommerce-checkout .agossa-v49-fields select:focus,
body.woocommerce-checkout .agossa-v49-fields .select2-container--open .select2-selection--single{
  border-color:#76716a!important;
  outline:none!important;
  box-shadow:0 0 0 3px rgba(20,20,18,.045)!important;
}

/* Phone is one cohesive full-width control, never a peer of city/e-mail. */
body.woocommerce-checkout .agossa-v49-phone-shell{
  display:grid!important;
  grid-template-columns:126px minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
  min-height:var(--ag49-control)!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid #d5d2cd!important;
  border-radius:var(--ag49-radius)!important;
  background:#fff!important;
}
body.woocommerce-checkout .agossa-v49-phone-shell.is-other{grid-template-columns:108px 82px minmax(0,1fr)!important}
body.woocommerce-checkout .agossa-v49-phone-shell>.form-row{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.woocommerce-checkout .agossa-v49-phone-shell input.input-text,
body.woocommerce-checkout .agossa-v49-phone-shell select,
body.woocommerce-checkout .agossa-v49-phone-shell .select2-selection--single{
  height:54px!important;
  min-height:54px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .agossa-v49-phone-shell #billing_phone_country_type_field,
body.woocommerce-checkout .agossa-v49-phone-shell #billing_phone_country_code_field{border-right:1px solid #ebe8e3!important}

/* Corporate invoice block: no phantom cells while closed. */
body.woocommerce-checkout .agossa-v49-corporate-toggle{margin-top:-2px!important;margin-bottom:16px!important}
body.woocommerce-checkout .agossa-v49-corporate-toggle #billing_corporate_invoice_field{display:block!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important}
body.woocommerce-checkout .agossa-v49-corporate-details[hidden]{display:none!important}
body.woocommerce-checkout .agossa-v49-corporate-details.is-open{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .agossa-v49-corporate-details .agossa-corporate-field{
  display:block!important;
  width:100%!important;
}

/* Additional notes deliberately separated from billing fields. */
body.woocommerce-checkout .woocommerce-additional-fields{margin:24px 0 0!important}
body.woocommerce-checkout .woocommerce-additional-fields textarea{min-height:112px!important}
body.woocommerce-checkout .agossa-marketing-checkbox{margin-top:14px!important}
body.woocommerce-checkout .agossa-checkout-payment{margin-top:30px!important;padding-top:26px!important}

/* Keep summary useful while many products are in cart. */
body.woocommerce-checkout .agossa-order-summary{height:calc(100vh - 64px - 56px)!important;min-height:560px!important}
body.woocommerce-checkout .agossa-review-products{min-height:220px!important;overflow-y:auto!important}
body.woocommerce-checkout .agossa-review-coupon,
body.woocommerce-checkout .agossa-review-totals{flex:0 0 auto!important}

@media (max-width:991px){
  body.woocommerce-checkout{background:#fff!important}
  body.woocommerce-checkout .agossa-checkout-layout{display:flex!important;flex-direction:column!important;min-height:0!important;background:#fff!important}
  body.woocommerce-checkout .agossa-checkout-right{order:1!important;width:100%!important;padding:22px 20px!important;border:0!important;border-bottom:1px solid var(--ag49-line)!important;background:var(--ag49-soft)!important}
  body.woocommerce-checkout .agossa-checkout-left{order:2!important;width:100%!important;padding:24px 20px 36px!important}
  body.woocommerce-checkout .agossa-checkout-inner{width:100%!important;max-width:720px!important;margin:0 auto!important}
  body.woocommerce-checkout .agossa-order-summary{height:auto!important;min-height:0!important;max-width:720px!important;margin:0 auto!important}
  body.woocommerce-checkout .agossa-review-products{max-height:330px!important;min-height:0!important}
}

@media (max-width:640px){
  :root{--ag49-control:52px;--ag49-gap:11px}
  body.woocommerce-checkout .agossa-checkout-topbar,
  body.woocommerce-checkout .agossa-checkout-topbar-inner{height:58px!important;min-height:58px!important}
  body.woocommerce-checkout .agossa-checkout-topbar-inner{width:calc(100% - 28px)!important}
  body.woocommerce-checkout .agossa-checkout-logo img{max-width:126px!important;max-height:28px!important}
  body.woocommerce-checkout .agossa-v49-field-row--2{grid-template-columns:minmax(0,1fr)!important}
  body.woocommerce-checkout .agossa-v49-phone-shell{grid-template-columns:112px minmax(0,1fr)!important}
  body.woocommerce-checkout .agossa-v49-phone-shell.is-other{grid-template-columns:92px 70px minmax(0,1fr)!important}
  body.woocommerce-checkout .agossa-checkout-right{padding:18px 16px!important}
  body.woocommerce-checkout .agossa-checkout-left{padding:20px 16px 30px!important}
  body.woocommerce-checkout .agossa-review-products{max-height:280px!important}
}
