/* Build 20: mobile booking editor is a separate screen, not a nested overlay. */
body.z20-booking-edit{overflow:hidden!important}
body.z20-booking-edit .side,body.z20-booking-edit .top,body.z20-booking-edit .footer,
body.z20-booking-edit #connection,body.z20-booking-edit #overviewConnections,
body.z20-booking-edit #content > :not(.booking-editor-panel){display:none!important}
body.z20-booking-edit .main{padding:0!important;min-width:0;width:100%}
body.z20-booking-edit #content{display:block!important}
body.z20-booking-edit #content>.booking-editor-panel{
 position:fixed!important;inset:0!important;z-index:10000!important;display:block!important;
 width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;
 overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
 margin:0!important;padding:18px max(16px,calc((100vw - 850px)/2)) 42px!important;
 border:0!important;border-radius:0!important;background:#101e2e!important;
 box-shadow:none!important;scrollbar-gutter:stable;
}
body.z20-booking-edit .booking-editor-panel>h2{position:sticky;top:-18px;z-index:5;background:#101e2e;border-bottom:1px solid #39546a;padding:14px 75px 14px 0!important;margin:0 0 14px!important}
body.z20-booking-edit .booking-editor-panel>.booking-top-close{position:sticky;top:0;z-index:6;float:right!important;margin:10px 0 -40px 0!important;min-height:34px}
body.z20-booking-edit .booking-editor-panel .editor{position:static!important;inset:auto!important;width:auto!important;max-width:100%!important;max-height:none!important;overflow:visible!important;box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;background:transparent!important}
body.z20-booking-edit .booking-editor-panel .booking-form-group{min-width:0;max-width:100%}
body.z20-booking-edit .booking-editor-panel .editgrid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start}
body.z20-booking-edit .booking-editor-panel label{min-width:0!important;max-width:100%!important}
body.z20-booking-edit .booking-editor-panel input,body.z20-booking-edit .booking-editor-panel select,body.z20-booking-edit .booking-editor-panel textarea{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box}
body.z20-booking-edit .booking-editor-panel input[type=checkbox]{width:auto!important}
@media(max-width:600px){body.z20-booking-edit .booking-editor-panel .editgrid{grid-template-columns:1fr!important}body.z20-booking-edit #content>.booking-editor-panel{padding:12px 14px 36px!important}}
/* Standardise short Close controls in all open panels. */
#bookingCalculator #closeCalculator,#bookingCalculator .b17-discreet-close,#bookingInvoiceDialog #closeBookingInvoice,
#content .booking-top-close,#content #cancelBooking{background:transparent!important;border:1px solid #39546a!important;color:#76d9c4!important;min-height:34px!important;font-size:12px!important;padding:6px 10px!important;border-radius:8px!important;width:auto!important}
#bookingCalculator .z20-share-help{padding:10px 12px;border-left:3px solid #5bd3b5;background:#1a3040;border-radius:4px}
#bookingCalculator #calcFeedback:not(:empty){color:#f3c87b;font-weight:650}
/* Compact boarding dog-days by year without suppressing numbers. */
#boardingYearReport{margin-top:14px!important}#boardingYearReport table{margin:8px 0!important}#boardingYearReport th,#boardingYearReport td{padding:5px 6px!important;font-size:12px!important;line-height:1.25!important}
#boardingYearReport .barrow{gap:5px!important}
/* More legible customer-specific pricing panel. */
#customerProfileDetails .b19-customer-rates{padding:16px!important;margin:16px 0!important}
#customerProfileDetails .b19-customer-rates .b17-price-editor{padding:12px 0!important;display:grid;gap:12px}
#customerProfileDetails .b19-customer-rates select{width:100%;max-width:100%;min-height:44px}
/* Consistent year/current summary for Payments and Overview. */
.overview-summary .b19-current-year,.payment-headlines .b19-current-year{border:1px solid #3c6270!important;border-radius:14px!important}
@media(max-width:700px){.side .zuramani-logo-wrap img{max-height:64px!important;width:58%!important}.side .nav{gap:4px!important}}

/* Mobile field containment and matching date/time rows. */
body.z20-booking-edit #content>.booking-editor-panel{box-sizing:border-box!important;width:100%!important;scrollbar-gutter:auto}
#bookingCalculator{box-sizing:border-box!important;margin:auto!important;max-width:calc(100vw - 32px)!important;overflow-x:hidden}
#bookingCalculator .editgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
#bookingCalculator .editgrid>label{min-width:0!important}
#bookingCalculator input[type=date],#bookingCalculator input[type=time],
body.z20-booking-edit .booking-editor-panel input[type=date],body.z20-booking-edit .booking-editor-panel input[type=time]{
 display:block!important;appearance:none;-webkit-appearance:none;box-sizing:border-box!important;
 width:100%!important;inline-size:100%!important;min-width:0!important;min-inline-size:0!important;max-width:100%!important;
 padding:10px 4px!important;font-size:16px!important;
}
#bookingCalculator input::-webkit-date-and-time-value,body.z20-booking-edit .booking-editor-panel input::-webkit-date-and-time-value{min-width:0;text-align:center}

/* Payment summary: one wide current-year card, two equal cards below. */
.payment-headlines .cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.payment-headlines .cards>.metric{min-width:0;box-sizing:border-box}
.payment-headlines .cards>.metric .value{overflow-wrap:anywhere}

/* Build 22: full-width shallow tribute header. */
.side .zuramani-logo-wrap img{aspect-ratio:1925/420!important;object-fit:contain!important}
@media(max-width:700px){
 .side .zuramani-brand{width:100%!important;max-width:none!important;padding:0!important;box-sizing:border-box}
 .side .zuramani-logo-wrap{width:100%!important;flex:1 1 auto!important}
 .side .zuramani-logo-wrap img{width:100%!important;max-width:100%!important;height:auto!important;max-height:76px!important;margin:0 auto!important}
}
