/* Staff have one calendar; server authorization protects the underlying data. */
.arrival-request{margin:20px 0;padding:18px;border:2px solid #2385bd;border-radius:12px;background:#eef8ff;overflow-wrap:anywhere}
.arrival-request h2,.arrival-request h4{margin-top:0}.arrival-request label{display:grid;gap:8px}.arrival-request textarea{width:100%;box-sizing:border-box;font-size:1rem;padding:12px}.arrival-request .checkbox-row{display:flex;align-items:flex-start;gap:10px}
.staff-mode .owner-nav > :not([data-open-screen="member"]):not([data-owner-logout]){display:none!important}
.staff-mode .site-header,.staff-mode #member-screen .back-button,.staff-mode .member-screen-actions,.staff-mode .member-sidebar .member-panel:first-child{display:none!important}
.staff-mode:not(.owner-locked) .screen:not(#member-screen){display:none!important}
.staff-mode .personal-workspace{grid-template-columns:minmax(0,1fr)}
.staff-mode .member-sidebar{display:block}
.staff-mode #member-crew-controls{padding:16px;margin-top:0}
.staff-mode .owner-nav{top:0;z-index:60}
.staff-mode #member-screen.work-screen{padding-top:72px}
.staff-mode #member-screen .workspace-title{margin-top:0}
.owner-locked .screen{display:none!important}
.owner-locked #manager-screen{display:block!important}
.owner-locked .owner-nav > :not([data-owner-logout]){display:none!important}
.member-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
.member-calendar-grid button{min-width:0;min-height:64px;padding:7px 3px}
.member-calendar-grid button small{font-size:.875rem;line-height:1.25;overflow-wrap:anywhere;white-space:normal}
.member-day-detail,.crew-job-item,.personal-calendar-card{min-width:0;overflow-wrap:anywhere}
.crew-job-item input,.crew-job-item select,.crew-job-item textarea{max-width:100%;min-width:0;box-sizing:border-box}
.owner-nav button{min-height:44px}
.member-calendar-head button,.manager-month-button{min-width:44px;min-height:44px}
#customer-booking-screen .container,#customer-booking-body,.owner-login-card,.manager-dashboard>*{min-width:0;box-sizing:border-box}
#customer-booking-body .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#customer-booking-body input,#customer-booking-body select,#customer-booking-body textarea{box-sizing:border-box;min-width:0}
#customer-booking-body p,#customer-booking-body li,.launch-controls p{overflow-wrap:anywhere}
.owner-login-form input{box-sizing:border-box}
@media(max-width:600px){#customer-booking-body .field-grid,.manager-dashboard{grid-template-columns:minmax(0,1fr)}.customer-price{gap:10px;font-size:1rem}.customer-price dd{overflow-wrap:anywhere}.owner-nav{flex-wrap:wrap}.customer-link{padding:14px}.crew-balance{font-size:clamp(1.6rem,8vw,3rem)}}
@media(max-width:600px){.staff-mode #member-screen>.container{padding-left:12px;padding-right:12px}.staff-mode .personal-calendar-card{padding:12px}.staff-mode .workspace-title h1{font-size:32px}.crew-two{grid-template-columns:1fr}.crew-job-item input,.crew-job-item select,.crew-job-item textarea{font-size:16px}}
