/* Final shared cascade for customer booking, staff pages, dialogs and reports. */
fieldset{min-inline-size:0}.form-grid>*,.page-head>*,.top-actions>*,.care-two-col>*,.inspection-meta>*,.booking-filter-fields>*,.tech-header>*{min-width:0}.page-head,.top-actions,.guide-toolbar,.document-preview-toolbar{flex-wrap:wrap}.care-two-col{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.guide-toolbar h2{overflow-wrap:anywhere}.inspection-cover>div,.inspection-equipment,.inspection-estimate,.newsletter-paper header,.care-notice,.doc-editor-intro>div,.document-list-row>div{min-width:0;overflow-wrap:anywhere}.care-deliveries>div,.report-photo-option{flex-wrap:wrap}.form-grid input[type=date],.form-grid input[type=time]{width:100%;min-width:0}.switch-label input[type=checkbox],.switch-label input[type=radio]{flex-shrink:0}.table-scroll,.table-wrap{max-width:100%;overscroll-behavior-x:contain}.job-directions,.job-directions>*,.job-address-link{min-width:0}.job-address-link span{overflow-wrap:anywhere}.modal-header>div{min-width:0}.modal-header .icon-button{flex-shrink:0}.modal-body,.modal-footer{min-width:0}.inspection-paper,.newsletter-paper{width:100%;max-width:900px}.newsletter-paper{max-width:700px}
@media(max-width:980px){.care-two-col{grid-template-columns:minmax(0,1fr)}.account-actions{max-width:100%;flex-wrap:wrap}.demo-label,.account-actions>*{min-width:0}}
@media(max-width:760px){input.input,select.input,textarea.input,.public-booking .input,.statistics .input{font-size:16px}.button,.button.small,.icon-button,.mini-tag,.guide-tabs button,.catalog-filters button{min-height:44px}.care-two-col,.inspection-meta{grid-template-columns:minmax(0,1fr)}.guide-toolbar{padding:16px;gap:12px;align-items:center}.guide-toolbar h2{font-size:20px;line-height:1.35;margin:0;flex:1 1 180px}.guide-toolbar .button{min-height:44px}.care-job-actions .button{flex:1 1 130px}.inspection-cover{display:block;padding:24px}.inspection-cover>div:last-child{text-align:left;margin-top:22px}.inspection-content{padding:24px}.care-preview-actions{padding:18px}.care-preview-actions .button{min-height:46px}.care-ai-row{display:block}.care-ai-row button{width:100%;margin-top:12px}.modal-footer{padding-bottom:max(16px,env(safe-area-inset-bottom))}.modal-body .field small{font-size:13px;line-height:1.65}.care-campaign{flex-wrap:wrap}.care-deliveries>div{gap:12px}.inspection-cover h1{font-size:26px}.inspection-meta p,.newsletter-paper footer,.inspection-content footer{font-size:14px}.report-photo-option{font-size:15px}.public-footer a{min-height:36px;display:inline-flex;align-items:center}}
@media(max-width:480px){.page-head .top-actions{width:100%;display:flex;gap:10px;flex-wrap:wrap}.page-head .top-actions>.button{flex:1 1 135px}.inspection-content{padding:22px 18px}.inspection-cover{padding:24px 18px}.inspection-section{gap:12px}.inspection-content p{font-size:15px}.inspection-equipment{padding:18px}.inspection-equipment b{overflow-wrap:anywhere}.inspection-estimate b{font-size:25px}.newsletter-paper main,.newsletter-paper header,.newsletter-paper footer{padding:22px 18px}.care-notice{padding:16px;font-size:14px}#booking-details-form .input{max-width:100%}.care-preview-actions .button{width:100%}.guide-toolbar .button{flex-shrink:0}}
@media print{.inspection-paper,.newsletter-paper{max-width:none;box-shadow:none}.guide-toolbar,.care-preview-actions{display:none!important}}
/* Keep save controls reachable and reserve room for phone safe areas. */
@media(max-width:980px){
 .organised-admin:has(input:focus,textarea:focus,select:focus) .admin-mobile-dock{display:none}
 .admin-content{padding-bottom:calc(105px + env(safe-area-inset-bottom))}
 .admin-mobile-dock{padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right))}
}
@media(max-width:760px){
 dialog#modal{max-height:calc(100dvh - env(safe-area-inset-top))}
 dialog#modal .modal-footer{position:sticky;bottom:0;z-index:4;background:#fff;border-top:1px solid #e3e8ef;box-shadow:0 -4px 16px #1724350a}
 dialog#modal :is(input,select,textarea){scroll-margin-top:110px;scroll-margin-bottom:150px}
 .day-job-detail,.day-job-action,.tech-heading>*,.wage-entry>*{min-width:0;overflow-wrap:anywhere}
 .day-job-action,.tech-heading,.wages-section-title{flex-wrap:wrap}
 .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
 .modal-footer .button,.booking-page-actions .button,.wage-entry-actions .button{min-height:48px;white-space:normal}
}
@media(max-width:420px){
 .booking-filter-fields,.wages-page .wages-filters form{grid-template-columns:minmax(0,1fr)}
 .booking-search{grid-column:auto}
 .wages-hero .wages-actions .button{flex-basis:100%}
}
@media(max-width:980px) and (max-height:500px){
 dialog#modal .modal-header{position:static}
 dialog#modal :is(input,select,textarea){scroll-margin-top:16px}
}
