.profile-copy,.version-description,.version-person small,.staff-card>p,.salon-heading>p{white-space:pre-wrap;overflow-wrap:anywhere}.profile-copy a{overflow-wrap:anywhere;text-decoration:underline}.profile-name{display:flex;align-items:center;gap:22px;margin:24px 0}.profile-name h1{margin:0!important;min-width:0;overflow-wrap:anywhere}.profile-avatar{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;width:48px;height:48px;flex:0 0 48px;padding:0;border:1px solid var(--line);background:#eee5db;color:#826e77;vertical-align:middle}.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar-large{width:100px;height:100px;flex-basis:100px;font-size:34px}.avatar-editor{margin-top:22px}.avatar-current{margin:20px 0}.avatar-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.avatar-view{max-width:92vw;max-height:92dvh;padding:30px}.avatar-view img{display:block;max-width:min(600px,80vw);max-height:75dvh;object-fit:contain}.avatar-view>button{display:block;margin-left:auto;min-width:44px;min-height:44px;font-size:26px}.portfolio-categories{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.photo-presentation{display:flex!important;flex-direction:column;gap:12px!important;align-items:stretch;padding:12px!important}.photo-presentation select{width:100%;font-size:12px;min-width:0}.portfolio-tile{min-width:0}.photo-presentation label{font-size:11px}.new-thumbnail-preview{font-size:12px;color:#6c6358;margin:12px 0}.portfolio-category-empty{padding:24px;border:1px dashed var(--line)}[data-portfolio-gallery] [hidden]{display:none!important}@media(max-width:650px){.profile-name{gap:16px}.profile-avatar-large{width:76px;height:76px;flex-basis:76px}.profile-name h1{font-size:34px!important}.photo-presentation select{font-size:16px}.avatar-actions{flex-direction:column;align-items:stretch}}
/* Pending holds are red; confirmed appointments green. Text labels duplicate colour. */
.booking-pending,.owner-booking.booking-pending{border-left:4px solid #b9444d;background:#fff4f3}
.booking-confirmed,.owner-booking.booking-confirmed{border-left:4px solid #38795d;background:#f2faf5}
.calendar-event.booking-pending{background:#f9dedd;border-color:#b9444d;color:#782b31}
.calendar-event.booking-confirmed{background:#dceee2;border-color:#38795d;color:#24553e}
.booking-consent{margin-top:12px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;overflow-wrap:anywhere;max-width:100%}
.booking-consent>div,.booking-consent>section,.booking-pending-note{flex-basis:100%}
.booking-pending-note{font-size:13px;color:#902f3a}
.booking-proposal{padding:14px;border:1px solid #bc9c72;border-radius:12px;background:#fffaf0}
.booking-proposal>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
#privateContactDialog,#bookingContactDialog{width:min(540px,calc(100vw - 32px));max-height:90dvh;overflow:auto;box-sizing:border-box}
#privateContactDialog label{margin-top:16px}
.booking>div,.owner-booking>div{min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){.booking,.owner-booking{flex-wrap:wrap;gap:16px}.booking-consent .btn{white-space:normal}}
