
/* Saturday date selector: preview mode until payment activation */
.sat-date-picker{margin:19px 0 16px;padding:19px 15px 15px;background:#f1f6ff;border:2px solid #d4e4ff;border-radius:17px;text-align:center}
.sat-date-picker h4{font-family:'Barlow Condensed',Impact,sans-serif;font-size:29px;line-height:1.08;color:#061c50;margin:0 0 8px}
.sat-date-picker .sat-intro{font-size:12px;color:#526a91;margin:0 0 14px}
.sat-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sat-date{border:2px solid #d6e3f8;border-radius:12px;background:#fff;color:#08275c;padding:12px 7px;cursor:pointer;font-family:inherit;transition:box-shadow .12s,border-color .12s}
.sat-date:hover:not(:disabled){border-color:#1d6df7;box-shadow:0 3px 0 #bfd6ff}
.sat-date[aria-pressed="true"]{border-color:#0868f4;background:#e4efff;box-shadow:inset 0 0 0 1px #0868f4}
.sat-date:disabled{opacity:.55;cursor:not-allowed;background:#f6f6f6}
.sat-date strong{display:block;font-size:14px}
.sat-date small{display:block;font-size:10px;font-weight:800;line-height:1.4;color:#567096;margin-top:4px}
.sat-selected{font-size:12px;color:#172f5b;font-weight:800;margin:15px 0 6px}
.sat-preview-warning{font-size:11px;color:#636e87;line-height:1.5;margin:4px 0 0}
@media(max-width:375px){.sat-date-picker{padding:14px 9px}.sat-date{padding:10px 5px}.sat-date strong{font-size:12px}}

.sat-checkout-button{width:100%;margin:12px 0 8px;padding:15px 12px;min-height:52px;border-radius:12px;border:2px solid #b7192f;background:#ee2c38;color:#fff;font:900 13px/1.35 "DM Sans",Arial,sans-serif;cursor:pointer;box-shadow:0 4px 0 #b7192f;text-align:center}.sat-checkout-button:hover:not(:disabled){background:#d5192f}.sat-checkout-button:disabled{opacity:.65;cursor:wait}.sat-checkout-button:focus-visible{outline:3px solid #ffcc23;outline-offset:3px}.sat-checkout-error{padding:10px;background:#fff4d8;color:#752921;border:1px solid #d68b61;border-radius:8px;font-size:12px;font-weight:700}.booking-flow-note{text-align:center;margin:12px 0;color:#143264;font-size:13px;line-height:1.6;font-weight:700}

.postcode-eligibility{background:#fff;border:2px solid #d4e4ff;border-radius:15px;padding:16px 13px;margin:15px 0 10px;text-align:left}.postcode-eligibility label{display:block;font-size:17px;font-weight:900;color:#061c50;margin-bottom:5px}.postcode-eligibility p{font-size:12px;color:#425776;line-height:1.5;margin:5px 0 10px}.postcode-controls{display:flex;gap:8px;align-items:stretch}.postcode-controls input{min-width:0;flex:1;width:100%;padding:12px 11px;border:2px solid #c9d8f0;border-radius:9px;background:#fff;color:#08275c;font-size:16px;text-transform:uppercase}.postcode-controls input:focus-visible{outline:3px solid #ffcf44;outline-offset:2px}.postcode-controls button{background:#0d55c6;color:#fff;border:0;border-radius:9px;padding:11px 12px;font-size:12px;font-weight:900;cursor:pointer}.postcode-controls button:disabled{opacity:.6;cursor:wait}.postcode-eligibility .postcode-result{font-size:12px;font-weight:600;margin:12px 0 0;min-height:16px}.postcode-eligibility .postcode-error{color:#a11e2e}.postcode-eligibility .postcode-success{color:#147245}.postcode-eligibility .postcode-pending{color:#355d93}@media(max-width:380px){.postcode-controls{flex-direction:column}.postcode-controls button{min-height:45px}}

.postcode-first-warning{background:#fff0f2;color:#aa1730;border:2px solid #e33c56;border-radius:10px;padding:11px 12px;margin:10px 0;font-size:13px;font-weight:900;line-height:1.5;text-align:center}
