html{scroll-behavior:auto;scroll-padding-top:0}
main,main :is(.panel,.card,.stack,.grid,.form-grid,.form-layout,.date-type-column,.home-card-fields,.player-chat-section,.chat-layout,.chat-thread,.center-resource){min-width:0}
main :is(h1,h2,h3,h4,p,label,summary,strong),dialog :is(h1,h2,h3,p,label,strong){overflow-wrap:break-word}
main :is(input,select,textarea),dialog :is(input,select,textarea){max-width:100%;min-width:0;box-sizing:border-box}
main :is(button,.outline,.primary),dialog :is(button,.outline,.primary){white-space:normal;line-height:1.4;overflow-wrap:break-word;max-width:100%}
.row-actions{flex-wrap:wrap;gap:9px}
#toast{max-width:calc(100vw - 24px);overflow-wrap:break-word;line-height:1.45}
.player-settings-home :is(.player-anagraphic-package,.player-profile-package,.player-preferences-package)>summary>span:first-child{flex:1;min-width:0}
dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;scroll-padding-top:75px}
dialog .dialog-head{position:sticky;top:-1px;z-index:5;align-items:flex-start;gap:12px;background:inherit;padding:12px 0;margin-top:-8px;box-shadow:0 4px 8px #fff;min-width:0}
dialog .dialog-head h2{flex:1;min-width:0;font-size:clamp(18px,2.2vw,23px);line-height:1.35;margin:0}
dialog .dialog-head button{flex-shrink:0;min-width:44px;min-height:44px}
.shared-date-package>summary{gap:12px}
.shared-date-counts{min-width:0;flex-wrap:wrap}
.shared-date-counts .day-tab-count{white-space:normal}
:is(.card,.panel,.guided-request-package,.home-card-fields,form,.day-package){scroll-margin-top:calc(var(--interaction-bar-offset,112px) + 12px)}
dialog :is(.card,.panel,.guided-request-package,.home-card-fields,form){scroll-margin-top:12px}
@media(min-width:761px){.player-compact main,.center-compact main{width:100%;max-width:1240px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.date-type-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.date-type-columns.single-category{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
 .heading{flex-wrap:wrap;align-items:flex-start;gap:12px}
 main h1{font-size:clamp(22px,6vw,28px)}
 .form-layout,.chat-layout{grid-template-columns:minmax(0,1fr)!important}
 .toolbar{gap:10px}.toolbar>label{min-width:0;max-width:100%}.toolbar select{min-width:0;max-width:100%}
 .date-columns-scroll{overflow-x:auto;max-width:100%;padding-bottom:12px;overscroll-behavior-x:contain}
 .date-type-columns{grid-template-columns:repeat(2,minmax(min(270px,calc(100vw - 50px)),1fr));gap:12px}
 .date-type-columns.single-category{grid-template-columns:minmax(0,1fr)}
 .shared-date-package .day-package-content{padding:9px}
 .date-type-column{padding:10px}.date-type-column>h2{font-size:17px;line-height:1.4}
 .date-type-column .card{padding:14px}
 dialog{width:calc(100vw - 24px);padding:16px;margin:auto}
 dialog .dialog-head{padding:10px 0;background:inherit}
 .player-chat-section .chat-thread>h3{font-size:16px;overflow-wrap:break-word}
 .row-actions>button{flex:1 1 145px;min-height:44px}
}
@media(max-width:600px){.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid>.field,.form-grid>.note{grid-column:1/-1}.field input,.field select,.field textarea{font-size:16px!important}.panel{padding:16px}.center-card-header{padding:15px}.access-role-tabs button,.access-mode-tabs button{font-size:14px;padding:12px 8px;min-width:0}.player-home-heading h1{font-size:24px}}
@media(max-height:500px){dialog{max-height:calc(100dvh - 16px)}dialog .dialog-head{padding:6px 0}main{padding-top:14px!important}}

/* Shared form rules: normal text flow, distinct labels, native-sized choice controls. */
main form,dialog form,main fieldset,dialog fieldset{min-width:0;max-width:100%;box-sizing:border-box}
main form .field,dialog form .field{min-width:0;line-height:1.5;white-space:normal;word-break:normal;letter-spacing:normal}
main form .field> :is(input,select,textarea),dialog form .field> :is(input,select,textarea){max-width:100%;min-width:0;box-sizing:border-box}
main form :is(input[type=checkbox],input[type=radio]),dialog form :is(input[type=checkbox],input[type=radio]){width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;flex:0 0 18px;padding:0}
main form .confirmation-check,dialog form .confirmation-check{align-items:flex-start;gap:9px;line-height:1.5;white-space:normal}
main form :is(input,select,textarea):disabled,dialog form :is(input,select,textarea):disabled{opacity:1;color:#657581;-webkit-text-fill-color:#657581;background-color:#eef2f5}
main form input[readonly],dialog form input[readonly]{opacity:1;color:#425563;-webkit-text-fill-color:#425563}
main form :is(input,select,textarea):not(:disabled),dialog form :is(input,select,textarea):not(:disabled){-webkit-text-fill-color:currentColor}
#centerRegistrationForm .form-grid>.center-court-facilities{grid-column:1/-1;width:100%}
#centerRegistrationForm .court-feature-options{min-width:0}
#centerRegistrationForm .court-feature :is(legend,label){float:none;white-space:normal;word-break:normal;overflow-wrap:normal}
@media(max-width:760px){
 main .form-grid,dialog .form-grid{grid-template-columns:minmax(0,1fr)}
 main form .form-grid>*,dialog form .form-grid>*{min-width:0;max-width:100%}
 main form .field,dialog form .field{font-size:14px}
 main form .field small,dialog form .field small{font-size:13px;line-height:1.5}
 main form .field :is(input,select,textarea):not([type=checkbox]):not([type=radio]),dialog form .field :is(input,select,textarea):not([type=checkbox]):not([type=radio]){font-size:16px;min-height:44px}
 .office-identity-data{grid-template-columns:minmax(0,1fr)}
 .search-origin-fields .geo-choice{min-width:0;line-height:1.5;font-size:14px}
 .search-origin-fields .geo-choice input{flex:0 0 18px}
 #centerRegistrationForm .court-feature-options{grid-template-columns:minmax(0,1fr)}
}
