.public-profile{--public-surface:#fff;--public-soft:#f5f7fb;--public-text:#182033;--public-muted:#647089;--public-border:#dfe4ee;color:var(--public-text)}
[data-theme="dark"] .public-profile{--public-surface:#151c2e;--public-soft:#1b2438;--public-text:#edf1fb;--public-muted:#aab4c8;--public-border:#303b54}
@media(prefers-color-scheme:dark){html[data-theme="auto"] .public-profile{--public-surface:#151c2e;--public-soft:#1b2438;--public-text:#edf1fb;--public-muted:#aab4c8;--public-border:#303b54}}
.public-profile .service-choice,.public-profile .professional-card,.public-profile .public-info-card,.public-profile .booking-card,.public-profile .public-waitlist,.professional-availability-summary{background:var(--public-surface);color:var(--public-text);border-color:var(--public-border)}
.public-profile .professional-card strong,.public-profile h2,.public-profile h3{color:var(--public-text)}
.public-profile .professional-card small,.public-profile .service-choice span,.public-profile .text-secondary{color:var(--public-muted)!important}
.public-profile .form-control,.public-profile .form-select{background-color:var(--public-surface);border-color:var(--public-border);color:var(--public-text)}
.public-profile .bg-body-tertiary{background:var(--public-soft)!important;color:var(--public-text)!important}
.professional-availability-summary{margin:28px 0 4px;padding:28px;border:1px solid var(--public-border);border-radius:20px;box-shadow:var(--shadow-sm)}
.availability-status{display:inline-flex;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800;margin-bottom:10px}.availability-status.available{background:#dcfce7;color:#166534}.availability-status.unavailable{background:#fff1f2;color:#9f1239}
[data-theme="dark"] .availability-status.available{background:#123c2a;color:#86efac}[data-theme="dark"] .availability-status.unavailable{background:#4a1723;color:#fda4af}
.booking-random{grid-column:1/-1}.booking-form [data-random-result]{grid-column:1/-1;margin-top:-10px}.public-waitlist{margin-top:24px;padding:30px;border:1px solid var(--public-border);border-radius:22px;box-shadow:var(--shadow-sm)}
.public-waitlist[hidden]{display:none!important}.public-waitlist form{margin-top:18px}
@media(max-width:767.98px){.professional-availability-summary,.public-waitlist{padding:22px}.booking-random,.booking-form [data-random-result]{grid-column:auto}}
