.court-inline-page{display:grid;gap:20px;padding-bottom:20px}.court-booking-hero{display:grid;grid-template-columns:210px 1fr;background:#0b294b;color:white;border-radius:22px;overflow:hidden;min-height:180px}.court-booking-hero>img{width:100%;height:100%;max-height:230px;object-fit:cover}.court-hero-copy{padding:28px}.court-hero-copy h1{color:white;margin:7px 0;font-size:34px}.court-hero-copy .eyebrow{color:#ffeb3b;font-size:11px}.court-hero-copy p{color:#d8e5f4;display:flex;gap:6px;align-items:center}.court-hero-copy .icon{width:16px;height:16px}.court-hero-amenities{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;font-size:12px}.court-hero-amenities span{display:flex;align-items:center;gap:6px}.court-hero-empty{display:grid;place-items:center;background:#153b62}.court-hero-empty .icon{width:65px;height:65px;color:#ffee45}.court-contact-strip{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.court-contact-strip .button{min-height:42px}.court-booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.court-booking-layout>*{min-width:0}.court-picker{padding:22px}.court-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px}.court-section-title h2{margin:5px 0}.court-inline-page .eyebrow{font-size:10px;letter-spacing:1.5px}.court-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.court-date-fields .checkbox-label{grid-column:1/-1;font-size:13px}.court-grid-guide{font-size:13px;margin:20px 0 12px;color:#51647b}.court-grid-legend{display:flex;gap:15px;font-size:11px;margin:12px 0}.court-grid-legend span:before{content:'';display:inline-block;width:9px;height:9px;background:#e8edf2;border-radius:3px;margin-right:5px}.court-grid-legend .legend-available:before{background:#d7efe5}.court-grid-legend .legend-selected:before{background:#0b294b}.court-slot-scroll{max-height:520px;overflow:auto;border:1px solid #e0e8f1;border-radius:14px;position:relative;isolation:isolate}.court-slot-table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}.court-slot-table th{padding:13px 10px;background:#f4f7fb;text-align:center;min-width:104px;border-bottom:1px solid #e4ebf4}.court-slot-table thead th{position:sticky;top:0;z-index:3}.court-slot-table th:first-child{position:sticky;left:0;min-width:65px;width:65px;z-index:2;font-size:11px}.court-slot-table thead th:first-child{z-index:4}.court-slot-table th small{display:block;color:#718198;font-weight:400;margin-top:4px}.court-slot-table td{padding:4px;border-bottom:1px solid #f1f4f7;min-width:108px}.court-slot{width:100%;min-height:58px;border:1px solid transparent;border-radius:9px;padding:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px}.court-slot strong{display:flex;align-items:center;gap:5px}.court-slot .icon{width:14px;height:14px}.court-slot small{font-size:10px}.court-slot.is-available{background:#e8f5ed;color:#20533d}.court-slot.is-available:hover{border-color:#245c45;background:#d5efdf}.court-slot.is-selected{background:#0b294b;color:#fff;border-color:#ffdf24;box-shadow:inset 0 0 0 1px #ffdf24}.court-slot.is-unavailable{background:#f0f3f7;color:#8190a2;cursor:default}.court-checkout-summary{position:sticky;top:22px;display:grid;gap:18px;padding:24px;border-top:4px solid #ffe529}.court-checkout-summary h2{font-size:23px;margin:0}.court-checkout-summary p{font-size:13px;line-height:1.6}.court-summary-placeholder{display:grid;gap:16px;justify-items:center;padding:35px 12px;background:#f4f8fc;border-radius:15px;font-size:12px;color:#697d94}.court-summary-placeholder .icon{width:48px;height:48px;color:#0b294b}.court-selection-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e6edf5;font-size:13px}.court-rental-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e3eaf2;padding-top:18px}.court-rental-total>strong{font-size:28px;color:#092847}.court-rental-total small{display:block;color:#74859a;font-size:11px;margin-top:5px}.court-inline-page .booking-policy{max-height:180px;white-space:pre-wrap}.court-inline-page .booking-form>button[type=submit]{background:#ffdf24;color:#092847;min-height:48px;font-weight:800;border-color:#ffdf24}.court-picker .booking-form>button[type=submit]{background:#0b294b;color:#fff;border-color:#0b294b;min-height:40px}.court-inline-page .checkbox-label{font-size:12px;line-height:1.6}.court-payment-heading h2{margin:6px 0;font-size:28px}.court-payment-heading p{margin:8px 0}.court-deadline{display:grid;gap:8px;background:#fff8d8;border-radius:12px;padding:16px;color:#655318}.court-deadline small{font-size:12px}.court-payment-methods{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}.court-payment-methods .booking-qr{width:210px;height:210px}.court-payment-methods a{display:block}.court-pay-amount{display:flex;justify-content:space-between;padding:20px;background:#edf4fc;border-radius:12px}.court-pay-amount strong{font-size:26px}.court-reference{overflow-wrap:anywhere}.court-mobile-total{display:none}.court-discovery-filters{margin:8px 0}.court-discovery-filters summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.court-discovery-filters .booking-filters{margin-top:16px}.court-slot:focus-visible{outline:3px solid #ffcf00;outline-offset:2px}
@media(max-width:1150px){.court-booking-layout{grid-template-columns:minmax(0,1fr) 300px}.court-payment-methods{grid-template-columns:1fr}}
@media(max-width:850px){.court-booking-layout{grid-template-columns:1fr}.court-checkout-summary{position:static;scroll-margin-top:90px}.court-booking-hero{grid-template-columns:130px 1fr}.court-hero-copy{padding:20px}.court-hero-copy h1{font-size:27px}.court-hero-amenities{gap:10px}.court-mobile-total{position:fixed;bottom:calc(70px + env(safe-area-inset-bottom,0px));left:0;right:0;background:#fff;box-shadow:0 -5px 25px #0c28451a;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid #e2e9f2}.court-mobile-total small,.court-mobile-total strong{display:block}.court-mobile-total small{font-size:10px;color:#718298}.court-mobile-total strong{font-size:19px}.court-mobile-total .button{background:#ffdf24;color:#092847;border-color:#ffdf24;font-size:12px}.court-inline-page:has(.court-mobile-total){padding-bottom:100px}}
@media(max-width:480px){.court-booking-hero{grid-template-columns:85px 1fr;min-height:145px;border-radius:16px}.court-hero-copy{padding:16px}.court-hero-copy h1{font-size:24px}.court-hero-copy p{font-size:12px}.court-hero-amenities{font-size:10px;gap:8px}.court-hero-amenities span:nth-child(n+4){display:none}.court-inline-page{gap:16px}.court-contact-strip{gap:7px}.court-contact-strip .button{font-size:11px;padding:10px}.court-contact-strip .icon-button{width:36px;height:36px}.court-picker,.court-checkout-summary{padding:16px}.court-slot-table th{min-width:100px}.court-slot-table th:first-child{min-width:58px;width:58px;padding:8px 5px}.court-slot-table td{min-width:100px}.court-slot-scroll{max-height:430px}.court-date-fields{gap:8px}.court-date-fields label{font-size:12px}.court-date-fields input,.court-date-fields select{min-width:0;width:100%}.court-mobile-total{padding:10px 12px}.court-mobile-total .button{padding:12px;font-size:11px}.court-inline-page .court-checkout-summary h2{font-size:22px}}
.court-inline-page>.back{margin:0}.court-checkout-summary>*{margin-top:0!important}.court-inline-page .booking-form{gap:12px}.court-inline-page .booking-form>*{margin-top:0}.court-inline-page .inline-error:empty{display:none}.court-inline-page [data-form="booking-inline-date"]>button[type=submit]{display:none}.court-inline-page [data-form="booking-inline-date"]{margin:0}.court-inline-page .court-section-title{margin-bottom:14px}.court-inline-page .court-grid-guide{margin:14px 0 10px}.court-inline-page .court-grid-legend{margin:10px 0}.court-inline-page .court-mobile-total{line-height:1.4}
.court-inline-page [hidden]{display:none!important}
.facility-directory-card.is-bookable .facility-card-foot>span:last-child{background:#ffdf24;color:#0b294b;border-radius:9px;padding:10px 16px;font-weight:800}.facility-directory-card.is-bookable:hover{border-color:#afbdd1;box-shadow:0 8px 26px #102b4812}
.facility-workspace form[data-facility-search]:has(.court-discovery-filters){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>.field{grid-column:1;grid-row:1}.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>button{grid-column:2;grid-row:1;white-space:nowrap;align-self:stretch}.facility-workspace form[data-facility-search]>.court-discovery-filters{grid-column:1/-1;grid-row:2;padding:14px 16px;background:white;border:1px solid #e0e8f1;border-radius:12px;margin:0}.facility-workspace [data-facility-search] .court-discovery-filters label{position:static;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip-path:none;white-space:normal;font-size:12px}.facility-workspace [data-facility-search]>.inline-error{grid-column:1/-1}.facility-workspace [data-facility-search] .court-discovery-filters .field{display:grid;gap:6px}.facility-workspace [data-facility-search] .court-discovery-filters input,.facility-workspace [data-facility-search] .court-discovery-filters select{width:100%;min-width:0}
.court-slot.is-selected small{color:inherit;opacity:.9}

.court-basket-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#e0e7f0)}.court-basket-item small{display:block;margin-top:4px;font-size:12px;line-height:1.5}.court-basket-item>div{min-width:0;overflow-wrap:anywhere}.court-slot-table tbody th{min-width:78px;white-space:nowrap}.court-selection-list{max-height:380px;overflow-y:auto}

.court-basket-item.has-conflict{border:1px solid #bb263d;border-radius:8px;padding:10px;background:#fff0f2}

.facility-workspace form[data-facility-search]:has(.court-discovery-filters){grid-template-columns:minmax(0,1fr) minmax(160px,.45fr) auto}
.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>.field:nth-child(2){grid-column:2}
.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>button{grid-column:3}
@media(max-width:600px){.facility-workspace form[data-facility-search]:has(.court-discovery-filters){grid-template-columns:minmax(0,1fr) auto}.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>.field:first-child{grid-column:1/-1}.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>.field:nth-child(2){grid-column:1;grid-row:2}.facility-workspace form[data-facility-search]:has(.court-discovery-filters)>button{grid-column:2;grid-row:2}.facility-workspace form[data-facility-search]>.court-discovery-filters{grid-row:3}}

/* Native mobile date inputs must stay inside the availability grid. */
.court-discovery-filters .booking-filters .field{min-width:0}
.court-discovery-filters .booking-filters input,.court-discovery-filters .booking-filters select{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.court-discovery-filters input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
@media(max-width:600px){.court-discovery-filters .booking-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.court-discovery-filters .booking-filters>.field:first-child,.court-discovery-filters .booking-filters>.field:last-child{grid-column:1/-1}}

/* Keep native date controls inside the slot-picker columns, including Safari. */
.court-date-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.court-date-fields>.field{min-width:0}
.court-date-fields .field input,.court-date-fields .field select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
.court-date-fields input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
@media(max-width:600px){.court-date-fields{grid-template-columns:minmax(0,1fr)}}
