.stock-dates{margin:18px 0 28px;padding:22px;border:1px solid #37373e;border-top:3px solid #ed0033;border-radius:12px;background:#141416;color:#f4f4f5;font:14px/1.45 Arial,sans-serif}
.stock-dates-heading{display:flex;align-items:baseline;gap:16px;margin-bottom:14px}.stock-dates-heading strong{font-size:20px}.stock-dates-heading small{color:#aaaab5}
.stock-dates-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:12px;align-items:end}.stock-dates label{display:grid;gap:7px;color:#d9d9df;font-weight:600}.stock-dates input{display:block;width:100%;min-width:0;box-sizing:border-box;padding:11px 12px;border:1px solid #49494f;border-radius:6px;background:#09090b;color:#fff;color-scheme:dark;font:inherit}.stock-dates button{min-height:43px;border:1px solid #55555d;border-radius:6px;padding:10px 16px;background:#242428;color:#fff;font:600 13px Arial,sans-serif;cursor:pointer}.stock-dates [data-stock-check]{background:#ed0033;border-color:#ed0033}.stock-dates button:hover{filter:brightness(1.15)}.stock-dates p{margin:12px 0 0;color:#aaaab5;font-size:13px}.stock-dates-cart{margin:0 18px 18px;padding:16px}.stock-dates-cart .stock-dates-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.product-availability.stock-busy,.rig-stock.stock-busy,.modal-availability.stock-busy,.cart-stock-note.stock-busy,.stock-error{color:#ff91a7!important}.product-availability.stock-partial,.rig-stock.stock-partial,.modal-availability.stock-partial{color:#f3c88a!important}.cart-stock-note{display:block;font-size:12px;line-height:1.4;margin:7px 0;color:#c2c2cc}.order-stock-status{color:#c2c2cc;font-size:14px}.crm-reservation-summary{padding:12px;border-left:3px solid #ed0033;background:#17171c;line-height:1.5}.crm-stock-note{display:block;color:#a8a8b3;margin-top:6px;font-size:12px}
@media(max-width:640px){.stock-dates{padding:16px;margin:14px 0 22px}.stock-dates-heading{display:block}.stock-dates-heading strong,.stock-dates-heading small{display:block}.stock-dates-heading small{margin-top:5px}.stock-dates-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.stock-dates input{font-size:16px;padding:10px 7px}.stock-dates-cart{margin:0 12px 14px}.stock-dates button{padding:10px}.stock-dates label{font-size:12px}}

.stock-schedule{white-space:pre-line;font-size:12px;line-height:1.6;color:#f4ba83;border-left:2px solid #ed0033;padding-left:9px;margin:8px 0 12px;text-transform:none;letter-spacing:0}.product-card .stock-schedule{font-size:11px}.stock-schedule[hidden]{display:none}.product-card:has(.stock-schedule:not([hidden])){height:auto;min-height:100%}

/* Keep date selection close to the catalogue without crowding touch controls. */
.stock-dates-catalogue{width:100%;max-width:100%;box-sizing:border-box;margin:12px auto 8px;padding:14px 16px}
.stock-dates-catalogue .stock-dates-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.stock-dates-catalogue .stock-dates-heading strong,.stock-dates-catalogue .stock-dates-heading small{white-space:nowrap;margin:0}
.stock-dates-catalogue .stock-dates-heading strong{font-size:18px}
.stock-dates-catalogue .stock-dates-fields{gap:8px}
.stock-dates-catalogue label{gap:5px}
.stock-dates-catalogue input{padding:9px 10px}
.stock-dates-catalogue button{min-height:42px;padding:9px 14px}
.stock-dates-catalogue p{margin-top:8px;font-size:12px;line-height:1.4}
.stock-dates-catalogue+.catalog-section{padding-top:12px}
.stock-dates-catalogue+.catalog-section .section-heading{margin-bottom:16px}
/* Safari date controls must be allowed to shrink inside both grid levels. */
.stock-dates-fields>*{min-width:0;max-width:100%}
.stock-dates label{min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}
.stock-dates input[type="datetime-local"]{appearance:none;-webkit-appearance:none;width:100%;min-width:0;max-width:100%;inline-size:100%;min-inline-size:0;max-inline-size:100%}
.stock-dates input::-webkit-date-and-time-value{min-width:0;text-align:left}
@media(max-width:640px){
 .stock-dates-catalogue{width:100%;margin:8px auto 6px;padding:9px 10px;border-radius:9px}
 .stock-dates-catalogue .stock-dates-heading{gap:4px;margin-bottom:7px}
 .stock-dates-catalogue .stock-dates-heading strong{font-size:clamp(13px,4vw,16px);line-height:1.2}
 .stock-dates-catalogue .stock-dates-heading small{font-size:clamp(8px,2.4vw,10px)}
 .stock-dates-catalogue .stock-dates-fields{gap:6px}
 .stock-dates-catalogue label{gap:4px;font-size:11px}
 .stock-dates-catalogue input{padding:8px 6px;font-size:16px;min-height:40px}
 .stock-dates-catalogue button{min-height:40px;padding:8px;font-size:12px}
 .stock-dates-catalogue p{margin-top:6px;font-size:10px;line-height:1.35}
 .stock-dates-catalogue+.catalog-section{padding-top:10px}
 .stock-dates-catalogue+.catalog-section .section-heading{margin-bottom:14px}
}
/* iOS WebKit 301648: apply padding to the wrapper, not the date input. */
.stock-date-control{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;min-height:42px;padding:8px 6px;border:1px solid #49494f;border-radius:6px;background:#09090b}
.stock-dates .stock-date-control input{padding:0;margin:0;border:0;border-radius:0;background:transparent;min-height:24px;height:24px;font-size:16px;line-height:24px}
.stock-date-control:focus-within{outline:2px solid #ff4165;outline-offset:2px}
