/* Compact checkout: essential fields stay together; map and invoice expand on demand. */
.checkout-compact .public-header{min-height:0;padding:10px 18px;gap:12px}
.checkout-compact .checkout{max-width:980px;width:calc(100% - 24px);margin:12px auto;padding:0}
.checkout-compact #checkoutForm{padding:16px}
.checkout-compact #checkoutForm h1{font-size:23px;line-height:1.15;margin:0 0 10px}
.checkout-compact .choice{margin:0 0 10px;gap:18px;display:flex;flex-wrap:wrap}
.checkout-compact .choice label{display:flex;align-items:center;gap:6px;font-size:14px}
.checkout-compact .choice input{width:auto;margin:0}
.checkout-compact .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.checkout-compact label{min-width:0;font-size:13px;line-height:1.3;display:grid;gap:4px}
.checkout-compact input:not([type=checkbox]):not([type=radio]),.checkout-compact select{width:100%;min-width:0;min-height:40px;height:40px;padding:8px 10px;margin:0;font-size:15px;box-sizing:border-box}
.checkout-compact .customer-email{grid-column:1/-1}
.checkout-compact .fiscal-box{grid-column:1/-1;order:3;padding:6px 0;border:0;background:transparent;gap:6px}
.checkout-compact .fiscal-request{display:flex;align-items:center;gap:7px;font-size:13px}
.checkout-compact .fiscal-request input{width:17px;height:17px;margin:0}
.checkout-compact .delivery-address{padding:10px;gap:7px;border-radius:10px}
.checkout-compact .delivery-address h2{font-size:15px}
.checkout-compact .nearest-local-card{display:none}
.checkout-compact .delivery-select-geo{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.checkout-compact .delivery-address-focus{gap:4px}
.checkout-compact .delivery-map-details{grid-row:auto;font-size:12px}
.checkout-compact .delivery-map-details summary{cursor:pointer;color:var(--brand);font-weight:700;padding:4px 0}
.checkout-compact .address-map{height:170px;margin-top:5px}
.checkout-compact .delivery-geo-status{margin:0;font-size:12px;line-height:1.3;grid-row:4}
.checkout-compact .payment-local-row{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.checkout-compact .payment-local-row>label{grid-template-rows:auto 40px auto;gap:4px}
.checkout-compact .payment-local-row .field-spacer{display:none}
.checkout-compact .payment-hint{font-size:11px;line-height:1.2;margin:0}
.checkout-compact .payment-summary{margin:8px 0;padding:9px 12px;gap:4px;border-radius:10px;font-size:13px}
.checkout-compact .payment-summary .total{font-size:19px;padding-top:5px}
.checkout-compact #checkoutForm>button.btn.primary{width:100%;min-height:44px;margin:0;padding:10px 16px}
.checkout-compact .delivery-minimum-status{margin:6px 0;padding:8px;font-size:12px}
@media(min-width:800px){
 .checkout-compact .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}
 .checkout-compact .customer-email{grid-column:3/5}
 .checkout-compact .delivery-address{grid-column:1/3;grid-row:2/5}
 .checkout-compact .payment-local-row{grid-column:3/5;grid-row:2}
 .checkout-compact .fiscal-box{grid-column:3/5;grid-row:3;align-self:start}
 .checkout-compact .payment-summary{max-width:100%}
}
@media(max-width:480px){
 .checkout-compact .public-header{padding:8px 12px;font-size:14px}
 .checkout-compact .checkout{width:calc(100% - 16px);margin:8px auto}
 .checkout-compact #checkoutForm{padding:10px}
 .checkout-compact #checkoutForm h1{font-size:20px;margin-bottom:8px}
 .checkout-compact .choice{gap:12px;margin-bottom:8px}
 .checkout-compact .choice label{font-size:12px}
 .checkout-compact .form-grid{gap:7px 8px}
 .checkout-compact .delivery-address{padding:8px;gap:6px}
 .checkout-compact input:not([type=checkbox]):not([type=radio]),.checkout-compact select{font-size:16px}
}

.checkout-compact #deliveryScopeStatus{padding:6px 8px!important;font-size:11px!important;line-height:1.3!important;border-radius:8px!important}

.checkout-compact .choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.checkout-compact .choice label{width:auto;margin:0;white-space:nowrap}
.checkout-compact .checkout-extras{grid-column:1/-1;order:3;font-size:12px}
.checkout-compact .checkout-extras>summary{cursor:pointer;padding:6px 0;color:var(--brand);font-weight:700}
.checkout-compact .checkout-extras-content{display:grid;gap:8px;padding:6px 0}
@media(min-width:800px){.checkout-compact .customer-email{grid-column:1/-1}.checkout-compact .checkout-extras{grid-column:3/5;grid-row:3}.checkout-compact .checkout-extras .fiscal-box{grid-column:1/-1;grid-row:auto}}
@media(max-width:480px){.checkout-compact .checkout{margin:6px auto}.checkout-compact .delivery-address{gap:4px}.checkout-compact .payment-summary{margin:6px 0}.checkout-compact .payment-hint{font-size:10px}.checkout-compact .choice label{font-size:11px}}

.checkout-compact .payment-hint[hidden]{display:none!important}
@media(max-width:480px){
 .checkout-compact .delivery-address h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .checkout-compact .delivery-geo-status{grid-row:3}
 .checkout-compact input:not([type=checkbox]):not([type=radio]),.checkout-compact select{height:36px;min-height:36px;padding:6px 8px}
 .checkout-compact .payment-local-row>label{grid-template-rows:auto 36px auto}
 .checkout-compact .checkout-extras>summary{padding:3px 0}
 .checkout-compact .payment-summary{padding:7px 10px;gap:2px}
}

/* Delivery map stays visible alongside the order details. */
.checkout-compact .delivery-map-panel{grid-column:1/-1;min-width:0;display:flex;flex-direction:column;gap:6px}
.checkout-compact .delivery-map-panel h2{font-size:14px;line-height:1.3;margin:0}
.checkout-compact .delivery-map-panel .address-map{display:block;height:170px;margin:0;border-radius:10px}
.checkout-compact .delivery-address{align-content:start}
@media(min-width:800px){
 .checkout-compact .delivery-map-panel{grid-column:3/5;grid-row:1/5}
 .checkout-compact .delivery-map-panel .address-map{height:auto;min-height:300px;flex:1}
 .checkout-compact .delivery-address{grid-column:1/3;grid-row:2}
 .checkout-compact .payment-local-row{grid-column:1/3;grid-row:3}
 .checkout-compact .checkout-extras{grid-column:1/3;grid-row:4}
}

/* Pickup uses only the space needed by its fields. */
.checkout-compact.checkout-pickup .checkout{max-width:600px}
.checkout-compact.checkout-pickup .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.checkout-compact.checkout-pickup .payment-local-row,.checkout-compact.checkout-pickup .checkout-extras{grid-column:1/-1;grid-row:auto}

/* Fiscal data occupies its own lateral card when an invoice is requested. */
.checkout-compact .checkout-body,.checkout-compact .checkout-main{min-width:0}
.checkout-compact .checkout-fiscal-card{display:none;min-width:0;padding:14px;border:1px solid var(--border);border-radius:12px;background:#f8fafc;align-self:start}
.checkout-compact.checkout-with-invoice .checkout-fiscal-card{display:block}
.checkout-compact .checkout-fiscal-card h2{margin:0 0 12px;font-size:18px;line-height:1.25}
.checkout-compact .checkout-fiscal-card .fiscal-grid{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}
.checkout-compact .checkout-fiscal-card .fiscal-grid .wide{grid-column:1/-1}
.checkout-compact .checkout-fiscal-card .fiscal-note{font-size:11px;line-height:1.4}
.checkout-compact .checkout-main>button.btn.primary{width:100%;min-height:44px;margin:0;padding:10px 16px}
@media(min-width:1000px){
 .checkout-compact.checkout-with-invoice .checkout{max-width:1440px}
 .checkout-compact.checkout-with-invoice .checkout-body{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,1fr);gap:18px;align-items:start}
 .checkout-compact.checkout-pickup.checkout-with-invoice .checkout{max-width:1040px}
 .checkout-compact.checkout-pickup.checkout-with-invoice .checkout-body{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:999px){.checkout-compact .checkout-fiscal-card{margin-top:12px}}
