.person-label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:5px;vertical-align:middle;max-width:100%}.person-name{overflow-wrap:anywhere}.person-badges{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;vertical-align:middle}.user-badge{display:inline-flex;align-items:center;padding:2px 6px;border:1px solid #728a7e;border-radius:7px;font-family:system-ui,sans-serif;font-size:10px;font-weight:750;line-height:1.3;white-space:nowrap;letter-spacing:.015em;background:#e6efe5;color:#183f35}.user-badge-vip{background:#f6df99;color:#624214;border-color:#b6943c}.user-badge-subscription{background:#e6ddfb;color:#483165;border-color:#9982b7}.user-badge-doctor{background:#d5eee9;color:#125344;border-color:#77afa1}.user-badge-admin{background:#f5dcca;color:#713915;border-color:#b78f75}.user-badge-reception{background:#dce9f1;color:#234962}.community-profile .page-title{font-size:2rem}.community-profile .page-title .inline-avatar{width:56px;height:56px}.experience-level{font-size:1.5rem}.experience-summary{margin:20px 0}.experience-progress{width:100%;height:12px;accent-color:#8ba89a;border:0;border-radius:20px;overflow:hidden}.experience-progress::-webkit-progress-bar{background:#597267;border-radius:20px}.experience-progress::-webkit-progress-value{background:#ead491;border-radius:20px}.experience-rules div,.experience-event{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0}.experience-rules dd{white-space:nowrap;font-weight:700}.experience-event small{display:block}.experience-event>span{white-space:nowrap;font-size:.85rem}.experience-event p{overflow-wrap:anywhere}.experience-link{display:inline-block;margin:8px 0}.person-name:focus-visible{outline:2px solid currentColor;outline-offset:3px}@media(max-width:600px){.experience-event{flex-wrap:wrap;gap:8px}.community-profile .page-title{font-size:1.7rem}.experience-rules div{gap:12px}.user-badge{font-size:10px}}

html[data-theme] .user-badge{text-shadow:none!important;font-size:11px}.experience-rules{display:block}.experience-rules dd{margin:0}

html[data-theme] .profile-experience{padding:20px 24px;margin:0 0 24px}.profile-experience-heading,.profile-experience-details{display:flex;align-items:center;justify-content:space-between;gap:10px 24px;flex-wrap:wrap}.profile-experience-heading{margin-bottom:12px}.profile-experience-heading strong{font-size:1.15rem}.profile-experience-heading>span,.profile-experience-details{font-size:.9rem}.profile-experience .experience-progress{display:block;height:14px;margin:0 0 10px}.profile-experience-details a{white-space:nowrap}.profile-greeting{flex-wrap:wrap}@media(max-width:600px){html[data-theme] .profile-experience{padding:18px}.profile-experience-details{gap:8px}.profile-experience-heading>span{font-size:.85rem}}

.person-name .inline-avatar{margin-right:7px}.person-name{display:inline-flex;align-items:center;max-width:100%;overflow-wrap:anywhere}.profile-moderation-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.profile-preview-open{overflow:hidden}dialog.profile-preview{width:calc(100% - 28px);max-width:640px;max-height:90vh;max-height:90dvh;overflow:auto;padding:22px 26px 26px;border:1px solid #adbbac;border-radius:20px;background:#f5f8f0;color:#244b3e;box-shadow:0 24px 90px #0007}dialog.profile-preview::backdrop{background:#071d25a6;backdrop-filter:blur(5px)}.profile-preview-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.profile-preview-header>strong{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.profile-preview-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font-size:26px;line-height:1;cursor:pointer}.profile-preview .panel{padding:0!important;margin:0 0 22px;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;animation:none!important}.profile-preview .page-title{font-size:1.8rem;overflow-wrap:anywhere}.profile-preview .person-label{gap:8px}.profile-preview .person-name{display:inline;overflow-wrap:anywhere}.profile-preview .button{margin:4px 4px 4px 0}.profile-preview-full{display:inline-block;font-size:.9rem}.profile-preview-content[aria-busy=true]{min-height:100px}html[data-theme=dark] dialog.profile-preview{background:#192d3c;color:#f6dfa2;border-color:#768a86}html[data-theme=dark] .profile-preview p{color:#ecd9a7}@media(max-width:600px){dialog.profile-preview{padding:18px}.profile-preview .page-title{font-size:1.55rem}.profile-preview .profile-moderation-actions{gap:6px}.profile-preview .button{font-size:.9rem;padding:12px 14px}}
/* The woodland palette uses gold text in both themes; give the dialog a solid dark surface. */
html[data-theme] dialog.profile-preview{background:#192d3c;color:#f6dfa2;border-color:#768a86}html[data-theme] .profile-preview :is(h1,p,a,button,strong){color:#f6dfa2!important;text-shadow:none!important}html[data-theme] .profile-preview .button{background:#2b464b!important;border-color:#7c9288!important}html[data-theme] .profile-preview-close{font-size:24px!important;background:transparent!important;border-radius:50%!important}

.profile-biography{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 20px;line-height:1.6}

.service-group{margin-top:24px;scroll-margin-top:130px}.service-guide{margin-top:28px}.booking-steps{margin-bottom:24px}.booking-steps ol{display:flex;gap:16px 28px;flex-wrap:wrap;margin:0;padding-left:22px}.booking-steps [aria-current=step]{font-weight:700;text-decoration:underline;text-underline-offset:5px}

.next-appointment{margin:0 0 2rem;border-color:var(--gold,#d0b77b)}.next-appointment h2{margin-top:.5rem}.next-appointment-details{display:flex;gap:1.3rem;align-items:center;margin:1rem 0 1.5rem}.next-appointment-details h3,.next-appointment-details p{margin:.3rem 0}.stats.single{grid-template-columns:1fr}.staff-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;align-items:end}.dashboard-tasks{margin:2.5rem 0}.dashboard-tasks .cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}

html[data-theme] .user-badge{background:var(--glass);color:var(--ink)}
html[data-theme] dialog.profile-preview{background:var(--overlay-glass);color:var(--ink);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html[data-theme] .profile-preview :is(h1,p,a,button,strong){color:var(--ink)!important}
html[data-theme] .profile-preview .button{background:var(--glass)!important}
html[data-theme] .profile-preview .button:hover{background:var(--surface-hover)!important}

