.healthcare-hero {
    padding: 32px 0;
}

/* Reviewed clinic rosters in public directory cards. */
.healthcare-result-roster {
    margin-top: 12px;
    padding: 10px 12px;
    border: 1px solid #d7e6f2;
    border-radius: 10px;
    background: #f7fbff;
    color: #153a57;
}

.healthcare-result-roster > strong {
    display: block;
    margin-bottom: 7px;
    font-size: 12px;
    letter-spacing: .02em;
}

.healthcare-result-clinic-list {
    background: transparent;
    border: 0;
    color: inherit;
    margin: 0;
    padding: 0;
}

.healthcare-result-roster-list,
.healthcare-result-clinic-list-items {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.healthcare-result-roster-list > span,
.healthcare-result-clinic-list-items > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #d7e6f2;
    font-size: 12px;
}

.healthcare-result-roster-list > span.is-query-match {
    border-color: #1683d8;
    box-shadow: 0 0 0 2px rgba(22, 131, 216, .10);
}

.healthcare-result-roster-list small {
    color: #5c7487;
}

.healthcare-result-roster-more {
    display: block;
    margin-top: 7px;
    color: #0d65a7;
    font-weight: 700;
}

@media (max-width: 767px) {
    .healthcare-result-roster-list,
    .healthcare-result-clinic-list-items {
        flex-direction: column;
    }

    .healthcare-result-roster-list > span,
    .healthcare-result-clinic-list-items > span {
        width: 100%;
    }
}

/* Provider affiliations sit directly below the specialty tag as one compact,
 * self-contained list. The clinic name is not repeated in the metadata row. */
body.healthcare-search-body .healthcare-result-affiliations {
    margin: 8px 0 6px;
}

body.healthcare-search-body .healthcare-result-affiliations-list {
    background: #f7fbfd;
    border: 1px solid #d5e5ee;
    border-radius: 10px;
    display: grid;
    gap: 0;
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
}

body.healthcare-search-body .healthcare-result-affiliations-list > li {
    align-items: center;
    display: grid;
    gap: 9px;
    grid-template-columns: 30px minmax(0, 1fr);
    min-height: 46px;
    min-width: 0;
    padding: 7px 9px;
}

body.healthcare-search-body .healthcare-result-affiliations-list > li + li {
    border-top: 1px solid #dcebe8;
}

body.healthcare-search-body .healthcare-result-affiliations-marker {
    align-items: center;
    background: #f4faf9;
    border: 1px solid #cfe9e4;
    border-radius: 9px;
    color: #087b72;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

body.healthcare-search-body .healthcare-result-affiliations-marker i {
    font-size: 12px;
}

body.healthcare-search-body .healthcare-result-affiliations-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-affiliations-copy b,
body.healthcare-search-body .healthcare-result-affiliations-copy small {
    display: block;
    overflow-wrap: anywhere;
}

body.healthcare-search-body .healthcare-result-affiliations-copy b {
    color: #102f4a;
    font-size: 13px;
    line-height: 1.25;
}

body.healthcare-search-body .healthcare-result-affiliations-copy small {
    align-items: center;
    color: #60798c;
    display: flex;
    font-size: 12px;
    gap: 5px;
    line-height: 1.25;
}

body.healthcare-search-body .healthcare-result-affiliations-copy small i {
    color: #0a84c6;
    font-size: 10px;
}

@media (max-width: 767px) {
    body.healthcare-search-body .healthcare-result-affiliations {
        margin-top: 8px;
    }

    body.healthcare-search-body .healthcare-result-affiliations-list > li {
        min-height: 48px;
    }
}

.hp-pro-support-account-form {
    margin: 0;
}

.hp-pro-support-account-form .hp-pro-support-account {
    width: 100%;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.hp-clinician-appointment-form-fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

/* Superadmin clinic directory and organization tree. */
.hp-admin-clinics,
.hp-admin-clinic-detail {
    --hp-admin-ink: #082f49;
    --hp-admin-muted: #5d7487;
    --hp-admin-line: #d7e5ed;
    --hp-admin-soft: #f2f8fb;
    --hp-admin-teal: #008f83;
    --hp-admin-blue: #0b67b2;
}

.hp-admin-clinics__header,
.hp-admin-clinic-detail__hero {
    align-items: center;
    background: linear-gradient(135deg, #083b5a 0%, #075270 56%, #087f7a 100%);
    border-radius: 14px;
    color: #fff;
    display: flex;
    justify-content: space-between;
    margin-bottom: 18px;
    overflow: hidden;
    padding: 24px 28px;
    position: relative;
}

.hp-admin-clinics__header::after,
.hp-admin-clinic-detail__hero::after {
    background: rgba(255, 255, 255, .07);
    border-radius: 999px;
    content: "";
    height: 210px;
    position: absolute;
    right: -55px;
    top: -85px;
    width: 210px;
}

.hp-admin-clinics__header > *,
.hp-admin-clinic-detail__hero > * { position: relative; z-index: 1; }
.hp-admin-clinics__header h1,
.hp-admin-clinic-detail__hero h1 { color: #fff; font-size: 28px; font-weight: 750; margin: 3px 0 6px; }
.hp-admin-clinics__header p { color: rgba(255, 255, 255, .82); margin: 0; max-width: 720px; }
.hp-admin-clinics__eyebrow,
.hp-admin-clinic-detail__identity p { color: #6ee7d8 !important; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.hp-admin-clinics__header .btn { background: #fff; border-color: #fff; color: #074767; }

.hp-admin-clinic-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 18px;
}
.hp-admin-clinic-stats > div {
    align-items: center;
    background: #fff;
    border: 1px solid var(--hp-admin-line);
    border-radius: 12px;
    display: flex;
    gap: 12px;
    padding: 16px 18px;
}
.hp-admin-clinic-stats strong { color: var(--hp-admin-ink); font-size: 24px; }
.hp-admin-clinic-stats span { color: var(--hp-admin-muted); }
.hp-admin-clinics__panel .panel-body { padding: 20px; }
.hp-admin-clinic-search { align-items: center; display: flex; gap: 12px; margin-bottom: 20px; }
.hp-admin-clinic-search .input-group { max-width: 650px; width: 100%; }
.hp-admin-clinic-search .form-control,
.hp-admin-clinic-search .input-group-addon,
.hp-admin-clinic-search .btn { height: 42px; }
.hp-admin-clinic-list { display: grid; gap: 10px; }
.hp-admin-clinic-row {
    align-items: center;
    border: 1px solid var(--hp-admin-line);
    border-radius: 12px;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(250px, 1.5fr) minmax(190px, 1fr) minmax(220px, 1fr) auto auto;
    padding: 15px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.hp-admin-clinic-row:hover { border-color: #9cc8dc; box-shadow: 0 8px 22px rgba(8, 47, 73, .08); transform: translateY(-1px); }
.hp-admin-clinic-row__identity { align-items: center; display: flex; gap: 13px; min-width: 0; }
.hp-admin-clinic-row__icon,
.hp-admin-clinic-detail__identity > span {
    align-items: center;
    background: #e1f7f3;
    border-radius: 11px;
    color: var(--hp-admin-teal);
    display: inline-flex;
    flex: 0 0 44px;
    height: 44px;
    justify-content: center;
}
.hp-admin-clinic-row h2 { font-size: 16px; font-weight: 750; margin: 0 0 4px; }
.hp-admin-clinic-row h2 a { color: var(--hp-admin-ink); }
.hp-admin-clinic-row p,
.hp-admin-clinic-row small { color: var(--hp-admin-muted); margin: 0; }
.hp-admin-clinic-row__owner { display: flex; flex-direction: column; min-width: 0; }
.hp-admin-clinic-row__owner > span { color: var(--hp-admin-muted); font-size: 11px; text-transform: uppercase; }
.hp-admin-clinic-row__owner strong,
.hp-admin-clinic-row__owner small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-admin-clinic-row__counts { display: flex; flex-wrap: wrap; gap: 7px; }
.hp-admin-clinic-row__counts span { background: var(--hp-admin-soft); border-radius: 999px; color: var(--hp-admin-muted); font-size: 12px; padding: 5px 9px; }
.hp-admin-clinic-row__counts strong { color: var(--hp-admin-ink); }
.hp-admin-clinic-row__action { white-space: nowrap; }
.hp-admin-clinics__empty { color: var(--hp-admin-muted); padding: 46px 20px; text-align: center; }
.hp-admin-clinics__empty i { font-size: 30px; margin-bottom: 8px; }

.hp-admin-clinic-detail__back { margin-bottom: 12px; }
.hp-admin-clinic-detail__back a { color: var(--hp-admin-muted); font-weight: 650; }
.hp-admin-clinic-detail__identity { align-items: center; display: flex; gap: 16px; }
.hp-admin-clinic-detail__identity > span { background: rgba(255, 255, 255, .14); color: #fff; flex-basis: 52px; height: 52px; }
.hp-admin-clinic-detail__identity p { margin: 0; }
.hp-admin-clinic-detail__meta { align-items: center; color: rgba(255, 255, 255, .8); display: flex; flex-wrap: wrap; gap: 10px; }
.hp-admin-clinic-detail__actions { align-items: flex-end; display: flex; flex-direction: column; gap: 10px; }
.hp-admin-clinic-detail__actions form { margin: 0; }
.hp-admin-clinic-detail__actions .btn { background: #fff; border-color: #fff; color: #074767; font-weight: 750; min-height: 40px; }
.hp-admin-clinic-detail__actions .btn[disabled] { background: rgba(255,255,255,.22); border-color: rgba(255,255,255,.3); color: rgba(255,255,255,.72); }
.hp-admin-clinic-detail__stats { display: flex; gap: 10px; }
.hp-admin-clinic-detail__stats div { background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .16); border-radius: 10px; min-width: 92px; padding: 10px 13px; text-align: center; }
.hp-admin-clinic-detail__stats strong,
.hp-admin-clinic-detail__stats span { display: block; }
.hp-admin-clinic-detail__stats strong { color: #fff; font-size: 22px; }
.hp-admin-clinic-detail__stats span { color: rgba(255, 255, 255, .74); font-size: 11px; }
.hp-admin-clinic-detail__grid { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr) 380px; }
.hp-admin-clinic-detail .panel_s { border: 1px solid var(--hp-admin-line); border-radius: 12px; box-shadow: none; overflow: hidden; }
.hp-admin-clinic-detail .panel-body { padding: 20px; }
.hp-clinic-section-heading { align-items: center; display: flex; justify-content: space-between; margin-bottom: 22px; }
.hp-clinic-section-heading p { color: var(--hp-admin-teal); font-size: 11px; font-weight: 800; letter-spacing: .06em; margin: 0 0 3px; text-transform: uppercase; }
.hp-clinic-section-heading h2 { color: var(--hp-admin-ink); font-size: 21px; font-weight: 750; margin: 0 0 3px; }
.hp-clinic-section-heading span { color: var(--hp-admin-muted); }

.hp-clinic-org { background: var(--hp-admin-soft); border-radius: 12px; min-height: 300px; overflow-x: auto; padding: 24px; text-align: center; }
.hp-clinic-org__node {
    align-items: center;
    background: #fff;
    border: 1px solid #c9dce7;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(8, 47, 73, .06);
    display: inline-flex;
    gap: 11px;
    min-width: 245px;
    padding: 12px;
    position: relative;
    text-align: left;
}
.hp-clinic-org__node > div { display: flex; flex-direction: column; min-width: 0; }
.hp-clinic-org__node small { color: var(--hp-admin-teal); font-size: 10px; font-weight: 750; text-transform: uppercase; }
.hp-clinic-org__node strong { color: var(--hp-admin-ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-clinic-org__node span:not(.hp-clinic-org__avatar):not(.hp-clinic-org__node-icon) { color: var(--hp-admin-muted); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-clinic-org__node > a { align-items: center; background: var(--hp-admin-soft); border-radius: 7px; color: var(--hp-admin-blue); display: inline-flex; height: 30px; justify-content: center; margin-left: auto; width: 30px; }
.hp-clinic-org__node--clinic { border-top: 4px solid var(--hp-admin-blue); }
.hp-clinic-org__node--owner { border-top: 4px solid var(--hp-admin-teal); }
.hp-clinic-org__node--missing { border-color: #f1c684; }
.hp-clinic-org__node-icon,
.hp-clinic-org__avatar { align-items: center; background: #e3f3fb; border-radius: 50%; color: var(--hp-admin-blue); display: inline-flex; flex: 0 0 38px; font-size: 12px; font-weight: 800; height: 38px; justify-content: center; }
.hp-clinic-org__node--owner .hp-clinic-org__avatar { background: #dcf6f1; color: var(--hp-admin-teal); }
.hp-clinic-org__connector { background: #89b8d2; height: 28px; margin: 0 auto; width: 2px; }
.hp-clinic-org__connector--team { height: 32px; }
.hp-clinic-org__team { display: flex; gap: 16px; justify-content: center; min-width: max-content; position: relative; }
.hp-clinic-org__team::before { background: #89b8d2; content: ""; height: 2px; left: 10%; position: absolute; right: 10%; top: 0; }
.hp-clinic-org__branch { padding-top: 22px; position: relative; width: 265px; }
.hp-clinic-org__branch::before { background: #89b8d2; content: ""; height: 22px; left: 50%; position: absolute; top: 0; width: 2px; }
.hp-clinic-org__branch .hp-clinic-org__node { display: flex; min-width: 0; width: 100%; }
.hp-clinic-org__scope { background: #fff; border: 1px solid #dce8ef; border-radius: 9px; margin-top: 9px; padding: 10px; text-align: left; }
.hp-clinic-org__scope > span { color: var(--hp-admin-muted); display: block; font-size: 10px; font-weight: 750; margin-bottom: 6px; text-transform: uppercase; }
.hp-clinic-org__scope ul { list-style: none; margin: 0; padding: 0; }
.hp-clinic-org__scope li { align-items: center; border-top: 1px solid #edf3f6; display: flex; gap: 8px; padding: 7px 0; }
.hp-clinic-org__scope li:first-child { border-top: 0; }
.hp-clinic-org__scope li > i { color: var(--hp-admin-teal); }
.hp-clinic-org__scope li > span { display: flex; flex-direction: column; min-width: 0; }
.hp-clinic-org__scope li strong { color: var(--hp-admin-ink); font-size: 12px; }
.hp-clinic-org__scope li small { color: var(--hp-admin-muted); font-size: 10px; }
.hp-clinic-org__scope li.is-inactive { opacity: .55; }
.hp-clinic-org__empty { color: var(--hp-admin-muted); padding: 25px; }

.hp-clinic-location-list { display: grid; gap: 8px; }
.hp-clinic-location-list > a { align-items: center; border: 1px solid var(--hp-admin-line); border-radius: 9px; color: var(--hp-admin-ink); display: flex; gap: 12px; padding: 11px 13px; }
.hp-clinic-location-list > a > i:first-child { color: var(--hp-admin-teal); }
.hp-clinic-location-list > a > span:nth-child(2) { display: flex; flex: 1; flex-direction: column; }
.hp-clinic-location-list small { color: var(--hp-admin-muted); }
.hp-clinic-member-panel { position: sticky; top: 75px; }
.hp-clinic-member-panel .panel-heading { align-items: center; background: #0a405f; color: #fff; display: flex; justify-content: space-between; padding: 14px 16px; }
.hp-clinic-member-panel .panel-heading div { display: flex; flex-direction: column; }
.hp-clinic-member-panel .panel-heading small { color: #73e3d5; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.hp-clinic-member-panel .panel-heading strong { font-size: 16px; }
.hp-clinic-member-panel .panel-footer { background: #fff; border-top: 1px solid var(--hp-admin-line); padding: 14px 16px; }
.hp-clinic-member-panel h3,
.hp-clinic-account-panel h3,
.hp-clinic-danger-panel h3,
.hp-clinic-owner-panel h3 { color: var(--hp-admin-ink); font-size: 14px; font-weight: 750; margin: 4px 0 10px; }
.hp-clinic-member-scope,
.hp-clinic-member-capabilities { border-top: 1px solid var(--hp-admin-line); margin-top: 16px; padding-top: 12px; }
.hp-clinic-member-capabilities { display: grid; grid-template-columns: 1fr 1fr; }
.hp-clinic-member-capabilities h3 { grid-column: 1 / -1; }
.hp-readonly-field { background: var(--hp-admin-soft); border: 1px solid var(--hp-admin-line); border-radius: 6px; color: var(--hp-admin-ink); padding: 9px 11px; }
.hp-field-help { font-size: 11px; margin-top: -10px; }
.hp-clinic-account-panel p,
.hp-clinic-danger-panel p,
.hp-clinic-owner-panel p { color: var(--hp-admin-muted); }
.hp-clinic-danger-panel { border-color: #f4c9c9 !important; }

@media (max-width: 1199px) {
    .hp-admin-clinic-row { grid-template-columns: minmax(230px, 1.5fr) 1fr 1fr auto; }
    .hp-admin-clinic-row__status { display: none; }
    .hp-admin-clinic-detail__grid { grid-template-columns: minmax(0, 1fr) 340px; }
}

@media (max-width: 991px) {
    .hp-admin-clinic-row { grid-template-columns: 1fr 1fr; }
    .hp-admin-clinic-row__action { justify-self: end; }
    .hp-admin-clinic-detail__grid { grid-template-columns: 1fr; }
    .hp-clinic-member-panel { position: static; }
}

@media (max-width: 767px) {
    .hp-admin-clinics__header,
    .hp-admin-clinic-detail__hero { align-items: flex-start; flex-direction: column; gap: 16px; padding: 20px; }
    .hp-admin-clinic-stats { grid-template-columns: 1fr; }
    .hp-admin-clinic-search { align-items: stretch; flex-direction: column; }
    .hp-admin-clinic-row { display: flex; flex-direction: column; align-items: stretch; }
    .hp-admin-clinic-row__action { align-self: stretch; text-align: center; }
    .hp-admin-clinic-detail__stats { width: 100%; }
    .hp-admin-clinic-detail__actions { align-items: stretch; width: 100%; }
    .hp-admin-clinic-detail__actions form,
    .hp-admin-clinic-detail__actions .btn { width: 100%; }
    .hp-admin-clinic-detail__stats div { flex: 1; min-width: 0; }
    .hp-clinic-section-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
    .hp-clinic-org { padding: 16px 12px; text-align: left; }
    .hp-clinic-org__node { display: flex; min-width: 0; width: 100%; }
    .hp-clinic-org__connector { margin-left: 24px; }
    .hp-clinic-org__team { display: grid; min-width: 0; width: 100%; }
    .hp-clinic-org__team::before { bottom: 0; height: auto; left: 24px; right: auto; top: 0; width: 2px; }
    .hp-clinic-org__branch { padding-left: 42px; padding-top: 0; width: 100%; }
    .hp-clinic-org__branch::before { height: 2px; left: 24px; top: 24px; width: 18px; }
    .hp-clinic-member-capabilities { grid-template-columns: 1fr; }
    .hp-clinic-member-capabilities h3 { grid-column: auto; }
}

.hp-bank-clinic-context { align-items: center; background: #f2f8fb; border: 1px solid #d7e5ed; border-radius: 8px; display: flex; justify-content: space-between; margin: 12px 0; padding: 10px 12px; }
.hp-bank-clinic-context > span { color: #5d7487; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.hp-bank-clinic-context > a { align-items: center; color: #0b67b2; display: inline-flex; font-weight: 750; gap: 8px; }
.hp-bank-clinic-context > a small { color: #5d7487; font-weight: 500; }
@media (max-width: 600px) { .hp-bank-clinic-context { align-items: stretch; flex-direction: column; gap: 7px; } .hp-bank-clinic-context > a { justify-content: space-between; } }

/* Clinic owner weekly appointment board. */
.hp-clinician-toggle [data-hp-agenda-view="team"] {
    align-items: center;
    display: inline-flex;
    gap: 7px;
}

.hp-clinician-agenda-shell.is-clinic-board {
    grid-template-columns: minmax(0, 1fr);
}

.hp-clinician-agenda-shell.is-clinic-board .hp-clinician-left-panel {
    display: none;
}

.hp-clinic-doctor-filter {
    position: relative;
    z-index: 18;
}

.hp-clinic-doctor-filter > button {
    min-width: 190px;
}

.hp-clinic-doctor-filter-menu {
    background: #fff;
    border: 1px solid #c9dde9;
    border-radius: 12px;
    box-shadow: 0 20px 46px rgba(5, 36, 62, .18);
    max-height: min(440px, calc(100vh - 150px));
    min-width: 310px;
    overflow-y: auto;
    padding: 10px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
}

.hp-clinic-doctor-filter-menu > div {
    align-items: center;
    border-bottom: 1px solid #e2edf3;
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
    padding: 5px 5px 10px;
}

.hp-clinic-doctor-filter-menu > div strong {
    color: #082d4a;
    font-size: 14px;
}

.hp-clinic-doctor-filter-menu > div button {
    background: transparent;
    border: 0;
    color: #0879c9;
    font-size: 12px;
    font-weight: 850;
    padding: 7px;
}

.hp-clinic-doctor-filter-menu label {
    align-items: center;
    border-radius: 9px;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: 20px minmax(0, 1fr);
    margin: 0;
    min-height: 54px;
    padding: 8px;
}

.hp-clinic-doctor-filter-menu label:hover {
    background: #f0f8fc;
}

.hp-clinic-doctor-filter-menu input {
    height: 18px;
    margin: 0;
    width: 18px;
}

.hp-clinic-doctor-filter-menu label span,
.hp-clinic-doctor-filter-menu label strong,
.hp-clinic-doctor-filter-menu label small {
    display: block;
}

.hp-clinic-doctor-filter-menu label strong {
    color: #123b58;
    font-size: 13px;
}

.hp-clinic-doctor-filter-menu label small {
    color: #6d8799;
    margin-top: 2px;
}

.hp-clinic-week-board {
    background: linear-gradient(180deg, #f8fbfd 0, #eef6fa 100%);
    min-height: 650px;
    padding: 18px;
}

.hp-clinic-week-board-intro {
    align-items: end;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.hp-clinic-week-board-intro h2 {
    color: #082d4a;
    font-size: 22px;
    font-weight: 900;
    margin: 2px 0 0;
}

.hp-clinic-week-board-intro > p {
    color: #58778c;
    line-height: 1.45;
    margin: 0;
    max-width: 560px;
    text-align: right;
}

.hp-clinic-kanban {
    display: grid;
    gap: 14px;
    grid-auto-columns: minmax(290px, 1fr);
    grid-auto-flow: column;
    min-width: 100%;
    overflow-x: auto;
    padding: 2px 2px 14px;
    scrollbar-width: thin;
}

.hp-clinic-kanban-lane {
    background: #fff;
    border: 1px solid #cddfea;
    border-radius: 13px;
    box-shadow: 0 10px 28px rgba(9, 45, 73, .06);
    min-height: 540px;
    overflow: hidden;
}

.hp-clinic-kanban-lane > header {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #dce8ef;
    display: grid;
    gap: 10px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    min-height: 78px;
    padding: 12px;
    position: sticky;
    top: 0;
    z-index: 2;
}

.hp-clinic-doctor-avatar {
    align-items: center;
    background: linear-gradient(135deg, #0e82cf, #0a9b8b);
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-clinic-kanban-lane h3 {
    color: #082d4a;
    font-size: 15px;
    font-weight: 900;
    margin: 0;
}

.hp-clinic-kanban-lane header p {
    color: #648093;
    font-size: 12px;
    margin: 3px 0 0;
}

.hp-clinic-lane-actions {
    align-items: center;
    display: flex;
    gap: 8px;
}

.hp-clinic-lane-actions > strong {
    background: #e8f5fb;
    border-radius: 999px;
    color: #096da9;
    font-size: 11px;
    padding: 6px 8px;
    white-space: nowrap;
}

.hp-clinic-lane-actions > button {
    align-items: center;
    background: #087f70;
    border: 1px solid #087f70;
    border-radius: 10px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 44px;
    height: 44px;
    justify-content: center;
    touch-action: manipulation;
    transition: background-color .18s ease, box-shadow .18s ease;
    width: 44px;
}

.hp-clinic-lane-actions > button:hover,
.hp-clinic-lane-actions > button:focus-visible { background: #06695e; box-shadow: 0 0 0 3px rgba(8,127,112,.18); outline: 0; }

.hp-clinic-kanban-cards {
    display: grid;
    gap: 10px;
    padding: 12px;
}

.hp-clinic-appointment-card {
    background: #fff;
    border: 1px solid #d4e3ec;
    border-left: 4px solid #1684cf;
    border-radius: 10px;
    color: #163e59;
    display: grid;
    gap: 6px;
    min-height: 116px;
    padding: 11px 12px;
    text-align: left;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    width: 100%;
}

.hp-clinic-appointment-card:hover,
.hp-clinic-appointment-card:focus-visible {
    border-color: #79b9df;
    box-shadow: 0 10px 24px rgba(9, 81, 129, .13);
    outline: 0;
    transform: translateY(-1px);
}

.hp-clinic-appointment-card.is-completed {
    border-left-color: #16876f;
}

.hp-clinic-appointment-card.is-cancelled {
    border-left-color: #a4b2bc;
    opacity: .72;
}

.hp-clinic-appointment-card.is-no_show {
    border-left-color: #d97706;
}

.hp-clinic-card-date {
    color: #668398;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.hp-clinic-card-date i {
    color: #0c84ca;
    margin-right: 6px;
}

.hp-clinic-appointment-card > strong {
    color: #082d4a;
    font-size: 14px;
}

.hp-clinic-appointment-card > span:not(.hp-clinic-card-date) {
    color: #547287;
    font-size: 12px;
}

.hp-clinic-appointment-card > small {
    background: #eaf5fb;
    border-radius: 999px;
    color: #0b6fae;
    font-size: 10px;
    font-weight: 900;
    justify-self: start;
    padding: 4px 7px;
}

.hp-clinic-appointment-card > small.is-completed {
    background: #e2f5ef;
    color: #08725d;
}

.hp-clinic-appointment-card > small.is-cancelled,
.hp-clinic-appointment-card > small.is-no_show {
    background: #f2f4f6;
    color: #65737d;
}

.hp-clinic-kanban-empty,
.hp-clinic-board-empty {
    align-items: center;
    color: #6b8496;
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
    min-height: 180px;
    padding: 24px;
    text-align: center;
}

.hp-clinic-kanban-empty i,
.hp-clinic-board-empty i {
    color: #82b5cf;
    font-size: 26px;
}

/* Account settings: secure identity, professional profile and clinic team access. */
.hp-account-settings-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    margin-bottom: 22px;
}

.hp-settings-panel,
.hp-team-settings {
    border: 1px solid #cfe0eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(9, 53, 78, .06);
}

.hp-settings-panel {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 22px;
}

.hp-settings-panel__head {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    padding-bottom: 18px;
    border-bottom: 1px solid #e4edf3;
}

.hp-settings-panel__head h2,
.hp-team-settings__head h2 {
    margin: 2px 0 5px;
    color: #082f49;
    font-size: 21px;
    line-height: 1.2;
}

.hp-settings-panel__head p,
.hp-team-settings__head p {
    margin: 0;
    color: #587287;
    line-height: 1.55;
}

.hp-settings-panel__icon {
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    color: #087f8c;
    background: #e5f8f7;
    font-size: 18px;
}

.hp-settings-form {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding-top: 18px;
}

.hp-settings-form__grid,
.hp-team-form__identity {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.hp-settings-form label,
.hp-team-form label {
    display: grid;
    gap: 7px;
    min-width: 0;
    color: #173b55;
    font-weight: 700;
}

.hp-settings-form__wide,
.hp-team-form__wide {
    grid-column: 1 / -1;
}

.hp-settings-form input,
.hp-team-form input[type="text"],
.hp-team-form input[type="email"],
.hp-team-form select {
    width: 100%;
    min-height: 44px;
    border: 1px solid #bfd4e2;
    border-radius: 11px;
    padding: 10px 12px;
    color: #082f49;
    background: #fff;
    font: inherit;
    font-weight: 500;
}

.hp-settings-form input:focus,
.hp-team-form input:focus,
.hp-team-form select:focus {
    border-color: #0c8f9d;
    outline: 3px solid rgba(12, 143, 157, .13);
}

.hp-settings-form label small {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    color: #648095;
    font-weight: 500;
    line-height: 1.4;
}

.hp-settings-form footer,
.hp-settings-panel > footer,
.hp-team-form footer {
    display: flex;
    justify-content: flex-end;
    margin-top: auto;
    padding-top: 18px;
}

.hp-profile-settings-summary {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 0 14px;
}

.hp-profile-settings-avatar,
.hp-team-member-avatar {
    display: inline-flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    color: #087f8c;
    background: #e4f6f8;
    font-weight: 800;
}

.hp-profile-settings-summary div {
    display: grid;
    gap: 3px;
}

.hp-profile-settings-summary strong {
    color: #082f49;
    font-size: 16px;
}

.hp-profile-settings-summary small {
    color: #668094;
}

.hp-settings-service-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hp-settings-service-list > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid #c7e9e6;
    border-radius: 999px;
    padding: 7px 10px;
    color: #126b70;
    background: #f0fbfa;
    font-size: 12px;
    font-weight: 700;
}

.hp-settings-service-list > span small {
    color: #668094;
    font-weight: 600;
}

.hp-settings-service-list > p {
    margin: 4px 0;
    color: #7a8f9e;
}

.hp-team-settings {
    margin-bottom: 22px;
    padding: 24px;
}

.hp-team-settings__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
    padding-bottom: 20px;
}

.hp-team-capacity {
    display: grid;
    flex: 0 0 auto;
    gap: 2px;
    min-width: 92px;
    border: 1px solid #bfe4df;
    border-radius: 14px;
    padding: 10px 14px;
    color: #477083;
    background: #f1fbfa;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
}

.hp-team-capacity strong {
    color: #087f8c;
    font-size: 20px;
}

.hp-team-plan-notice,
.hp-team-limit-notice {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #f0d8a3;
    border-radius: 13px;
    padding: 14px;
    color: #78500a;
    background: #fffaf0;
}

.hp-team-plan-notice span {
    display: grid;
    flex: 1;
    gap: 2px;
}

.hp-team-plan-notice small {
    color: #8d6c2f;
}

.hp-team-plan-notice a {
    border-radius: 10px;
    padding: 9px 12px;
    color: #fff;
    background: #0b5d75;
    font-weight: 800;
    text-decoration: none;
}

.hp-team-editor {
    border: 1px solid #d5e3ec;
    border-radius: 14px;
    background: #f9fcfd;
}

.hp-team-editor--new {
    margin-bottom: 16px;
}

.hp-team-editor > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 54px;
    padding: 12px 15px;
    color: #0a3b58;
    cursor: pointer;
    list-style: none;
}

.hp-team-editor > summary::-webkit-details-marker {
    display: none;
}

.hp-team-editor > summary > span {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hp-team-editor > summary > span small {
    color: #6b8293;
    font-weight: 500;
}

.hp-team-editor[open] > summary > .fa-chevron-down {
    transform: rotate(180deg);
}

.hp-team-form {
    display: grid;
    gap: 16px;
    border-top: 1px solid #dce8ef;
    padding: 18px;
}

.hp-team-form fieldset {
    min-width: 0;
    margin: 0;
    border: 0;
    padding: 0;
}

.hp-team-form legend {
    margin-bottom: 9px;
    color: #173b55;
    font-size: 13px;
    font-weight: 800;
}

.hp-team-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.hp-team-choice-grid label,
.hp-team-all-access {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border: 1px solid #d7e5ec;
    border-radius: 11px;
    padding: 10px;
    color: #274e65;
    background: #fff;
    font-size: 12px;
    font-weight: 700;
}

.hp-team-choice-grid input,
.hp-team-all-access input {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    margin: 1px 0 0;
    accent-color: #078b91;
}

.hp-team-choice-grid label span,
.hp-team-all-access span {
    display: grid;
    gap: 2px;
}

.hp-team-choice-grid label small,
.hp-team-all-access small {
    color: #71899a;
    font-weight: 500;
}

.hp-team-choice-grid--permissions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hp-team-member-list {
    display: grid;
    gap: 12px;
}

.hp-team-member-card {
    position: relative;
    display: grid;
    gap: 12px;
    border: 1px solid #d5e3ec;
    border-radius: 15px;
    padding: 15px;
    background: #fff;
}

.hp-team-member-card__summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 11px;
}

.hp-team-member-card__summary > div {
    display: grid;
    flex: 1;
    min-width: 0;
    gap: 2px;
}

.hp-team-member-card__summary strong,
.hp-team-member-card__summary small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-team-member-card__summary strong {
    color: #092f49;
}

.hp-team-member-card__summary small {
    color: #688194;
}

.hp-team-member-card__summary em {
    border-radius: 999px;
    padding: 6px 9px;
    color: #087f8c;
    background: #e8f8f7;
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
    flex: 0 1 auto;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-align: center;
    white-space: normal;
}

.hp-team-member-card__scope {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hp-team-member-card__scope span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #607b8d;
    font-size: 12px;
}

.hp-team-remove-form {
    display: flex;
    justify-content: flex-end;
}

.hp-team-remove-form button {
    border: 0;
    padding: 4px 0;
    color: #a64242;
    background: transparent;
    font-weight: 700;
}

.hp-team-remove-form button i {
    margin-right: 6px;
}

.hp-form-help {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    color: #688194;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.45;
}

@media (max-width: 980px) {
    .hp-account-settings-grid {
        grid-template-columns: 1fr;
    }

    .hp-team-choice-grid--permissions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .hp-settings-panel,
    .hp-team-settings {
        border-radius: 15px;
        padding: 17px;
    }

    .hp-settings-form__grid,
    .hp-team-form__identity,
    .hp-team-choice-grid,
    .hp-team-choice-grid--permissions {
        grid-template-columns: 1fr;
    }

    .hp-team-settings__head,
    .hp-team-plan-notice {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-team-capacity {
        align-self: flex-start;
    }

    .hp-team-editor > summary > span {
        align-items: flex-start;
    }

    .hp-team-editor > summary > span small {
        display: none;
    }

    .hp-team-member-card__summary {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .hp-team-member-card__summary > div {
        width: calc(100% - 58px);
    }
}

/* Professional task manager */
[data-hp-section="tasks"] [hidden] {
    display: none !important;
}

.hp-clinician-task-heading {
    align-items: flex-end;
    display: flex;
    gap: 24px;
    justify-content: space-between;
}

.hp-clinician-task-add {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 9px;
    justify-content: center;
    min-height: 46px;
}

.hp-clinician-task-composer {
    background: #f4f9fc;
    border: 1px solid #cfe0ec;
    border-radius: 16px;
    display: grid;
    gap: 18px;
    padding: 20px;
}

.hp-clinician-task-composer__head {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
}

.hp-clinician-task-composer__head span {
    color: #087f78;
    display: block;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    margin-bottom: 3px;
    text-transform: uppercase;
}

.hp-clinician-task-composer__head h2 {
    color: #08233f;
    font-size: 21px;
    font-weight: 900;
    margin: 0;
}

.hp-clinician-task-composer__head > button,
.hp-clinician-task-card__actions button {
    align-items: center;
    background: #fff;
    border: 1px solid #d1e0ea;
    border-radius: 10px;
    color: #496b84;
    display: inline-flex;
    height: 40px;
    justify-content: center;
    padding: 0;
    width: 40px;
}

.hp-clinician-task-composer__head > button:hover,
.hp-clinician-task-card__actions button:hover {
    border-color: #0b77bd;
    color: #0b77bd;
}

.hp-clinician-task-composer__grid {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(240px, 2fr) minmax(170px, 1fr) minmax(150px, .8fr) minmax(130px, .65fr);
}

.hp-clinician-task-composer__grid label {
    color: #254b68;
    display: grid;
    font-size: 13px;
    font-weight: 800;
    gap: 7px;
    margin: 0;
    min-width: 0;
}

.hp-clinician-task-composer__grid input,
.hp-clinician-task-composer__grid select {
    background: #fff;
    border: 1px solid #bfd4e2;
    border-radius: 10px;
    color: #08233f;
    font: inherit;
    font-weight: 600;
    min-height: 44px;
    padding: 0 12px;
    width: 100%;
}

.hp-clinician-task-composer__grid input:focus,
.hp-clinician-task-composer__grid select:focus {
    border-color: #1384cf;
    box-shadow: 0 0 0 3px rgba(19, 132, 207, .12);
    outline: none;
}

.hp-clinician-task-composer__actions {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.hp-clinician-task-composer__actions .hp-clinician-primary-action {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
}

.hp-clinician-task-secondary {
    background: transparent;
    border: 0;
    color: #496b84;
    font-weight: 850;
    min-height: 42px;
    padding: 0 14px;
}

.hp-clinician-task-toolbar {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
}

.hp-clinician-task-filters {
    background: #edf5f9;
    border-radius: 11px;
    display: inline-flex;
    gap: 2px;
    padding: 4px;
}

.hp-clinician-task-filters button {
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #496b84;
    font-size: 13px;
    font-weight: 850;
    min-height: 36px;
    padding: 0 14px;
}

.hp-clinician-task-filters button.active {
    background: #fff;
    box-shadow: 0 1px 4px rgba(8, 35, 63, .1);
    color: #087f78;
}

.hp-clinician-task-summary {
    color: #5b778d;
    font-size: 13px;
    font-weight: 750;
}

.hp-clinician-task-list {
    display: grid;
    gap: 10px;
}

.hp-clinician-task-card {
    align-items: center;
    background: #fff;
    border: 1px solid #d5e4ed;
    border-radius: 14px;
    display: grid;
    gap: 14px;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    padding: 14px 16px;
    transition: border-color .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.hp-clinician-task-card:hover {
    border-color: #a8c8da;
    box-shadow: 0 5px 18px rgba(8, 35, 63, .06);
}

.hp-clinician-task-check {
    cursor: pointer;
    display: block;
    height: 28px;
    margin: 0;
    position: relative;
    width: 28px;
}

.hp-clinician-task-check input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

.hp-clinician-task-check > span:not(.sr-only) {
    align-items: center;
    background: #fff;
    border: 2px solid #a9c3d4;
    border-radius: 9px;
    color: transparent;
    display: flex;
    height: 28px;
    justify-content: center;
    transition: .18s ease;
    width: 28px;
}

.hp-clinician-task-check input:focus + span {
    box-shadow: 0 0 0 3px rgba(19, 132, 207, .16);
}

.hp-clinician-task-check input:checked + span {
    background: #087f78;
    border-color: #087f78;
    color: #fff;
}

.hp-clinician-task-card__body {
    display: grid;
    gap: 8px;
    min-width: 0;
}

.hp-clinician-task-card__title {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 0;
}

.hp-clinician-task-card__title strong {
    color: #0a2948;
    font-size: 15px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.hp-clinician-task-card__title > span {
    background: #edf4f8;
    border-radius: 999px;
    color: #527086;
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .035em;
    padding: 5px 8px;
    text-transform: uppercase;
}

.hp-clinician-task-card__title > span.is-high {
    background: #fff0ed;
    color: #b53a2d;
}

.hp-clinician-task-card__title > span.is-low {
    background: #eef8f3;
    color: #32745b;
}

.hp-clinician-task-meta {
    align-items: center;
    color: #607d92;
    display: flex;
    flex-wrap: wrap;
    font-size: 12px;
    gap: 14px;
}

.hp-clinician-task-meta > span {
    align-items: center;
    display: inline-flex;
    gap: 7px;
}

.hp-clinician-task-assignee b {
    align-items: center;
    background: #e0f3fa;
    border-radius: 50%;
    color: #087f78;
    display: inline-flex;
    font-size: 9px;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.hp-clinician-task-meta .is-overdue {
    color: #bd3d32;
    font-weight: 800;
}

.hp-clinician-task-card__actions {
    display: flex;
    gap: 7px;
}

.hp-clinician-task-card__actions [data-hp-task-delete]:hover {
    border-color: #d26860;
    color: #b53a2d;
}

.hp-clinician-task-card.is-completed {
    background: #f7fafb;
    opacity: .76;
}

.hp-clinician-task-card.is-completed .hp-clinician-task-card__title strong {
    color: #637e91;
    text-decoration: line-through;
}

.hp-clinician-task-empty {
    align-items: center;
    border: 1px dashed #bfd4e2;
    border-radius: 14px;
    color: #5b778d;
    display: flex;
    flex-direction: column;
    padding: 34px 20px;
    text-align: center;
}

.hp-clinician-task-empty > span {
    align-items: center;
    background: #e5f5f1;
    border-radius: 50%;
    color: #087f78;
    display: flex;
    height: 44px;
    justify-content: center;
    margin-bottom: 10px;
    width: 44px;
}

.hp-clinician-task-empty strong {
    color: #0a2948;
    font-size: 16px;
}

.hp-clinician-task-empty p {
    margin: 4px 0 0;
}

@media (max-width: 1100px) {
    .hp-clinician-task-composer__grid {
        grid-template-columns: minmax(220px, 1.5fr) minmax(170px, 1fr);
    }
}

@media (max-width: 720px) {
    .hp-clinician-task-heading,
    .hp-clinician-task-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-clinician-task-add {
        width: 100%;
    }

    .hp-clinician-task-composer {
        border-radius: 12px;
        padding: 16px;
    }

    .hp-clinician-task-composer__grid {
        grid-template-columns: 1fr;
    }

    .hp-clinician-task-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .hp-clinician-task-card {
        align-items: start;
        grid-template-columns: 34px minmax(0, 1fr) auto;
        padding: 14px 12px;
    }

    .hp-clinician-task-card__title {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .hp-clinician-task-card__actions {
        flex-direction: column;
    }

    .hp-clinician-task-card__actions button {
        height: 38px;
        width: 38px;
    }
}

/* Search visibility purchase: professional-level selection and clinic bundle pricing. */
.hp-search-boost-card {
    background: linear-gradient(145deg, #f7fbff 0%, #eef8f7 100%);
    border: 1px solid #c9e0e7;
    border-radius: 16px;
    display: block;
    margin-top: 24px;
    overflow: hidden;
    padding: 0;
}

.hp-search-boost-card__toggle {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 14px;
    grid-template-columns: 44px minmax(0,1fr) 36px;
    list-style: none;
    min-height: 84px;
    padding: 16px 20px;
}
.hp-search-boost-card__toggle::-webkit-details-marker { display: none; }
.hp-search-boost-card__toggle-icon {
    align-items: center;
    background: #dff4f0;
    border-radius: 12px;
    color: #087f70;
    display: flex;
    height: 44px;
    justify-content: center;
    width: 44px;
}
.hp-search-boost-card__toggle>span:nth-child(2) { display: grid; gap: 3px; }
.hp-search-boost-card__toggle strong { color: #082b49; font-size: 16px; }
.hp-search-boost-card__toggle small { color: #617988; font-size: 12px; line-height: 1.4; }
.hp-search-boost-card__toggle-chevron {
    align-items: center;
    background: #fff;
    border: 1px solid #c9dce5;
    border-radius: 9px;
    color: #315b73;
    display: flex;
    height: 36px;
    justify-content: center;
    transition: transform .18s ease;
    width: 36px;
}
.hp-search-boost-card[open]>.hp-search-boost-card__toggle { border-bottom: 1px solid #d9e7eb; }
.hp-search-boost-card[open] .hp-search-boost-card__toggle-chevron { transform: rotate(180deg); }
.hp-search-boost-card__toggle:hover { background: rgba(255,255,255,.45); }
.hp-search-boost-card__toggle:focus-visible { box-shadow: inset 0 0 0 3px rgba(8,127,112,.2); outline: 0; }

.hp-search-boost-card__header {
    align-items: flex-start;
    display: flex;
    gap: 28px;
    justify-content: space-between;
    padding: 26px 28px 22px;
}

.hp-search-boost-card__header > div:first-child { max-width: 650px; }
.hp-search-boost-card__header h2 { color: #082b49; margin: 4px 0 8px; }
.hp-search-boost-card__header p:not(.hp-pro-kicker) { color: #577184; margin: 0; }

.hp-billing-period{background:#f5f9fc;border:1px solid #d4e3ec;border-radius:14px;margin:18px 0;padding:18px}.hp-billing-period__heading{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:14px}.hp-billing-period__heading>span{display:grid;gap:3px}.hp-billing-period__heading strong{color:#0a304b;font-size:14px}.hp-billing-period__heading small{color:#637d8e;font-size:12px;line-height:1.4}.hp-billing-period__heading>strong{color:#087f70;font-size:20px;white-space:nowrap}.hp-billing-schedule{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:12px}.hp-billing-schedule>button{align-items:center;background:#fff;border:1px solid #cadbe5;border-radius:12px;color:#173b54;display:grid;gap:10px;grid-template-columns:32px minmax(0,1fr);min-height:68px;padding:11px 13px;text-align:left}.hp-billing-schedule>button>i{align-items:center;background:#edf4f8;border-radius:9px;color:#33718f;display:flex;height:32px;justify-content:center}.hp-billing-schedule>button span{display:grid;gap:2px}.hp-billing-schedule>button strong{font-size:12px}.hp-billing-schedule>button small{color:#6d8493;font-size:10px;line-height:1.35}.hp-billing-schedule>button.is-active{background:#effaf7;border-color:#45ad95;box-shadow:0 0 0 2px rgba(29,143,118,.09)}.hp-billing-schedule>button.is-active>i{background:#d8f3eb;color:#087a67}.hp-billing-period__choices{display:flex;flex-wrap:wrap;gap:8px}.hp-billing-period__choices>button{background:#fff;border:1px solid #c6d8e3;border-radius:9px;color:#35566c;font-size:11px;font-weight:800;min-height:38px;padding:8px 12px}.hp-billing-period__choices>button.is-active{background:#0b4466;border-color:#0b4466;color:#fff}.hp-billing-period__choices label{align-items:center;background:#fff;border:1px solid #c6d8e3;border-radius:9px;color:#5d7585;display:flex;font-size:11px;font-weight:750;gap:8px;margin:0;padding:0 8px 0 11px}.hp-billing-period__choices select{background:transparent;border:0;color:#123c56;font-weight:800;height:36px;outline:0}.hp-boost-period{background:#f5f9fc;border-bottom:1px solid #d8e6ea;border-top:1px solid #d8e6ea;display:grid;gap:12px;padding:16px 28px}.hp-boost-period__heading>span{display:grid;gap:3px}.hp-boost-period__heading strong{color:#183d55;font-size:13px}.hp-boost-period__heading small{color:#637d8e;font-size:11px;line-height:1.45}.hp-boost-period .hp-billing-schedule{margin:0}.hp-boost-period__assurance{align-items:flex-start;color:#4e6d7e;display:flex;font-size:11px;gap:7px;line-height:1.45;margin:0}.hp-boost-period__assurance i{color:#087f70;margin-top:2px}.hp-search-boost-card__footer{grid-template-columns:minmax(0,1fr) minmax(240px,auto)}

@media(max-width:720px){.hp-billing-period{padding:14px}.hp-billing-period__heading{align-items:flex-start;flex-direction:column;gap:7px}.hp-billing-schedule{grid-template-columns:minmax(0,1fr)}.hp-billing-period__choices>button{flex:1 1 calc(50% - 8px)}.hp-billing-period__choices label{justify-content:space-between;width:100%}.hp-boost-period{padding:14px 16px}.hp-search-boost-card__footer{grid-template-columns:minmax(0,1fr)}}
.hp-pro-plan-period{align-items:center;color:#4d7185;display:flex;font-size:12px;font-weight:750;gap:7px;margin-top:10px}.hp-pro-plan-period i{color:#0a8d78}

.hp-search-boost-card__rates {
    display: grid;
    flex: 0 0 350px;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-search-boost-card__rates > span {
    background: rgba(255,255,255,.82);
    border: 1px solid #d2e3e8;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    min-height: 86px;
    padding: 13px 14px;
}

.hp-search-boost-card__rates > span:only-child { grid-column: 2; }
.hp-search-boost-card__rates > span.is-saving { background: #e9f8f3; border-color: #9fd9c8; }
.hp-search-boost-card__rates small { color: #5f7686; font-size: 11px; font-weight: 700; line-height: 1.35; }
.hp-search-boost-card__rates strong { color: #082b49; font-size: 22px; margin-top: auto; }
.hp-search-boost-card__rates strong em { color: #5d7885; font-size: 11px; font-style: normal; font-weight: 700; }

.hp-search-boost-card form { border-top: 1px solid #d9e7eb; }
.hp-search-boost-card__toolbar { align-items: center; display: flex; gap: 20px; justify-content: space-between; padding: 18px 28px 12px; }
.hp-search-boost-card__toolbar > div { display: flex; flex-direction: column; gap: 2px; }
.hp-search-boost-card__toolbar strong { color: #102f47; font-size: 15px; }
.hp-search-boost-card__toolbar small { color: #6b8291; }
.hp-search-boost-card__toolbar button { align-items: center; background: #fff; border: 1px solid #bcd4dc; border-radius: 8px; color: #0b7180; display: inline-flex; font-size: 12px; font-weight: 800; gap: 7px; padding: 9px 12px; }
.hp-search-boost-card__toolbar button:hover,
.hp-search-boost-card__toolbar button.is-active { background: #e3f5f1; border-color: #69bfa9; }

.hp-search-boost-card__people { display: grid; gap: 8px; padding: 8px 28px 22px; }
.hp-search-boost-person { align-items: center; background: rgba(255,255,255,.9); border: 1px solid #d4e3e8; border-radius: 12px; cursor: pointer; display: grid; gap: 12px; grid-template-columns: 24px 42px minmax(0,1fr) auto; margin: 0; min-height: 70px; padding: 11px 14px; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.hp-search-boost-person:hover { border-color: #7ebdaf; transform: translateY(-1px); }
.hp-search-boost-person.is-selected { border-color: #14967d; box-shadow: 0 0 0 2px rgba(20,150,125,.12); }
.hp-search-boost-person.is-disabled { cursor: default; opacity: .72; }
.hp-search-boost-person.is-disabled:hover { border-color: #d4e3e8; transform: none; }
.hp-search-boost-person > input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.hp-search-boost-person__check { align-items: center; border: 2px solid #a9c1cb; border-radius: 6px; color: transparent; display: flex; height: 20px; justify-content: center; width: 20px; }
.hp-search-boost-person.is-selected .hp-search-boost-person__check { background: #0f9278; border-color: #0f9278; color: #fff; }
.hp-search-boost-person.is-disabled .hp-search-boost-person__check { background: #eef3f5; border-color: #d7e0e4; }
.hp-search-boost-person__avatar { align-items: center; background: #dff4f3; border-radius: 50%; color: #087989; display: flex; font-size: 12px; font-weight: 900; height: 42px; justify-content: center; width: 42px; }
.hp-search-boost-person__identity { display: flex; flex-direction: column; min-width: 0; }
.hp-search-boost-person__identity strong { color: #0a2b45; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-search-boost-person__identity small { color: #6b8391; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-search-boost-person__status { align-items: center; color: #718795; display: inline-flex; font-size: 11px; font-weight: 800; gap: 6px; justify-content: flex-end; text-align: right; }
.hp-search-boost-person__status.is-ready { color: #087b68; }
.hp-search-boost-person__status.is-active { color: #0d6c9c; flex-wrap: wrap; max-width: 220px; }
.hp-search-boost-person__status small { flex-basis: 100%; font-weight: 600; }

.hp-search-boost-card__footer { align-items: center; background: rgba(255,255,255,.88); border-top: 1px solid #d8e6ea; display: grid; gap: 24px; grid-template-columns: minmax(0,1fr) minmax(240px,auto); height: auto; margin: 0; min-height: 86px; overflow: visible; padding: 20px 28px; width: 100%; }
.hp-search-boost-card__summary { align-items: center; display: grid; gap: 24px; grid-template-columns: minmax(150px,auto) minmax(240px,1fr); min-width: 0; }
.hp-search-boost-card__total { display: flex; flex-direction: column; min-width: 150px; }
.hp-search-boost-card__summary small { color: #617988; font-weight: 700; }
.hp-search-boost-card__summary strong { color: #082b49; font-size: 24px; line-height: 1.2; }
.hp-search-boost-card__assurance { align-items: center; color: #5e7886; display: flex; font-size: 12px; gap: 10px; line-height: 1.45; margin: 0; min-width: 0; }
.hp-search-boost-card__assurance > span:first-child { align-items: center; background: #e7f6f1; border-radius: 50%; color: #119177; display: inline-flex; flex: 0 0 32px; height: 32px; justify-content: center; }
.hp-search-boost-card__action { align-items: stretch; display: flex; flex-direction: column; gap: 9px; min-width: 240px; }
.hp-search-boost-card__action .hp-clinician-primary-action { align-items: center; background: linear-gradient(135deg, #117ed0 0%, #086db8 100%); box-shadow: 0 8px 18px rgba(17,126,208,.18); display: inline-flex; gap: 8px; justify-content: center; line-height: 1.2; margin: 0; min-height: 46px; padding: 0 18px; text-align: center; white-space: nowrap; width: 100%; }
.hp-search-boost-card__action .hp-clinician-primary-action i { flex: 0 0 auto; font-size: 13px; line-height: 1; margin: 0; }
.hp-search-boost-card__action .hp-clinician-primary-action:disabled { background: #a9bdc9; box-shadow: none; cursor: not-allowed; opacity: 1; }
.hp-search-boost-card__action .hp-clinician-primary-action.is-bank { background: #fff; border: 1px solid #0b7f70; box-shadow: none; color: #0b6d61; }
.hp-search-boost-card__action .hp-clinician-primary-action.is-bank:not(:disabled):hover { background: #eaf8f5; }
.hp-search-boost-card__action .hp-clinician-primary-action.is-bank:disabled { background: #edf3f5; border-color: #c7d5da; color: #82959d; }
.hp-search-boost-card__status { align-items: flex-start; background: #fff7e8; border: 1px solid #edd5a6; border-radius: 8px; color: #8a5a10; display: flex; font-size: 11px; font-weight: 700; gap: 7px; line-height: 1.4; padding: 8px 10px; text-align: left; width: 100%; }
.hp-search-boost-card__status[hidden] { display: none; }
.hp-search-boost-card__status i { flex: 0 0 auto; margin-top: 2px; }
.hp-search-boost-card__notice { align-items: flex-start; background: #fff8e8; border-top: 1px solid #ead8ad; color: #825b14; display: flex; gap: 12px; padding: 18px 28px; }
.hp-search-boost-card__notice > i { margin-top: 3px; }
.hp-search-boost-card__notice p { display: flex; flex-direction: column; margin: 0; }
.hp-search-boost-card__notice span { font-size: 12px; margin-top: 2px; }

@media (max-width: 900px) {
    .hp-search-boost-card__header { flex-direction: column; }
    .hp-search-boost-card__rates { flex: none; width: 100%; }
    .hp-search-boost-card__rates > span:only-child { grid-column: 1 / -1; }
    .hp-search-boost-card__footer { align-items: stretch; grid-template-columns: 1fr; }
    .hp-search-boost-card__action { min-width: 0; }
}

@media (max-width: 620px) {
    .hp-search-boost-card__toggle { grid-template-columns: 40px minmax(0,1fr) 36px; min-height: 76px; padding: 14px 16px; }
    .hp-search-boost-card__toggle-icon { height: 40px; width: 40px; }
    .hp-search-boost-card__header { padding: 22px 18px 18px; }
    .hp-search-boost-card__rates { grid-template-columns: 1fr; }
    .hp-search-boost-card__rates > span:only-child { grid-column: auto; }
    .hp-search-boost-card__toolbar { align-items: flex-start; padding: 16px 18px 10px; }
    .hp-search-boost-card__people { padding: 8px 18px 18px; }
    .hp-search-boost-person { grid-template-columns: 24px 38px minmax(0,1fr); }
    .hp-search-boost-person__avatar { height: 38px; width: 38px; }
    .hp-search-boost-person__status { grid-column: 2 / -1; justify-content: flex-start; text-align: left; }
    .hp-search-boost-card__footer { gap: 16px; padding: 17px 18px; }
    .hp-search-boost-card__summary { align-items: stretch; gap: 12px; grid-template-columns: 1fr; }
    .hp-search-boost-card__total { border-bottom: 1px solid #e0e9ed; min-width: 0; padding-bottom: 12px; }
    .hp-search-boost-card__assurance { align-items: flex-start; }
    .hp-search-boost-card__action .hp-clinician-primary-action { white-space: normal; }
}

/* Premium plan hierarchy and clinic seat pricing. */
.hp-pro-product__plans article.is-featured {
    background: linear-gradient(180deg, #f4fbfa 0%, #ffffff 48%);
    box-shadow: 0 20px 52px rgba(8, 41, 67, .12);
    transform: translateY(-8px);
}

.hp-pro-product__seat-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin-top: 16px;
    padding: 8px 11px;
    border-radius: 999px;
    background: #e5f7f4;
    color: #076e68;
    font-size: 13px;
    font-weight: 800;
}

.hp-pro-product__addon {
    display: block;
    margin-top: 9px;
    color: #537084;
    font-weight: 700;
}

@media (max-width: 900px) {
    .hp-pro-product__plans article.is-featured {
        transform: none;
    }
}
.hp-public-plan-list{display:grid;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.22)}.hp-public-plan-list h3{margin:0 0 4px}.hp-public-plan-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px;border:1px solid rgba(255,255,255,.22);border-radius:7px;background:rgba(255,255,255,.08)}.hp-public-plan-list article>div{display:grid;gap:4px}.hp-public-plan-list article small{display:block;font-weight:400;line-height:1.4;opacity:.82}.hp-public-plan-list article>b{white-space:nowrap;font-size:19px}.hp-public-plan-list>p{margin:2px 0 0;font-size:12px;line-height:1.5;opacity:.82}@media(max-width:600px){.hp-public-plan-list article{flex-direction:column}.hp-public-plan-list article>b{font-size:17px}}

.healthcare-home-hero {
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    min-height: 620px;
    padding: 82px 0 58px;
    width: 100vw;
}

.healthcare-home-copy {
    max-width: 680px;
}

.healthcare-home-kicker {
    color: #0f766e;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.healthcare-home-copy h1 {
    color: #102a43;
    font-size: 50px;
    font-weight: 800;
    line-height: 1.08;
    margin: 0 0 18px;
}

.healthcare-home-subtitle {
    color: #40576d;
    font-size: 19px;
    line-height: 1.58;
    margin-bottom: 28px;
    max-width: 560px;
}

.healthcare-home-search {
    align-items: stretch;
    background: #fff;
    border: 1px solid #d9e2ec;
    border-radius: 8px;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .14);
    display: grid;
    gap: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 150px;
    max-width: 760px;
    overflow: hidden;
}

.healthcare-home-search-field {
    align-items: center;
    border-right: 1px solid #e6edf3;
    display: flex;
    min-height: 62px;
    padding: 0 18px;
}

.healthcare-home-search-field i {
    color: #0f766e;
    font-size: 17px;
    margin-right: 10px;
}

.healthcare-home-search-field input {
    border: 0;
    color: #102a43;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.healthcare-home-search .btn {
    border-radius: 0;
    min-height: 62px;
}

.healthcare-home-quicklinks {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.healthcare-home-quicklinks a {
    background: rgba(255, 255, 255, .84);
    border: 1px solid #d9e2ec;
    border-radius: 6px;
    color: #243b53;
    padding: 7px 11px;
}

.healthcare-home-section {
    background: #f7fafc;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 46px 0;
    width: 100vw;
}

.healthcare-feature-card {
    background: #fff;
    border: 1px solid #dce1e7;
    border-radius: 8px;
    min-height: 188px;
    padding: 24px;
}

.healthcare-feature-card i {
    color: #0f766e;
    font-size: 28px;
    margin-bottom: 16px;
}

.healthcare-feature-card h3 {
    color: #102a43;
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 10px;
}

.healthcare-feature-card p {
    color: #52697a;
    line-height: 1.55;
    margin-bottom: 0;
}

.healthcare-home-band {
    background: #e6f7f5;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 42px 0;
    width: 100vw;
}

.healthcare-home-band h2 {
    color: #102a43;
    font-size: 28px;
    font-weight: 800;
    margin: 0 0 10px;
}

.healthcare-home-band p {
    color: #40576d;
    font-size: 17px;
    line-height: 1.55;
    margin-bottom: 0;
}

.healthcare-home-band-actions {
    padding-top: 18px;
    text-align: right;
}

.healthcare-home-last-section {
    padding-bottom: 24px;
    padding-top: 28px;
}

.healthcare-search-panel {
    border: 1px solid #dce1e7;
    border-radius: 6px;
    padding: 18px;
    background: #fff;
}

.healthcare-card {
    border: 1px solid #dce1e7;
    border-radius: 6px;
    padding: 18px;
    margin-bottom: 16px;
    background: #fff;
}

.healthcare-card h3,
.healthcare-card h4 {
    margin-top: 0;
}

.healthcare-muted {
    color: #6b7280;
}

.healthcare-disclaimer {
    align-items: center;
    background: #f5f9fc;
    border: 1px solid #d9e7f1;
    border-radius: 8px;
    color: #496579;
    display: flex;
    font-size: 12px;
    gap: 11px;
    line-height: 1.5;
    margin: 16px 0;
    padding: 11px 13px;
}

.healthcare-disclaimer__icon {
    align-items: center;
    background: #e3f2fc;
    border-radius: 50%;
    color: #0876c9;
    display: inline-flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
}

.healthcare-disclaimer__copy {
    flex: 1 1 auto;
    min-width: 0;
}

.healthcare-disclaimer__actions {
    align-items: center;
    color: #5d7586;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 6px;
    white-space: nowrap;
}

.healthcare-disclaimer__actions small {
    color: inherit;
    font-size: 10px;
    font-weight: 750;
}

.healthcare-disclaimer__actions a {
    align-items: center;
    background: #fff;
    border: 1px solid #b9d2e4;
    border-radius: 6px;
    color: #075f9f;
    display: inline-flex;
    font-size: 11px;
    font-weight: 850;
    justify-content: center;
    min-height: 34px;
    min-width: 39px;
    padding: 5px 8px;
    text-decoration: none;
}

.healthcare-disclaimer__actions a:hover,
.healthcare-disclaimer__actions a:focus-visible {
    background: #eaf5fc;
    border-color: #0876c9;
    color: #064e82;
    text-decoration: none;
}

.healthcare-disclaimer__actions a:focus-visible {
    outline: 3px solid rgba(8, 118, 201, .2);
    outline-offset: 2px;
}

@media (max-width: 700px) {
    .healthcare-disclaimer {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .healthcare-disclaimer__copy {
        flex-basis: calc(100% - 44px);
    }

    .healthcare-disclaimer__actions {
        margin-left: 43px;
    }
}

.healthcare-slot-day {
    border-top: 1px solid #eef1f4;
    padding: 14px 0;
}

.healthcare-slot-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.healthcare-slot-option {
    border: 1px solid #cfd6de;
    border-radius: 6px;
    cursor: pointer;
    min-width: 82px;
    padding: 8px 10px;
    text-align: center;
}

.healthcare-slot-option input {
    margin-right: 6px;
}

.healthcare-booking-shell {
    background: #eaf4fc;
    color: #08233e;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    min-height: 100vh;
    overflow-x: hidden;
}

.healthcare-booking-topbar {
    background: #117ed0;
    color: #fff;
    padding: 16px 0;
}

.healthcare-booking-topbar .container {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.healthcare-booking-brand {
    align-items: center;
    color: #fff;
    display: inline-flex;
    font-size: 20px;
    font-weight: 800;
    gap: 10px;
}

.healthcare-booking-brand:hover,
.healthcare-booking-brand:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-booking-brand-mark {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #117ed0;
    display: inline-flex;
    font-size: 12px;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.healthcare-booking-nav {
    align-items: center;
    display: flex;
    gap: 18px;
}

.healthcare-booking-nav a {
    color: rgba(255, 255, 255, .92);
    font-weight: 800;
}

.healthcare-booking-nav a:hover,
.healthcare-booking-nav a:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-booking-language-switch {
    align-items: center;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 999px;
    display: inline-flex;
    gap: 3px;
    padding: 3px;
}

.healthcare-booking-language-switch a {
    border-radius: 999px;
    font-size: 12px;
    line-height: 1;
    padding: 7px 9px;
}

.healthcare-booking-language-switch a.active,
.healthcare-booking-language-switch a:hover,
.healthcare-booking-language-switch a:focus {
    background: #fff;
    color: #117ed0;
}

.healthcare-booking-verification-banner {
    background: #fff8e6;
    border-bottom: 1px solid #f3d78b;
    color: #6f4e00;
}

.healthcare-booking-verification-banner .container {
    align-items: center;
    display: flex;
    gap: 10px;
    min-height: 44px;
}

.healthcare-booking-verification-banner i {
    color: #b7791f;
}

.healthcare-booking-verification-banner a,
.healthcare-booking-verification-banner button {
    background: transparent;
    border: 0;
    color: #0b6fb8;
    font-weight: 800;
    padding: 0;
}

.healthcare-booking-verification-banner .hp-verification-resend-form,
.healthcare-booking-verification-banner .hp-verification-unavailable {
    margin-left: auto;
}

.hp-verification-resend-form {
    margin-bottom: 0;
}

.hp-verification-resend-form button {
    cursor: pointer;
}

.hp-verification-unavailable {
    color: #8a5a00;
    font-size: 12px;
    line-height: 1.35;
}

.healthcare-booking-page {
    padding-bottom: 46px;
    padding-top: 42px;
}

.healthcare-booking-heading {
    margin: 0 auto 26px;
    max-width: 984px;
}

.healthcare-booking-heading h1 {
    color: #08233e;
    font-size: 25px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 8px;
}

.healthcare-booking-heading p {
    color: #24425f;
    font-size: 15px;
    margin: 0;
}

.healthcare-booking-layout {
    align-items: start;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 608px) minmax(260px, 308px);
    justify-content: center;
}

.healthcare-booking-panel,
.healthcare-booking-summary {
    background: #fff;
    border: 1px solid #d9e7f3;
    border-radius: 8px;
    box-shadow: 0 18px 42px rgba(12, 60, 98, .05);
}

.healthcare-booking-panel {
    min-height: 430px;
    padding: 46px 64px 54px;
}

.healthcare-booking-step h2 {
    color: #08233e;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.25;
    margin: 34px 0 18px;
}

.healthcare-booking-back {
    align-items: center;
    background: transparent;
    border: 0;
    color: #244c72;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    margin: 0;
    padding: 0;
}

.healthcare-booking-back:hover,
.healthcare-booking-back:focus {
    color: #117ed0;
    text-decoration: none;
}

.healthcare-booking-reasons {
    border: 1px solid #cbdceb;
    border-radius: 8px;
    margin-bottom: 34px;
    overflow: hidden;
}

.healthcare-booking-reasons a {
    align-items: center;
    color: #173b5c;
    display: flex;
    justify-content: space-between;
    min-height: 58px;
    padding: 0 16px;
}

.healthcare-booking-reasons a + a {
    border-top: 1px solid #dbe7f0;
}

.healthcare-booking-reasons a.active,
.healthcare-booking-reasons a:hover,
.healthcare-booking-reasons a:focus {
    background: #eef7ff;
    color: #0b6fb8;
    text-decoration: none;
}

.healthcare-booking-empty {
    color: #58718a;
    margin: 0;
}

.healthcare-booking-calendar {
    border: 1px solid #d8e6f0;
    border-radius: 8px;
    overflow: hidden;
}

.healthcare-booking-calendar .healthcare-booking-week {
    border: 0;
    border-radius: 0;
}

.healthcare-booking-next-available {
    align-items: center;
    background: #eef9f7;
    border: 0;
    border-radius: 0;
    border-top: 1px solid #b9e2dc;
    display: grid;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    margin: 0;
    padding: 12px;
}

.healthcare-booking-next-available__icon {
    align-items: center;
    background: #d7f1ed;
    border-radius: 50%;
    color: #087f73;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.healthcare-booking-next-available__copy {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.healthcare-booking-next-available__copy small {
    color: #3f6f69;
    font-size: 12px;
    font-weight: 700;
}

.healthcare-booking-next-available__copy strong {
    color: #073d56;
    font-size: 15px;
}

.healthcare-booking-next-available__action {
    align-items: center;
    background: #073d56;
    border-radius: 7px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 44px;
    padding: 10px 14px;
}

.healthcare-booking-next-available__action:hover,
.healthcare-booking-next-available__action:focus {
    background: #0b5876;
    color: #fff;
    text-decoration: none;
}

.healthcare-booking-calendar .healthcare-booking-week-empty {
    border-top: 1px solid #d8e6f0;
    margin: 0;
    padding: 14px;
}

.healthcare-booking-selected-reason {
    background: #eef7ff;
    border: 1px solid #d4e8f8;
    border-radius: 999px;
    color: #0b6fb8;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    margin: 0 0 14px;
    padding: 7px 12px;
}

.healthcare-booking-slots {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.healthcare-booking-slots .healthcare-slot-day:first-child {
    border-top: 0;
    padding-top: 0;
}

.healthcare-booking-slots .healthcare-slot-day {
    border: 1px solid #e0ebf4;
    border-radius: 8px;
    padding: 12px;
}

.healthcare-booking-slots .healthcare-slot-day > strong {
    color: #24425f;
    display: block;
    font-size: 14px;
    margin-bottom: 8px;
}

.healthcare-slot-button {
    background: #e8f4ff;
    border-color: #bdd9f2;
    color: #00508c;
    font-weight: 800;
    min-height: 40px;
}

.healthcare-slot-button:hover,
.healthcare-slot-button:focus,
.healthcare-slot-button.active {
    background: #117ed0;
    border-color: #117ed0;
    color: #fff;
}

.healthcare-booking-confirm p,
.healthcare-booking-auth > p {
    color: #40576d;
    font-size: 15px;
    line-height: 1.65;
    margin: 0 0 22px;
    text-align: center;
}

.healthcare-booking-confirm .form-group {
    margin-bottom: 18px;
}

.healthcare-booking-primary {
    border-radius: 10px;
    font-size: 16px;
    font-weight: 800;
    min-height: 42px;
}

.healthcare-booking-auth-card {
    border: 1px solid #cbdceb;
    border-radius: 8px;
    margin-top: 16px;
    padding: 20px 16px 16px;
    text-align: center;
}

.healthcare-booking-auth-card i {
    align-items: center;
    background: #e8f4ff;
    border-radius: 999px;
    color: #117ed0;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    margin-bottom: 10px;
    width: 34px;
}

.healthcare-booking-auth-card h3 {
    color: #08233e;
    font-size: 19px;
    font-weight: 800;
    margin: 0 0 10px;
}

.healthcare-booking-auth-card p {
    color: #40576d;
    margin: 0 auto 16px;
    max-width: 360px;
}

.healthcare-booking-auth-card-secondary {
    padding-top: 18px;
}

.healthcare-booking-register-step > p {
    color: #315a82;
    font-size: 14px;
    line-height: 1.55;
    margin: -6px 0 22px;
}

.healthcare-booking-inline-back {
    margin-bottom: -10px;
}

.healthcare-booking-field {
    margin-bottom: 16px;
}

.healthcare-booking-field label {
    color: #08233e;
    display: block;
    font-weight: 800;
    margin-bottom: 6px;
}

.healthcare-booking-field label span,
.healthcare-booking-field > span {
    color: #426589;
    font-weight: 500;
}

.healthcare-booking-field > span {
    display: block;
    margin-bottom: 8px;
}

.healthcare-booking-field .form-control {
    border-color: #9ebee0;
    border-radius: 6px;
    color: #08233e;
    font-size: 15px;
    height: 40px;
}

.healthcare-booking-field .form-control:focus {
    border-color: #117ed0;
    box-shadow: 0 0 0 2px rgba(17, 126, 208, .12);
}

.healthcare-booking-field .form-control.healthcare-input-error {
    border-color: #e20046;
}

.healthcare-field-error {
    color: #d6003c;
    display: block;
    font-size: 12px;
    margin-top: 7px;
}

.healthcare-field-error[hidden] {
    display: none;
}

.healthcare-booking-progress {
    background: #cfe6fa;
    border-radius: 999px;
    height: 4px;
    margin: 28px 0 16px;
    overflow: hidden;
}

.healthcare-booking-progress span {
    background: #117ed0;
    border-radius: inherit;
    display: block;
    height: 100%;
}

.healthcare-booking-login-line {
    align-items: center;
    border-top: 1px solid #dbe7f0;
    color: #40576d;
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 22px;
    padding-top: 18px;
}

.healthcare-booking-login-line .btn-link {
    color: #117ed0;
    font-weight: 800;
    padding: 0;
}

.healthcare-booking-summary {
    overflow: hidden;
    position: sticky;
    top: 18px;
}

.healthcare-booking-provider {
    align-items: center;
    border-bottom: 1px solid #dbe7f0;
    display: flex;
    gap: 14px;
    padding: 20px 16px;
}

.healthcare-booking-avatar {
    align-items: center;
    background: #e8f4ff;
    border-radius: 999px;
    color: #117ed0;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 800;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.healthcare-booking-provider strong {
    color: #08233e;
    display: block;
    font-size: 16px;
    margin-bottom: 3px;
}

.healthcare-booking-provider p {
    color: #24425f;
    margin: 0;
}

.healthcare-booking-summary-body {
    padding: 18px 16px 20px;
}

.healthcare-booking-summary-body h3 {
    color: #08233e;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 14px;
}

.healthcare-booking-summary-body p {
    align-items: flex-start;
    color: #08233e;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin: 0 0 13px;
}

.healthcare-booking-summary-body i {
    color: #117ed0;
    margin-top: 3px;
    width: 15px;
}

@media (max-width: 991px) {
    .healthcare-home-hero {
        background-position: center;
        min-height: auto;
        padding: 54px 0 38px;
    }

    .healthcare-home-copy h1 {
        font-size: 38px;
    }

    .healthcare-home-search {
        grid-template-columns: 1fr;
    }

    .healthcare-home-search-field {
        border-bottom: 1px solid #e6edf3;
        border-right: 0;
    }

    .healthcare-home-band-actions {
        text-align: left;
    }

    .healthcare-booking-layout {
        gap: 18px;
        grid-template-columns: 1fr;
    }

    .healthcare-booking-panel {
        padding: 30px 22px 36px;
    }

    .healthcare-booking-summary {
        position: static;
    }
}

@media (max-width: 640px) {
    .healthcare-booking-topbar .container {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .healthcare-booking-nav {
        flex-wrap: wrap;
        gap: 10px;
    }

    .healthcare-booking-verification-banner .container {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
        padding-bottom: 10px;
        padding-top: 10px;
    }

    .healthcare-booking-verification-banner a,
    .healthcare-booking-verification-banner .hp-verification-resend-form,
    .healthcare-booking-verification-banner .hp-verification-unavailable {
        margin-left: 0;
    }

    .healthcare-booking-page {
        padding-top: 28px;
    }

    .healthcare-booking-heading h1 {
        font-size: 22px;
    }

    .healthcare-booking-step h2 {
        font-size: 19px;
    }

    .healthcare-slot-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .healthcare-booking-slots {
        grid-template-columns: 1fr;
    }
}

/* Staging-only presentation account picker, revealed by its keyboard shortcut. */
body.hp-demo-login-open {
    overflow: hidden;
}

.hp-demo-login-backdrop[hidden] {
    display: none !important;
}

.hp-demo-login-backdrop {
    align-items: center;
    background: rgba(4, 25, 43, .72);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 24px;
    position: fixed;
    z-index: 100000;
}

.hp-demo-login-dialog {
    background: #fff;
    border: 1px solid #bed4e1;
    border-radius: 12px;
    box-shadow: 0 28px 90px rgba(4, 25, 43, .35);
    color: #08233f;
    max-height: calc(100vh - 48px);
    max-width: 820px;
    overflow-y: auto;
    padding: 26px;
    width: 100%;
}

.hp-demo-login-dialog > header {
    align-items: flex-start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
}

.hp-demo-login-dialog h2 {
    font-size: 27px;
    margin: 0;
}

.hp-demo-login-close {
    align-items: center;
    background: #f1f6f9;
    border: 0;
    border-radius: 50%;
    color: #31566d;
    display: inline-flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
}

.hp-demo-login-help {
    color: #587286;
    line-height: 1.5;
    margin: 10px 0 18px;
}

.hp-demo-login-password {
    background: #f3f8fb;
    border: 1px solid #d1e1ea;
    border-radius: 8px;
    display: grid;
    gap: 7px;
    margin-bottom: 18px;
    padding: 14px;
}

.hp-demo-login-password > span {
    font-size: 13px;
    font-weight: 800;
}

.hp-demo-login-password input {
    background: #fff;
    border: 1px solid #aac4d4;
    border-radius: 6px;
    color: #08233f;
    min-height: 44px;
    padding: 9px 12px;
    width: 100%;
}

.hp-demo-login-password small {
    color: #607b8d;
    line-height: 1.4;
}

.hp-demo-login-password em {
    color: #b42318;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
}

.hp-demo-login-accounts {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-demo-login-accounts > button {
    align-items: center;
    background: #fff;
    border: 1px solid #c7dbe7;
    border-radius: 8px;
    color: #08233f;
    display: grid;
    gap: 11px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    min-height: 76px;
    padding: 11px;
    text-align: left;
}

.hp-demo-login-accounts > button:not(:disabled):hover,
.hp-demo-login-accounts > button:not(:disabled):focus-visible {
    background: #edf8f7;
    border-color: #0b8d86;
    box-shadow: 0 0 0 3px rgba(11, 141, 134, .14);
    outline: 0;
}

.hp-demo-login-accounts > button:disabled {
    cursor: not-allowed;
    opacity: .55;
}

.hp-demo-login-account-icon {
    align-items: center;
    background: #dff3f1;
    border-radius: 8px;
    color: #087d76;
    display: inline-flex;
    height: 38px;
    justify-content: center;
}

.hp-demo-login-account-copy {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.hp-demo-login-account-copy strong,
.hp-demo-login-account-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-demo-login-account-copy small {
    color: #607b8d;
}

.hp-demo-login-account-state {
    background: #eef2f4;
    border-radius: 999px;
    color: #60717d;
    font-size: 10px;
    font-weight: 800;
    padding: 4px 7px;
    text-transform: uppercase;
}

.hp-demo-login-account-state.is-active {
    background: #d9f7e8;
    color: #087348;
}

.hp-demo-login-dialog > footer {
    align-items: center;
    color: #78909f;
    display: flex;
    font-size: 11px;
    gap: 5px;
    justify-content: flex-end;
    margin-top: 18px;
}

.hp-demo-login-dialog kbd {
    background: #edf2f5;
    border: 1px solid #cad7df;
    border-bottom-width: 2px;
    border-radius: 4px;
    color: #31566d;
    padding: 3px 6px;
}

@media (max-width: 680px) {
    .hp-demo-login-backdrop {
        align-items: flex-start;
        padding: 12px;
    }

    .hp-demo-login-dialog {
        max-height: calc(100vh - 24px);
        padding: 20px 16px;
    }

    .hp-demo-login-dialog h2 {
        font-size: 23px;
    }

    .hp-demo-login-accounts {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Professional appointment editor: service-led scheduling and bounded recurrence. */
.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] {
    align-items: stretch;
    justify-content: flex-end;
    padding: 0;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal {
    animation: hp-appointment-drawer-in .2s ease-out both;
    border-radius: 0;
    box-shadow: -18px 0 48px rgba(8, 35, 63, .2);
    height: 100dvh;
    max-height: 100dvh;
    max-width: 640px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 18px 20px 0;
    width: min(640px, calc(100vw - 48px));
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal,
.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal * {
    box-sizing: border-box;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal-close {
    background: #fff;
    border: 1px solid #d3e1ea;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(8, 35, 63, .08);
    position: fixed;
    right: 18px;
    top: 16px;
    z-index: 4;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] [data-hp-modal="appointment-detail"] > h2 {
    font-size: 20px;
    margin-bottom: 3px;
    padding-right: 48px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] [data-hp-modal="appointment-detail"] > p {
    margin: 0;
    padding-right: 48px;
}

@keyframes hp-appointment-drawer-in {
    from { opacity: .85; transform: translateX(28px); }
    to { opacity: 1; transform: translateX(0); }
}

.hp-appointment-context-strip {
    align-items: center;
    background: #eef7fc;
    border: 1px solid #d1e4ef;
    border-radius: 12px;
    display: flex;
    gap: 9px;
    margin-top: 12px;
    padding: 8px 10px;
}

.hp-appointment-context-strip[hidden] {
    display: none;
}

.hp-appointment-context-strip > span,
.hp-appointment-form-section > header > span {
    align-items: center;
    background: #dff3f2;
    border-radius: 9px;
    color: #087d7a;
    display: inline-flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
}

.hp-appointment-context-strip > div {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.hp-appointment-context-strip strong {
    color: #0b2f4c;
    font-size: 13px;
}

.hp-appointment-context-strip small {
    color: #607b8e;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-appointment-form {
    display: grid;
    gap: 0;
    grid-template-columns: 1fr;
    margin-top: 8px;
}

[data-hp-modal="appointment-detail"][data-hp-appointment-mode="create"] > [data-hp-appointment-modal-intro] {
    display: none;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-appointment-form-section {
    background: #fff;
    border: 0;
    border-bottom: 1px solid #dce7ed;
    border-radius: 0;
    display: grid;
    gap: 9px;
    padding: 10px 0;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-appointment-form-section:first-child {
    border-top: 1px solid #dce7ed;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] [data-hp-single-practitioner] {
    display: none !important;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-appointment-form-section > header p {
    display: none;
}

.hp-appointment-form-section > header {
    align-items: center;
    display: flex;
    gap: 9px;
}

.hp-appointment-form-section > header > div {
    display: grid;
    gap: 2px;
}

.hp-appointment-form-section > header h3,
.hp-appointment-form-section > header p {
    margin: 0;
}

.hp-appointment-form-section > header h3 {
    color: #0a2c48;
    font-size: 15px;
    font-weight: 900;
}

.hp-appointment-form-section > header p {
    color: #657f90;
    font-size: 12px;
    line-height: 1.4;
}

.hp-appointment-details-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-patient-picker {
    gap: 9px;
    padding: 10px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-segmented {
    padding: 3px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-segmented button {
    min-height: 34px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-existing-patient-picker {
    gap: 7px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-existing-patient-list {
    gap: 6px;
    max-height: 132px;
    overflow-y: auto;
    padding-right: 3px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-existing-patient-list button {
    border-radius: 8px;
    min-height: 48px;
    padding: 7px 10px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-new-patient-grid {
    gap: 10px;
}

.hp-appointment-service-field,
.hp-appointment-notes-field {
    grid-column: 1 / -1;
}

.hp-appointment-practitioner-field {
    padding-top: 8px !important;
}

.hp-appointment-practitioner-field > label {
    display: grid;
    gap: 5px;
    margin: 0;
}

.hp-appointment-practitioner-field > label > span {
    color: #0b2f4c;
    font-size: 12px;
    font-weight: 800;
}

.hp-appointment-date-control {
    display: block;
    position: relative;
}

.hp-appointment-date-control > input {
    padding-right: 38px;
    width: 100%;
}

.hp-appointment-date-control > i {
    color: #48697f;
    pointer-events: none;
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
}

.hp-appointment-date-control > input[type="date"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0;
    position: absolute;
    right: 0;
    width: 40px;
}

.hp-appointment-time-control {
    display: block;
    position: relative;
}

.hp-appointment-time-control > input {
    cursor: pointer;
    padding-right: 38px;
    width: 100%;
}

.hp-appointment-time-control > i {
    color: #48697f;
    pointer-events: none;
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
}

.hp-appointment-time-control > input[type="time"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0;
    position: absolute;
    right: 0;
    width: 40px;
}

[data-hp-appointment-start],
[data-hp-appointment-end] {
    cursor: pointer;
}

.xdsoft_datetimepicker.hp-appointment-datepicker {
    border: 1px solid #bfd7e5;
    border-radius: 10px;
    box-shadow: 0 14px 34px rgba(8, 35, 63, .18);
    font-family: inherit;
    overflow: hidden;
    padding: 8px;
}

.xdsoft_datetimepicker.hp-appointment-timepicker {
    border: 1px solid #bfd7e5;
    border-radius: 10px;
    box-shadow: 0 14px 34px rgba(8, 35, 63, .18);
    font-family: inherit;
    overflow: hidden;
    padding: 8px;
}

.xdsoft_datetimepicker.hp-appointment-timepicker .xdsoft_timepicker .xdsoft_time_box > div > div.xdsoft_current,
.xdsoft_datetimepicker.hp-appointment-timepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover {
    background: #087d7a !important;
    box-shadow: none !important;
    color: #fff !important;
}

.xdsoft_datetimepicker.hp-appointment-datepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker.hp-appointment-datepicker .xdsoft_calendar td:hover {
    background: #087d7a !important;
    box-shadow: none !important;
    color: #fff !important;
}

.xdsoft_datetimepicker.hp-appointment-datepicker .xdsoft_calendar td.xdsoft_today {
    color: #087d7a;
    font-weight: 800;
}

.xdsoft_datetimepicker.hp-appointment-datepicker .xdsoft_calendar th {
    color: #48697f;
}

.hp-appointment-service-label-row {
    align-items: center;
    display: flex;
    gap: 7px;
}

.hp-appointment-service-label-row small {
    background: #edf5f8;
    border-radius: 999px;
    color: #607b8e;
    font-size: 10px;
    font-weight: 800;
    padding: 2px 7px;
}

.hp-appointment-service-controls {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) 40px;
}

.hp-appointment-service-controls > select,
.hp-appointment-service-controls > .bootstrap-select {
    max-width: none;
    min-width: 0;
    width: 100% !important;
}

.hp-appointment-service-controls > select,
.hp-appointment-service-controls > .bootstrap-select > .dropdown-toggle {
    background: #fff;
    border: 1px solid #b9d4e7 !important;
    border-radius: 9px;
    color: #0b2b4c;
    min-height: 42px;
}

.hp-appointment-service-controls > .bootstrap-select > .dropdown-toggle {
    padding: 10px 34px 10px 12px;
    width: 100%;
}

.hp-appointment-service-controls > .bootstrap-select > .dropdown-toggle:focus,
.hp-appointment-service-controls > .bootstrap-select.open > .dropdown-toggle,
.hp-appointment-service-controls > select:focus {
    border-color: #0878c9 !important;
    box-shadow: 0 0 0 3px rgba(8, 120, 201, .12);
    outline: 0 !important;
}

.hp-appointment-add-service {
    align-items: center;
    align-self: stretch;
    background: #087d7a;
    border: 1px solid #087d7a;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    justify-content: center;
    min-height: 40px;
    width: 40px;
}

.hp-appointment-add-service:hover,
.hp-appointment-add-service:focus {
    background: #066966;
    border-color: #066966;
    color: #fff;
}

.hp-appointment-quick-service {
    align-items: end;
    background: #f4f9fb;
    border: 1px solid #cfe0e9;
    border-radius: 8px;
    display: grid;
    gap: 10px;
    grid-column: 1 / -1;
    grid-template-columns: minmax(180px, 1fr) 130px auto;
    padding: 9px;
}

.hp-appointment-quick-service[hidden] {
    display: none;
}

.hp-appointment-quick-service-actions {
    align-items: center;
    display: flex;
    gap: 6px;
}

.hp-appointment-quick-service-actions > button {
    align-items: center;
    border-radius: 7px;
    display: inline-flex;
    gap: 5px;
    min-height: 40px;
    justify-content: center;
    padding: 0 12px;
}

.hp-appointment-quick-service-actions > button:first-child {
    background: transparent;
    border: 0;
    color: #607b8e;
}

.hp-appointment-quick-service > label {
    display: grid;
    gap: 5px;
    margin: 0;
}

.hp-appointment-quick-service > label > span {
    color: #0b2f4c;
    font-size: 11px;
    font-weight: 800;
}

.hp-appointment-quick-service-actions > .hp-clinician-primary-action {
    min-height: 40px;
    white-space: nowrap;
}

.hp-appointment-notes-field textarea {
    min-height: 68px;
}

.hp-appointment-service-field small {
    color: #5e788a;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
}

.hp-appointment-service-field select:disabled {
    background: #f0f4f6;
    color: #7c8f9b;
    cursor: not-allowed;
}

.hp-appointment-notification-grid {
    display: grid;
    gap: 13px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-recurrence {
    background: #f4faf8;
    border: 1px solid #cce4db;
    border-radius: 13px;
    gap: 14px;
    padding: 16px;
}

.hp-recurrence-switch {
    align-items: center;
    cursor: pointer;
    display: flex !important;
    gap: 12px !important;
}

.hp-recurrence-switch > input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

.hp-recurrence-switch > span[aria-hidden] {
    background: #aabdc7;
    border-radius: 999px;
    flex: 0 0 44px;
    height: 24px;
    position: relative;
    transition: background .18s ease;
}

.hp-recurrence-switch > span[aria-hidden]::after {
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(8,35,63,.2);
    content: "";
    height: 18px;
    left: 3px;
    position: absolute;
    top: 3px;
    transition: transform .18s ease;
    width: 18px;
}

.hp-recurrence-switch > input:checked + span[aria-hidden] { background: #128872; }
.hp-recurrence-switch > input:checked + span[aria-hidden]::after { transform: translateX(20px); }
.hp-recurrence-switch > input:focus-visible + span[aria-hidden] { outline: 3px solid rgba(18,136,114,.22); }

.hp-recurrence-switch > span:last-child {
    display: grid;
    gap: 2px;
}

.hp-recurrence-switch strong { color: #123b4e; font-size: 14px; }
.hp-recurrence-switch small { color: #607d87; font-size: 11px; font-weight: 600; }

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-recurrence-options {
    background: #fff;
    border: 1px solid #d9e8e2;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 14px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-recurrence-weekdays {
    grid-column: 1 / -1;
}

.hp-clinician-appointment-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 16px;
}

.hp-clinician-appointment-actions button {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-content: center;
    min-height: 42px;
}

.hp-appointment-modal-footer {
    align-items: center;
    background: #f6fafc;
    border: 1px solid #d6e4ed;
    border-radius: 0;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    bottom: 0;
    box-shadow: 0 -10px 24px rgba(8, 35, 63, .08);
    margin: 12px -20px 0;
    padding: 10px 20px calc(10px + env(safe-area-inset-bottom));
    position: sticky;
    z-index: 3;
}

.hp-appointment-modal-footer p {
    align-items: center;
    display: flex;
    font-size: 11px;
    gap: 8px;
    line-height: 1.4;
    margin: 0;
    max-width: 470px;
}

.hp-appointment-modal-footer p i { color: #11816d; }

.hp-appointment-modal-footer .hp-clinician-primary-action {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 8px;
    justify-content: center;
    margin: 0;
    min-height: 44px;
    padding: 0 18px;
}

.hp-appointment-more {
    border-bottom: 1px solid #dce7ed;
    color: #0b2f4c;
}

.hp-appointment-more > summary {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: 36px minmax(0, 1fr) 28px;
    list-style: none;
    min-height: 58px;
    padding: 8px 0;
}

.hp-appointment-more > summary::-webkit-details-marker {
    display: none;
}

.hp-appointment-more > summary > span:first-child {
    align-items: center;
    background: #e8f5f4;
    border-radius: 9px;
    color: #087d7a;
    display: inline-flex;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.hp-appointment-more > summary > span:nth-child(2) {
    display: grid;
    gap: 2px;
}

.hp-appointment-more > summary strong {
    color: #0a2c48;
    font-size: 14px;
    font-weight: 900;
}

.hp-appointment-more > summary small {
    color: #657f90;
    font-size: 11px;
    font-weight: 600;
}

.hp-appointment-more > summary > i:last-child {
    color: #607b8e;
    justify-self: center;
    transition: transform .18s ease;
}

.hp-appointment-more[open] > summary > i:last-child {
    transform: rotate(180deg);
}

.hp-appointment-more > summary:focus-visible {
    border-radius: 8px;
    outline: 3px solid rgba(8, 125, 122, .16);
    outline-offset: 2px;
}

.hp-appointment-more__content {
    display: grid;
    gap: 12px;
    padding: 0 0 16px 46px;
}

.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-appointment-more .hp-appointment-form-section:first-child {
    border-top: 0;
    padding: 0;
}

@media (max-width: 720px) {
    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] {
        align-items: flex-end;
    }

    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal {
        animation: none;
        border-radius: 16px 16px 0 0;
        height: auto;
        max-height: calc(100dvh - 12px);
        max-width: none;
        padding: 16px 14px calc(18px + env(safe-area-inset-bottom));
        width: 100%;
    }

    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal-close {
        position: absolute;
        right: 10px;
        top: 10px;
    }

    .hp-appointment-details-grid,
    .hp-appointment-notification-grid,
    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-recurrence-options {
        grid-template-columns: 1fr;
    }

    .hp-appointment-service-field,
    .hp-appointment-notes-field,
    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-recurrence-weekdays {
        grid-column: auto;
    }

    .hp-appointment-quick-service {
        grid-template-columns: 1fr;
    }

    .hp-appointment-quick-service-actions {
        justify-content: flex-end;
    }

    .hp-clinician-appointment-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hp-appointment-modal-footer {
        align-items: stretch;
        flex-direction: column;
        margin: 14px -14px calc(-18px - env(safe-area-inset-bottom));
        padding: 12px 14px calc(12px + env(safe-area-inset-bottom));
    }

    .hp-appointment-modal-footer .hp-clinician-primary-action { width: 100%; }

    .hp-appointment-more__content {
        padding-left: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-modal {
        animation: none;
    }
}

/* Professional messaging workspace */
.hp-clinician-messaging-workspace {
    background: #fff;
    border: 1px solid #d2e2ec;
    border-radius: 16px;
    box-shadow: 0 10px 32px rgba(8, 35, 63, .06);
    display: grid;
    grid-template-columns: minmax(280px, 330px) minmax(0, 1fr);
    height: clamp(620px, calc(100vh - 260px), 790px);
    min-height: 620px;
    overflow: hidden;
}

.hp-clinician-conversation-panel {
    background: #f8fbfd;
    border-right: 1px solid #d8e6ee;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    min-width: 0;
}

.hp-clinician-conversation-panel__head {
    border-bottom: 1px solid #d8e6ee;
    display: grid;
    gap: 14px;
    padding: 18px;
}

.hp-clinician-conversation-panel__head > div {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.hp-clinician-conversation-panel__head > div strong {
    color: #082b4b;
    font-size: 16px;
    font-weight: 900;
}

.hp-clinician-conversation-panel__head > div span {
    color: #668095;
    font-size: 11px;
    font-weight: 750;
}

.hp-clinician-conversation-search {
    align-items: center;
    background: #fff;
    border: 1px solid #c9dce8;
    border-radius: 10px;
    color: #648197;
    display: flex;
    gap: 9px;
    margin: 0;
    min-height: 42px;
    padding: 0 12px;
}

.hp-clinician-conversation-search:focus-within {
    border-color: #1283ce;
    box-shadow: 0 0 0 3px rgba(18, 131, 206, .12);
}

.hp-clinician-conversation-search input {
    background: transparent;
    border: 0;
    color: #082b4b;
    font-size: 14px;
    min-width: 0;
    outline: 0;
    padding: 0;
    width: 100%;
}

.hp-clinician-conversation-list {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.hp-clinician-conversation {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #e1ebf1;
    color: #0b2b4c;
    display: grid;
    gap: 11px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    min-height: 82px;
    padding: 13px 16px;
    text-align: left;
    transition: background .18s ease, box-shadow .18s ease;
    width: 100%;
}

.hp-clinician-conversation:hover {
    background: #eef7fb;
}

.hp-clinician-conversation.active {
    background: #e6f4f7;
    box-shadow: inset 3px 0 0 #07877e;
}

.hp-clinician-conversation__avatar,
.hp-clinician-thread-person > span,
.hp-clinician-message-bubble__avatar {
    align-items: center;
    background: #dff3f5;
    border-radius: 50%;
    color: #087f78;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 900;
    justify-content: center;
}

.hp-clinician-conversation__avatar {
    height: 42px;
    width: 42px;
}

.hp-clinician-conversation__body {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.hp-clinician-conversation__body > span {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
    min-width: 0;
}

.hp-clinician-conversation__body strong {
    color: #0b2b4c;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-conversation__body time {
    color: #8297a7;
    flex: 0 0 auto;
    font-size: 9px;
    max-width: 84px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-conversation__body small {
    color: #648197;
    font-size: 11px;
    line-height: 1.35;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-conversation.is-unread .hp-clinician-conversation__body strong,
.hp-clinician-conversation.is-unread .hp-clinician-conversation__body small {
    color: #061f38;
    font-weight: 900;
}

.hp-clinician-conversation__unread {
    align-items: center;
    background: #0b82cf;
    border-radius: 999px;
    color: #fff;
    display: flex;
    font-size: 10px;
    height: 20px;
    justify-content: center;
    min-width: 20px;
    padding: 0 5px;
}

.hp-clinician-conversation-empty {
    align-items: center;
    align-self: center;
    color: #6b8395;
    display: flex;
    flex-direction: column;
    gap: 7px;
    grid-row: 2;
    padding: 26px 18px;
    text-align: center;
}

.hp-clinician-conversation-empty[hidden] {
    display: none !important;
}

.hp-clinician-conversation-empty i {
    color: #0b82cf;
    font-size: 22px;
}

.hp-clinician-conversation-empty strong {
    color: #173b5c;
}

.hp-clinician-conversation-empty span {
    font-size: 12px;
}

.hp-clinician-thread-panel {
    background: #fff;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    min-width: 0;
}

.hp-clinician-thread-head {
    align-items: center;
    border-bottom: 1px solid #dce8ef;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    min-height: 78px;
    padding: 14px 20px;
}

.hp-clinician-thread-person {
    align-items: center;
    display: flex;
    gap: 11px;
    min-width: 0;
}

.hp-clinician-thread-person > span {
    height: 44px;
    width: 44px;
}

.hp-clinician-thread-person > div {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.hp-clinician-thread-person strong {
    color: #082b4b;
    font-size: 15px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-thread-person small {
    color: #668095;
    font-size: 11px;
}

.hp-clinician-thread-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 7px;
}

.hp-clinician-thread-actions button {
    align-items: center;
    background: #fff;
    border: 1px solid #cadce7;
    border-radius: 9px;
    color: #526f84;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 7px;
    min-height: 38px;
    padding: 0 11px;
}

.hp-clinician-thread-actions button:hover {
    background: #f3f8fb;
    border-color: #9ebdce;
    color: #173b5c;
}

.hp-clinician-thread-scroll {
    background: #fbfdfe;
    display: flex;
    flex-direction: column;
    gap: 13px;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 24px;
}

.hp-clinician-message-bubble {
    align-items: flex-end;
    display: flex;
    gap: 8px;
    max-width: min(74%, 680px);
}

.hp-clinician-message-bubble.is-outgoing {
    align-self: flex-end;
}

.hp-clinician-message-bubble.is-incoming {
    align-self: flex-start;
}

.hp-clinician-message-bubble__avatar {
    font-size: 9px;
    height: 28px;
    width: 28px;
}

.hp-clinician-message-bubble > div {
    display: grid;
    gap: 5px;
}

.hp-clinician-message-bubble p {
    background: #fff;
    border: 1px solid #d5e3eb;
    border-radius: 14px 14px 14px 4px;
    color: #153955;
    line-height: 1.5;
    margin: 0;
    overflow-wrap: anywhere;
    padding: 11px 13px;
    white-space: pre-wrap;
}

.hp-clinician-message-bubble.is-outgoing p {
    background: #0a7383;
    border-color: #0a7383;
    border-radius: 14px 14px 4px 14px;
    color: #fff;
}

.hp-clinician-message-bubble footer {
    align-items: center;
    color: #8095a5;
    display: flex;
    font-size: 9px;
    gap: 7px;
}

.hp-clinician-message-bubble.is-outgoing footer {
    justify-content: flex-end;
}

.hp-clinician-message-bubble footer button {
    background: transparent;
    border: 0;
    color: #8095a5;
    height: 24px;
    padding: 0;
    width: 24px;
}

.hp-clinician-message-bubble footer button:hover {
    color: #b23d35;
}

.hp-clinician-inline-composer {
    background: #fff;
    border-top: 1px solid #dce8ef;
    display: grid;
    gap: 9px 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 14px 18px;
}

.hp-clinician-inline-composer label {
    margin: 0;
}

.hp-clinician-inline-composer textarea {
    background: #f8fbfd;
    border: 1px solid #c7dae6;
    border-radius: 11px;
    color: #082b4b;
    display: block;
    font: inherit;
    line-height: 1.45;
    max-height: 130px;
    min-height: 48px;
    padding: 12px 13px;
    resize: vertical;
    width: 100%;
}

.hp-clinician-inline-composer textarea:focus {
    border-color: #1283ce;
    box-shadow: 0 0 0 3px rgba(18, 131, 206, .12);
    outline: 0;
}

.hp-clinician-inline-composer > button {
    align-items: center;
    align-self: stretch;
    background: #0a7383;
    border: 0;
    border-radius: 11px;
    color: #fff;
    display: inline-flex;
    font-weight: 900;
    gap: 8px;
    justify-content: center;
    min-width: 116px;
    padding: 0 17px;
}

.hp-clinician-inline-composer > button:hover {
    background: #075f6c;
}

.hp-clinician-inline-composer > button:disabled {
    cursor: wait;
    opacity: .6;
}

.hp-clinician-inline-composer > small {
    align-items: center;
    color: #6d8394;
    display: flex;
    font-size: 10px;
    gap: 6px;
    grid-column: 1 / -1;
}

.hp-clinician-inline-composer > small i {
    color: #bd7a1b;
}

.hp-clinician-thread-blocked {
    align-items: center;
    background: #fff7f4;
    border-top: 1px solid #f0d6cf;
    color: #a84639;
    display: flex;
    gap: 12px;
    padding: 15px 20px;
}

.hp-clinician-thread-blocked > div {
    display: grid;
    gap: 2px;
}

.hp-clinician-thread-blocked span {
    color: #7c625e;
    font-size: 11px;
}

.hp-clinician-thread-placeholder {
    align-items: center;
    align-self: center;
    color: #698295;
    display: flex;
    flex-direction: column;
    gap: 8px;
    grid-row: 1 / -1;
    justify-self: center;
    max-width: 340px;
    padding: 30px;
    text-align: center;
}

.hp-clinician-thread-placeholder > span {
    align-items: center;
    background: #e5f4f5;
    border-radius: 50%;
    color: #087f78;
    display: flex;
    font-size: 22px;
    height: 56px;
    justify-content: center;
    width: 56px;
}

.hp-clinician-thread-placeholder strong {
    color: #173b5c;
    font-size: 17px;
}

.hp-clinician-thread-placeholder p {
    line-height: 1.5;
    margin: 0;
}

@media (max-width: 1100px) {
    .hp-clinician-messaging-workspace {
        grid-template-columns: minmax(250px, 300px) minmax(0, 1fr);
    }

    .hp-clinician-thread-actions button span {
        display: none;
    }

    .hp-clinician-thread-actions button {
        justify-content: center;
        padding: 0;
        width: 38px;
    }
}

@media (max-width: 820px) {
    .hp-clinician-messaging-workspace {
        grid-template-columns: 1fr;
        height: auto;
        min-height: 0;
        overflow: visible;
    }

    .hp-clinician-conversation-panel {
        border-bottom: 1px solid #d8e6ee;
        border-right: 0;
        max-height: 330px;
        min-height: 250px;
    }

    .hp-clinician-thread-panel {
        min-height: 580px;
    }
}

@media (max-width: 560px) {
    .hp-clinician-messaging-workspace {
        border-radius: 12px;
    }

    .hp-clinician-thread-head {
        padding: 12px;
    }

    .hp-clinician-thread-person > span {
        height: 38px;
        width: 38px;
    }

    .hp-clinician-thread-scroll {
        padding: 18px 12px;
    }

    .hp-clinician-message-bubble {
        max-width: 91%;
    }

    .hp-clinician-inline-composer {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    .hp-clinician-inline-composer > button {
        min-height: 46px;
    }
}

/* Public homepage refresh */
.healthcare-home-shell {
    background: #fff;
    color: #102a43;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    min-height: 100vh;
    overflow-x: hidden;
    width: 100vw;
}

.healthcare-home-shell a {
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.healthcare-home-nav {
    background: #117ed0;
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    position: sticky;
    top: 0;
    z-index: 20;
}

.healthcare-home-nav .container {
    align-items: center;
    display: flex;
    justify-content: space-between;
    min-height: 74px;
}

.healthcare-home-brand {
    align-items: center;
    color: #fff;
    display: flex;
    font-size: 21px;
    font-weight: 800;
    gap: 11px;
}

.healthcare-home-brand:hover,
.healthcare-home-brand:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-home-brand-mark {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(7, 52, 94, .20);
    color: #117ed0;
    display: inline-flex;
    font-size: 13px;
    height: 36px;
    justify-content: center;
    letter-spacing: 0;
    width: 36px;
}

.healthcare-home-nav-links {
    align-items: center;
    display: flex;
    gap: 20px;
}

.healthcare-home-nav-links a:not(.btn) {
    color: rgba(255, 255, 255, .92);
    font-weight: 600;
}

.healthcare-home-nav-links a:not(.btn):hover,
.healthcare-home-nav-links a:not(.btn):focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-home-nav-links .btn {
    background: #fff;
    border-color: #fff;
    border-radius: 7px;
    color: #0b4f84;
    font-weight: 700;
    padding: 9px 16px;
}

.healthcare-home-language-switch {
    align-items: center;
    background: rgba(255, 255, 255, .15);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    display: flex;
    gap: 4px;
    padding: 3px;
}

.healthcare-home-nav-links .healthcare-home-language-switch a {
    border-radius: 999px;
    color: rgba(255, 255, 255, .86);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    padding: 7px 9px;
}

.healthcare-home-nav-links .healthcare-home-language-switch a.active,
.healthcare-home-nav-links .healthcare-home-language-switch a:hover,
.healthcare-home-nav-links .healthcare-home-language-switch a:focus {
    background: #fff;
    color: #117ed0;
    text-decoration: none;
}

.healthcare-language-label-short {
    display: none;
}

/* Keep the image-independent hero surface dark enough for normal-size white copy. */
.healthcare-home-shell .healthcare-home-hero {
    background-color: #0c6eae;
    background-image:
        linear-gradient(90deg, rgba(15,126,214,.98) 0%, rgba(15,126,214,.95) 45%, rgba(15,126,214,.50) 70%, rgba(15,126,214,.20) 100%),
        var(--hp-home-hero-image);
    background-position: right 20%;
    background-repeat: no-repeat;
    background-size: cover;
    margin-left: 0;
    margin-right: 0;
    border-radius: 0 0 24px 24px;
    min-height: 560px;
    padding: 72px 0 58px;
    width: auto;
}

@supports (background-image: image-set(url("") type("image/avif") 1x)) {
    .healthcare-home-shell .healthcare-home-hero {
        background-image:
            linear-gradient(90deg, rgba(15,126,214,.98) 0%, rgba(15,126,214,.95) 45%, rgba(15,126,214,.50) 70%, rgba(15,126,214,.20) 100%),
            var(--hp-home-hero-image-set);
    }
}

.healthcare-home-shell .healthcare-home-copy {
    max-width: 740px;
}

.healthcare-home-shell .healthcare-home-kicker {
    color: rgba(255, 255, 255, .90);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 14px;
    text-transform: uppercase;
}

.healthcare-home-shell .healthcare-home-copy h1 {
    color: #fff;
    font-size: 54px;
    font-weight: 800;
    line-height: 1.05;
    margin: 0 0 18px;
    max-width: 690px;
}

.healthcare-home-shell .healthcare-home-subtitle {
    color: rgba(255, 255, 255, .88);
    font-size: 19px;
    line-height: 1.55;
    margin-bottom: 28px;
    max-width: 600px;
}

.healthcare-home-shell .healthcare-home-search {
    align-items: stretch;
    background: #fff;
    border: 1px solid #d7e0e8;
    border-radius: 10px;
    box-shadow: 0 22px 54px rgba(7, 52, 94, .24);
    display: grid;
    gap: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 148px;
    max-width: 800px;
    overflow: visible;
}

.healthcare-home-shell .healthcare-home-search-field {
    align-items: center;
    background: #fff;
    border-bottom: 0;
    border-right: 1px solid #e4ecf3;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    grid-template-rows: auto auto;
    margin: 0;
    min-height: 76px;
    padding: 12px 18px;
}

.healthcare-booking-secondary-action {
    margin-top: 10px;
    min-height: 44px;
}

.healthcare-booking-choice-help {
    display: block;
    margin-top: 12px;
    color: #64748b;
    line-height: 1.5;
    text-align: center;
}

.healthcare-booking-guest-success {
    display: flex;
    min-height: 430px;
    padding: 48px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

.healthcare-booking-success-icon {
    display: inline-flex;
    width: 64px;
    height: 64px;
    margin-bottom: 18px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #047857;
    background: #d1fae5;
    font-size: 26px;
}

.healthcare-booking-guest-success h2 {
    max-width: 560px;
    margin: 4px 0 12px;
    color: #082f49;
}

.healthcare-booking-guest-success > p:not(.hp-pro-kicker) {
    max-width: 580px;
    color: #475569;
    line-height: 1.65;
}

.healthcare-booking-guest-actions {
    display: flex;
    gap: 10px;
    margin: 24px 0 14px;
    justify-content: center;
}

.healthcare-booking-guest-success > small {
    max-width: 560px;
    color: #64748b;
    line-height: 1.5;
}

@media (max-width: 767px) {
    .healthcare-booking-guest-success {
        min-height: 360px;
        padding: 32px 20px;
    }

    .healthcare-booking-guest-actions {
        width: 100%;
        flex-direction: column;
    }

    .healthcare-booking-guest-actions .btn {
        width: 100%;
        min-height: 44px;
    }
}

.healthcare-home-shell .healthcare-home-search-field span {
    color: #52697a;
    font-size: 11px;
    font-weight: 800;
    grid-column: 1 / 3;
    letter-spacing: 0;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.healthcare-home-shell .healthcare-home-search-field i {
    color: #0b6fb8;
    font-size: 17px;
    margin-right: 0;
}

.healthcare-home-shell .healthcare-home-search-field input {
    border: 0;
    color: #102a43;
    font-size: 15px;
    grid-column: 2;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.healthcare-home-shell .healthcare-home-search-field input::placeholder {
    color: #8aa0b3;
}

.healthcare-home-shell .healthcare-home-search .btn {
    align-items: center;
    background: #092c44;
    border-color: #092c44;
    border-radius: 0;
    display: inline-flex;
    font-size: 15px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 76px;
}

.healthcare-home-shell .healthcare-home-search .btn:hover,
.healthcare-home-shell .healthcare-home-search .btn:focus-visible {
    background: #0e4566;
    border-color: #0e4566;
    color: #fff;
    outline: 0;
}

.healthcare-home-shell .healthcare-home-search .btn:focus-visible {
    box-shadow: 0 0 0 3px rgba(11, 111, 184, .28);
}

.healthcare-home-shell .healthcare-home-search .btn i {
    font-size: 13px;
}

.healthcare-home-assurance {
    color: rgba(255, 255, 255, .92);
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    gap: 10px 18px;
    margin-top: 17px;
}

.healthcare-home-assurance i {
    color: #fff;
    margin-right: 7px;
}

.healthcare-home-shell .healthcare-home-quicklinks {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.healthcare-home-shell .healthcare-home-quicklinks a {
    background: rgba(255, 255, 255, .92);
    border: 1px solid #d7e0e8;
    border-radius: 999px;
    color: #243b53;
    font-size: 13px;
    font-weight: 700;
    padding: 8px 12px;
}

.healthcare-home-shell .healthcare-home-quicklinks a:hover,
.healthcare-home-shell .healthcare-home-quicklinks a:focus {
    background: #fff;
    border-color: #fff;
    color: #0b4f84;
    text-decoration: none;
    transform: translateY(-1px);
}

.healthcare-home-shell .healthcare-home-section {
    background: #fff;
    margin-left: 0;
    margin-right: 0;
    padding: 62px 0;
    width: auto;
}

.healthcare-home-shell .healthcare-home-section-soft {
    background: #f5f8fb;
}

.healthcare-section-heading {
    margin-bottom: 30px;
    max-width: 680px;
}

.healthcare-section-heading p {
    color: #0f766e;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0 0 9px;
    text-transform: uppercase;
}

.healthcare-section-heading h2 {
    color: #102a43;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0;
}

.healthcare-step-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.healthcare-step-card {
    background: #fff;
    border: 1px solid #dce5ed;
    border-radius: 8px;
    min-height: 222px;
    padding: 24px;
    position: relative;
}

.healthcare-step-card span {
    align-items: center;
    background: #e6f7f5;
    border-radius: 999px;
    color: #0f766e;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    height: 30px;
    justify-content: center;
    margin-bottom: 24px;
    width: 30px;
}

.healthcare-step-card i {
    color: #0f766e;
    font-size: 28px;
    position: absolute;
    right: 24px;
    top: 24px;
}

.healthcare-step-card h3 {
    color: #102a43;
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 10px;
}

.healthcare-step-card p {
    color: #52697a;
    line-height: 1.6;
    margin: 0;
}

.healthcare-home-shell .healthcare-feature-card {
    background: #fff;
    border: 1px solid #dce5ed;
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(16, 42, 67, .07);
    min-height: 218px;
    padding: 26px;
}

.healthcare-home-shell .healthcare-feature-card i {
    align-items: center;
    background: #e6f7f5;
    border-radius: 8px;
    color: #0f766e;
    display: inline-flex;
    font-size: 26px;
    height: 46px;
    justify-content: center;
    margin-bottom: 18px;
    width: 46px;
}

.healthcare-home-shell .healthcare-feature-card h3 {
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.healthcare-home-shell .healthcare-feature-card p {
    color: #52697a;
    font-size: 15px;
    line-height: 1.6;
}

.healthcare-home-shell .healthcare-home-band {
    background: linear-gradient(135deg, #e6f7f5 0%, #eef6ff 100%);
    margin-left: 0;
    margin-right: 0;
    padding: 56px 0;
    width: auto;
}

.healthcare-home-band-inner {
    align-items: center;
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.healthcare-home-shell .healthcare-home-band h2 {
    color: #102a43;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 12px;
}

.healthcare-home-shell .healthcare-home-band p {
    color: #40576d;
    font-size: 17px;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 680px;
}

.healthcare-home-shell .healthcare-home-band-actions {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    padding-top: 0;
    text-align: right;
}

.healthcare-home-shell .healthcare-home-band-actions .btn {
    border-radius: 7px;
    font-weight: 800;
    padding: 10px 16px;
}

.healthcare-mobile-apps {
    background: #f7fafc;
    border-top: 1px solid #edf3f8;
    padding: 58px 0;
}

.healthcare-mobile-apps-card {
    align-items: center;
    background: #fff;
    border: 1px solid #d8e5ef;
    border-radius: 8px;
    box-shadow: 0 14px 34px rgba(16, 42, 67, .06);
    display: grid;
    gap: 0;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .92fr);
    overflow: hidden;
    position: relative;
}

.healthcare-mobile-apps-copy {
    padding: 42px;
    position: relative;
    z-index: 2;
}

.healthcare-mobile-apps-kicker {
    color: #1684d8;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    margin: 0 0 10px;
    text-transform: uppercase;
}

.healthcare-mobile-apps-copy h2 {
    color: #071f36;
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -.018em;
    line-height: 1.2;
    margin: 0 0 12px;
    max-width: 560px;
}

.healthcare-mobile-apps-text {
    color: #52697a;
    font-size: 15px;
    line-height: 1.55;
    margin: 0;
    max-width: 590px;
}

.healthcare-mobile-apps-stores {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 24px;
    max-width: 430px;
}

.healthcare-mobile-apps-store {
    align-items: center;
    background: #fff;
    border: 1px solid #d8e5ef;
    border-radius: 8px;
    display: flex;
    min-height: 72px;
    overflow: hidden;
    padding: 12px 14px;
    position: relative;
}

.healthcare-mobile-apps-store--available {
    justify-content: center;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.healthcare-mobile-apps-store--available:hover,
.healthcare-mobile-apps-store--available:focus {
    border-color: #1684d8;
    box-shadow: 0 8px 20px rgba(16, 42, 67, .09);
    outline: 3px solid rgba(22, 132, 216, .16);
    outline-offset: 2px;
    transform: translateY(-2px);
}

.healthcare-mobile-apps-store--available img {
    display: block;
    max-height: 50px;
    max-width: 174px;
    object-fit: contain;
    width: 100%;
}

.healthcare-mobile-apps-store--soon {
    color: #071f36;
    padding-top: 24px;
}

.healthcare-mobile-apps-status {
    background: #eef6fb;
    border-bottom: 1px solid #d8e5ef;
    border-bottom-left-radius: 6px;
    border-left: 1px solid #d8e5ef;
    color: #1178be;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .03em;
    padding: 5px 8px;
    position: absolute;
    right: 0;
    text-transform: uppercase;
    top: 0;
}

.healthcare-mobile-apps-store-icon {
    align-items: center;
    background: #eef6fb;
    border-radius: 8px;
    color: #1684d8;
    display: inline-flex;
    flex: 0 0 38px;
    font-size: 21px;
    height: 38px;
    justify-content: center;
}

.healthcare-mobile-apps-store-copy {
    display: grid;
    gap: 1px;
    margin-left: 10px;
}

.healthcare-mobile-apps-store-copy small {
    color: #6a7f90;
    font-size: 10px;
    font-weight: 700;
}

.healthcare-mobile-apps-store-copy strong {
    color: #071f36;
    font-size: 14px;
    line-height: 1.2;
}

.healthcare-mobile-apps-visual {
    align-self: stretch;
    background: #eaf5fc;
    border-left: 1px solid #e5edf4;
    display: flex;
    min-height: 360px;
}

.healthcare-mobile-apps-visual img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

@media (max-width: 960px) {
    .healthcare-mobile-apps-card {
        grid-template-columns: minmax(0, 1.06fr) minmax(300px, .94fr);
    }

    .healthcare-mobile-apps-copy {
        padding: 36px;
    }

    .healthcare-mobile-apps-copy h2 {
        font-size: 28px;
    }

    .healthcare-mobile-apps-store {
        padding-left: 10px;
        padding-right: 10px;
    }

    .healthcare-mobile-apps-store-icon {
        flex-basis: 32px;
        font-size: 20px;
        height: 32px;
    }

    .healthcare-mobile-apps-store-copy {
        margin-left: 7px;
    }

    .healthcare-mobile-apps-store-copy strong {
        font-size: 14px;
        white-space: nowrap;
    }
}

.healthcare-home-final {
    background: #f7fafc;
    border-top: 1px solid #e1ebf2;
    padding: 14px 0;
}

.healthcare-home-shell .healthcare-disclaimer {
    color: #496579;
    margin: 0;
}

.healthcare-home-shell .healthcare-disclaimer--footer {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

.healthcare-home-footer {
    align-items: center;
    color: #6b7f92;
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    gap: 14px;
    justify-content: space-between;
    padding-top: 18px;
}

.healthcare-home-footer a,
.healthcare-mobile-footer a {
    color: #0b73bd;
    font-weight: 800;
    text-decoration: none;
}

.healthcare-home-footer a:hover,
.healthcare-home-footer a:focus,
.healthcare-mobile-footer a:hover,
.healthcare-mobile-footer a:focus {
    color: #075891;
    text-decoration: underline;
}

.healthcare-home-footer-language {
    align-items: center;
    background: #edf4f9;
    border: 1px solid #d7e4ee;
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 2px;
    padding: 2px;
}

.healthcare-home-footer .healthcare-home-footer-language a {
    border-radius: 999px;
    color: #52697a;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    padding: 6px 9px;
    text-decoration: none;
}

.healthcare-home-footer .healthcare-home-footer-language a.active,
.healthcare-home-footer .healthcare-home-footer-language a:hover,
.healthcare-home-footer .healthcare-home-footer-language a:focus {
    background: #fff;
    box-shadow: 0 1px 3px rgba(16, 42, 67, .14);
    color: #0b73bd;
    text-decoration: none;
}

.healthcare-search-shell {
    background: #f4f8fb;
    color: #102a43;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    min-height: 100vh;
    overflow-x: hidden;
    width: auto;
}

.healthcare-search-topbar {
    background: #117ed0;
    color: #fff;
    padding: 14px 0;
}

.healthcare-search-topbar .container {
    align-items: center;
    display: grid;
    gap: 18px;
    grid-template-columns: auto minmax(0, 760px) auto;
}

.healthcare-search-brand {
    align-items: center;
    color: #fff;
    display: inline-flex;
    font-size: 19px;
    font-weight: 800;
    gap: 10px;
}

.healthcare-search-brand:hover,
.healthcare-search-brand:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-search-brand-mark {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #117ed0;
    display: inline-flex;
    font-size: 12px;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.healthcare-search-top-form {
    align-items: stretch;
    background: #fff;
    border-radius: 999px;
    box-shadow: 0 12px 24px rgba(7, 52, 94, .20);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, .82fr) 132px;
    overflow: visible;
}

.healthcare-search-top-form label {
    align-items: center;
    border-right: 1px solid #e4ecf3;
    display: flex;
    gap: 9px;
    margin: 0;
    min-height: 48px;
    padding: 0 16px;
}

.healthcare-search-top-form i {
    color: #52697a;
}

.healthcare-search-top-form input {
    border: 0;
    color: #102a43;
    flex: 1 1 auto;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.healthcare-search-top-form .btn {
    background: #071f36;
    border: 3px solid #fff;
    border-radius: 999px;
    font-weight: 800;
    min-height: 48px;
}

.healthcare-search-actions {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    text-align: right;
}

.healthcare-search-actions a {
    color: rgba(255, 255, 255, .92);
    font-weight: 700;
}

.healthcare-search-actions a:hover,
.healthcare-search-actions a:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-search-language-switch {
    align-items: center;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 3px;
    padding: 3px;
}

.healthcare-search-actions .healthcare-search-language-switch a {
    border-radius: 999px;
    color: rgba(255, 255, 255, .9);
    font-size: 12px;
    line-height: 1;
    padding: 7px 9px;
}

.healthcare-search-actions .healthcare-search-language-switch a.active,
.healthcare-search-actions .healthcare-search-language-switch a:hover,
.healthcare-search-actions .healthcare-search-language-switch a:focus {
    background: #fff;
    color: #117ed0;
}

.healthcare-search-filterbar {
    background: #fff;
    border-bottom: 1px solid #dbe7f0;
    box-shadow: 0 8px 20px rgba(16, 42, 67, .04);
}

.healthcare-search-filterbar .container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-bottom: 10px;
    padding-top: 10px;
    position: relative;
}

.healthcare-search-filterbar button {
    align-items: center;
    background: #fff;
    border: 1px solid #d7e0e8;
    border-radius: 999px;
    color: #243b53;
    display: inline-flex;
    font-weight: 700;
    gap: 7px;
    padding: 8px 12px;
}

.healthcare-search-filterbar button:hover,
.healthcare-search-filterbar button:focus,
.healthcare-search-filterbar button.is-active {
    border-color: #117ed0;
    color: #117ed0;
}

.healthcare-search-filter-group {
    position: relative;
}

.healthcare-search-filter-menu {
    background: #fff;
    border: 1px solid #cfe0ee;
    border-radius: 8px;
    box-shadow: 0 18px 34px rgba(16, 42, 67, .14);
    display: grid;
    gap: 6px;
    left: 0;
    min-width: 260px;
    padding: 12px;
    position: absolute;
    top: calc(100% + 8px);
    z-index: 40;
}

.healthcare-search-filter-menu[hidden] {
    display: none;
}

.healthcare-search-filter-menu strong {
    color: #102a43;
    font-size: 13px;
    margin-bottom: 2px;
}

.healthcare-search-filter-menu a,
.healthcare-search-filter-menu span {
    border-radius: 7px;
    color: #40576d;
    display: block;
    font-weight: 700;
    padding: 8px 10px;
}

.healthcare-search-filter-menu a:hover,
.healthcare-search-filter-menu a:focus,
.healthcare-search-filter-menu a.active {
    background: #eaf4ff;
    color: #0b4f84;
    text-decoration: none;
}

.healthcare-search-filter-menu small {
    color: #6b7f92;
    display: block;
    font-weight: 600;
    margin-top: 3px;
}

.healthcare-search-map-toggle {
    margin-left: auto;
}

.healthcare-search-main {
    padding-bottom: 36px;
    padding-top: 22px;
}

.healthcare-search-layout {
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr);
}

.healthcare-search-layout > * {
    min-width: 0;
}

.healthcare-search-shell.map-open .healthcare-search-layout {
    grid-template-columns: minmax(0, 720px) minmax(300px, 390px);
}

.healthcare-search-summary {
    margin-bottom: 14px;
}

.healthcare-search-summary p {
    color: #52697a;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.healthcare-search-summary h1 {
    color: #102a43;
    font-size: 24px;
    font-weight: 800;
    margin: 0;
}

.healthcare-search-query {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.healthcare-search-query span {
    background: #eaf4ff;
    border: 1px solid #cfe5f7;
    border-radius: 999px;
    color: #0b4f84;
    font-weight: 700;
    padding: 6px 10px;
}

.healthcare-result-card {
    background: #fff;
    border: 1px solid #dbe7f0;
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(16, 42, 67, .04);
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) 270px;
    margin-bottom: 12px;
    padding: 18px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.healthcare-result-card.is-highlighted {
    border-color: #117ed0;
    box-shadow: 0 18px 34px rgba(17, 126, 208, .18);
    transform: translateY(-2px);
}

.healthcare-result-map-selected {
    align-items: center;
    background: #e7f4ff;
    border: 1px solid #8dc7ee;
    border-radius: 999px;
    color: #075f9e;
    display: none;
    font-size: 12px;
    font-weight: 800;
    gap: 6px;
    margin-bottom: 8px;
    padding: 5px 9px;
    width: fit-content;
}

.healthcare-result-card.is-map-selected .healthcare-result-map-selected {
    display: inline-flex;
}

.healthcare-result-card.is-map-selected {
    border-color: #1685d2;
    border-width: 2px;
    box-shadow: 0 16px 34px rgba(22, 133, 210, .20);
}

.healthcare-result-card.is-unverified-lead {
    background: #fffaf3;
    background: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 8%, #fff);
    border-color: var(--hp-unverified-accent, #f4c98a);
    border-style: solid;
}

.healthcare-search-load-more {
    align-items: center;
    display: grid;
    gap: 10px;
    justify-items: center;
    padding: 18px 0 8px;
}

.healthcare-search-load-more p {
    color: #587088;
    font-size: 13px;
    margin: 0;
}

.healthcare-search-load-more .btn {
    border-radius: 999px;
    font-weight: 800;
    min-width: 190px;
}

.healthcare-result-card-main {
    display: grid;
    gap: 14px;
    grid-template-columns: 58px minmax(0, 1fr);
}

.healthcare-result-avatar {
    align-items: center;
    background: #eaf4ff;
    border-radius: 50%;
    color: #117ed0;
    display: flex;
    font-size: 16px;
    font-weight: 800;
    height: 58px;
    justify-content: center;
    overflow: hidden;
    width: 58px;
}

.healthcare-result-avatar img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.healthcare-result-avatar picture {
    display: block;
    height: 100%;
    width: 100%;
}

.healthcare-result-card.is-unverified-lead .healthcare-result-avatar {
    background: #fff4e5;
    background: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 20%, #fff);
    color: #704515;
    color: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 58%, #3d2a14);
}

.healthcare-result-name {
    color: #117ed0;
    display: inline-block;
    font-size: 17px;
    font-weight: 800;
    margin-bottom: 2px;
}

.healthcare-result-name:hover,
.healthcare-result-name:focus {
    color: #0b4f84;
}

.healthcare-result-identity p {
    color: #40576d;
    margin: 0 0 9px;
}

.healthcare-result-tags,
.healthcare-result-badges,
.healthcare-result-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.healthcare-result-tags {
    margin-bottom: 10px;
}

.healthcare-result-tags span {
    background: #f1f7fb;
    border-radius: 999px;
    color: #40576d;
    font-size: 12px;
    font-weight: 700;
    padding: 5px 8px;
}

.healthcare-result-meta {
    color: #52697a;
    flex-direction: column;
    gap: 5px;
    margin-bottom: 10px;
}

.healthcare-result-meta span {
    align-items: flex-start;
    display: flex;
    gap: 7px;
}

.healthcare-result-meta i {
    color: #117ed0;
    margin-top: 2px;
    width: 14px;
}

.healthcare-result-badges span,
.healthcare-result-badges a {
    align-items: center;
    color: #40576d;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 5px;
}

.healthcare-result-badges span i,
.healthcare-result-badges a i {
    color: #0f766e;
}

.healthcare-result-badges .healthcare-result-verified-badge {
    color: var(--hp-public-success, #08745f);
}

.healthcare-result-badges .healthcare-result-verified-shield {
    display: inline-grid;
    flex: 0 0 18px;
    height: 18px;
    place-items: center;
    position: relative;
    width: 18px;
}

.healthcare-result-badges .healthcare-result-verified-shield .fa-shield {
    color: var(--hp-public-success, #08745f);
    font-size: 18px;
    line-height: 1;
}

.healthcare-result-badges .healthcare-result-verified-shield::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
    height: 7px;
    left: 50%;
    position: absolute;
    top: 45%;
    transform: translate(-50%, -50%) rotate(45deg);
    width: 4px;
}

.healthcare-result-badges .healthcare-result-unverified-badge {
    color: #704515;
    color: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 55%, #3d2a14);
}

.healthcare-result-badges .healthcare-result-unverified-badge i {
    color: #9a641f;
    color: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 72%, #5c3510);
}

.healthcare-result-badges .healthcare-result-source-attribution {
    color: #52697a;
    text-decoration: none;
}

.healthcare-result-badges .healthcare-result-source-attribution:hover,
.healthcare-result-badges .healthcare-result-source-attribution:focus {
    color: #0b4f84;
}

.healthcare-result-availability {
    border-left: 1px solid #e6edf3;
    padding-left: 18px;
}

.healthcare-result-availability-head {
    align-items: baseline;
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

.healthcare-result-availability-head span {
    color: #102a43;
    font-weight: 800;
}

.healthcare-result-availability-head small {
    color: #6b7f92;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.healthcare-result-slots {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
}

.healthcare-result-slots a {
    background: #eaf4ff;
    border: 1px solid #cfe5f7;
    border-radius: 7px;
    color: #0b4f84;
    display: flex;
    justify-content: space-between;
    padding: 8px 10px;
}

.healthcare-result-slots a:hover,
.healthcare-result-slots a:focus {
    background: #117ed0;
    border-color: #117ed0;
    color: #fff;
    text-decoration: none;
}

.healthcare-result-no-slots {
    background: #f7fafc;
    border-radius: 7px;
    color: #6b7f92;
    margin: 0;
    padding: 12px;
}

.healthcare-result-actions {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
    margin-top: 12px;
}

.healthcare-result-actions .btn {
    border-radius: 7px;
    font-weight: 800;
}

.healthcare-result-contact-list,
.healthcare-profile-contact-list {
    display: grid;
    gap: 8px;
}

.healthcare-result-contact-list a,
.healthcare-result-contact-list button,
.healthcare-profile-contact-list a,
.healthcare-profile-contact-list button {
    align-items: center;
    color: #0b4f84;
    display: flex;
    gap: 8px;
    min-width: 0;
    overflow-wrap: anywhere;
    text-decoration: none;
}

.healthcare-result-contact-list a:hover,
.healthcare-result-contact-list a:focus,
.healthcare-result-contact-list button:hover,
.healthcare-result-contact-list button:focus,
.healthcare-profile-contact-list a:hover,
.healthcare-profile-contact-list a:focus,
.healthcare-profile-contact-list button:hover,
.healthcare-profile-contact-list button:focus {
    color: #117ed0;
    text-decoration: underline;
}

.healthcare-result-contact-list i,
.healthcare-profile-contact-list i,
.hp-contact-reveal--summary i {
    color: #117ed0;
    flex: 0 0 16px;
    text-align: center;
}

.healthcare-search-map-column {
    display: none;
}

.healthcare-search-shell.map-open .healthcare-search-map-column {
    display: block;
}

.healthcare-search-map-panel {
    position: sticky;
    top: 18px;
}

.healthcare-search-map-head {
    align-items: center;
    background: #fff;
    border: 1px solid #dbe7f0;
    border-bottom: 0;
    border-radius: 8px 8px 0 0;
    display: flex;
    justify-content: space-between;
    padding: 12px 14px;
}

.healthcare-search-map-head button {
    background: transparent;
    border: 0;
    color: #52697a;
}

.healthcare-search-map-canvas {
    background: #edf6fb;
    border: 1px solid #dbe7f0;
    border-radius: 0 0 8px 8px;
    height: 420px;
    min-height: 360px;
    overflow: hidden;
    position: relative;
    z-index: 0;
}

.hp-contact-reveal {
    cursor: pointer;
    font: inherit;
}

.hp-contact-reveal--link,
.hp-contact-reveal--summary {
    background: transparent;
    border: 0;
    padding: 0;
    text-align: left;
}

.hp-contact-reveal:disabled {
    cursor: wait;
    opacity: .7;
}

.hp-contact-reveal-results {
    display: grid;
    gap: 6px;
}

.healthcare-search-map-canvas::before,
.healthcare-search-map-canvas::after {
    display: none;
}

.healthcare-search-map-canvas.leaflet-container {
    height: 420px;
    min-height: 360px;
}

.healthcare-leaflet-marker {
    align-items: center;
    background: transparent;
    border: 0;
    display: flex;
    justify-content: center;
    touch-action: manipulation;
}

.healthcare-leaflet-marker span {
    background: #071f36;
    border: 3px solid #fff;
    border-radius: 999px;
    box-shadow: 0 10px 22px rgba(7, 31, 54, .30);
    display: block;
    height: 26px;
    position: relative;
    pointer-events: none;
    transition: background-color .16s ease, box-shadow .16s ease, height .16s ease, transform .16s ease, width .16s ease;
    width: 26px;
}

.healthcare-leaflet-marker span::after {
    background: #117ed0;
    border-radius: 999px;
    content: '';
    height: 8px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 8px;
}

.healthcare-leaflet-marker.is-active span {
    background: #117ed0;
    box-shadow: 0 14px 30px rgba(17, 126, 208, .42);
    height: 32px;
    transform: translateY(-4px);
    width: 32px;
}

.healthcare-leaflet-marker.is-active span::after {
    background: #fff;
}

.healthcare-search-map-canvas .leaflet-popup-content {
    color: #102a43;
    font-family: inherit;
    margin: 10px 12px;
}

.healthcare-search-map-canvas .healthcare-map-popup-name {
    color: #0875c9;
    display: grid;
    gap: 2px;
    justify-content: center;
    min-height: 44px;
    padding: 4px 0;
    text-decoration: none;
}

.healthcare-search-map-canvas .healthcare-map-popup-name > span:first-child {
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;
}

.healthcare-search-map-canvas .healthcare-map-popup-name small {
    color: #0875c9;
    font-size: 11px;
    font-weight: 800;
}

.healthcare-search-map-canvas .healthcare-map-popup-name:hover,
.healthcare-search-map-canvas .healthcare-map-popup-name:focus {
    color: #064e83;
    text-decoration: underline;
}

.healthcare-search-map-canvas .healthcare-map-popup-location {
    align-items: flex-start;
    color: #52697a;
    display: flex;
    font-size: 12px;
    gap: 6px;
    line-height: 1.35;
    margin-top: 8px;
}

.healthcare-search-map-canvas .healthcare-map-popup-location i {
    color: #1685d2;
    margin-top: 1px;
}

.healthcare-map-pin {
    background: #071f36;
    border: 2px solid #fff;
    border-radius: 999px;
    box-shadow: 0 10px 22px rgba(7, 31, 54, .24);
    color: #fff;
    height: 30px;
    padding: 0;
    position: absolute;
    transform: translate(-50%, -50%);
    width: 30px;
    z-index: 2;
}

.healthcare-map-pin span {
    font-size: 12px;
    font-weight: 800;
}

.healthcare-map-pin strong,
.healthcare-map-pin small {
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 8px 18px rgba(16, 42, 67, .16);
    color: #102a43;
    display: none;
    left: 34px;
    line-height: 1.25;
    min-width: 180px;
    padding: 8px 9px;
    position: absolute;
    text-align: left;
    top: -7px;
}

.healthcare-map-pin small {
    color: #52697a;
    font-size: 11px;
    font-weight: 600;
    padding-top: 27px;
}

.healthcare-map-pin:hover,
.healthcare-map-pin:focus {
    background: #117ed0;
    z-index: 4;
}

.healthcare-map-pin:hover strong,
.healthcare-map-pin:hover small,
.healthcare-map-pin:focus strong,
.healthcare-map-pin:focus small {
    display: block;
}

.healthcare-search-map-empty,
.healthcare-search-empty {
    align-items: center;
    color: #52697a;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    min-height: 220px;
    padding: 28px;
    text-align: center;
}

.healthcare-search-map-empty {
    background: rgba(237, 246, 251, .92);
    inset: 0;
    min-height: 100%;
    position: absolute;
    z-index: 500;
}

.healthcare-search-map-empty[hidden] {
    display: none;
}

.healthcare-search-empty {
    background: #fff;
    border: 1px solid #dbe7f0;
    border-radius: 8px;
    margin-bottom: 16px;
}

.healthcare-search-map-empty i,
.healthcare-search-empty i {
    color: #117ed0;
    font-size: 30px;
}

.healthcare-autocomplete-host {
    position: relative;
}

.healthcare-autocomplete-menu {
    background: #fff;
    border: 1px solid #b8d5e8;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 18px 38px rgba(7, 52, 94, .2);
    display: flex;
    flex-direction: column;
    left: -1px;
    max-height: min(420px, 65vh);
    overflow: hidden;
    position: absolute;
    right: -1px;
    top: calc(100% + 1px);
    z-index: 50;
}

.healthcare-autocomplete-menu__heading {
    background: #f7fbfe;
    border-bottom: 1px solid #dce9f2;
    color: #527086;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .035em;
    padding: 10px 15px 9px;
    text-transform: uppercase;
}

.healthcare-autocomplete-options {
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.healthcare-autocomplete-option {
    align-items: stretch;
    background: #fff;
    border: 0;
    border-top: 1px solid #e5eef5;
    box-sizing: border-box;
    color: #123b56;
    display: flex;
    font: inherit;
    line-height: 1.4;
    min-height: 64px;
    padding: 11px 15px;
    text-align: left;
    width: 100%;
}

.healthcare-autocomplete-option:first-child {
    border-top: 0;
}

.healthcare-autocomplete-option.is-specialist {
    align-items: center;
    min-height: 44px;
    padding-bottom: 8px;
    padding-top: 8px;
}

.healthcare-autocomplete-option > span {
    color: #123b56;
    font-size: 15px;
    font-weight: 750;
    min-width: 0;
}

.healthcare-autocomplete-option__content {
    display: grid;
    gap: 3px;
    min-width: 0;
    width: 100%;
}

.healthcare-autocomplete-option__content strong {
    color: #123b58;
    display: block;
    font-size: 15px;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.healthcare-autocomplete-option:hover,
.healthcare-autocomplete-option:focus {
    background: #edf7ff;
    color: #073f68;
    outline: 0;
}

.healthcare-autocomplete-option:focus-visible {
    box-shadow: inset 0 0 0 2px #1683c7;
    position: relative;
    z-index: 1;
}

.healthcare-autocomplete-option.is-near-me {
    align-items: flex-start;
    border-bottom: 1px solid #dbeaf5;
    background: #effaf8;
    color: #086f69;
    flex-direction: column;
    font-weight: 800;
    gap: 3px;
    min-height: 62px;
}

.healthcare-autocomplete-option.is-near-me:hover,
.healthcare-autocomplete-option.is-near-me:focus {
    background: #e2f5f1;
}

.healthcare-autocomplete-option.is-near-me small {
    align-self: stretch;
    max-width: 100%;
    white-space: normal;
}
.healthcare-location-dialog-backdrop{align-items:center;background:rgba(7,31,50,.58);display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:10050}.healthcare-location-dialog{background:#fff;border-radius:8px;box-shadow:0 24px 70px rgba(7,31,50,.28);color:#0b2d46;display:grid;gap:16px;max-width:460px;padding:26px;width:100%}.healthcare-location-dialog-icon{align-items:center;background:#e3f5f3;border-radius:50%;color:#087f78;display:flex;font-size:22px;height:48px;justify-content:center;width:48px}.healthcare-location-dialog h2{font-size:21px;letter-spacing:0;line-height:1.2;margin:0 0 8px}.healthcare-location-dialog p{color:#526f82;line-height:1.55;margin:0}.healthcare-location-dialog-actions{display:flex;gap:10px;justify-content:flex-end}.healthcare-location-dialog-actions .btn{min-height:44px}
@media(max-width:480px){.healthcare-location-dialog{padding:22px 18px}.healthcare-location-dialog-actions{display:grid;grid-template-columns:1fr}.healthcare-location-dialog-actions .btn{margin:0;width:100%}}

.healthcare-autocomplete-option mark {
    background: transparent;
    color: #117ed0;
    font-weight: 800;
    padding: 0;
    text-decoration: underline;
}

.healthcare-autocomplete-option small {
    color: #496f87;
    display: block;
    font-size: 13px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.healthcare-autocomplete-footer {
    align-items: center;
    background: #fff;
    border: 0;
    border-top: 1px solid #cfe0eb;
    color: #075a86;
    display: flex;
    flex: 0 0 auto;
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    gap: 12px;
    justify-content: space-between;
    min-height: 52px;
    padding: 11px 15px;
    position: relative;
    text-align: left;
    text-transform: none;
    width: 100%;
}

.healthcare-autocomplete-footer::before {
    background: linear-gradient(to top, rgba(7, 52, 94, .08), transparent);
    content: '';
    height: 8px;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: -9px;
}

.healthcare-autocomplete-footer:hover,
.healthcare-autocomplete-footer:focus {
    background: #edf7ff;
    color: #073f68;
    outline: 0;
}

.healthcare-autocomplete-footer:focus-visible {
    box-shadow: inset 0 0 0 2px #1683c7;
}

/* Search bars also contain the suggestion buttons. Keep their surface rules
 * stronger than submit-button styling so future CTA changes cannot leak in. */
body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option {
    background: #fff;
    border: 0;
    border-top: 1px solid #e5eef5;
    border-radius: 0;
    color: #123b56;
    min-height: 64px;
}

body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option:first-child,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option:first-child {
    border-top: 0;
}

body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option:hover,
body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option:focus,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option:hover,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option:focus {
    background: #edf7ff;
    color: #073f68;
}

body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option.is-near-me,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option.is-near-me {
    background: #effaf8;
    color: #086f69;
    min-height: 62px;
}

body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option.is-specialist,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option.is-specialist {
    min-height: 44px;
}

body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option.is-near-me:hover,
body.hp-home-body .healthcare-home-search .healthcare-autocomplete-option.is-near-me:focus,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option.is-near-me:hover,
body.healthcare-search-body .healthcare-search-top-form .healthcare-autocomplete-option.is-near-me:focus {
    background: #e2f5f1;
}

.healthcare-homepage-editor-header {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 18px;
}

.healthcare-homepage-language-switch {
    background: #eef6ff;
    border: 1px solid #d7e6f3;
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 4px;
    margin: 0;
    padding: 4px;
}

.healthcare-homepage-language-switch > li {
    display: block;
}

.healthcare-homepage-language-switch > li > a {
    border-radius: 999px;
    color: #40576d;
    display: block;
    font-weight: 700;
    padding: 8px 14px;
}

.healthcare-homepage-language-switch > li.active > a,
.healthcare-homepage-language-switch > li.active > a:focus,
.healthcare-homepage-language-switch > li.active > a:hover {
    background: #fff;
    box-shadow: 0 6px 18px rgba(16, 42, 67, .12);
    color: #0f766e;
    text-decoration: none;
}

.healthcare-homepage-image-preview {
    background-color: #f5f8fb;
    background-position: center;
    background-size: cover;
    border: 1px solid #dce5ed;
    border-radius: 8px;
    min-height: 220px;
    width: 100%;
}

.healthcare-homepage-upload-note {
    color: #6b7f92;
    font-size: 12px;
    margin: 8px 0 0;
}

@media (max-width: 991px) {
    .healthcare-homepage-editor-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .healthcare-search-topbar .container {
        grid-template-columns: 1fr;
    }

    .healthcare-search-actions {
        justify-content: flex-start;
        text-align: left;
    }

    .healthcare-search-top-form {
        grid-template-columns: 1fr;
        border-radius: 10px;
    }

    .healthcare-search-top-form label {
        border-bottom: 1px solid #e4ecf3;
        border-right: 0;
    }

    .healthcare-search-top-form .btn {
        border-radius: 0;
    }

    .healthcare-search-map-toggle {
        margin-left: 0;
    }

    .healthcare-search-shell.map-open .healthcare-search-layout {
        grid-template-columns: 1fr;
    }

    .healthcare-result-card {
        grid-template-columns: 1fr;
    }

    .healthcare-result-availability {
        border-left: 0;
        border-top: 1px solid #e6edf3;
        padding-left: 0;
        padding-top: 14px;
    }

    .healthcare-search-map-panel {
        position: static;
    }

    .healthcare-home-nav .container {
        min-height: 68px;
    }

    .healthcare-home-nav-links {
        gap: 12px;
    }

    .healthcare-home-nav-links a:not(.btn) {
        display: none;
    }

    .healthcare-home-nav-links .healthcare-home-language-switch a {
        display: inline-flex;
    }

    .healthcare-home-shell .healthcare-home-hero {
        background-position: right 20%;
        min-height: auto;
        padding: 54px 0 44px;
    }

    .healthcare-home-shell .healthcare-home-copy h1 {
        font-size: 40px;
    }

    .healthcare-home-shell .healthcare-home-search {
        grid-template-columns: 1fr;
        max-width: 560px;
    }

    .healthcare-home-shell .healthcare-home-search-field {
        border-bottom: 1px solid #e4ecf3;
        border-right: 0;
    }

    .healthcare-step-grid {
        grid-template-columns: 1fr;
    }

    .healthcare-home-shell .healthcare-feature-card {
        margin-bottom: 16px;
    }

    .healthcare-home-band-inner {
        grid-template-columns: 1fr;
    }

    .healthcare-home-shell .healthcare-home-band-actions {
        justify-content: flex-start;
        text-align: left;
    }
}

@media (max-width: 640px) {
    .healthcare-home-brand {
        font-size: 18px;
    }

    .healthcare-home-brand-mark {
        height: 32px;
        width: 32px;
    }

    .healthcare-home-shell .healthcare-home-hero {
        padding: 38px 0 34px;
    }

    .healthcare-home-shell .healthcare-home-copy h1 {
        font-size: 34px;
    }

    .healthcare-home-shell .healthcare-home-subtitle {
        font-size: 17px;
    }

    .healthcare-home-assurance {
        display: grid;
        grid-template-columns: 1fr;
    }

    .healthcare-section-heading h2,
    .healthcare-home-shell .healthcare-home-band h2 {
        font-size: 28px;
    }

    .healthcare-home-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .healthcare-home-footer-language {
        margin-top: 4px;
    }
}

.hp-patient-shell {
    background: #eef6fb;
    color: #062b4f;
    font-family: inherit;
    margin: -15px;
    min-height: calc(100vh - 1px);
}

.hp-patient-topbar {
    align-items: center;
    background: #0f7fca;
    color: #fff;
    display: flex;
    gap: 18px;
    min-height: 54px;
    padding: 0 28px;
    position: relative;
    z-index: 20;
}

.hp-patient-brand {
    align-items: center;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 19px;
    font-weight: 800;
    gap: 10px;
    text-decoration: none;
}

.hp-patient-brand:hover,
.hp-patient-brand:focus,
.hp-patient-nav a:hover,
.hp-patient-nav a:focus,
.hp-patient-actions a:hover,
.hp-patient-actions a:focus {
    color: #fff;
    text-decoration: none;
}

.hp-patient-brand-mark {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #0f7fca;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.hp-patient-nav {
    display: flex;
    flex: 1 1 auto;
    justify-content: flex-end;
    min-width: 0;
}

.hp-patient-nav a {
    align-items: center;
    color: #e8f6ff;
    display: inline-flex;
    font-weight: 700;
    gap: 8px;
    min-height: 54px;
    padding: 0 15px;
}

.hp-patient-nav a.active {
    background: rgba(0, 55, 104, .22);
    color: #fff;
}

.hp-patient-actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: 10px;
}

.hp-patient-help {
    align-items: center;
    color: #e8f6ff;
    display: inline-flex;
    font-weight: 700;
    gap: 7px;
}

.hp-patient-lang {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    display: inline-flex;
    overflow: hidden;
}

.hp-patient-lang a {
    color: #e8f6ff;
    font-size: 11px;
    font-weight: 800;
    padding: 4px 7px;
}

.hp-patient-lang a.active {
    background: #fff;
    color: #0f7fca;
}

.hp-patient-account {
    position: relative;
}

.hp-patient-account-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    min-height: 54px;
    padding: 0;
}

.hp-patient-avatar,
.hp-profile-avatar {
    align-items: center;
    background: #0f766e;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
}

.hp-patient-avatar {
    height: 32px;
    width: 32px;
}

.hp-patient-account-menu {
    background: #fff;
    border: 1px solid #cddff0;
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(9, 30, 66, .18);
    min-width: 230px;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 58px;
}

.hp-patient-account-menu a {
    align-items: center;
    color: #193b5a;
    display: flex;
    gap: 10px;
    padding: 13px 16px;
}

.hp-patient-account-menu a + a {
    border-top: 1px solid #e4edf5;
}

.hp-patient-verification {
    align-items: center;
    background: #fff7ed;
    border-bottom: 1px solid #fed7aa;
    color: #7c2d12;
    display: flex;
    gap: 10px;
    justify-content: center;
    padding: 11px 20px;
}

.hp-patient-verification a,
.hp-patient-verification button {
    background: transparent;
    border: 0;
    color: #0f7fca;
    font-weight: 800;
    padding: 0;
}

.hp-patient-verification .hp-verification-unavailable {
    color: #9a3412;
    font-size: 12px;
}

.hp-patient-main {
    margin: 0 auto;
    max-width: 1220px;
    padding: 42px 28px 80px;
}

.hp-patient-hero {
    align-items: center;
    background: #0f7fca;
    border-radius: 0 0 8px 8px;
    color: #fff;
    display: grid;
    gap: 30px;
    grid-template-columns: minmax(0, 1fr) 310px;
    margin: -42px -28px 42px;
    min-height: 330px;
    overflow: hidden;
    padding: 64px max(28px, calc((100% - 1164px) / 2));
}

.hp-patient-hero h1 {
    color: #fff;
    font-size: 40px;
    font-weight: 800;
    line-height: 1.12;
    margin: 0 0 24px;
}

.hp-patient-hero-copy p,
.hp-patient-page-head p,
.hp-patient-section-head p {
    color: #0f766e;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0 0 7px;
    text-transform: uppercase;
}

.hp-patient-hero-copy p {
    color: #c7f9ff;
}

.hp-patient-search {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 14px 36px rgba(7, 31, 61, .22);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 145px;
    max-width: 760px;
    overflow: hidden;
}

.hp-patient-search label {
    align-items: center;
    border-right: 1px solid #e3edf6;
    display: flex;
    gap: 10px;
    margin: 0;
    min-height: 58px;
    padding: 0 18px;
}

.hp-patient-search i {
    color: #0f766e;
}

.hp-patient-search input {
    border: 0;
    color: #193b5a;
    min-width: 0;
    outline: 0;
    width: 100%;
}

.hp-patient-search button,
.hp-patient-primary-action {
    align-items: center;
    background: #13243a;
    border: 0;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: 9px;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    text-decoration: none;
}

.hp-patient-search button {
    border-radius: 0;
}

.hp-patient-primary-action:hover,
.hp-patient-primary-action:focus {
    color: #fff;
    text-decoration: none;
}

.hp-patient-secondary-action {
    background: transparent;
    border: 0;
    color: #385b79;
    font-weight: 800;
    min-height: 40px;
    padding: 0 14px;
}

.hp-patient-hero-panel,
.hp-patient-card,
.hp-patient-section,
.hp-patient-side-card,
.hp-profile-card,
.hp-profile-help {
    background: #fff;
    border: 1px solid #cddff0;
    border-radius: 8px;
    box-shadow: 0 12px 35px rgba(9, 30, 66, .08);
}

.hp-patient-hero-panel {
    color: #193b5a;
    padding: 24px;
}

.hp-patient-hero-panel strong {
    display: block;
    font-size: 16px;
    margin-bottom: 10px;
}

.hp-patient-hero-panel p {
    color: #062b4f;
    font-size: 19px;
    font-weight: 800;
    margin-bottom: 6px;
}

.hp-patient-hero-panel span,
.hp-patient-hero-panel a,
.hp-patient-muted {
    color: #5c7590;
}

.hp-patient-page-head {
    align-items: center;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 24px;
}

.hp-patient-page-head h1,
.hp-patient-section-head h2,
.hp-patient-card h2 {
    color: #062b4f;
    font-weight: 800;
    margin: 0;
}

.hp-patient-page-head h1 {
    font-size: 30px;
}

.hp-patient-grid {
    display: grid;
    gap: 22px;
}

.hp-patient-dashboard-grid,
.hp-patient-compose-grid {
    grid-template-columns: minmax(0, 1fr);
}

.hp-patient-section,
.hp-patient-card {
    margin-bottom: 22px;
    padding: 26px;
}

.hp-patient-section-head {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 20px;
}

.hp-patient-section-head a {
    color: #0f7fca;
    font-weight: 800;
}

.hp-patient-stat-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.hp-patient-stat {
    background: #f5fbff;
    border: 1px solid #d9e9f7;
    border-radius: 8px;
    color: #193b5a;
    min-height: 122px;
    padding: 18px;
    text-decoration: none;
}

.hp-patient-stat i {
    color: #0f7fca;
    font-size: 22px;
}

.hp-patient-stat strong {
    color: #062b4f;
    display: block;
    font-size: 28px;
    margin-top: 10px;
}

.hp-patient-stat span {
    color: #5c7590;
}

.hp-patient-provider-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hp-patient-provider-card {
    align-items: center;
    border: 1px solid #cddff0;
    border-radius: 8px;
    color: #193b5a;
    display: flex;
    gap: 14px;
    min-height: 82px;
    padding: 14px;
    text-decoration: none;
}

.hp-patient-provider-card > span,
.hp-patient-empty > span,
.hp-profile-help > span {
    align-items: center;
    background: #e0f2fe;
    border-radius: 999px;
    color: #0f7fca;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 800;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.hp-patient-provider-card strong,
.hp-patient-provider-card p {
    display: block;
    margin: 0;
}

.hp-patient-provider-card p {
    color: #5c7590;
}

.hp-patient-empty {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 280px;
    padding: 26px;
    text-align: center;
}

.hp-patient-empty.compact {
    min-height: 210px;
}

.hp-patient-empty h3 {
    color: #062b4f;
    font-size: 22px;
    font-weight: 800;
    margin: 16px 0 8px;
}

.hp-patient-empty p {
    color: #385b79;
    max-width: 560px;
}

.hp-appointment-list,
.hp-message-list,
.hp-document-list {
    display: grid;
    gap: 14px;
}

.hp-appointment-card {
    align-items: center;
    border: 1px solid #cddff0;
    border-radius: 8px;
    display: grid;
    gap: 18px;
    grid-template-columns: 72px minmax(0, 1fr) 220px;
    padding: 18px;
}

.hp-appointment-date {
    background: #e0f2fe;
    border-radius: 8px;
    color: #0f7fca;
    padding: 10px;
    text-align: center;
}

.hp-appointment-date span,
.hp-appointment-date strong {
    display: block;
}

.hp-appointment-date strong {
    color: #062b4f;
    font-size: 26px;
}

.hp-appointment-main h3,
.hp-appointment-main p,
.hp-appointment-main span {
    margin: 0;
}

.hp-appointment-main h3 {
    color: #0f7fca;
    font-size: 18px;
    font-weight: 800;
}

.hp-appointment-main span {
    color: #5c7590;
    display: inline-flex;
    gap: 7px;
    margin-top: 7px;
}

.hp-appointment-side {
    text-align: right;
}

.hp-appointment-side strong {
    color: #062b4f;
    display: block;
    margin-bottom: 8px;
}

.hp-appointment-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 12px;
}

.hp-appointment-action {
    align-items: center;
    background: #fff;
    border: 1px solid #aac9e4;
    border-radius: 6px;
    color: #0b4f7a;
    display: inline-flex;
    font-weight: 700;
    gap: 7px;
    justify-content: center;
    min-height: 38px;
    padding: 8px 12px;
}

.hp-appointment-action:hover,
.hp-appointment-action:focus {
    background: #eef7ff;
    color: #062b4f;
}

.hp-appointment-action.danger {
    border-color: #f1b7b7;
    color: #a52929;
}

.hp-appointment-policy-note {
    color: #6b7f92;
    display: inline-flex;
    gap: 6px;
    margin-top: 12px;
}

.hp-patient-primary-action.danger {
    background: #a52929;
}

.hp-patient-table {
    border: 1px solid #d9e9f7;
    border-radius: 8px;
    overflow: hidden;
}

.hp-patient-table-row {
    align-items: center;
    color: #193b5a;
    display: grid;
    gap: 12px;
    grid-template-columns: 1.3fr 1.1fr 1fr auto;
    padding: 14px 16px;
    text-decoration: none;
}

.hp-patient-table-row + .hp-patient-table-row {
    border-top: 1px solid #d9e9f7;
}

.hp-patient-warning {
    align-items: center;
    background: #fff7ed;
    border-left: 4px solid #f59e0b;
    color: #7c2d12;
    display: flex;
    gap: 10px;
    margin-bottom: 18px;
    padding: 13px;
}

.hp-patient-form {
    display: grid;
    gap: 16px;
}

.hp-patient-form label {
    color: #193b5a;
    display: grid;
    gap: 7px;
    margin: 0;
}

.hp-patient-form label span {
    font-weight: 800;
}

.hp-patient-form input,
.hp-patient-form select,
.hp-patient-form textarea {
    border: 1px solid #aac9e4;
    border-radius: 6px;
    color: #062b4f;
    min-height: 44px;
    padding: 10px 12px;
    width: 100%;
}

.hp-patient-form textarea {
    min-height: 150px;
    resize: vertical;
}

.hp-message-card,
.hp-document-card,
.hp-note-card,
.hp-account-row {
    border: 1px solid #d9e9f7;
    border-radius: 8px;
    color: #193b5a;
}

.hp-message-card {
    padding: 16px;
}

.hp-message-card div,
.hp-document-card,
.hp-note-card div,
.hp-account-row {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.hp-message-card strong {
    color: #062b4f;
}

.hp-message-card span,
.hp-message-card p {
    color: #5c7590;
}

.hp-message-card blockquote {
    border-left: 3px solid #0f7fca;
    color: #193b5a;
    margin: 10px 0 0;
    padding: 0 0 0 12px;
}

.hp-patient-tabs {
    border-bottom: 1px solid #cddff0;
    display: flex;
    gap: 8px;
    margin: -6px 0 24px;
}

.hp-patient-tabs a {
    border-bottom: 2px solid transparent;
    color: #193b5a;
    font-weight: 800;
    padding: 0 10px 12px;
}

.hp-patient-tabs a.active {
    border-bottom-color: #0f7fca;
    color: #0f7fca;
}

.hp-patient-documents-layout {
    display: grid;
    gap: 26px;
    grid-template-columns: minmax(0, 1fr) 340px;
}

.hp-patient-side-card {
    padding: 22px;
}

.hp-patient-side-card h2 {
    font-size: 20px;
    margin: 0 0 8px;
}

.hp-patient-side-card p {
    color: #5c7590;
    margin-bottom: 18px;
}

.hp-document-card {
    padding: 15px;
}

.hp-document-card > i {
    color: #0f7fca;
    font-size: 24px;
}

.hp-document-card div {
    flex: 1 1 auto;
    min-width: 0;
}

.hp-document-card strong,
.hp-document-card span {
    display: block;
}

.hp-document-card span {
    color: #5c7590;
}

.hp-document-card a {
    color: #0f7fca;
    font-weight: 800;
}

.hp-note-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-note-card {
    padding: 16px;
}

.hp-note-card strong {
    color: #062b4f;
}

.hp-note-card p {
    color: #193b5a;
    margin: 14px 0;
}

.hp-note-card span {
    color: #5c7590;
}

.hp-note-card a,
.hp-patient-note-delete-form button {
    color: #dc2626;
}

.hp-patient-note-delete-form {
    margin-left: auto;
}

.hp-patient-note-delete-form button {
    background: transparent;
    border: 0;
    cursor: pointer;
    padding: 6px;
}

.hp-account-dashboard {
    color: #0b2f49;
    margin: 0 auto;
    max-width: 1120px;
}

.hp-profile-password-setup {
    align-items: flex-start;
    background: #f0f8ff;
    border: 1px solid #c7e2f6;
    border-radius: 14px;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 16px;
}

.hp-profile-password-setup__icon {
    align-items: center;
    background: #d9efff;
    border-radius: 12px;
    color: #0876bd;
    display: inline-flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.hp-profile-password-setup strong,
.hp-profile-password-setup label,
.hp-profile-password-setup small {
    display: block;
}

.hp-profile-password-setup strong {
    color: #062b4f;
    font-size: 15px;
    margin-bottom: 3px;
}

.hp-profile-password-setup p,
.hp-profile-password-setup small {
    color: #58758c;
    line-height: 1.45;
}

.hp-profile-password-setup p {
    margin: 0 0 13px;
}

.hp-profile-password-setup label {
    color: #173f61;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 6px;
}

.hp-profile-password-field {
    position: relative;
}

.hp-profile-password-field input {
    padding-right: 48px;
    width: 100%;
}

.hp-profile-password-field button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #315b7b;
    display: flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    right: 0;
    top: 0;
    width: 44px;
}

.hp-profile-password-setup small {
    font-size: 12px;
    margin-top: 6px;
}

.hp-account-titlebar {
    align-items: flex-end;
    display: flex;
    gap: 24px;
    justify-content: space-between;
    margin-bottom: 22px;
}

.hp-account-eyebrow {
    color: #087f76;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    margin: 0 0 5px;
    text-transform: uppercase;
}

.hp-account-titlebar h1 {
    color: #062b4f;
    font-size: clamp(30px, 3vw, 40px);
    font-weight: 850;
    letter-spacing: -.035em;
    line-height: 1.05;
    margin: 0;
}

.hp-account-primary-action {
    align-items: center;
    background: #0b6fb8;
    border: 1px solid #0b6fb8;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(11, 111, 184, .2);
    color: #fff !important;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    gap: 9px;
    justify-content: center;
    min-height: 46px;
    padding: 0 18px;
    text-decoration: none !important;
    transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.hp-account-primary-action:hover,
.hp-account-primary-action:focus {
    background: #075b98;
    border-color: #075b98;
    box-shadow: 0 13px 28px rgba(11, 111, 184, .26);
    color: #fff !important;
    transform: translateY(-1px);
}

.hp-account-overview {
    background:
        radial-gradient(circle at 84% 15%, rgba(55, 191, 179, .28), transparent 30%),
        linear-gradient(135deg, #083d61 0%, #0b5e84 58%, #087f76 100%);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 20px;
    box-shadow: 0 24px 52px rgba(6, 43, 79, .16);
    color: #fff;
    display: grid;
    gap: 32px;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
    margin-bottom: 24px;
    overflow: hidden;
    padding: 28px;
    position: relative;
}

.hp-account-overview-identity {
    align-items: center;
    display: flex;
    gap: 18px;
    min-width: 0;
}

.hp-account-avatar {
    align-items: center;
    background: #fff;
    border: 4px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    box-shadow: 0 14px 32px rgba(3, 31, 52, .22);
    color: #087f76;
    display: inline-flex;
    flex: 0 0 78px;
    font-size: 24px;
    font-weight: 900;
    height: 78px;
    justify-content: center;
    width: 78px;
}

.hp-account-overview-identity p,
.hp-account-panel-head p {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    margin: 0 0 5px;
    text-transform: uppercase;
}

.hp-account-overview-identity p {
    color: #bfe8f4;
}

.hp-account-overview-identity h2 {
    color: #fff;
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 850;
    letter-spacing: -.025em;
    margin: 0;
    overflow-wrap: anywhere;
}

.hp-account-statuses {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 13px;
}

.hp-account-status {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #eefaff;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 6px;
    min-height: 30px;
    padding: 5px 10px;
}

.hp-account-status.is-ready i {
    color: #76f0ca;
}

.hp-account-status.is-attention i {
    color: #ffd286;
}

.hp-account-assurance {
    align-items: flex-start;
    align-self: stretch;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 16px;
    display: flex;
    gap: 14px;
    padding: 20px;
}

.hp-account-assurance-icon {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border-radius: 12px;
    display: inline-flex;
    flex: 0 0 46px;
    font-size: 22px;
    height: 46px;
    justify-content: center;
}

.hp-account-assurance h2 {
    color: #fff;
    font-size: 17px;
    font-weight: 850;
    margin: 1px 0 7px;
}

.hp-account-assurance p {
    color: #d6edf5;
    font-size: 13px;
    line-height: 1.55;
    margin: 0;
}

.hp-account-layout {
    align-items: start;
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, .75fr);
}

.hp-account-main-column,
.hp-account-side-column {
    display: grid;
    gap: 24px;
}

.hp-account-panel {
    background: #fff;
    border: 1px solid #d7e5ef;
    border-radius: 18px;
    box-shadow: 0 14px 36px rgba(15, 47, 75, .065);
    overflow: hidden;
}

.hp-account-panel-head {
    align-items: center;
    display: flex;
    gap: 13px;
    padding: 20px 22px 18px;
}

.hp-account-panel-head > span {
    align-items: center;
    background: #e9f6fb;
    border-radius: 11px;
    color: #0b6fb8;
    display: inline-flex;
    flex: 0 0 42px;
    font-size: 17px;
    height: 42px;
    justify-content: center;
}

.hp-account-panel-head p {
    color: #71879a;
}

.hp-account-panel-head h2 {
    color: #092f4a;
    font-size: 18px;
    font-weight: 850;
    margin: 0;
}

.hp-account-panel-list {
    border-top: 1px solid #e5eef4;
}

.hp-account-item {
    align-items: center;
    background: #fff;
    color: #143c57 !important;
    display: grid;
    gap: 13px;
    grid-template-columns: 42px minmax(0, 1fr) auto auto;
    min-height: 76px;
    padding: 12px 20px;
    text-decoration: none !important;
    transition: background-color .16s ease, color .16s ease;
}

.hp-account-item + .hp-account-item {
    border-top: 1px solid #e9f0f5;
}

a.hp-account-item:hover,
a.hp-account-item:focus {
    background: #f3f9fc;
    color: #075b98 !important;
}

.hp-account-item-icon {
    align-items: center;
    background: #edf7fc;
    border-radius: 11px;
    color: #0b76bd;
    display: inline-flex;
    font-size: 16px;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-account-item-copy {
    min-width: 0;
}

.hp-account-item-copy strong,
.hp-account-item-copy small,
.hp-account-logout strong,
.hp-account-logout small {
    display: block;
}

.hp-account-item-copy strong {
    color: #0b304b;
    font-size: 14px;
    font-weight: 850;
    margin-bottom: 3px;
}

.hp-account-item-copy small {
    color: #647d90;
    font-size: 12px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.hp-account-item em {
    border-radius: 999px;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
    line-height: 1;
    padding: 7px 10px;
    white-space: nowrap;
}

.hp-account-item em.is-ready {
    background: #dcf8ed;
    color: #06745b;
}

.hp-account-item em.is-attention {
    background: #fff2d8;
    color: #925100;
}

.hp-account-chevron {
    color: #8fa7b8;
    font-size: 12px;
}

.hp-account-count {
    align-items: center;
    background: #e7f3fb;
    border-radius: 999px;
    color: #075f9d;
    display: inline-flex;
    font-size: 12px;
    font-weight: 900;
    height: 28px;
    justify-content: center;
    min-width: 28px;
    padding: 0 8px;
}

.hp-account-logout {
    align-items: center;
    background: #fff;
    border: 1px solid #f0c9c9;
    border-radius: 16px;
    color: #b4232f !important;
    display: grid;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    min-height: 78px;
    padding: 14px 18px;
    text-decoration: none !important;
    transition: background-color .16s ease, border-color .16s ease, transform .16s ease;
}

.hp-account-logout > span:first-child {
    align-items: center;
    background: #fff0f1;
    border-radius: 11px;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-account-logout strong {
    font-size: 14px;
    font-weight: 850;
    margin-bottom: 3px;
}

.hp-account-logout small {
    color: #8b5a61;
    font-size: 12px;
    line-height: 1.35;
}

.hp-account-logout:hover,
.hp-account-logout:focus {
    background: #fff7f7;
    border-color: #eaa7ac;
    color: #9d1622 !important;
    transform: translateY(-1px);
}

@media (max-width: 980px) {
    .hp-account-overview,
    .hp-account-layout {
        grid-template-columns: 1fr;
    }

    .hp-account-overview {
        gap: 22px;
    }

    .hp-account-side-column {
        grid-template-columns: minmax(0, 1fr) minmax(280px, .7fr);
    }
}

@media (max-width: 720px) {
    .hp-account-titlebar {
        align-items: stretch;
        flex-direction: column;
        gap: 16px;
    }

    .hp-account-primary-action {
        width: 100%;
    }

    .hp-account-overview {
        border-radius: 16px;
        padding: 20px;
    }

    .hp-account-overview-identity {
        align-items: flex-start;
    }

    .hp-account-avatar {
        flex-basis: 62px;
        font-size: 20px;
        height: 62px;
        width: 62px;
    }

    .hp-account-assurance {
        padding: 16px;
    }

    .hp-account-side-column {
        grid-template-columns: 1fr;
    }

    .hp-account-panel {
        border-radius: 15px;
    }

    .hp-account-panel-head {
        padding: 17px 16px 15px;
    }

    .hp-account-item {
        gap: 10px;
        grid-template-columns: 38px minmax(0, 1fr) auto;
        min-height: 72px;
        padding: 12px 14px;
    }

    .hp-account-item-icon {
        border-radius: 10px;
        height: 38px;
        width: 38px;
    }

    .hp-account-item em,
    .hp-account-count {
        grid-column: 2;
        justify-self: start;
    }

    .hp-account-chevron {
        grid-column: 3;
        grid-row: 1 / span 2;
    }

    .hp-account-item.is-static em {
        grid-column: 3;
        justify-self: end;
    }
}

.hp-privacy-head {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.hp-privacy-head > i {
    color: #0f8f8a;
    font-size: 44px;
}

.hp-privacy-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1.6fr) minmax(260px, .8fr);
    margin-bottom: 24px;
}

.hp-privacy-panel,
.hp-privacy-note,
.hp-privacy-history {
    background: #fff;
    border: 1px solid #cadde9;
    border-radius: 8px;
}

.hp-privacy-panel {
    align-items: flex-start;
    display: grid;
    gap: 18px;
    grid-template-columns: 48px minmax(0, 1fr);
    padding: 24px;
}

.hp-privacy-panel-icon,
.hp-privacy-note > i {
    align-items: center;
    background: #e4f6f1;
    border-radius: 8px;
    color: #087d70;
    display: inline-flex;
    font-size: 20px;
    height: 48px;
    justify-content: center;
    width: 48px;
}

.hp-privacy-panel h2,
.hp-privacy-note p {
    margin-top: 0;
}

.hp-privacy-note {
    align-items: flex-start;
    display: flex;
    gap: 14px;
    padding: 22px;
}

.hp-privacy-note p {
    color: #587286;
    margin-bottom: 0;
    margin-top: 6px;
}

.hp-privacy-history {
    padding: 24px;
}

.hp-export-list {
    display: grid;
}

.hp-export-row {
    align-items: center;
    border-top: 1px solid #d9e6ee;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(220px, 1fr) auto minmax(190px, auto);
    padding: 16px 0;
}

.hp-export-file {
    align-items: center;
    display: flex;
    gap: 12px;
}

.hp-export-file > i {
    color: #0f7fca;
    font-size: 24px;
}

.hp-export-file strong,
.hp-export-file small,
.hp-export-action small {
    display: block;
}

.hp-export-file small,
.hp-export-action small {
    color: #60788a;
}

.hp-export-status {
    background: #edf3f7;
    border-radius: 999px;
    color: #456176;
    font-size: 12px;
    font-weight: 800;
    padding: 5px 10px;
}

.hp-export-status.is-ready { background: #d1fae5; color: #047857; }
.hp-export-status.is-failed { background: #fee2e2; color: #b91c1c; }
.hp-export-status.is-processing { background: #e0f2fe; color: #0369a1; }
.hp-export-action { text-align: right; }

@media (max-width: 760px) {
    .hp-privacy-grid { grid-template-columns: minmax(0, 1fr); }
    .hp-privacy-head > i { font-size: 32px; }
    .hp-privacy-panel { grid-template-columns: minmax(0, 1fr); padding: 18px; }
    .hp-privacy-history { padding: 18px; }
    .hp-export-row { align-items: flex-start; grid-template-columns: minmax(0, 1fr); }
    .hp-export-action { text-align: left; }
}

.hp-profile-grid {
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1fr) 420px;
}

.hp-profile-card,
.hp-profile-help {
    padding: 26px;
}

.hp-profile-card {
    position: relative;
}

.hp-profile-edit {
    align-items: center;
    background: transparent;
    border: 0;
    color: #0f7fca;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    position: absolute;
    right: 24px;
    top: 24px;
}

.hp-profile-avatar {
    font-size: 18px;
    height: 58px;
    margin-bottom: 16px;
    width: 58px;
}

.hp-profile-card h2 {
    color: #062b4f;
    font-size: 22px;
    font-weight: 800;
    margin: 0 0 14px;
}

.hp-profile-card p {
    color: #193b5a;
    margin-bottom: 8px;
}

.hp-profile-access {
    border-top: 1px solid #d9e9f7;
    color: #062b4f;
    display: flex;
    gap: 10px;
    margin-top: 20px;
    padding-top: 16px;
}

.hp-profile-help {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 260px;
    text-align: center;
}

.hp-profile-help h2 {
    color: #062b4f;
    font-size: 20px;
    font-weight: 800;
    margin: 16px 0 8px;
}

.hp-profile-help p {
    color: #385b79;
    max-width: 280px;
}

.hp-profile-help a,
.hp-patient-back {
    color: #0f7fca;
    font-weight: 800;
}

.hp-patient-back {
    display: inline-flex;
    gap: 8px;
    margin-bottom: 16px;
}

.hp-patient-modal[hidden] {
    display: none;
}

.hp-patient-modal {
    align-items: flex-start;
    display: flex;
    inset: 0;
    justify-content: center;
    overflow-y: auto;
    padding: 28px;
    position: fixed;
    z-index: 2000;
}

.hp-patient-modal-backdrop {
    background: rgba(8, 29, 48, .66);
    inset: 0;
    position: fixed;
}

.hp-patient-modal-card {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 24px 80px rgba(8, 29, 48, .28);
    max-width: 680px;
    padding: 34px;
    position: relative;
    width: 100%;
    z-index: 1;
}

.hp-patient-modal-card.wide {
    max-width: 760px;
}

.hp-patient-modal-close {
    background: transparent;
    border: 0;
    color: #385b79;
    font-size: 24px;
    position: absolute;
    right: 18px;
    top: 16px;
}

.hp-patient-modal-card h2 {
    color: #062b4f;
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 18px;
    text-align: center;
}

.hp-patient-modal-card > p {
    color: #385b79;
    margin: -8px 0 20px;
}

.hp-message-card.is-unread,
.hp-clinician-message-list article.is-unread {
    border-left: 4px solid #1683d8;
    background: #f1f8fe;
}

.hp-message-actions {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.hp-message-actions form,
.hp-message-actions details {
    margin: 0;
}

.hp-message-actions details form {
    display: grid;
    gap: 8px;
    min-width: min(320px, 80vw);
    padding-top: 8px;
}

.hp-message-actions button,
.hp-message-actions summary,
.hp-clinician-message-list [data-hp-report-message],
.hp-clinician-message-list [data-hp-block-contact] {
    border: 1px solid #cbd9e5;
    border-radius: 6px;
    background: #fff;
    color: #16324a;
    cursor: pointer;
    font-weight: 700;
    padding: 7px 10px;
}

.hp-message-unread-badge {
    align-items: center;
    background: #d93838;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 11px;
    justify-content: center;
    line-height: 1;
    min-height: 19px;
    min-width: 19px;
    padding: 3px 5px;
}

.hp-clinician-settings-action {
    align-items: center;
    background: #fff;
    border: 1px solid #cbd9e5;
    border-radius: 6px;
    color: #12324b;
    display: flex;
    font-weight: 700;
    justify-content: space-between;
    min-height: 52px;
    padding: 12px 14px;
    text-align: left;
    width: 100%;
}

.hp-availability-exception-layout {
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
}

.hp-availability-exception-form,
.hp-availability-exception-times {
    display: grid;
    gap: 12px;
}

.hp-availability-exception-times {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-availability-exception-form label:not(.hp-availability-full-day) {
    display: grid;
    gap: 6px;
}

.hp-availability-exception-form input[type="date"],
.hp-availability-exception-form input[type="time"],
.hp-availability-exception-form input[type="text"] {
    border: 1px solid #b8ccdc;
    border-radius: 6px;
    min-height: 44px;
    padding: 9px 11px;
    width: 100%;
}

.hp-availability-full-day {
    align-items: center;
    display: flex;
    gap: 8px;
}

.hp-availability-exception-list {
    display: grid;
    gap: 8px;
}

.hp-availability-exception-list article {
    align-items: center;
    border: 1px solid #d8e3ec;
    border-radius: 6px;
    display: flex;
    justify-content: space-between;
    padding: 11px 12px;
}

.hp-availability-exception-list article div {
    display: grid;
    gap: 2px;
}

.hp-availability-exception-list article button {
    background: transparent;
    border: 0;
    color: #b42318;
    min-height: 40px;
    min-width: 40px;
}

@media (max-width: 767px) {
    .hp-availability-exception-layout,
    .hp-availability-exception-times {
        grid-template-columns: 1fr;
    }
}

.hp-appointment-modal-card .hp-patient-modal-kicker {
    color: #087f75;
    font-size: 12px;
    font-weight: 800;
    margin: 0 0 8px;
    text-align: center;
    text-transform: uppercase;
}

.hp-reschedule-status {
    align-items: center;
    background: #f1f7fc;
    border: 1px solid #d2e4f3;
    border-radius: 6px;
    color: #385b79;
    display: flex;
    gap: 10px;
    justify-content: center;
    min-height: 82px;
    padding: 18px;
    text-align: center;
}

.hp-reschedule-days {
    display: grid;
    gap: 18px;
    max-height: min(52vh, 520px);
    overflow-y: auto;
    padding-right: 4px;
}

.hp-reschedule-day {
    border-bottom: 1px solid #d9e9f7;
    padding-bottom: 16px;
}

.hp-reschedule-day:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.hp-reschedule-day h3 {
    color: #193b5a;
    font-size: 15px;
    font-weight: 800;
    margin: 0 0 10px;
}

.hp-reschedule-slot-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.hp-reschedule-slot {
    margin: 0;
    min-width: 0;
}

.hp-reschedule-slot input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

.hp-reschedule-slot span {
    align-items: center;
    background: #eef7ff;
    border: 1px solid #aac9e4;
    border-radius: 6px;
    color: #0b4f7a;
    cursor: pointer;
    display: flex;
    font-weight: 800;
    justify-content: center;
    min-height: 42px;
    padding: 8px;
}

.hp-reschedule-slot input:focus + span {
    box-shadow: 0 0 0 3px rgba(15, 127, 202, .2);
}

.hp-reschedule-slot input:checked + span {
    background: #0f7fca;
    border-color: #0f7fca;
    color: #fff;
}

.hp-patient-modal-actions {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

.hp-form-grid.two {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.hp-patient-modal-open {
    overflow: hidden;
}

@media (min-width: 1100px) {
    .hp-patient-compose-grid {
        grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
    }
}

@media (max-width: 1040px) {
    .hp-patient-topbar {
        align-items: stretch;
        flex-wrap: wrap;
        padding: 10px 18px;
    }

    .hp-patient-nav {
        justify-content: flex-start;
        order: 3;
        overflow-x: auto;
        width: 100%;
    }

    .hp-patient-nav a {
        min-height: 40px;
    }

    .hp-patient-actions {
        margin-left: auto;
    }

    .hp-patient-hero,
    .hp-patient-documents-layout,
    .hp-profile-grid {
        grid-template-columns: 1fr;
    }

    .hp-patient-stat-grid,
    .hp-patient-provider-grid,
    .hp-note-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .hp-patient-topbar {
        gap: 10px;
    }

    .hp-patient-brand span:last-child,
    .hp-patient-help span,
    .hp-patient-account-toggle span:not(.hp-patient-avatar),
    .hp-patient-nav a span {
        display: none;
    }

    .hp-patient-main {
        padding: 28px 14px 56px;
    }

    .hp-patient-hero {
        margin: -28px -14px 28px;
        min-height: 0;
        padding: 34px 14px;
    }

    .hp-patient-hero h1 {
        font-size: 30px;
    }

    .hp-patient-search,
    .hp-appointment-card,
    .hp-patient-table-row,
    .hp-patient-stat-grid,
    .hp-patient-provider-grid,
    .hp-note-grid,
    .hp-form-grid.two {
        grid-template-columns: 1fr;
    }

    .hp-patient-search label {
        border-bottom: 1px solid #e3edf6;
        border-right: 0;
    }

    .hp-patient-page-head,
    .hp-patient-section-head,
    .hp-document-card {
        align-items: flex-start;
        flex-direction: column;
    }

    .hp-appointment-side {
        text-align: left;
    }

    .hp-appointment-actions {
        justify-content: flex-start;
    }

    .hp-reschedule-slot-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .hp-patient-card,
    .hp-patient-section,
    .hp-patient-side-card,
    .hp-profile-card,
    .hp-profile-help,
    .hp-patient-modal-card {
        padding: 20px;
    }

    .hp-patient-modal {
        padding: 14px;
    }

    .hp-patient-modal-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .hp-patient-modal-actions > * {
        width: 100%;
    }

    .hp-reschedule-slot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Patient portal UX refinements */
body.hp-patient-body {
    background: #f2f7fb;
    overflow-x: hidden;
}

body.hp-patient-body #wrapper,
body.hp-patient-body #content {
    background: #f2f7fb;
    overflow-x: hidden;
}

body.hp-patient-body #content > .container {
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.hp-patient-body #content > .container > .row {
    margin-left: 0;
    margin-right: 0;
}

.hp-patient-shell {
    background: #f2f7fb;
    margin: 0;
    max-width: none;
    min-height: 100vh;
    overflow-x: hidden;
    width: 100%;
}

.hp-patient-topbar {
    box-shadow: 0 1px 0 rgba(7, 31, 61, .12);
    min-height: 64px;
    padding: 0;
    position: sticky;
    top: 0;
}

.hp-patient-topbar-inner {
    align-items: center;
    display: grid;
    gap: 18px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    margin: 0 auto;
    max-width: 1220px;
    min-height: 64px;
    padding: 0 24px;
    width: 100%;
}

.hp-patient-nav {
    gap: 4px;
    justify-content: center;
}

.hp-patient-nav a {
    border-radius: 0;
    min-height: 64px;
    padding: 0 14px;
    white-space: nowrap;
}

.hp-patient-nav a.active {
    background: rgba(4, 45, 82, .28);
}

.hp-patient-actions {
    min-width: 0;
}

.hp-patient-help {
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px;
    min-height: 34px;
    padding: 0 12px;
}

.hp-patient-account-toggle {
    max-width: 230px;
    min-height: 64px;
}

.hp-patient-account-toggle span:not(.hp-patient-avatar) {
    max-width: 154px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-patient-account-menu {
    z-index: 40;
}

.hp-patient-verification {
    justify-content: center;
    padding-left: 24px;
    padding-right: 24px;
}

.hp-patient-main {
    max-width: 1160px;
    padding: 38px 24px 88px;
}

.hp-patient-page-head {
    margin-bottom: 22px;
}

.hp-patient-page-head h1 {
    letter-spacing: 0;
}

.hp-patient-card,
.hp-patient-section,
.hp-patient-side-card,
.hp-profile-card,
.hp-profile-help {
    border-color: #d5e3ef;
    box-shadow: 0 16px 40px rgba(15, 47, 75, .07);
}

.hp-patient-tabs {
    margin-top: 0;
}

.hp-note-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.hp-note-card {
    background: #fff;
    min-height: 150px;
}

.hp-note-card strong,
.hp-note-card p,
.hp-document-card strong,
.hp-document-card span {
    overflow-wrap: anywhere;
}

.hp-note-card p {
    line-height: 1.55;
}

.hp-document-card,
.hp-note-card {
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hp-document-card:hover,
.hp-note-card:hover {
    border-color: #a8cbe8;
    box-shadow: 0 12px 28px rgba(15, 47, 75, .08);
    transform: translateY(-1px);
}

.hp-patient-primary-action {
    box-shadow: 0 8px 18px rgba(19, 36, 58, .16);
}

@media (max-width: 1040px) {
    .hp-patient-topbar {
        align-items: center;
        flex-wrap: nowrap;
        padding: 0;
    }

    .hp-patient-topbar-inner {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        padding: 10px 18px;
    }

    .hp-patient-nav {
        justify-content: flex-start;
        order: 3;
        overflow-x: auto;
        scrollbar-width: none;
        width: 100%;
    }

    .hp-patient-nav::-webkit-scrollbar {
        display: none;
    }

    .hp-patient-nav a {
        min-height: 40px;
        padding: 0 12px;
    }

    .hp-patient-actions {
        margin-left: auto;
    }
}

@media (max-width: 720px) {
    .hp-patient-shell {
        margin-top: 0;
    }

    .hp-patient-topbar-inner {
        padding-left: 14px;
        padding-right: 14px;
    }

    .hp-patient-help {
        min-height: 34px;
        padding: 0 10px;
    }

    .hp-patient-account-toggle {
        max-width: none;
    }

    .hp-patient-main {
        padding: 26px 14px 60px;
    }

    .hp-patient-verification {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
        padding: 10px 14px;
    }
}

/* Public practitioner profile */
body.healthcare-public-profile-body {
    background: #edf5fb;
    overflow-x: hidden;
}

body.healthcare-public-profile-body #wrapper,
body.healthcare-public-profile-body #content {
    background: #edf5fb;
    margin: 0;
    overflow-x: hidden;
    padding: 0;
}

body.healthcare-public-profile-body #content > .container {
    margin: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.healthcare-public-profile-body #content > .container > .row {
    margin-left: 0;
    margin-right: 0;
}

body.healthcare-public-profile-body #content > .container > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

.healthcare-public-profile-shell {
    background: #edf5fb;
    color: #08233e;
    min-height: 100vh;
    overflow-x: hidden;
    width: 100%;
}

.healthcare-public-profile-shell a {
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.healthcare-profile-container {
    margin: 0 auto;
    max-width: 1120px;
    padding-left: 22px;
    padding-right: 22px;
    width: 100%;
}

.healthcare-profile-topbar {
    background: #117ed0;
    box-shadow: 0 1px 0 rgba(7, 31, 54, .12);
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 30;
}

.healthcare-profile-topbar-inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
    min-height: 64px;
}

.healthcare-profile-brand,
.healthcare-profile-nav {
    align-items: center;
    display: flex;
}

.healthcare-profile-brand {
    color: #fff;
    flex: 0 0 auto;
    font-size: 20px;
    font-weight: 800;
    gap: 10px;
}

.healthcare-profile-brand:hover,
.healthcare-profile-brand:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-profile-brand-mark {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #117ed0;
    display: inline-flex;
    font-size: 12px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.healthcare-profile-nav {
    gap: 18px;
}

.healthcare-profile-nav > a {
    color: rgba(255, 255, 255, .92);
    font-weight: 800;
}

.healthcare-profile-nav > a:hover,
.healthcare-profile-nav > a:focus {
    color: #fff;
    text-decoration: none;
}

.healthcare-profile-login {
    background: #fff;
    border-radius: 7px;
    color: #0b4f84 !important;
    padding: 9px 14px;
}

.healthcare-profile-language-switch {
    align-items: center;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 999px;
    display: inline-flex;
    gap: 3px;
    padding: 3px;
}

.healthcare-profile-language-switch a {
    border-radius: 999px;
    color: rgba(255, 255, 255, .9);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    padding: 7px 9px;
}

.healthcare-profile-language-switch a.active,
.healthcare-profile-language-switch a:hover,
.healthcare-profile-language-switch a:focus {
    background: #fff;
    color: #117ed0;
    text-decoration: none;
}

.healthcare-profile-hero {
    background: #263f58;
    color: #fff;
}

.healthcare-profile-hero-inner {
    align-items: center;
    display: grid;
    gap: 28px;
    grid-template-columns: 112px minmax(0, 1fr);
    min-height: 188px;
    padding-bottom: 30px;
    padding-top: 30px;
}

.healthcare-profile-portrait {
    background: rgba(255, 255, 255, .12);
    border: 4px solid rgba(255, 255, 255, .28);
    border-radius: 50%;
    box-shadow: 0 22px 40px rgba(7, 31, 54, .28);
    height: 112px;
    overflow: hidden;
    width: 112px;
}

.healthcare-profile-portrait img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.healthcare-profile-portrait span {
    align-items: center;
    display: flex;
    font-size: 30px;
    font-weight: 800;
    height: 100%;
    justify-content: center;
}

.healthcare-profile-hero-copy p {
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    font-weight: 800;
    margin: 0 0 8px;
}

.healthcare-profile-hero-copy h1 {
    color: #fff;
    font-size: 34px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.14;
    margin: 0 0 12px;
}

.healthcare-profile-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.healthcare-profile-hero-meta span {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    color: rgba(255, 255, 255, .92);
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    gap: 7px;
    padding: 7px 10px;
}

.healthcare-profile-main {
    padding: 28px 0 56px;
}

.healthcare-profile-grid {
    align-items: start;
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(0, 720px) minmax(280px, 1fr);
}

.healthcare-profile-card,
.healthcare-profile-summary-card,
.healthcare-profile-notice {
    background: #fff;
    border: 1px solid #d6e4ef;
    border-radius: 8px;
    box-shadow: 0 14px 34px rgba(15, 47, 75, .06);
}

.healthcare-profile-card {
    margin-bottom: 14px;
    padding: 22px;
}

.healthcare-profile-notice {
    align-items: flex-start;
    background: #eaf6ff;
    color: #24425f;
    display: flex;
    gap: 11px;
    line-height: 1.5;
    margin-bottom: 14px;
    padding: 16px 18px;
}

.healthcare-profile-notice i {
    color: #117ed0;
    margin-top: 2px;
}

.healthcare-profile-card-title {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 15px;
}

.healthcare-profile-card-title i {
    color: #7b9ab4;
    min-width: 16px;
}

.healthcare-profile-card-title h2 {
    color: #102a43;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0;
}

.healthcare-profile-card h3 {
    color: #0b4f84;
    font-size: 15px;
    font-weight: 800;
    margin: 0 0 8px;
}

.healthcare-profile-card p {
    color: #24425f;
    line-height: 1.62;
    margin: 0 0 10px;
}

.healthcare-profile-location-tabs,
.healthcare-profile-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.healthcare-profile-location-tabs span,
.healthcare-profile-chip-row span {
    background: #eaf4ff;
    border: 1px solid #d2e7f8;
    border-radius: 999px;
    color: #0b4f84;
    font-size: 12px;
    font-weight: 800;
    padding: 7px 10px;
}

.healthcare-profile-split-card {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.healthcare-profile-clean-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.healthcare-profile-clean-list li {
    align-items: center;
    border-top: 1px solid #e5edf4;
    display: flex;
    justify-content: space-between;
    min-height: 44px;
    padding: 10px 0;
}

.healthcare-profile-clean-list li:first-child {
    border-top: 0;
    padding-top: 0;
}

.healthcare-profile-clean-list strong {
    color: #102a43;
}

.healthcare-profile-clean-list span {
    color: #52697a;
    flex: 0 0 auto;
    margin-left: 14px;
}

.healthcare-profile-faq details {
    border-top: 1px solid #e5edf4;
    padding: 14px 0;
}

.healthcare-profile-faq details:first-child {
    border-top: 0;
    padding-top: 0;
}

.healthcare-profile-faq summary {
    color: #102a43;
    cursor: pointer;
    font-weight: 800;
}

.healthcare-profile-faq p {
    margin: 10px 0 0;
}

.healthcare-profile-summary {
    position: sticky;
    top: 86px;
}

.healthcare-profile-summary-card {
    padding: 20px;
}

.healthcare-profile-summary-card h2 {
    color: #102a43;
    font-size: 17px;
    font-weight: 800;
    margin: 0 0 16px;
}

.healthcare-profile-summary-card ul {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
}

.healthcare-profile-summary-card li {
    align-items: flex-start;
    color: #24425f;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin-bottom: 12px;
}

.healthcare-profile-summary-card li i {
    color: #7b9ab4;
    margin-top: 2px;
    width: 15px;
}

.healthcare-profile-book-button {
    align-items: center;
    background: #117ed0;
    border-radius: 7px;
    color: #fff;
    display: flex;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 46px;
    border: 0;
    padding: 0 16px;
    width: 100%;
}

.healthcare-profile-book-button:hover,
.healthcare-profile-book-button:focus {
    background: #0b6fb8;
    color: #fff;
    text-decoration: none;
}

.healthcare-profile-footer {
    background: #fff;
    border-top: 1px solid #d6e4ef;
    color: #52697a;
    padding: 28px 0;
}

.healthcare-profile-footer .healthcare-profile-container {
    align-items: center;
    display: flex;
    gap: 12px;
}

.healthcare-profile-footer strong {
    color: #117ed0;
    font-size: 18px;
}

.healthcare-profile-footer a {
    color: #0b6fb8;
    font-weight: 800;
    margin-left: auto;
}

@media (max-width: 991px) {
    .healthcare-profile-topbar-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
        padding-bottom: 12px;
        padding-top: 12px;
    }

    .healthcare-profile-nav {
        flex-wrap: wrap;
        gap: 10px;
    }

    .healthcare-profile-grid {
        grid-template-columns: 1fr;
    }

    .healthcare-profile-summary {
        position: static;
    }
}

@media (max-width: 640px) {
    .healthcare-profile-container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .healthcare-profile-hero-inner {
        gap: 18px;
        grid-template-columns: 82px minmax(0, 1fr);
        min-height: 150px;
    }

    .healthcare-profile-portrait {
        height: 82px;
        width: 82px;
    }

    .healthcare-profile-hero-copy h1 {
        font-size: 26px;
    }

    .healthcare-profile-split-card {
        grid-template-columns: 1fr;
    }

    .healthcare-profile-card,
    .healthcare-profile-summary-card {
        padding: 18px;
    }

    .healthcare-profile-footer .healthcare-profile-container {
        align-items: flex-start;
        flex-direction: column;
    }

    .healthcare-profile-footer a {
        margin-left: 0;
    }
}

body.hp-clinician-auth-body,
body.hp-clinician-body {
    background: #eef6fb;
    overflow-x: hidden;
}

.hp-pro-auth-shell,
.hp-clinician-shell {
    box-sizing: border-box;
    color: #08233f;
    font-family: Inter, "Helvetica Neue", Arial, sans-serif;
    max-width: 100vw;
    min-height: 100vh;
    overflow-x: hidden;
}

.hp-pro-auth-shell *,
.hp-pro-auth-shell *::before,
.hp-pro-auth-shell *::after,
.hp-clinician-shell *,
.hp-clinician-shell *::before,
.hp-clinician-shell *::after {
    box-sizing: border-box;
}

.hp-pro-auth-header {
    align-items: center;
    display: flex;
    gap: 24px;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1180px;
    padding: 24px 22px 0;
}

.hp-pro-brand,
.hp-pro-brand:hover,
.hp-pro-brand:focus {
    align-items: center;
    color: #08233f;
    display: inline-flex;
    font-size: 20px;
    font-weight: 850;
    gap: 10px;
    text-decoration: none;
}

.hp-pro-brand-mark {
    align-items: center;
    background: #087f8c;
    border-radius: 10px;
    color: #fff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.hp-pro-auth-header nav {
    align-items: center;
    display: flex;
    gap: 18px;
}

.hp-pro-auth-header nav a {
    color: #28516e;
    font-weight: 750;
}

.hp-pro-auth-main {
    align-items: stretch;
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(320px, 520px) minmax(280px, 420px);
    justify-content: center;
    margin: 0 auto;
    max-width: 1180px;
    padding: 72px 22px 44px;
}

.hp-pro-auth-card,
.hp-pro-auth-aside {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 18px 50px rgba(8, 35, 63, .08);
}

.hp-pro-auth-card {
    padding: 38px;
}

.hp-pro-auth-aside {
    background: #0d6f82;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 34px;
}

.hp-pro-auth-aside h2 {
    color: #fff;
    font-size: 30px;
    font-weight: 850;
    line-height: 1.12;
    margin: 8px 0 14px;
}

.hp-pro-auth-aside p,
.hp-pro-auth-aside li {
    color: rgba(255, 255, 255, .88);
    font-size: 15px;
    line-height: 1.55;
}

.hp-pro-auth-aside ul {
    display: grid;
    gap: 14px;
    list-style: none;
    margin: 28px 0 0;
    padding: 0;
}

.hp-pro-auth-aside li {
    align-items: center;
    display: flex;
    gap: 12px;
}

.hp-pro-auth-aside li i {
    align-items: center;
    background: rgba(255, 255, 255, .15);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 30px;
    font-size: 14px;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.healthcare-profile-summary-card .hp-contact-reveal--summary {
    align-items: flex-start;
    color: inherit;
    display: inline-flex;
    gap: 8px;
    overflow-wrap: anywhere;
}

.hp-pro-kicker {
    color: #007a72;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.hp-pro-auth-card h1 {
    color: #08233f;
    font-size: 32px;
    font-weight: 850;
    line-height: 1.15;
    margin: 0 0 12px;
}

.hp-pro-auth-lead {
    color: #41627a;
    line-height: 1.5;
    margin-bottom: 28px;
}

.hp-pro-form {
    display: grid;
    gap: 18px;
}

.hp-pro-field {
    display: grid;
    gap: 8px;
    position: relative;
}

.hp-pro-field span {
    color: #0b2b4c;
    font-weight: 800;
}

.hp-pro-field input,
.hp-pro-field textarea {
    background: #fff;
    border: 1px solid #bdd1df;
    border-radius: 8px;
    color: #08233f;
    font-size: 16px;
    outline: 0;
    padding: 0 14px;
    width: 100%;
}

.hp-pro-field input {
    min-height: 48px;
}

.hp-pro-field textarea {
    line-height: 1.5;
    min-height: 112px;
    padding-bottom: 12px;
    padding-top: 12px;
    resize: vertical;
}

.hp-pro-field input:focus,
.hp-pro-field textarea:focus {
    border-color: #117ed0;
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .16);
}

.hp-pro-field small {
    color: #b42318;
    font-weight: 700;
}

.hp-professional-register-field-help {
    color: #62798a;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.45;
}

.hp-pro-password-field input {
    padding-right: 48px;
}

.hp-pro-password-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    color: #4d6c83;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    position: absolute;
    right: 4px;
    top: 31px;
    width: 42px;
}

.hp-pro-form-row {
    display: flex;
    justify-content: flex-end;
}

.hp-pro-form-row a,
.hp-pro-link-button {
    background: transparent;
    border: 0;
    color: #0b73bd;
    font-weight: 800;
    padding: 0;
}

.hp-pro-primary,
.hp-pro-secondary {
    align-items: center;
    border-radius: 9px;
    display: inline-flex;
    font-weight: 850;
    gap: 8px;
    justify-content: center;
    min-height: 50px;
    padding: 0 18px;
    width: 100%;
}

.hp-pro-primary {
    background: #0b2239;
    border: 1px solid #0b2239;
    color: #fff;
}

.hp-pro-primary:hover,
.hp-pro-primary:focus {
    background: #12395c;
    color: #fff;
}

.hp-pro-secondary {
    background: #f6fafc;
    border: 1px solid #c8dbea;
    color: #17405f;
}

.hp-pro-secondary:disabled {
    color: #6d8294;
    cursor: not-allowed;
}

.hp-pro-register-prompt {
    color: #41627a;
    line-height: 1.45;
    margin: 0;
    text-align: center;
}

.hp-pro-register-prompt a {
    color: #0b73bd;
    font-weight: 850;
}

.hp-pro-security-copy {
    align-items: flex-start;
    background: #f6fbfd;
    border: 1px solid #d9e8f1;
    border-radius: 9px;
    color: #31536e;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin-top: 24px;
    padding: 14px;
}

.hp-pro-security-copy i {
    color: #087f8c;
    margin-top: 2px;
}

.hp-professional-register-main {
    grid-template-columns: minmax(360px, 640px) minmax(280px, 390px);
    padding-top: 52px;
}

.hp-professional-register-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-professional-register-next {
    background: #f5fafc;
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    margin: 24px 0;
    padding: 16px;
}

.hp-professional-register-next span {
    align-items: center;
    color: #214863;
    display: flex;
    gap: 10px;
    font-weight: 750;
}

.hp-professional-register-next i {
    color: #087f8c;
    width: 18px;
}

.hp-professional-register-link,
.hp-professional-register-link:hover,
.hp-professional-register-link:focus {
    text-decoration: none;
}

.hp-community-submit-main {
    grid-template-columns: minmax(360px, 660px) minmax(280px, 440px);
    padding-top: 52px;
}

.hp-community-reward-note {
    align-items: flex-start;
    background: #eef9f7;
    border: 1px solid #bfe5df;
    border-radius: 8px;
    color: #214863;
    display: flex;
    gap: 12px;
    margin: 20px 0 24px;
    padding: 15px 16px;
}

.hp-community-reward-note > i {
    align-items: center;
    background: #d7f2ed;
    border-radius: 6px;
    color: #087f78;
    display: inline-flex;
    flex: 0 0 36px;
    height: 36px;
    justify-content: center;
}

.hp-community-reward-note > div {
    display: flex;
    flex-direction: column;
    gap: 4px;
    line-height: 1.45;
}

.hp-community-reward-note strong {
    color: #082943;
}

.hp-community-reward-note span {
    color: #58758b;
    font-size: 13px;
}

.hp-community-submit-next {
    background: #f5fafc;
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    margin: 24px 0;
    padding: 16px;
}

.hp-community-submit-next span {
    align-items: center;
    color: #214863;
    display: flex;
    gap: 10px;
    font-weight: 750;
}

.hp-community-submit-next i {
    color: #087f8c;
    width: 18px;
}

.hp-community-submit-file input[type="file"] {
    align-items: center;
    display: flex;
    min-height: 48px;
    padding: 11px 14px;
}

.hp-community-submit-file small {
    color: #58758b;
    font-weight: 700;
}

.hp-community-template-link {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .30);
    border-radius: 9px;
    color: #fff;
    display: inline-flex;
    font-weight: 850;
    gap: 8px;
    justify-content: center;
    margin: 24px 0 18px;
    min-height: 44px;
    padding: 0 14px;
    text-decoration: none;
}

.hp-community-template-link:hover,
.hp-community-template-link:focus {
    background: rgba(255, 255, 255, .22);
    color: #fff;
    text-decoration: none;
}

.hp-community-sample-table {
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 10px;
    max-width: 100%;
    overflow-x: auto;
}

.hp-community-sample-table table {
    border-collapse: collapse;
    color: #fff;
    font-size: 12px;
    min-width: 760px;
    width: 100%;
}

.hp-community-sample-table th,
.hp-community-sample-table td {
    border-bottom: 1px solid rgba(255, 255, 255, .16);
    padding: 9px 10px;
    text-align: left;
    vertical-align: top;
}

.hp-community-sample-table th {
    background: rgba(255, 255, 255, .10);
    font-weight: 900;
    white-space: nowrap;
}

.hp-community-sample-table tr:last-child td {
    border-bottom: 0;
}

.hp-community-submit-link,
.hp-community-submit-link:hover,
.hp-community-submit-link:focus {
    text-decoration: none;
}

.hp-hidden-honeypot {
    height: 1px !important;
    left: -10000px !important;
    opacity: 0 !important;
    position: absolute !important;
    top: auto !important;
    width: 1px !important;
}

.hp-professional-register-recaptcha {
    margin: 18px 0;
    padding: 16px;
    border: 1px solid #b9d6e5;
    border-radius: 10px;
    background: #f4f9fc;
}

.hp-professional-register-recaptcha > p {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: #173e59;
    font-weight: 700;
}

.hp-professional-register-recaptcha > p i {
    color: #087f70;
}

.hp-professional-register-recaptcha [data-recaptcha-error] {
    display: block;
    margin-top: 8px;
    color: #a4262c;
    font-size: 13px;
    font-weight: 650;
}

.hp-professional-register-recaptcha [data-recaptcha-error][hidden] {
    display: none;
}

.hp-recaptcha-invisible-mount {
    min-height: 0;
}

.hp-registration-recaptcha-disclosure {
    margin: 10px 0 0;
    color: #6a7f8d;
    font-size: 11px;
    line-height: 1.5;
    text-align: center;
}

.hp-registration-recaptcha-disclosure a {
    color: #42677d;
    text-decoration: underline;
}

@media (max-width: 420px) {
    .hp-professional-register-recaptcha {
        margin-right: -8px;
        margin-left: -8px;
        padding: 12px 8px;
        overflow-x: auto;
    }
}

.hp-pro-account-list {
    display: grid;
    gap: 10px;
    margin: 24px 0 18px;
}

.hp-pro-account-row {
    align-items: center;
    border: 1px solid #cde0ec;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    grid-template-columns: 46px minmax(0, 1fr) auto 38px;
    padding: 12px;
}

.hp-pro-account-avatar,
.hp-clinician-user span,
.hp-clinician-sidebar-brand span {
    align-items: center;
    background: #087f8c;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-pro-account-main {
    min-width: 0;
}

.hp-pro-account-main strong,
.hp-pro-account-main small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-pro-account-main small {
    color: #58758b;
}

.hp-pro-account-choose {
    background: #e9f5fc;
    border: 1px solid #c5dceb;
    border-radius: 7px;
    color: #0b5f98;
    font-weight: 850;
    min-height: 36px;
    padding: 0 12px;
}

.hp-pro-account-remove {
    background: transparent;
    border: 0;
    color: #58758b;
}

.hp-unified-role-list {
    display: grid;
    gap: 14px;
    margin-top: 26px;
}

.hp-unified-role-form {
    margin: 0;
}

.hp-unified-role-card {
    align-items: center;
    background: #fff;
    border: 1px solid #c7ddea;
    border-radius: 14px;
    box-shadow: 0 3px 12px rgba(8, 35, 63, .035);
    color: #08233f;
    cursor: pointer;
    display: grid;
    font: inherit;
    gap: 16px;
    grid-template-columns: 50px minmax(0, 1fr) auto;
    min-height: 106px;
    overflow: hidden;
    padding: 18px;
    position: relative;
    text-align: left;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
    width: 100%;
}

.hp-unified-role-card::before {
    background: #0a918f;
    border-radius: 999px;
    bottom: 18px;
    content: '';
    left: 0;
    opacity: 0;
    position: absolute;
    top: 18px;
    transition: opacity .16s ease;
    width: 3px;
}

.hp-unified-role-card:hover,
.hp-unified-role-card:focus {
    background: #fbfdff;
    border-color: #117ed0;
    box-shadow: 0 14px 32px rgba(8, 35, 63, .11);
    color: #08233f;
    outline: 0;
    transform: translateY(-1px);
}

.hp-unified-role-card:hover::before,
.hp-unified-role-card:focus::before {
    opacity: 1;
}

.hp-unified-role-card:focus-visible {
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .18), 0 14px 32px rgba(8, 35, 63, .11);
}

.hp-unified-role-icon {
    align-items: center;
    background: #e7f6fb;
    border: 1px solid rgba(8, 127, 140, .08);
    border-radius: 999px;
    color: #087f8c;
    display: inline-flex;
    font-size: 20px;
    height: 50px;
    justify-content: center;
    width: 50px;
}

.hp-unified-role-card--admin::before {
    background: #3157a4;
}

.hp-unified-role-card--admin .hp-unified-role-icon {
    background: #edf2ff;
    border-color: rgba(49, 87, 164, .09);
    color: #3157a4;
}

.hp-unified-role-card--patient::before {
    background: #1673b8;
}

.hp-unified-role-card--patient .hp-unified-role-icon {
    background: #edf7ff;
    border-color: rgba(22, 115, 184, .09);
    color: #1673b8;
}

.hp-unified-role-content {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.hp-unified-role-content strong,
.hp-unified-role-content small,
.hp-unified-role-content em {
    display: block;
}

.hp-unified-role-content strong {
    color: #08233f;
    font-size: 18px;
    font-style: normal;
    font-weight: 850;
    line-height: 1.25;
    text-transform: none;
}

.hp-unified-role-content small {
    color: #41627a;
    font-size: 14px;
    line-height: 1.35;
}

.hp-unified-role-content em {
    color: #607c90;
    font-size: 13px;
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-unified-role-action {
    align-items: center;
    background: #edf6ff;
    border-radius: 999px;
    color: #0b73bd;
    display: inline-flex;
    font-size: 14px;
    font-weight: 850;
    gap: 8px;
    min-height: 36px;
    padding: 0 12px;
    white-space: nowrap;
}

.hp-unified-role-action i {
    font-size: 12px;
    transition: transform .16s ease;
}

.hp-unified-role-card:hover .hp-unified-role-action,
.hp-unified-role-card:focus .hp-unified-role-action {
    background: #117ed0;
    color: #fff;
}

.hp-unified-role-card:hover .hp-unified-role-action i,
.hp-unified-role-card:focus .hp-unified-role-action i {
    transform: translateX(2px);
}

.hp-pro-inline-form {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 18px;
}

.hp-pro-inline-form button:disabled {
    color: #7b91a3;
    cursor: not-allowed;
}

.hp-pro-muted {
    color: #58758b;
    margin-top: 16px;
}

.hp-clinician-shell {
    background: #eef6fb;
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    min-height: 100vh;
    width: 100%;
}

.hp-clinician-sidebar {
    background: #073353;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 28px;
    min-width: 0;
    padding: 16px 10px;
}

.hp-clinician-sidebar-brand,
.hp-clinician-sidebar-brand:hover,
.hp-clinician-sidebar-brand:focus {
    align-items: center;
    color: #fff;
    display: grid;
    gap: 6px;
    justify-items: center;
    text-decoration: none;
}

.hp-clinician-sidebar-brand span {
    background: #0aa0a7;
}

.hp-clinician-sidebar-brand strong {
    font-size: 12px;
}

.hp-clinician-sidebar nav {
    display: grid;
    gap: 8px;
}

.hp-clinician-sidebar nav a {
    align-items: center;
    border-radius: 10px;
    color: rgba(255, 255, 255, .78);
    display: grid;
    font-size: 11px;
    font-weight: 800;
    gap: 6px;
    justify-items: center;
    min-height: 64px;
    padding: 8px 4px;
    text-align: center;
    text-decoration: none;
}

.hp-clinician-sidebar nav a.active,
.hp-clinician-sidebar nav a:hover,
.hp-clinician-sidebar nav a:focus {
    background: rgba(255, 255, 255, .14);
    color: #fff;
}

.hp-clinician-sidebar nav i {
    font-size: 20px;
}

.hp-clinician-workspace {
    min-width: 0;
}

.hp-clinician-topbar {
    align-items: center;
    background: #073353;
    border-left: 1px solid rgba(255, 255, 255, .1);
    display: flex;
    gap: 18px;
    justify-content: space-between;
    min-height: 74px;
    padding: 12px 24px;
}

.hp-clinician-search {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 9px;
    color: #fff;
    display: flex;
    gap: 10px;
    max-width: 620px;
    min-height: 46px;
    padding: 0 14px;
    width: 100%;
}

.hp-clinician-search input {
    background: transparent;
    border: 0;
    color: #fff;
    outline: 0;
    width: 100%;
}

.hp-clinician-search input::placeholder {
    color: rgba(255, 255, 255, .75);
}

.hp-clinician-context-switcher {
    color: #fff;
    display: grid;
    flex: 0 1 280px;
    gap: 2px;
    min-width: 190px;
}

.hp-clinician-context-switcher label {
    font-size: 10px;
    font-weight: 800;
    margin: 0;
    text-transform: uppercase;
}

.hp-clinician-context-switcher select {
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 8px;
    color: #fff;
    height: 34px;
    max-width: 100%;
    padding: 0 8px;
}

.hp-clinician-context-switcher option {
    color: #0b2b4c;
}

.hp-clinician-top-actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: 12px;
}

.hp-clinician-icon-button {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    position: relative;
    width: 42px;
}

.hp-clinician-icon-button span {
    background: #f59e0b;
    border-radius: 999px;
    height: 8px;
    position: absolute;
    right: 8px;
    top: 8px;
    width: 8px;
}

.hp-clinician-user,
.hp-clinician-user:hover,
.hp-clinician-user:focus {
    align-items: center;
    color: #fff;
    display: flex;
    gap: 10px;
    max-width: 240px;
    text-decoration: none;
}

.hp-clinician-user span {
    height: 38px;
    width: 38px;
}

.hp-clinician-user strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-main {
    padding: 22px;
}

.hp-clinician-agenda-shell {
    display: grid;
    gap: 18px;
    grid-template-columns: 290px minmax(0, 1fr);
    margin: 0 auto;
    max-width: 1620px;
}

.hp-clinician-panel {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(8, 35, 63, .06);
}

.hp-clinician-left-panel {
    align-self: start;
    display: grid;
    gap: 16px;
    padding: 14px;
}

.hp-clinician-new-slot {
    align-items: center;
    background: #117ed0;
    border: 0;
    border-radius: 9px;
    color: #fff;
    display: flex;
    font-weight: 900;
    gap: 10px;
    justify-content: center;
    min-height: 48px;
    width: 100%;
}

.hp-clinician-mini-calendar,
.hp-clinician-filter-card,
.hp-clinician-selected-card {
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    padding: 14px;
}

.hp-clinician-mini-calendar-head {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}

.hp-clinician-mini-calendar-head button {
    background: transparent;
    border: 0;
    color: #214863;
}

.hp-clinician-calendar-grid {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(7, 1fr);
}

.hp-clinician-calendar-grid span,
.hp-clinician-calendar-grid button {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 12px;
    height: 28px;
    justify-content: center;
}

.hp-clinician-calendar-weekday {
    color: #6a8398;
    font-weight: 900;
}

.hp-clinician-calendar-grid button {
    background: transparent;
    border: 0;
    color: #214863;
}

.hp-clinician-calendar-grid button.active {
    background: #d9f0fb;
    color: #0b73bd;
    font-weight: 900;
}

.hp-clinician-mini-calendar-days {
    display: grid;
    gap: 6px;
    grid-column: 1 / -1;
    grid-template-columns: repeat(7, 1fr);
}

.hp-clinician-calendar-grid button.is-unavailable,
.hp-clinician-calendar-grid button:disabled {
    background: #f2f5f7;
    color: #a2afb8;
    cursor: not-allowed;
    opacity: .78;
}

.hp-clinician-filter-card {
    display: grid;
    gap: 10px;
}

.hp-clinician-filter-card label {
    align-items: center;
    color: #23465f;
    display: flex;
    gap: 8px;
    margin: 0;
}

.hp-clinician-selected-card {
    background: #fff8e7;
    border-color: #f2d89b;
}

.hp-clinician-selected-card p,
.hp-clinician-selected-card strong,
.hp-clinician-selected-card span {
    display: block;
    margin: 0 0 6px;
}

.hp-clinician-agenda-panel {
    min-width: 0;
    overflow-x: auto;
    padding: 16px;
}

.hp-clinician-agenda-toolbar {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.hp-clinician-agenda-toolbar h1 {
    color: #08233f;
    font-size: 26px;
    font-weight: 850;
    margin: 0;
}

.hp-clinician-toggle {
    background: #edf6fb;
    border: 1px solid #cde0ec;
    border-radius: 999px;
    display: inline-flex;
    padding: 4px;
}

.hp-clinician-toggle button {
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: #214863;
    font-weight: 850;
    min-height: 34px;
    padding: 0 16px;
}

.hp-clinician-toggle button.active {
    background: #073353;
    color: #fff;
}

.hp-clinician-state {
    align-items: center;
    background: #f7fbfd;
    border: 1px solid #d7e6f0;
    border-radius: 9px;
    color: #31536e;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    padding: 12px 14px;
}

.hp-clinician-week-grid {
    display: grid;
    grid-template-columns: 64px repeat(7, minmax(145px, 1fr));
    grid-template-rows: 64px repeat(22, 38px);
    min-width: 920px;
    position: relative;
}

.hp-clinician-day-head {
    background: #fff;
    border-bottom: 1px solid #cde0ec;
    border-left: 1px solid #dce9f1;
    color: #214863;
    display: grid;
    gap: 2px;
    padding: 10px 12px;
    position: sticky;
    top: 0;
    z-index: 3;
}

.hp-clinician-day-head strong {
    font-size: 14px;
}

.hp-clinician-day-head span {
    color: #6a8398;
    font-size: 12px;
}

.hp-clinician-grid-corner {
    background: #fff;
    border-bottom: 1px solid #cde0ec;
    grid-column: 1;
    grid-row: 1;
    position: sticky;
    top: 0;
    z-index: 4;
}

.hp-clinician-time-label {
    border-top: 1px solid #dce9f1;
    color: #5e7a91;
    font-weight: 750;
    padding: 6px 8px 0 0;
    text-align: right;
}

.hp-clinician-grid-cell {
    border-left: 1px solid #dce9f1;
    border-top: 1px solid #eef4f8;
    min-width: 0;
}

.hp-clinician-grid-cell:nth-child(even) {
    background: #fbfdfe;
}

.hp-clinician-appointment {
    border-left: 5px solid #117ed0;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(8, 35, 63, .08);
    color: #0b2b4c;
    display: grid;
    gap: 3px;
    margin: 4px 6px;
    min-height: 30px;
    overflow: hidden;
    padding: 8px 10px;
    z-index: 2;
}

.hp-clinician-appointment strong,
.hp-clinician-appointment span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-appointment span {
    color: #31536e;
    font-size: 12px;
}

.hp-clinician-appointment-followup {
    background: #d7f3c4;
    border-left-color: #52b015;
}

.hp-clinician-appointment-new {
    background: #fde2ad;
    border-left-color: #e99400;
}

.hp-clinician-appointment-video {
    background: #c8f3eb;
    border-left-color: #15a38f;
}

.hp-clinician-appointment-admin {
    background: #d7e8f7;
    border-left-color: #117ed0;
}

.hp-clinician-week-grid[data-view="day"] {
    grid-template-columns: 64px minmax(260px, 1fr);
    min-width: 420px;
}

.hp-clinician-week-grid[data-view="day"] [data-day]:not([data-day="0"]) {
    display: none;
}

@media (max-width: 980px) {
    .hp-pro-auth-main {
        grid-template-columns: 1fr;
        padding-top: 38px;
    }

    .hp-clinician-shell {
        grid-template-columns: 1fr;
    }

    .hp-clinician-sidebar {
        align-items: center;
        flex-direction: row;
        overflow-x: auto;
        padding: 8px 14px;
    }

    .hp-clinician-sidebar nav {
        display: flex;
        min-width: max-content;
    }

    .hp-clinician-sidebar nav a {
        min-height: 50px;
        min-width: 78px;
    }

    .hp-clinician-agenda-shell {
        grid-template-columns: 1fr;
    }

    .hp-clinician-topbar {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-clinician-context-switcher {
        flex-basis: auto;
        width: 100%;
    }

    .hp-clinician-top-actions {
        justify-content: space-between;
    }
}

@media (max-width: 640px) {
    .hp-pro-auth-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .hp-pro-auth-header nav {
        flex-wrap: wrap;
    }

    .hp-pro-auth-main {
        padding: 28px 14px;
    }

    .hp-pro-auth-card,
    .hp-pro-auth-aside {
        padding: 22px;
    }

    .hp-pro-auth-card h1 {
        font-size: 26px;
    }

    .hp-pro-account-row {
        grid-template-columns: 42px minmax(0, 1fr) 34px;
    }

    .hp-pro-account-choose {
        grid-column: 1 / -1;
    }

    .hp-unified-role-card {
        align-items: flex-start;
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .hp-unified-role-action {
        grid-column: 2;
    }

    .hp-professional-register-grid {
        grid-template-columns: 1fr;
    }

    .hp-clinician-main {
        padding: 12px;
    }

    .hp-clinician-agenda-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .hp-clinician-user strong {
        display: none;
    }
}

/* Clinician agenda workspace */
body.hp-clinician-body {
    margin: 0;
}

body.hp-clinician-body #wrapper,
body.hp-clinician-body .content,
body.hp-clinician-body .content-wrapper {
    margin: 0;
    max-width: 100vw;
    overflow-x: hidden;
    padding: 0;
}

body.hp-clinician-body #content,
body.hp-clinician-body #content > .container {
    margin: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.hp-clinician-body #content > .container > .row {
    margin-left: 0;
    margin-right: 0;
}

.hp-clinician-shell {
    background: #eaf4f9;
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    min-height: 100vh;
    overflow-x: hidden;
    width: 100%;
}

.hp-clinician-shell [hidden],
.hp-clinician-modal-layer[hidden],
.hp-clinician-modal [hidden],
.hp-clinician-toast[hidden] {
    display: none !important;
}

.hp-clinician-shell.is-sidebar-collapsed {
    grid-template-columns: 64px minmax(0, 1fr);
}

.hp-clinician-shell.is-sidebar-collapsed .hp-clinician-sidebar nav span,
.hp-clinician-shell.is-sidebar-collapsed .hp-clinician-sidebar-brand strong {
    display: none;
}

.hp-clinician-sidebar {
    background: #073353;
    border-right: 1px solid rgba(255, 255, 255, .12);
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
    padding: 14px 10px;
}

.hp-clinician-sidebar-brand,
.hp-clinician-sidebar-brand:hover,
.hp-clinician-sidebar-brand:focus {
    align-items: center;
    color: #fff;
    display: grid;
    gap: 6px;
    justify-items: center;
    text-decoration: none;
}

.hp-clinician-sidebar-brand span {
    align-items: center;
    background: #0f8f8a;
    border-radius: 12px;
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.hp-clinician-sidebar-brand strong {
    font-size: 12px;
    letter-spacing: 0;
}

.hp-clinician-sidebar nav {
    display: grid;
    gap: 8px;
}

.hp-clinician-sidebar nav a {
    align-items: center;
    border-radius: 9px;
    color: rgba(255, 255, 255, .78);
    display: grid;
    font-size: 11px;
    font-weight: 800;
    gap: 6px;
    justify-items: center;
    min-height: 64px;
    padding: 8px 4px;
    text-align: center;
    text-decoration: none;
}

.hp-clinician-sidebar nav a.active,
.hp-clinician-sidebar nav a:hover,
.hp-clinician-sidebar nav a:focus {
    background: rgba(255, 255, 255, .15);
    color: #fff;
    outline: 0;
}

.hp-clinician-sidebar nav i {
    font-size: 20px;
}

.hp-clinician-workspace {
    min-width: 0;
}

.hp-clinician-impersonation-banner {
    align-items: center;
    background: #fff7ed;
    border-bottom: 1px solid #fdba74;
    color: #7c2d12;
    display: flex;
    font-size: 14px;
    font-weight: 750;
    gap: 12px;
    justify-content: space-between;
    min-height: 44px;
    padding: 10px 22px;
}

.hp-clinician-impersonation-banner a,
.hp-clinician-impersonation-banner a:hover,
.hp-clinician-impersonation-banner a:focus {
    align-items: center;
    color: #0b65c2;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 850;
    gap: 7px;
    text-decoration: none;
}

.hp-clinician-impersonation-banner form,
.hp-team-return-form {
    margin: 0;
}

.hp-clinician-impersonation-banner button,
.hp-team-return-form button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #0b65c2;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-weight: 850;
    gap: 7px;
    padding: 0;
}

.hp-team-account-open {
    align-items: center;
    border-top: 1px solid #dce7ef;
    background: transparent;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    color: #0b65c2;
    cursor: pointer;
    display: flex;
    font-size: 13px;
    font-weight: 850;
    gap: 8px;
    justify-content: flex-start;
    margin-top: auto;
    padding: 12px 0 0;
    width: 100%;
}

.hp-organization-person { display: flex; flex-direction: column; }
.hp-organization-access-list { margin-bottom: 14px; }

.hp-team-account-open:hover,
.hp-team-account-open:focus-visible {
    color: #084f98;
    outline: 0;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.hp-team-owner-action {
    align-items: center;
    background: #fff;
    border: 1px solid #b9ccda;
    border-radius: 8px;
    color: #17384f;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 7px;
    justify-content: center;
    min-height: 40px;
    padding: 8px 12px;
}

.hp-team-owner-action.is-primary {
    background: #0b846f;
    border-color: #0b846f;
    color: #fff;
    grid-column: 1 / -1;
    justify-self: start;
}

.hp-team-owner-action.is-dark {
    background: #0d2d46;
    border-color: #0d2d46;
    color: #fff;
}

@media (max-width: 640px) {
    .hp-clinician-impersonation-banner {
        align-items: flex-start;
        flex-direction: column;
        padding: 10px 14px;
    }

    .hp-team-owner-action.is-primary {
        grid-column: 1;
    }

    .hp-team-owner-action {
        width: 100%;
    }
}

.hp-clinician-topbar {
    align-items: center;
    background: #073353;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    min-height: 74px;
    padding: 12px 22px;
}

.hp-clinician-search {
    align-items: center;
    background: rgba(255, 255, 255, .13);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 9px;
    color: #fff;
    display: flex;
    gap: 10px;
    max-width: 720px;
    min-height: 46px;
    padding: 0 14px;
    position: relative;
    width: 100%;
}

.hp-clinician-search input {
    background: transparent;
    border: 0;
    color: #fff;
    outline: 0;
    width: 100%;
}

.hp-clinician-search input::placeholder {
    color: rgba(255, 255, 255, .76);
}

.hp-clinician-search-results {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(8, 35, 63, .18);
    color: #0b2b4c;
    left: 0;
    padding: 10px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 25;
}

.hp-clinician-search-results > strong {
    color: #607a91;
    display: block;
    font-size: 12px;
    margin: 4px 8px 8px;
    text-transform: uppercase;
}

.hp-clinician-search-results button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #0b2b4c;
    display: flex;
    gap: 10px;
    padding: 10px;
    text-align: left;
    width: 100%;
}

.hp-clinician-search-results button:hover,
.hp-clinician-search-results button:focus {
    background: #e9f6ff;
    outline: 0;
}

.hp-clinician-search-results small,
.hp-clinician-search-empty {
    color: #607a91;
    display: block;
}

.hp-clinician-top-actions {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    gap: 10px;
    min-width: 0;
}

.hp-clinician-support-button,
.hp-clinician-tool-button,
.hp-clinician-today-button,
.hp-clinician-round-button,
.hp-clinician-menu-button {
    align-items: center;
    background: #fff;
    border: 1px solid #c6dbea;
    border-radius: 9px;
    color: #0b2b4c;
    display: inline-flex;
    font-weight: 850;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
}

.hp-clinician-support-button {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .22);
    color: #fff;
}

.hp-clinician-icon-button {
    align-items: center;
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    position: relative;
    width: 42px;
}

.hp-clinician-icon-button span {
    background: #f59e0b;
    border-radius: 999px;
    height: 8px;
    position: absolute;
    right: 8px;
    top: 8px;
    width: 8px;
}

.hp-clinician-popover-wrap {
    position: relative;
}

.hp-clinician-popover {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(8, 35, 63, .22);
    color: #0b2b4c;
    display: grid;
    gap: 6px;
    min-width: 260px;
    padding: 12px;
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    z-index: 24;
}

.hp-clinician-popover strong,
.hp-clinician-popover small {
    display: block;
}

.hp-clinician-popover small {
    color: #607a91;
    line-height: 1.35;
    margin-bottom: 6px;
}

.hp-clinician-popover button,
.hp-clinician-popover a {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #0b2b4c;
    display: flex;
    font-weight: 750;
    gap: 9px;
    min-height: 38px;
    padding: 8px;
    text-align: left;
    text-decoration: none;
    width: 100%;
}

.hp-clinician-popover button:hover,
.hp-clinician-popover button:focus,
.hp-clinician-popover a:hover,
.hp-clinician-popover a:focus {
    background: #e9f6ff;
    outline: 0;
}

.hp-clinician-user,
.hp-clinician-user:hover,
.hp-clinician-user:focus {
    align-items: center;
    background: transparent;
    border: 0;
    color: #fff;
    display: flex;
    gap: 10px;
    max-width: 220px;
    min-width: 0;
    text-decoration: none;
}

.hp-clinician-user span {
    align-items: center;
    background: #0f8f8a;
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 900;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.hp-clinician-user strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-user i {
    flex: 0 0 auto;
}

.hp-clinician-main {
    padding: 16px 18px 24px;
}

.hp-clinician-agenda-app {
    display: grid;
    gap: 14px;
    margin: 0;
    max-width: none;
    width: 100%;
}

a.hp-clinician-tool-button:hover,
a.hp-clinician-tool-button:focus {
    color: #0b2b4c;
    text-decoration: none;
}

.hp-start-team-card {
    align-items: center;
    background: #eef9f7;
    border: 1px solid #b9ded7;
    border-radius: 10px;
    display: grid;
    gap: 11px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    padding: 10px 12px;
}

.hp-start-team-card__icon {
    align-items: center;
    background: #d8f1ec;
    border-radius: 9px;
    color: #087f70;
    display: inline-flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.hp-start-team-card > div {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.hp-start-team-card strong { color: #103b52; font-size: 13px; }
.hp-start-team-card small { color: #607b87; font-size: 11px; }
.hp-start-team-card form { margin: 0; }
.hp-start-team-card button {
    align-items: center;
    background: #0b3b59;
    border: 0;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 7px;
    justify-content: center;
    min-height: 42px;
    padding: 9px 13px;
}
.hp-start-team-card button:hover { background: #0d5276; }
.hp-start-team-card button:focus-visible { outline: 3px solid rgba(8, 127, 112, .22); outline-offset: 2px; }

@media (max-width: 620px) {
    .hp-start-team-card { grid-template-columns: 38px minmax(0, 1fr); }
    .hp-start-team-card form { grid-column: 1 / -1; }
    .hp-start-team-card button { min-height: 44px; width: 100%; }
}

.hp-clinician-schedule-toolbar {
    align-items: center;
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(8, 35, 63, .06);
    display: flex;
    gap: 18px;
    justify-content: space-between;
    min-width: 0;
    padding: 12px 14px;
}

.hp-clinician-schedule-nav,
.hp-clinician-toolbar-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    min-width: 0;
}

.hp-clinician-schedule-nav h1 {
    color: #08233f;
    font-size: 22px;
    font-weight: 850;
    margin: 0;
}

.hp-clinician-round-button,
.hp-clinician-menu-button {
    justify-content: center;
    padding: 0;
    width: 40px;
}

.hp-clinician-toggle {
    background: #edf6fb;
    border: 1px solid #cde0ec;
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    padding: 4px;
}

.hp-clinician-toggle button {
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: #214863;
    font-weight: 850;
    min-height: 32px;
    padding: 0 16px;
}

.hp-clinician-toggle button.active {
    background: #073353;
    color: #fff;
}

.hp-clinician-agenda-shell {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: 306px minmax(0, 1fr);
    max-width: none;
}

.hp-clinician-panel {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(8, 35, 63, .06);
}

.hp-clinician-left-panel {
    display: grid;
    gap: 14px;
    padding: 12px;
    position: sticky;
    top: 14px;
}

.hp-clinician-new-slot {
    align-items: center;
    background: #117ed0;
    border: 0;
    border-radius: 9px;
    color: #fff;
    display: flex;
    font-weight: 900;
    gap: 10px;
    justify-content: center;
    min-height: 50px;
    width: 100%;
}

.hp-clinician-mini-calendar,
.hp-clinician-filter-card,
.hp-clinician-selected-card,
.hp-clinician-security-card {
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    padding: 14px;
}

.hp-clinician-mini-calendar-head {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}

.hp-clinician-mini-calendar-head button {
    background: transparent;
    border: 0;
    color: #214863;
    height: 30px;
    width: 30px;
}

.hp-clinician-calendar-grid {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(7, 1fr);
}

.hp-clinician-calendar-grid span,
.hp-clinician-calendar-grid button {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 12px;
    height: 28px;
    justify-content: center;
}

.hp-clinician-calendar-weekday {
    color: #6a8398;
    font-weight: 900;
}

.hp-clinician-calendar-grid button {
    background: transparent;
    border: 0;
    color: #214863;
}

.hp-clinician-calendar-grid button.active {
    background: #d9f0fb;
    color: #0b73bd;
    font-weight: 900;
}

.hp-clinician-selected-card {
    background: #fff8e7;
    border-color: #f2d89b;
}

.hp-clinician-selected-card p,
.hp-clinician-selected-card strong,
.hp-clinician-selected-card span,
.hp-clinician-selected-card small {
    display: block;
    margin: 0 0 6px;
}

.hp-clinician-selected-card small {
    color: #58758b;
}

.hp-clinician-filter-card {
    display: grid;
    gap: 10px;
}

.hp-clinician-filter-card label {
    align-items: center;
    color: #23465f;
    display: flex;
    gap: 8px;
    margin: 0;
}

.hp-clinician-security-card {
    align-items: flex-start;
    background: #f5fbfd;
    color: #31536e;
    display: flex;
    gap: 10px;
    line-height: 1.45;
}

.hp-clinician-security-card i {
    color: #0f8f8a;
    margin-top: 3px;
}

.hp-clinician-agenda-panel {
    min-width: 0;
    overflow: hidden;
    padding: 0;
}

.hp-clinician-state {
    align-items: center;
    background: #f7fbfd;
    border-bottom: 1px solid #d7e6f0;
    color: #31536e;
    display: flex;
    gap: 10px;
    padding: 12px 14px;
}

.hp-clinician-state button {
    background: #fff;
    border: 1px solid #c6dbea;
    border-radius: 8px;
    color: #0b65c2;
    font-weight: 800;
    margin-left: auto;
    min-height: 32px;
    padding: 0 12px;
}

.hp-clinician-calendar-scroll {
    max-width: 100%;
    overflow: auto;
}

.hp-clinician-calendar-board {
    background: #fff;
    min-width: 1060px;
}

.hp-clinician-calendar-head-row {
    background: #fff;
    border-bottom: 1px solid #cde0ec;
    display: grid;
    grid-template-columns: 64px repeat(7, minmax(176px, 1fr));
    min-height: 68px;
    position: sticky;
    top: 0;
    z-index: 5;
}

.hp-clinician-grid-corner {
    background: #fff;
    border-right: 1px solid #dce9f1;
}

.hp-clinician-day-head {
    border-right: 1px solid #dce9f1;
    color: #214863;
    display: grid;
    gap: 2px;
    padding: 12px 14px;
}

.hp-clinician-day-head strong {
    font-size: 15px;
}

.hp-clinician-day-head span {
    color: #6a8398;
    font-size: 12px;
}

.hp-clinician-calendar-body {
    display: grid;
    grid-template-columns: 64px repeat(7, minmax(176px, 1fr));
    min-height: calc(var(--hp-calendar-hours) * var(--hp-hour-height));
}

.hp-clinician-time-axis {
    background: #fff;
    border-right: 1px solid #dce9f1;
    min-height: calc(var(--hp-calendar-hours) * var(--hp-hour-height));
    position: relative;
}

.hp-clinician-time-axis span {
    color: #5e7a91;
    font-weight: 750;
    padding-right: 8px;
    position: absolute;
    right: 0;
    transform: translateY(-9px);
}

.hp-clinician-day-column {
    background: #fff;
    border-right: 1px solid #dce9f1;
    min-height: calc(var(--hp-calendar-hours) * var(--hp-hour-height));
    position: relative;
}

.hp-clinician-hour-line {
    border-top: 1px solid #e6eff5;
    left: 0;
    position: absolute;
    right: 0;
}

.hp-clinician-closed-band {
    background: repeating-linear-gradient(45deg, #f2f7fb, #f2f7fb 5px, #e6f0f7 5px, #e6f0f7 10px);
    left: 0;
    opacity: .86;
    pointer-events: none;
    position: absolute;
    right: 0;
}

.hp-clinician-closed-morning {
    height: calc(var(--hp-hour-height) * .75);
    top: 0;
}

.hp-clinician-closed-evening {
    bottom: 0;
    height: calc(var(--hp-hour-height) * .75);
}

.hp-clinician-appointment {
    border: 0;
    border-left: 5px solid #117ed0;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(8, 35, 63, .11);
    color: #0b2b4c;
    display: grid;
    gap: 3px;
    left: 6px;
    min-height: 38px;
    overflow: hidden;
    padding: 8px 10px;
    position: absolute;
    right: 6px;
    text-align: left;
    z-index: 2;
}

.hp-clinician-appointment:hover,
.hp-clinician-appointment:focus,
.hp-clinician-appointment.active {
    box-shadow: 0 0 0 2px #073353, 0 10px 22px rgba(8, 35, 63, .16);
    outline: 0;
}

.hp-clinician-appointment strong,
.hp-clinician-appointment span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-appointment span {
    color: #31536e;
    font-size: 12px;
}

.hp-clinician-appointment small,
.hp-clinician-selected-card em {
    align-self: start;
    background: rgba(255, 255, 255, .68);
    border-radius: 999px;
    color: #214863;
    display: inline-flex;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
    line-height: 1;
    padding: 5px 8px;
    width: max-content;
}

.hp-clinician-appointment-followup {
    background: #d7f3c4;
    border-left-color: #52b015;
}

.hp-clinician-appointment-new {
    background: #fde2ad;
    border-left-color: #e99400;
}

.hp-clinician-appointment-video {
    background: #c8f3eb;
    border-left-color: #15a38f;
}

.hp-clinician-appointment-admin {
    background: #d7e8f7;
    border-left-color: #117ed0;
}

.hp-clinician-appointment.is-cancelled {
    background: #eef3f7;
    border-left-color: #8aa1b4;
    opacity: .78;
}

.hp-clinician-appointment.is-cancelled strong,
.hp-clinician-appointment.is-cancelled span {
    text-decoration: line-through;
}

.hp-clinician-calendar-board[data-view="day"] .hp-clinician-calendar-head-row,
.hp-clinician-calendar-board[data-view="day"] .hp-clinician-calendar-body {
    grid-template-columns: 64px minmax(360px, 1fr);
}

.hp-clinician-calendar-board[data-view="day"] [data-day].hp-clinician-day-hidden {
    display: none;
}

.hp-clinician-month-board {
    background: #fff;
    padding: 16px;
}

.hp-clinician-month-head {
    border-bottom: 1px solid #dce9f1;
    color: #5e7a91;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    margin-bottom: 12px;
    padding-bottom: 10px;
}

.hp-clinician-month-head span {
    font-size: 12px;
    font-weight: 800;
    text-align: right;
    text-transform: uppercase;
}

.hp-clinician-month-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.hp-clinician-month-cell {
    background: #f8fbfe;
    border: 1px solid #dce9f1;
    border-radius: 12px;
    min-height: 150px;
    padding: 10px;
}

.hp-clinician-month-cell.is-outside-month {
    background: #f4f7fa;
    opacity: .68;
}

.hp-clinician-month-cell.is-today {
    border-color: #117ed0;
    box-shadow: inset 0 0 0 1px rgba(17, 126, 208, .14);
}

.hp-clinician-month-day {
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #0b2b4c;
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    justify-content: center;
    margin-bottom: 10px;
    margin-left: auto;
    min-height: 30px;
    min-width: 30px;
    padding: 0 8px;
}

.hp-clinician-month-day:hover,
.hp-clinician-month-day:focus {
    background: #e6f3fb;
    outline: 0;
}

.hp-clinician-month-events {
    display: grid;
    gap: 6px;
}

.hp-clinician-month-card {
    border: 0;
    border-left: 4px solid #117ed0;
    border-radius: 9px;
    color: #0b2b4c;
    display: grid;
    gap: 2px;
    min-height: 52px;
    padding: 8px 9px;
    text-align: left;
}

.hp-clinician-month-card strong,
.hp-clinician-month-card span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-month-card strong {
    font-size: 12px;
    font-weight: 900;
}

.hp-clinician-month-card span {
    color: #31536e;
    font-size: 11px;
}

.hp-clinician-month-card:hover,
.hp-clinician-month-card:focus,
.hp-clinician-month-card.active {
    box-shadow: 0 0 0 2px #073353, 0 8px 16px rgba(8, 35, 63, .12);
    outline: 0;
}

.hp-clinician-shell.is-compact-agenda .hp-clinician-appointment {
    gap: 1px;
    min-height: 32px;
    padding: 5px 8px;
}

.hp-clinician-shell.is-hide-closed-hours .hp-clinician-closed-band {
    display: none;
}

.hp-clinician-content-section {
    background: #fff;
    border: 1px solid #cde0ec;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(8, 35, 63, .06);
    display: grid;
    gap: 18px;
    padding: 26px;
}

.hp-clinician-section-head {
    max-width: 680px;
}

.hp-clinician-section-head h1 {
    color: #08233f;
    font-size: 30px;
    font-weight: 900;
    margin: 0 0 8px;
}

.hp-clinician-section-head p:not(.hp-pro-kicker) {
    color: #496b84;
    margin: 0;
}

.hp-clinician-card-grid,
.hp-clinician-billing-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.hp-clinician-record-card,
.hp-clinician-message-list article,
.hp-clinician-settings-list label,
.hp-clinician-billing-grid button {
    background: #f7fbfd;
    border: 1px solid #d7e6f0;
    border-radius: 12px;
    color: #0b2b4c;
}

.hp-clinician-record-card {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    padding: 16px;
}

.hp-clinician-avatar {
    align-items: center;
    background: #dff3ff;
    border-radius: 999px;
    color: #0b73bd;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-clinician-record-card h3,
.hp-clinician-record-card p,
.hp-clinician-record-card small {
    display: block;
    margin: 0;
}

.hp-clinician-record-card p,
.hp-clinician-record-card small {
    color: #496b84;
}

.hp-clinician-record-card button,
.hp-clinician-message-list button,
.hp-clinician-primary-action,
.hp-clinician-billing-grid button {
    background: #117ed0;
    border: 0;
    border-radius: 9px;
    color: #fff;
    font-weight: 850;
    min-height: 40px;
    padding: 0 14px;
}

.hp-clinician-task-list,
.hp-clinician-settings-list,
.hp-clinician-message-list {
    display: grid;
    gap: 10px;
}

.hp-clinician-settings-list label {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin: 0;
    padding: 14px 16px;
}

.hp-clinician-message-list article {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(150px, .4fr) minmax(0, 1fr) auto;
    padding: 16px;
}

.hp-clinician-message-list span {
    color: #496b84;
}

.hp-clinician-billing-grid button {
    background: #f7fbfd;
    color: #0b2b4c;
    display: grid;
    gap: 6px;
    justify-items: start;
    min-height: 110px;
    padding: 18px;
    text-align: left;
}

.hp-clinician-billing-grid strong {
    color: #117ed0;
    font-size: 28px;
}

.hp-clinician-modal-layer {
    align-items: center;
    background: rgba(8, 35, 63, .56);
    bottom: 0;
    display: flex;
    justify-content: center;
    left: 0;
    padding: 24px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 1050;
}

.hp-clinician-modal {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(8, 35, 63, .28);
    max-height: min(720px, calc(100vh - 48px));
    max-width: 640px;
    overflow: auto;
    padding: 30px;
    position: relative;
    width: min(100%, 640px);
}

.hp-clinician-modal-close {
    align-items: center;
    background: transparent;
    border: 0;
    color: #214863;
    display: inline-flex;
    font-size: 20px;
    height: 38px;
    justify-content: center;
    position: absolute;
    right: 14px;
    top: 14px;
    width: 38px;
}

.hp-clinician-modal h2 {
    color: #08233f;
    font-size: 24px;
    font-weight: 900;
    margin: 0 42px 10px 0;
}

.hp-clinician-modal p {
    color: #496b84;
}

.hp-clinician-modal textarea,
.hp-clinician-hours-grid input,
.hp-clinician-appointment-form input,
.hp-clinician-appointment-form select {
    border: 1px solid #b9d4e7;
    border-radius: 9px;
    color: #0b2b4c;
    padding: 10px 12px;
    width: 100%;
}

.hp-clinician-appointment-form {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
}

.hp-clinician-appointment-form label {
    color: #214863;
    display: grid;
    font-weight: 850;
    gap: 7px;
    margin: 0;
}

.hp-clinician-appointment-form-wide {
    grid-column: 1 / -1;
}

.hp-clinician-patient-picker {
    background: #f7fbfd;
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    display: grid;
    gap: 14px;
    padding: 14px;
}

.hp-clinician-segmented {
    background: #eaf4fb;
    border: 1px solid #c9dfed;
    border-radius: 999px;
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 4px;
}

.hp-clinician-segmented button {
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: #214863;
    font-weight: 900;
    min-height: 38px;
    padding: 0 12px;
}

.hp-clinician-segmented button.active {
    background: #073b5d;
    color: #fff;
}

.hp-clinician-new-patient-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-clinician-existing-patient-picker {
    display: grid;
    gap: 10px;
}

.hp-clinician-existing-patient-list {
    display: grid;
    gap: 8px;
}

.hp-clinician-existing-patient-list button {
    align-items: center;
    background: #fff;
    border: 1px solid #d1e3ef;
    border-radius: 10px;
    color: #0b2b4c;
    display: grid;
    gap: 2px;
    min-height: 58px;
    padding: 10px 12px;
    text-align: left;
}

.hp-clinician-existing-patient-list button strong,
.hp-clinician-existing-patient-list button span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-clinician-existing-patient-list button strong {
    font-weight: 900;
}

.hp-clinician-existing-patient-list button span {
    color: #56758b;
    font-size: 12px;
}

.hp-clinician-existing-patient-list button.active {
    background: #e7f8ff;
    border-color: #1187c7;
    box-shadow: inset 4px 0 0 #1187c7;
}

.hp-clinician-existing-patient-empty {
    color: #56758b;
    font-size: 13px;
    margin: 0;
}

.hp-clinician-appointment-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.hp-clinician-appointment-actions button {
    align-items: center;
    background: #edf8ff;
    border: 1px solid #b8dcf2;
    border-radius: 9px;
    color: #0b2b4c;
    display: inline-flex;
    font-weight: 850;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
}

.hp-clinician-appointment-actions button.danger {
    background: #fff0ee;
    border-color: #ffc5bc;
    color: #9a2b1f;
}

.hp-clinician-action-list,
.hp-clinician-slot-list,
.hp-clinician-hours-grid {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.hp-clinician-action-list button,
.hp-clinician-slot-list button {
    align-items: center;
    background: #f7fbfd;
    border: 1px solid #d7e6f0;
    border-radius: 10px;
    color: #0b2b4c;
    display: flex;
    gap: 10px;
    min-height: 48px;
    padding: 12px;
    text-align: left;
}

.hp-clinician-slot-list button {
    align-items: flex-start;
    flex-direction: column;
}

.hp-clinician-action-list button:hover,
.hp-clinician-action-list button:focus,
.hp-clinician-slot-list button:hover,
.hp-clinician-slot-list button:focus {
    background: #e9f6ff;
    outline: 0;
}

.hp-clinician-hours-grid label {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr 130px 130px;
}

.hp-clinician-primary-action {
    margin-top: 16px;
}

.hp-clinician-toast {
    background: #073353;
    border-radius: 999px;
    bottom: 24px;
    box-shadow: 0 14px 34px rgba(8, 35, 63, .24);
    color: #fff;
    font-weight: 850;
    left: 50%;
    padding: 12px 18px;
    position: fixed;
    transform: translateX(-50%);
    z-index: 1060;
}

@media (max-width: 1180px) {
    .hp-clinician-schedule-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .hp-clinician-agenda-shell {
        grid-template-columns: 270px minmax(0, 1fr);
    }
}

@media (max-width: 980px) {
    .hp-pro-auth-main {
        grid-template-columns: 1fr;
        padding-top: 38px;
    }

    .hp-clinician-shell {
        grid-template-columns: 1fr;
        overflow-x: hidden;
        overflow-y: visible;
    }

    .hp-clinician-sidebar {
        align-items: center;
        flex-direction: row;
        overflow-x: auto;
        padding: 8px 14px;
    }

    .hp-clinician-sidebar nav {
        display: flex;
        min-width: max-content;
    }

    .hp-clinician-sidebar nav a {
        min-height: 50px;
        min-width: 78px;
    }

    .hp-clinician-topbar {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-clinician-top-actions {
        justify-content: space-between;
    }

    .hp-clinician-agenda-shell {
        grid-template-columns: 1fr;
    }

    .hp-clinician-left-panel {
        position: static;
    }
}

@media (max-width: 640px) {
    .hp-pro-auth-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .hp-pro-auth-header nav {
        flex-wrap: wrap;
    }

    .hp-pro-auth-main {
        padding: 28px 14px;
    }

    .hp-pro-auth-card,
    .hp-pro-auth-aside {
        padding: 22px;
    }

    .hp-pro-auth-card h1 {
        font-size: 26px;
    }

    .hp-pro-account-row {
        grid-template-columns: 42px minmax(0, 1fr) 34px;
    }

    .hp-pro-account-choose {
        grid-column: 1 / -1;
    }

    .hp-unified-role-card {
        align-items: flex-start;
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .hp-unified-role-action {
        grid-column: 2;
    }

    .hp-professional-register-grid {
        grid-template-columns: 1fr;
    }

    .hp-clinician-main {
        padding: 10px;
    }

    .hp-clinician-content-section {
        padding: 18px;
    }

    .hp-clinician-section-head h1 {
        font-size: 24px;
    }

    .hp-clinician-record-card,
    .hp-clinician-message-list article {
        grid-template-columns: 1fr;
    }

    .hp-clinician-hours-grid label {
        grid-template-columns: 1fr;
    }

    .hp-clinician-appointment-form {
        grid-template-columns: 1fr;
    }

    .hp-clinician-new-patient-grid {
        grid-template-columns: 1fr;
    }

    .hp-clinician-appointment-actions {
        display: grid;
    }

    .hp-clinician-modal-layer {
        align-items: flex-end;
        padding: 0;
    }

    .hp-clinician-modal {
        border-radius: 16px 16px 0 0;
        max-height: calc(100vh - 32px);
        padding: 24px;
        width: 100%;
    }

    .hp-clinician-popover {
        max-width: calc(100vw - 24px);
        min-width: 220px;
    }

    .hp-clinician-schedule-nav h1 {
        font-size: 18px;
    }

    .hp-clinician-user strong,
    .hp-clinician-support-button,
    .hp-clinician-tool-button {
        display: none;
    }
}

/* Mobile-first UX stabilization for public, patient, and clinician surfaces. */
html,
body {
    max-width: 100%;
    /* Keep the viewport as the only vertical scroll owner. `hidden` on the
       horizontal axis computes the other axis to `auto`, which made both
       html and body render vertical scrollbars in the Perfex admin shell. */
    overflow-x: clip;
}

.healthcare-home-shell,
.healthcare-search-shell,
.healthcare-public-profile-shell,
.hp-pro-auth-shell,
.hp-clinician-shell {
    max-width: 100%;
    overflow-x: hidden;
}

.healthcare-home-shell,
.healthcare-search-shell,
.healthcare-public-profile-shell,
.hp-pro-auth-shell {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
}

.healthcare-home-shell *,
.healthcare-search-shell *,
.healthcare-public-profile-shell *,
.hp-pro-auth-shell *,
.hp-clinician-shell * {
    box-sizing: border-box;
}

.healthcare-home-shell img,
.healthcare-search-shell img,
.healthcare-public-profile-shell img,
.hp-pro-auth-shell img,
.hp-clinician-shell img {
    height: auto;
    max-width: 100%;
}

@media (min-width: 641px) {
    .healthcare-home-shell {
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
        width: 100vw;
    }
}

body.hp-home-body {
    background: #fff;
    overflow-x: hidden;
}

body.hp-home-body #wrapper,
body.hp-home-body #content {
    background: #fff;
    overflow-x: hidden;
}

body.hp-home-body #content > .container {
    margin: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.hp-home-body #content > .container > .row {
    margin-left: 0;
    margin-right: 0;
}

body.hp-home-body #content > .container > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

body.hp-home-body .healthcare-home-shell {
    margin-left: 0;
    margin-right: 0;
    max-width: none;
    width: 100%;
}

.healthcare-home-shell a:focus-visible,
.healthcare-home-shell button:focus-visible,
.healthcare-home-shell input:focus-visible,
.healthcare-search-shell a:focus-visible,
.healthcare-search-shell button:focus-visible,
.healthcare-search-shell input:focus-visible,
.healthcare-search-shell select:focus-visible,
.healthcare-public-profile-shell a:focus-visible,
.healthcare-public-profile-shell button:focus-visible,
.hp-pro-auth-shell a:focus-visible,
.hp-pro-auth-shell button:focus-visible,
.hp-pro-auth-shell input:focus-visible,
.hp-pro-auth-shell select:focus-visible,
.hp-pro-auth-shell textarea:focus-visible,
.hp-clinician-shell a:focus-visible,
.hp-clinician-shell button:focus-visible,
.hp-clinician-shell input:focus-visible,
.hp-clinician-shell select:focus-visible,
.hp-clinician-shell textarea:focus-visible {
    outline: 3px solid rgba(0, 126, 126, 0.34);
    outline-offset: 2px;
}

.healthcare-home-container,
.healthcare-search-inner,
.healthcare-search-results-shell,
.healthcare-profile-container,
.hp-pro-auth-header,
.hp-pro-auth-main,
.hp-clinician-content {
    max-width: min(100%, 1180px);
    min-width: 0;
}

.healthcare-home-container,
.healthcare-search-inner,
.healthcare-search-results-shell,
.healthcare-profile-container {
    padding-left: clamp(14px, 4vw, 28px);
    padding-right: clamp(14px, 4vw, 28px);
}

.healthcare-home-search,
.healthcare-search-top-form,
.healthcare-profile-search,
.hp-clinician-hero-search {
    min-width: 0;
}

.healthcare-home-search input,
.healthcare-search-top-form input,
.healthcare-profile-search input,
.hp-pro-auth-card input,
.hp-pro-auth-card select,
.hp-pro-auth-card textarea,
.hp-clinician-shell input,
.hp-clinician-shell select,
.hp-clinician-shell textarea {
    min-width: 0;
}

.healthcare-home-nav,
.healthcare-search-topbar,
.healthcare-profile-topbar,
.hp-pro-auth-header {
    gap: 14px;
    min-width: 0;
}

.healthcare-home-nav-links,
.healthcare-search-top-actions,
.healthcare-profile-nav,
.hp-pro-auth-header nav {
    min-width: 0;
}

.healthcare-search-top-form,
.healthcare-home-search,
.healthcare-profile-search {
    width: 100%;
}

.healthcare-search-layout,
.healthcare-profile-grid,
.hp-pro-auth-main,
.hp-professional-register-main {
    min-width: 0;
}

.healthcare-result-card,
.healthcare-profile-card,
.hp-pro-auth-card,
.hp-pro-auth-aside,
.hp-clinician-card,
.hp-clinician-hero,
.hp-clinician-calendar-card {
    min-width: 0;
}

.healthcare-result-availability,
.healthcare-search-map-panel,
.hp-clinician-calendar-scroll {
    min-width: 0;
    max-width: 100%;
}

.hp-clinician-calendar-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 1180px) {
    .healthcare-home-hero {
        min-height: auto;
        padding-bottom: 76px;
        padding-top: 78px;
    }

    .healthcare-home-hero-content {
        max-width: 760px;
    }

    .healthcare-home-hero h1 {
        font-size: clamp(34px, 7vw, 58px);
        line-height: 1.04;
    }

    .healthcare-search-shell.map-open .healthcare-search-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .healthcare-search-shell.map-open .healthcare-search-map-column {
        order: -1;
    }

    .healthcare-search-shell.map-open .healthcare-search-map-panel {
        position: relative;
        top: auto;
    }

    .healthcare-search-map-canvas {
        min-height: 320px;
    }

    .healthcare-profile-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .healthcare-profile-summary-card {
        position: static;
    }
}

@media (max-width: 980px) {
    .healthcare-home-nav,
    .healthcare-search-topbar,
    .healthcare-profile-topbar,
    .hp-pro-auth-header {
        align-items: stretch;
        flex-direction: column;
    }

    .healthcare-home-nav-links,
    .healthcare-search-top-actions,
    .healthcare-profile-nav,
    .hp-pro-auth-header nav {
        overflow-x: auto;
        padding-bottom: 4px;
        scrollbar-width: thin;
        white-space: nowrap;
        width: 100%;
    }

    .healthcare-home-nav-actions,
    .healthcare-search-top-actions,
    .healthcare-profile-nav,
    .hp-pro-auth-header nav {
        justify-content: flex-start;
    }

    .healthcare-search-topbar .healthcare-search-top-form {
        max-width: none;
        order: 3;
    }

    .healthcare-home-search {
        grid-template-columns: minmax(0, 1fr);
    }

    .healthcare-home-search-field + .healthcare-home-search-field {
        border-left: 0;
        border-top: 1px solid var(--hp-border);
    }

    .healthcare-home-search .healthcare-public-search-submit,
    .healthcare-profile-search button,
    .healthcare-search-top-form .healthcare-public-search-submit {
        min-height: 54px;
        width: 100%;
    }

    .healthcare-home-trust-row,
    .healthcare-home-quicklinks,
    .healthcare-search-filterbar,
    .healthcare-profile-tabs {
        display: flex;
        gap: 10px;
        margin-left: -14px;
        margin-right: -14px;
        overflow-x: auto;
        padding-left: 14px;
        padding-right: 14px;
        scrollbar-width: thin;
        white-space: nowrap;
    }

    .healthcare-home-chip,
    .healthcare-search-filter-button,
    .healthcare-profile-tab {
        flex: 0 0 auto;
    }

    .healthcare-home-steps,
    .healthcare-home-feature-grid,
    .healthcare-home-clinic-band,
    .healthcare-home-data-band,
    .healthcare-profile-address-grid,
    .healthcare-profile-split-card,
    .healthcare-profile-footer-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-pro-auth-main,
    .hp-professional-register-main {
        grid-template-columns: minmax(0, 1fr);
        padding-left: clamp(14px, 4vw, 28px);
        padding-right: clamp(14px, 4vw, 28px);
    }

    .hp-pro-auth-aside {
        order: 2;
    }

    body.hp-clinician-body {
        overflow-x: hidden;
    }

    .hp-clinician-shell {
        min-height: 100vh;
    }

    .hp-clinician-main {
        max-width: 100%;
        min-width: 0;
        overflow-x: hidden;
    }

    .hp-clinician-sidebar {
        max-width: 100%;
        overflow-x: auto;
        scrollbar-width: thin;
    }

    .hp-clinician-nav {
        min-width: max-content;
    }

    .hp-clinician-topbar,
    .hp-clinician-schedule-toolbar,
    .hp-clinician-schedule-nav,
    .hp-clinician-schedule-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-clinician-view-toggle,
    .hp-clinician-schedule-actions {
        overflow-x: auto;
        padding-bottom: 4px;
        white-space: nowrap;
    }

    .hp-clinician-agenda-shell {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-left-panel {
        position: static;
    }

    .hp-clinician-calendar-board {
        min-width: 780px;
    }

    .hp-clinician-month-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .healthcare-home-hero {
        background-position: 58% center;
        padding-top: 48px;
    }

    .healthcare-home-hero::before {
        background: linear-gradient(90deg, rgba(247, 251, 255, 0.98) 0%, rgba(247, 251, 255, 0.9) 62%, rgba(247, 251, 255, 0.45) 100%);
    }

    .healthcare-home-nav {
        padding-bottom: 12px;
        padding-top: 12px;
    }

    .healthcare-home-nav-actions,
    .healthcare-search-top-actions,
    .healthcare-profile-nav {
        flex-wrap: wrap;
    }

    .healthcare-home-hero h1,
    .healthcare-profile-hero-copy h1,
    .hp-pro-auth-card h1,
    .hp-clinician-hero h1 {
        font-size: clamp(30px, 9vw, 44px);
    }

    .healthcare-search-top-form,
    .healthcare-profile-search {
        border-radius: 14px;
        grid-template-columns: minmax(0, 1fr);
        overflow: hidden;
    }

    .healthcare-search-input-block + .healthcare-search-input-block,
    .healthcare-profile-search-field + .healthcare-profile-search-field {
        border-left: 0;
        border-top: 1px solid var(--hp-border);
    }

    .healthcare-search-results-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .healthcare-result-card {
        grid-template-columns: minmax(0, 1fr);
        padding: 16px;
    }

    .healthcare-result-provider {
        grid-template-columns: 56px minmax(0, 1fr);
    }

    .healthcare-result-availability {
        border-left: 0;
        border-top: 1px solid var(--hp-border);
        padding-left: 0;
        padding-top: 16px;
    }

    .healthcare-result-action-row,
    .healthcare-result-slots {
        grid-template-columns: minmax(0, 1fr);
    }

    .healthcare-search-filterbar {
        position: relative;
        top: auto;
        z-index: 5;
    }

    .healthcare-search-filter-menu {
        left: 14px;
        max-width: calc(100vw - 28px);
        position: fixed;
        right: 14px;
        top: 108px;
        width: auto;
    }

    .healthcare-search-map-canvas {
        min-height: 260px;
    }

    .healthcare-profile-hero {
        padding-bottom: 28px;
        padding-top: 28px;
    }

    .healthcare-profile-hero-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .healthcare-profile-portrait {
        height: 86px;
        width: 86px;
    }

    .healthcare-profile-body {
        padding-bottom: 34px;
        padding-top: 24px;
    }

    .healthcare-profile-card,
    .healthcare-profile-summary-card,
    .hp-pro-auth-card,
    .hp-pro-auth-aside {
        border-radius: 14px;
        padding: 20px;
    }

    .hp-pro-auth-actions,
    .hp-professional-register-actions,
    .hp-pro-auth-extra-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-pro-auth-actions .btn,
    .hp-professional-register-actions .btn,
    .hp-pro-auth-extra-actions .btn {
        width: 100%;
    }

    .hp-pro-account-row,
    .hp-unified-role-card {
        align-items: flex-start;
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .hp-pro-account-choose,
    .hp-pro-account-remove,
    .hp-unified-role-action {
        grid-column: 2;
        justify-self: start;
    }

    .hp-clinician-content {
        padding: 12px;
    }

    .hp-clinician-hero {
        grid-template-columns: minmax(0, 1fr);
        padding: 24px;
    }

    .hp-clinician-hero-search {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-hero-search button {
        width: 100%;
    }

    .hp-clinician-kpi-grid,
    .hp-clinician-home-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-calendar-card {
        padding: 12px;
    }

    .hp-clinician-calendar-board {
        min-width: 700px;
    }

    .hp-clinician-month-head,
    .hp-clinician-month-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hp-clinician-month-cell {
        min-height: 132px;
    }
}

@media (max-width: 520px) {
    .healthcare-home-nav .container {
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(0, 1fr);
    }

    .healthcare-home-nav-links {
        display: grid;
        gap: 10px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        overflow: visible;
        padding-bottom: 0;
        white-space: normal;
        width: 100%;
    }

    .healthcare-home-nav-links > a:not(.btn),
    .healthcare-home-nav-links > a[href*="#"] {
        display: none;
    }

    .healthcare-home-language-switch,
    .healthcare-home-nav-links .btn {
        min-width: 0;
        width: 100%;
    }

    .healthcare-home-nav-links .healthcare-home-language-switch a,
    .healthcare-home-nav-links .btn {
        justify-content: center;
    }

    .healthcare-home-brand,
    .healthcare-search-brand,
    .healthcare-profile-brand,
    .hp-pro-auth-brand {
        max-width: 100%;
    }

    .healthcare-home-brand span,
    .healthcare-search-brand span,
    .healthcare-profile-brand span,
    .hp-pro-auth-brand span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .healthcare-home-nav-link,
    .healthcare-search-top-actions a,
    .healthcare-profile-nav a,
    .hp-pro-auth-header nav a {
        padding: 9px 10px;
    }

    .healthcare-home-hero-copy,
    .healthcare-profile-hero-copy,
    .hp-pro-auth-main,
    .hp-professional-register-main {
        width: 100%;
    }

    .healthcare-home-search,
    .healthcare-search-top-form,
    .healthcare-profile-search,
    .hp-clinician-hero-search {
        box-shadow: 0 14px 32px rgba(6, 30, 54, 0.12);
    }

    .healthcare-home-stat-strip,
    .healthcare-home-data-band,
    .healthcare-home-clinic-band,
    .healthcare-profile-card,
    .healthcare-profile-summary-card {
        margin-left: 0;
        margin-right: 0;
    }

    .healthcare-search-shell.map-open .healthcare-search-map-column {
        margin-left: -14px;
        margin-right: -14px;
    }

    .healthcare-search-map-panel {
        border-left: 0;
        border-right: 0;
        border-radius: 0;
    }

    .healthcare-result-provider {
        grid-template-columns: 48px minmax(0, 1fr);
    }

    .healthcare-result-avatar {
        height: 48px;
        width: 48px;
    }

    .hp-pro-auth-card,
    .hp-pro-auth-aside {
        padding: 18px;
    }

    .hp-professional-register-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-topbar {
        border-radius: 12px;
        padding: 10px;
    }

    .hp-clinician-sidebar {
        padding-left: 8px;
        padding-right: 8px;
    }

    .hp-clinician-calendar-board {
        min-width: 640px;
    }
}

.healthcare-home-mobile-flow,
.healthcare-mobile-heading,
.healthcare-home-mobile-bottom-nav {
    display: none;
}

@media (max-width: 640px) {
    .healthcare-home-shell {
        background: #fff;
        padding-bottom: 0;
    }

    .healthcare-home-shell .healthcare-home-section:not(.healthcare-home-shared-features) {
        display: none;
    }

    .healthcare-home-shell .healthcare-home-shared-features,
    .healthcare-home-shell .healthcare-home-band,
    .healthcare-home-shell .healthcare-home-final,
    .healthcare-home-shell .healthcare-mobile-apps {
        display: block;
    }

    .healthcare-home-nav {
        background: #1687d9;
        border: 0;
        padding: 10px 0 8px;
        position: relative;
    }

    .healthcare-home-nav .container {
        display: grid;
        align-items: center;
        gap: 6px;
        grid-template-columns: minmax(0, 54px) minmax(0, 1fr) minmax(0, 84px);
        min-height: 0;
        padding-left: 12px;
        padding-right: 12px;
    }

    .healthcare-home-brand {
        font-size: 15px;
        gap: 0;
        grid-column: 2;
        grid-row: 1;
        justify-content: center;
        min-width: 0;
        width: 100%;
    }

    .healthcare-home-brand span:last-child {
        flex: 1 1 auto;
        max-width: 120px;
        min-width: 0;
        text-align: center;
    }

    .healthcare-home-brand-mark {
        display: none;
    }

    .healthcare-home-nav-links {
        align-items: center;
        display: contents;
        overflow: visible;
        padding-bottom: 0;
        white-space: normal;
        width: 100%;
    }

    .healthcare-home-nav-links > a:not(.btn),
    .healthcare-home-nav-links > a[href*="#"] {
        display: none;
    }

    .healthcare-home-language-switch,
    .healthcare-home-nav-links .btn {
        min-width: 0;
    }

    .healthcare-home-language-switch {
        border-color: rgba(255, 255, 255, .36);
        gap: 2px;
        grid-column: 1;
        grid-row: 1;
        justify-content: center;
        justify-self: start;
        padding: 2px;
        width: auto;
    }

    .healthcare-home-nav-links .healthcare-home-language-switch a {
        font-size: 10px;
        justify-content: center;
        min-width: 22px;
        padding: 7px 4px;
    }

    .healthcare-language-label-full {
        display: none;
    }

    .healthcare-language-label-short {
        display: inline;
    }

    .healthcare-home-nav-links .btn {
        align-items: center;
        border-radius: 8px;
        display: inline-flex;
        font-size: 10px;
        grid-column: 3;
        grid-row: 1;
        justify-content: center;
        min-height: 40px;
        min-width: 82px;
        overflow: hidden;
        padding: 8px 8px;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: auto;
    }

    .healthcare-home-shell .healthcare-home-hero {
        background-color: #1687d9 !important;
        background-image: linear-gradient(180deg, rgba(22, 135, 217, .96), rgba(22, 135, 217, .88)) !important;
        border-radius: 0 0 22px 22px;
        margin: 0;
        min-height: 0;
        overflow: visible;
        padding: 34px 0 112px;
        position: relative;
        text-align: center;
    }

    .healthcare-home-shell .healthcare-home-copy {
        margin: 0 auto;
        max-width: 330px;
        position: relative;
        z-index: 1;
    }

    .healthcare-home-shell .healthcare-home-kicker,
    .healthcare-home-shell .healthcare-home-subtitle,
    .healthcare-home-assurance,
    .healthcare-home-shell .healthcare-home-quicklinks {
        display: none;
    }

    .healthcare-home-shell .healthcare-home-copy h1 {
        font-size: 31px;
        line-height: 1.12;
        margin: 0 auto 24px;
        max-width: 300px;
    }

    .healthcare-home-shell .healthcare-home-search {
        align-items: center;
        background: transparent;
        border: 0;
        box-shadow: none;
        display: inline-flex;
        justify-content: center;
        margin: 0 auto;
        max-width: none;
        overflow: visible;
        width: auto;
    }

    .healthcare-home-shell .healthcare-home-search-field {
        display: none;
    }

    .healthcare-home-shell .healthcare-home-search .btn {
        align-items: center;
        background: #fff;
        border: 0;
        border-radius: 999px;
        box-shadow: 0 16px 36px rgba(6, 30, 54, .18);
        color: #117ed0;
        display: inline-flex;
        font-size: 13px;
        gap: 9px;
        justify-content: center;
        min-height: 44px;
        min-width: 178px;
        padding: 0 22px;
        text-transform: uppercase;
    }

    .healthcare-home-mobile-flow {
        background: #fff;
        display: block;
        margin-top: -74px;
        padding: 0 0 26px;
        position: relative;
        z-index: 3;
    }

    .healthcare-home-mobile-middle,
    .healthcare-home-mobile-end {
        margin-top: 0;
        padding-top: 0;
    }

    .healthcare-home-mobile-flow .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .healthcare-mobile-apps-card {
        border-radius: 8px;
        box-shadow: 0 10px 24px rgba(16, 42, 67, .07);
        gap: 0;
        grid-template-columns: 1fr;
        margin-top: 18px;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-copy {
        padding: 22px 18px 18px;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-kicker {
        font-size: 10px;
        margin-bottom: 7px;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-copy h2 {
        font-size: 24px;
        line-height: 1.2;
        margin-bottom: 10px;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-text {
        font-size: 14px;
        line-height: 1.55;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-stores {
        grid-template-columns: 1fr;
        margin-top: 18px;
        max-width: none;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-store {
        min-height: 72px;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-visual {
        border-left: 0;
        border-top: 1px solid #e5edf4;
        min-height: 0;
    }

    .healthcare-mobile-apps-card .healthcare-mobile-apps-visual img {
        aspect-ratio: 3 / 2;
        height: auto;
        object-fit: cover;
    }

    .healthcare-mobile-update-card {
        background: #fff;
        border: 1px solid #d8e6f2;
        border-radius: 8px;
        box-shadow: 0 12px 28px rgba(7, 52, 94, .14);
        display: grid;
        gap: 10px;
        grid-template-columns: minmax(0, 1fr) 112px;
        min-height: 128px;
        overflow: hidden;
    }

    .healthcare-mobile-update-card > div:first-child {
        padding: 16px 0 16px 16px;
    }

    .healthcare-mobile-update-card p {
        color: #0b2944;
        font-size: 14px;
        line-height: 1.45;
        margin: 0 0 16px;
    }

    .healthcare-mobile-update-card a {
        color: #117ed0;
        font-size: 13px;
        font-weight: 800;
    }

    .healthcare-mobile-update-visual {
        align-items: flex-end;
        background-color: #dff1fb;
        background-position: center;
        background-size: cover;
        display: flex;
        justify-content: flex-start;
        min-height: 128px;
        padding: 12px;
        position: relative;
    }

    .healthcare-mobile-update-visual::before {
        background: rgba(255, 255, 255, .56);
        content: "";
        inset: 0;
        position: absolute;
    }

    .healthcare-mobile-update-visual i {
        align-items: center;
        background: #fff;
        border-radius: 10px;
        color: #117ed0;
        display: inline-flex;
        height: 36px;
        justify-content: center;
        position: relative;
        width: 36px;
    }

    .healthcare-mobile-pro-cta {
        align-items: center;
        background: #071f36;
        border-radius: 7px;
        color: #fff;
        display: flex;
        font-size: 13px;
        font-weight: 800;
        justify-content: center;
        margin: 28px auto 34px;
        min-height: 42px;
        padding: 0 18px;
        width: fit-content;
    }

    .healthcare-mobile-pro-cta:hover,
    .healthcare-mobile-pro-cta:focus {
        color: #fff;
        text-decoration: none;
    }

    .healthcare-mobile-heading {
        display: block;
        margin: 0 auto 24px;
        max-width: 290px;
        text-align: center;
    }

    .healthcare-mobile-heading h2,
    .healthcare-mobile-stats h2,
    .healthcare-mobile-promo-card h2,
    .healthcare-mobile-help-card h2 {
        color: #061e36;
        font-size: 20px;
        font-weight: 800;
        line-height: 1.25;
        margin: 0;
    }

    .healthcare-mobile-feature-stack {
        display: grid;
        gap: 30px;
    }

    .healthcare-home-shared-features {
        background: #fff;
        padding: 0 0 26px;
    }

    .healthcare-home-shared-features > .container,
    .healthcare-mobile-apps > .container,
    .healthcare-home-final > .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .healthcare-home-shared-features .row {
        display: grid;
        gap: 30px;
        margin: 0;
    }

    .healthcare-home-shared-features .row > div {
        float: none;
        padding: 0 12px;
        width: 100%;
    }

    .healthcare-home-shared-features .healthcare-feature-card {
        background: transparent;
        border: 0;
        box-shadow: none;
        padding: 0;
        text-align: center;
    }

    .healthcare-home-shared-features .healthcare-feature-card > i {
        align-items: center;
        background: #e1f3ff;
        border-radius: 16px;
        color: #117ed0;
        display: inline-flex;
        font-size: 26px;
        height: 68px;
        justify-content: center;
        margin-bottom: 18px;
        transform: rotate(-8deg);
        width: 68px;
    }

    .healthcare-home-shared-features .row > div:nth-child(2) .healthcare-feature-card > i {
        background: #e6f7f5;
        color: #0f766e;
        transform: rotate(7deg);
    }

    .healthcare-home-shared-features .row > div:nth-child(3) .healthcare-feature-card > i {
        background: #ffeef4;
        color: #e23b72;
        transform: rotate(-5deg);
    }

    .healthcare-home-shared-features .healthcare-feature-card h3 {
        color: #061e36;
        font-size: 15px;
        font-weight: 800;
        line-height: 1.35;
        margin: 0 0 8px;
    }

    .healthcare-home-shared-features .healthcare-feature-card p {
        color: #31506b;
        font-size: 13px;
        line-height: 1.55;
        margin: 0;
    }

    .healthcare-mobile-feature-card {
        padding: 0 12px;
        text-align: center;
    }

    .healthcare-mobile-feature-card span,
    .healthcare-mobile-promo-icon {
        align-items: center;
        background: #e1f3ff;
        border-radius: 16px;
        color: #117ed0;
        display: inline-flex;
        font-size: 26px;
        height: 68px;
        justify-content: center;
        margin-bottom: 18px;
        transform: rotate(-8deg);
        width: 68px;
    }

    .healthcare-mobile-feature-card:nth-child(2) span {
        background: #e6f7f5;
        color: #0f766e;
        transform: rotate(7deg);
    }

    .healthcare-mobile-feature-card:nth-child(3) span {
        background: #ffeef4;
        color: #e23b72;
        transform: rotate(-5deg);
    }

    .healthcare-mobile-feature-card h3 {
        color: #061e36;
        font-size: 15px;
        font-weight: 800;
        line-height: 1.35;
        margin: 0 0 8px;
    }

    .healthcare-mobile-feature-card p {
        color: #31506b;
        font-size: 13px;
        line-height: 1.55;
        margin: 0;
    }

    .healthcare-mobile-stats {
        display: grid;
        gap: 18px;
        margin: 38px 0 30px;
        text-align: center;
    }

    .healthcare-mobile-stats h2 {
        margin-bottom: 2px;
    }

    .healthcare-mobile-stats strong {
        color: #263f59;
        display: block;
        font-size: 30px;
        font-weight: 800;
        line-height: 1;
    }

    .healthcare-mobile-stats span {
        color: #52697a;
        display: block;
        font-size: 12px;
        margin-top: 5px;
    }

    .healthcare-mobile-promo-card {
        background: #eaf6ff;
        border: 1px solid #d6e9f8;
        border-radius: 8px;
        margin-top: 18px;
        padding: 26px 22px;
        text-align: center;
    }

    .healthcare-mobile-promo-card p,
    .healthcare-mobile-help-card p,
    .healthcare-mobile-footer {
        color: #31506b;
        font-size: 13px;
        line-height: 1.55;
    }

    .healthcare-mobile-promo-card p {
        margin: 12px 0 18px;
    }

    .healthcare-mobile-promo-card a {
        background: #117ed0;
        border-radius: 7px;
        color: #fff;
        display: inline-flex;
        font-size: 13px;
        font-weight: 800;
        justify-content: center;
        min-height: 36px;
        padding: 9px 14px;
    }

    .healthcare-mobile-promo-card a:hover,
    .healthcare-mobile-promo-card a:focus {
        color: #fff;
        text-decoration: none;
    }

    .healthcare-mobile-app-card .healthcare-mobile-promo-icon {
        background: #d9f7f1;
        color: #0f766e;
    }

    .healthcare-mobile-pro-card {
        background: #062845;
        border-color: #062845;
        color: #fff;
    }

    .healthcare-mobile-pro-card h2,
    .healthcare-mobile-pro-card p {
        color: #fff;
    }

    .healthcare-mobile-pro-card .healthcare-mobile-promo-icon {
        background: rgba(255, 255, 255, .14);
        color: #fff;
    }

    .healthcare-mobile-pro-card a {
        background: #1687d9;
    }

    .healthcare-mobile-help-card {
        margin: 30px 0 24px;
        text-align: center;
    }

    .healthcare-mobile-help-card p {
        margin: 8px 0 14px;
    }

    .healthcare-mobile-help-card .btn {
        border-radius: 7px;
        font-size: 13px;
        font-weight: 800;
        min-height: 36px;
        padding: 8px 14px;
    }

    .healthcare-home-shell .healthcare-home-band {
        background: #062845;
        border: 1px solid #062845;
        border-radius: 8px;
        color: #fff;
        margin: 18px 12px 0;
        padding: 26px 22px;
        text-align: center;
    }

    .healthcare-home-shell .healthcare-home-band .container {
        padding: 0;
        width: 100%;
    }

    .healthcare-home-band-inner {
        display: block;
    }

    .healthcare-home-shell .healthcare-home-band h2,
    .healthcare-home-shell .healthcare-home-band p {
        color: #fff;
    }

    .healthcare-home-shell .healthcare-home-band h2 {
        font-size: 20px;
        line-height: 1.25;
        margin: 0;
    }

    .healthcare-home-shell .healthcare-home-band p {
        font-size: 13px;
        line-height: 1.55;
        margin: 12px 0 18px;
    }

    .healthcare-home-shell .healthcare-home-band .healthcare-home-kicker {
        display: none;
    }

    .healthcare-home-shell .healthcare-home-band-actions {
        display: grid;
        gap: 8px;
        justify-content: stretch;
    }

    .healthcare-home-shell .healthcare-home-band-actions .btn {
        align-items: center;
        display: inline-flex;
        justify-content: center;
        min-height: 40px;
        width: 100%;
    }

    .healthcare-home-shell .healthcare-mobile-apps {
        background: #fff;
        padding: 0 0 26px;
    }

    .healthcare-home-shell .healthcare-home-final {
        background: #fff;
        padding: 0 0 26px;
    }

    .healthcare-disclaimer--mobile {
        margin-top: 18px;
    }

    .healthcare-mobile-footer {
        align-items: center;
        border-top: 1px solid #e5edf4;
        display: grid;
        gap: 6px;
        justify-items: center;
        margin-top: 24px;
        padding: 20px 0 8px;
        text-align: center;
    }

    .healthcare-mobile-footer strong {
        color: #117ed0;
        font-size: 20px;
        font-weight: 800;
    }

    .healthcare-home-mobile-bottom-nav {
        align-items: stretch;
        background: rgba(255, 255, 255, .98);
        border-top: 1px solid #d7e5ef;
        bottom: 0;
        box-shadow: 0 -8px 24px rgba(7, 52, 94, .10);
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        left: 0;
        min-height: 58px;
        padding: 4px 2px 5px;
        position: fixed;
        right: 0;
        z-index: 50;
    }

    .healthcare-home-mobile-bottom-nav a {
        align-items: center;
        color: #243b53;
        display: flex;
        flex-direction: column;
        font-size: 10px;
        font-weight: 700;
        gap: 3px;
        justify-content: center;
        min-width: 0;
        text-decoration: none;
    }

    .healthcare-home-mobile-bottom-nav .healthcare-mobile-nav-icon {
        align-items: center;
        color: inherit;
        display: inline-flex;
        height: 20px;
        justify-content: center;
        width: 20px;
    }

    .healthcare-home-mobile-bottom-nav .healthcare-mobile-nav-icon svg {
        display: block;
        fill: none;
        height: 20px;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2.2;
        width: 20px;
    }

    .healthcare-home-mobile-bottom-nav a.active {
        color: #117ed0;
    }

    .healthcare-home-mobile-bottom-nav span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 100%;
        text-align: center;
    }
}

/* Clinician workspace layout guard */
body.hp-clinician-body {
    max-width: none;
    overflow-x: hidden;
    width: 100%;
}

body.hp-clinician-body #wrapper,
body.hp-clinician-body #content,
body.hp-clinician-body .content,
body.hp-clinician-body .content-wrapper,
body.hp-clinician-body #content > .container,
body.hp-clinician-body #content > .container > .row {
    margin: 0;
    max-width: none;
    min-width: 0;
    overflow-x: hidden;
    padding: 0;
    width: 100%;
}

.hp-clinician-shell,
.hp-clinician-workspace,
.hp-clinician-main,
.hp-clinician-agenda-app,
.hp-clinician-agenda-shell,
.hp-clinician-agenda-panel {
    max-width: none;
    min-width: 0;
}

.hp-clinician-shell {
    width: 100%;
}

.hp-clinician-workspace,
.hp-clinician-main {
    width: 100%;
}

.hp-clinician-agenda-panel {
    overflow-x: auto;
}

@media (min-width: 1024px) {
    .hp-clinician-main {
        padding-left: 18px;
        padding-right: 18px;
    }
}

.hp-clinician-mobile-nav {
    display: none;
}

.hp-clinician-mobile-fab {
    display: none;
}

.hp-clinician-mobile-brand {
    display: none;
}

.hp-clinician-mobile-search-toggle,
.hp-clinician-mobile-context-switcher {
    display: none;
}

@media (max-width: 760px) {
    body.hp-clinician-body {
        background: #eaf4f9;
        padding-bottom: calc(92px + env(safe-area-inset-bottom));
    }

    .hp-clinician-shell {
        display: block;
        min-height: 100vh;
        padding-bottom: calc(96px + env(safe-area-inset-bottom));
    }

    .hp-clinician-sidebar {
        display: none;
    }

    .hp-clinician-workspace {
        display: block;
        min-width: 0;
        width: 100%;
    }

    .hp-clinician-impersonation-banner {
        align-items: flex-start;
        display: grid;
        gap: 8px;
        line-height: 1.35;
        padding: 14px 16px;
    }

    .hp-clinician-impersonation-banner a {
        min-height: 34px;
    }

    .hp-clinician-topbar {
        border-radius: 0;
        display: grid;
        gap: 8px;
        grid-template-columns: minmax(0, 1fr) auto;
        min-height: 0;
        padding: 7px 10px;
        position: sticky;
        top: 0;
        z-index: 1040;
    }

    .hp-clinician-mobile-brand,
    .hp-clinician-mobile-brand:hover,
    .hp-clinician-mobile-brand:focus {
        align-items: center;
        color: #fff;
        display: inline-flex;
        gap: 8px;
        grid-column: 1;
        min-height: 42px;
        min-width: 0;
        order: 1;
        text-decoration: none;
    }

    .hp-clinician-mobile-brand .hp-brand-logo {
        color: #fff;
        flex: 0 1 auto;
        max-width: min(126px, 42vw);
        width: 126px;
    }

    .hp-clinician-mobile-brand .hp-brand-logo svg {
        display: block;
        width: 100%;
    }

    .hp-clinician-mobile-brand > span:not(.hp-brand-logo) {
        background: rgba(255, 255, 255, .14);
        border: 1px solid rgba(255, 255, 255, .22);
        border-radius: 999px;
        color: #fff;
        flex: 0 0 auto;
        font-size: 11px;
        font-weight: 900;
        line-height: 1;
        padding: 5px 7px;
    }

    .hp-clinician-search {
        background: #0b466c;
        border-radius: 11px;
        box-shadow: 0 16px 34px rgba(8, 35, 63, .22);
        display: none;
        left: 10px;
        max-width: none;
        min-height: 48px;
        position: absolute;
        right: 10px;
        top: calc(100% + 6px);
        width: auto;
        z-index: 30;
    }

    .hp-clinician-search.is-mobile-open {
        display: flex;
    }

    .hp-clinician-top-actions {
        grid-column: 2;
        justify-content: flex-end;
        order: 1;
        gap: 5px;
        width: auto;
    }

    .hp-clinician-mobile-search-toggle {
        display: inline-flex;
    }

    .hp-clinician-support-button,
    .hp-clinician-tool-button,
    .hp-clinician-menu-button {
        display: none;
    }

    .hp-clinician-icon-button,
    .hp-clinician-user span {
        height: 40px;
        width: 40px;
    }

    .hp-clinician-user {
        gap: 4px;
        max-width: none;
    }

    .hp-clinician-user strong {
        display: none;
    }

    .hp-clinician-user > i {
        display: none;
    }

    .hp-clinician-context-switcher--desktop {
        display: none;
    }

    .hp-clinician-mobile-context-switcher {
        border-bottom: 1px solid #dce8f0;
        display: grid;
        gap: 5px;
        margin: 2px 0 6px;
        padding: 4px 6px 12px;
    }

    .hp-clinician-mobile-context-switcher label {
        color: #607a91;
        font-size: 10px;
        font-weight: 850;
        margin: 0;
        text-transform: uppercase;
    }

    .hp-clinician-mobile-context-switcher select {
        background: #f7fbfe;
        border: 1px solid #c8dce9;
        border-radius: 8px;
        color: #0b2b4c;
        min-height: 40px;
        padding: 0 9px;
        width: 100%;
    }

    .hp-clinician-popover {
        max-width: calc(100vw - 24px);
        min-width: min(280px, calc(100vw - 24px));
        right: 0;
    }

    .hp-clinician-main {
        padding: 12px 10px calc(104px + env(safe-area-inset-bottom));
    }

    .hp-clinician-agenda-app {
        gap: 12px;
    }

    .hp-clinician-schedule-toolbar {
        border-radius: 14px;
        display: grid;
        gap: 16px;
        padding: 16px;
    }

    .hp-clinician-schedule-nav {
        align-items: stretch;
        display: grid;
        gap: 10px;
        grid-template-columns: minmax(0, 1fr) 48px 48px;
    }

    .hp-clinician-today-button {
        border-radius: 10px;
        justify-content: flex-start;
        min-height: 48px;
        padding: 0 14px;
        width: 100%;
    }

    .hp-clinician-round-button {
        border-radius: 10px;
        min-height: 48px;
        width: 48px;
    }

    .hp-clinician-schedule-nav > div {
        grid-column: 1 / -1;
        order: 4;
    }

    .hp-clinician-schedule-nav h1 {
        font-size: 20px;
        line-height: 1.2;
        overflow-wrap: anywhere;
    }

    .hp-clinician-toolbar-actions {
        display: grid;
        gap: 10px;
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-toggle {
        justify-self: stretch;
    }

    .hp-clinician-toggle button {
        flex: 1 1 0;
        min-height: 42px;
    }

    .hp-clinician-agenda-shell {
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-left-panel {
        display: none;
    }

    .hp-clinician-agenda-panel {
        border-radius: 14px;
        overflow: hidden;
        width: 100%;
    }

    .hp-clinician-state {
        align-items: flex-start;
        line-height: 1.35;
        padding: 12px 14px;
    }

    .hp-clinician-calendar-scroll {
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }

    .hp-clinician-calendar-board {
        min-width: 690px;
    }

    .hp-clinician-calendar-head-row,
    .hp-clinician-calendar-body {
        grid-template-columns: 78px repeat(7, minmax(122px, 1fr));
    }

    .hp-clinician-calendar-board[data-view="day"] {
        min-width: 100%;
    }

    .hp-clinician-calendar-board[data-view="day"] .hp-clinician-calendar-head-row,
    .hp-clinician-calendar-board[data-view="day"] .hp-clinician-calendar-body {
        grid-template-columns: 78px minmax(248px, 1fr);
    }

    .hp-clinician-grid-corner,
    .hp-clinician-time-axis {
        min-width: 78px;
    }

    .hp-clinician-time-axis span {
        font-size: 13px;
        padding-left: 8px;
        padding-right: 10px;
        right: 0;
        white-space: nowrap;
    }

    .hp-clinician-day-head {
        min-width: 0;
        padding: 12px 10px;
    }

    .hp-clinician-day-head strong,
    .hp-clinician-day-head span {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .hp-clinician-content-section {
        border-radius: 14px;
        gap: 16px;
        padding: 18px;
    }

    .hp-clinician-section-head h1 {
        font-size: 28px;
        line-height: 1.12;
    }

    .hp-clinician-record-card,
    .hp-clinician-message-list article {
        border-radius: 12px;
    }

    .hp-clinician-settings-list label {
        align-items: center;
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(0, 1fr) auto;
        min-height: 58px;
        padding: 14px;
    }

    .hp-clinician-settings-list label span {
        min-width: 0;
    }

    .hp-clinician-mobile-nav {
        align-items: center;
        background: rgba(255, 255, 255, .96);
        border: 1px solid rgba(142, 168, 187, .34);
        border-radius: 22px;
        bottom: calc(10px + env(safe-area-inset-bottom));
        box-shadow: 0 18px 42px rgba(8, 35, 63, .18);
        display: grid;
        gap: 4px;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        left: 10px;
        padding: 8px;
        position: fixed;
        right: 10px;
        z-index: 1050;
    }

    .hp-clinician-mobile-nav a,
    .hp-clinician-mobile-nav a:hover,
    .hp-clinician-mobile-nav a:focus {
        align-items: center;
        border-radius: 16px;
        color: #61778b;
        display: grid;
        font-size: 11px;
        font-weight: 850;
        gap: 4px;
        justify-items: center;
        line-height: 1.1;
        min-height: 56px;
        padding: 7px 4px;
        text-align: center;
        text-decoration: none;
    }

    .hp-clinician-mobile-nav a.active {
        background: #073353;
        color: #fff;
    }

    .hp-clinician-mobile-nav i {
        font-size: 20px;
        line-height: 1;
    }

    .hp-clinician-mobile-nav span {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .hp-clinician-mobile-fab {
        align-items: center;
        background: #117ed0;
        border: 0;
        border-radius: 18px;
        bottom: calc(90px + env(safe-area-inset-bottom));
        box-shadow: 0 16px 34px rgba(17, 126, 208, .28);
        color: #fff;
        display: inline-flex;
        font-size: 20px;
        height: 56px;
        justify-content: center;
        position: fixed;
        right: 20px;
        width: 56px;
        z-index: 1051;
    }
}

@media (max-width: 380px) {
    .hp-clinician-mobile-brand > span:not(.hp-brand-logo) {
        display: none;
    }
}

/* Healthcare professional pipeline admin workspace */
.hp-pipeline-header {
    align-items: flex-start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.hp-pipeline-header p {
    color: #5d6b7a;
    margin: 4px 0 0;
    max-width: 760px;
}

.hp-pipeline-header-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.hp-pipeline-metrics {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(5, minmax(120px, 1fr));
    margin-bottom: 16px;
}

.hp-pipeline-metric {
    background: #fff;
    border: 1px solid #dbe4eb;
    border-radius: 8px;
    padding: 12px 14px;
}

.hp-pipeline-metric span {
    color: #6b7787;
    display: block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
}

.hp-pipeline-metric strong {
    color: #172b3a;
    display: block;
    font-size: 24px;
    line-height: 1.1;
    margin-top: 6px;
}

.hp-pipeline-filters .panel-body {
    overflow: visible !important;
}

.hp-pipeline-filter-submit {
    padding-top: 24px;
}

.hp-pipeline-secondary-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hp-pipeline-board {
    display: grid;
    gap: 12px;
    grid-auto-columns: minmax(280px, 320px);
    grid-auto-flow: column;
    margin-bottom: 24px;
    overflow-x: auto;
    padding-bottom: 10px;
    -webkit-overflow-scrolling: touch;
}

.hp-pipeline-column {
    background: #f7f9fb;
    border: 1px solid #dbe4eb;
    border-top: 4px solid #8aa1b4;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    min-height: 420px;
}

.hp-pipeline-column-warning {
    border-top-color: #d99418;
}

.hp-pipeline-column-info {
    border-top-color: #117ed0;
}

.hp-pipeline-column-success {
    border-top-color: #1f8f5f;
}

.hp-pipeline-column-danger {
    border-top-color: #c94747;
}

.hp-pipeline-column-muted {
    border-top-color: #8c98a7;
}

.hp-pipeline-column > header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 12px 12px 8px;
}

.hp-pipeline-column > header > div {
    align-items: center;
    color: #172b3a;
    display: flex;
    gap: 8px;
}

.hp-pipeline-column > header span {
    background: #fff;
    border: 1px solid #dbe4eb;
    border-radius: 999px;
    color: #172b3a;
    font-weight: 800;
    min-width: 30px;
    padding: 3px 8px;
    text-align: center;
}

.hp-pipeline-column > p {
    color: #607083;
    font-size: 12px;
    line-height: 1.45;
    margin: 0;
    min-height: 52px;
    padding: 0 12px 10px;
}

.hp-pipeline-column-items {
    display: grid;
    gap: 10px;
    padding: 0 10px 12px;
}

.hp-pipeline-card {
    background: #fff;
    border: 1px solid #dbe4eb;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(8, 35, 63, .06);
    display: grid;
    gap: 10px;
    padding: 12px;
}

.hp-pipeline-card-title {
    display: grid;
    gap: 6px;
}

.hp-pipeline-card-title a {
    color: #172b3a;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.hp-pipeline-card-meta {
    display: grid;
    gap: 5px;
}

.hp-pipeline-card-meta span {
    color: #5d6b7a;
    font-size: 12px;
    line-height: 1.35;
}

.hp-pipeline-card-details {
    display: grid;
    gap: 8px;
    margin: 0;
}

.hp-pipeline-card-details div {
    display: grid;
    gap: 2px;
}

.hp-pipeline-card-details dt,
.hp-pipeline-next-step span {
    color: #6b7787;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
}

.hp-pipeline-card-details dd {
    color: #172b3a;
    font-size: 13px;
    line-height: 1.35;
    margin: 0;
    overflow-wrap: anywhere;
}

.hp-pipeline-next-step {
    background: #f4f7fa;
    border: 1px solid #e2e8ef;
    border-radius: 7px;
    display: grid;
    gap: 4px;
    padding: 9px;
}

.hp-pipeline-next-step strong {
    color: #172b3a;
    font-size: 13px;
    line-height: 1.35;
}

.hp-pipeline-status-form {
    align-items: center;
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.hp-pipeline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.hp-pipeline-empty {
    border: 1px dashed #c9d4df;
    border-radius: 8px;
    color: #6b7787;
    font-size: 13px;
    padding: 14px;
    text-align: center;
}

.hp-pipeline-table .hp-pipeline-status-form {
    margin-top: 8px;
    max-width: 260px;
}

.hp-pipeline-bulk-toolbar {
    align-items: center;
    background: #f7fbff;
    border: 1px solid #d7e5f2;
    border-radius: 8px;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 12px;
    padding: 10px 12px;
}

.hp-pipeline-bulk-toolbar strong {
    color: #172b3a;
    display: block;
    font-size: 13px;
}

.hp-pipeline-bulk-controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.hp-pipeline-bulk-controls .form-control {
    min-width: 180px;
}

.hp-pipeline-select-col {
    text-align: center;
    vertical-align: middle !important;
    width: 44px;
}

@media (max-width: 1199px) {
    .hp-pipeline-metrics {
        grid-template-columns: repeat(3, minmax(120px, 1fr));
    }
}

@media (max-width: 767px) {
    .hp-pipeline-header {
        display: grid;
    }

    .hp-pipeline-header-actions,
    .hp-pipeline-header-actions .btn-group {
        display: grid;
        width: 100%;
    }

    .hp-pipeline-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hp-pipeline-filter-submit {
        padding-top: 0;
    }

    .hp-pipeline-board {
        grid-auto-columns: minmax(270px, 86vw);
        margin-left: -12px;
        margin-right: -12px;
        padding-left: 12px;
        padding-right: 12px;
    }

    .hp-pipeline-status-form {
        grid-template-columns: 1fr;
    }

    .hp-pipeline-bulk-toolbar,
    .hp-pipeline-bulk-controls {
        display: grid;
        justify-content: stretch;
    }

    .hp-pipeline-bulk-controls .form-control,
    .hp-pipeline-bulk-controls .btn {
        width: 100%;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel .panel-body {
        overflow-x: visible;
        padding: 12px;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel .table-responsive {
        border: 0;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel .table {
        display: block;
        min-width: 0;
        width: 100%;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel thead {
        display: none;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody {
        display: grid;
        gap: 12px;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody > tr {
        background: #fff;
        border: 1px solid #dbe4eb;
        border-radius: 10px;
        display: grid;
        padding: 12px;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody > tr > td {
        border: 0;
        border-bottom: 1px solid #edf2f6;
        display: grid;
        gap: 8px;
        grid-template-columns: minmax(96px, 34%) minmax(0, 1fr);
        padding: 9px 0 !important;
        white-space: normal;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody > tr > td.hp-pipeline-select-col {
        text-align: left;
        width: 100%;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody > tr > td:last-child {
        border-bottom: 0;
    }

    body.admin.healthcare_portal.business_leads #wrapper .content > .hp-pipeline-list-panel tbody > tr > td::before {
        color: #6b7787;
        content: attr(data-label);
        font-size: 12px;
        font-weight: 800;
        line-height: 1.25;
    }
}

/* Healthcare admin mobile workspace */
body.admin #wrapper .content > .tw-mb-4:first-child {
    margin-bottom: 18px !important;
}

body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group > .btn {
    border-radius: 8px !important;
    font-weight: 700;
    line-height: 1.2;
    margin-left: 0;
    white-space: nowrap;
}

body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group > .btn:hover,
body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group > .btn:focus {
    background: #eef6fb;
    border-color: #bfd4e2;
    color: #12324a;
}

body.admin #wrapper .content > .panel_s .panel-body {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

body.admin #wrapper .content > .panel_s .panel-body > .table {
    margin-bottom: 0;
    min-width: 760px;
}

body.admin #wrapper .content > .panel_s .table > thead > tr > th,
body.admin #wrapper .content > .panel_s .table > tbody > tr > td {
    vertical-align: middle;
}

@media (max-width: 767px) {
    body.admin #wrapper .content {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.admin #wrapper .content > .tw-mb-4:first-child {
        margin-left: -12px;
        margin-right: -12px;
        overflow-x: auto;
        padding: 0 12px 6px;
        -webkit-overflow-scrolling: touch;
    }

    body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group {
        display: grid;
        grid-auto-columns: max-content;
        grid-auto-flow: column;
        grid-template-rows: repeat(2, auto);
        min-width: max-content;
    }

    body.admin #wrapper .content > .tw-mb-4:first-child > .btn-group > .btn {
        align-items: center;
        display: inline-flex;
        font-size: 13px;
        min-height: 38px;
        padding: 8px 12px;
    }

    body.admin #wrapper .content > .tw-mb-2 .btn-primary,
    body.admin #wrapper .content > .tw-mb-2 > .btn {
        align-items: center;
        border-radius: 9px;
        display: inline-flex;
        font-size: 15px;
        font-weight: 800;
        justify-content: center;
        min-height: 44px;
        width: 100%;
    }

    body.admin #wrapper .content > .panel_s {
        border-radius: 10px;
        margin-left: 0;
        margin-right: 0;
        overflow: hidden;
    }

    body.admin #wrapper .content > .panel_s .panel-body {
        padding: 0;
    }

    body.admin #wrapper .content > .panel_s .table {
        font-size: 14px;
    }

    body.admin #wrapper .content > .panel_s .table > thead > tr > th,
    body.admin #wrapper .content > .panel_s .table > tbody > tr > td {
        padding: 12px 14px;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .panel-body {
        overflow-x: visible;
        padding: 12px;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .panel-body > .table {
        display: block;
        min-width: 0;
        width: 100%;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > thead {
        display: none;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > tbody {
        display: grid;
        gap: 12px;
        width: 100%;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > tbody > tr {
        background: #fff;
        border: 1px solid #dbe4eb;
        border-radius: 10px;
        box-shadow: 0 8px 20px rgba(8, 35, 63, .06);
        display: grid;
        gap: 0;
        padding: 12px;
        width: 100%;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > tbody > tr > td {
        align-items: center;
        border: 0;
        border-bottom: 1px solid #edf2f6;
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(96px, 34%) minmax(0, 1fr);
        min-height: 42px;
        padding: 9px 0 !important;
        white-space: normal;
        width: 100%;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > tbody > tr > td:last-child {
        border-bottom: 0;
        padding-bottom: 0 !important;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table > tbody > tr > td::before {
        color: #6b7787;
        content: attr(data-label);
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 0;
        line-height: 1.25;
    }

    body.admin.healthcare_portal.practitioners #wrapper .content > .panel_s .table .btn-icon {
        margin-bottom: 4px;
        margin-right: 4px;
    }
}

/* Search results page: responsive, directory-first discovery surface. */
body.healthcare-search-body {
    background: #eef5fb;
    overflow-x: hidden;
}

body.healthcare-search-body #wrapper,
body.healthcare-search-body #content {
    background: #eef5fb;
    margin: 0;
    overflow-x: hidden;
    padding: 0;
}

body.healthcare-search-body #content > .container {
    margin: 0;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.healthcare-search-body #content > .container > .row {
    margin-left: 0;
    margin-right: 0;
}

body.healthcare-search-body #content > .container > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

body.healthcare-search-body .healthcare-search-shell {
    background: #eef5fb;
    margin: 0;
    max-width: none;
    min-height: 100vh;
    width: 100%;
}

/* Professional registration wizard: acquisition stays short; practice setup follows after sign-in. */
.hp-professional-register-panel {
    display: grid;
    gap: 16px;
}

.hp-professional-register-form.is-enhanced .hp-professional-register-panel:not(.is-active) {
    display: none;
}

.hp-professional-register-panel-heading {
    align-items: flex-start;
    display: flex;
    gap: 12px;
}

.hp-professional-register-panel-heading > span {
    align-items: center;
    background: #dff5f0;
    border-radius: 50%;
    color: #087d70;
    display: inline-flex;
    flex: 0 0 32px;
    font-size: 13px;
    font-weight: 800;
    height: 32px;
    justify-content: center;
}

.hp-professional-register-panel-heading h2 {
    color: #0d2d46;
    font-size: 20px;
    line-height: 1.25;
    margin: 0 0 3px;
}

.hp-professional-register-panel-heading p {
    color: #60788a;
    font-size: 13px;
    line-height: 1.45;
    margin: 0;
}

.hp-professional-register-steps span.is-active {
    color: #0d2d46;
}

.hp-professional-register-steps span.is-active b {
    background: #0b7f79;
    color: #fff;
}

.hp-professional-register-steps span.is-complete b::before {
    content: "\f00c";
    font-family: FontAwesome;
}

.hp-professional-register-steps span.is-complete b {
    font-size: 0;
}

.hp-professional-register-steps span.is-complete b::before {
    font-size: 11px;
}

.hp-professional-register-draft-notice,
.hp-professional-register-deferred {
    align-items: flex-start;
    background: #f2f8fb;
    border: 1px solid #d2e3ec;
    border-radius: 7px;
    color: #34566d;
    display: flex;
    font-size: 13px;
    gap: 9px;
    line-height: 1.45;
    margin-bottom: 16px;
    padding: 11px 12px;
}

.hp-professional-register-deferred {
    margin: 0;
}

.hp-professional-register-draft-notice i,
.hp-professional-register-deferred i {
    color: #087d70;
    margin-top: 2px;
}

.hp-professional-register-password-control {
    display: block;
    position: relative;
}

.hp-professional-register-password-control input {
    padding-right: 48px;
    width: 100%;
}

.hp-professional-register-password-control button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #486477;
    cursor: pointer;
    display: flex;
    height: 40px;
    justify-content: center;
    position: absolute;
    right: 4px;
    top: 4px;
    width: 40px;
}

.hp-professional-register-field-help,
.hp-professional-register-draft-status {
    color: #60788a;
    font-size: 12px;
    font-style: normal;
    line-height: 1.45;
}

.hp-professional-register-draft-status {
    margin: 0;
    min-height: 18px;
    padding-left: 22px;
    position: relative;
}

.hp-professional-register-draft-status::before {
    color: #087d70;
    content: "\f023";
    font-family: FontAwesome;
    left: 2px;
    position: absolute;
    top: 0;
}

.hp-professional-register-draft-status.is-saving {
    opacity: .65;
}

.hp-professional-register-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.hp-professional-register-actions .hp-pro-primary {
    align-items: center;
    display: inline-flex;
    gap: 9px;
    justify-content: center;
    margin-left: auto;
    min-width: 190px;
    width: auto;
}

.hp-professional-register-back {
    align-items: center;
    background: #fff;
    border: 1px solid #b9cedc;
    border-radius: 6px;
    color: #173f5e;
    cursor: pointer;
    display: inline-flex;
    font-weight: 700;
    gap: 8px;
    min-height: 50px;
    padding: 0 18px;
}

.hp-professional-register-back:hover,
.hp-professional-register-back:focus-visible {
    background: #eef6fb;
    outline: 0;
}

.hp-guided-onboarding__section-heading {
    border-top: 1px solid #dce8ef;
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 4px;
    padding-top: 18px;
}

.hp-guided-onboarding__section-heading strong {
    color: #0d2d46;
    font-size: 15px;
}

.hp-guided-onboarding__section-heading small {
    color: #60788a;
    font-size: 12px;
    font-weight: 400;
}

@media (max-width: 600px) {
    .hp-professional-register-form input {
        font-size: 16px;
    }

    .hp-professional-register-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .hp-professional-register-actions .hp-pro-primary,
    .hp-professional-register-back {
        margin: 0;
        width: 100%;
    }
}

body.healthcare-search-body #wrapper,
body.healthcare-search-body #content,
body.healthcare-search-body .healthcare-search-shell {
    overflow-x: clip;
    overflow-y: visible;
}

body.healthcare-search-body .healthcare-search-topbar {
    background: #1685d2;
    padding: 12px 0 13px;
}

body.healthcare-search-body .healthcare-search-topbar .container,
body.healthcare-search-body .healthcare-search-filterbar .container,
body.healthcare-search-body .healthcare-search-main {
    margin-left: auto;
    margin-right: auto;
    max-width: 1120px;
    padding-left: 16px;
    padding-right: 16px;
    width: 100%;
}

body.healthcare-search-body .healthcare-search-topbar .container {
    align-items: center;
    gap: 14px;
    grid-template-columns: minmax(170px, auto) minmax(0, 1fr) auto;
    min-height: 58px;
}

body.healthcare-search-body .healthcare-search-brand {
    color: #fff;
    font-size: 18px;
    min-width: 0;
}

body.healthcare-search-body .healthcare-search-brand-mark {
    background: #fff;
    color: #1685d2;
}

body.healthcare-search-body .healthcare-search-top-form {
    border: 2px solid rgba(255, 255, 255, .82);
    border-radius: 999px;
    box-shadow: none;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .82fr) 118px;
    justify-self: end;
    max-width: 650px;
    min-height: 48px;
    overflow: hidden;
}

body.healthcare-search-body .healthcare-search-top-form label {
    min-height: 48px;
    padding-left: 18px;
    padding-right: 12px;
}

body.healthcare-search-body .healthcare-search-top-form .healthcare-public-search-submit {
    background: #071f37;
    border: 0;
    border-radius: 0;
    min-height: 48px;
}

body.healthcare-search-body .healthcare-search-actions {
    gap: 10px;
    justify-self: end;
}

body.healthcare-search-body .healthcare-search-filterbar {
    background: #fff;
    border-bottom: 1px solid #d7e5f0;
    position: sticky;
    top: 0;
    z-index: 30;
}

body.healthcare-search-body .healthcare-search-filterbar .container {
    align-items: center;
    flex-wrap: nowrap;
    gap: 10px;
    min-height: 58px;
}

body.healthcare-search-body .healthcare-search-map-toggle {
    margin-left: auto;
}

body.healthcare-search-body .healthcare-search-main {
    padding-bottom: 42px;
    padding-top: 22px;
}

body.healthcare-search-body .healthcare-search-layout {
    align-items: start;
    display: grid;
    gap: 22px;
    grid-template-columns: minmax(0, 820px);
}

body.healthcare-search-body .healthcare-search-shell.map-open .healthcare-search-layout {
    grid-template-columns: minmax(0, 680px) minmax(310px, 390px);
}

@media (min-width: 1024px) {
    body.healthcare-search-body .healthcare-search-shell.map-open .healthcare-search-map-column {
        align-self: stretch;
    }
}

body.healthcare-search-body .healthcare-search-results-column {
    min-width: 0;
}

body.healthcare-search-body .healthcare-search-summary {
    margin-bottom: 14px;
}

body.healthcare-search-body .healthcare-search-summary p {
    color: #4b6378;
    font-size: 12px;
    letter-spacing: 0;
    margin-bottom: 2px;
}

body.healthcare-search-body .healthcare-search-summary h1 {
    font-size: 28px;
    letter-spacing: 0;
    line-height: 1.12;
    margin-bottom: 8px;
}

body.healthcare-search-body .healthcare-search-interpretation {
    align-items: center;
    background: var(--hp-public-blue-soft);
    border: 1px solid var(--hp-public-border);
    border-radius: 8px;
    color: var(--hp-public-navy);
    display: inline-flex;
    font-size: 13px;
    gap: 8px;
    letter-spacing: 0;
    margin: 8px 0 0;
    padding: 8px 11px;
}

body.healthcare-search-body .healthcare-search-interpretation i {
    color: var(--hp-public-blue);
}

body.healthcare-search-body .healthcare-disclaimer {
    border-left-width: 3px;
    margin-bottom: 14px;
    padding: 13px 16px;
}

body.healthcare-search-body .healthcare-result-card {
    background: #fff;
    border: 1px solid #d6e5ef;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(8, 35, 63, .03);
    contain-intrinsic-size: 168px;
    content-visibility: auto;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) 248px;
    margin-bottom: 16px;
    min-height: 154px;
    padding: 16px;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

body.healthcare-search-body .healthcare-result-card:hover,
body.healthcare-search-body .healthcare-result-card:focus-within {
    border-color: #9ec8e7;
    box-shadow: 0 10px 24px rgba(8, 35, 63, .08);
}

body.healthcare-search-body .healthcare-result-card.is-highlighted {
    border-color: #1685d2;
    box-shadow: 0 16px 32px rgba(22, 133, 210, .18);
}

body.healthcare-search-body .healthcare-result-card.is-unverified-lead {
    background: #fffaf3;
    background: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 8%, #fff);
    border-color: var(--hp-unverified-accent, #f4c98a);
    border-style: solid;
    box-shadow: inset 2px 0 0 var(--hp-unverified-accent, #f4c98a), 0 1px 2px rgba(8, 35, 63, .03);
}

body.healthcare-search-body .healthcare-result-card.is-admin-hidden {
    background: #f1f3f5;
    border-color: #9aa6b2;
    box-shadow: inset 4px 0 0 #566575, 0 1px 2px rgba(15, 23, 42, .06);
    color: #465362;
    padding-top: 12px;
}

body.healthcare-search-body .healthcare-result-card.is-admin-hidden:hover,
body.healthcare-search-body .healthcare-result-card.is-admin-hidden:focus-within {
    border-color: #64748b;
    box-shadow: inset 4px 0 0 #475569, 0 10px 24px rgba(15, 23, 42, .10);
}

body.healthcare-search-body .healthcare-result-admin-hidden-notice {
    align-items: center;
    border-bottom: 1px solid #cbd2d9;
    display: flex;
    gap: 10px;
    grid-column: 1 / -1;
    margin: 0 0 2px;
    padding: 0 2px 10px;
}

body.healthcare-search-body .healthcare-result-admin-hidden-notice > span {
    align-items: center;
    background: #465362;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 6px;
    letter-spacing: .04em;
    padding: 5px 9px;
    text-transform: uppercase;
}

body.healthcare-search-body .healthcare-result-admin-hidden-notice small,
body.healthcare-search-body .healthcare-result-admin-hidden-action {
    color: #566575;
    font-size: 12px;
    font-weight: 650;
}

body.healthcare-search-body .healthcare-result-admin-hidden-action {
    align-items: center;
    align-self: center;
    background: #e2e6ea;
    border: 1px solid #c7cfd7;
    border-radius: 8px;
    display: flex;
    gap: 9px;
    grid-column: 2;
    min-height: 54px;
    padding: 12px;
}

body.healthcare-search-body .healthcare-result-card.is-admin-hidden .healthcare-result-avatar,
body.healthcare-search-body .healthcare-result-card.is-admin-hidden .healthcare-result-tags span {
    filter: grayscale(1);
}

body.healthcare-search-body .healthcare-result-card.is-map-selected {
    border-color: #1685d2;
    border-width: 2px;
    box-shadow: 0 16px 34px rgba(22, 133, 210, .20);
}

body.healthcare-search-body .healthcare-result-card-main {
    gap: 14px;
    grid-template-columns: 52px minmax(0, 1fr);
}

body.healthcare-search-body .healthcare-result-card > .healthcare-result-availability {
    grid-column: 2;
    grid-row: 1 / span 2;
}

body.healthcare-search-body .healthcare-result-name-row {
    align-items: center;
    display: flex;
    gap: 6px;
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-name-row .healthcare-result-name {
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-name-row .healthcare-result-admin-edit--icon {
    align-items: center;
    background: #eef8fc;
    border: 0;
    border-radius: 50%;
    color: #0a679f;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 32px;
    font-size: 13px;
    height: 32px;
    justify-content: center;
    padding: 0;
    width: 32px;
}

body.healthcare-search-body .healthcare-result-name-row .healthcare-result-admin-edit--icon:hover,
body.healthcare-search-body .healthcare-result-name-row .healthcare-result-admin-edit--icon:focus-visible {
    background: #dceff8;
    color: #075682;
    outline: 2px solid #1685d2;
    outline-offset: 2px;
}

body.healthcare-search-body .healthcare-result-avatar {
    align-items: center;
    background: #eaf6f4;
    color: #087f74;
    display: flex;
    font-size: 14px;
    height: 52px;
    justify-content: center;
    width: 52px;
}

body.healthcare-search-body .healthcare-result-avatar .fa {
    font-size: 21px;
}

body.healthcare-search-body .healthcare-result-name {
    color: #0875c9;
    font-size: 17px;
    line-height: 1.22;
}

body.healthcare-search-body .healthcare-result-identity > p {
    color: #455d73;
    font-size: 14px;
    margin-bottom: 6px;
}

body.healthcare-search-body .healthcare-result-tags {
    gap: 6px;
    margin-bottom: 8px;
}

body.healthcare-search-body .healthcare-result-tags span {
    background: #edf6fd;
    color: #16405e;
    font-size: 12px;
    padding: 5px 9px;
}

body.healthcare-search-body .healthcare-result-meta,
body.healthcare-search-body .healthcare-result-badges {
    gap: 5px;
}

body.healthcare-search-body .healthcare-result-meta span,
body.healthcare-search-body .healthcare-result-badges span {
    font-size: 12px;
    line-height: 1.35;
}

body.healthcare-search-body .healthcare-result-unverified-badge {
    color: #704515;
    color: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 55%, #3d2a14);
}

body.healthcare-search-body .healthcare-result-availability {
    border-left: 1px solid #e1ebf3;
    padding-left: 16px;
}

body.healthcare-search-body .healthcare-result-availability-head {
    margin-bottom: 10px;
}

body.healthcare-search-body .healthcare-result-availability-head > span {
    color: #526579;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

body.healthcare-search-body .healthcare-result-contact-list {
    gap: 8px;
}

body.healthcare-search-body .healthcare-result-contact-list a,
body.healthcare-search-body .healthcare-result-contact-list button,
body.healthcare-search-body .healthcare-result-no-slots {
    background: #f5f9fc;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.35;
    padding: 9px 10px;
}

body.healthcare-search-body .healthcare-result-actions {
    gap: 8px;
    margin-top: 12px;
}

body.healthcare-search-body .healthcare-result-actions .btn {
    border-radius: 6px;
    font-size: 13px;
    min-height: 36px;
    padding: 8px 12px;
}

body.healthcare-search-body .healthcare-phone-picker {
    position: relative;
    width: 100%;
}

body.healthcare-search-body .healthcare-phone-picker summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 7px;
    justify-content: center;
    list-style: none;
    width: 100%;
}

body.healthcare-search-body .healthcare-phone-picker summary::-webkit-details-marker {
    display: none;
}

body.healthcare-search-body .healthcare-phone-picker > div {
    background: #fff;
    border: 1px solid #cbdbe7;
    border-radius: 7px;
    box-shadow: 0 12px 28px rgba(8, 35, 63, .15);
    display: grid;
    gap: 4px;
    margin-top: 6px;
    padding: 6px;
    position: absolute;
    right: 0;
    width: 100%;
    z-index: 10;
}

body.healthcare-search-body .healthcare-phone-picker > div a {
    align-items: center;
    border-radius: 5px;
    color: #0b4f7c;
    display: flex;
    gap: 8px;
    min-height: 38px;
    padding: 7px 9px;
}

body.healthcare-search-body .healthcare-phone-picker > div a:hover,
body.healthcare-search-body .healthcare-phone-picker > div a:focus {
    background: #edf6fd;
    text-decoration: none;
}

.healthcare-search-back,
.healthcare-search-summary-map {
    display: none;
}

body.healthcare-search-body .healthcare-search-map-panel {
    border: 1px solid #d6e5ef;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(8, 35, 63, .08);
    overflow: hidden;
    top: max(76px, calc((100vh - min(68vh, 620px) - 50px) / 2));
}

body.healthcare-search-body .healthcare-search-map-canvas {
    background: #e7f1f8;
    height: min(68vh, 620px);
    min-height: 440px;
}

body.healthcare-search-body .healthcare-search-load-more {
    background: #fff;
    border: 1px solid #d6e5ef;
    border-radius: 8px;
    margin-top: 14px;
    padding: 18px;
}

body.healthcare-search-body .healthcare-search-load-more .btn {
    min-width: 180px;
}

@media (max-width: 1023px) {
    body.healthcare-search-body .healthcare-search-shell.map-open:not(.map-mobile-open) .healthcare-search-map-column {
        display: none;
    }

    body.healthcare-search-body .healthcare-search-topbar .container {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        grid-column: 1 / -1;
        grid-row: 2;
        justify-self: stretch;
        max-width: none;
    }

    body.healthcare-search-body .healthcare-search-actions {
        justify-self: end;
    }

    body.healthcare-search-body .healthcare-search-shell.map-open .healthcare-search-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    body.healthcare-search-body .healthcare-search-shell.map-open .healthcare-search-map-column {
        order: -1;
    }

    body.healthcare-search-body .healthcare-search-map-panel {
        position: relative;
        top: auto;
    }

    body.healthcare-search-body .healthcare-search-map-canvas {
        height: 330px;
        min-height: 330px;
    }
}

@media (max-width: 767px) {
    body.healthcare-search-body .healthcare-search-topbar {
        padding: 12px 0;
    }

    body.healthcare-search-body .healthcare-search-topbar .container,
    body.healthcare-search-body .healthcare-search-filterbar .container,
    body.healthcare-search-body .healthcare-search-main {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.healthcare-search-body .healthcare-search-topbar .container {
        display: grid;
        gap: 11px;
        grid-template-columns: 40px minmax(0, 1fr) 40px;
        min-height: 0;
        position: relative;
    }

    body.healthcare-search-body .healthcare-search-back {
        align-items: center;
        background: rgba(255, 255, 255, .12);
        border: 1px solid rgba(255, 255, 255, .35);
        border-radius: 50%;
        color: #fff;
        display: inline-flex;
        grid-column: 1;
        grid-row: 1;
        height: 36px;
        justify-content: center;
        padding: 0;
        width: 36px;
    }

    body.healthcare-search-body .healthcare-search-brand {
        font-size: 16px;
        grid-column: 2;
        grid-row: 1;
        justify-content: center;
    }

    body.healthcare-search-body .healthcare-search-actions {
        justify-content: space-between;
        justify-self: stretch;
        grid-column: 3;
        grid-row: 1;
        justify-content: flex-end;
        width: 100%;
    }

    body.healthcare-search-body .healthcare-search-actions a {
        font-size: 0;
    }

    body.healthcare-search-body .healthcare-search-actions a::before {
        content: '\f007';
        font-family: FontAwesome;
        font-size: 16px;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        border-radius: 12px;
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
        grid-column: 1 / -1;
        grid-row: 2;
    }

    body.healthcare-search-body .healthcare-search-top-form label {
        min-height: 46px;
    }

    body.healthcare-search-body .healthcare-search-top-form label + label {
        border-left: 0;
        border-top: 1px solid #e1ebf3;
    }

    body.healthcare-search-body .healthcare-search-top-form .healthcare-public-search-submit {
        min-height: 48px;
        width: 100%;
    }

    body.healthcare-search-body .healthcare-search-filterbar {
        position: relative;
        top: auto;
    }

    body.healthcare-search-body .healthcare-search-filterbar .container {
        flex-wrap: nowrap;
        gap: 6px;
        overflow-x: auto;
        padding-bottom: 7px;
        padding-top: 7px;
    }

    body.healthcare-search-body .healthcare-search-filterbar button {
        font-size: 11px;
        min-height: 34px;
        padding: 6px 9px;
        white-space: nowrap;
    }

    body.healthcare-search-body .healthcare-search-map-toggle {
        display: none;
    }

    body.healthcare-search-body .healthcare-search-main {
        padding-bottom: 30px;
        padding-top: 16px;
    }

    body.healthcare-search-body .healthcare-search-summary h1 {
        font-size: 22px;
        margin: 0;
    }

    body.healthcare-search-body .healthcare-search-summary-line {
        align-items: center;
        display: flex;
        gap: 12px;
        justify-content: space-between;
    }

    body.healthcare-search-body .healthcare-search-summary-map {
        align-items: center;
        background: #fff;
        border: 1px solid #b8d3e7;
        border-radius: 999px;
        color: #0a5f98;
        display: inline-flex;
        flex: 0 0 auto;
        font-size: 11px;
        font-weight: 700;
        gap: 6px;
        min-height: 34px;
        padding: 6px 10px;
    }

    body.healthcare-search-body .healthcare-search-query {
        gap: 7px;
    }

    body.healthcare-search-body .healthcare-result-card {
        contain-intrinsic-size: 300px;
        gap: 13px;
        grid-template-columns: minmax(0, 1fr);
        margin-bottom: 16px;
        min-height: 0;
        border-radius: 10px;
        padding: 13px;
    }

    body.healthcare-search-body .healthcare-result-card-main {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    body.healthcare-search-body .healthcare-result-avatar {
        height: 46px;
        width: 46px;
    }

    body.healthcare-search-body .healthcare-result-name {
        font-size: 16px;
    }

    body.healthcare-search-body .healthcare-result-availability {
        border-left: 0;
        border-top: 1px solid #e1ebf3;
        padding-left: 0;
        padding-top: 13px;
    }

    body.healthcare-search-body .healthcare-result-card > .healthcare-result-availability {
        grid-column: auto;
        grid-row: auto;
    }

    body.healthcare-search-body .healthcare-result-admin-hidden-action {
        grid-column: auto;
    }

    body.healthcare-search-body .healthcare-result-admin-hidden-notice {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    body.healthcare-search-body .healthcare-result-name-row .healthcare-result-admin-edit--icon {
        flex-basis: 40px;
        height: 40px;
        width: 40px;
    }

    body.healthcare-search-body .healthcare-result-actions {
        grid-template-columns: minmax(0, 1fr);
    }

    body.healthcare-search-body .healthcare-result-actions .btn {
        width: 100%;
    }

    body.healthcare-search-body .healthcare-search-map-panel {
        border-radius: 8px;
    }

    body.healthcare-search-body .healthcare-search-map-canvas {
        height: 280px;
        min-height: 280px;
    }
}

/* Public professional reporting and unverified-card help affordances. */
body.healthcare-search-body .healthcare-result-card {
    position: relative;
}

body.healthcare-search-body .healthcare-result-unverified-help {
    align-items: center;
    background: #fff4e5;
    background: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 18%, #fff);
    border: 1px solid var(--hp-unverified-accent, #f4c98a);
    border-radius: 999px;
    color: #704515;
    color: color-mix(in srgb, var(--hp-unverified-accent, #f4c98a) 60%, #3d2a14);
    cursor: help;
    display: inline-flex;
    font-size: 12px;
    height: 24px;
    justify-content: center;
    left: 12px;
    line-height: 1;
    position: absolute;
    top: 12px;
    width: 24px;
    z-index: 4;
}

body.healthcare-search-body .healthcare-result-unverified-help span {
    background: #0f2137;
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(15, 33, 55, .18);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    left: 0;
    line-height: 1.3;
    max-width: 220px;
    opacity: 0;
    padding: 8px 10px;
    pointer-events: none;
    position: absolute;
    top: 30px;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease;
    white-space: nowrap;
}

body.healthcare-search-body .healthcare-result-unverified-help:hover span,
body.healthcare-search-body .healthcare-result-unverified-help:focus span {
    opacity: 1;
    transform: translateY(0);
}

body.healthcare-search-body .healthcare-result-report {
    align-items: center;
    background: transparent;
    border: 0;
    color: #60758f;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 6px;
    justify-content: center;
    margin-top: 10px;
    padding: 4px 0;
    text-align: center;
    width: 100%;
}

body.healthcare-search-body .healthcare-result-report:hover,
body.healthcare-search-body .healthcare-result-report:focus {
    color: #0078d4;
    outline: none;
    text-decoration: underline;
}

@media (max-width: 767px) {
    body.hp-home-body .healthcare-home-shell {
        margin-left: -15px;
        margin-right: -15px;
        width: calc(100% + 30px);
    }

    body.hp-home-body .healthcare-home-nav .container {
        display: flex;
        justify-content: center;
    }

    body.hp-home-body .healthcare-home-brand {
        flex: 0 0 auto;
        margin-left: auto;
        margin-right: auto;
        width: auto;
    }

    body.hp-home-body .healthcare-mobile-pro-cta {
        display: flex;
        margin-left: auto;
        margin-right: auto;
        width: fit-content;
    }
}

.hp-report-dialog[hidden] {
    display: none !important;
}

.hp-report-dialog {
    bottom: 0;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 9999;
}

.hp-report-dialog__backdrop {
    background: rgba(15, 33, 55, .58);
    border: 0;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.hp-report-dialog__panel {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 24px 70px rgba(15, 33, 55, .28);
    left: 50%;
    max-height: calc(100vh - 40px);
    max-width: 560px;
    overflow: auto;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 32px);
}

.hp-report-dialog__head,
.hp-report-dialog__foot {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.hp-report-dialog__head {
    border-bottom: 1px solid #d9e4ef;
    padding: 20px 24px 16px;
}

.hp-report-dialog__head p {
    color: #007f73;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
    margin: 0 0 4px;
    text-transform: uppercase;
}

.hp-report-dialog__head h2 {
    color: #06213d;
    font-size: 22px;
    font-weight: 800;
    margin: 0;
}

.hp-report-dialog__close {
    align-items: center;
    background: #f2f7fb;
    border: 1px solid #d9e4ef;
    border-radius: 999px;
    color: #06213d;
    display: inline-flex;
    height: 36px;
    justify-content: center;
    width: 36px;
}

.hp-report-dialog__body {
    display: grid;
    gap: 14px;
    padding: 20px 24px;
}

.hp-report-dialog__target {
    background: #f2f7fb;
    border-radius: 8px;
    color: #06213d;
    font-weight: 800;
    margin: 0;
    padding: 10px 12px;
}

.hp-report-dialog__intro {
    color: #52677f;
    margin: 0;
}

.hp-report-dialog__body label {
    color: #0f2137;
    display: grid;
    font-weight: 800;
    gap: 7px;
    margin: 0;
}

.hp-report-dialog__body input,
.hp-report-dialog__body select,
.hp-report-dialog__body textarea {
    border: 1px solid #bfd2e4;
    border-radius: 7px;
    color: #0f2137;
    font-weight: 600;
    min-height: 42px;
    padding: 9px 11px;
    width: 100%;
}

.hp-report-dialog__body textarea {
    resize: vertical;
}

.hp-report-dialog__grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-report-dialog__status {
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 8px;
    color: #047857;
    font-weight: 800;
    padding: 10px 12px;
}

.hp-report-dialog__status.is-error {
    background: #fff1f2;
    border-color: #fecdd3;
    color: #be123c;
}

.hp-report-dialog__foot {
    border-top: 1px solid #d9e4ef;
    gap: 10px;
    padding: 16px 24px 20px;
}

.hp-report-dialog__trap {
    height: 1px !important;
    left: -10000px;
    opacity: 0;
    position: absolute;
    top: auto;
    width: 1px !important;
}

html.hp-report-dialog-open {
    overflow: hidden;
}

.hp-quick-edit-dialog[hidden] { display: none !important; }
.hp-quick-edit-dialog [hidden] { display: none !important; }
.hp-quick-edit-dialog { inset: 0; position: fixed; z-index: 10000; }
.hp-quick-edit-dialog__backdrop { background: rgba(15, 33, 55, .58); border: 0; inset: 0; position: absolute; }
.hp-quick-edit-dialog__panel { background: #fff; border-radius: 12px; box-shadow: 0 24px 70px rgba(15, 33, 55, .28); left: 50%; max-height: calc(100vh - 40px); max-width: 640px; overflow: auto; position: absolute; top: 50%; transform: translate(-50%, -50%); width: calc(100% - 32px); }
.hp-quick-edit-dialog__head,.hp-quick-edit-dialog__foot { align-items: center; display: flex; gap: 12px; justify-content: space-between; }
.hp-quick-edit-dialog__head { border-bottom: 1px solid #d9e4ef; padding: 20px 24px 16px; }
.hp-quick-edit-dialog__head p { color: #007f73; font-size: 12px; font-weight: 800; letter-spacing: .02em; margin: 0 0 4px; text-transform: uppercase; }
.hp-quick-edit-dialog__head h2 { color: #06213d; font-size: 22px; font-weight: 800; margin: 0; }
.hp-quick-edit-dialog__close { align-items: center; background: #f2f7fb; border: 1px solid #d9e4ef; border-radius: 999px; color: #06213d; display: inline-flex; height: 44px; justify-content: center; width: 44px; }
.hp-quick-edit-dialog__body { display: grid; gap: 16px; padding: 20px 24px; }
.hp-quick-edit-dialog__body fieldset { border: 1px solid #d9e4ef; border-radius: 9px; display: grid; gap: 12px; margin: 0; padding: 14px; }
.hp-quick-edit-dialog__body legend { color: #0a5d91; font-size: 13px; font-weight: 800; margin: 0; padding: 0 5px; }
.hp-quick-edit-dialog__body label { color: #0f2137; display: grid; font-weight: 800; gap: 7px; margin: 0; }
.hp-quick-edit-dialog__body input,.hp-quick-edit-dialog__body select { border: 1px solid #bfd2e4; border-radius: 7px; color: #0f2137; font-weight: 600; min-height: 44px; padding: 9px 11px; width: 100%; }
.hp-quick-edit-dialog__body select[multiple] { min-height: 116px; }
.hp-quick-edit-candidate textarea { border: 1px solid #bfd2e4; border-radius: 7px; color: #0f2137; font-weight: 600; min-height: 88px; padding: 9px 11px; resize: vertical; width: 100%; }
.hp-quick-edit-candidate__affiliations { background: #f2f7fb; border: 1px solid #d7e4ee; border-radius: 9px; display: grid; gap: 7px; padding: 12px; }
.hp-quick-edit-candidate__affiliations > strong { color: #17324f; }
.hp-quick-edit-candidate__affiliations > p { color: #60768b; font-size: 12px; line-height: 1.45; margin: 0; }
.hp-quick-edit-candidate__affiliations > div { display: grid; gap: 6px; }
.hp-quick-edit-candidate__affiliations > div > span { background: #fff; border-left: 3px solid #4f63c7; border-radius: 0 6px 6px 0; color: #27455f; font-size: 13px; padding: 8px 10px; }
.hp-quick-edit-specialties { display: grid; gap: 7px; }
.hp-quick-edit-specialties__label { color: #0f2137; font-weight: 800; }
.hp-quick-edit-specialties__list { border: 1px solid #bfd2e4; border-radius: 7px; display: grid; gap: 6px; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 176px; overflow: auto; padding: 8px; }
.hp-quick-edit-specialties__option { align-items: center; background: #f8fbfe; border: 1px solid transparent; border-radius: 6px; color: #17324f; cursor: pointer; display: flex !important; font-size: 13px; font-weight: 700 !important; gap: 8px; min-height: 38px; padding: 7px 8px; }
.hp-quick-edit-specialties__option[hidden] { display: none !important; }
.hp-quick-edit-specialties__option:hover { border-color: #98c9df; }
.hp-quick-edit-specialties__option input { accent-color: #087e8b; flex: 0 0 auto; height: 18px; margin: 0; min-height: 18px; padding: 0; width: 18px; }
.hp-quick-edit-specialties__search { align-items: center !important; background: #fff; border: 1px solid #bfd2e4; border-radius: 8px; display: flex !important; gap: 8px !important; padding: 0 11px; }
.hp-quick-edit-specialties__search:focus-within { border-color: #087f73; box-shadow: 0 0 0 3px rgba(8,127,115,.1); }
.hp-quick-edit-specialties__search i { color: #668094; }
.hp-quick-edit-specialties__search input { border: 0 !important; box-shadow: none !important; min-height: 42px !important; padding: 0 !important; }
.hp-quick-edit-specialties__selected { display: flex; flex-wrap: wrap; gap: 7px; }
.hp-quick-edit-specialties__chip { align-items: center; background: #edf5fa; border: 1px solid #c9dce8; border-radius: 999px; color: #17324f; display: inline-flex; font-size: 12px; font-weight: 750; gap: 4px; min-height: 31px; padding: 4px 5px 4px 10px; }
.hp-quick-edit-specialties__chip.is-primary { background: #e7f8f2; border-color: #8fd4bd; color: #086b5f; }
.hp-quick-edit-specialties__chip button { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #60778a; display: inline-flex; height: 24px; justify-content: center; padding: 0; width: 24px; }
.hp-quick-edit-specialties__chip button:hover,.hp-quick-edit-specialties__chip button:focus { background: rgba(15,33,55,.09); color: #0f2137; }
.hp-quick-edit-specialties__chip.is-primary .hp-quick-edit-specialties__primary { color: #087f73; }
.hp-quick-edit-specialties__count { color: #60768b; font-size: 12px; font-weight: 650; }
.hp-quick-edit-specialties__empty { background: #f8fbfe; border-radius: 7px; color: #60768b; font-size: 13px; margin: 0; padding: 12px; text-align: center; }
.hp-quick-edit-private-note__privacy { align-items: flex-start; background: #f2f5fb; border: 1px solid #cdd8ea; border-radius: 9px; color: #274368; display: flex; gap: 10px; padding: 11px 12px; }
.hp-quick-edit-private-note__privacy > i { align-items: center; background: #e2e9f5; border-radius: 50%; display: inline-flex; flex: 0 0 34px; height: 34px; justify-content: center; }
.hp-quick-edit-private-note__privacy > span { display: grid; gap: 2px; }
.hp-quick-edit-private-note__privacy small { color: #60738e; font-size: 12px; font-weight: 500; }
.hp-quick-edit-private-note textarea { min-height: 96px; resize: vertical; }
.hp-quick-edit-private-note__count { color: #65798e; text-align: right; }
.hp-quick-edit-private-note__history { border-top: 1px solid #dbe5ef; display: grid; gap: 8px; padding-top: 10px; }
.hp-quick-edit-private-note__history[hidden] { display: none !important; }
.hp-quick-edit-private-note__history > strong { color: #17324f; font-size: 13px; }
.hp-quick-edit-private-note__history > div { display: grid; gap: 7px; }
.hp-quick-edit-private-note__history article { background: #f8fafc; border-left: 3px solid #7088aa; border-radius: 0 7px 7px 0; display: grid; gap: 4px; padding: 9px 10px; }
.hp-quick-edit-private-note__history p { color: #203b59; font-size: 13px; line-height: 1.45; margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.hp-quick-edit-private-note__history article small { color: #6a7d91; font-size: 11px; }
.hp-quick-edit-verification__downgrade { background: #fff7ed; border: 1px solid #fdba74; border-radius: 9px; display: grid; gap: 10px; padding: 12px; }
.hp-quick-edit-verification__downgrade > strong { align-items: center; color: #9a3412; display: flex; gap: 8px; }
.hp-quick-edit-verification__downgrade[hidden] { display: none !important; }
.hp-quick-edit-dialog__grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hp-quick-edit-dialog__loading { color: #52677f; min-height: 96px; padding: 34px 0; text-align: center; }
.hp-quick-edit-dialog__status { background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; color: #047857; font-weight: 800; padding: 10px 12px; }
.hp-quick-edit-dialog__status.is-error { background: #fff1f2; border-color: #fecdd3; color: #be123c; }
.hp-quick-edit-dialog__foot { border-top: 1px solid #d9e4ef; padding: 16px 24px 20px; }.hp-quick-edit-dialog__foot>a { color: #0a679f; font-weight: 800; }.hp-quick-edit-dialog__foot>div { display: flex; gap: 8px; }.hp-quick-edit-dialog__foot .btn { min-height: 44px; }
html.hp-quick-edit-open { overflow: hidden; }
.hp-quick-edit-specialties>small{color:#60768b;font-size:12px;font-weight:500}.hp-quick-edit-geo__status{align-items:center;background:#f4f8fb;border:1px solid #d9e6ef;border-radius:9px;display:flex;gap:11px;padding:11px 12px}.hp-quick-edit-geo__status>span{align-items:center;background:#e8eef3;border-radius:50%;color:#60768b;display:flex;flex:0 0 36px;height:36px;justify-content:center}.hp-quick-edit-geo__status>div{display:grid;gap:2px}.hp-quick-edit-geo__status small{color:#60768b;font-size:12px;font-weight:500}.hp-quick-edit-geo__status.has-coordinates{background:#ecfdf5;border-color:#a7e4cf}.hp-quick-edit-geo__status.has-coordinates>span{background:#d7f6e9;color:#087f73}.hp-quick-edit-geo__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.hp-quick-edit-geo__actions .btn{align-items:center;display:inline-flex;gap:7px;min-height:42px}.hp-quick-edit-geo__clear{background:transparent;border:0;color:#657b8e;font-size:12px;font-weight:750;padding:9px}.hp-quick-edit-geo__map{border:1px solid #bed6e4;border-radius:10px;overflow:hidden}.hp-quick-edit-geo__map>[data-hp-quick-edit-map]{height:280px;width:100%}.hp-quick-edit-geo__map>p{background:#f4f8fb;color:#526b80;font-size:12px;margin:0;padding:9px 11px}.hp-quick-edit-verification__current{align-items:center;background:#fff8e7;border:1px solid #f0d18b;border-radius:8px;color:#865d09;display:flex;font-weight:800;gap:8px;padding:10px 12px}.hp-quick-edit-verification__current.is-verified{background:#ecfdf5;border-color:#a7e4cf;color:#08745f}.hp-quick-edit-verification__switch{align-items:flex-start!important;background:#f5fafb;border:1px solid #cfe2e8;border-radius:9px;cursor:pointer;display:flex!important;gap:11px!important;padding:12px}.hp-quick-edit-verification__switch input,.hp-quick-edit-verification__confirm input{accent-color:#087f73;flex:0 0 auto;height:19px;margin:2px 0 0;min-height:19px;width:19px}.hp-quick-edit-verification__switch span{display:grid;gap:2px}.hp-quick-edit-verification__switch small{color:#5e7486;font-size:12px;font-weight:500}.hp-quick-edit-verification__confirm{align-items:center!important;display:flex!important;gap:9px!important}.hp-quick-edit-verification__checklist{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.hp-quick-edit-verification__checklist span{align-items:center;color:#426273;display:flex;font-size:12px;font-weight:700;gap:7px}.hp-quick-edit-verification__checklist i{color:#087f73}.hp-quick-edit-commercial{background:linear-gradient(135deg,#e9fbf5,#f1f8ff);border:1px solid #a8dbc9;border-radius:10px;display:flex;gap:14px;justify-content:space-between;padding:13px}.hp-quick-edit-commercial>div{align-items:center;display:flex;gap:10px}.hp-quick-edit-commercial>div>i{color:#087f73;font-size:22px}.hp-quick-edit-commercial span{display:grid}.hp-quick-edit-commercial small{color:#587284}.hp-quick-edit-commercial .btn{align-items:center;display:inline-flex;gap:7px}.hp-quick-edit-commercial[hidden]{display:none!important}

@media (max-width: 767px) {
    body.healthcare-search-body .healthcare-result-unverified-help {
        left: 10px;
        top: 10px;
    }

    body.healthcare-search-body .healthcare-result-unverified-help span {
        max-width: 180px;
        white-space: normal;
    }

    .hp-report-dialog__panel {
        border-radius: 10px 10px 0 0;
        bottom: 0;
        left: 0;
        max-height: calc(100vh - 24px);
        top: auto;
        transform: none;
        width: 100%;
    }

    .hp-report-dialog__grid {
        grid-template-columns: 1fr;
    }

    .hp-quick-edit-dialog__panel { border-radius: 12px 12px 0 0; bottom: 0; left: 0; max-height: calc(100vh - 24px); top: auto; transform: none; width: 100%; }
    .hp-quick-edit-dialog__grid { grid-template-columns: 1fr; }
    .hp-quick-edit-specialties__list { grid-template-columns: 1fr; }
    .hp-quick-edit-dialog__foot { align-items: stretch; flex-direction: column; }
    .hp-quick-edit-dialog__foot>div { width: 100%; }.hp-quick-edit-dialog__foot .btn { flex: 1; }
    .hp-quick-edit-geo__actions{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.hp-quick-edit-geo__clear{grid-column:1/-1}.hp-quick-edit-geo__map>[data-hp-quick-edit-map]{height:250px}.hp-quick-edit-verification__checklist{grid-template-columns:1fr}.hp-quick-edit-commercial{align-items:stretch;flex-direction:column}.hp-quick-edit-commercial .btn{justify-content:center;width:100%}
}

@media (max-width: 420px) {
    body.healthcare-search-body .healthcare-search-actions {
        align-items: center;
        gap: 8px;
    }

    body.healthcare-search-body .healthcare-search-actions > a {
        font-size: 12px;
    }

    body.healthcare-search-body .healthcare-search-filterbar button {
        font-size: 13px;
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* Pro workspace: Today-first operational agenda (v1.4.8). */
.hp-clinician-agenda-app {
    --hp-agenda-blue: #1285d1;
    --hp-agenda-navy: #073653;
    --hp-agenda-ink: #0b2940;
    --hp-agenda-muted: #60788a;
    --hp-agenda-border: #cfe0eb;
    --hp-agenda-soft: #f4f9fc;
    color: var(--hp-agenda-ink);
}

.hp-clinician-schedule-toolbar {
    align-items: center;
    background: #fff;
    border: 1px solid var(--hp-agenda-border);
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(7, 54, 83, .06);
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 12px 14px;
}

.hp-clinician-toolbar-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; }
.hp-clinician-new-slot--toolbar { min-height: 44px; white-space: nowrap; }
.hp-clinician-overflow { position: relative; }
.hp-clinician-overflow-menu {
    background: #fff;
    border: 1px solid var(--hp-agenda-border);
    border-radius: 12px;
    box-shadow: 0 18px 45px rgba(7, 54, 83, .16);
    display: grid;
    min-width: 230px;
    padding: 7px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 35;
}
.hp-clinician-overflow-menu[hidden] { display: none; }
.hp-clinician-overflow-menu button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: var(--hp-agenda-ink);
    display: flex;
    gap: 9px;
    min-height: 42px;
    padding: 8px 10px;
    text-align: left;
}
.hp-clinician-overflow-menu button:hover { background: #eaf4fb; color: #075f98; }

.hp-clinician-ops-summary {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(220px, 1.6fr) repeat(auto-fit, minmax(135px, 1fr));
    margin: 12px 0;
}
.hp-clinician-ops-summary > button {
    align-items: center;
    background: #fff;
    border: 1px solid var(--hp-agenda-border);
    border-radius: 12px;
    color: var(--hp-agenda-ink);
    display: grid;
    gap: 2px 9px;
    grid-template-columns: 36px 1fr;
    min-height: 70px;
    padding: 10px 12px;
    text-align: left;
}
.hp-clinician-ops-summary > button > span {
    align-items: center;
    background: #e8f4fb;
    border-radius: 10px;
    color: #0875ba;
    display: flex;
    grid-row: 1 / span 2;
    height: 36px;
    justify-content: center;
    width: 36px;
}
.hp-clinician-ops-summary small { color: var(--hp-agenda-muted); font-size: 11px; font-weight: 700; }
.hp-clinician-ops-summary strong { font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-clinician-ops-summary > button:not(:disabled):hover { border-color: #75bce8; box-shadow: 0 8px 22px rgba(7, 54, 83, .08); transform: translateY(-1px); }
.hp-clinician-ops-summary > button:disabled { cursor: default; opacity: .7; }

.hp-clinician-agenda-shell { gap: 12px; grid-template-columns: 244px minmax(0, 1fr); }
.hp-clinician-left-panel { align-self: start; }
.hp-clinician-filter-card hr { border: 0; border-top: 1px solid var(--hp-agenda-border); margin: 8px 0; }
.hp-clinician-filter-card [data-hp-reset-agenda-filters] {
    background: transparent;
    border: 0;
    color: #0875ba;
    font-weight: 700;
    padding: 8px 0 0;
}
.hp-clinician-calendar-scroll { max-height: none; overflow-x: auto; overflow-y: visible; }
.hp-clinician-calendar-board { min-width: 760px; }
.hp-clinician-closed-band { background: repeating-linear-gradient(135deg, #f2f6f8, #f2f6f8 7px, #eaf1f5 7px, #eaf1f5 14px); opacity: .66; }

.hp-clinician-appointment {
    border-left-width: 4px;
    border-radius: 9px;
    min-height: 42px;
    align-content: center;
    gap: 1px;
    padding: 5px 8px;
}
.hp-clinician-appointment .hp-clinician-appointment__patient {
    display: block;
    line-height: 1.2;
    min-width: 0;
    padding-right: 50px;
}
.hp-clinician-appointment .hp-clinician-appointment__patient span {
    color: #092f4f;
    display: block;
    font-size: 12px;
    font-weight: 850;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.hp-clinician-appointment > .hp-clinician-appointment__service {
    color: #46677d;
    display: block;
    font-size: 10px;
    line-height: 1.25;
    overflow: hidden;
    padding-right: 4px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.hp-clinician-appointment > .hp-clinician-appointment__meta {
    align-items: center;
    color: #31536e;
    display: inline-flex;
    gap: 5px;
    line-height: 1;
    position: absolute;
    right: 7px;
    top: 6px;
}
.hp-clinician-appointment__meta time { font-size: 9px; font-weight: 800; }
.hp-clinician-appointment__status {
    background: #16855b;
    border: 2px solid rgba(255, 255, 255, .86);
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgba(8, 47, 79, .14);
    display: block;
    height: 8px;
    width: 8px;
}
.hp-clinician-appointment[data-status="arrived"] .hp-clinician-appointment__status { background: #d77b08; }
.hp-clinician-appointment[data-status="completed"] .hp-clinician-appointment__status { background: #16754f; }
.hp-clinician-appointment[data-status="no_show"] .hp-clinician-appointment__status { background: #c74444; }
.hp-clinician-appointment[data-status="cancelled"] .hp-clinician-appointment__status,
.hp-clinician-appointment[data-status="cancelled_by_patient"] .hp-clinician-appointment__status,
.hp-clinician-appointment[data-status="cancelled_by_staff"] .hp-clinician-appointment__status { background: #7b8f9f; }
.hp-clinician-appointment:focus-visible { box-shadow: 0 0 0 3px rgba(18, 133, 209, .28); outline: 2px solid #075f98; outline-offset: 1px; }

.hp-clinician-now-line {
    border-top: 2px solid #e14c4c;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    z-index: 8;
}
.hp-clinician-now-line > i { background: #e14c4c; border-radius: 50%; height: 8px; left: -4px; position: absolute; top: -5px; width: 8px; }
.hp-clinician-now-line > span { background: #fff; color: #b42626; font-size: 9px; font-weight: 800; padding: 0 3px; position: absolute; right: 3px; top: -9px; }

.hp-opening-hours-grid { display: grid; gap: 8px; }
.hp-opening-hours-grid > div {
    align-items: end;
    border: 1px solid var(--hp-agenda-border);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(120px, 1.2fr) repeat(4, minmax(90px, 1fr));
    padding: 9px;
}
.hp-opening-hours-grid label { display: grid; gap: 4px; }
.hp-opening-hours-grid label > span { color: var(--hp-agenda-muted); font-size: 11px; font-weight: 700; }
.hp-opening-enabled { align-items: center !important; display: flex !important; gap: 8px !important; }

.hp-waitlist-form { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hp-waitlist-form > label { display: grid; gap: 5px; }
.hp-waitlist-form > label:last-of-type, .hp-waitlist-form > button, .hp-waitlist-preferences { grid-column: 1 / -1; }
.hp-waitlist-preferences { display: grid; gap: 8px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.hp-waitlist-preferences label { display: grid; gap: 5px; }
.hp-waitlist-professional-list { border-top: 1px solid var(--hp-agenda-border); display: grid; gap: 8px; margin-top: 16px; padding-top: 14px; }
.hp-waitlist-professional-list article { align-items: center; background: var(--hp-agenda-soft); border: 1px solid var(--hp-agenda-border); border-radius: 10px; display: flex; gap: 12px; justify-content: space-between; padding: 10px; }
.hp-waitlist-professional-list article > div { display: grid; gap: 2px; }
.hp-waitlist-professional-list article > div:last-child { display: flex; }
.hp-waitlist-professional-list span, .hp-waitlist-professional-list small { color: var(--hp-agenda-muted); }

.hp-shortcut-list { display: grid; gap: 8px; }
.hp-shortcut-list > div { align-items: center; border-bottom: 1px solid var(--hp-agenda-border); display: flex; justify-content: space-between; padding: 8px 0; }
.hp-shortcut-list dt { order: 2; }
.hp-shortcut-list dd { margin: 0; }
.hp-shortcut-list kbd { background: #edf5fa; border: 1px solid #b9d2e2; border-bottom-width: 2px; border-radius: 5px; color: var(--hp-agenda-ink); padding: 3px 7px; }

.hp-clinician-mobile-agenda { display: none; }

.hp-clinician-agenda-app button,
.hp-clinician-agenda-app a,
.hp-clinician-agenda-app input,
.hp-clinician-agenda-app select,
.hp-clinician-agenda-app textarea { transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease, transform .15s ease; }
.hp-clinician-agenda-app :focus-visible { outline: 3px solid rgba(18, 133, 209, .35); outline-offset: 2px; }

@media (max-width: 1050px) {
    .hp-clinician-ops-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .hp-clinician-ops-summary > button:first-child { grid-column: span 2; }
    .hp-clinician-agenda-shell { grid-template-columns: 210px minmax(0, 1fr); }
}

@media (max-width: 760px) {
    .hp-clinician-schedule-toolbar { align-items: stretch; border-radius: 0; flex-direction: column; margin-inline: -12px; padding: 10px 12px; }
    .hp-clinician-schedule-nav { display: grid; grid-template-columns: 44px auto 44px 44px 1fr; }
    .hp-clinician-schedule-nav > div:last-child { min-width: 0; }
    .hp-clinician-schedule-nav h1 { font-size: 17px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .hp-clinician-toolbar-actions { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 3px; }
    .hp-clinician-tool-button, .hp-clinician-new-slot--toolbar { flex: 0 0 auto; }
    .hp-clinician-ops-summary { display: flex; margin-inline: -4px; overflow-x: auto; padding: 0 4px 4px; scroll-snap-type: x proximity; }
    .hp-clinician-ops-summary > button, .hp-clinician-ops-summary > button:first-child { flex: 0 0 210px; min-height: 66px; scroll-snap-align: start; }
    .hp-clinician-agenda-shell { display: block; }
    .hp-clinician-left-panel { display: none; }
    .hp-clinician-calendar-scroll { display: none; }
    .hp-clinician-state-empty { display: none !important; }
    .hp-clinician-mobile-agenda:not([hidden]) { display: grid; gap: 8px; }
    .hp-mobile-agenda-card {
        align-items: center;
        background: #fff;
        border: 1px solid var(--hp-agenda-border);
        border-left: 4px solid var(--hp-agenda-blue);
        border-radius: 12px;
        color: var(--hp-agenda-ink);
        display: grid;
        gap: 10px;
        grid-template-columns: 54px minmax(0, 1fr) auto;
        min-height: 70px;
        padding: 10px;
        text-align: left;
    }
    .hp-mobile-agenda-card time { color: #075f98; display: grid; font-size: 15px; font-weight: 800; }
    .hp-mobile-agenda-card time small, .hp-mobile-agenda-card > span small { color: var(--hp-agenda-muted); font-size: 11px; font-weight: 500; }
    .hp-mobile-agenda-card > span { display: grid; min-width: 0; }
    .hp-mobile-agenda-card > span strong, .hp-mobile-agenda-card > span small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .hp-mobile-agenda-card em { background: #eaf4fb; border-radius: 999px; color: #075f98; font-size: 10px; font-style: normal; font-weight: 800; padding: 5px 8px; }
    .hp-mobile-agenda-empty { align-items: center; color: var(--hp-agenda-muted); display: flex; flex-direction: column; gap: 10px; justify-content: center; min-height: 220px; text-align: center; }
    .hp-mobile-agenda-empty i { color: #74afd4; font-size: 32px; }
    .hp-opening-hours-grid > div { grid-template-columns: 1fr 1fr; }
    .hp-opening-enabled { grid-column: 1 / -1; }
    .hp-waitlist-form, .hp-waitlist-preferences { grid-template-columns: 1fr; }
    .hp-waitlist-form > * { grid-column: 1 !important; }
    .hp-waitlist-professional-list article { align-items: stretch; flex-direction: column; }
    .hp-clinician-modal-layer:not([hidden]) { align-items: flex-end; }
}

@media (prefers-reduced-motion: reduce) {
    .hp-clinician-agenda-app *, .hp-clinician-agenda-app *::before, .hp-clinician-agenda-app *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

.hp-brand-logo {
    align-items: center;
    color: inherit;
    display: inline-flex;
    flex: 0 1 auto;
    height: auto;
    line-height: 0;
    max-width: 100%;
    width: 188px;
}

.hp-brand-logo svg {
    display: block;
    height: auto;
    max-width: 100%;
    overflow: visible;
    width: 100%;
}

.healthcare-home-brand span.hp-brand-logo,
.healthcare-search-brand span.hp-brand-logo,
.healthcare-profile-brand span.hp-brand-logo,
.healthcare-booking-brand span.hp-brand-logo,
.hp-patient-brand span.hp-brand-logo,
.hp-pro-brand span.hp-brand-logo {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}

.hp-brand-logo--light {
    color: #fff;
}

.hp-brand-logo--dark {
    color: #08233f;
}

/* One canonical wordmark treatment for light public-page headers. */
.hp-public-brand,
.hp-public-brand:hover,
.hp-public-brand:focus {
    align-items: center;
    color: #08233f;
    display: inline-flex;
    flex: 0 1 176px;
    line-height: 0;
    max-width: 176px;
    min-width: 0;
    text-decoration: none;
}

.hp-public-brand .hp-brand-logo {
    height: auto;
    max-width: 100%;
    width: 176px;
}

.hp-public-brand:focus-visible {
    border-radius: 6px;
    outline: 3px solid rgba(11, 111, 184, .24);
    outline-offset: 4px;
}

.hp-brand-logo--compact {
    width: 42px;
}

.hp-brand-logo--compact svg {
    height: 42px;
    width: 42px;
}

.healthcare-home-brand .hp-brand-logo {
    width: 190px;
}

.healthcare-search-brand .hp-brand-logo {
    width: 178px;
}

.healthcare-profile-brand .hp-brand-logo,
.healthcare-booking-brand .hp-brand-logo,
.hp-patient-brand .hp-brand-logo {
    width: 182px;
}

.hp-pro-brand .hp-brand-logo {
    width: 192px;
}

.hp-brand-logo-suffix {
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 0;
    margin-left: -2px;
}

.hp-clinician-sidebar-brand .hp-brand-logo,
.hp-clinician-sidebar-brand .hp-brand-logo--compact {
    background: transparent;
    border-radius: 0;
    color: #fff;
    height: auto;
    justify-content: center;
    width: 42px;
}

.hp-clinician-sidebar-brand .hp-brand-logo svg {
    height: 42px;
    width: 42px;
}

@media (max-width: 640px) {
    .hp-public-brand,
    .hp-public-brand:hover,
    .hp-public-brand:focus,
    .hp-public-brand .hp-brand-logo {
        flex-basis: 154px;
        max-width: 154px;
        width: 154px;
    }

    .healthcare-home-brand .hp-brand-logo,
    .healthcare-search-brand .hp-brand-logo,
    .healthcare-profile-brand .hp-brand-logo,
    .healthcare-booking-brand .hp-brand-logo,
    .hp-patient-brand .hp-brand-logo,
    .hp-pro-brand .hp-brand-logo {
        flex: 0 1 auto;
        max-width: 100%;
        width: 154px;
    }

    .healthcare-home-brand span.hp-brand-logo,
    .healthcare-search-brand span.hp-brand-logo,
    .healthcare-profile-brand span.hp-brand-logo,
    .healthcare-booking-brand span.hp-brand-logo,
    .hp-patient-brand span.hp-brand-logo,
    .hp-pro-brand span.hp-brand-logo {
        max-width: 100%;
        min-width: 0;
        text-align: inherit;
    }

    .hp-pro-brand .hp-brand-logo {
        width: 166px;
    }
}

/* Homepage visual polish: keep the public landing page on one consistent rail. */
body.hp-home-body .healthcare-home-shell {
    --hp-home-blue: #1684d8;
    --hp-home-dark: #071f36;
    --hp-home-border: #d8e5ef;
    --hp-home-card-shadow: 0 14px 34px rgba(16, 42, 67, .06);
}

@media (min-width: 641px) {
    body.hp-home-body .healthcare-home-nav .container,
    body.hp-home-body .healthcare-home-hero > .container,
    body.hp-home-body .healthcare-home-section > .container,
    body.hp-home-body .healthcare-home-band > .container,
    body.hp-home-body .healthcare-home-final > .container {
        margin-left: auto;
        margin-right: auto;
        max-width: 960px;
        padding-left: 0;
        padding-right: 0;
        width: calc(100% - 48px);
    }

    body.hp-home-body .healthcare-home-nav {
        background: var(--hp-home-blue);
        border-bottom: 1px solid rgba(255, 255, 255, .18);
    }

    body.hp-home-body .healthcare-home-nav .container {
        display: grid;
        gap: 28px;
        grid-template-columns: auto minmax(0, 1fr);
        min-height: 64px;
    }

    body.hp-home-body .healthcare-home-brand {
        align-items: center;
        height: 44px;
        justify-self: start;
        min-width: 0;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo {
        align-items: center;
        display: inline-flex;
        height: 42px;
        width: 178px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo svg {
        display: block;
        height: 42px;
        width: 181px;
    }

    body.hp-home-body .healthcare-home-nav-links {
        align-items: center;
        gap: 18px;
        justify-content: flex-end;
        min-width: 0;
    }

    body.hp-home-body .healthcare-home-nav-links > a:not(.btn) {
        align-items: center;
        display: inline-flex;
        font-size: 13px;
        height: 40px;
        white-space: nowrap;
    }

    body.hp-home-body .healthcare-home-language-switch {
        align-items: center;
        border-color: rgba(255, 255, 255, .34);
        height: 40px;
        padding: 3px;
    }

    body.hp-home-body .healthcare-home-nav-links .healthcare-home-language-switch a {
        align-items: center;
        display: inline-flex;
        height: 30px;
        justify-content: center;
        padding: 0 10px;
    }

    body.hp-home-body .healthcare-home-nav-links .btn {
        align-items: center;
        border-radius: 8px;
        display: inline-flex;
        font-size: 13px;
        height: 40px;
        justify-content: center;
        padding: 0 17px;
        white-space: nowrap;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-hero {
        border-radius: 0 0 18px 18px;
        min-height: 492px;
        padding: 66px 0 52px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-copy {
        max-width: 700px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-copy h1 {
        font-size: 50px;
        line-height: 1.08;
        max-width: 670px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-subtitle {
        font-size: 18px;
        line-height: 1.5;
        max-width: 660px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search {
        border: 1px solid var(--hp-home-border);
        border-radius: 8px;
        box-shadow: 0 18px 44px rgba(7, 52, 94, .20);
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 150px;
        max-width: 760px;
        overflow: visible;
        position: relative;
        z-index: 2;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search-field {
        border-right-color: var(--hp-home-border);
        min-height: 64px;
        padding: 10px 18px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search-field span {
        font-size: 10px;
        margin-bottom: 4px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search-field input {
        font-size: 14px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search .btn {
        border-radius: 0;
        font-size: 14px;
        min-height: 64px;
    }

    body.hp-home-body .healthcare-home-assurance {
        align-items: center;
        gap: 10px 18px;
    }

    body.hp-home-body .healthcare-home-assurance span {
        align-items: center;
        display: inline-flex;
        min-height: 24px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-quicklinks {
        gap: 9px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-quicklinks a {
        align-items: center;
        border-color: var(--hp-home-border);
        border-radius: 999px;
        display: inline-flex;
        min-height: 34px;
        padding: 0 13px;
        white-space: nowrap;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-section {
        padding: 58px 0;
    }

    body.hp-home-body .healthcare-section-heading {
        margin-bottom: 28px;
    }

    body.hp-home-body .healthcare-step-grid {
        gap: 18px;
    }

    body.hp-home-body .healthcare-step-card,
    body.hp-home-body .healthcare-home-shell .healthcare-feature-card {
        border: 1px solid var(--hp-home-border);
        border-radius: 8px;
        box-shadow: var(--hp-home-card-shadow);
        min-height: 214px;
        padding: 24px;
    }

    body.hp-home-body .healthcare-step-card h3,
    body.hp-home-body .healthcare-home-shell .healthcare-feature-card h3 {
        color: #071f36;
        line-height: 1.25;
    }

    body.hp-home-body .healthcare-step-card p,
    body.hp-home-body .healthcare-home-shell .healthcare-feature-card p {
        line-height: 1.55;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-feature-card i,
    body.hp-home-body .healthcare-step-card span {
        border-radius: 8px;
    }

    body.hp-home-body .healthcare-home-band {
        padding: 54px 0;
    }

    body.hp-home-body .healthcare-home-band-inner {
        gap: 32px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-band-actions .btn {
        align-items: center;
        border-radius: 8px;
        display: inline-flex;
        min-height: 40px;
        padding: 0 16px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-disclaimer {
        padding: 0;
    }

    body.hp-home-body .healthcare-home-footer {
        background: #f4f8fb;
        border: 1px solid #edf3f8;
        min-height: 50px;
        padding: 0 16px;
    }
}

@media (max-width: 980px) and (min-width: 641px) {
    body.hp-home-body .healthcare-home-nav .container,
    body.hp-home-body .healthcare-home-hero > .container,
    body.hp-home-body .healthcare-home-section > .container,
    body.hp-home-body .healthcare-home-band > .container,
    body.hp-home-body .healthcare-home-final > .container {
        width: calc(100% - 36px);
    }

    body.hp-home-body .healthcare-home-nav .container {
        gap: 16px;
        grid-template-columns: minmax(0, 1fr);
        padding-bottom: 12px;
        padding-top: 12px;
    }

    body.hp-home-body .healthcare-home-nav-links {
        justify-content: flex-start;
        overflow-x: auto;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search {
        grid-template-columns: minmax(0, 1fr);
        max-width: 620px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search-field {
        border-bottom: 1px solid var(--hp-home-border);
        border-right: 0;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-search .btn {
        border-radius: 0 0 8px 8px;
    }
}

@media (max-width: 640px) {
    body.hp-home-body .healthcare-home-nav .container {
        max-width: none;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo {
        height: 32px;
        width: 136px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo svg {
        height: 32px;
        width: 138px;
    }

    body.hp-home-body .healthcare-home-nav-links .btn,
    body.hp-home-body .healthcare-home-language-switch {
        border-radius: 8px;
    }

    body.hp-home-body .healthcare-mobile-update-card,
    body.hp-home-body .healthcare-mobile-promo-card {
        border-color: var(--hp-home-border);
        border-radius: 8px;
    }
}

/* Homepage header correction: keep desktop/tablet navigation in one intentional row. */
@media (min-width: 981px) {
    body.hp-home-body .healthcare-home-nav .container,
    body.hp-home-body .healthcare-home-hero > .container,
    body.hp-home-body .healthcare-home-section > .container,
    body.hp-home-body .healthcare-home-band > .container,
    body.hp-home-body .healthcare-home-final > .container {
        max-width: 1120px;
        width: calc(100% - 64px);
    }
}

@media (min-width: 769px) {
    body.hp-home-body .healthcare-home-nav {
        padding: 0;
    }

    body.hp-home-body .healthcare-home-nav .container {
        align-items: center !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 30px;
        justify-content: space-between !important;
        min-height: 72px;
        padding-bottom: 0 !important;
        padding-top: 0 !important;
    }

    body.hp-home-body .healthcare-home-brand {
        align-items: center !important;
        display: inline-flex !important;
        flex: 0 0 auto;
        height: 44px;
        justify-content: flex-start !important;
        margin: 0;
        min-width: 184px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo {
        height: 40px;
        width: 184px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo svg {
        display: block;
        height: 40px;
        width: 184px;
    }

    body.hp-home-body .healthcare-home-nav-links {
        align-items: center !important;
        display: flex !important;
        flex: 1 1 auto;
        flex-wrap: nowrap !important;
        gap: 18px;
        justify-content: flex-end !important;
        margin-left: auto;
        min-width: 0;
        overflow: visible !important;
        padding-bottom: 0 !important;
        white-space: nowrap;
        width: auto !important;
    }

    body.hp-home-body .healthcare-home-nav-links > a:not(.btn),
    body.hp-home-body .healthcare-home-nav-links > a[href*="#"] {
        align-items: center;
        display: inline-flex !important;
        font-size: 13px;
        height: 40px;
        line-height: 1;
        padding: 0;
    }

    body.hp-home-body .healthcare-home-language-switch {
        flex: 0 0 auto;
        height: 40px;
        margin: 0;
    }

    body.hp-home-body .healthcare-home-nav-links .btn {
        flex: 0 0 auto;
        height: 42px;
        margin: 0;
        min-width: 130px;
    }
}

@media (min-width: 769px) and (max-width: 1100px) {
    body.hp-home-body .healthcare-home-nav .container {
        gap: 18px;
        width: calc(100% - 36px);
    }

    body.hp-home-body .healthcare-home-brand {
        min-width: 162px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo,
    body.hp-home-body .healthcare-home-brand .hp-brand-logo svg {
        width: 162px;
    }

    body.hp-home-body .healthcare-home-nav-links {
        gap: 12px;
    }

    body.hp-home-body .healthcare-home-nav-links > a:not(.btn),
    body.hp-home-body .healthcare-home-nav-links > a[href*="#"] {
        font-size: 12px;
    }

    body.hp-home-body .healthcare-home-nav-links .btn {
        min-width: 116px;
        padding-left: 12px;
        padding-right: 12px;
    }
}

@media (min-width: 641px) and (max-width: 768px) {
    body.hp-home-body .healthcare-home-nav .container {
        align-items: center;
        display: grid;
        gap: 12px;
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
        min-height: 0;
        padding-bottom: 14px;
        padding-top: 14px;
        width: calc(100% - 36px);
    }

    body.hp-home-body .healthcare-home-brand {
        justify-content: flex-start;
    }

    body.hp-home-body .healthcare-home-nav-links {
        justify-content: flex-start;
        overflow-x: auto;
        width: 100%;
    }
}

/* Root homepage language selector: center labels and show circular flags. */
body.hp-home-body .healthcare-home-language-switch {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

body.hp-home-body .healthcare-home-nav-links .healthcare-home-language-switch a {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    justify-content: center;
    line-height: 1;
    min-height: 30px;
    vertical-align: middle;
}

body.hp-home-body .healthcare-language-flag {
    align-items: center;
    background: rgba(255, 255, 255, .94);
    border-radius: 50%;
    box-shadow: 0 0 0 1px rgba(7, 31, 54, .08);
    display: inline-flex;
    flex: 0 0 20px;
    font-size: 17px;
    height: 20px;
    justify-content: center;
    line-height: 1;
    overflow: hidden;
    width: 20px;
}

body.hp-home-body .healthcare-home-nav-links .healthcare-home-language-switch a.active .healthcare-language-flag {
    box-shadow: 0 0 0 1px rgba(17, 126, 208, .14);
}

@media (max-width: 640px) {
    body.hp-home-body .healthcare-home-nav-links .healthcare-home-language-switch a {
        gap: 4px;
        min-width: 42px;
        padding-left: 5px;
        padding-right: 5px;
    }

    body.hp-home-body .healthcare-language-flag {
        flex-basis: 17px;
        font-size: 15px;
        height: 17px;
        width: 17px;
    }
}

/* Search results header correction: align brand, search, and account controls intentionally. */
body.healthcare-search-body .healthcare-search-topbar .container {
    box-sizing: border-box;
}

body.healthcare-search-body .healthcare-search-brand {
    align-items: center;
    display: inline-flex;
    justify-content: flex-start;
    line-height: 1;
    margin: 0;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-search-brand .hp-brand-logo {
    display: inline-flex;
    height: 38px;
    width: 176px;
}

body.healthcare-search-body .healthcare-search-brand .hp-brand-logo svg {
    display: block;
    height: 38px;
    width: 176px;
}

body.healthcare-search-body .healthcare-search-actions {
    align-items: center;
    display: flex;
    margin: 0;
    min-width: max-content;
}

body.healthcare-search-body .healthcare-search-actions > a {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    height: 36px;
    justify-content: center;
    padding: 0 2px;
    white-space: nowrap;
}

body.healthcare-search-body .healthcare-search-language-switch {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    height: 34px;
    margin: 0;
    padding: 3px;
}

body.healthcare-search-body .healthcare-search-actions .healthcare-search-language-switch a {
    align-items: center;
    display: inline-flex;
    height: 26px;
    justify-content: center;
    min-width: 38px;
    padding: 0 10px;
}

body.healthcare-search-body .healthcare-search-top-form {
    box-sizing: border-box;
    width: 100%;
}

body.healthcare-search-body .healthcare-search-top-form label {
    box-sizing: border-box;
    overflow: hidden;
}

body.healthcare-search-body .healthcare-search-top-form input {
    line-height: 1.2;
}

@media (min-width: 1101px) {
    body.healthcare-search-body .healthcare-search-topbar {
        padding: 0;
    }

    body.healthcare-search-body .healthcare-search-topbar .container {
        align-items: center;
        display: grid !important;
        gap: 26px;
        grid-template-columns: 176px minmax(520px, 720px) auto;
        min-height: 76px;
        padding-bottom: 0;
        padding-top: 0;
    }

    body.healthcare-search-body .healthcare-search-brand {
        grid-column: 1;
        justify-self: start;
        order: 0;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        border: 2px solid rgba(255, 255, 255, .86);
        grid-column: 2;
        grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) 122px;
        justify-self: center;
        max-width: 720px;
        min-height: 48px;
        order: 0;
    }

    body.healthcare-search-body .healthcare-search-top-form label {
        min-height: 48px;
    }

    body.healthcare-search-body .healthcare-search-top-form .healthcare-public-search-submit {
        min-height: 48px;
    }

    body.healthcare-search-body .healthcare-search-actions {
        grid-column: 3;
        justify-content: flex-end;
        justify-self: end;
        order: 0;
    }
}

@media (min-width: 768px) and (max-width: 1100px) {
    body.healthcare-search-body .healthcare-search-topbar {
        padding: 12px 0 14px;
    }

    body.healthcare-search-body .healthcare-search-topbar .container {
        align-items: center;
        display: grid !important;
        gap: 12px 18px;
        grid-template-columns: minmax(160px, auto) minmax(0, 1fr);
        min-height: 0;
    }

    body.healthcare-search-body .healthcare-search-brand {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        order: 0;
    }

    body.healthcare-search-body .healthcare-search-brand .hp-brand-logo,
    body.healthcare-search-body .healthcare-search-brand .hp-brand-logo svg {
        height: 36px;
        width: 166px;
    }

    body.healthcare-search-body .healthcare-search-actions {
        grid-column: 2;
        grid-row: 1;
        justify-content: flex-end;
        justify-self: end;
        order: 0;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        grid-column: 1 / -1;
        grid-row: 2;
        grid-template-columns: minmax(0, 1fr) minmax(0, .85fr) 118px;
        justify-self: stretch;
        max-width: none;
        order: 0;
    }
}

@media (max-width: 767px) {
    body.healthcare-search-body .healthcare-search-topbar .container {
        align-items: center;
        display: grid !important;
        gap: 10px;
        grid-template-columns: 40px minmax(0, 1fr) 40px !important;
        padding-left: 12px;
        padding-right: 12px;
    }

    body.healthcare-search-body .healthcare-search-brand {
        grid-column: 2;
        grid-row: 1;
        justify-self: center;
        order: 1;
    }

    body.healthcare-search-body .healthcare-search-brand .hp-brand-logo,
    body.healthcare-search-body .healthcare-search-brand .hp-brand-logo svg {
        height: 34px;
        width: 156px;
    }

    body.healthcare-search-body .healthcare-search-actions {
        grid-column: 3;
        grid-row: 1;
        justify-content: flex-end;
        justify-self: end;
        min-width: 0;
        order: 2;
        width: 40px;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        grid-column: 1 / -1;
        grid-row: 2;
        grid-template-columns: minmax(0, 1fr);
        justify-self: stretch;
        max-width: none;
        order: 3;
    }
}
/* Professional scheduling and support */
.hp-clinician-modal-layer[data-hp-active-modal="support"] .hp-clinician-modal{max-width:980px;width:min(100%,980px)}

/* Professional onboarding readiness */
.hp-readiness-panel{background:#fff;border:1px solid #cfe0ed;border-radius:8px;padding:24px;margin-bottom:22px;box-shadow:0 10px 30px rgba(11,54,81,.06)}
.hp-readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.hp-readiness-head h2{margin:3px 0 6px;color:#082b49;font-size:24px}
.hp-readiness-head p{margin:0;color:#526d82}
.hp-readiness-head>strong{display:grid;place-items:center;flex:0 0 62px;height:62px;border-radius:50%;background:#e7f7f4;color:#087e73;font-size:18px}
.hp-readiness-progress{height:8px;margin:20px 0;border-radius:8px;background:#e8f0f6;overflow:hidden}
.hp-readiness-progress span{display:block;height:100%;border-radius:inherit;background:#0b8f83}
.hp-readiness-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.hp-readiness-steps button{min-height:104px;padding:14px;text-align:left;border:1px solid #d7e4ee;border-radius:7px;background:#f8fbfd;color:#173a55;display:flex;flex-direction:column;gap:7px;cursor:pointer}
.hp-readiness-steps button:hover,.hp-readiness-steps button:focus{border-color:#1488d1;outline:0;box-shadow:0 0 0 3px rgba(20,136,209,.12)}
.hp-readiness-steps button i{font-size:20px;color:#7891a4}
.hp-readiness-steps button span{font-weight:700;line-height:1.3}
.hp-readiness-steps button em{font-style:normal;font-size:12px;color:#647e91}
.hp-readiness-steps button.is-complete{background:#f1fbf8;border-color:#b8e5da}
.hp-readiness-steps button.is-complete i,.hp-readiness-steps button.is-complete em{color:#078273}
.hp-readiness-booking{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:20px;margin-top:20px;border-top:1px solid #e1eaf1}
.hp-readiness-booking strong{display:block;color:#082b49;font-size:16px}
.hp-readiness-booking p{margin:4px 0 0;color:#607b90}
.hp-readiness-toggle{position:relative;display:block;flex:0 0 50px;width:50px;height:28px}
.hp-readiness-toggle input{position:absolute;opacity:0;pointer-events:none}
.hp-readiness-toggle span{display:block;width:50px;height:28px;border-radius:14px;background:#9fb0bd;cursor:pointer;transition:.2s}
.hp-readiness-toggle span:after{content:"";display:block;width:22px;height:22px;margin:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:.2s}
.hp-readiness-toggle input:checked+span{background:#0b8f83}
.hp-readiness-toggle input:checked+span:after{transform:translateX(22px)}
.hp-readiness-toggle input:disabled+span{opacity:.45;cursor:not-allowed}
.hp-onboarding-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.hp-onboarding-form label,.hp-onboarding-form fieldset{margin:0}
.hp-onboarding-form label>span,.hp-onboarding-form legend{display:block;margin-bottom:6px;color:#163b57;font-weight:700}
.hp-onboarding-form input,.hp-onboarding-form textarea{width:100%;border:1px solid #bdd2e1;border-radius:6px;padding:10px 12px;background:#fff;color:#17364d}
.hp-onboarding-form input:focus,.hp-onboarding-form textarea:focus{border-color:#1488d1;outline:0;box-shadow:0 0 0 3px rgba(20,136,209,.12)}
.hp-onboarding-wide{grid-column:1/-1}
.hp-onboarding-form fieldset{border:1px solid #d5e2ec;border-radius:7px;padding:14px}
.hp-onboarding-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;max-height:220px;overflow:auto}
.hp-onboarding-services label{display:flex;align-items:center;gap:8px;padding:8px;border-radius:5px;background:#f5f9fc}
.hp-onboarding-services input{width:auto}
.hp-onboarding-services label>span{margin:0;font-weight:600}
@media(max-width:1100px){.hp-readiness-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.hp-readiness-panel{padding:18px}.hp-readiness-head,.hp-readiness-booking{align-items:flex-start}.hp-readiness-steps,.hp-onboarding-form,.hp-onboarding-services{grid-template-columns:1fr}.hp-onboarding-wide{grid-column:auto}.hp-readiness-booking{flex-direction:row}.hp-readiness-head>strong{flex-basis:52px;height:52px}.hp-readiness-steps button{min-height:82px}}
.hp-clinician-manual-slot{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px;padding:16px;margin:16px 0 20px;background:#f3f8fc;border:1px solid #cfe0ed;border-radius:8px}.hp-clinician-manual-slot label,.hp-pro-support-form label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#0b2c49}.hp-clinician-manual-slot input,.hp-pro-support-form input,.hp-pro-support-form select,.hp-pro-support-form textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #b8cddd;border-radius:6px;background:#fff;color:#102a43}.hp-clinician-manual-slot-reason{grid-column:1/3}.hp-clinician-manual-slot .hp-clinician-primary-action{align-self:end;min-height:42px}.hp-clinician-slot-suggestions-title{margin:0 0 10px;font-size:15px}.hp-pro-support-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;margin-top:18px}.hp-pro-support-pane{min-width:0}.hp-pro-support-pane h3{font-size:17px;margin:0 0 12px}.hp-pro-help-list{display:grid;gap:8px}.hp-pro-help-list details{border:1px solid #d7e3ed;border-radius:6px;background:#fff}.hp-pro-help-list summary{padding:12px 14px;font-weight:750;cursor:pointer}.hp-pro-help-list details p{padding:0 14px 14px;margin:0;color:#486581;line-height:1.55}.hp-pro-ticket-list{display:grid;gap:8px;margin-bottom:18px}.hp-pro-ticket-list>a,.hp-admin-ticket{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #d7e3ed;border-radius:6px;color:#102a43;text-decoration:none}.hp-pro-ticket-list small,.hp-admin-ticket small{display:block;margin-top:3px;color:#718096}.hp-pro-ticket-list em{font-size:12px;font-style:normal;color:#0b7285}.hp-pro-support-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hp-pro-support-form{display:grid;gap:11px}.hp-pro-support-privacy{font-size:12px;color:#627d98}.hp-support-thread{display:grid;gap:10px;max-height:360px;overflow:auto;margin:14px 0;padding-right:4px}.hp-support-message{padding:12px 14px;border:1px solid #d7e3ed;border-radius:7px;background:#fff}.hp-support-message.is-admin{border-color:#9bd6ca;background:#effcf8}.hp-support-message header{display:flex;justify-content:space-between;gap:12px;font-size:12px}.hp-support-message p{margin:8px 0;white-space:normal}.hp-support-attachment{display:inline-flex;align-items:center;gap:6px;font-size:12px}.hp-pro-ticket-heading{display:flex;justify-content:space-between;gap:12px;padding:12px;background:#edf7ff;border-radius:6px}.hp-pro-support-back{display:inline-block;margin-bottom:10px}.hp-admin-ticket-list{display:grid;gap:8px}.hp-admin-ticket.active{border-color:#1683c7;background:#edf7ff}.hp-pro-support-account{display:flex;align-items:center;gap:12px;margin:14px 0;padding:12px 14px;border:1px solid #c8dcea;border-radius:10px;background:linear-gradient(135deg,#f7fbff 0%,#edf7ff 100%);color:#12344d;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.hp-pro-support-account:hover,.hp-pro-support-account:focus{border-color:#1683c7;box-shadow:0 8px 20px rgba(22,131,199,.12);color:#0a6ebd;text-decoration:none;transform:translateY(-1px)}.hp-pro-support-account-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:10px;background:#1683c7;color:#fff;font-size:17px}.hp-pro-support-account-identity{display:flex;flex:1 1 auto;min-width:0;flex-direction:column}.hp-pro-support-account-identity small{color:#6b8295;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hp-pro-support-account-identity strong,.hp-pro-support-account-identity span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-pro-support-account-identity strong{font-size:14px;color:#102a43}.hp-pro-support-account-identity span{font-size:12px;color:#627d98}.hp-pro-support-account-action{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;font-weight:700;color:#0a6ebd}
@media(max-width:900px){.hp-pro-support-grid{grid-template-columns:1fr}.hp-clinician-manual-slot{grid-template-columns:1fr 1fr}.hp-clinician-manual-slot-reason{grid-column:1/-1}.hp-clinician-manual-slot .hp-clinician-primary-action{grid-column:1/-1}}
@media(max-width:560px){.hp-clinician-manual-slot,.hp-pro-support-fields{grid-template-columns:1fr}.hp-clinician-manual-slot-reason,.hp-clinician-manual-slot .hp-clinician-primary-action{grid-column:auto}.hp-support-message header{flex-direction:column;gap:2px}}
/* Admin workspace navigation */
.hp-admin-nav{position:relative;z-index:30;background:#fff;border:1px solid #dbe5ef;border-radius:6px;margin-bottom:24px;overflow:visible}
.hp-admin-finder{position:relative;padding:12px 14px;border-bottom:1px solid #e6edf4;background:#f8fbfc;z-index:20}
.hp-admin-finder__field{display:flex;align-items:center;gap:10px;width:min(100%,620px);min-height:44px;padding:0 12px;border:1px solid #c8d8e4;border-radius:8px;background:#fff;box-shadow:0 1px 2px rgba(18,58,82,.04);transition:border-color .16s ease,box-shadow .16s ease}
.hp-admin-finder__field:focus-within{border-color:#0f8a83;box-shadow:0 0 0 3px rgba(15,138,131,.13)}
.hp-admin-finder__field>i{color:#0f7180}
.hp-admin-finder__field input{width:100%;min-width:0;height:42px;padding:0;border:0;outline:0;background:transparent;color:#17384e;font-size:14px;font-weight:600}
.hp-admin-finder__field input::placeholder{color:#728797;font-weight:500}
.hp-admin-finder__field kbd{border:1px solid #d4e0e9;border-bottom-width:2px;border-radius:5px;background:#f6f8fa;color:#607687;font-family:inherit;font-size:11px;line-height:1;padding:4px 7px;box-shadow:none}
.hp-admin-finder__popover{position:absolute;top:64px;left:14px;width:min(calc(100% - 28px),620px);overflow:hidden;border:1px solid #cad9e4;border-radius:10px;background:#fff;box-shadow:0 18px 45px rgba(15,45,68,.17);z-index:100}
.hp-admin-finder__hint{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 13px;border-bottom:1px solid #e7eef3;background:#f7fafc;color:#496474;font-size:12px;font-weight:700}
.hp-admin-finder__hint small{color:#78909f;font-weight:500}
.hp-admin-finder__results{max-height:430px;overflow-y:auto;padding:6px}
.hp-admin-finder__result{display:grid;grid-template-columns:40px minmax(0,1fr) 24px;align-items:center;gap:10px;padding:10px;border-radius:7px;color:#17384e;text-decoration:none}
.hp-admin-finder__result:hover,.hp-admin-finder__result:focus,.hp-admin-finder__result.is-active{background:#eaf7f5;color:#0b625e;text-decoration:none;outline:0}
.hp-admin-finder__result-icon{display:grid;width:40px;height:40px;border-radius:8px;background:#edf5f8;color:#0f7180;place-items:center}
.hp-admin-finder__result:hover .hp-admin-finder__result-icon,.hp-admin-finder__result.is-active .hp-admin-finder__result-icon{background:#d7f0ec;color:#08756d}
.hp-admin-finder__result-copy{display:grid;min-width:0;gap:2px}
.hp-admin-finder__result-copy small{overflow:hidden;color:#6e8492;font-size:10px;font-weight:700;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.hp-admin-finder__result-copy strong{overflow:hidden;color:#17384e;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.hp-admin-finder__result-copy>span{overflow:hidden;color:#607687;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.hp-admin-finder__result-arrow{color:#8aa0af;font-size:12px}
.hp-admin-finder__empty{margin:0;padding:26px 16px;color:#607687;text-align:center}
.hp-settings-anchor{scroll-margin-top:84px}
.hp-admin-settings{overflow:hidden}
.hp-admin-settings-tabs{background:#f8fafc;border-bottom:1px solid #dbe5ef;display:flex;gap:4px;overflow-x:auto;padding:8px;scrollbar-width:thin}
.hp-admin-settings-tab{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:#526070;cursor:pointer;display:inline-flex;flex:0 0 auto;font-weight:600;gap:8px;min-height:44px;padding:9px 13px;transition:background-color .16s ease,border-color .16s ease,color .16s ease}
.hp-admin-settings-tab:hover{background:#fff;border-color:#dbe5ef;color:#0f5f73}
.hp-admin-settings-tab:focus-visible{box-shadow:0 0 0 3px rgba(15,138,131,.2);outline:2px solid #0f8a83;outline-offset:1px}
.hp-admin-settings-tab.is-active{background:#fff;border-color:#b8d7d5;color:#0b625e;box-shadow:0 1px 2px rgba(15,35,52,.06)}
.hp-admin-settings-tab i{font-size:14px;width:16px}
.hp-admin-settings-save-help{align-items:center;background:#f8fafc;border:1px solid #e6edf4;border-radius:6px;display:flex;gap:8px;margin:0 0 22px;padding:10px 12px}
.hp-admin-settings-save-help i{color:#0f8a83}
.hp-admin-settings-section[hidden]{display:none!important}
.hp-admin-settings .panel-footer{background:#fff;border-top:1px solid #e6edf4}
@media(max-width:1023px){.hp-admin-settings-tabs{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.hp-admin-settings-tab{justify-content:flex-start;min-width:0;white-space:normal}.hp-admin-settings-tab span{line-height:1.25;text-align:left}}
@media(max-width:480px){.hp-admin-settings-tabs{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hp-admin-settings-tab{transition:none}}
.hp-admin-nav__mobile{display:none}
.hp-admin-nav__primary{display:flex;gap:4px;overflow-x:auto;padding:8px}
.hp-admin-nav__primary-link{align-items:center;border-radius:5px;color:#344054;display:flex;flex:0 0 auto;font-weight:600;gap:8px;padding:10px 14px;white-space:nowrap}
.hp-admin-nav__primary-link:hover,.hp-admin-nav__primary-link:focus{background:#f2f6fa;color:#0f5f73;text-decoration:none}
.hp-admin-nav__primary-link.is-active{background:#0f5f73;color:#fff}
.hp-admin-nav__secondary{border-top:1px solid #e6edf4;display:flex;gap:22px;overflow-x:auto;padding:0 18px}
.hp-admin-nav__secondary-link{align-items:center;border-bottom:3px solid transparent;color:#526070;display:inline-flex;flex:0 0 auto;font-weight:600;gap:6px;padding:12px 0 9px;white-space:nowrap}
.hp-admin-nav__secondary-link:hover,.hp-admin-nav__secondary-link:focus{color:#0f5f73;text-decoration:none}
.hp-admin-nav__secondary-link.is-active{border-bottom-color:#0f8a83;color:#0b625e}
.hp-admin-nav__attention-count{align-items:center;background:#fff3cd;border:1px solid #f0d58a;border-radius:999px;color:#774d00;display:inline-flex;flex:0 0 auto;font-size:11px;font-variant-numeric:tabular-nums;font-weight:800;justify-content:center;line-height:1;min-height:20px;min-width:20px;padding:3px 6px}
.hp-specialty-assistant-admin-anchor{scroll-margin-top:96px}
.hp-admin-page-heading{align-items:flex-start;display:flex;justify-content:space-between;margin:0 0 24px}
.hp-admin-page-heading h1{font-size:26px;font-weight:700;margin:2px 0 7px}.hp-admin-page-heading p{color:#667085;margin:0;max-width:760px}
.hp-admin-page-heading--actions{align-items:center}.hp-admin-eyebrow{color:#087f77!important;font-size:11px;font-weight:800;letter-spacing:.06em;margin:0!important;text-transform:uppercase}
.hp-admin-workspace-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}
.hp-admin-workspace-card{align-items:center;background:#fff;border:1px solid #dbe5ef;border-radius:6px;color:#172b4d;display:flex;gap:14px;min-height:112px;padding:20px;transition:border-color .15s,box-shadow .15s,transform .15s}
.hp-admin-workspace-card:hover,.hp-admin-workspace-card:focus{border-color:#0f8a83;box-shadow:0 8px 22px rgba(15,95,115,.09);color:#172b4d;text-decoration:none;transform:translateY(-1px)}
.hp-admin-workspace-card__icon,.hp-admin-queue__icon{align-items:center;background:#e7f7f5;border-radius:6px;color:#087f77;display:flex;flex:0 0 42px;height:42px;justify-content:center}
.hp-admin-workspace-card__body{display:flex;flex:1;flex-direction:column;gap:5px}.hp-admin-workspace-card__body strong{font-size:16px}.hp-admin-workspace-card__body small{color:#667085;line-height:1.45}.hp-admin-workspace-card__arrow{color:#98a2b3}
.hp-admin-section-heading{align-items:flex-end;display:flex;justify-content:space-between;margin:28px 0 14px}.hp-admin-section-heading h2{font-size:18px;font-weight:700;margin:0 0 4px}.hp-admin-section-heading p{color:#667085;margin:0}
.hp-admin-queue-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.hp-admin-queue{align-items:center;background:#fff;border:1px solid #dbe5ef;border-radius:6px;color:#172b4d;display:flex;gap:12px;padding:16px}.hp-admin-queue:hover{border-color:#0f8a83;color:#172b4d;text-decoration:none}.hp-admin-queue__content{display:flex;flex:1;flex-direction:column}.hp-admin-queue__content strong{font-size:24px;line-height:1}.hp-admin-queue__content b{font-size:13px;margin-top:5px}.hp-admin-queue__content small{color:#667085;margin-top:3px}
.hp-admin-stat-grid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.hp-admin-stat{background:#fff;border:1px solid #dbe5ef;border-radius:6px;color:#172b4d;display:grid;gap:5px;padding:18px}.hp-admin-stat:hover{border-color:#0f8a83;color:#172b4d;text-decoration:none}.hp-admin-stat i{color:#087f77}.hp-admin-stat strong{font-size:25px}.hp-admin-stat span{color:#667085}
.hp-dashboard-widget__header{align-items:center;display:flex;justify-content:space-between}.hp-dashboard-widget__header h4{font-size:18px;font-weight:700;margin:2px 0 4px}.hp-dashboard-widget__header p:not(.hp-admin-eyebrow){color:#667085;margin:0}.hp-dashboard-widget__metrics{border-top:1px solid #e6edf4;display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px;padding-top:14px}.hp-dashboard-widget__metrics a{border-right:1px solid #e6edf4;color:#172b4d;display:flex;flex-direction:column;padding:2px 16px}.hp-dashboard-widget__metrics a:first-child{padding-left:0}.hp-dashboard-widget__metrics a:last-child{border:0}.hp-dashboard-widget__metrics a:hover{text-decoration:none}.hp-dashboard-widget__metrics strong{font-size:22px}.hp-dashboard-widget__metrics span{color:#667085;font-size:12px}
@media(max-width:991px){.hp-admin-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-admin-queue-grid,.hp-admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hp-admin-nav__primary-link{padding:9px 11px}.hp-admin-nav__primary-link span{font-size:12px}.hp-admin-page-heading,.hp-dashboard-widget__header{align-items:flex-start;flex-direction:column;gap:12px}.hp-admin-workspace-grid,.hp-admin-queue-grid,.hp-admin-stat-grid{grid-template-columns:1fr}.hp-admin-workspace-card{min-height:0}.hp-dashboard-widget__metrics{grid-template-columns:repeat(2,1fr);row-gap:14px}.hp-dashboard-widget__metrics a:nth-child(2){border-right:0}.hp-dashboard-widget__metrics a:nth-child(3){padding-left:0}}
.hp-demo-status{align-items:center;border:1px solid;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;gap:7px;padding:8px 12px;white-space:nowrap}.hp-demo-status.is-ready{background:#ecfdf3;border-color:#a6f4c5;color:#087443}.hp-demo-status.is-pending{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.hp-demo-metric-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.hp-demo-metric{align-items:center;background:#fff;border:1px solid #dbe5ef;border-radius:8px;display:flex;gap:13px;padding:16px}.hp-demo-metric>span,.hp-demo-lock{align-items:center;background:#e7f7f5;border-radius:8px;color:#087f77;display:flex;height:42px;justify-content:center;width:42px}.hp-demo-metric div{display:flex;flex-direction:column}.hp-demo-metric strong{color:#172b4d;font-size:23px;line-height:1}.hp-demo-metric small{color:#667085;margin-top:5px}.hp-demo-panel{border-radius:8px;overflow:hidden}.hp-demo-panel-heading{align-items:flex-start;display:flex;justify-content:space-between;gap:16px;margin-bottom:16px}.hp-demo-panel-heading h4,.hp-demo-provision-panel h4{font-size:18px;font-weight:750;margin:0 0 5px}.hp-demo-panel-heading p{color:#667085;margin:0}.hp-demo-panel-heading small{color:#667085;white-space:nowrap}.hp-demo-account-list{display:grid;gap:9px}.hp-demo-account{align-items:center;border:1px solid #e3eaf1;border-radius:7px;display:grid;gap:12px;grid-template-columns:38px minmax(0,1fr) auto;padding:12px}.hp-demo-account__icon{align-items:center;background:#eef7fb;border-radius:7px;color:#0f6f87;display:flex;height:38px;justify-content:center}.hp-demo-account div{display:flex;flex-direction:column;gap:3px;min-width:0}.hp-demo-account code{background:transparent;color:#526070;overflow:hidden;padding:0;text-overflow:ellipsis}.hp-demo-account__state{border-radius:999px;font-size:11px;font-weight:800;padding:5px 8px}.hp-demo-account__state.is-active{background:#ecfdf3;color:#087443}.hp-demo-account__state.is-missing{background:#f2f4f7;color:#667085}.hp-demo-lock{margin-bottom:14px}.hp-demo-provision-panel .alert{line-height:1.5;margin-top:18px}.hp-demo-provision-panel .alert i{margin-right:6px}.hp-demo-confirmation label{font-weight:650}.hp-demo-provision-panel .panel-footer{background:#f8fafc}
@media(max-width:991px){.hp-demo-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-demo-provision-panel{margin-top:18px}}
@media(max-width:600px){.hp-demo-metric-grid{grid-template-columns:1fr}.hp-demo-panel-heading{flex-direction:column}.hp-demo-account{grid-template-columns:38px minmax(0,1fr)}.hp-demo-account__state{grid-column:2;justify-self:start}.hp-demo-status{white-space:normal}}
.hp-widget-panel{margin-top:24px;padding:24px;border:1px solid #d7e5ed;border-radius:8px;background:#f8fbfc}.hp-widget-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.hp-widget-panel__header h2{margin:3px 0 6px;font-size:22px}.hp-widget-panel__header p{max-width:760px;margin:0;color:#5b7385}.hp-widget-status{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 11px;border-radius:999px;background:#edf1f4;color:#607382;font-size:12px;font-weight:700}.hp-widget-status.is-active{background:#e6f7f2;color:#087f70}.hp-widget-metrics{display:flex;gap:1px;margin:20px 0;background:#dce8ee;border:1px solid #dce8ee;border-radius:7px;overflow:hidden}.hp-widget-metrics span{display:flex;align-items:baseline;gap:7px;min-width:140px;padding:12px 16px;background:#fff;color:#607382}.hp-widget-metrics strong{font-size:20px;color:#0b2740}.hp-widget-form{display:grid;gap:18px}.hp-widget-fields{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.65fr) minmax(240px,.9fr);gap:14px}.hp-widget-field{display:grid;align-content:start;gap:7px}.hp-widget-field>span{font-weight:700;color:#183a52}.hp-widget-field select,.hp-widget-field textarea{width:100%;min-height:44px;border:1px solid #c8dbe6;border-radius:6px;padding:10px 12px;background:#fff;color:#183a52}.hp-widget-field small,.hp-widget-active-control small{display:block;color:#718797;font-weight:400;line-height:1.35}.hp-widget-color-control{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 10px;border:1px solid #c8dbe6;border-radius:6px;background:#fff}.hp-widget-color-control input[type=color]{width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;border:0!important;border-radius:5px;cursor:pointer}.hp-widget-color-control strong{font-family:Consolas,monospace;font-size:12px}.hp-widget-active-control{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:82px;margin:0;padding:14px;border:1px solid #c8dbe6;border-radius:6px;background:#fff;cursor:pointer}.hp-widget-active-control input{position:absolute;opacity:0;pointer-events:none}.hp-widget-active-control i{position:relative;flex:0 0 46px;width:46px;height:26px;border-radius:99px;background:#b9c9d3;transition:.2s}.hp-widget-active-control i:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.2s}.hp-widget-active-control input:checked+i{background:#079683}.hp-widget-active-control input:checked+i:after{transform:translateX(20px)}.hp-widget-active-control input:focus-visible+i{outline:3px solid rgba(7,150,131,.25)}.hp-widget-domains{grid-column:1/-1}.hp-widget-embed-card{border:1px solid #c8dbe6;border-radius:7px;background:#fff;overflow:hidden}.hp-widget-embed-card__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;border-bottom:1px solid #e2ebf0}.hp-widget-embed-card__head span{display:flex;align-items:center;gap:9px;color:#183a52}.hp-widget-embed-card__head small{color:#718797}.hp-widget-embed-card textarea{display:block;width:100%;min-height:82px;padding:14px;border:0;border-bottom:1px solid #e2ebf0;resize:vertical;background:#f5f8fa;color:#29485d;font:12px/1.55 Consolas,monospace}.hp-widget-embed-actions{display:flex;align-items:center;gap:8px;padding:11px 14px}.hp-widget-embed-actions button,.hp-widget-embed-actions a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid #bfd3df;border-radius:6px;background:#fff;color:#153d59;font-weight:700;text-decoration:none}.hp-widget-embed-actions button:hover,.hp-widget-embed-actions a:hover{border-color:#1385c4;color:#0878b5}.hp-widget-security{border-top:1px solid #d7e5ed;padding-top:14px}.hp-widget-security summary{display:flex;align-items:center;gap:8px;color:#36576c;font-weight:700;cursor:pointer}.hp-widget-security label{display:flex;align-items:flex-start;gap:10px;margin:12px 0 0;padding:13px;border-radius:6px;background:#fff4f1;color:#7e392e}.hp-widget-security small{display:block;margin-top:3px;font-weight:400}.hp-widget-save{display:flex;justify-content:flex-end}.hp-widget-save button{display:inline-flex;align-items:center;gap:8px;min-width:150px;justify-content:center}@media(max-width:1100px){.hp-widget-fields{grid-template-columns:1fr 1fr}.hp-widget-active-control{grid-column:1/-1}.hp-widget-domains{grid-column:1/-1}}@media(max-width:640px){.hp-widget-panel{padding:18px 14px}.hp-widget-panel__header{display:grid}.hp-widget-status{justify-self:start}.hp-widget-metrics span{min-width:0;flex:1}.hp-widget-fields{grid-template-columns:1fr}.hp-widget-active-control,.hp-widget-domains{grid-column:auto}.hp-widget-embed-card__head{display:grid}.hp-widget-embed-actions{display:grid;grid-template-columns:1fr 1fr}.hp-widget-save button{width:100%}}

/* Commercial plans and subscriptions */
.hp-plan-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 22px}.hp-plan-catalog article,.hp-subscription-row,.hp-pro-plan-card,.hp-pro-entitlements,.hp-pro-plan-actions{border:1px solid #d6e3eb;border-radius:8px;background:#fff;box-shadow:0 8px 22px rgba(11,39,64,.05)}.hp-plan-catalog article{padding:20px}.hp-plan-catalog article>span{display:inline-block;margin-bottom:8px;color:#087f70;font-size:11px;font-weight:800;text-transform:uppercase}.hp-plan-catalog h2{margin:0 0 10px;font-size:20px}.hp-plan-catalog article>strong{display:block;color:#0b2740;font-size:27px}.hp-plan-catalog article>strong small{font-size:12px;font-weight:600;color:#6b7e8c}.hp-plan-catalog p{min-height:42px;margin:10px 0;color:#5e7484}.hp-plan-catalog em{font-style:normal;color:#087f70;font-weight:700}.hp-subscription-list{display:grid;gap:14px}.hp-subscription-row{padding:18px}.hp-subscription-row>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.hp-subscription-row h3{margin:0 0 3px}.hp-subscription-row header p{margin:0;color:#627887}.hp-subscription-status{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:#edf2f5;color:#526674;font-size:12px;font-weight:800}.hp-subscription-status.is-active,.hp-subscription-status.is-trialing{background:#e2f6ef;color:#08755f}.hp-subscription-status.is-past_due,.hp-subscription-status.is-paused{background:#fff4d8;color:#8a6200}.hp-subscription-status.is-cancelled,.hp-subscription-status.is-expired{background:#fdebea;color:#a33b32}.hp-subscription-fields{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px}.hp-subscription-fields label{display:grid;gap:6px}.hp-subscription-fields label>span{font-size:12px;font-weight:700}.hp-subscription-fields select,.hp-subscription-fields input{width:100%;min-height:42px;border:1px solid #c9d9e2;border-radius:6px;padding:8px 10px;background:#fff}.hp-subscription-fields .is-wide{grid-column:span 2}.hp-subscription-actions{display:flex;justify-content:flex-end;margin-top:14px}.hp-pro-plan-card{display:grid;grid-template-columns:minmax(0,1fr) 250px;overflow:hidden}.hp-pro-plan-card__main{padding:24px}.hp-pro-plan-card h2{margin:12px 0 7px;font-size:26px}.hp-pro-plan-card p{max-width:640px;color:#5d7382}.hp-pro-plan-price{display:block;margin-top:16px;font-size:27px}.hp-pro-plan-price small{font-size:13px;color:#657a88}.hp-pro-plan-card aside{display:flex;flex-direction:column;justify-content:center;padding:24px;border-left:1px solid #d6e3eb;background:#f4f9fb}.hp-pro-plan-card aside>span{font-size:12px;color:#627887}.hp-pro-plan-card aside>strong{margin:7px 0;font-size:17px}.hp-pro-plan-card aside>small{color:#087f70;font-weight:800}.hp-pro-entitlements{margin-top:16px;padding:22px}.hp-pro-entitlements h3{margin:0 0 14px}.hp-pro-entitlements>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hp-pro-entitlements span{display:flex;align-items:center;gap:9px}.hp-pro-entitlements i{color:#087f70}.hp-pro-plan-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:18px 22px}.hp-pro-plan-actions p{margin:0;color:#617785}.hp-pro-plan-actions .hp-clinician-primary-action{flex:0 0 auto;text-decoration:none}
@media(max-width:1100px){.hp-subscription-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-plan-catalog{grid-template-columns:1fr}.hp-plan-catalog p{min-height:0}}@media(max-width:700px){.hp-subscription-fields{grid-template-columns:1fr}.hp-subscription-fields .is-wide{grid-column:auto}.hp-subscription-row>header{align-items:flex-start;flex-direction:column}.hp-pro-plan-card{grid-template-columns:1fr}.hp-pro-plan-card aside{border-left:0;border-top:1px solid #d6e3eb}.hp-pro-entitlements>div{grid-template-columns:1fr}.hp-pro-plan-actions{align-items:stretch;flex-direction:column}.hp-pro-plan-actions .hp-clinician-primary-action{justify-content:center}}

.hp-commercial-banner{align-items:center;background:#fff7df;border-bottom:1px solid #f0d589;color:#654b00;display:flex;gap:18px;justify-content:space-between;min-height:48px;padding:9px 24px}.hp-commercial-banner>div{align-items:center;display:flex;gap:9px}.hp-commercial-banner a{background:#0b2740;border-radius:6px;color:#fff;display:inline-flex;font-weight:800;gap:8px;padding:9px 14px;text-decoration:none}.hp-commercial-banner a:hover,.hp-commercial-banner a:focus{background:#123d5e;color:#fff;text-decoration:none}.hp-commercial-banner.is-expired,.hp-commercial-banner.is-past_due{background:#fff1ed;border-color:#f4c1b7;color:#8a3023}.hp-search-boost-card{align-items:center;background:#f3f9ff;border:1px solid #c9e0f3;border-radius:8px;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) auto;margin-top:20px;padding:22px}.hp-search-boost-card h2{margin:4px 0 8px}.hp-search-boost-card p{color:#5c7384;margin:0 0 12px}.hp-search-boost-card strong{font-size:24px}.hp-search-boost-card strong small{color:#667d8d;font-size:12px}.hp-search-boost-card aside{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.healthcare-result-sponsored{align-items:center;background:#eaf7f2;border:1px solid #b9e2d4;border-radius:999px;color:#08745f;display:inline-flex;font-size:11px;font-weight:800;gap:5px;padding:4px 8px}.healthcare-home-professional-cta{align-items:center;background:#072b4a;border-radius:7px;color:#fff;display:inline-flex;font-weight:800;gap:8px;padding:11px 15px;text-decoration:none}.healthcare-home-professional-cta:hover,.healthcare-home-professional-cta:focus{background:#0b3c63;color:#fff;text-decoration:none}
.healthcare-home-professional-sticky{align-items:center;background:#072b4a;border-radius:7px 0 0 7px;box-shadow:0 8px 26px rgba(7,43,74,.22);color:#fff;display:flex;font-size:13px;font-weight:800;gap:9px;padding:13px 16px;position:fixed;right:0;text-decoration:none;top:42%;z-index:40}.healthcare-home-professional-sticky:hover,.healthcare-home-professional-sticky:focus{background:#0b3c63;color:#fff;text-decoration:none}.healthcare-home-listing-price{background:#fff;border:1px solid #cfe1ec;border-radius:6px;color:#5b7282;display:inline-flex;gap:8px;margin-top:16px;padding:9px 12px}.healthcare-home-listing-price strong{color:#087866}

@media(max-width:700px){.hp-commercial-banner{align-items:stretch;flex-direction:column;padding:10px 14px}.hp-commercial-banner a{justify-content:center}.hp-search-boost-card{align-items:stretch;grid-template-columns:1fr}.hp-search-boost-card aside{align-items:stretch}.healthcare-home-professional-sticky{border-radius:999px;bottom:72px;left:50%;right:auto;top:auto;transform:translateX(-50%);white-space:nowrap}.healthcare-home-nav-links .healthcare-home-professional-cta{display:none}}

/* Clinic organization and seat visibility */
.hp-organization-section{--hp-org-navy:#082f4d;--hp-org-blue:#0f7fca;--hp-org-teal:#078b7a;--hp-org-border:#d7e4ed;--hp-org-muted:#61778a}.hp-organization-head{align-items:flex-end;display:flex;gap:24px;justify-content:space-between}.hp-organization-head>div{max-width:760px}.hp-organization-head .hp-clinician-primary-action{flex:0 0 auto;min-width:118px}.hp-organization-metrics{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0}.hp-organization-metrics article{align-items:center;background:#fff;border:1px solid var(--hp-org-border);border-radius:16px;display:grid;gap:14px;grid-template-columns:48px minmax(0,1fr);min-height:132px;padding:20px}.hp-organization-metric-icon{align-items:center;background:#eaf4fb;border-radius:14px;color:var(--hp-org-blue);display:flex;font-size:19px;height:48px;justify-content:center;width:48px}.hp-organization-metric-icon.is-doctor{background:#e8f7f4;color:var(--hp-org-teal)}.hp-organization-metric-icon.is-price{background:#fff4dc;color:#a96d00}.hp-organization-metrics small,.hp-organization-metrics strong,.hp-organization-metrics p{display:block}.hp-organization-metrics small{color:var(--hp-org-muted);font-size:12px;font-weight:800;text-transform:uppercase}.hp-organization-metrics strong{color:var(--hp-org-navy);font-size:25px;line-height:1.15;margin-top:5px}.hp-organization-metrics strong em{color:#8194a3;font-size:14px;font-style:normal;font-weight:750}.hp-organization-metrics p{color:var(--hp-org-muted);font-size:12px;line-height:1.4;margin:6px 0 0}.hp-organization-tree{background:#fff;border:1px solid var(--hp-org-border);border-radius:18px;overflow:hidden}.hp-organization-tree>header{align-items:center;background:linear-gradient(135deg,#f7fbfe,#eef7fb);border-bottom:1px solid var(--hp-org-border);display:flex;gap:20px;justify-content:space-between;padding:22px 24px}.hp-organization-tree>header h2{color:var(--hp-org-navy);font-size:22px;margin:3px 0 0}.hp-organization-tree>header>span{align-items:center;background:#fff;border:1px solid var(--hp-org-border);border-radius:999px;color:#416076;display:inline-flex;font-size:12px;font-weight:800;gap:7px;padding:8px 12px}.hp-organization-tree>header>span i{color:var(--hp-org-teal)}.hp-organization-level{display:grid;gap:22px;grid-template-columns:220px minmax(0,1fr);padding:24px;position:relative}.hp-organization-level+.hp-organization-level{border-top:1px solid #e8eff4}.hp-organization-level__label{align-items:flex-start;display:grid;gap:12px;grid-template-columns:40px minmax(0,1fr)}.hp-organization-level__label>i{align-items:center;background:#e9f3fa;border-radius:12px;color:var(--hp-org-blue);display:flex;height:40px;justify-content:center;width:40px}.hp-organization-level.is-owner .hp-organization-level__label>i{background:#fff1cf;color:#9b6800}.hp-organization-level.is-receptionist .hp-organization-level__label>i{background:#e7f7f4;color:var(--hp-org-teal)}.hp-organization-level__label strong,.hp-organization-level__label small{display:block}.hp-organization-level__label strong{color:var(--hp-org-navy);font-size:14px}.hp-organization-level__label small{color:var(--hp-org-muted);font-size:12px;line-height:1.45;margin-top:4px}.hp-organization-level__members{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.hp-organization-person{background:#fbfdff;border:1px solid #dce7ef;border-radius:14px;min-width:0;padding:16px}.hp-organization-person.is-current{border-color:#6db7e8;box-shadow:0 0 0 3px rgba(15,127,202,.08)}.hp-organization-person>header{align-items:center;display:grid;gap:11px;grid-template-columns:42px minmax(0,1fr)}.hp-organization-person>header>span{align-items:center;background:var(--hp-org-navy);border-radius:12px;color:#fff;display:flex;font-size:12px;font-weight:850;height:42px;justify-content:center;width:42px}.hp-organization-person>header strong,.hp-organization-person>header small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-organization-person>header strong{color:var(--hp-org-navy);font-size:14px}.hp-organization-person>header small{color:var(--hp-org-muted);font-size:11px;margin-top:3px}.hp-organization-access-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.hp-organization-access-list span{align-items:center;background:#eef5f9;border-radius:999px;color:#466276;display:inline-flex;font-size:10px;font-weight:750;gap:5px;padding:5px 8px}.hp-organization-access-list i{color:var(--hp-org-teal);font-size:9px}.hp-organization-empty-role{align-items:center;border:1px dashed #cbdbe6;border-radius:14px;color:#7890a1;display:flex;font-size:12px;font-weight:750;gap:8px;justify-content:center;min-height:82px;padding:16px}.hp-organization-billing-note{align-items:center;background:#fffaf0;border:1px solid #ecd8aa;border-radius:16px;display:grid;gap:14px;grid-template-columns:44px minmax(0,1fr) auto;margin-top:18px;padding:18px}.hp-organization-billing-note>span{align-items:center;background:#fff0c7;border-radius:12px;color:#936100;display:flex;height:44px;justify-content:center;width:44px}.hp-organization-billing-note strong{color:#4d3a0b;display:block;font-size:14px}.hp-organization-billing-note p{color:#705e30;font-size:12px;line-height:1.5;margin:4px 0 0}.hp-organization-billing-note>a{align-items:center;color:#086fad;display:inline-flex;font-size:12px;font-weight:850;gap:7px;white-space:nowrap}.hp-organization-readonly{align-items:center;color:#60788a;display:flex;font-size:12px;gap:8px;justify-content:center;margin:14px 0 0}.hp-team-cost-preview{align-items:flex-start;background:#f1f8fc;border:1px solid #cfe2ee;border-radius:12px;color:#526b7d;display:flex;font-size:12px;gap:10px;line-height:1.45;padding:12px 14px}.hp-team-cost-preview>i{color:#0f7fca;margin-top:2px}.hp-team-cost-preview span,.hp-team-cost-preview strong{display:block}.hp-team-cost-preview strong{color:#0b3552;font-size:12px;margin-bottom:2px}.hp-team-cost-preview [hidden]{display:none!important}

@media(max-width:1100px){.hp-organization-metrics{grid-template-columns:1fr}.hp-organization-metrics article{min-height:0}.hp-organization-level{grid-template-columns:1fr}.hp-organization-level__label{max-width:520px}.hp-organization-level__members{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
@media(max-width:720px){.hp-organization-head{align-items:stretch;flex-direction:column}.hp-organization-head .hp-clinician-primary-action{justify-content:center}.hp-organization-metrics{gap:10px;margin:18px 0}.hp-organization-metrics article{border-radius:14px;padding:16px}.hp-organization-tree{border-radius:14px}.hp-organization-tree>header{align-items:flex-start;flex-direction:column;padding:18px}.hp-organization-level{gap:16px;padding:18px}.hp-organization-level__members{grid-template-columns:minmax(0,1fr)}.hp-organization-billing-note{align-items:flex-start;grid-template-columns:40px minmax(0,1fr);padding:15px}.hp-organization-billing-note>span{height:40px;width:40px}.hp-organization-billing-note>a{grid-column:2;justify-self:start}}

/* Clinic organization chart */
.hp-organization-chart{background:#f7fafc;padding:34px 26px 30px;position:relative}.hp-organization-clinic-node{align-items:center;background:#082f4d;border:1px solid #082f4d;border-radius:16px;box-shadow:0 12px 28px rgba(8,47,77,.14);color:#fff;display:grid;gap:14px;grid-template-columns:48px minmax(0,1fr);margin:0 auto;max-width:390px;padding:18px 20px;position:relative;z-index:2}.hp-organization-clinic-node>span{align-items:center;background:rgba(255,255,255,.14);border-radius:13px;display:flex;font-size:19px;height:48px;justify-content:center;width:48px}.hp-organization-clinic-node small,.hp-organization-clinic-node strong,.hp-organization-clinic-node p{display:block}.hp-organization-clinic-node small{color:#a9d4ed;font-size:10px;font-weight:850;text-transform:uppercase}.hp-organization-clinic-node strong{font-size:17px;line-height:1.25;margin-top:3px}.hp-organization-clinic-node p{color:#d7e9f4;font-size:11px;margin:4px 0 0}.hp-organization-connector{background:#82bddd;display:block;height:28px;margin:0 auto;width:2px}.hp-organization-owner-level{background:#fff;border:1px solid #d7e4ed;border-radius:16px;margin:0 auto;max-width:620px;padding:18px;position:relative;z-index:2}.hp-organization-branch-heading{align-items:center;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr) auto;margin-bottom:14px}.hp-organization-branch-heading>i{align-items:center;background:#e7f7f4;border-radius:12px;color:#078b7a;display:flex;height:42px;justify-content:center;width:42px}.hp-organization-branch-heading.is-owner>i{background:#fff1cf;color:#9b6800}.hp-organization-branch-heading strong,.hp-organization-branch-heading small{display:block}.hp-organization-branch-heading strong{color:#082f4d;font-size:14px}.hp-organization-branch-heading small{color:#61778a;font-size:11px;line-height:1.4;margin-top:3px}.hp-organization-level__members.is-owner-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.hp-organization-branches{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr));position:relative}.hp-organization-branches:before{background:#82bddd;content:"";height:2px;left:calc(25% - 5.5px);position:absolute;right:calc(25% - 5.5px);top:-29px}.hp-organization-branch{background:#fff;border:1px solid #d7e4ed;border-radius:16px;min-width:0;padding:18px;position:relative}.hp-organization-branch:before{background:#82bddd;content:"";height:28px;left:50%;position:absolute;top:-29px;width:2px}.hp-organization-branch.is-practitioner .hp-organization-branch-heading>i{background:#eaf4fb;color:#0f7fca}.hp-organization-person{background:#fff}.hp-organization-branch .hp-organization-person{background:#fbfdff}.hp-organization-person>header>span{border-radius:50%}.hp-organization-empty-role{background:#fbfdff}.hp-organization-tree .hp-team-owner-tools__body{box-shadow:none}.hp-organization-tree .hp-team-account-form{grid-template-columns:repeat(2,minmax(120px,1fr))}
.hp-organization-branch-actions{align-items:center;display:flex;gap:7px}.hp-organization-branch-actions>span{align-items:center;background:#eaf4fb;border-radius:999px;color:#0f6fa9;display:flex;font-size:11px;font-weight:850;height:30px;justify-content:center;min-width:30px;padding:0 8px}.hp-organization-role-add{align-items:center;background:#0f7fca;border:1px solid #0f7fca;border-radius:50%;box-shadow:0 4px 10px rgba(15,127,202,.18);color:#fff;display:inline-flex;flex:0 0 30px;font-size:11px;height:30px;justify-content:center;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;width:30px}.hp-organization-role-add:hover,.hp-organization-role-add:focus{background:#0a68a8;box-shadow:0 6px 14px rgba(15,127,202,.24);color:#fff;outline:none;transform:translateY(-1px)}
.hp-organization-role-add.is-capacity-action{background:#fff4dc;border-color:#e3b654;box-shadow:0 4px 10px rgba(138,90,0,.12);color:#8a5a00}.hp-organization-role-add.is-capacity-action:hover,.hp-organization-role-add.is-capacity-action:focus{background:#ffe9b8;border-color:#cd9c2d;box-shadow:0 6px 14px rgba(138,90,0,.18);color:#704900}
@media(max-width:1100px){.hp-organization-chart{padding:28px 20px}.hp-organization-branches{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-organization-branch .hp-organization-level__members{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.hp-organization-chart{padding:22px 14px}.hp-organization-clinic-node{border-radius:14px;padding:16px}.hp-organization-owner-level{padding:14px}.hp-organization-branches{gap:16px;grid-template-columns:minmax(0,1fr)}.hp-organization-branches:before{display:none}.hp-organization-branch{border-radius:14px;margin-left:14px;padding:14px}.hp-organization-branch:before{height:2px;left:-15px;top:28px;width:15px}.hp-organization-branch:after{background:#82bddd;content:"";height:calc(100% + 16px);left:-16px;position:absolute;top:-16px;width:2px}.hp-organization-branch:last-child:after{height:45px}.hp-organization-connector.is-team{height:20px;margin-left:14px}.hp-organization-branch-heading{grid-template-columns:40px minmax(0,1fr) auto}.hp-organization-branch-heading>i{height:40px;width:40px}.hp-organization-level__members.is-owner-list{grid-template-columns:minmax(0,1fr)}.hp-organization-tree .hp-team-account-form{grid-template-columns:minmax(0,1fr)}.hp-organization-tree .hp-team-account-form label.is-wide,.hp-organization-tree .hp-team-owner-action.is-primary{grid-column:1}.hp-organization-tree .hp-team-owner-tools__actions form,.hp-organization-tree .hp-team-owner-action{width:100%}}

/* Final public-header and directory-card alignment. */
.hp-color-setting {
    align-items: center;
    display: flex;
    gap: 10px;
}

.hp-color-setting input[type="color"] {
    background: #fff;
    border: 1px solid #d5e1ea;
    border-radius: 6px;
    height: 42px;
    padding: 4px;
    width: 64px;
}

.hp-color-setting code {
    margin: 0;
}

body.healthcare-search-body .healthcare-search-actions > a i {
    font-size: 16px;
}

body.healthcare-search-body .healthcare-search-actions > a span {
    margin-left: 7px;
}

.healthcare-result-actions {
    align-items: stretch;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.healthcare-result-actions > .btn,
.healthcare-result-actions > .healthcare-phone-picker {
    margin: 0;
    min-width: 0;
    width: 100%;
}

.healthcare-result-actions > .healthcare-phone-picker > summary {
    width: 100%;
}

.healthcare-result-actions .btn > i,
.healthcare-result-actions .healthcare-phone-picker summary > i {
    margin-right: 7px;
}

.healthcare-result-actions > :only-child {
    grid-column: 1 / -1;
}

.hp-clinician-record-link{align-items:center;background:#fff;border:1px solid #c7dbe8;border-radius:6px;color:#0878c9;display:inline-flex;font-size:12px;font-weight:800;justify-content:center;min-height:38px;padding:8px 12px;text-decoration:none}.hp-clinical-record-shell{background:#eef6fb;min-height:100vh;padding:28px}.hp-clinical-record-head{align-items:center;background:#0b3d5c;color:#fff;display:grid;gap:20px;grid-template-columns:auto 1fr auto;margin:-28px -28px 24px;padding:22px 30px}.hp-clinical-record-head>a{color:#fff;display:inline-flex;gap:8px}.hp-clinical-record-head h1{color:#fff;margin:3px 0}.hp-clinical-record-head p,.hp-clinical-record-head span{margin:0;opacity:.82}.hp-clinical-record-head>i{font-size:32px}.hp-clinical-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.hp-clinical-panel{background:#fff;border:1px solid #cfdee8;border-radius:8px;padding:20px}.hp-clinical-panel>header{align-items:flex-start;border-bottom:1px solid #deE8ef;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:14px}.hp-clinical-panel>header h2{margin:0 0 4px}.hp-clinical-panel>header p{color:#60798a;margin:0}.hp-clinical-panel>header>i{color:#087f70;font-size:23px}.hp-allergy-list,.hp-clinical-documents,.hp-clinical-timeline{display:grid;gap:9px}.hp-allergy-list article{align-items:center;background:#fff8f3;border:1px solid #f0d1bd;border-left:4px solid #d46b35;border-radius:6px;display:grid;gap:12px;grid-template-columns:1fr auto auto;padding:12px}.hp-allergy-list article.is-inactive{filter:grayscale(1);opacity:.62}.hp-allergy-list article div{display:grid;gap:3px}.hp-allergy-list article span,.hp-allergy-list article small{color:#647b8b}.hp-allergy-list article em{background:#f6e8df;border-radius:999px;font-size:11px;font-style:normal;font-weight:800;padding:5px 8px}.hp-clinical-form{border-top:1px solid #dde8ef;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px;padding-top:16px}.hp-clinical-form label{display:grid;gap:5px}.hp-clinical-form label span{font-size:12px;font-weight:800}.hp-clinical-form input,.hp-clinical-form select{background:#fff;border:1px solid #bfd2df;border-radius:6px;min-height:42px;padding:8px 10px;width:100%}.hp-clinical-form button{align-self:end;min-height:42px}.hp-clinical-documents a{align-items:center;border:1px solid #d9e6ee;border-radius:6px;color:#173b55;display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:12px;text-decoration:none}.hp-clinical-documents a span{display:grid}.hp-clinical-documents small{color:#657d8c}.hp-clinical-timeline article{align-items:center;border-bottom:1px solid #e2ebf0;display:grid;gap:14px;grid-template-columns:150px 1fr auto;padding:12px 0}.hp-clinical-timeline article div{display:grid}.hp-clinical-timeline span,.hp-clinical-timeline time{color:#647b8b}.hp-clinical-timeline em{font-size:11px;font-style:normal;font-weight:800;text-transform:uppercase}.hp-clinical-empty{background:#f5f9fb;border-radius:6px;color:#657d8c;padding:16px}.hp-clinician-recurrence{align-items:end;background:#f4f9fb;border:1px solid #d4e4ec;border-radius:7px;display:grid!important;gap:12px;grid-template-columns:1fr 1fr;padding:14px}.hp-clinician-recurrence p{color:#60798a;grid-column:1/-1;margin:0}.hp-clinician-recurrence label{display:grid;gap:5px}
@media(max-width:767px){.hp-clinical-record-shell{padding:14px}.hp-clinical-record-head{grid-template-columns:1fr auto;margin:-14px -14px 14px;padding:16px}.hp-clinical-record-head>a{grid-column:1/-1}.hp-clinical-grid{grid-template-columns:1fr}.hp-clinical-panel{padding:15px}.hp-allergy-list article{grid-template-columns:1fr auto}.hp-allergy-list article form{grid-column:1/-1}.hp-clinical-form{grid-template-columns:1fr}.hp-clinical-timeline article{grid-template-columns:1fr}.hp-clinician-recurrence{grid-template-columns:1fr}}

/* Professional patient record: private practitioner notes and secure patient messaging. */
.hp-clinical-record-head {
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.hp-clinical-record-actions {
    display: flex;
    align-items: center;
    gap: 9px;
}

.hp-clinical-record-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 10px;
    padding: 9px 13px;
    color: #fff;
    background: rgba(255,255,255,.08);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.hp-clinical-record-actions a.is-primary {
    border-color: #fff;
    color: #0b4968;
    background: #fff;
}

.hp-clinical-action-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
    gap: 18px;
    margin-bottom: 18px;
}

.hp-clinical-action-panel {
    scroll-margin-top: 18px;
    border: 1px solid #cbdde8;
    border-radius: 14px;
    padding: 20px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(11, 61, 92, .06);
}

.hp-clinical-action-panel > header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px;
    margin-bottom: 16px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e0eaf0;
}

.hp-clinical-action-panel > header > div {
    min-width: 0;
}

.hp-clinical-action-panel > header p {
    margin: 0 0 3px;
    color: #078d82;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.hp-clinical-action-panel > header h2 {
    margin: 0 0 4px;
    color: #092f49;
    font-size: 21px;
}

.hp-clinical-action-panel > header small {
    display: block;
    color: #617b8c;
    line-height: 1.45;
}

.hp-clinical-action-panel > header em {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    padding: 6px 9px;
    color: #70550a;
    background: #fff5cf;
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
    white-space: nowrap;
}

.hp-clinical-action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    color: #087f70;
    background: #e5f7f3;
    font-size: 17px;
}

.hp-private-note-list {
    display: grid;
    gap: 10px;
    max-height: 330px;
    overflow: auto;
    padding-right: 3px;
}

.hp-private-note-list > article {
    border: 1px solid #e0dba9;
    border-left: 4px solid #c39b2a;
    border-radius: 9px;
    padding: 13px 14px;
    background: #fffdf3;
}

.hp-private-note-list > article > p {
    margin: 0;
    color: #253f50;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.hp-private-note-list > article > footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    color: #758795;
    font-size: 11px;
}

.hp-private-note-list > article > footer span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.hp-private-note-list form,
.hp-private-note-list form button {
    margin: 0;
}

.hp-private-note-list form button {
    border: 0;
    padding: 4px;
    color: #9b4646;
    background: transparent;
}

.hp-private-note-form,
.hp-patient-record-message-form {
    display: grid;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e1eaf0;
}

.hp-private-note-form label,
.hp-patient-record-message-form label {
    display: grid;
    gap: 7px;
    color: #173b55;
    font-size: 12px;
    font-weight: 800;
}

.hp-private-note-form textarea,
.hp-patient-record-message-form textarea {
    width: 100%;
    min-height: 112px;
    resize: vertical;
    border: 1px solid #bcd1df;
    border-radius: 10px;
    padding: 11px 12px;
    color: #173b55;
    background: #fff;
    font: inherit;
    line-height: 1.5;
}

.hp-private-note-form textarea:focus,
.hp-patient-record-message-form textarea:focus {
    border-color: #087f8c;
    outline: 3px solid rgba(8, 127, 140, .12);
}

.hp-private-note-form > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.hp-private-note-form > div small {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    max-width: 420px;
    color: #6d8291;
    line-height: 1.4;
}

.hp-private-note-form button,
.hp-patient-record-message-form button {
    min-height: 42px;
    border-radius: 9px;
    font-weight: 800;
}

.hp-patient-record-message-form aside {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border: 1px solid #f0d9a4;
    border-radius: 9px;
    padding: 10px;
    color: #76540f;
    background: #fffaf0;
    font-size: 12px;
    line-height: 1.45;
}

.hp-patient-record-message-form button {
    justify-self: end;
}

.hp-message-permission-notice {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #d8e4eb;
    border-radius: 10px;
    padding: 14px;
    color: #587183;
    background: #f5f9fb;
}

.hp-message-permission-notice span {
    display: grid;
    gap: 3px;
}

.hp-message-permission-notice strong {
    color: #173b55;
}

.hp-message-permission-notice small {
    line-height: 1.4;
}

.hp-private-note-list .hp-clinical-empty {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

@media (max-width: 980px) {
    .hp-clinical-record-head {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .hp-clinical-record-actions {
        grid-column: 1 / -1;
    }

    .hp-clinical-action-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .hp-clinical-record-head {
        grid-template-columns: 1fr;
    }

    .hp-clinical-record-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .hp-clinical-action-panel {
        border-radius: 11px;
        padding: 15px;
    }

    .hp-clinical-action-panel > header {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .hp-clinical-action-panel > header em {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .hp-private-note-form > div {
        align-items: stretch;
        flex-direction: column;
    }

    .hp-private-note-form button,
    .hp-patient-record-message-form button {
        justify-self: stretch;
        width: 100%;
    }
}

body.healthcare-search-body .healthcare-search-actions .hp-global-account-panel a,
.healthcare-booking-nav .hp-global-account-panel a {
    font-size: 13px;
    max-width: none;
    overflow: visible;
    text-overflow: clip;
}

body.healthcare-search-body .healthcare-search-actions .hp-global-account-panel a::before {
    content: none;
}

@media (max-width: 900px) {
    .hp-pro-product__header nav .hp-global-account-panel a {
        display: flex;
    }
}

.hp-clinician-recurrence{align-items:stretch;grid-template-columns:1fr}.hp-clinician-recurrence p{grid-column:auto}.hp-recurrence-options{display:grid;gap:12px;grid-template-columns:180px 180px 1fr}.hp-recurrence-weekdays{border:0;margin:0;padding:0}.hp-recurrence-weekdays legend{font-size:12px;font-weight:800;margin-bottom:5px}.hp-recurrence-weekdays>div{display:flex;flex-wrap:wrap;gap:6px}.hp-recurrence-weekdays label{display:block;position:relative}.hp-recurrence-weekdays input{height:1px;opacity:0;position:absolute;width:1px}.hp-recurrence-weekdays span{background:#fff;border:1px solid #bfd2df;border-radius:999px;cursor:pointer;display:block;font-size:11px;font-weight:800;padding:7px 10px}.hp-recurrence-weekdays input:checked+span{background:#087f70;border-color:#087f70;color:#fff}.hp-recurrence-weekdays input:focus-visible+span{outline:3px solid rgba(8,127,112,.25)}.hp-appointment-reminder-field{background:#f8fbfd;border:1px solid #d4e4ec;border-radius:7px;display:grid;gap:6px;padding:12px 14px}.hp-appointment-reminder-field small{color:#60798a}.hp-reminder-input{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(100px,180px) 1fr}.hp-reminder-input input{min-height:42px}.hp-reminder-input span{color:#526d7e;font-size:12px}
@media(max-width:767px){.hp-recurrence-options{grid-template-columns:1fr}.hp-recurrence-weekdays>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.hp-recurrence-weekdays span{text-align:center}}

@media (max-width: 767px) {
    body.hp-home-body {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body.hp-home-body #wrapper,
    body.hp-home-body #content,
    body.hp-home-body #content > .container,
    body.hp-home-body #content > .container > .row,
    body.hp-home-body #content > .container > .row > [class*="col-"],
    body.hp-home-body .healthcare-home-shell,
    body.hp-home-body .healthcare-home-nav {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body.hp-home-body .healthcare-home-shell,
    body.hp-home-body .healthcare-home-nav {
        top: 0;
    }

    body.hp-home-body .healthcare-home-nav {
        height: 64px !important;
        min-height: 64px !important;
        padding: 0 !important;
    }

    body.hp-home-body .healthcare-home-nav .container {
        align-items: center;
        display: flex !important;
        justify-content: flex-end !important;
        height: 64px;
        min-height: 64px;
        padding-bottom: 0 !important;
        padding-top: 0 !important;
        position: relative;
        width: calc(100% - 24px);
    }

    body.hp-home-body .healthcare-home-brand {
        align-items: center;
        height: 36px;
        line-height: 0;
        left: 50% !important;
        padding: 0 !important;
        position: absolute !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: 112px;
    }

    body.hp-home-body .healthcare-home-brand .hp-brand-logo,
    body.hp-home-body .healthcare-home-brand .hp-brand-logo svg {
        display: block;
        height: 32px;
        width: 112px;
    }

    body.hp-home-body .healthcare-home-nav-links {
        align-items: center;
        align-self: center;
        display: flex !important;
        height: 40px;
        margin-left: auto;
        min-width: 0;
        overflow: visible;
        position: relative;
        width: auto;
        z-index: 2;
    }

    body.hp-home-body .healthcare-home-nav-links > .btn {
        align-items: center;
        display: inline-flex;
        font-size: 11px;
        height: 40px;
        justify-content: center;
        line-height: 1;
        margin: 0;
        max-width: 74px;
        min-width: 0;
        overflow: hidden;
        padding: 0 8px;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 74px;
    }

    body.healthcare-search-body .healthcare-search-actions > a {
        border: 1px solid rgba(255, 255, 255, .35);
        border-radius: 50%;
        font-size: 0;
        height: 36px;
        padding: 0;
        width: 36px;
    }

    body.healthcare-search-body .healthcare-search-actions > a::before {
        content: none;
    }

    body.healthcare-search-body .healthcare-search-actions > a span {
        display: none;
    }

    .healthcare-result-actions {
        gap: 6px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .healthcare-result-actions .btn,
    .healthcare-result-actions .healthcare-phone-picker summary {
        font-size: 12px;
        min-height: 38px;
        padding-left: 8px;
        padding-right: 8px;
    }
}

.hp-public-action-shell{background:#eef6fb;min-height:100vh;padding:32px 18px}.hp-public-action-brand{display:block;margin:0 auto 22px;max-width:640px}.hp-public-action-brand .hp-brand-logo{height:38px;width:170px}.hp-public-action-card{background:#fff;border:1px solid #d4e2ec;border-radius:8px;box-shadow:0 14px 38px rgba(11,39,64,.08);margin:0 auto;max-width:640px;padding:28px}.hp-public-action-card h1{color:#0b2740;font-size:28px;margin:4px 0 9px}.hp-public-action-card>p{color:#617786}.hp-public-action-card form{display:grid;gap:15px;margin-top:22px}.hp-public-action-card label{display:grid;gap:6px}.hp-public-action-card label>span{color:#233f56;font-size:12px;font-weight:800}.hp-public-action-card input,.hp-public-action-card textarea{background:#fff;border:1px solid #bdd0dd;border-radius:6px;min-height:44px;padding:10px 12px;width:100%}.hp-public-action-card textarea{resize:vertical}.hp-public-action-card button{align-items:center;display:inline-flex;gap:8px;justify-content:center;min-height:44px}.hp-public-action-card>small{color:#647b8b;display:block;margin-top:16px}.hp-public-action-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.hp-public-action-card .healthcare-disclaimer{margin-top:20px}.healthcare-result-claim{background:transparent;border:0;color:#0876c9;display:inline-flex;font-size:12px;font-weight:800;gap:6px;padding:8px 0;text-decoration:none}.healthcare-result-claim:hover,.healthcare-result-claim:focus{text-decoration:underline}

@media(max-width:600px){.hp-public-action-shell{padding:20px 12px}.hp-public-action-card{padding:20px 16px}.hp-public-action-grid{grid-template-columns:1fr}}
.hp-public-action-shell--split{padding:0}.hp-public-action-top{padding:32px 18px}
@media(max-width:600px){.hp-public-action-top{padding:20px 12px}}

.hp-form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.hp-public-requests-panel{margin:0 0 18px;background:#fff;border:1px solid #cbdbea;border-radius:8px;padding:18px}.hp-public-requests-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.hp-public-requests-head h2{margin:2px 0 0;font-size:22px}.hp-public-requests-head>span{display:grid;place-items:center;min-width:36px;height:36px;border-radius:50%;background:#e9f5ff;color:#075e9d;font-weight:800}.hp-public-requests-list{display:grid;gap:10px;margin-top:14px}.hp-public-request{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto;gap:18px;align-items:center;border:1px solid #dbe6ef;border-left:4px solid #1683cf;border-radius:6px;padding:14px}.hp-public-request.is-contacted{border-left-color:#0b927d}.hp-public-request.is-declined,.hp-public-request.is-closed{border-left-color:#9aaabd;opacity:.78}.hp-public-request small,.hp-public-request p{display:block;margin:4px 0;color:#536b82}.hp-public-request-contact{display:grid;gap:5px;min-width:0}.hp-public-request-contact a{overflow-wrap:anywhere}.hp-public-request-contact i{width:18px}.hp-public-request-actions{display:grid;justify-items:end;gap:7px}.hp-public-request-actions form{display:flex;gap:6px}.hp-public-request-actions span{font-size:12px;font-weight:800;text-transform:uppercase;color:#536b82}.hp-public-requests-note{margin:14px 0 0;color:#536b82;font-size:13px}.hp-public-requests-note i{margin-right:7px}@media(max-width:900px){.hp-public-request{grid-template-columns:1fr}.hp-public-request-actions{justify-items:start}}
.hp-stripe-setup{margin:0 0 22px;padding:22px;border:1px solid #c9dde7;border-radius:8px;background:#fff}.hp-stripe-setup>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.hp-stripe-setup h2{margin:3px 0 6px}.hp-stripe-setup header p{margin:0;color:#667b89}.hp-stripe-checklist{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.hp-stripe-checklist>div{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #dae5eb;border-radius:6px;background:#f8fafb}.hp-stripe-checklist>div.is-ready{border-color:#a9ded2;background:#effaf7}.hp-stripe-checklist i{margin-top:3px;color:#8ca0ad}.hp-stripe-checklist .is-ready i{color:#078675}.hp-stripe-checklist span{display:grid;gap:3px}.hp-stripe-checklist small{color:#687f8e}.hp-stripe-checklist a{margin-left:auto;white-space:nowrap}.hp-stripe-field{display:grid;gap:6px;margin:12px 0}.hp-stripe-field>span,.hp-stripe-prices span{font-weight:700}.hp-stripe-field>div{display:flex}.hp-stripe-field input,.hp-stripe-prices input{width:100%;min-height:42px;padding:9px 11px;border:1px solid #c9dbe5;border-radius:6px;background:#fff}.hp-stripe-field>div input{border-radius:6px 0 0 6px}.hp-stripe-field>div button{border-radius:0 6px 6px 0}.hp-stripe-field small{color:#6c818f}.hp-stripe-prices{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:16px 0}.hp-stripe-prices label{display:grid;gap:6px}.hp-billing-notice{display:flex;gap:12px;margin-bottom:16px;padding:15px;border:1px solid #cddde6;border-radius:7px;background:#f4f8fa}.hp-billing-notice.is-success{border-color:#a5dccf;background:#effaf7}.hp-billing-notice i{margin-top:2px;color:#087f70}.hp-billing-notice p{margin:3px 0 0;color:#5e7483}.hp-pro-upgrade{margin-top:20px;padding:24px;border:1px solid #d5e3eb;border-radius:8px;background:#f7fafb}.hp-pro-upgrade__head h2{margin:4px 0 7px}.hp-pro-upgrade__head>p:last-child{color:#5f7482}.hp-pro-upgrade__plans{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.hp-pro-upgrade__plans article{display:flex;flex-direction:column;padding:20px;border:1px solid #d1e0e8;border-radius:7px;background:#fff}.hp-pro-upgrade__plans article>span{color:#087f70;font-size:11px;font-weight:800;text-transform:uppercase}.hp-pro-upgrade__plans h3{margin:8px 0}.hp-pro-upgrade__plans article>strong{font-size:26px}.hp-pro-upgrade__plans article>strong small{font-size:12px;color:#6a7f8d}.hp-pro-upgrade__plans article>p{flex:1;color:#5e7483}.hp-pro-upgrade__plans form,.hp-pro-upgrade__plans button{width:100%}.hp-pro-upgrade__plans button:disabled{opacity:.55;cursor:not-allowed}.hp-pro-upgrade__security{display:flex;align-items:center;gap:8px;margin:16px 0 0;color:#5c7281;font-size:12px}.hp-pro-upgrade__security i{color:#087f70}@media(max-width:850px){.hp-stripe-checklist{grid-template-columns:1fr}.hp-pro-upgrade__plans{grid-template-columns:1fr}}@media(max-width:600px){.hp-stripe-setup>header{flex-direction:column}.hp-stripe-prices{grid-template-columns:1fr}.hp-stripe-checklist a{margin:8px 0 0}.hp-pro-upgrade{padding:18px 14px}}

/* Professional acquisition: compact, calm and conversion-focused. */
.hp-account-register-main{display:grid;gap:28px;margin:0 auto;max-width:920px;padding:64px 24px 80px}.hp-account-register-intro{margin:0 auto;max-width:680px;text-align:center}.hp-account-register-intro h1{color:#08233f;font-size:38px;line-height:1.12;margin:8px 0 12px}.hp-account-register-intro>p:last-child{color:#587286;font-size:17px;line-height:1.55;margin:0}.hp-account-register-options{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.hp-account-register-card{background:#fff;border:1px solid #cadde9;border-radius:8px;box-shadow:0 16px 38px rgba(8,35,63,.08);display:grid;gap:18px;grid-template-rows:auto 1fr auto;padding:26px}.hp-account-register-card.is-professional{border-top:4px solid #0f8f8a;padding-top:23px}.hp-account-register-icon{align-items:center;background:#e5f5fb;border-radius:8px;color:#0878c9;display:inline-flex;font-size:23px;height:48px;justify-content:center;width:48px}.hp-account-register-card.is-professional .hp-account-register-icon{background:#e4f6f1;color:#087d70}.hp-account-register-card h2{color:#08233f;font-size:23px;margin:0 0 8px}.hp-account-register-card p{color:#587286;line-height:1.5;margin:0}.hp-account-register-card .hp-pro-primary{align-items:center;display:flex;gap:10px;justify-content:space-between;text-decoration:none}.hp-account-register-disabled{background:#f4f7f9;border-radius:6px;color:#718695;display:block;padding:12px}.hp-account-register-login{color:#60788a;margin:0;text-align:center}.hp-account-register-login a{font-weight:850}@media(max-width:700px){.hp-account-register-main{gap:20px;padding:34px 14px 48px}.hp-account-register-intro{text-align:left}.hp-account-register-intro h1{font-size:28px}.hp-account-register-intro>p:last-child{font-size:15px}.hp-account-register-options{grid-template-columns:minmax(0,1fr)}.hp-account-register-card{gap:14px;padding:20px}.hp-account-register-card.is-professional{padding-top:17px}}

.hp-professional-register-shell{background:#eef6fb}.hp-professional-register-shell .hp-pro-auth-header{max-width:1120px;padding:24px 20px}.hp-professional-register-main{align-items:start;gap:22px;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);max-width:1120px;padding:30px 20px 56px}.hp-professional-register-main>.hp-pro-auth-card{border-color:#cbdce8;border-radius:8px;box-shadow:0 16px 38px rgba(11,39,64,.08);padding:34px 38px}.hp-professional-register-main>.hp-pro-auth-card h1{font-size:34px;letter-spacing:0;line-height:1.12;margin-bottom:10px}.hp-professional-register-main .hp-pro-auth-lead{font-size:15px;line-height:1.55;margin-bottom:18px}.hp-professional-register-steps{align-items:center;background:#f5f9fc;border:1px solid #d9e6ee;border-radius:7px;display:grid;gap:8px;grid-template-columns:1fr auto 1fr auto 1fr;margin:0 0 22px;padding:11px 13px}.hp-professional-register-steps span{align-items:center;color:#486477;display:flex;font-size:12px;font-weight:700;gap:7px;white-space:nowrap}.hp-professional-register-steps b{align-items:center;background:#dff5f0;border-radius:50%;color:#087d70;display:inline-flex;flex:0 0 24px;height:24px;justify-content:center}.hp-professional-register-steps i{color:#9aafbc;font-size:10px}.hp-professional-register-form{gap:15px}.hp-professional-register-form .hp-pro-field{gap:6px}.hp-professional-register-form .hp-pro-field>span{font-size:13px}.hp-professional-register-form .hp-pro-field>span small{color:#78909f;font-size:11px;font-weight:500}.hp-professional-register-form input{border-color:#b9cedc;border-radius:6px;min-height:48px}.hp-professional-register-form .hp-pro-primary{border-radius:6px;margin-top:4px;min-height:50px}.hp-professional-register-main .hp-pro-security-copy{background:#f5fafc;border-color:#d4e4ec;border-radius:7px;font-size:12px;line-height:1.5;margin-top:18px;padding:13px 14px}.hp-professional-register-main>.hp-pro-auth-aside{align-self:start;background:#0b6575;border-radius:8px;box-shadow:0 16px 38px rgba(11,39,64,.10);min-height:0;padding:34px;position:sticky;top:20px}.hp-professional-register-main>.hp-pro-auth-aside h2{font-size:30px;letter-spacing:0;line-height:1.12}.hp-professional-register-main>.hp-pro-auth-aside>div>p:last-child{font-size:15px;line-height:1.55}.hp-professional-register-main>.hp-pro-auth-aside ul{gap:14px;margin:26px 0}.hp-professional-register-main>.hp-pro-auth-aside li{line-height:1.4}.hp-professional-register-main .hp-public-plan-list{border-top-color:rgba(255,255,255,.25);margin-top:24px;padding-top:22px}.hp-professional-register-main .hp-public-plan-list article{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28);border-radius:6px}.hp-professional-register-main .hp-public-plan-list>p{font-size:12px;line-height:1.5}.healthcare-home-professional-sticky{display:none!important}
@media(max-width:900px){.hp-professional-register-main{grid-template-columns:1fr;max-width:720px}.hp-professional-register-main>.hp-pro-auth-aside{position:static;width:100%}}
@media(max-width:600px){.hp-professional-register-shell .hp-pro-auth-header{padding:16px}.hp-professional-register-main{padding:16px 12px 34px}.hp-professional-register-main>.hp-pro-auth-card,.hp-professional-register-main>.hp-pro-auth-aside{padding:22px 18px}.hp-professional-register-main>.hp-pro-auth-card h1{font-size:28px}.hp-professional-register-steps{grid-template-columns:1fr;gap:7px}.hp-professional-register-steps i{display:none}.hp-professional-register-steps span{white-space:normal}.hp-professional-register-main>.hp-pro-auth-aside h2{font-size:26px}}

/* Minimal professional registration: labels guide the form; supporting copy stays quiet. */
.hp-professional-register-main {
    align-items: stretch;
    gap: 22px;
    grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
    max-width: 1080px;
    padding-top: 28px;
}

.hp-professional-register-main > .hp-pro-auth-card {
    padding: 28px 30px;
}

.hp-professional-register-main > .hp-pro-auth-card h1 {
    font-size: 31px;
    margin: 0 0 8px;
}

.hp-professional-register-main .hp-pro-auth-lead {
    color: #587286;
    margin: 0 0 18px;
    max-width: 620px;
}

.hp-professional-register-steps {
    background: transparent;
    border: 0;
    border-bottom: 1px solid #d9e6ee;
    border-radius: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 18px;
    padding: 0 0 12px;
}

.hp-professional-register-steps span {
    color: #536f81;
}

.hp-professional-register-panel {
    gap: 13px;
}

.hp-professional-register-time {
    align-items: center;
    color: #607b8d;
    display: flex;
    font-size: 12px;
    gap: 7px;
    margin: -7px 0 18px;
}

.hp-professional-register-time i {
    color: #087d70;
}

.hp-professional-register-main .hp-pro-security-copy {
    align-items: flex-start;
    display: flex;
    gap: 9px;
}

.hp-professional-register-main .hp-pro-security-copy i {
    color: #087d70;
    margin-top: 2px;
}

.hp-professional-register-main > .hp-professional-register-aside {
    align-self: stretch;
    display: flex;
    flex-direction: column;
    padding: 30px;
    position: static;
}

.hp-professional-register-main > .hp-professional-register-aside h2 {
    font-size: 27px;
    margin: 5px 0 10px;
}

.hp-professional-register-main > .hp-professional-register-aside > div > p:last-child {
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 1.55;
    margin: 0;
}

.hp-professional-register-benefits {
    display: grid;
    gap: 12px;
    margin: 24px 0 4px !important;
    padding: 0;
}

.hp-professional-register-benefits li {
    align-items: center;
    display: flex;
    gap: 11px;
}

.hp-professional-register-benefits li i {
    align-items: center;
    background: rgba(255, 255, 255, .13);
    border-radius: 7px;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.hp-professional-register-main .hp-public-plan-list {
    margin-top: auto;
    padding-top: 16px;
}

.hp-professional-register-main .hp-public-plan-list h3 {
    color: #fff;
    font-size: 13px;
    margin: 0 0 10px;
}

.hp-professional-register-main .hp-public-plan-list article {
    padding: 12px;
}

.hp-professional-register-main .hp-public-plan-list article > strong {
    font-size: 14px;
}

.hp-professional-register-main .hp-public-plan-list > p {
    color: rgba(255, 255, 255, .74);
    margin: 12px 0 0;
}

@media (max-width: 900px) {
    .hp-professional-register-main {
        grid-template-columns: minmax(0, 1fr);
        max-width: 680px;
    }

    .hp-professional-register-main > .hp-professional-register-aside {
        min-height: 0;
    }
}

@media (max-width: 600px) {
    .hp-professional-register-main > .hp-pro-auth-card,
    .hp-professional-register-main > .hp-professional-register-aside {
        padding: 22px 18px;
    }

    .hp-professional-register-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hp-professional-register-steps span {
        display: flex !important;
        white-space: nowrap;
    }
}

/* Patient login keeps the Pro authentication palette with a simpler care-focused flow. */
.hp-patient-auth-shell {
    background:
        radial-gradient(circle at 82% 18%, rgba(40, 180, 183, .12), transparent 30%),
        #eef6fb;
}

.hp-patient-auth-shell .hp-pro-auth-header {
    max-width: 1080px;
    padding-top: 24px;
}

.hp-patient-auth-shell .hp-pro-auth-main {
    align-items: stretch;
    grid-template-columns: minmax(360px, 520px) minmax(300px, 390px);
    max-width: 1080px;
    padding-top: 58px;
}

.hp-patient-auth-shell .hp-pro-auth-card {
    border-color: #c7dce8;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(8, 35, 63, .09);
    padding: 40px;
}

.hp-patient-auth-shell .hp-pro-auth-aside {
    background: #0b6575;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 18px 46px rgba(8, 35, 63, .11);
    padding: 38px;
}

.hp-patient-auth-shell .hp-pro-auth-aside .hp-pro-kicker {
    color: #b9f1e7;
}

.hp-patient-auth-shell .hp-pro-auth-aside li i {
    border-radius: 7px;
}

.hp-patient-auth-shell .hp-pro-form {
    gap: 16px;
}

.hp-patient-auth-shell .hp-pro-primary {
    background: #0b2239;
    border-color: #0b2239;
    border-radius: 6px;
}

.hp-patient-auth-shell .hp-pro-field input {
    border-radius: 6px;
}

.hp-patient-auth-shell .hp-pro-register-prompt {
    border-top: 1px solid #deebf1;
    margin-top: 2px;
    padding-top: 18px;
}

@media (max-width: 980px) {
    .hp-patient-auth-shell .hp-pro-auth-main {
        grid-template-columns: minmax(0, 640px);
        max-width: 720px;
        padding-top: 34px;
    }

    .hp-patient-auth-shell .hp-pro-auth-aside {
        min-height: 250px;
    }
}

@media (max-width: 640px) {
    .hp-patient-auth-shell .hp-pro-auth-header {
        align-items: center;
        flex-direction: row;
        padding: 16px 14px 0;
    }

    .hp-patient-auth-shell .hp-pro-auth-header nav {
        margin-left: auto;
        overflow: visible;
        padding: 0;
        width: auto;
    }

    .hp-patient-auth-shell .hp-pro-auth-header nav a:not(:first-child) {
        display: none;
    }

    .hp-patient-auth-shell .hp-pro-auth-header nav a {
        align-items: center;
        border: 1px solid #bfd6e4;
        border-radius: 6px;
        display: inline-flex;
        min-height: 40px;
        padding: 0 12px;
    }

    .hp-patient-auth-shell .hp-pro-auth-main {
        gap: 14px;
        padding: 22px 12px 34px;
    }

    .hp-patient-auth-shell .hp-pro-auth-card {
        border-radius: 8px;
        padding: 24px 18px;
    }

    .hp-patient-auth-shell .hp-pro-auth-card h1 {
        font-size: 28px;
    }

    .hp-patient-auth-shell .hp-pro-auth-lead {
        font-size: 14px;
        margin-bottom: 22px;
    }

    .hp-patient-auth-shell .hp-pro-auth-aside {
        border-radius: 8px;
        min-height: 0;
        padding: 24px 20px;
    }

    .hp-patient-auth-shell .hp-pro-auth-aside h2 {
        font-size: 24px;
    }

    .hp-patient-auth-shell .hp-pro-auth-aside ul {
        gap: 10px;
        margin-top: 20px;
    }

    .hp-patient-auth-shell .hp-pro-auth-aside li {
        font-size: 14px;
    }

    .hp-patient-auth-shell .hp-pro-security-copy {
        font-size: 12px;
    }
}
/* Professional acquisition */
.hp-pro-product,.hp-professional-contact{--hp-pro-ink:#082943;--hp-pro-blue:#147fc4;--hp-pro-teal:#087f78;--hp-pro-pale:#eef7fb;--hp-pro-border:#cfe0ea;color:var(--hp-pro-ink);font-family:Inter,system-ui,sans-serif;min-height:100vh;background:#fff}.hp-pro-product *,.hp-professional-contact *{box-sizing:border-box}.hp-pro-product__header,.hp-professional-contact>header{height:72px;max-width:1180px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.hp-pro-product__header nav,.hp-professional-contact>header nav{display:flex;align-items:center;gap:24px}.hp-pro-product__header nav a,.hp-professional-contact>header nav a{color:var(--hp-pro-ink);font-weight:700;text-decoration:none}.hp-pro-product__nav-cta{background:var(--hp-pro-ink)!important;color:#fff!important;padding:12px 18px;border-radius:6px}.hp-pro-product main{overflow:hidden}.hp-pro-product__hero{min-height:610px;background:linear-gradient(105deg,#e9f7fb 0,#f5fbfd 54%,#dceff5 100%);display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);align-items:center;gap:64px;padding:72px max(24px,calc((100vw - 1120px)/2))}.hp-pro-product__hero-copy{max-width:620px}.hp-pro-kicker{color:var(--hp-pro-teal);font-size:13px;font-weight:800;text-transform:uppercase;margin:0 0 12px}.hp-pro-product h1{font-size:52px;line-height:1.05;margin:0 0 22px;letter-spacing:0}.hp-pro-product__lead{font-size:20px;line-height:1.55;margin:0 0 28px;color:#31566d}.hp-pro-product__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hp-pro-product .hp-pro-primary,.hp-professional-contact .hp-pro-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 20px;border:0;border-radius:6px;background:var(--hp-pro-ink);color:#fff;font-weight:800;text-decoration:none}.hp-pro-product .hp-pro-secondary,.hp-professional-contact .hp-pro-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid #9fbbc9;border-radius:6px;background:#fff;color:var(--hp-pro-ink);font-weight:800;text-decoration:none}.hp-pro-product__trust{display:flex;gap:18px;flex-wrap:wrap;padding:0;margin:24px 0 0;list-style:none;font-size:13px;color:#31566d}.hp-pro-product__trust i{color:var(--hp-pro-teal);margin-right:6px}.hp-pro-product__preview{position:relative;background:#fff;border:1px solid var(--hp-pro-border);box-shadow:0 24px 70px rgba(8,41,67,.16);border-radius:8px;padding:18px;min-height:390px}.hp-pro-product__preview-top{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--hp-pro-border);padding-bottom:16px}.hp-pro-product__preview-top>span{width:34px;height:34px;border-radius:6px;background:var(--hp-pro-teal)}.hp-pro-product__preview-top small{margin-left:auto;color:#628094}.hp-pro-product__preview-body{display:grid;grid-template-columns:44px 1fr;height:246px;padding-top:16px}.hp-pro-product__preview-body aside{display:grid;color:#7890a0;font-size:12px}.hp-pro-product__calendar{position:relative;border-left:1px solid var(--hp-pro-border);background:repeating-linear-gradient(to bottom,#fff 0,#fff 48px,#dce8ee 49px)}.hp-pro-product__calendar div{position:absolute;left:18px;width:72%;height:62px;padding:9px 12px;border-left:4px solid;border-radius:6px;display:flex;flex-direction:column}.hp-pro-product__calendar span{font-size:12px;margin-top:4px}.hp-pro-product__calendar .is-green{top:18px;background:#dff3d7;border-color:#54a934}.hp-pro-product__calendar .is-blue{top:100px;left:29%;background:#d8ebf9;border-color:#2581c4}.hp-pro-product__calendar .is-yellow{top:174px;background:#fff0c9;border-color:#e5a218}.hp-pro-product__preview-stat{position:absolute;right:-24px;bottom:-30px;width:270px;background:var(--hp-pro-ink);color:#fff;border-radius:8px;padding:18px;display:flex;gap:14px;box-shadow:0 14px 35px rgba(8,41,67,.22)}.hp-pro-product__preview-stat i{font-size:22px}.hp-pro-product__preview-stat span{display:flex;flex-direction:column}.hp-pro-product__preview-stat small{opacity:.75;margin-top:4px}.hp-pro-product__proof{max-width:1120px;margin:0 auto;padding:44px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-bottom:1px solid var(--hp-pro-border)}.hp-pro-product__proof>div{display:flex;align-items:center;gap:14px}.hp-pro-product__proof i{font-size:22px;color:var(--hp-pro-teal)}.hp-pro-product__proof span{display:flex;flex-direction:column}.hp-pro-product__proof small{color:#628094;margin-top:4px}.hp-pro-product__section{max-width:1120px;margin:0 auto;padding:88px 24px}.hp-pro-product__section--tinted{max-width:none;background:var(--hp-pro-pale);padding-left:max(24px,calc((100vw - 1072px)/2));padding-right:max(24px,calc((100vw - 1072px)/2))}.hp-pro-product__section-heading{max-width:720px;margin-bottom:38px}.hp-pro-product__section-heading h2,.hp-pro-product__final h2{font-size:38px;line-height:1.15;margin:0 0 14px;letter-spacing:0}.hp-pro-product__section-heading>p:last-child{font-size:17px;color:#537084;line-height:1.6}.hp-pro-product__feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.hp-pro-product__feature-grid article{border:1px solid var(--hp-pro-border);border-radius:8px;padding:26px;min-height:210px}.hp-pro-product__feature-grid i{font-size:23px;color:var(--hp-pro-teal);width:44px;height:44px;background:#e5f7f4;border-radius:6px;display:flex;align-items:center;justify-content:center}.hp-pro-product__feature-grid h3{font-size:18px;margin:22px 0 10px}.hp-pro-product__feature-grid p{color:#587589;line-height:1.55}.hp-pro-product__inline-cta{margin-top:28px;padding:24px 26px;background:var(--hp-pro-ink);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:24px}.hp-pro-product__inline-cta>div{display:flex;flex-direction:column}.hp-pro-product__inline-cta span{opacity:.78;margin-top:5px}.hp-pro-product__inline-cta .hp-pro-primary{background:#fff;color:var(--hp-pro-ink)}.hp-pro-product__steps{display:grid;grid-template-columns:repeat(3,1fr);padding:0;gap:28px;list-style:none}.hp-pro-product__steps li{display:flex;gap:16px}.hp-pro-product__steps>li>span{flex:0 0 38px;height:38px;background:var(--hp-pro-teal);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800}.hp-pro-product__steps h3{margin:4px 0 8px;font-size:19px}.hp-pro-product__steps p{color:#587589;line-height:1.55}.hp-pro-product__plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.hp-pro-product__plans article{position:relative;border:1px solid var(--hp-pro-border);border-radius:8px;padding:28px;display:flex;flex-direction:column}.hp-pro-product__plans article.is-featured{border:2px solid var(--hp-pro-teal);padding:27px}.hp-pro-product__recommended{position:absolute;top:-13px;left:22px;background:var(--hp-pro-teal);color:#fff;padding:5px 10px;border-radius:4px;font-size:12px;font-weight:800}.hp-pro-product__plans h3{font-size:22px;margin:0 0 10px}.hp-pro-product__plans>article>p{color:#587589;min-height:48px}.hp-pro-product__price{margin:20px 0 4px}.hp-pro-product__price strong{font-size:30px}.hp-pro-product__price span{color:#628094}.hp-pro-product__trial{color:var(--hp-pro-teal);font-weight:700}.hp-pro-product__plans ul{list-style:none;padding:0;margin:24px 0;flex:1}.hp-pro-product__plans li{margin:11px 0;color:#31566d}.hp-pro-product__plans li i{color:var(--hp-pro-teal);margin-right:9px}.hp-pro-product__faq>div:last-child{border-top:1px solid var(--hp-pro-border)}.hp-pro-product__faq details{border-bottom:1px solid var(--hp-pro-border);padding:20px 4px}.hp-pro-product__faq summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between}.hp-pro-product__faq details p{max-width:760px;color:#587589;line-height:1.6}.hp-pro-product__final{max-width:1120px;margin:0 auto 80px;padding:54px;background:var(--hp-pro-ink);color:#fff;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:40px}.hp-pro-product__final>div:first-child{max-width:680px}.hp-pro-product__final .hp-pro-kicker{color:#79d8cf}.hp-pro-product__final p{color:#c6d9e5}.hp-pro-product__final .hp-pro-primary{background:#fff;color:var(--hp-pro-ink)}.hp-pro-product__footer{max-width:1120px;margin:0 auto 90px;padding:24px;border-top:1px solid var(--hp-pro-border);display:flex;justify-content:space-between;align-items:center;color:#668194}.hp-pro-product__footer a{color:var(--hp-pro-ink);font-weight:700}.hp-pro-product__sticky{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:100;width:min(680px,calc(100% - 32px));background:#fff;border:1px solid var(--hp-pro-border);box-shadow:0 10px 35px rgba(8,41,67,.18);border-radius:8px;padding:10px 12px 10px 18px;display:flex;align-items:center;gap:16px}.hp-pro-product__sticky span{font-weight:700;margin-right:auto}.hp-pro-product__sticky>a:not(.hp-pro-primary){font-weight:700;color:var(--hp-pro-ink)}
.hp-professional-contact{background:var(--hp-pro-pale)}.hp-professional-contact main{max-width:1050px;margin:0 auto;padding:70px 24px 100px;display:grid;grid-template-columns:.8fr 1.2fr;gap:32px;align-items:start}.hp-professional-contact__intro{padding:36px 24px 36px 0}.hp-professional-contact h1{font-size:42px;line-height:1.1;margin:0 0 18px;letter-spacing:0}.hp-professional-contact__intro>p:nth-of-type(2){font-size:18px;color:#537084;line-height:1.6;margin-bottom:34px}.hp-professional-contact__intro>div{display:flex;gap:14px;margin:22px 0}.hp-professional-contact__intro i{width:38px;height:38px;border-radius:6px;background:#dff4f1;color:var(--hp-pro-teal);display:flex;align-items:center;justify-content:center}.hp-professional-contact__intro span{display:flex;flex-direction:column}.hp-professional-contact__intro small{color:#668194;margin-top:4px;line-height:1.45}.hp-professional-contact__form,.hp-professional-contact__success{background:#fff;border:1px solid var(--hp-pro-border);border-radius:8px;padding:34px;box-shadow:0 14px 45px rgba(8,41,67,.08)}.hp-professional-contact__form h2{margin-top:0}.hp-professional-contact__form>p{color:#668194}.hp-professional-contact__form form>label,.hp-professional-contact__grid label{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;font-weight:700}.hp-professional-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hp-professional-contact input,.hp-professional-contact select,.hp-professional-contact textarea{width:100%;border:1px solid #a9c2d0;border-radius:6px;padding:12px 13px;background:#fff;color:var(--hp-pro-ink);font:inherit}.hp-professional-contact textarea{resize:vertical}.hp-professional-contact__form button{width:100%;font:inherit;cursor:pointer}.hp-professional-contact__consent{display:flex;align-items:flex-start;gap:8px;color:#668194;line-height:1.45;margin-top:14px}.hp-professional-contact__success{grid-column:1/-1;max-width:680px;margin:70px auto;text-align:center;padding:52px}.hp-professional-contact__success>i{font-size:56px;color:var(--hp-pro-teal)}.hp-professional-contact__success h1{margin-top:8px}.hp-professional-contact__success>p{color:#587589;font-size:17px}.hp-professional-contact__success>div:not(.hp-pro-product__actions){display:inline-flex;flex-direction:column;background:var(--hp-pro-pale);padding:14px 30px;border-radius:6px;margin:20px}.hp-professional-contact__success .hp-pro-product__actions{justify-content:center}
.hp-professional-inquiry-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px;border:1px solid #dbe6ed;border-radius:6px;margin-bottom:9px;color:#183b52}.hp-professional-inquiry-row:hover,.hp-professional-inquiry-row.is-active{background:#eff8fb;text-decoration:none}.hp-professional-inquiry-row>span:first-child{display:flex;flex-direction:column}.hp-professional-inquiry-row small{color:#6b8291;margin-top:4px}.hp-professional-inquiry-detail dl{display:grid;grid-template-columns:150px 1fr;gap:8px 16px;margin:20px 0}.hp-professional-inquiry-detail dd{margin:0}.hp-professional-inquiry-message{padding:18px;background:#f3f8fa;border-left:3px solid #14857e;margin:20px 0;white-space:normal}
@media(max-width:900px){.hp-pro-product__header nav a:not(.hp-pro-product__nav-cta),.hp-professional-contact>header nav a:first-child{display:none}.hp-pro-product__hero{grid-template-columns:1fr;padding-top:52px}.hp-pro-product__preview{max-width:620px}.hp-pro-product__proof,.hp-pro-product__feature-grid,.hp-pro-product__plans{grid-template-columns:1fr 1fr}.hp-pro-product__steps{grid-template-columns:1fr}.hp-professional-contact main{grid-template-columns:1fr}.hp-professional-contact__intro{padding-bottom:0}}
@media(max-width:620px){.hp-pro-product__header,.hp-professional-contact>header{height:62px;padding:0 16px}.hp-pro-product__header nav,.hp-professional-contact>header nav{gap:8px}.hp-pro-product__nav-cta{padding:10px 12px;font-size:12px}.hp-pro-product__hero{min-height:0;padding:46px 18px 56px;gap:42px}.hp-pro-product h1{font-size:36px}.hp-pro-product__lead{font-size:17px}.hp-pro-product__actions>a{width:100%}.hp-pro-product__trust{display:grid;gap:9px}.hp-pro-product__preview{min-height:350px;padding:12px}.hp-pro-product__preview-stat{right:12px;bottom:-24px;width:calc(100% - 24px)}.hp-pro-product__proof,.hp-pro-product__feature-grid,.hp-pro-product__plans{grid-template-columns:1fr}.hp-pro-product__proof{padding:40px 18px}.hp-pro-product__section{padding:64px 18px}.hp-pro-product__section-heading h2,.hp-pro-product__final h2{font-size:30px}.hp-pro-product__feature-grid article{min-height:0}.hp-pro-product__inline-cta,.hp-pro-product__final{flex-direction:column;align-items:flex-start}.hp-pro-product__inline-cta .hp-pro-primary{width:100%}.hp-pro-product__final{margin:0 18px 70px;padding:30px 24px}.hp-pro-product__footer{margin:0 18px 100px;padding:20px 0;flex-wrap:wrap;gap:12px}.hp-pro-product__sticky{bottom:8px;padding:8px}.hp-pro-product__sticky span{display:none}.hp-pro-product__sticky>a{flex:1;text-align:center;font-size:12px}.hp-pro-product__sticky .hp-pro-primary{min-height:40px;padding:0 10px}.hp-professional-contact main{padding:38px 16px 70px}.hp-professional-contact h1{font-size:34px}.hp-professional-contact__form,.hp-professional-contact__success{padding:24px 18px}.hp-professional-contact__grid{grid-template-columns:1fr;gap:0}.hp-professional-contact__success{margin:30px auto}.hp-professional-inquiry-detail dl{grid-template-columns:1fr;gap:3px}.hp-professional-inquiry-detail dd{margin-bottom:8px}}

/* Booking flow shell and seven-day calendar. */
.healthcare-booking-shell{width:100%}.healthcare-booking-topbar .container{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:54px}.healthcare-booking-header-back{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;justify-self:start;color:#fff}.healthcare-booking-header-back:hover,.healthcare-booking-header-back:focus{border-radius:6px;background:rgba(255,255,255,.12);color:#fff}.healthcare-booking-brand{justify-self:center;line-height:0}.healthcare-booking-nav{justify-self:end}.healthcare-booking-layout{grid-template-columns:minmax(0,760px) minmax(260px,308px)}.healthcare-booking-week-toolbar{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin:2px 0 14px}.healthcare-booking-week-toolbar>strong{display:flex;flex-direction:column;color:#173b5c;font-size:14px;text-align:center}.healthcare-booking-week-toolbar>strong span{color:#668095;font-size:11px;text-transform:uppercase}.healthcare-booking-week-arrow{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid #cbdceb;border-radius:6px;color:#0b6fb8}.healthcare-booking-week-arrow:hover,.healthcare-booking-week-arrow:focus{background:#eef7ff;color:#075d9c;text-decoration:none}.healthcare-booking-week-arrow.disabled{color:#b6c5d0;cursor:not-allowed}.healthcare-booking-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;overflow:hidden;border:1px solid #d8e6f0;border-radius:8px}.healthcare-booking-week .healthcare-slot-day{min-width:0;padding:0 6px 10px;border-right:1px solid #e0ebf4}.healthcare-booking-week .healthcare-slot-day:last-child{border-right:0}.healthcare-booking-week .healthcare-slot-day>strong{display:flex;align-items:center;flex-direction:column;gap:2px;margin:0 -6px 8px;padding:9px 2px;background:#f4f9fd;color:#547087}.healthcare-booking-week .healthcare-slot-day>strong span{font-size:11px;text-transform:uppercase}.healthcare-booking-week .healthcare-slot-day>strong b{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;font-size:15px}.healthcare-booking-week .healthcare-slot-day.today>strong b{border-radius:50%;background:#117ed0;color:#fff}.healthcare-booking-week .healthcare-slot-list{display:flex;flex-direction:column;gap:6px}.healthcare-booking-week .healthcare-slot-button{width:100%;min-width:0;padding:7px 3px}.healthcare-slot-empty{display:block;padding:9px 0;color:#a8bac7;text-align:center}.healthcare-booking-week-empty{margin-top:14px;text-align:center}.healthcare-booking-week-empty a{color:#0b6fb8;font-weight:800}

body.healthcare-booking-body {
    background: #eaf4fc;
    margin: 0;
    overflow-x: hidden;
}

body.healthcare-booking-body #wrapper,
body.healthcare-booking-body #content {
    background: #eaf4fc;
    margin: 0;
    overflow-x: hidden;
    padding: 0;
}

body.healthcare-booking-body #content > .container {
    margin: 0;
    max-width: none;
    padding: 0;
    width: 100%;
}

body.healthcare-booking-body #content > .container > .row {
    margin: 0;
}

body.healthcare-booking-body #content > .container > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}

body.healthcare-booking-body .healthcare-booking-shell {
    margin: 0;
    max-width: none;
    min-height: 100vh;
    width: 100%;
}

.healthcare-booking-header-back {
    grid-column: 1;
    grid-row: 1;
}

.healthcare-booking-brand {
    grid-column: 2;
    grid-row: 1;
}

.healthcare-booking-nav {
    grid-column: 3;
    grid-row: 1;
}

.healthcare-booking-back[hidden] {
    display: none !important;
}
@media(max-width:640px){.healthcare-booking-topbar .container{display:grid;grid-template-columns:44px minmax(0,1fr) 72px;gap:6px;padding-right:10px;padding-left:10px}.healthcare-booking-nav{gap:0;justify-self:end;overflow:hidden;white-space:nowrap}.healthcare-booking-nav a{display:block;max-width:72px;overflow:hidden;font-size:12px;text-overflow:ellipsis}.healthcare-booking-brand{width:100%;max-width:154px;min-width:0}.healthcare-booking-brand .hp-brand-logo{margin:0 auto}.healthcare-booking-page{width:100%;max-width:none;padding:22px 10px 32px}.healthcare-booking-panel{width:100%;padding:22px 12px 28px}.healthcare-booking-week{width:calc(100% + 24px);margin-left:-12px;border-right:0;border-left:0;border-radius:0}.healthcare-booking-week .healthcare-slot-day{padding-right:3px;padding-left:3px}.healthcare-booking-week .healthcare-slot-day>strong{margin-right:-3px;margin-left:-3px;padding-right:0;padding-left:0}.healthcare-booking-week .healthcare-slot-day>strong span{font-size:9px}.healthcare-booking-week .healthcare-slot-day>strong b{width:24px;height:24px;font-size:13px}.healthcare-booking-week .healthcare-slot-button{min-height:36px;padding:5px 1px;font-size:10px}}

/* Keep the booking flow readable after the late desktop calendar rules above. */
.healthcare-booking-week-scroll{max-width:100%;min-width:0}
@media(max-width:991px){
    .healthcare-booking-page,.healthcare-booking-layout,.healthcare-booking-panel,.healthcare-booking-form,.healthcare-booking-step{min-width:0}
    .healthcare-booking-layout{grid-template-columns:minmax(0,1fr);max-width:760px;margin-right:auto;margin-left:auto}
    .healthcare-booking-summary{position:static;width:100%}
}
@media(max-width:640px){
    .healthcare-booking-shell{width:100%;min-width:0}
    .healthcare-booking-layout{display:block;width:100%}
    .healthcare-booking-step h2,.healthcare-booking-step p,.healthcare-booking-primary{max-width:100%;overflow-wrap:normal;word-break:normal}
    .healthcare-booking-primary{width:100%;min-height:44px;padding-right:14px;padding-left:14px;white-space:normal}
    .healthcare-booking-week-scroll{width:calc(100% + 24px);margin-left:-12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
    .healthcare-booking-calendar .healthcare-booking-week-scroll{width:100%;margin-left:0}
    .healthcare-booking-week{grid-template-columns:repeat(7,96px);width:max-content;min-width:100%;margin-left:0;border-right:1px solid #d8e6f0;border-left:1px solid #d8e6f0;border-radius:0}
    .healthcare-booking-week .healthcare-slot-day{min-width:96px;padding-right:6px;padding-left:6px;scroll-snap-align:start}
    .healthcare-booking-week .healthcare-slot-day>strong{margin-right:-6px;margin-left:-6px}
    .healthcare-booking-week .healthcare-slot-day>strong span{font-size:10px}
    .healthcare-booking-week .healthcare-slot-button{min-height:44px;padding:7px 4px;font-size:12px;white-space:nowrap}
    .healthcare-booking-next-available{grid-template-columns:42px minmax(0,1fr);padding:12px}
    .healthcare-booking-next-available__action{grid-column:1 / -1;width:100%}
}

/* These desktop rules intentionally remain last so later feature styles cannot shift the public header. */
@media (min-width: 1101px) {
    body.hp-home-body .healthcare-home-nav .container {
        align-items: center;
        display: flex !important;
        gap: 32px;
        justify-content: space-between !important;
        min-height: 72px;
        padding: 0 24px !important;
        width: min(100%, 1180px) !important;
    }

    body.hp-home-body .healthcare-home-brand {
        flex: 0 0 180px;
        margin: 0;
    }

    body.hp-home-body .healthcare-home-nav-links {
        align-items: center;
        display: flex !important;
        flex: 1 1 auto;
        gap: 22px;
        justify-content: flex-end;
        margin: 0;
    }

    body.hp-home-body .healthcare-home-nav-links > a.healthcare-home-professional-cta {
        align-items: center;
        border: 1px solid rgba(255, 255, 255, .22);
        border-radius: 7px;
        display: inline-flex !important;
        flex: 0 0 auto;
        height: 42px;
        justify-content: center;
        line-height: 1.2;
        min-width: 190px;
        padding: 0 18px;
        white-space: nowrap;
    }

    body.healthcare-search-body .healthcare-search-topbar .container {
        gap: 18px;
        grid-template-columns: 170px minmax(0, 1fr) 220px !important;
        min-height: 76px;
        padding: 0 24px !important;
        width: min(100%, 1180px) !important;
    }

    body.healthcare-search-body .healthcare-search-actions {
        justify-self: end;
        min-width: 0;
        width: 220px;
    }

    body.healthcare-search-body .healthcare-search-actions .hp-global-account,
    body.healthcare-search-body .healthcare-search-actions .hp-global-account-toggle {
        width: 100%;
    }

    body.healthcare-search-body .healthcare-search-actions .hp-global-account-toggle {
        box-sizing: border-box;
        justify-content: flex-start;
    }

    body.healthcare-search-body .healthcare-search-actions .hp-global-account-toggle-copy {
        flex: 1 1 auto;
    }

    body.healthcare-search-body .healthcare-search-actions .hp-global-account-toggle > .fa-chevron-down {
        margin-left: auto;
    }

    body.healthcare-search-body .healthcare-search-top-form {
        border: 1px solid rgba(255, 255, 255, .72);
        border-radius: 10px;
        box-shadow: 0 8px 24px rgba(7, 43, 70, .12);
        grid-template-columns: minmax(0, 1fr) minmax(0, .82fr) 124px;
        min-height: 50px;
    }

    body.healthcare-search-body .healthcare-search-top-form label,
    body.healthcare-search-body .healthcare-search-top-form label:first-of-type {
        border-radius: 0;
        min-height: 50px;
        padding: 0 16px;
    }

    body.healthcare-search-body .healthcare-search-top-form label:first-of-type {
        border-radius: 9px 0 0 9px;
    }

    body.healthcare-search-body .healthcare-search-top-form .healthcare-public-search-submit {
        border: 0;
        border-radius: 0 9px 9px 0;
        margin: 0;
        min-height: 50px;
    }

    body.healthcare-search-body .healthcare-result-actions {
        gap: 8px;
        grid-template-columns: minmax(112px, .9fr) minmax(132px, 1.1fr);
    }

    body.healthcare-search-body .healthcare-result-card {
        grid-template-columns: minmax(0, 1fr) 280px;
    }

    body.healthcare-search-body .healthcare-result-actions > .btn,
    body.healthcare-search-body .healthcare-result-actions > .healthcare-phone-picker > summary {
        align-items: center;
        display: inline-flex;
        justify-content: center;
        line-height: 1.2;
        min-height: 40px;
        overflow: visible;
        padding-left: 10px;
        padding-right: 10px;
        white-space: nowrap;
    }

    body.healthcare-search-body .healthcare-result-secondary-actions {
        border-top: 1px solid #e4edf3;
        justify-content: flex-end;
        margin-top: 10px;
        padding-top: 6px;
    }
}

/* Keep the richer boost layout above the legacy single-profile card rules. */
.hp-search-boost-card { display: block; padding: 0; }
.hp-search-boost-card .hp-search-boost-card__header h2 { margin: 4px 0 8px; }
.hp-search-boost-card .hp-search-boost-card__header p:not(.hp-pro-kicker) { margin: 0; }
.hp-search-boost-card .hp-search-boost-card__rates strong { font-size: 22px; }
.hp-search-boost-card .hp-search-boost-card__rates strong small,
.hp-search-boost-card .hp-search-boost-card__rates strong em { font-size: 11px; }
.hp-search-boost-card .hp-search-boost-card__toolbar strong,
.hp-search-boost-card .hp-search-boost-person__identity strong { font-size: 14px; }
.hp-search-boost-card .hp-search-boost-person__identity small,
.hp-search-boost-card .hp-search-boost-person__status small { font-size: 11px; }
.hp-search-boost-card .hp-search-boost-card__summary strong { font-size: 24px; }
.hp-search-boost-card .hp-search-boost-card__summary p,
.hp-search-boost-card .hp-search-boost-card__notice p { margin: 0; }

/* Keep the billing CTA icon and label centered as one calm, touch-safe control. */
.hp-pro-plan-actions .hp-clinician-primary-action {
    align-items: center;
    background: linear-gradient(135deg, #117ed0 0%, #086db8 100%);
    box-shadow: 0 8px 18px rgba(17, 126, 208, .18);
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    line-height: 1.2;
    margin: 0;
    min-height: 44px;
    padding: 0 18px;
    text-align: center;
    white-space: nowrap;
}

.hp-pro-plan-actions .hp-clinician-primary-action i {
    flex: 0 0 auto;
    font-size: 13px;
    line-height: 1;
    margin: 0;
}

.hp-pro-plan-actions .hp-clinician-primary-action span { display: block; }
.hp-pro-plan-actions .hp-clinician-primary-action:hover,
.hp-pro-plan-actions .hp-clinician-primary-action:focus {
    background: linear-gradient(135deg, #0d73bd 0%, #075f9f 100%);
    box-shadow: 0 10px 22px rgba(17, 126, 208, .24);
    color: #fff;
    outline: 0;
    text-decoration: none;
}

.hp-pro-plan-actions .hp-clinician-primary-action:focus-visible {
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .22), 0 10px 22px rgba(17, 126, 208, .24);
}

/* Expanded public product story for individual professionals and clinic teams. */
body.hp-professional-product-body .hp-pro-product__hero {
    background:
        radial-gradient(circle at 76% 18%, rgba(30, 155, 145, .14), transparent 31%),
        linear-gradient(118deg, #edf8fb 0%, #f8fcfd 53%, #e4f3f5 100%);
    gap: 72px;
    min-height: 690px;
    padding-bottom: 82px;
    padding-top: 82px;
}

.hp-pro-product__audience {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: -6px 0 25px;
}

.hp-pro-product__audience span {
    align-items: center;
    background: rgba(255, 255, 255, .78);
    border: 1px solid #bddbe2;
    border-radius: 999px;
    color: #244c63;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    min-height: 36px;
    padding: 0 13px;
}

.hp-pro-product__audience i { color: #087f78; }

.hp-pro-product__workspace-preview {
    background: rgba(255, 255, 255, .94);
    border: 1px solid #c9dfe6;
    border-radius: 18px;
    box-shadow: 0 28px 80px rgba(8, 41, 67, .16);
    min-width: 0;
    overflow: hidden;
    padding: 20px;
    position: relative;
}

.hp-pro-product__workspace-preview::before {
    background: linear-gradient(90deg, #0b857c, #2d8fc7);
    content: '';
    height: 4px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.hp-pro-product__workspace-head,
.hp-pro-product__workspace-head > div,
.hp-pro-product__workspace-note,
.hp-pro-product__roles-head,
.hp-pro-product__roles-summary {
    align-items: center;
    display: flex;
}

.hp-pro-product__workspace-head { gap: 12px; padding: 4px 2px 18px; }
.hp-pro-product__workspace-head > div,
.hp-pro-product__workspace-note span,
.hp-pro-product__roles-head > div,
.hp-pro-product__roles-summary span {
    align-items: flex-start;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}
.hp-pro-product__workspace-head small,
.hp-pro-product__workspace-note small,
.hp-pro-product__roles-head small,
.hp-pro-product__roles-summary small { color: #668194; display: block; line-height: 1.45; margin-top: 4px; }

.hp-pro-product__workspace-mark {
    align-items: center;
    background: #def4f0;
    border-radius: 11px;
    color: #087f78;
    display: flex;
    flex: 0 0 42px;
    font-size: 18px;
    height: 42px;
    justify-content: center;
}

.hp-pro-product__workspace-live {
    align-items: center;
    background: #f0faf7;
    border-radius: 999px;
    color: #087663;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 7px;
    margin-left: auto;
    padding: 7px 10px;
}

.hp-pro-product__workspace-live i { background: #17a67f; border-radius: 50%; height: 7px; width: 7px; }

.hp-pro-product__workspace-metrics {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 18px;
}

.hp-pro-product__workspace-metrics > div {
    background: #f4f8fa;
    border: 1px solid #dde9ed;
    border-radius: 11px;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 13px;
}

.hp-pro-product__workspace-metrics small { color: #657e8e; font-size: 11px; font-weight: 700; }
.hp-pro-product__workspace-metrics strong { color: #082943; font-size: 25px; line-height: 1.2; margin: 5px 0 1px; }
.hp-pro-product__workspace-metrics span { color: #698290; font-size: 10px; line-height: 1.3; }

.hp-pro-product__workspace-list {
    border: 1px solid #d8e5ea;
    border-radius: 12px;
    overflow: hidden;
}

.hp-pro-product__workspace-list > div {
    align-items: center;
    border-top: 1px solid #e3ecef;
    display: grid;
    gap: 11px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    padding: 11px 13px;
}

.hp-pro-product__workspace-list > div:first-child { border-top: 0; }
.hp-pro-product__workspace-list .hp-pro-product__workspace-list-head { background: #f6f9fa; grid-template-columns: minmax(0, 1fr) auto; }
.hp-pro-product__workspace-list-head span { color: #78909d; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.hp-pro-product__workspace-list p { display: flex; flex-direction: column; margin: 0; min-width: 0; }
.hp-pro-product__workspace-list p strong,
.hp-pro-product__workspace-list p small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hp-pro-product__workspace-list p strong { color: #183b52; font-size: 12px; }
.hp-pro-product__workspace-list p small { color: #708894; font-size: 10px; margin-top: 3px; }
.hp-pro-product__workspace-list em { background: #edf7f5; border-radius: 999px; color: #08776d; font-size: 9px; font-style: normal; font-weight: 800; padding: 6px 8px; white-space: nowrap; }

.hp-pro-product__avatar {
    align-items: center;
    border-radius: 50%;
    display: flex;
    font-size: 10px;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.hp-pro-product__avatar.is-teal { background: #dff4ef; color: #08776d; }
.hp-pro-product__avatar.is-blue { background: #e3eefb; color: #216da6; }
.hp-pro-product__avatar.is-gold { background: #fff0cf; color: #966815; }

.hp-pro-product__workspace-note { background: #092f49; border-radius: 11px; color: #fff; gap: 12px; margin-top: 14px; padding: 13px 15px; }
.hp-pro-product__workspace-note > i { color: #72d6c9; font-size: 17px; }
.hp-pro-product__workspace-note small { color: #bed2dd; font-size: 10px; }

body.hp-professional-product-body .hp-pro-product__proof {
    gap: 26px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding-bottom: 48px;
    padding-top: 48px;
}

body.hp-professional-product-body .hp-pro-product__proof > div { align-items: flex-start; }
body.hp-professional-product-body .hp-pro-product__proof i { background: #e8f7f4; border-radius: 9px; display: flex; flex: 0 0 38px; font-size: 17px; height: 38px; align-items: center; justify-content: center; }

body.hp-professional-product-body .hp-pro-product__feature-grid--expanded { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.hp-professional-product-body .hp-pro-product__feature-grid--expanded article { background: #fff; border-radius: 14px; min-height: 230px; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
body.hp-professional-product-body .hp-pro-product__feature-grid--expanded article:hover { border-color: #9bcfc9; box-shadow: 0 16px 34px rgba(8, 41, 67, .08); transform: translateY(-3px); }

.hp-pro-product__clinic-section {
    align-items: stretch;
    background: #0a3048;
    border-radius: 20px;
    color: #fff;
    display: grid;
    gap: 54px;
    grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
    margin: 16px auto 88px;
    max-width: 1120px;
    overflow: hidden;
    padding: 58px;
    position: relative;
}

.hp-pro-product__clinic-section::before { background: rgba(24, 151, 138, .2); border-radius: 50%; content: ''; height: 360px; left: -150px; position: absolute; top: -180px; width: 360px; }
.hp-pro-product__clinic-copy { position: relative; z-index: 1; }
.hp-pro-product__clinic-copy h2 { font-size: 38px; line-height: 1.13; margin: 0 0 18px; }
.hp-pro-product__clinic-copy > p:not(.hp-pro-kicker) { color: #c4d7e1; font-size: 17px; line-height: 1.65; }
.hp-pro-product__clinic-copy ul { list-style: none; margin: 28px 0; padding: 0; }
.hp-pro-product__clinic-copy li { align-items: flex-start; color: #e8f2f6; display: flex; gap: 11px; line-height: 1.45; margin: 13px 0; }
.hp-pro-product__clinic-copy li i { color: #71d5c7; margin-top: 4px; }
.hp-pro-product__clinic-copy .hp-pro-secondary { background: transparent; border-color: #7895a6; color: #fff; gap: 9px; }

.hp-pro-product__roles-panel { background: #fff; border-radius: 15px; color: #12354c; padding: 20px; }
.hp-pro-product__roles-head { border-bottom: 1px solid #e1eaee; gap: 12px; padding: 2px 2px 18px; }
.hp-pro-product__roles-head > span { align-items: center; background: #dff4ef; border-radius: 10px; color: #08776d; display: flex; flex: 0 0 42px; height: 42px; justify-content: center; }
.hp-pro-product__roles-panel article { align-items: center; border-bottom: 1px solid #e6edef; display: grid; gap: 13px; grid-template-columns: 38px minmax(0, 1fr) auto; padding: 17px 2px; }
.hp-pro-product__roles-panel article > i { align-items: center; background: #eff6f8; border-radius: 9px; color: #0a7f78; display: flex; height: 38px; justify-content: center; width: 38px; }
.hp-pro-product__roles-panel article p { color: #66808f; font-size: 12px; line-height: 1.45; margin: 4px 0 0; }
.hp-pro-product__roles-panel article > span { background: #edf8f5; border-radius: 999px; color: #087468; font-size: 9px; font-weight: 900; padding: 6px 8px; text-transform: uppercase; }
.hp-pro-product__roles-summary { background: #f2f8fa; border-radius: 10px; gap: 12px; margin-top: 15px; padding: 13px; }
.hp-pro-product__roles-summary > i { color: #167c89; font-size: 19px; }

.hp-pro-product__identity-section {
    align-items: center;
    background: linear-gradient(110deg, #eef8fb, #f7fbfc);
    border: 1px solid #cfe2e8;
    border-radius: 18px;
    display: grid;
    gap: 25px;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    margin: 0 auto 88px;
    max-width: 1072px;
    padding: 30px 34px;
}

.hp-pro-product__identity-icon { align-items: center; background: #0b7f79; border-radius: 16px; color: #fff; display: flex; font-size: 23px; height: 58px; justify-content: center; width: 58px; }
.hp-pro-product__identity-section h2 { font-size: 26px; margin: 0 0 8px; }
.hp-pro-product__identity-section p:not(.hp-pro-kicker) { color: #537084; line-height: 1.55; margin: 0; }
.hp-pro-product__identity-roles { display: flex; flex-direction: column; gap: 7px; min-width: 190px; }
.hp-pro-product__identity-roles span { align-items: center; background: #fff; border: 1px solid #d1e2e7; border-radius: 9px; color: #173d55; display: flex; font-size: 12px; font-weight: 800; gap: 9px; min-height: 38px; padding: 0 12px; }
.hp-pro-product__identity-roles i { color: #0a847c; width: 15px; }

.hp-pro-product__plan-limits { display: flex; flex-direction: column; gap: 7px; margin-top: 14px; }
.hp-pro-product__plan-limits span { align-items: center; background: #e8f7f4; border-radius: 999px; color: #076e68; display: inline-flex; font-size: 12px; font-weight: 800; gap: 7px; padding: 8px 10px; width: fit-content; }
.hp-pro-product__plans .hp-pro-product__trial { display: block; margin-top: 8px; }
.hp-pro-product__patient-benefit { display: flex; align-items: flex-start; gap: 11px; margin-top: 18px; padding: 14px; border: 1px solid #b9ddd6; border-radius: 10px; background: #eef9f6; }
.hp-pro-product__patient-benefit > i { display: grid; width: 32px; height: 32px; flex: 0 0 32px; border-radius: 8px; background: #d7f1eb; color: #087f78; place-items: center; }
.hp-pro-product__patient-benefit > span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.hp-pro-product__patient-benefit strong { color: #075f5b; font-size: 14px; }
.hp-pro-product__patient-benefit small { color: #486d72; line-height: 1.4; }
.hp-pro-product__plan-details { margin: 7px 0 -12px; background: transparent; }
.hp-pro-product__plan-details[open] { margin-bottom: 0; }
.hp-pro-product__plan-details summary { display: flex; width: 100%; min-height: 32px; align-items: center; justify-content: center; padding: 0; color: #668194; font-size: 11px; cursor: pointer; list-style: none; }
.hp-pro-product__plan-details summary::-webkit-details-marker { display: none; }
.hp-pro-product__plan-details summary i { transition: color .15s ease, transform .18s ease; }
.hp-pro-product__plan-details summary:hover i, .hp-pro-product__plan-details summary:focus-visible i { color: #087f78; }
.hp-pro-product__plan-details[open] summary i { transform: rotate(180deg); }
.hp-pro-product__plan-details p { display: flex; align-items: center; justify-content: center; gap: 9px; margin: 0; padding: 4px 10px 12px; color: #476779; font-size: 13px; }
.hp-pro-product__plan-details p i { color: #087f78; }
.hp-pro-product__pricing-offer { align-items: center; background: #f5f9fc; border: 1px solid #c9dce7; border-radius: 12px; display: grid; gap: 16px; grid-template-columns: 44px minmax(0, 1fr) auto; margin-top: 22px; padding: 18px 20px; }
.hp-pro-product__pricing-offer-icon { align-items: center; background: #e4f1f8; border-radius: 10px; color: #117ac0; display: flex; font-size: 17px; height: 44px; justify-content: center; width: 44px; }
.hp-pro-product__pricing-offer strong { color: #082943; display: block; font-size: 16px; margin-bottom: 3px; }
.hp-pro-product__pricing-offer p { color: #587589; line-height: 1.45; margin: 0; }
.hp-pro-product__pricing-offer .hp-pro-secondary { gap: 9px; min-width: 178px; white-space: nowrap; }
.hp-pro-product__pricing-offer .hp-pro-secondary i { animation: hp-pro-product-offer-arrow-nudge 4.8s ease-in-out infinite; transition: transform .18s ease; }
.hp-pro-product__pricing-offer .hp-pro-secondary:hover i,
.hp-pro-product__pricing-offer .hp-pro-secondary:focus-visible i { animation: none; transform: translateX(4px); }

@keyframes hp-pro-product-offer-arrow-nudge {
    0%, 72%, 100% { transform: translateX(0); }
    78% { transform: translateX(5px); }
    84% { transform: translateX(0); }
    90% { transform: translateX(3px); }
    94% { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
    .hp-pro-product__pricing-offer .hp-pro-secondary i { animation: none; transition: none; transform: none; }
}

.hp-pro-product__boost {
    align-items: center;
    background: #f6f9fb;
    border: 1px solid #d5e3e8;
    border-radius: 18px;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 1fr) minmax(380px, .8fr);
    margin: 0 auto 30px;
    max-width: 1072px;
    padding: 38px 42px;
}

.hp-pro-product__boost-copy h2 { font-size: 30px; margin: 0 0 12px; }
.hp-pro-product__boost-copy > p:not(.hp-pro-kicker) { color: #557286; font-size: 16px; line-height: 1.6; }
.hp-pro-product__boost-copy > small { align-items: flex-start; color: #6a8290; display: flex; gap: 8px; line-height: 1.45; }
.hp-pro-product__boost-copy > small i { color: #168178; margin-top: 3px; }
.hp-pro-product__boost-rates { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hp-pro-product__boost-rates article { background: #fff; border: 1px solid #ccdee4; border-radius: 13px; display: flex; flex-direction: column; min-height: 140px; padding: 17px; }
.hp-pro-product__boost-rates article.is-saving { background: #eaf8f4; border-color: #80c8b9; }
.hp-pro-product__boost-rates span { color: #547181; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.hp-pro-product__boost-rates strong { color: #082943; font-size: 28px; margin: auto 0 3px; }
.hp-pro-product__boost-rates small { color: #617c8b; font-size: 10px; line-height: 1.35; }

@media (max-width: 1100px) {
    body.hp-professional-product-body .hp-pro-product__hero { gap: 38px; }
    body.hp-professional-product-body .hp-pro-product__feature-grid--expanded { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hp-pro-product__clinic-section { border-radius: 0; margin-left: 0; margin-right: 0; max-width: none; padding-left: 40px; padding-right: 40px; }
    .hp-pro-product__identity-section,
    .hp-pro-product__boost { margin-left: 24px; margin-right: 24px; }
}

@media (max-width: 900px) {
    body.hp-professional-product-body .hp-pro-product__proof { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .hp-pro-product__workspace-preview { max-width: 660px; }
    .hp-pro-product__clinic-section { grid-template-columns: minmax(0, 1fr); }
    .hp-pro-product__identity-section { grid-template-columns: 58px minmax(0, 1fr); }
    .hp-pro-product__identity-roles { flex-direction: row; grid-column: 1 / -1; min-width: 0; }
    .hp-pro-product__identity-roles span { flex: 1; }
    .hp-pro-product__boost { gap: 28px; grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 620px) {
    body.hp-professional-product-body .hp-pro-product__hero { gap: 42px; padding-bottom: 62px; padding-top: 50px; }
    .hp-pro-product__workspace-preview { border-radius: 14px; padding: 14px; }
    .hp-pro-product__workspace-metrics { gap: 6px; }
    .hp-pro-product__workspace-metrics > div { padding: 10px 8px; }
    .hp-pro-product__workspace-metrics strong { font-size: 21px; }
    .hp-pro-product__workspace-list > div { grid-template-columns: 32px minmax(0, 1fr); }
    .hp-pro-product__workspace-list > div > em { grid-column: 2; justify-self: start; }
    .hp-pro-product__workspace-list .hp-pro-product__workspace-list-head { grid-template-columns: minmax(0, 1fr) auto; }
    .hp-pro-product__avatar { height: 30px; width: 30px; }
    body.hp-professional-product-body .hp-pro-product__proof,
    body.hp-professional-product-body .hp-pro-product__feature-grid--expanded { grid-template-columns: minmax(0, 1fr); }
    body.hp-professional-product-body .hp-pro-product__feature-grid--expanded article { min-height: 0; }
    .hp-pro-product__clinic-section { border-radius: 0; gap: 34px; margin-bottom: 64px; padding: 46px 18px; }
    .hp-pro-product__clinic-copy h2 { font-size: 30px; }
    .hp-pro-product__roles-panel { padding: 15px; }
    .hp-pro-product__roles-panel article { align-items: start; grid-template-columns: 34px minmax(0, 1fr); }
    .hp-pro-product__roles-panel article > i { height: 34px; width: 34px; }
    .hp-pro-product__roles-panel article > span { grid-column: 2; justify-self: start; }
    .hp-pro-product__identity-section { grid-template-columns: 48px minmax(0, 1fr); margin: 0 18px 64px; padding: 24px 20px; }
    .hp-pro-product__identity-icon { border-radius: 12px; font-size: 18px; height: 46px; width: 46px; }
    .hp-pro-product__identity-section h2 { font-size: 23px; }
    .hp-pro-product__identity-roles { flex-direction: column; }
    .hp-pro-product__pricing-offer { align-items: start; grid-template-columns: 40px minmax(0, 1fr); padding: 17px; }
    .hp-pro-product__pricing-offer-icon { height: 40px; width: 40px; }
    .hp-pro-product__pricing-offer .hp-pro-secondary { grid-column: 1 / -1; min-width: 0; width: 100%; }
    .hp-pro-product__boost { margin: 0 18px 10px; padding: 28px 20px; }
    .hp-pro-product__boost-rates { grid-template-columns: minmax(0, 1fr); }
    .hp-pro-product__boost-rates article { min-height: 118px; }
}

/* Listing ownership and reporting belong to one stable footer row even when
 * a result card is narrow inside a wider desktop viewport. */
body.healthcare-search-body .healthcare-result-secondary-actions {
    align-items: center;
    border-top: 1px solid #e4edf3;
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    margin-top: 10px;
    min-width: 0;
    padding-top: 6px;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-claim,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit {
    flex: 0 0 auto;
    font-size: 12px;
    line-height: 1.35;
    margin-bottom: 0;
    margin-top: 0;
    min-height: 32px;
    padding: 6px 0;
    width: auto;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report {
    margin-left: auto;
}

.hp-bank-admin-setup,.hp-bank-admin-payments{margin:24px 0;padding:24px;border:1px solid #d8e4ea;border-radius:10px;background:#fff;box-shadow:0 7px 22px rgba(11,39,64,.05)}.hp-bank-admin-setup>header,.hp-bank-admin-payments>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.hp-bank-admin-setup h2,.hp-bank-admin-payments h2{margin:2px 0 5px;color:#0b2740}.hp-bank-admin-setup header p,.hp-bank-admin-payments header p{margin:0;color:#657b89}.hp-bank-admin-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.hp-bank-admin-fields label{display:grid;gap:6px}.hp-bank-admin-fields label>span{font-weight:700}.hp-bank-admin-fields input,.hp-bank-admin-fields textarea,.hp-bank-admin-review textarea{width:100%;padding:9px 11px;border:1px solid #ccdce4;border-radius:5px}.hp-bank-admin-fields .is-wide{grid-column:1/-1}.hp-bank-admin-toggle{grid-column:1/-1;display:flex!important;align-items:center;gap:12px;padding:14px;border:1px solid #b9ddd5;border-radius:7px;background:#f1faf7}.hp-bank-admin-toggle input{width:auto}.hp-bank-admin-toggle>span{display:flex;flex-direction:column}.hp-bank-admin-toggle small{color:#607a70;font-weight:400}.hp-bank-admin-payments>header>strong{display:grid;place-items:center;min-width:44px;height:44px;border-radius:50%;background:#fff0c7;color:#795700;font-size:18px}.hp-bank-admin-empty{display:flex;align-items:center;gap:10px;padding:18px;border-radius:7px;background:#f4f8fa;color:#607989}.hp-bank-admin-empty p{margin:0}.hp-bank-admin-list{display:grid;gap:15px}.hp-bank-admin-payment{padding:18px;border:1px solid #dbe6eb;border-left:4px solid #9db2bd;border-radius:8px}.hp-bank-admin-payment.is-pending_review{border-left-color:#d8a900;background:#fffdf6}.hp-bank-admin-payment.is-approved{border-left-color:#15966e}.hp-bank-admin-payment.is-rejected{border-left-color:#c44b4b}.hp-bank-admin-payment>header{display:flex;justify-content:space-between;gap:20px}.hp-bank-admin-payment h3{margin:7px 0 2px}.hp-bank-admin-payment header p{margin:0;color:#667e8c}.hp-bank-admin-payment>header>strong{color:#0b2740;font-size:24px}.hp-bank-admin-payment dl{display:flex;flex-wrap:wrap;gap:12px 28px;margin:16px 0}.hp-bank-admin-payment dt{color:#718590;font-size:10px;text-transform:uppercase}.hp-bank-admin-payment dd{margin:2px 0 0;font-weight:700}.hp-bank-admin-review{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid #e0e9ed}.hp-bank-admin-review label{display:grid;gap:5px}.hp-bank-admin-review label span{font-weight:700}.hp-bank-admin-review>div{display:flex;gap:8px}.hp-bank-admin-note{margin:14px 0 0;padding:11px;border-radius:5px;background:#f4f7f8}.hp-bank-transfer-status{display:inline-block;padding:5px 8px;border-radius:999px;background:#edf3f7;color:#4f6675;font-size:10px;font-weight:800;text-transform:uppercase}.hp-bank-transfer-status.is-pending_review{background:#fff0c7;color:#795700}.hp-bank-transfer-status.is-approved{background:#dcf5e9;color:#08734e}.hp-bank-transfer-status.is-rejected{background:#fde5e5;color:#a42d2d}
.hp-bank-admin-payment:target{border-color:#139b89;box-shadow:0 0 0 3px rgba(19,155,137,.14);scroll-margin-top:90px}
.hp-billing-admin-tabs{display:flex;gap:8px;margin:0 0 22px;padding:6px;border:1px solid #d5e3e9;border-radius:10px;background:#fff;box-shadow:0 6px 18px rgba(11,39,64,.04)}.hp-billing-admin-tabs a{padding:10px 16px;border-radius:7px;color:#496475;font-weight:800;text-decoration:none}.hp-billing-admin-tabs a:hover,.hp-billing-admin-tabs a.is-active{background:#0b3b59;color:#fff}.hp-bank-proof-actions,.hp-bank-notice-actions{display:flex;flex-wrap:wrap;gap:8px}.hp-bank-communication{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.hp-bank-communication>div{display:grid;gap:4px;padding:11px;border:1px solid #dce7eb;border-radius:7px;background:#f7fafb}.hp-bank-communication span{color:#6c808b;font-size:11px}.hp-bank-communication strong{color:#173c53}.hp-bank-email-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hp-bank-email-template-grid a{display:grid;gap:5px;padding:15px;border:1px solid #d5e3e9;border-radius:8px;background:#f8fbfc;color:#173c53;text-decoration:none}.hp-bank-email-template-grid a:hover{border-color:#159481;box-shadow:0 6px 14px rgba(11,90,82,.08)}.hp-bank-email-template-grid span,.hp-bank-email-template-grid small{color:#647d89}.hp-billing-earnings{margin:24px 0;padding:24px;border:1px solid #d8e4ea;border-radius:10px;background:#fff}.hp-billing-earnings>header{margin-bottom:18px}.hp-billing-earnings h2{margin:3px 0 5px}.hp-billing-earnings header p{margin:0;color:#657b89}.hp-billing-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.hp-billing-metrics article{display:grid;gap:7px;padding:18px;border:1px solid #d8e5ea;border-radius:9px;background:linear-gradient(145deg,#fff,#f3faf9)}.hp-billing-metrics span{color:#5e7481;font-size:12px;font-weight:700}.hp-billing-metrics strong{color:#0b3b59;font-size:25px}.hp-billing-metrics small{color:#617a86}
@media(max-width:900px){.hp-billing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-bank-email-template-grid{grid-template-columns:1fr}.hp-bank-communication{grid-template-columns:1fr}}@media(max-width:600px){.hp-billing-admin-tabs{overflow-x:auto}.hp-billing-admin-tabs a{white-space:nowrap}.hp-billing-metrics{grid-template-columns:1fr}}
@media(max-width:800px){.hp-bank-admin-fields{grid-template-columns:1fr}.hp-bank-admin-fields .is-wide,.hp-bank-admin-toggle{grid-column:auto}.hp-bank-admin-review{grid-template-columns:1fr}.hp-bank-admin-review>div{flex-wrap:wrap}.hp-bank-admin-payment>header{flex-direction:column}.hp-bank-admin-payment>header>strong{order:-1}}

.hp-plan-pricing-admin{margin:0 0 24px;padding:24px;border:1px solid #b9d7dc;border-radius:12px;background:linear-gradient(145deg,#fff 0%,#f4fbfb 100%);box-shadow:0 12px 30px rgba(8,62,76,.07)}.hp-plan-pricing-admin>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.hp-plan-pricing-admin>header h2{margin:3px 0 6px;color:#0b3047}.hp-plan-pricing-admin>header p{margin:0;color:#647c89}.hp-plan-pricing-admin>header>span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#e5f3f3;color:#087b7c;font-size:11px;font-weight:800;white-space:nowrap}.hp-plan-pricing-notice{display:flex;gap:12px;margin:20px 0 12px;padding:13px 15px;border:1px solid #d8e5e8;border-radius:9px;background:#f8fbfc;color:#385566}.hp-plan-pricing-notice>i{margin-top:3px;color:#168b91;font-size:17px}.hp-plan-pricing-notice p{margin:3px 0 0;color:#647c89}.hp-price-mapping-summary{margin:0 0 18px;padding:16px;border:1px solid #b9ded2;border-radius:10px;background:#f6fcfa}.hp-price-mapping-summary.has-missing{border-color:#efcf7c;background:#fffaf0}.hp-price-mapping-summary>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.hp-price-mapping-summary h3{margin:0;color:#0b3047;font-size:15px}.hp-price-mapping-summary>header p{margin:3px 0 0;color:#647c89}.hp-price-mapping-summary>header>span{padding:5px 9px;border-radius:999px;background:#dff5ec;color:#08724f;font-size:10px;font-weight:800}.hp-price-mapping-summary.has-missing>header>span{background:#ffedc9;color:#895d00}.hp-price-mapping-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.hp-price-mapping-list>div{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dce8eb;border-radius:8px;background:#fff}.hp-price-mapping-list>div>i{color:#08724f}.hp-price-mapping-list>div.is-missing>i,.hp-price-mapping-list>div.is-missing>em{color:#9a6700}.hp-price-mapping-list span{display:grid}.hp-price-mapping-list strong{color:#24465a;font-size:12px}.hp-price-mapping-list small{color:#718590}.hp-price-mapping-list em{color:#08724f;font-size:10px;font-style:normal;font-weight:800}.hp-price-mapping-repair{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding-top:12px;border-top:1px solid #ecd9a5}.hp-price-mapping-repair p{margin:0;color:#73530a}.hp-price-mapping-repair .btn{min-height:42px;border-color:#d6ab43;background:#fff;color:#73530a}.hp-plan-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hp-plan-pricing-grid article{padding:19px;border:1px solid #d5e4e8;border-radius:10px;background:#fff}.hp-plan-pricing-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hp-plan-pricing-card-head>div>span{color:#078276;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.hp-plan-pricing-card-head h3{margin:4px 0 0;color:#0b3047}.hp-plan-mapping-status{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800}.hp-plan-mapping-status.is-ready{background:#e5f7ef;color:#08724f}.hp-plan-mapping-status.is-required{background:#fff0d9;color:#895d00}.hp-plan-pricing-fields{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:12px;margin-top:18px}.hp-plan-pricing-fields label{display:grid;gap:6px}.hp-plan-pricing-fields label>span{font-size:12px;font-weight:750;color:#385566}.hp-plan-pricing-fields label>div{display:flex}.hp-plan-pricing-fields input{width:100%;min-width:0;height:43px;padding:8px 10px;border:1px solid #c8dae1;border-right:0;border-radius:7px 0 0 7px;background:#fff;font-size:16px;font-weight:750;color:#0b3047}.hp-plan-pricing-fields b{display:flex;align-items:center;padding:0 11px;border:1px solid #c8dae1;border-radius:0 7px 7px 0;background:#f3f7f8;color:#607884;font-size:11px}.hp-plan-pricing-current{margin:15px 0 0;color:#6a7e89;font-size:11px}.hp-plan-pricing-current i{margin-right:6px;color:#168b91}.hp-plan-pricing-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid #d8e5e8}.hp-plan-pricing-actions p{display:flex;align-items:center;gap:8px;margin:0;color:#527079}.hp-plan-pricing-actions p>span{display:grid;gap:3px}.hp-plan-pricing-actions p small{color:#708590}.hp-plan-pricing-actions p small.is-changed{color:#087b7c;font-weight:800}.hp-plan-pricing-actions p i{color:#078276}.hp-plan-pricing-actions .btn{min-height:42px;border-radius:8px}.hp-plan-pricing-actions .btn:disabled{cursor:not-allowed;opacity:.48}@media(max-width:900px){.hp-plan-pricing-grid,.hp-price-mapping-list{grid-template-columns:1fr}}@media(max-width:600px){.hp-plan-pricing-admin{padding:18px 14px}.hp-plan-pricing-admin>header,.hp-plan-pricing-actions,.hp-price-mapping-summary>header,.hp-price-mapping-repair{align-items:stretch;flex-direction:column}.hp-plan-pricing-fields{grid-template-columns:1fr}.hp-plan-pricing-actions .btn,.hp-price-mapping-repair .btn{width:100%}}

.healthcare-social-links {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 8px;
}

.healthcare-social-links .healthcare-social-link {
    align-items: center;
    background: #edf5fa;
    border: 1px solid #d8e7f0;
    border-radius: 50%;
    color: #0a679f;
    display: inline-flex;
    font-size: 16px;
    height: 42px;
    justify-content: center;
    margin: 0;
    text-decoration: none;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
    width: 42px;
}

.healthcare-social-links .healthcare-social-link:hover,
.healthcare-social-links .healthcare-social-link:focus {
    background: #0b73bd;
    border-color: #0b73bd;
    color: #fff;
    outline: 0;
    text-decoration: none;
    transform: translateY(-2px);
}

.healthcare-social-links .healthcare-social-link:focus-visible {
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .22);
}

.healthcare-profile-footer .healthcare-social-links,
.hp-pro-product__footer .healthcare-social-links {
    margin-left: auto;
}

.healthcare-profile-footer .healthcare-social-links a,
.hp-pro-product__footer .healthcare-social-links a {
    margin-left: 0;
}

@media (max-width: 620px) {
    .healthcare-profile-footer .healthcare-social-links,
    .hp-pro-product__footer .healthcare-social-links {
        margin-left: 0;
        width: 100%;
    }
}

/* Professional patient directory: readable cards, useful filtering, calm density. */
[data-hp-section="patients"].hp-clinician-content-section {
    gap: 22px;
}

.hp-clinician-patient-toolbar {
    align-items: center;
    background: #f6fafc;
    border: 1px solid #d7e6f0;
    border-radius: 12px;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 12px;
}

.hp-clinician-patient-toolbar .hp-clinician-patient-import-link{margin-left:auto;width:auto;min-height:42px;padding:9px 14px}
.hp-clinician-record-link.is-disabled{cursor:default;color:#4f6d7f;background:#eef5f8;border-color:#d6e4eb}

.hp-clinician-patient-add {
    align-items: center;
    align-self: start;
    background: #0b3655;
    border: 0;
    border-radius: 8px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 13px;
    font-weight: 850;
    gap: 9px;
    min-height: 44px;
    padding: 0 16px;
    user-select: none;
}

.hp-clinician-patient-add-form {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-clinician-patient-add-form > div,
.hp-clinician-patient-add-form > small {
    grid-column: 1 / -1;
}

.hp-clinician-patient-add-form h2 {
    color: #08233f;
    font-size: 18px;
    margin: 0 0 4px;
}

.hp-clinician-patient-add-form p,
.hp-clinician-patient-add-form small {
    color: #5d788b;
    line-height: 1.45;
    margin: 0;
}

.hp-clinician-patient-add-form label {
    display: grid;
    gap: 6px;
    margin: 0;
}

.hp-clinician-patient-add-form label span {
    color: #173b55;
    font-size: 12px;
    font-weight: 800;
}

.hp-clinician-patient-add-form input {
    background: #fff;
    border: 1px solid #bfd5e4;
    border-radius: 8px;
    color: #0b2b4c;
    min-height: 44px;
    padding: 8px 11px;
    width: 100%;
}

.hp-clinician-patient-add-form input:focus {
    border-color: #117ed0;
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .13);
    outline: 0;
}

.hp-clinician-patient-add-form > small {
    align-items: center;
    display: flex;
    gap: 7px;
}

.hp-clinician-patient-add-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.hp-clinician-patient-add-actions button {
    margin: 0;
    min-height: 44px;
}

.hp-clinician-patient-filter {
    align-items: center;
    display: flex;
    margin: 0;
    max-width: 520px;
    position: relative;
    width: 100%;
}

.hp-clinician-patient-filter > i {
    color: #4e7189;
    font-size: 15px;
    left: 15px;
    pointer-events: none;
    position: absolute;
}

.hp-clinician-patient-filter input {
    background: #fff;
    border: 1px solid #bfd5e4;
    border-radius: 9px;
    color: #0b2b4c;
    font-size: 14px;
    height: 44px;
    outline: 0;
    padding: 0 16px 0 42px;
    width: 100%;
}

.hp-clinician-patient-filter input:focus {
    border-color: #117ed0;
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .13);
}

.hp-clinician-patient-count {
    background: #e6f4fb;
    border-radius: 999px;
    color: #0b679f;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 850;
    padding: 8px 12px;
}

.hp-clinician-card-grid.hp-clinician-patient-grid {
    gap: 16px;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
}

.hp-clinician-record-card.hp-clinician-patient-card {
    align-items: stretch;
    background: #fff;
    border-color: #d5e4ee;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 238px;
    padding: 20px;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hp-clinician-record-card.hp-clinician-patient-card:hover {
    border-color: #a9cce2;
    box-shadow: 0 14px 30px rgba(8, 48, 77, .09);
    transform: translateY(-2px);
}

.hp-clinician-record-card.hp-clinician-patient-card[hidden] {
    display: none !important;
}

.hp-clinician-patient-card-heading {
    align-items: center;
    display: grid;
    gap: 13px;
    grid-template-columns: 48px minmax(0, 1fr);
}

.hp-clinician-patient-card-heading .hp-clinician-avatar {
    font-size: 13px;
    height: 48px;
    width: 48px;
}

.hp-clinician-patient-card-heading h3 {
    color: #08233f;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.hp-clinician-patient-card-heading p {
    align-items: flex-start;
    display: flex;
    gap: 7px;
    line-height: 1.35;
    margin-top: 5px;
    min-width: 0;
}

.hp-clinician-patient-card-heading p i {
    color: #11847c;
    flex: 0 0 auto;
    margin-top: 2px;
}

.hp-clinician-patient-card-heading p span {
    display: -webkit-box;
    overflow: hidden;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hp-clinician-patient-last-visit {
    align-items: center;
    background: #f5f9fc;
    border-radius: 9px;
    display: grid;
    gap: 10px;
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 11px 12px;
}

.hp-clinician-patient-last-visit > i {
    align-items: center;
    background: #e1f2fb;
    border-radius: 8px;
    color: #0b73bd;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.hp-clinician-patient-last-visit span {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.hp-clinician-patient-last-visit small {
    color: #668095;
    font-size: 11px;
}

.hp-clinician-patient-last-visit strong {
    color: #173b5c;
    font-size: 13px;
    overflow-wrap: anywhere;
}

.hp-clinician-patient-card .hp-clinician-record-link {
    align-items: center;
    background: #f7fbfe;
    border-color: #b9d4e5;
    color: #086fb7;
    display: flex;
    justify-content: space-between;
    margin-top: auto;
    min-height: 44px;
    padding: 0 14px;
    width: 100%;
}

.hp-clinician-patient-card .hp-clinician-record-link:hover,
.hp-clinician-patient-card .hp-clinician-record-link:focus {
    background: #0b73bd;
    border-color: #0b73bd;
    color: #fff;
    outline: 0;
    text-decoration: none;
}

.hp-clinician-patient-empty,
.hp-clinician-patient-filter-empty {
    align-items: center;
    background: #f7fbfd;
    border: 1px dashed #bfd5e4;
    border-radius: 12px;
    color: #496b84;
    gap: 12px;
    grid-column: 1 / -1;
    justify-content: center;
    min-height: 140px;
    padding: 24px;
    text-align: center;
}

.hp-clinician-patient-filter-empty {
    display: flex;
}

.hp-clinician-patient-filter-empty[hidden] {
    display: none !important;
}

.hp-clinician-patient-filter-empty i {
    color: #0b73bd;
    font-size: 20px;
}

@media (max-width: 640px) {
    .hp-clinician-patient-add {
        justify-content: center;
        width: 100%;
    }

    .hp-clinician-patient-add-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-clinician-patient-add-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .hp-clinician-patient-add-actions button {
        width: 100%;
    }

    .hp-clinician-patient-toolbar {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
    }

    .hp-clinician-patient-filter {
        max-width: none;
    }

    .hp-clinician-patient-count {
        align-self: flex-start;
    }

    .hp-clinician-record-card.hp-clinician-patient-card {
        min-height: 0;
        padding: 16px;
    }
}

/* Keep appointment status actions in a stable grid after legacy modal rules. */
.hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-appointment-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 720px) {
    .hp-clinician-modal-layer[data-hp-active-modal="appointment-detail"] .hp-clinician-appointment-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Professional header notifications: keep the panel independent from the bell width. */
.hp-clinician-notifications {
    flex: 0 0 auto;
    position: relative;
}

.hp-clinician-notifications-popover {
    box-sizing: border-box;
    gap: 0;
    max-height: min(520px, calc(100vh - 88px));
    max-width: calc(100vw - 24px);
    min-width: 360px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    width: 360px;
    z-index: 1080;
}

.hp-clinician-notifications-popover::before {
    background: #fff;
    border-left: 1px solid #cde0ec;
    border-top: 1px solid #cde0ec;
    content: '';
    height: 12px;
    position: absolute;
    right: 15px;
    top: -7px;
    transform: rotate(45deg);
    width: 12px;
}

.hp-clinician-notifications-head {
    align-items: center;
    border-bottom: 1px solid #e0ebf2;
    display: grid;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 16px;
}

.hp-clinician-notification-head-icon,
.hp-clinician-notification-icon {
    align-items: center;
    background: #e8f7f6;
    border-radius: 12px;
    color: #087f7a;
    display: inline-flex;
    flex: 0 0 auto;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.hp-clinician-notification-icon {
    position: relative;
}

.hp-clinician-notification-icon > b {
    align-items: center;
    background: #d83b53;
    border: 2px solid #fff;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 10px;
    font-weight: 850;
    justify-content: center;
    line-height: 1;
    min-height: 18px;
    min-width: 18px;
    padding: 2px 4px;
    position: absolute;
    right: -6px;
    top: -6px;
}

.hp-clinician-notifications-head > span:last-child,
.hp-clinician-notification-copy {
    min-width: 0;
}

.hp-clinician-notifications-head strong {
    color: #0b2b4c;
    font-size: 16px;
    line-height: 1.25;
}

.hp-clinician-notifications-head small {
    color: #607a91;
    font-size: 12px;
    line-height: 1.45;
    margin: 3px 0 0;
}

.hp-clinician-notification-list {
    display: grid;
    padding: 6px;
}

.hp-clinician-popover .hp-clinician-notification-item {
    align-items: center;
    border-radius: 10px;
    box-sizing: border-box;
    display: grid;
    font-weight: 400;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr) 14px;
    min-height: 72px;
    padding: 10px;
    width: 100%;
}

.hp-clinician-popover .hp-clinician-notification-item[hidden] {
    display: none !important;
}

.hp-clinician-popover .hp-clinician-notification-item + .hp-clinician-notification-item {
    border-top: 1px solid #edf3f7;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.hp-clinician-popover .hp-clinician-notification-item.is-unread {
    background: #f1f9fe;
}

.hp-clinician-popover .hp-clinician-notification-item:hover,
.hp-clinician-popover .hp-clinician-notification-item:focus-visible {
    background: #e8f5fc;
    outline: 2px solid transparent;
}

.hp-clinician-notification-copy strong,
.hp-clinician-notification-copy small {
    display: block;
    max-width: 100%;
    overflow-wrap: break-word;
    white-space: normal;
    word-break: normal;
}

.hp-clinician-notification-copy strong {
    color: #0b2b4c;
    font-size: 14px;
    line-height: 1.4;
}

.hp-clinician-notification-copy small {
    color: #607a91;
    font-size: 12px;
    line-height: 1.35;
    margin: 3px 0 0;
}

.hp-clinician-notification-chevron {
    color: #7f97aa;
    font-size: 11px;
    justify-self: end;
}

/* Public search result contact panel: a clear, protected action surface. */
body.healthcare-search-body .healthcare-result-availability {
    background: linear-gradient(145deg, #fbfdff 0%, #f6fafc 100%);
    border: 1px solid #dce8f0;
    border-radius: 12px;
    min-width: 0;
    padding: 14px;
}

body.healthcare-search-body .healthcare-result-availability-head {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 12px;
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-availability-copy {
    display: grid;
    gap: 5px;
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-availability-copy > span {
    align-items: center;
    color: #183b56;
    display: flex;
    font-size: 12px;
    font-weight: 800;
    height: 28px;
    line-height: 1.3;
}

body.healthcare-search-body .healthcare-result-availability-copy > small {
    align-items: flex-start;
    color: #60758a;
    display: inline-flex;
    font-size: 12px;
    gap: 6px;
    line-height: 1.35;
    max-width: none;
    min-width: 0;
    overflow: visible;
    white-space: normal;
}

body.healthcare-search-body .healthcare-result-availability-copy > small i {
    color: #0c8a80;
    flex: 0 0 auto;
    margin-top: 2px;
}

body.healthcare-search-body .healthcare-result-availability-copy > small span {
    overflow-wrap: anywhere;
}

body.healthcare-search-body .healthcare-result-contact-protected {
    align-items: center;
    background: #e7f6f2;
    border: 1px solid #c8e9e1;
    border-radius: 999px;
    color: #08766e;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 800;
    height: 36px;
    justify-content: center;
    line-height: 1;
    padding: 0;
    width: 36px;
}

body.healthcare-search-body .healthcare-result-contact-protected.is-verified {
    font-size: 18px;
    position: relative;
}

body.healthcare-search-body .healthcare-result-contact-protected.is-verified::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
    height: 7px;
    left: 50%;
    position: absolute;
    top: 46%;
    transform: translate(-50%, -50%) rotate(45deg);
    width: 4px;
}

body.healthcare-search-body .healthcare-result-contact-tools {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 6px;
}

body.healthcare-search-body .healthcare-result-contact-tools .healthcare-result-claim--icon,
body.healthcare-search-body .healthcare-result-report-icon {
    align-items: center;
    background: #fff;
    border: 1px solid #d7e6ef;
    border-radius: 999px;
    color: #60758a;
    display: inline-flex;
    flex: 0 0 auto;
    height: 36px;
    justify-content: center;
    padding: 0;
    text-decoration: none;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
    width: 36px;
}

body.healthcare-search-body .healthcare-result-contact-tools .healthcare-result-claim--icon:hover,
body.healthcare-search-body .healthcare-result-contact-tools .healthcare-result-claim--icon:focus-visible {
    background: #eef8fc;
    border-color: #9dcbe4;
    color: #075f9f;
    outline: 0;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-result-report-icon:hover,
body.healthcare-search-body .healthcare-result-report-icon:focus-visible {
    background: #fff7ed;
    border-color: #f4c58f;
    color: #a44b0f;
    outline: 0;
}

body.healthcare-search-body .healthcare-result-contact-list {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.healthcare-search-body .healthcare-result-contact-list a,
body.healthcare-search-body .healthcare-result-contact-list button {
    background: #fff;
    border: 1px solid #d7e6ef;
    border-radius: 9px;
    box-shadow: 0 1px 2px rgba(8, 35, 63, .03);
    box-sizing: border-box;
    color: #086cad;
    font-size: 13px;
    font-weight: 700;
    gap: 8px;
    justify-content: center;
    line-height: 1.35;
    min-height: 42px;
    padding: 10px 11px;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease;
    width: 100%;
}

body.healthcare-search-body .healthcare-result-contact-list > .is-primary,
body.healthcare-search-body .healthcare-result-contact-list > :last-child:nth-child(even) {
    grid-column: 1 / -1;
}

body.healthcare-search-body .healthcare-result-contact-list .is-primary {
    background: #0876c9;
    border-color: #0876c9;
    box-shadow: 0 5px 14px rgba(8, 118, 201, .17);
    color: #fff;
    font-weight: 800;
}

body.healthcare-search-body .healthcare-result-contact-list .is-primary > i {
    color: currentColor;
}

body.healthcare-search-body .healthcare-result-contact-list .is-primary:hover,
body.healthcare-search-body .healthcare-result-contact-list .is-primary:focus-visible {
    background: #075f9f;
    border-color: #075f9f;
    box-shadow: 0 7px 18px rgba(8, 95, 159, .2);
    color: #fff;
}

body.healthcare-search-body .healthcare-result-contact-list a > span,
body.healthcare-search-body .healthcare-result-contact-list button > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.healthcare-search-body .healthcare-result-contact-list a:hover,
body.healthcare-search-body .healthcare-result-contact-list a:focus,
body.healthcare-search-body .healthcare-result-contact-list button:hover,
body.healthcare-search-body .healthcare-result-contact-list button:focus {
    background: #f1f8fd;
    border-color: #8fc4e7;
    box-shadow: 0 4px 12px rgba(8, 76, 123, .08);
    color: #075b92;
    outline: 0;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-result-contact-list button[aria-busy="true"] {
    cursor: progress;
    opacity: .72;
}

body.healthcare-search-body .healthcare-result-actions {
    gap: 8px;
    grid-template-columns: minmax(0, 1fr);
    margin-top: 10px;
}

body.healthcare-search-body .healthcare-result-actions .btn {
    align-items: center;
    border-radius: 9px;
    box-sizing: border-box;
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 7px;
    justify-content: center;
    line-height: 1.2;
    min-height: 42px;
    min-width: 0;
    padding: 9px 10px;
    text-align: center;
    white-space: normal;
}

body.healthcare-search-body .healthcare-result-actions .btn > i {
    flex: 0 0 auto;
    margin-right: 0;
}

body.healthcare-search-body .healthcare-result-actions .btn > span {
    min-width: 0;
    overflow-wrap: break-word;
    white-space: normal;
}

body.healthcare-search-body .healthcare-result-actions .btn-default {
    background: #fff;
    border-color: #cbdde8;
    color: #173f5e;
}

body.healthcare-search-body .healthcare-result-actions .btn-default:hover,
body.healthcare-search-body .healthcare-result-actions .btn-default:focus {
    background: #eef6fb;
    border-color: #91b9d2;
    color: #0b4f79;
}

body.healthcare-search-body .healthcare-result-secondary-actions {
    border-top: 1px solid #dfe9ef;
    gap: 8px;
    margin-top: 11px;
    padding-top: 6px;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-claim,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit {
    align-items: center;
    border-radius: 7px;
    box-sizing: border-box;
    display: inline-flex;
    gap: 6px;
    justify-content: center;
    min-height: 32px;
    padding: 6px 8px;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report {
    margin: 0 0 0 auto;
    width: auto;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-claim:hover,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-claim:focus,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report:hover,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-report:focus,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit:hover,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit:focus {
    background: #eaf3f8;
    outline: 0;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit {
    background: #eef8fc;
    color: #0a679f;
}

/* Clinic team roster: one calm information layer instead of nested cards. */
body.healthcare-search-body .healthcare-result-roster {
    background: #f4faf9;
    border: 1px solid #d5eae6;
    border-radius: 11px;
    color: #153a57;
    margin: 0;
    overflow: hidden;
    padding: 0;
}

body.healthcare-search-body .healthcare-result-card > .healthcare-result-roster {
    grid-column: 1;
    min-width: 0;
}

body.healthcare-search-body .healthcare-result-roster-head {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    min-height: 38px;
    padding: 8px 10px;
}

body.healthcare-search-body .healthcare-result-roster-head > strong {
    align-items: center;
    color: #173f5e;
    display: inline-flex;
    font-size: 12px;
    gap: 7px;
    letter-spacing: 0;
    line-height: 1.3;
    margin: 0;
}

body.healthcare-search-body .healthcare-result-roster-head > strong i {
    color: #07877b;
    font-size: 12px;
}

body.healthcare-search-body .healthcare-result-roster-count {
    align-items: center;
    background: #dff3ef;
    border-radius: 999px;
    color: #08766e;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 800;
    height: 23px;
    justify-content: center;
    min-width: 23px;
    padding: 0 7px;
}

body.healthcare-search-body .healthcare-result-roster-list {
    display: grid;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0 10px 5px;
}

body.healthcare-search-body .healthcare-result-roster-list > li {
    align-items: center;
    border-top: 1px solid #dcebe8;
    display: grid;
    gap: 9px;
    grid-template-columns: 32px minmax(0, 1fr);
    min-width: 0;
    padding: 9px 2px;
}

body.healthcare-search-body .healthcare-result-roster-list > li.is-query-match {
    background: #e8f7f4;
    border-left: 3px solid #0a8c80;
    margin: 0 -4px;
    padding-left: 5px;
    padding-right: 4px;
}

body.healthcare-search-body .healthcare-result-roster-avatar {
    align-items: center;
    background: #e1f3f0;
    border-radius: 50%;
    color: #087b72;
    display: inline-flex;
    height: 32px;
    justify-content: center;
    width: 32px;
}

body.healthcare-search-body .healthcare-result-roster-avatar i {
    font-size: 13px;
}

body.healthcare-search-body .healthcare-result-roster-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

body.healthcare-search-body a.healthcare-result-roster-copy {
    border-radius: 6px;
    text-decoration: none;
}

body.healthcare-search-body a.healthcare-result-roster-copy:hover b,
body.healthcare-search-body a.healthcare-result-roster-copy:focus b {
    color: #0a6faf;
    text-decoration: underline;
}

body.healthcare-search-body .healthcare-result-roster-copy b,
body.healthcare-search-body .healthcare-result-roster-copy small {
    display: block;
    overflow-wrap: anywhere;
}

body.healthcare-search-body .healthcare-result-roster-copy b {
    color: #102f4a;
    font-size: 13px;
    line-height: 1.25;
}

body.healthcare-search-body .healthcare-result-roster-copy small {
    color: #5c7487;
    font-size: 12px;
    line-height: 1.3;
}

body.healthcare-search-body .healthcare-result-roster-more {
    border-top: 1px solid #dcebe8;
    color: #08766e;
    display: block;
    font-size: 11px;
    font-weight: 800;
    margin: 0 10px;
    padding: 9px 2px 10px;
}

body.healthcare-search-body a.healthcare-result-roster-more {
    align-items: center;
    display: flex;
    gap: 7px;
    justify-content: space-between;
    text-decoration: none;
}

body.healthcare-search-body a.healthcare-result-roster-more:hover,
body.healthcare-search-body a.healthcare-result-roster-more:focus {
    color: #0a6faf;
    text-decoration: underline;
}

body.healthcare-search-body .healthcare-result-affiliations-copy a {
    color: inherit;
    text-decoration: none;
}

body.healthcare-search-body .healthcare-result-affiliations-copy a:hover,
body.healthcare-search-body .healthcare-result-affiliations-copy a:focus {
    color: #0a6faf;
    text-decoration: underline;
}

@media (max-width: 767px) {
    body.healthcare-search-body .healthcare-result-card > .healthcare-result-roster {
        grid-column: auto;
    }

    body.healthcare-search-body .healthcare-result-roster-head {
        min-height: 42px;
        padding: 9px 11px;
    }

    body.healthcare-search-body .healthcare-result-roster-list {
        display: grid;
        padding-left: 11px;
        padding-right: 11px;
    }

    body.healthcare-search-body .healthcare-result-roster-list > li {
        min-height: 48px;
        width: auto;
    }
}

body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit:hover,
body.healthcare-search-body .healthcare-result-secondary-actions .healthcare-result-admin-edit:focus {
    background: #dceff8;
    color: #075682;
}

body.healthcare-search-body .healthcare-result-secondary-actions .fa {
    display: inline-block;
    flex: 0 0 auto;
}

/* Patient appointment history: dependable hash navigation and clear feedback. */
.hp-past-appointments-section {
    outline: 0;
    scroll-margin-top: 94px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.hp-past-appointments-section.is-anchor-highlighted,
.hp-past-appointments-section:target {
    border-color: #68addd;
    box-shadow: 0 0 0 3px rgba(15, 126, 214, .12), 0 12px 35px rgba(9, 30, 66, .08);
}

.hp-past-appointments-empty {
    background: #f6fafc;
    border: 1px dashed #cbdde8;
    border-radius: 10px;
    min-height: 210px;
}

.hp-past-appointments-empty p {
    margin-bottom: 0;
}

@media (max-width: 760px) {
    .hp-past-appointments-section {
        scroll-margin-top: 72px;
    }
}
.hp-global-account {
    position: relative;
    z-index: 80;
}

.hp-global-account-toggle {
    align-items: center;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 8px;
    color: inherit;
    cursor: pointer;
    display: inline-flex;
    gap: 10px;
    min-height: 44px;
    padding: 5px 10px 5px 6px;
}

.hp-global-account-avatar {
    align-items: center;
    background: #0f9d94;
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    flex: 0 0 36px;
    font-size: 13px;
    font-weight: 800;
    height: 36px;
    justify-content: center;
    line-height: 1;
    width: 36px;
}

.hp-global-account-toggle-copy,
.hp-global-account-summary > span:last-child,
.hp-global-account-roles span {
    display: flex;
    flex-direction: column;
    min-width: 0;
    text-align: left;
}

.hp-global-account-toggle-copy strong,
.hp-global-account-toggle-copy small {
    color: inherit;
    line-height: 1.2;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-global-account-toggle-copy small {
    font-size: 11px;
    opacity: 0.78;
}

.hp-global-account-panel {
    background: #fff;
    border: 1px solid #d9e5ec;
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(11, 35, 52, 0.2);
    color: #12344d;
    min-width: 310px;
    padding: 14px;
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    z-index: 1000;
}

.hp-global-account-summary {
    align-items: center;
    border-bottom: 1px solid #e6eef3;
    display: flex;
    gap: 11px;
    padding: 2px 2px 13px;
}

.hp-global-account-summary strong,
.hp-global-account-summary small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-global-account-summary small,
.hp-global-account-roles small {
    color: #60788a;
    font-size: 12px;
}

.hp-global-account-heading {
    color: #60788a;
    font-size: 11px;
    font-weight: 800;
    margin: 13px 4px 6px;
    text-transform: uppercase;
}

.hp-global-account-role-form {
    margin: 0;
}

.hp-global-account-roles a,
.hp-global-account-role-form button,
.hp-global-account-links a {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 6px;
    color: #12344d;
    display: flex;
    gap: 11px;
    min-height: 48px;
    padding: 8px 10px;
    text-align: left;
    text-decoration: none;
    width: 100%;
}

.hp-global-account-roles a:hover,
.hp-global-account-role-form button:hover,
.hp-global-account-links a:hover {
    background: #eef7f8;
    color: #087e78;
}

.hp-global-account-roles a > i:first-child,
.hp-global-account-role-form button > i:first-child,
.hp-global-account-links a > i:first-child {
    text-align: center;
    width: 20px;
}

.hp-global-account-roles span,
.hp-global-account-role-form span {
    flex: 1;
}

.hp-global-account-roles .is-active {
    background: #e3f3f2;
    color: #075f5b;
}

/* Keep the menu palette isolated from public-header link styles. */
.hp-global-account-panel .hp-global-account-roles a,
.hp-global-account-panel .hp-global-account-role-form button,
.hp-global-account-panel .hp-global-account-links a {
    color: #12344d;
}

.hp-global-account-panel .hp-global-account-roles a strong,
.hp-global-account-panel .hp-global-account-role-form button strong,
.hp-global-account-panel .hp-global-account-links a span,
.hp-global-account-panel .hp-global-account-roles a > i,
.hp-global-account-panel .hp-global-account-role-form button > i,
.hp-global-account-panel .hp-global-account-links a > i {
    color: inherit;
}

.hp-global-account-panel .hp-global-account-roles a small,
.hp-global-account-panel .hp-global-account-role-form button small {
    color: #60788a;
}

.hp-global-account-panel .hp-global-account-roles .is-active,
.hp-global-account-panel .hp-global-account-roles .is-active strong,
.hp-global-account-panel .hp-global-account-roles .is-active > i {
    color: #075f5b;
}

.hp-global-account-panel .hp-global-account-roles a:hover,
.hp-global-account-panel .hp-global-account-roles a:focus-visible,
.hp-global-account-panel .hp-global-account-role-form button:hover,
.hp-global-account-panel .hp-global-account-role-form button:focus-visible,
.hp-global-account-panel .hp-global-account-links a:hover,
.hp-global-account-panel .hp-global-account-links a:focus-visible {
    background: #e8f4f5;
    color: #075f5b;
    outline: 2px solid transparent;
}

.hp-global-account-panel .hp-global-account-roles a:focus-visible,
.hp-global-account-panel .hp-global-account-role-form button:focus-visible,
.hp-global-account-panel .hp-global-account-links a:focus-visible {
    box-shadow: 0 0 0 3px rgba(8, 126, 120, .22);
}

.hp-global-account-links {
    border-top: 1px solid #e6eef3;
    margin-top: 8px;
    padding-top: 8px;
}

.hp-global-account-links a {
    min-height: 44px;
}

@media (max-width: 767px) {
    .hp-global-account-toggle-copy,
    .hp-global-account-toggle > .fa-chevron-down {
        display: none;
    }

    .hp-global-account-toggle {
        border-radius: 50%;
        min-height: 44px;
        padding: 3px;
        width: 44px;
    }

    .hp-global-account-toggle .hp-global-account-avatar {
        flex-basis: 36px;
    }

    .hp-global-account-panel {
        max-width: calc(100vw - 24px);
        min-width: min(310px, calc(100vw - 24px));
        position: fixed;
        right: 12px;
        top: 70px;
    }
}
.hp-imported-patient-context{margin:0 14px 18px;padding:18px;border:1px solid #bdd9e5;border-left:4px solid #168f82;border-radius:10px;background:#f5fbfc}.hp-imported-patient-context>header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.hp-imported-patient-context>header>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:9px;background:#dff4ef;color:#087f72}.hp-imported-patient-context h2{margin:0 0 3px;font-size:19px}.hp-imported-patient-context header p{margin:0;color:#587486}.hp-imported-patient-context>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hp-imported-patient-context article{padding:12px;border:1px solid #d5e5eb;border-radius:8px;background:#fff}.hp-imported-patient-context article small{display:block;margin-bottom:5px;color:#60798a;font-weight:800}.hp-imported-patient-context article strong,.hp-imported-patient-context article p{margin:0;color:#163b53;line-height:1.45}.hp-imported-patient-context article.is-warning{border-color:#efcf8d;background:#fffaf0}@media(max-width:720px){.hp-imported-patient-context{margin:0 10px 14px}.hp-imported-patient-context>div{grid-template-columns:1fr}}

/* Patient health record: calm, readable visit-history cards. */
.hp-clinical-grid {
    align-items: start;
    gap: 22px;
}

.hp-clinical-panel {
    border-color: #cfe0ea;
    border-radius: 14px;
    box-shadow: 0 10px 28px rgba(18, 58, 80, .055);
    min-width: 0;
    padding: 22px;
}

.hp-clinical-panel > header {
    align-items: center;
    gap: 18px;
    margin-bottom: 18px;
    padding-bottom: 18px;
}

.hp-clinical-panel-icon {
    align-items: center;
    background: #e7f5f2;
    border-radius: 12px;
    color: #087f70;
    display: inline-flex;
    flex: 0 0 44px;
    font-size: 19px;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.hp-clinical-timeline {
    gap: 12px;
}

.hp-clinical-timeline .hp-visit-card {
    align-items: center;
    background: #fbfdfe;
    border: 1px solid #d9e7ef;
    border-radius: 12px;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(150px, .75fr) minmax(220px, 1.35fr) auto;
    min-height: 84px;
    overflow: hidden;
    padding: 15px 16px 15px 19px;
    position: relative;
}

.hp-clinical-timeline .hp-visit-card::before {
    background: #168f82;
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    top: 0;
    width: 4px;
}

.hp-clinical-timeline .hp-visit-card.is-cancelled_by_patient::before,
.hp-clinical-timeline .hp-visit-card.is-cancelled_by_staff::before,
.hp-clinical-timeline .hp-visit-card.is-expired::before,
.hp-clinical-timeline .hp-visit-card.is-no_show::before {
    background: #c45858;
}

.hp-clinical-timeline .hp-visit-card.is-held::before,
.hp-clinical-timeline .hp-visit-card.is-rescheduled::before {
    background: #bf8428;
}

.hp-visit-when time {
    align-items: center;
    color: #46677b;
    display: flex;
    font-size: 13px;
    font-weight: 700;
    gap: 9px;
    line-height: 1.35;
}

.hp-visit-when time i {
    align-items: center;
    background: #e8f4fa;
    border-radius: 9px;
    color: #0878c9;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.hp-visit-person {
    align-items: center;
    display: grid;
    gap: 11px;
    grid-template-columns: 42px minmax(0, 1fr);
    min-width: 0;
}

.hp-visit-avatar {
    align-items: center;
    background: #dff3f5;
    border-radius: 50%;
    color: #087c83;
    display: inline-flex;
    flex: 0 0 42px;
    font-size: 12px;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    letter-spacing: .02em;
    width: 42px;
}

.hp-visit-copy {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.hp-visit-copy strong {
    color: #082d47;
    font-size: 14px;
    line-height: 1.35;
}

.hp-visit-copy span {
    color: #587487;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.hp-visit-status {
    justify-self: end;
}

.hp-visit-status .label {
    border: 1px solid transparent;
    border-radius: 999px;
    display: inline-flex;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0;
    line-height: 1.2;
    padding: 7px 10px;
    text-transform: none;
    white-space: nowrap;
}

.hp-visit-status .label-success {
    background: #e5f6ef;
    border-color: #bfe6d7;
    color: #08735f;
}

.hp-visit-status .label-warning {
    background: #fff5de;
    border-color: #ecd9a6;
    color: #8b621e;
}

.hp-visit-status .label-danger {
    background: #fff0ef;
    border-color: #efcecb;
    color: #a74444;
}

.hp-visit-status .label-info,
.hp-visit-status .label-default {
    background: #eaf3fa;
    border-color: #ccdfed;
    color: #315f7d;
}

.hp-visit-history-panel .hp-clinical-empty {
    align-items: center;
    border: 1px dashed #cbdde8;
    display: flex;
    gap: 10px;
    margin: 0;
}

@media (max-width: 1100px) {
    .hp-clinical-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 720px) {
    .hp-clinical-panel {
        border-radius: 12px;
        padding: 16px;
    }

    .hp-clinical-timeline .hp-visit-card {
        gap: 13px;
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 14px 14px 14px 17px;
    }

    .hp-visit-when {
        min-width: 0;
    }

    .hp-visit-person {
        grid-column: 1 / -1;
    }

    .hp-visit-status {
        grid-column: 2;
        grid-row: 1;
    }
}

@media (max-width: 430px) {
    .hp-clinical-timeline .hp-visit-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-visit-person,
    .hp-visit-status {
        grid-column: 1;
    }

    .hp-visit-status {
        grid-row: auto;
        justify-self: start;
        padding-left: 53px;
    }
}

/* Keep the clinic team action aligned, readable, and independent of global CTA spacing. */
.hp-organization-head {
    align-items: center;
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100%;
}

.hp-organization-head .hp-organization-add-action {
    align-items: center;
    align-self: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    margin: 0;
    min-height: 44px;
    min-width: 154px;
    padding: 0 18px;
    text-decoration: none;
    white-space: nowrap;
}

.hp-organization-head .hp-organization-add-action i {
    flex: 0 0 auto;
    font-size: 13px;
    line-height: 1;
    margin: 0;
}

.hp-organization-head .hp-organization-add-action:hover,
.hp-organization-head .hp-organization-add-action:focus {
    background: #0d73bd;
    color: #fff;
    text-decoration: none;
}

.hp-organization-head .hp-organization-add-action:focus-visible {
    box-shadow: 0 0 0 3px rgba(17, 126, 208, .22);
    outline: 0;
}

@media (max-width: 720px) {
    .hp-organization-head {
        gap: 16px;
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-organization-head .hp-organization-add-action {
        justify-self: stretch;
        width: 100%;
    }
}

/* Quick doctor creation keeps the common path short; advanced access stays in Settings. */
body.hp-quick-doctor-open { overflow: hidden; }
.hp-organization-head button.hp-organization-add-action,
button.hp-organization-role-add { cursor: pointer; }
button.hp-organization-role-add { padding: 0; }
.hp-quick-doctor-modal {
    align-items: center;
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 20px;
    position: fixed;
    z-index: 2100;
}
.hp-quick-doctor-modal[hidden] { display: none!important; }
.hp-quick-doctor-modal__backdrop { background: rgba(4, 31, 51, .64); inset: 0; position: absolute; }
.hp-quick-doctor-dialog {
    background: #fff;
    border: 1px solid #cfe0e9;
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(4, 31, 51, .28);
    max-height: calc(100vh - 40px);
    max-width: 560px;
    overflow: auto;
    position: relative;
    width: 100%;
}
.hp-quick-doctor-dialog>header {
    align-items: flex-start;
    border-bottom: 1px solid #e0e9ee;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 18px 20px 15px;
}
.hp-quick-doctor-dialog>header span { color: #087f70; font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.hp-quick-doctor-dialog>header h2 { color: #0b2f4a; font-size: 20px; margin: 3px 0 0; }
.hp-quick-doctor-dialog>header>button {
    align-items: center;
    background: #f0f5f7;
    border: 0;
    border-radius: 8px;
    color: #294e63;
    display: inline-flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
}
.hp-quick-doctor-form { padding: 18px 20px 20px; }
.hp-quick-doctor-form__intro { color: #5c7482; font-size: 12px; line-height: 1.5; margin: 0 0 15px; }
.hp-quick-doctor-form__fields { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hp-quick-doctor-form__fields label { display: grid; gap: 6px; margin: 0; }
.hp-quick-doctor-form__fields label.is-wide { grid-column: 1 / -1; }
.hp-quick-doctor-form__fields label>span { color: #163d55; font-size: 12px; font-weight: 800; }
.hp-quick-doctor-form__fields label>span small { color: #78909d; font-size: 10px; font-weight: 650; }
.hp-quick-doctor-form__fields input {
    background: #fff;
    border: 1px solid #b9d0dc;
    border-radius: 8px;
    color: #0b2f4a;
    font-size: 16px;
    min-height: 44px;
    padding: 9px 11px;
    width: 100%;
}
.hp-quick-doctor-form__fields input:focus { border-color: #087f70; box-shadow: 0 0 0 3px rgba(8, 127, 112, .12); outline: 0; }
.hp-quick-doctor-price {
    align-items: flex-start;
    background: #fff8e8;
    border: 1px solid #ecd39d;
    border-radius: 9px;
    color: #6d5728;
    display: flex;
    font-size: 11px;
    gap: 8px;
    line-height: 1.45;
    margin-top: 14px;
    padding: 10px 11px;
}
.hp-quick-doctor-price i { color: #9a6800; margin-top: 2px; }
.hp-quick-doctor-form>footer { margin-top: 16px; }
.hp-quick-doctor-form>footer button { justify-content: center; min-height: 44px; width: 100%; }
.hp-quick-doctor-form button.is-loading { cursor: wait; opacity: .72; }
.hp-quick-doctor-dialog button:focus-visible { box-shadow: 0 0 0 3px rgba(8, 127, 112, .2); outline: 0; }
@media (max-width: 560px) {
    .hp-quick-doctor-modal { align-items: flex-end; padding: 0; }
    .hp-quick-doctor-dialog { border-radius: 14px 14px 0 0; max-height: 92vh; }
    .hp-quick-doctor-form__fields { grid-template-columns: minmax(0, 1fr); }
    .hp-quick-doctor-form__fields label.is-wide { grid-column: auto; }
}

/* Staff account editing stays out of the organization cards. */
body.hp-member-account-open { overflow: hidden; }
.hp-member-account-modal {
    align-items: flex-start;
    display: flex;
    inset: 0;
    justify-content: center;
    overflow-y: auto;
    padding: 12px 20px;
    position: fixed;
    z-index: 2120;
}
.hp-member-account-modal[hidden] { display: none!important; }
.hp-member-account-modal__backdrop { background: rgba(4,31,51,.64); inset: 0; position: absolute; }
.hp-member-account-dialog {
    background: #fff;
    border: 1px solid #cfe0e9;
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(4,31,51,.28);
    margin: auto;
    max-width: 680px;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 1;
}
.hp-member-account-dialog>header {
    align-items: flex-start;
    border-bottom: 1px solid #dce7ef;
    display: flex;
    justify-content: space-between;
    padding: 16px 20px 14px;
}
.hp-member-account-dialog>header h2 { color: #082f4d; font-size: 21px; line-height: 1.25; margin: 0; }
.hp-member-account-dialog>header p { color: #61778a; font-size: 13px; font-weight: 750; margin: 4px 0 0; }
.hp-member-account-dialog>header button {
    align-items: center;
    background: #f1f6f9;
    border: 0;
    border-radius: 9px;
    color: #17384f;
    cursor: pointer;
    display: flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
    margin-left: 16px;
    width: 40px;
}
.hp-member-account-tabs {
    background: #f7fafc;
    border-bottom: 1px solid #dce7ef;
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2,minmax(0,1fr));
    padding: 8px 20px;
}
.hp-member-account-tabs button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #526b7d;
    cursor: pointer;
    display: flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 40px;
    padding: 8px 12px;
}
.hp-member-account-tabs button.is-active { background: #fff; box-shadow: 0 1px 4px rgba(8,47,77,.1); color: #087f70; }
.hp-member-account-form { margin: 0; padding: 16px 20px 12px; }
.hp-member-account-fields { display: grid; gap: 14px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.hp-member-account-fields label { display: grid; gap: 6px; min-width: 0; }
.hp-member-account-fields label.is-wide { grid-column: 1 / -1; }
.hp-member-account-fields label span { color: #203b50; font-size: 12px; font-weight: 800; }
.hp-member-account-fields input {
    background: #fff;
    border: 1px solid #bfd1de;
    border-radius: 9px;
    color: #102f47;
    font-size: 16px;
    min-height: 44px;
    min-width: 0;
    padding: 9px 11px;
    width: 100%;
}
.hp-member-account-fields input:focus { border-color: #078b7a; box-shadow: 0 0 0 3px rgba(7,139,122,.14); outline: 0; }
.hp-member-account-form>.hp-team-owner-action { margin-top: 16px; min-height: 44px; width: 100%; }
.hp-member-account-actions {
    background: #fff;
    border-top: 1px solid #e3ebf0;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2,minmax(0,1fr));
    padding: 12px 20px 16px;
}
.hp-member-account-actions form { margin: 0; }
.hp-member-account-actions .hp-team-owner-action {
    background: #fff;
    border-color: #c8d7e1;
    box-sizing: border-box;
    color: #17384f;
    min-height: 42px;
    width: 100%;
}
.hp-member-account-actions .hp-team-owner-action.is-dark { background: #eef5f8; border-color: #d5e3eb; color: #123b58; }
.hp-member-account-actions .hp-team-owner-action:hover { background: #f5f9fb; border-color: #9fb8c8; color: #082f4d; }
.hp-member-access-form { padding: 16px 20px 20px; }
.hp-member-access-form>p { color: #61778a; font-size: 12px; margin: 0 0 12px; }
.hp-member-access-grid { display: grid; gap: 8px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.hp-member-access-grid label { cursor: pointer; margin: 0; min-width: 0; }
.hp-member-access-grid input { height: 1px; opacity: 0; position: absolute; width: 1px; }
.hp-member-access-grid span {
    align-items: center;
    background: #f7fafc;
    border: 1px solid #d3e1e8;
    border-radius: 9px;
    color: #3f5c70;
    display: flex;
    font-size: 12px;
    font-weight: 750;
    gap: 9px;
    min-height: 44px;
    padding: 9px 11px;
}
.hp-member-access-grid span i { align-items: center; border: 1px solid #a9c0cc; border-radius: 5px; color: transparent; display: flex; flex: 0 0 20px; height: 20px; justify-content: center; }
.hp-member-access-grid input:checked+span { background: #eaf8f5; border-color: #63bba7; color: #075f53; }
.hp-member-access-grid input:checked+span i { background: #087f70; border-color: #087f70; color: #fff; }
.hp-member-access-grid input:focus-visible+span { box-shadow: 0 0 0 3px rgba(8,127,112,.18); }
.hp-member-access-form>.hp-team-owner-action { margin-top: 14px; min-height: 44px; width: 100%; }
.hp-member-account-dialog button.is-loading { cursor: wait; opacity: .7; }
.hp-member-account-dialog button:focus-visible { box-shadow: 0 0 0 3px rgba(8,127,112,.2); outline: 0; }
@media (max-width: 560px) {
    .hp-member-account-modal { padding: 12px; }
    .hp-member-account-dialog { border-radius: 14px; }
    .hp-member-account-dialog>header { padding: 18px 18px 14px; }
    .hp-member-account-form { padding: 16px 18px 12px; }
    .hp-member-account-fields { grid-template-columns: minmax(0,1fr); }
    .hp-member-account-fields label.is-wide { grid-column: auto; }
    .hp-member-account-actions { grid-template-columns: minmax(0,1fr); padding: 12px 18px 16px; }
    .hp-member-account-tabs { padding: 8px 12px; }
    .hp-member-access-form { padding: 16px 18px 18px; }
    .hp-member-access-grid { grid-template-columns: minmax(0,1fr); }
}

/* Professional registration conversion flow. Kept page-scoped to avoid changing other auth screens. */
.hp-professional-register-shell {
    background: #eef6fb;
    color: #082944;
    min-height: 100vh;
    overflow-x: hidden;
}

.hp-professional-register-shell .hp-pro-auth-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1180px;
    min-height: 84px;
    padding: 20px 24px;
}

.hp-professional-register-shell .hp-pro-brand,
.hp-professional-register-shell .hp-pro-brand img {
    display: block;
}

.hp-professional-register-shell .hp-pro-brand img {
    height: 40px;
    max-width: 230px;
    object-fit: contain;
    object-position: left center;
    width: auto;
}

.hp-professional-register-shell .hp-pro-auth-header nav {
    align-items: center;
    display: flex;
    gap: 28px;
}

.hp-professional-register-shell .hp-pro-auth-header nav a {
    color: #0b3553;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none;
}

.hp-professional-register-shell .hp-pro-auth-header nav a:hover,
.hp-professional-register-shell .hp-pro-auth-header nav a:focus-visible {
    color: #078a7e;
}

.hp-professional-register-main {
    align-items: start;
    display: grid;
    gap: 24px;
    grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr);
    margin: 0 auto;
    max-width: 1180px;
    padding: 22px 24px 64px;
}

.hp-professional-register-main > .hp-pro-auth-card,
.hp-professional-register-main > .hp-pro-auth-aside {
    border-radius: 8px;
    min-width: 0;
}

.hp-professional-register-main > .hp-pro-auth-card {
    background: #fff;
    border: 1px solid #c9dce8;
    box-shadow: 0 18px 42px rgba(7, 39, 65, .08);
    padding: 40px;
}

.hp-professional-register-main .hp-pro-kicker {
    color: #087d70;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.hp-professional-register-main > .hp-pro-auth-card h1 {
    color: #062844;
    font-size: 38px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.12;
    margin: 0 0 10px;
}

.hp-professional-register-main .hp-pro-auth-lead {
    color: #456479;
    font-size: 16px;
    line-height: 1.55;
    margin: 0 0 24px;
    max-width: 660px;
}

/* Keep the two registration steps in separate, shrinkable columns. */
.hp-professional-register-steps {
    align-items: center;
    background: #f4f9fc;
    border: 1px solid #d2e2eb;
    border-radius: 8px;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 0 26px;
    padding: 12px 14px;
}

.hp-professional-register-steps span {
    align-items: center;
    color: #526f82;
    display: flex;
    font-size: 12px;
    font-weight: 750;
    gap: 8px;
    line-height: 1.35;
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.hp-professional-register-steps span b {
    align-items: center;
    background: #dceaf1;
    border-radius: 50%;
    color: #31556c;
    display: inline-flex;
    flex: 0 0 26px;
    height: 26px;
    justify-content: center;
}

.hp-professional-register-steps span.is-active {
    color: #082944;
}

.hp-professional-register-steps span.is-active b,
.hp-professional-register-steps span.is-complete b {
    background: #078a7e;
    color: #fff;
}

.hp-professional-register-steps > i {
    color: #9bb1be;
    font-size: 10px;
}

.hp-professional-register-form.is-enhanced .hp-professional-register-panel:not(.is-active) {
    display: none;
}

.hp-professional-register-panel-heading {
    align-items: flex-start;
    display: flex;
    gap: 14px;
    margin-bottom: 20px;
}

.hp-professional-register-panel-heading > span {
    align-items: center;
    background: #e2f6f2;
    border-radius: 50%;
    color: #087d70;
    display: inline-flex;
    flex: 0 0 34px;
    font-size: 14px;
    font-weight: 800;
    height: 34px;
    justify-content: center;
}

.hp-professional-register-panel-heading h2 {
    color: #0b3553;
    font-size: 22px;
    font-weight: 750;
    letter-spacing: 0;
    line-height: 1.25;
    margin: 0 0 4px;
}

.hp-professional-register-panel-heading p {
    color: #627d8f;
    font-size: 13px;
    line-height: 1.45;
    margin: 0;
}

.hp-professional-register-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hp-professional-register-form .hp-pro-field {
    display: grid;
    gap: 7px;
    margin-bottom: 17px;
}

.hp-professional-register-form .hp-pro-field > span:first-child {
    color: #102f47;
    font-size: 13px;
    font-style: normal;
    font-weight: 750;
}

.hp-professional-register-form input {
    background: #fff;
    border: 1px solid #afc8d8;
    border-radius: 7px;
    box-shadow: none;
    color: #082944;
    font-size: 16px;
    min-height: 52px;
    padding: 0 14px;
    width: 100%;
}

.hp-professional-register-form input:focus {
    border-color: #078a7e;
    box-shadow: 0 0 0 3px rgba(7, 138, 126, .14);
    outline: 0;
}

.hp-professional-register-actions {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-top: 4px;
}

.hp-professional-register-form .hp-pro-primary,
.hp-professional-register-back {
    align-items: center;
    border-radius: 7px;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    gap: 10px;
    justify-content: center;
    min-height: 50px;
    padding: 0 24px;
}

.hp-professional-register-form .hp-pro-primary {
    background: #082944;
    border: 1px solid #082944;
    color: #fff;
    min-width: 190px;
}

.hp-professional-register-form .hp-pro-primary:hover,
.hp-professional-register-form .hp-pro-primary:focus-visible {
    background: #0d3d5e;
    border-color: #0d3d5e;
}

.hp-professional-register-back {
    background: #fff;
    border: 1px solid #b9cfdd;
    color: #244c65;
}

.hp-professional-register-password-control {
    display: block;
    position: relative;
}

.hp-professional-register-password-control input {
    padding-right: 52px;
}

.hp-professional-register-password-control button {
    align-items: center;
    background: transparent;
    border: 0;
    color: #4e6d81;
    display: flex;
    height: 44px;
    justify-content: center;
    position: absolute;
    right: 4px;
    top: 4px;
    width: 44px;
}

.hp-professional-register-field-help {
    color: #667f90;
    font-size: 12px;
    font-style: normal;
}

.hp-professional-register-deferred,
.hp-professional-register-draft-notice {
    align-items: flex-start;
    background: #f2f8fb;
    border: 1px solid #d3e3eb;
    border-radius: 7px;
    color: #385e75;
    display: flex;
    font-size: 13px;
    gap: 10px;
    line-height: 1.45;
    margin-bottom: 18px;
    padding: 12px 14px;
}

.hp-professional-register-main .hp-pro-security-copy {
    align-items: flex-start;
    background: #f6fafc;
    border: 1px solid #d4e3eb;
    border-radius: 7px;
    color: #4c6b7e;
    display: flex;
    font-size: 12px;
    gap: 10px;
    line-height: 1.5;
    margin-top: 20px;
    padding: 13px 14px;
}

.hp-professional-register-main .hp-pro-security-copy i {
    color: #078a7e;
    margin-top: 2px;
}

.hp-professional-register-main > .hp-pro-auth-aside {
    align-self: start;
    background: #0c6d79;
    border: 1px solid #0c6d79;
    box-shadow: 0 18px 42px rgba(7, 39, 65, .10);
    color: #fff;
    padding: 36px;
    position: sticky;
    top: 20px;
}

.hp-professional-register-main > .hp-pro-auth-aside .hp-pro-kicker,
.hp-professional-register-main > .hp-pro-auth-aside h2,
.hp-professional-register-main > .hp-pro-auth-aside p,
.hp-professional-register-main > .hp-pro-auth-aside li,
.hp-professional-register-main > .hp-pro-auth-aside strong,
.hp-professional-register-main > .hp-pro-auth-aside b,
.hp-professional-register-main > .hp-pro-auth-aside small {
    color: #fff;
}

.hp-professional-register-main > .hp-pro-auth-aside .hp-pro-kicker {
    opacity: .88;
}

.hp-professional-register-main > .hp-pro-auth-aside h2 {
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.15;
    margin: 0 0 12px;
}

.hp-professional-register-main > .hp-pro-auth-aside > div > p:last-child {
    font-size: 15px;
    line-height: 1.55;
    margin: 0;
    opacity: .92;
}

.hp-professional-register-main > .hp-pro-auth-aside ul {
    display: grid;
    gap: 14px;
    list-style: none;
    margin: 28px 0;
    padding: 0;
}

.hp-professional-register-main > .hp-pro-auth-aside li {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    line-height: 1.4;
}

.hp-professional-register-main > .hp-pro-auth-aside li i {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
}

.hp-professional-register-main .hp-public-plan-list {
    border-top: 1px solid rgba(255, 255, 255, .24);
    margin-top: 26px;
    padding-top: 22px;
}

.hp-professional-register-main .hp-public-plan-list h3 {
    color: #fff;
    font-size: 19px;
    font-weight: 750;
    margin: 0 0 12px;
}

.hp-professional-register-main .hp-public-plan-list article {
    align-items: center;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .30);
    border-radius: 7px;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    margin-bottom: 10px;
    padding: 13px 14px;
}

.hp-professional-register-main .hp-public-plan-list article > div {
    min-width: 0;
}

.hp-professional-register-main .hp-public-plan-list article strong,
.hp-professional-register-main .hp-public-plan-list article small {
    display: block;
}

.hp-professional-register-main .hp-public-plan-list article small {
    font-size: 11px;
    line-height: 1.35;
    opacity: .88;
}

.hp-professional-register-main .hp-public-plan-list article b {
    flex: 0 0 auto;
    font-size: 18px;
    text-align: right;
}

.hp-professional-register-main .hp-public-plan-list > p {
    font-size: 12px;
    line-height: 1.5;
    margin: 12px 0 0;
    opacity: .88;
}

@media (max-width: 900px) {
    .hp-professional-register-main {
        grid-template-columns: minmax(0, 1fr);
        max-width: 720px;
    }

    .hp-professional-register-main > .hp-pro-auth-aside {
        position: static;
    }
}

@media (max-width: 640px) {
    .hp-professional-register-shell .hp-pro-auth-header {
        align-items: flex-start;
        gap: 14px;
        min-height: 0;
        padding: 16px;
    }

    .hp-professional-register-shell .hp-pro-brand img {
        height: 34px;
        max-width: 180px;
    }

    .hp-professional-register-shell .hp-pro-auth-header nav {
        gap: 12px;
    }

    .hp-professional-register-shell .hp-pro-auth-header nav a {
        font-size: 12px;
    }

    .hp-professional-register-shell .hp-pro-auth-header nav a:nth-child(2) {
        display: none;
    }

    .hp-professional-register-main {
        gap: 16px;
        padding: 10px 12px 36px;
    }

    .hp-professional-register-main > .hp-pro-auth-card,
    .hp-professional-register-main > .hp-pro-auth-aside {
        padding: 24px 18px;
    }

    .hp-professional-register-main > .hp-pro-auth-card h1 {
        font-size: 30px;
    }

    .hp-professional-register-steps {
        gap: 7px;
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-professional-register-steps > i,
    .hp-professional-register-steps span:not(.is-active):not(.is-complete) {
        display: none;
    }

    .hp-professional-register-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-professional-register-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .hp-professional-register-actions > span:empty {
        display: none;
    }

    .hp-professional-register-form .hp-pro-primary,
    .hp-professional-register-back {
        min-width: 0;
        width: 100%;
    }

    .hp-professional-register-main > .hp-pro-auth-aside h2 {
        font-size: 26px;
    }
}
.hp-bank-proof-history{margin:16px 0;padding:16px;border:1px solid #d8e5ea;border-radius:9px;background:#f8fbfc}.hp-bank-proof-history>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.hp-bank-proof-history h4{margin:0 0 3px;color:#123b58;font-size:15px}.hp-bank-proof-history header p{margin:0;color:#687f8c;font-size:12px}.hp-bank-proof-history>header>span,.hp-user-proof-history>header>span{display:grid;min-width:30px;height:30px;border-radius:999px;background:#e1f4f0;color:#087f78;font-weight:900;place-items:center}.hp-bank-proof-history ol,.hp-user-proof-history ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hp-bank-proof-history li{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(170px,.8fr) auto;align-items:center;gap:14px;padding:12px;border:1px solid #dce7eb;border-radius:8px;background:#fff}.hp-bank-proof-history li.is-latest{border-color:#8bcfc2}.hp-bank-proof-history__file{display:flex;min-width:0;align-items:center;gap:10px}.hp-bank-proof-history__file>i{display:grid;width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#e5f5f2;color:#087f78;place-items:center}.hp-bank-proof-history__file>span{display:flex;min-width:0;flex-direction:column;gap:3px}.hp-bank-proof-history__file strong{color:#123b58}.hp-bank-proof-history__file em,.hp-user-proof-history em{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;background:#dcf5e9;color:#08734e;font-size:9px;font-style:normal;text-transform:uppercase}.hp-bank-proof-history__file small{overflow:hidden;color:#69808d;text-overflow:ellipsis;white-space:nowrap}.hp-bank-proof-history__status{display:flex;align-items:center;gap:7px;color:#637b88;font-size:11px}.hp-user-proof-history{margin:18px 24px;padding:16px;border:1px solid #cce1dd;border-radius:10px;background:#fff}.hp-user-proof-history>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.hp-user-proof-history h3{margin:0 0 3px;color:#123b58;font-size:16px}.hp-user-proof-history header p{margin:0;color:#68808c;font-size:12px}.hp-user-proof-history li{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #dce7eb;border-radius:8px;background:#f8fbfc}.hp-user-proof-history li>i{color:#087f78}.hp-user-proof-history li>span{display:flex;min-width:0;flex-direction:column;gap:3px}.hp-user-proof-history li small{overflow-wrap:anywhere;color:#69808d}.hp-user-proof-history__resubmit{margin-top:12px;border-top:1px solid #dce7eb}.hp-user-proof-history__resubmit summary{display:flex;align-items:center;gap:10px;padding:14px 2px 2px;color:#006fc2;font-weight:850;cursor:pointer;list-style:none}.hp-user-proof-history__resubmit summary::-webkit-details-marker{display:none}.hp-user-proof-history__resubmit summary span{flex:1}.hp-user-proof-history__resubmit[open] summary .fa-chevron-down{transform:rotate(180deg)}.hp-user-proof-history__resubmit>div>p,.hp-user-proof-history__limit{display:flex;align-items:flex-start;gap:8px;margin:12px 0;padding:11px;border-radius:7px;background:#eef7f5;color:#58766f;font-size:12px}.hp-proof-resubmit-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px}.hp-proof-resubmit-form label{position:relative;display:flex!important;align-items:center;min-height:72px;margin:0!important;padding:12px;border:1.5px dashed #90b9c4;border-radius:8px;background:#f8fbfc;cursor:pointer}.hp-proof-resubmit-form label>span{display:flex;min-width:0;flex-direction:column;gap:3px}.hp-proof-resubmit-form label strong{color:#123b58}.hp-proof-resubmit-form label small,.hp-proof-resubmit-form label em{color:#69808d;font-size:11px;font-style:normal}.hp-proof-resubmit-form label input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.hp-proof-resubmit-form button{display:flex;min-width:190px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;background:#0b3b59;color:#fff;font-weight:850}.hp-proof-resubmit-form button:hover{background:#0d4d73}.hp-proof-resubmit-form [data-hp-bank-proof-ready]{align-self:center;color:#087f78}.hp-subscription-payment-pending>.hp-user-proof-history{margin:0 24px 18px}

@media(max-width:900px){.hp-bank-proof-history li{grid-template-columns:1fr}.hp-bank-proof-history__status{padding-top:8px;border-top:1px solid #e5ecef}.hp-proof-resubmit-form{grid-template-columns:1fr}.hp-proof-resubmit-form button{min-height:48px}.hp-user-proof-history{margin:14px}.hp-subscription-payment-pending>.hp-user-proof-history{margin:0 14px 14px}}

/* Symptom-to-specialty search orientation. This is guidance, never diagnosis. */
.hp-search-intent{align-items:flex-start;background:#eef8ff;border:1px solid #b9d9ef;border-left:5px solid #0876c9;border-radius:10px;color:#123b58;display:flex;gap:14px;margin:0 0 18px;padding:17px 18px}
.hp-search-intent__icon{align-items:center;background:#d9effc;border-radius:50%;color:#0876c9;display:inline-flex;flex:0 0 42px;font-size:18px;height:42px;justify-content:center}
.hp-search-intent__content{min-width:0}.hp-search-intent__eyebrow{color:#087e78;display:block;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:3px;text-transform:uppercase}
.hp-search-intent h2{color:#0b2740;font-size:19px;line-height:1.28;margin:0 0 6px}.hp-search-intent p{line-height:1.55;margin:0}
.hp-search-intent small{border-top:1px solid rgba(11,39,64,.12);color:#526b7c;display:block;line-height:1.45;margin-top:12px;padding-top:10px}
.hp-search-intent__alternatives{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.hp-search-intent__alternatives span{color:#526b7c;font-size:12px}.hp-search-intent__alternatives strong{background:#fff;border:1px solid #c9dce8;border-radius:999px;color:#153d58;font-size:11px;padding:4px 8px}
.hp-search-intent--soon{background:#fff9e8;border-color:#ead58d;border-left-color:#b77900}.hp-search-intent--soon .hp-search-intent__icon{background:#ffefbd;color:#8a5a00}
.hp-search-intent--urgent{background:#fff4e5;border-color:#edbd74;border-left-color:#d66b00}.hp-search-intent--urgent .hp-search-intent__icon{background:#ffe0b2;color:#a64b00}
.hp-search-intent--emergency{background:#fff0f0;border-color:#e7a7a7;border-left-color:#c52222;color:#6e1e1e}.hp-search-intent--emergency .hp-search-intent__icon{background:#ffd8d8;color:#b21717}.hp-search-intent--emergency .hp-search-intent__eyebrow,.hp-search-intent--emergency h2{color:#9c1717}
.hp-search-intent__emergency-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}.hp-search-intent__emergency-actions a{align-items:center;background:#b21717;border:1px solid #b21717;border-radius:7px;color:#fff;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:9px 14px;text-decoration:none}.hp-search-intent__emergency-actions a:last-child{background:#fff;color:#9c1717}.hp-search-intent__emergency-actions a:hover,.hp-search-intent__emergency-actions a:focus{box-shadow:0 4px 12px rgba(156,23,23,.18);text-decoration:none}
@media(max-width:600px){.hp-search-intent{border-radius:0;gap:10px;margin-left:-12px;margin-right:-12px;padding:15px 12px}.hp-search-intent__icon{flex-basis:36px;height:36px}.hp-search-intent h2{font-size:17px}.hp-search-intent__emergency-actions a{flex:1 1 130px}}

/* Shared public trust footer. */
.hp-public-footer{position:relative;z-index:2;width:100%;margin:0;background:#092c44;color:#d8e7ed;text-align:left}.hp-public-footer a{color:inherit;text-decoration:none}.hp-public-footer a:hover,.hp-public-footer a:focus{color:#fff;text-decoration:none}.hp-public-footer__contact-wrap{padding:0 max(20px,calc((100vw - 1180px)/2));background:#f2f8f7}.hp-public-footer__contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));overflow:hidden;transform:translateY(-20px);border:1px solid #b9dcd3;border-radius:11px;background:#fff;box-shadow:0 14px 35px rgba(9,44,68,.12)}.hp-public-footer__contact-item{display:flex;min-width:0;align-items:center;gap:12px;padding:17px 18px;border-right:1px solid #dce8e6;color:#143b52!important}.hp-public-footer__contact-item:last-child{border-right:0}.hp-public-footer__contact-item>i{display:grid;width:38px;height:38px;flex:0 0 38px;border-radius:9px;background:#e5f5f1;color:#087f70;place-items:center}.hp-public-footer__contact-item>span{display:flex;min-width:0;flex-direction:column}.hp-public-footer__contact-item small{color:#708691;font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.hp-public-footer__contact-item strong{overflow-wrap:anywhere;font-size:13px}.hp-public-footer__contact-item[href]:hover{background:#f6fbfa}.hp-public-footer__main{display:grid;grid-template-columns:minmax(250px,1.2fr) minmax(180px,.8fr) minmax(180px,.6fr);gap:48px;max-width:1180px;margin:0 auto;padding:46px 24px 38px}.hp-public-footer__brand img{display:block;max-width:200px;max-height:46px}.hp-public-footer__brand p{max-width:360px;margin:16px 0 0;color:#9fb7c3;line-height:1.6}.hp-public-footer__legal,.hp-public-footer__connect{display:flex;align-items:flex-start;flex-direction:column;gap:9px}.hp-public-footer__legal>strong,.hp-public-footer__connect>strong{margin-bottom:4px;color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.hp-public-footer__legal a,.hp-public-footer__connect>a{color:#b9ced7;font-size:13px}.hp-public-footer__connect .healthcare-social-links{justify-content:flex-start;margin:1px 0 6px}.hp-public-footer__connect .healthcare-social-link{border-color:#426075;background:#173e57;color:#fff}.hp-public-footer__bottom{display:flex;justify-content:space-between;gap:24px;max-width:1180px;margin:0 auto;padding:17px 24px;border-top:1px solid rgba(211,230,237,.16);color:#91aab6;font-size:11px}.hp-public-footer__bottom span:last-child{max-width:520px;text-align:right}
.hp-public-footer__connect .healthcare-home-footer-language{display:flex;gap:8px;margin-top:5px;padding:0;border:0;border-radius:0;background:transparent}.hp-public-footer__connect .healthcare-home-footer-language a{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:60px;min-height:32px;padding:6px 10px;border:1px solid #527489;border-radius:7px;background:#123a54;color:#d8e7ed;font-size:11px;font-weight:850;line-height:1;text-decoration:none;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.hp-public-footer__connect .healthcare-home-footer-language a.active{border-color:#79cabb;background:#e4f5f1;color:#075d52;box-shadow:0 2px 8px rgba(0,0,0,.14)}.hp-public-footer__connect .healthcare-home-footer-language a:hover{border-color:#8fd6c9;background:#1b4a65;color:#fff;transform:translateY(-1px)}.hp-public-footer__connect .healthcare-home-footer-language a.active:hover{background:#f4fffc;color:#064c45}.hp-public-footer__connect .healthcare-home-footer-language a:focus-visible{outline:3px solid rgba(126,211,196,.45);outline-offset:2px}
@media(max-width:760px){.hp-public-footer__contact{grid-template-columns:1fr}.hp-public-footer__contact-item{border-right:0;border-bottom:1px solid #dce8e6}.hp-public-footer__contact-item:last-child{border-bottom:0}.hp-public-footer__main{grid-template-columns:1fr 1fr;gap:30px;padding-top:36px}.hp-public-footer__brand{grid-column:1/-1}.hp-public-footer__bottom{align-items:flex-start;flex-direction:column}.hp-public-footer__bottom span:last-child{text-align:left}}@media(max-width:440px){.hp-public-footer__contact-wrap{padding:0 12px}.hp-public-footer__main{grid-template-columns:1fr;padding:32px 20px}.hp-public-footer__brand{grid-column:auto}.hp-public-footer__bottom{padding:16px 20px}}

.hp-public-footer{border-top:0;height:auto!important;min-height:0;overflow:visible;padding:0}

@media(max-width:640px){body.hp-home-body,body.hp-home-body #wrapper{background:#092c44}body.hp-home-body .hp-public-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}

/* Footer redesign: contact belongs inside the information architecture; safety gets one clear rail. */
.hp-public-footer__main{grid-template-columns:minmax(250px,1.2fr) minmax(180px,.8fr) minmax(190px,.9fr) minmax(170px,.65fr);gap:42px;padding:48px 24px 40px}.hp-public-footer__main--without-contact{grid-template-columns:minmax(280px,1.25fr) minmax(200px,.8fr) minmax(180px,.6fr)}.hp-public-footer__explore,.hp-public-footer__contact{display:flex;overflow:visible;transform:none;align-items:flex-start;flex-direction:column;gap:9px;border:0;border-radius:0;background:transparent;box-shadow:none}.hp-public-footer__explore{margin-top:22px}.hp-public-footer__explore>strong,.hp-public-footer__contact>strong,.hp-public-footer__legal>strong,.hp-public-footer__connect>strong{margin-bottom:4px;color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.hp-public-footer__explore a{color:#b9ced7;font-size:13px}.hp-public-footer__explore a>i{width:15px;margin-right:3px;color:#75d1c2;text-align:center}.hp-public-footer__contact-item{display:flex;width:100%;min-width:0;align-items:center;gap:9px;padding:0;border:0!important;color:#b9ced7!important}.hp-public-footer__contact-item>i{display:grid;width:30px;height:30px;flex:0 0 30px;border:1px solid #365b6f;border-radius:7px;background:#123a54;color:#75d1c2;place-items:center}.hp-public-footer__contact-item>span{display:flex;min-width:0;flex-direction:column}.hp-public-footer__contact-item small{color:#829eab;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hp-public-footer__contact-item b{overflow-wrap:anywhere;color:#c9dce3;font-size:12px}.hp-public-footer__contact-item[href]:hover{background:transparent;color:#fff!important}.hp-public-footer__contact-item[href]:hover>i{border-color:#75d1c2;background:#174a5f}.hp-public-footer__contact-link{display:inline-flex;align-items:center;gap:7px;margin-top:4px;color:#d8e7ed!important;font-size:12px;font-weight:800}.hp-public-footer__contact-link>i{color:#75d1c2;font-size:10px;transition:transform .16s ease}.hp-public-footer__contact-link:hover>i,.hp-public-footer__contact-link:focus-visible>i{transform:translateX(3px)}.hp-public-footer__bottom{align-items:center;min-height:66px}.hp-public-footer__bottom>.hp-public-footer__copyright{display:flex;flex:0 1 auto;flex-wrap:wrap;gap:0 5px;max-width:none;text-align:left}.hp-public-footer__emergency{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-left:auto;color:#9fb7c3}.hp-public-footer__emergency>i{display:grid;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#103d53;color:#75d1c2;place-items:center}.hp-public-footer__emergency-numbers{display:inline-flex;align-items:center;gap:6px;color:#c8d9df;font-weight:700;white-space:nowrap}.hp-public-footer__emergency-numbers a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:34px;padding:5px 8px;border:1px solid #42677a;border-radius:7px;background:#10384f;color:#fff;font-size:12px;font-weight:850}.hp-public-footer__emergency-numbers a:hover,.hp-public-footer__emergency-numbers a:focus-visible{border-color:#75d1c2;background:#175069}.hp-public-footer__emergency-numbers a:focus-visible{outline:3px solid rgba(117,209,194,.35);outline-offset:2px}
@media(max-width:980px){.hp-public-footer__main,.hp-public-footer__main--without-contact{grid-template-columns:1fr 1fr}.hp-public-footer__brand{grid-column:1/-1}}@media(max-width:760px){.hp-public-footer__main{padding-top:36px}.hp-public-footer__bottom{align-items:flex-start}.hp-public-footer__emergency{align-items:flex-start;justify-content:flex-start;margin-left:0}.hp-public-footer__emergency>span:not(.hp-public-footer__emergency-numbers){max-width:420px}}@media(max-width:520px){.hp-public-footer__main,.hp-public-footer__main--without-contact{grid-template-columns:1fr;gap:26px;padding:32px 40px}.hp-public-footer__brand{grid-column:auto}.hp-public-footer__emergency{display:grid;grid-template-columns:30px minmax(0,1fr)}.hp-public-footer__emergency-numbers{grid-column:2;white-space:normal}}

/* Careers admin: make the application inbox count easy to scan without turning it into a competing action. */
.hp-careers-admin-count{align-items:center;background:#eef8f6;border:1px solid #b9ddd8;border-radius:9px;color:#315766;display:flex;gap:11px;margin:14px 0 18px;padding:11px 12px}.hp-careers-admin-count strong{align-items:center;background:#087f70;border-radius:7px;color:#fff;display:inline-flex;flex:0 0 38px;font-size:20px;height:38px;justify-content:center;line-height:1}.hp-careers-admin-count span{font-size:13px;line-height:1.4}@media(max-width:480px){.hp-careers-admin-count{align-items:flex-start}.hp-careers-admin-count strong{flex-basis:42px;height:42px;font-size:21px}}

/* Careers application pipeline. */
.hp-career-kanban-help{margin:0 0 14px}.hp-career-kanban{display:grid;grid-auto-columns:minmax(285px,315px);grid-auto-flow:column;gap:14px;margin:0 -4px;padding:4px 4px 18px;overflow-x:auto;overscroll-behavior-inline:contain}.hp-career-kanban.is-saving{cursor:progress}.hp-career-kanban-column{align-self:start;border:1px solid #d7e5ed;border-radius:12px;background:#f5f9fb;overflow:hidden}.hp-career-kanban-column>header{align-items:center;background:#0b3c5b;color:#fff;display:flex;justify-content:space-between;min-height:54px;padding:12px 14px}.hp-career-kanban-column>header span{align-items:center;display:flex;font-weight:700;gap:8px}.hp-career-kanban-column>header strong{align-items:center;background:rgba(255,255,255,.17);border-radius:999px;display:inline-flex;justify-content:center;min-width:28px;padding:3px 8px}.hp-career-kanban-items{display:grid;gap:10px;list-style:none;margin:0;min-height:96px;padding:12px}.hp-career-kanban-card{background:#fff;border:1px solid #d4e2e9;border-radius:10px;box-shadow:0 2px 7px rgba(8,47,73,.05);padding:13px}.hp-career-kanban-card.is-moving{opacity:.65}.hp-career-kanban-card__top{align-items:flex-start;display:flex;gap:8px;justify-content:space-between}.hp-career-kanban-card__top>a{color:#082f49;font-size:15px;font-weight:800;line-height:1.3}.hp-career-kanban-card__handle{align-items:center;background:transparent;border:0;border-radius:5px;color:#758d9c;cursor:grab;display:inline-flex;flex:0 0 34px;height:34px;justify-content:center;margin:-7px -7px 0 0;padding:0}.hp-career-kanban-card__handle:hover,.hp-career-kanban-card__handle:focus{background:#eaf3f7;color:#0b67b2;outline:0}.hp-career-kanban-card__handle:active{cursor:grabbing}.hp-career-kanban-card__reference{color:#6a8190;display:block;margin-top:2px}.hp-career-kanban-card>p{align-items:flex-start;color:#38586b;display:flex;gap:7px;line-height:1.4;margin:12px 0}.hp-career-kanban-card>p i{color:#117ed0;margin-top:3px}.hp-career-kanban-card__meta{border-top:1px solid #e5edf2;display:grid;gap:6px;padding-top:10px}.hp-career-kanban-card__meta span{color:#6a8190;font-size:12px}.hp-career-kanban-card__meta i{margin-right:5px;width:12px}.hp-career-kanban-empty{align-items:center;border:1px dashed #bfd1da;border-radius:9px;color:#748b98;display:flex;justify-content:center;min-height:70px;padding:12px;text-align:center}.hp-career-kanban-placeholder{border:2px dashed #117ed0;border-radius:10px;background:#eaf4fb;min-height:120px}.hp-career-kanban-limited{border-top:1px solid #d7e5ed;color:#667f8d;font-size:12px;margin:0;padding:10px 12px}.hp-career-filters{row-gap:10px}@media(max-width:767px){.hp-career-kanban{grid-auto-columns:minmax(270px,86vw)}.hp-career-filters>div+div{margin-top:10px}}

/* Browser-only specialty assistant handoff on canonical search pages. */
.hp-assistant-search-context{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 16px;padding:12px 14px;border:1px solid #b9ddd8;border-radius:11px;background:#f2fbf9;color:#123b58}.hp-assistant-search-context__heading{display:flex;align-items:center;gap:9px;flex:0 0 auto}.hp-assistant-search-context__icon{display:grid;width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#ddf4ef;color:#087f75;place-items:center}.hp-assistant-search-context__heading div{display:flex;flex-direction:column}.hp-assistant-search-context__heading strong{font-size:13px}.hp-assistant-search-context__heading small{color:#627b89;font-size:10px}.hp-assistant-search-context__choices{display:flex;min-width:0;flex:1;flex-wrap:wrap;gap:7px}.hp-assistant-search-context__choices a,.hp-assistant-search-context__choices span{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 12px;border:1px solid #b8d5dd;border-radius:999px;background:#fff;color:#153d58;font-size:12px;font-weight:800;text-decoration:none}.hp-assistant-search-context__choices a:hover,.hp-assistant-search-context__choices a:focus{border-color:#0c9488;background:#eefaf8;outline:0}.hp-assistant-search-context__choices .is-selected{border-color:#0c9488;background:#087f75;color:#fff}.hp-assistant-search-context__change{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:7px 8px;border:0;background:transparent;color:#08766e;font-size:12px;font-weight:800;white-space:nowrap;text-decoration:none;cursor:pointer}.hp-assistant-search-context__change:hover,.hp-assistant-search-context__change:focus{text-decoration:underline}.hp-assistant-search-context__editor{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px;flex:1 0 100%;padding-top:12px;border-top:1px solid #cce6e1}.hp-assistant-search-context__editor[hidden]{display:none!important}.hp-assistant-search-context__editor>label{grid-column:1/-1;margin:0;color:#123b58;font-size:13px;font-weight:800}.hp-assistant-search-context__editor textarea{width:100%;min-height:74px;padding:10px 12px;resize:vertical;border:1px solid #a9cbd3;border-radius:9px;background:#fff;color:#123b58;font-size:15px;line-height:1.45}.hp-assistant-search-context__editor textarea:focus{border-color:#087f75;outline:3px solid rgba(8,127,117,.13)}.hp-assistant-search-context__privacy{display:flex;align-items:flex-start;gap:6px;grid-column:1;color:#627b89;font-size:11px}.hp-assistant-search-context__privacy i{margin-top:2px;color:#087f75}.hp-assistant-search-context__status{grid-column:1/-1;margin:0;color:#9a3412;font-size:12px;font-weight:700}.hp-assistant-search-context__emergency{grid-column:1/-1;padding:11px 12px;border:1px solid #e7a7a7;border-radius:8px;background:#fff0f0;color:#8c1d1d}.hp-assistant-search-context__emergency>p{margin:4px 0 9px}.hp-assistant-search-context__emergency>div{display:flex;flex-wrap:wrap;gap:8px}.hp-assistant-search-context__editor-actions{display:flex;align-items:center;gap:6px;grid-column:2;grid-row:2/4}.hp-assistant-search-context__editor-actions .btn{min-height:44px;white-space:nowrap}
.hp-assistant-search-context__status.is-success{color:#08734e}
@media(max-width:720px){.hp-assistant-search-context{align-items:stretch;flex-direction:column;gap:10px;margin-left:-4px;margin-right:-4px;padding:12px}.hp-assistant-search-context__heading{justify-content:flex-start}.hp-assistant-search-context__choices{display:grid;grid-template-columns:1fr 1fr;width:100%}.hp-assistant-search-context__choices a,.hp-assistant-search-context__choices span{border-radius:9px;line-height:1.2;text-align:center}.hp-assistant-search-context__change{align-self:flex-start}.hp-assistant-search-context__editor{display:grid;grid-template-columns:1fr;width:100%}.hp-assistant-search-context__privacy,.hp-assistant-search-context__editor-actions{grid-column:1;grid-row:auto}.hp-assistant-search-context__editor-actions{justify-content:flex-start;flex-wrap:wrap}.hp-assistant-search-context__editor-actions .btn-primary{flex:1}}
@media(max-width:390px){.hp-assistant-search-context__choices{grid-template-columns:1fr}}
/* Admin quality workspace for symptom-to-specialty orientation. */
.hp-assistant-qa{--qa-ink:#0b2740;--qa-muted:#607887;--qa-border:#d8e5ea;--qa-green:#087f70;--qa-soft:#f4f9fb;max-width:1680px;margin:0 auto;color:var(--qa-ink)}
.hp-assistant-qa__hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px;padding:22px 24px;border:1px solid var(--qa-border);border-radius:12px;background:linear-gradient(135deg,#fff,#eef8f8)}.hp-assistant-qa__hero h1{margin:4px 0 5px;font-size:28px;font-weight:850}.hp-assistant-qa__hero p,.hp-assistant-qa__section-head p{margin:0;color:var(--qa-muted);line-height:1.5}.hp-assistant-qa__eyebrow{display:flex;align-items:center;gap:7px;color:var(--qa-green);font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.hp-assistant-qa__release-state{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 10px;min-width:190px;padding:13px 15px;border:1px solid #cde2e2;border-radius:10px;background:#fff}.hp-assistant-qa__release-state .hp-assistant-qa__status{grid-column:1/-1}.hp-assistant-qa__release-state small{color:var(--qa-muted)}
.hp-assistant-qa__tabs{margin-bottom:18px;border:1px solid var(--qa-border);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(16,58,76,.06);overflow:hidden}.hp-assistant-qa__tabs>[role=tablist]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--qa-border)}.hp-assistant-qa__tabs [role=tab]{position:relative;display:flex;min-width:0;min-height:58px;align-items:center;justify-content:center;gap:9px;padding:10px 14px;border:0;background:#fff;color:#496574;font-weight:750;transition:background-color .18s ease,color .18s ease}.hp-assistant-qa__tabs [role=tab]:hover{background:#f3faf9;color:#075f58}.hp-assistant-qa__tabs [role=tab][aria-selected=true]{background:#eaf7f5;color:#075f58}.hp-assistant-qa__tabs [role=tab][aria-selected=true]:after{position:absolute;right:14px;bottom:0;left:14px;height:3px;border-radius:3px 3px 0 0;background:var(--qa-green);content:""}.hp-assistant-qa__tabs [role=tab]:focus-visible{z-index:1;outline:3px solid rgba(8,127,112,.22);outline-offset:-3px}.hp-assistant-qa__tabs [role=tab]>i{font-size:15px}.hp-assistant-qa__tab-badge{display:inline-grid;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#e7eff2;color:#496574;font-size:11px;place-items:center}.hp-assistant-qa__tab-badge.is-clear{background:#dcf5e9;color:#08734e}.hp-assistant-qa__tab-badge.is-alert{background:#fff0c9;color:#805500}.hp-assistant-qa__tab-state{width:9px;height:9px;border-radius:50%;background:#d59a28;box-shadow:0 0 0 4px #fff3d7}.hp-assistant-qa__tab-state.is-ready{background:#0b8c69;box-shadow:0 0 0 4px #dff5ed}.hp-assistant-qa__tab-panel:focus{outline:0}.hp-assistant-qa__tab-panel[hidden]{display:none!important}
.hp-assistant-qa__status{display:inline-flex;align-items:center;gap:6px;width:max-content;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}.hp-assistant-qa__status--success{background:#dcf5e9;color:#08734e}.hp-assistant-qa__status--warning{background:#fff0c9;color:#805500}.hp-assistant-qa__status--danger{background:#fde2e2;color:#a32626}
.hp-assistant-qa__summary{display:grid;grid-template-columns:minmax(310px,1.7fr) repeat(3,minmax(170px,1fr));gap:12px;margin-bottom:18px}.hp-assistant-qa__summary>article{display:flex;min-height:118px;flex-direction:column;justify-content:center;padding:18px;border:1px solid var(--qa-border);border-radius:11px;background:#fff}.hp-assistant-qa__summary>article>span{color:var(--qa-muted);font-size:11px;font-weight:800;text-transform:uppercase}.hp-assistant-qa__summary>article>strong{margin:6px 0;font-size:27px}.hp-assistant-qa__summary>article>small{color:var(--qa-muted)}.hp-assistant-qa__summary .hp-assistant-qa__score{flex-direction:row;align-items:center;gap:18px}.hp-assistant-qa__score h2{margin:0 0 5px;font-size:18px}.hp-assistant-qa__score p{margin:0;color:var(--qa-muted);line-height:1.45}.hp-assistant-qa__score-ring{display:grid;width:76px;height:76px;flex:0 0 76px;border:7px solid #c8e9df;border-radius:50%;place-content:center;text-align:center}.hp-assistant-qa__score-ring strong{font-size:22px;line-height:1}.hp-assistant-qa__score-ring span{color:var(--qa-muted);font-size:10px}.hp-assistant-qa__score--warning .hp-assistant-qa__score-ring{border-color:#f1d690}.hp-assistant-qa__score--danger .hp-assistant-qa__score-ring{border-color:#efb6b6}
.hp-assistant-qa__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hp-assistant-qa__panel{margin-bottom:18px;border:1px solid var(--qa-border);border-radius:11px;box-shadow:none}.hp-assistant-qa__panel>.panel-body{padding:20px}.hp-assistant-qa__section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.hp-assistant-qa__section-head h2{margin:0 0 4px;font-size:17px}.hp-assistant-qa__section-head>.form-control{width:270px;min-height:40px}
.hp-assistant-qa__checks{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hp-assistant-qa__checks li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e1eaee;border-radius:8px;background:var(--qa-soft)}.hp-assistant-qa__checks li>span{display:flex;min-width:0;flex-direction:column}.hp-assistant-qa__checks li small{margin-top:2px;color:var(--qa-muted);line-height:1.35}.hp-assistant-qa__checks .is-pass>i{color:var(--qa-green)}.hp-assistant-qa__checks .is-warning>i{color:#a96e00}.hp-assistant-qa__checks .is-fail>i{color:#b42318}
.hp-assistant-qa__privacy{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:#e4f4f1;color:#087267;font-size:10px;font-weight:800;white-space:nowrap}.hp-assistant-qa textarea{display:block;width:100%;min-height:92px;padding:11px 12px;border:1px solid #b9cbd6;border-radius:7px;resize:vertical}.hp-assistant-qa textarea:focus,.hp-assistant-qa input:focus,.hp-assistant-qa button:focus-visible,.hp-assistant-qa summary:focus-visible{border-color:var(--qa-green);outline:3px solid rgba(8,127,112,.17);outline-offset:2px}.hp-assistant-qa__sim-actions{display:flex;gap:9px;margin-top:12px}.hp-assistant-qa__sim-actions .btn{min-height:40px}.hp-assistant-qa__sim-status{margin:10px 0 0;color:#a32626}.hp-assistant-qa__sim-result{margin-top:14px;padding:15px;border:1px solid #b9dcd3;border-radius:9px;background:#f0faf7}.hp-assistant-qa__sim-result>span{color:var(--qa-green);font-size:10px;font-weight:850;text-transform:uppercase}.hp-assistant-qa__sim-result h3{margin:4px 0}.hp-assistant-qa__sim-result p{color:var(--qa-muted)}.hp-assistant-qa__sim-result dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.hp-assistant-qa__sim-result dl>div{padding:9px;border-radius:7px;background:#fff}.hp-assistant-qa__sim-result dt{color:var(--qa-muted);font-size:10px;text-transform:uppercase}.hp-assistant-qa__sim-result dd{margin:3px 0 0;font-weight:750;overflow-wrap:anywhere}
.hp-assistant-qa__table{margin:0}.hp-assistant-qa__table th{background:#f3f8fa;color:#496574;font-size:10px;text-transform:uppercase}.hp-assistant-qa__table td{vertical-align:middle}.hp-assistant-qa__table td>small{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--qa-muted)}.hp-assistant-qa__urgency{padding:2px 6px;border-radius:999px;background:#e8f1f5;font-size:9px;font-weight:800}.hp-assistant-qa__urgency.is-emergency{background:#fde2e2;color:#a32626}.hp-assistant-qa__urgency.is-urgent{background:#ffe5ca;color:#994a00}.hp-assistant-qa__urgency.is-soon{background:#fff0c9;color:#805500}
.hp-assistant-qa__section-head--standalone{margin:26px 0 12px}.hp-assistant-qa__summary--ai{grid-template-columns:repeat(4,minmax(0,1fr))}.hp-assistant-qa__usage-table{min-width:900px}.hp-assistant-qa__usage-table td:first-child{max-width:360px}.hp-assistant-qa__candidate-list{display:grid;gap:12px}.hp-assistant-qa__candidate{padding:16px;border:1px solid var(--qa-border);border-radius:11px;background:#f9fcfd}.hp-assistant-qa__candidate-approve{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.9fr);gap:18px}.hp-assistant-qa__candidate-main dl{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0}.hp-assistant-qa__candidate-main dl div{display:flex;gap:7px}.hp-assistant-qa__candidate-main dt{color:var(--qa-muted);font-size:11px;text-transform:uppercase}.hp-assistant-qa__candidate-main dd{margin:0;font-weight:700}.hp-assistant-qa__candidate-actions{display:flex;flex-wrap:wrap;align-content:flex-end;align-items:flex-end;gap:10px}.hp-assistant-qa__candidate-actions>label,.hp-assistant-qa__candidate-actions>[data-hp-existing-intent],.hp-assistant-qa__candidate-actions>[data-hp-new-intent]{width:100%}.hp-assistant-qa__candidate-actions>.form-control{min-width:220px;flex:1}.hp-assistant-qa__new-intent{padding:13px;border:1px solid #b9ddd7;border-radius:9px;background:#f1faf8}.hp-assistant-qa__new-intent fieldset{margin:0 0 12px}.hp-assistant-qa__new-intent legend{margin-bottom:7px;border:0;font-size:13px;font-weight:700}.hp-assistant-qa__specialty-pills{display:flex;flex-wrap:wrap;gap:7px;max-height:150px;overflow:auto}.hp-assistant-qa__specialty-pills label{display:flex;align-items:center;gap:5px;margin:0;padding:6px 9px;border:1px solid var(--qa-border);border-radius:999px;background:#fff;font-weight:500;cursor:pointer}.hp-assistant-qa__new-intent-notice{margin:0;color:#476678;font-size:12px;line-height:1.45}.hp-assistant-qa__candidate-reject{margin:10px 0 0;text-align:right}
.hp-assistant-qa__protection{margin-top:18px;border-top:1px solid var(--qa-border)}.hp-assistant-qa__protection summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0 0;cursor:pointer;list-style:none}.hp-assistant-qa__protection summary::-webkit-details-marker{display:none}.hp-assistant-qa__protection summary>span{display:flex;align-items:center;gap:8px}.hp-assistant-qa__protection summary small{color:var(--qa-muted);font-weight:400}.hp-assistant-qa__protection[open] summary>.fa-chevron-down{transform:rotate(180deg)}.hp-assistant-qa__protection>div{padding-top:16px}.hp-assistant-qa__protection>div>p{color:var(--qa-muted)}.hp-assistant-qa__protection-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hp-assistant-qa__protection-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.hp-assistant-qa__protection-form label>span{font-weight:750}.hp-assistant-qa__protection-form label>small{color:var(--qa-muted);line-height:1.35}.hp-assistant-qa__protection-form>.btn{align-self:end}.hp-assistant-qa__protection-reset{margin-top:10px}
.hp-assistant-qa__empty{display:flex;align-items:center;gap:8px;margin:0;padding:13px;border-radius:8px;background:#eef9f6;color:#08734e}.hp-assistant-qa__issue-list{display:grid;max-height:270px;gap:7px;overflow:auto;margin:0;padding:0;list-style:none}.hp-assistant-qa__issue-list li{display:flex;justify-content:space-between;gap:12px;padding:10px;border:1px solid #e1eaee;border-radius:7px}.hp-assistant-qa__issue-list small{color:var(--qa-muted);text-align:right}

/* Admin directory catalogs: specialties, locations, and services. */
body.admin .hp-admin-catalog{--hp-catalog-navy:#0b3552;--hp-catalog-teal:#087f75;--hp-catalog-border:#d9e5eb;--hp-catalog-muted:#61798a;margin-top:18px}
body.admin .hp-admin-catalog>.panel-body{padding:0;overflow:hidden;border:1px solid var(--hp-catalog-border);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(11,53,82,.06)}
body.admin .hp-admin-catalog__header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px 20px;background:linear-gradient(135deg,#f8fbfd 0%,#f0f8f7 100%);border-bottom:1px solid var(--hp-catalog-border)}
body.admin .hp-admin-catalog__header>div:first-child{min-width:0;max-width:720px}
body.admin .hp-admin-catalog__eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:6px;color:var(--hp-catalog-teal);font-size:11px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
body.admin .hp-admin-catalog__header h1{margin:0;color:var(--hp-catalog-navy);font-size:25px;line-height:1.25}
body.admin .hp-admin-catalog__header p{margin:7px 0 0;color:var(--hp-catalog-muted);font-size:13px;line-height:1.55}
body.admin .hp-admin-catalog__header-actions{display:flex;align-items:center;flex:0 0 auto;gap:12px}
body.admin .hp-admin-catalog__header-actions>.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 15px;border-radius:7px;font-weight:700}
body.admin .hp-admin-catalog__count{display:flex;align-items:baseline;gap:5px;padding:9px 12px;border:1px solid #cde1df;border-radius:8px;background:#fff;color:var(--hp-catalog-muted);white-space:nowrap}
body.admin .hp-admin-catalog__count strong{color:var(--hp-catalog-navy);font-size:18px;line-height:1}
body.admin .hp-admin-catalog__count span{font-size:11px;font-weight:700}
body.admin .hp-admin-catalog__filters{display:grid;grid-template-columns:minmax(260px,1fr) minmax(170px,220px) auto auto;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--hp-catalog-border);background:#fff}
body.admin .hp-admin-catalog__filters--wide{grid-template-columns:minmax(260px,1fr) minmax(150px,190px) minmax(150px,190px) auto auto}
body.admin .hp-admin-catalog__filters label{min-width:0;margin:0}
body.admin .hp-admin-catalog__filters .form-control{height:42px;border-color:#c8d8e1;border-radius:7px;background-color:#fff;box-shadow:none}
body.admin .hp-admin-catalog__filters .form-control:focus{border-color:var(--hp-catalog-teal);box-shadow:0 0 0 3px rgba(8,127,117,.12)}
body.admin .hp-admin-catalog__search{position:relative;display:block}
body.admin .hp-admin-catalog__search>i{position:absolute;z-index:1;top:50%;left:13px;color:#748b99;transform:translateY(-50%);pointer-events:none}
body.admin .hp-admin-catalog__search>input{padding-left:38px}
body.admin .hp-admin-catalog__filter-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;margin:0;border-color:#b9cdd8;border-radius:7px;color:var(--hp-catalog-navy);font-weight:700}
body.admin .hp-admin-catalog__clear{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px;color:#60798a;font-size:12px;font-weight:700;white-space:nowrap}
body.admin .hp-admin-catalog__clear:hover,body.admin .hp-admin-catalog__clear:focus{color:#a22f2f;text-decoration:none}
body.admin .hp-admin-catalog__table-wrap{margin:0;border:0;box-shadow:none}
body.admin .hp-admin-catalog__table{min-width:720px;margin:0}
body.admin .hp-admin-catalog__table thead th{padding:12px 14px;border-bottom:1px solid #cfdee6;background:#f6f9fb;color:#536b7b;font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}
body.admin .hp-admin-catalog__table tbody td{padding:13px 14px;vertical-align:middle;border-top-color:#e6edf1;color:#294b60}
body.admin .hp-admin-catalog__table tbody tr:hover{background:#f8fcfb}
body.admin .hp-admin-catalog__primary{display:inline-block;color:#0a669d;font-weight:750;line-height:1.35}
body.admin .hp-admin-catalog__primary:hover,body.admin .hp-admin-catalog__primary:focus{color:var(--hp-catalog-teal)}
body.admin .hp-admin-catalog__secondary{display:block;max-width:360px;margin-top:3px;overflow:hidden;color:#728795;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
body.admin .hp-admin-catalog__table code{padding:3px 6px;border-radius:4px;background:#eff4f6;color:#4f6979;font-size:11px}
body.admin .hp-admin-catalog__duration{display:inline-flex;align-items:center;gap:6px;color:#496476;white-space:nowrap}
body.admin .hp-admin-catalog__duration i{color:var(--hp-catalog-teal)}
body.admin .hp-admin-catalog__actions-heading{text-align:right}
body.admin .hp-admin-catalog__actions{text-align:right;white-space:nowrap}
body.admin .hp-admin-catalog__actions .btn{display:inline-flex;align-items:center;justify-content:center;width:38px;min-height:38px;margin-left:4px;border-radius:7px}
body.admin .hp-admin-catalog__empty{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:230px;padding:34px;text-align:center}
body.admin .hp-admin-catalog__empty>i{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:13px;border-radius:14px;background:#eaf6f3;color:var(--hp-catalog-teal);font-size:20px}
body.admin .hp-admin-catalog__empty strong{color:var(--hp-catalog-navy);font-size:15px}
body.admin .hp-admin-catalog__empty span{max-width:430px;margin-top:5px;color:var(--hp-catalog-muted);font-size:12px;line-height:1.5}
body.admin .hp-admin-catalog__empty .btn{margin-top:14px}
body.admin .hp-admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-top:1px solid var(--hp-catalog-border,#d9e5eb);background:#fbfcfd}
body.admin .hp-admin-pagination__summary{color:#60798a;font-size:12px}
body.admin .hp-admin-pagination__controls,body.admin .hp-admin-pagination__size-form{display:flex;align-items:center;gap:9px}
body.admin .hp-admin-pagination__size-form label{margin:0;color:#60798a;font-size:11px;font-weight:700;white-space:nowrap}
body.admin .hp-admin-pagination__size-form select{width:auto;min-width:68px;height:34px;border-radius:6px}
body.admin .hp-admin-pagination nav{display:flex}
body.admin .hp-admin-pagination .pagination{display:flex;gap:3px;margin:0;padding:0}
body.admin .hp-admin-pagination .pagination>li>a,body.admin .hp-admin-pagination .pagination>li>span{display:flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:6px;border:1px solid #cad9e1;border-radius:6px;color:#31566d}
body.admin .hp-admin-pagination .pagination>li.active>a{border-color:var(--hp-catalog-teal,#087f75);background:var(--hp-catalog-teal,#087f75);color:#fff}
body.admin .hp-admin-pagination .pagination>li.disabled>a,body.admin .hp-admin-pagination .pagination>li.disabled>span{background:#f1f4f6;color:#9aabb4;cursor:not-allowed}
body.admin .hp-admin-pagination .pagination>li:not(.disabled):not(.active)>a:hover,body.admin .hp-admin-pagination .pagination>li:not(.disabled):not(.active)>a:focus{border-color:#74b9af;background:#eef8f6;color:#075f58}
body.admin .hp-admin-catalog a:focus-visible,body.admin .hp-admin-catalog button:focus-visible,body.admin .hp-admin-pagination a:focus-visible{outline:3px solid rgba(8,127,117,.22);outline-offset:2px}

@media(max-width:991px){body.admin .hp-admin-catalog__filters,body.admin .hp-admin-catalog__filters--wide{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,180px));align-items:stretch}body.admin .hp-admin-catalog__search{grid-column:1/-1}body.admin .hp-admin-catalog__filter-button{grid-column:auto}.hp-admin-catalog__clear{justify-self:start}}
@media(max-width:767px){body.admin .hp-admin-catalog{margin-top:12px}body.admin .hp-admin-catalog>.panel-body{border-radius:9px}body.admin .hp-admin-catalog__header{align-items:stretch;flex-direction:column;padding:19px 16px 16px}body.admin .hp-admin-catalog__header h1{font-size:22px}body.admin .hp-admin-catalog__header-actions{align-items:stretch;justify-content:space-between}body.admin .hp-admin-catalog__header-actions>.btn{flex:1}body.admin .hp-admin-catalog__filters,body.admin .hp-admin-catalog__filters--wide{grid-template-columns:1fr;padding:13px}body.admin .hp-admin-catalog__filters>*{grid-column:1!important;width:100%}body.admin .hp-admin-catalog__clear{min-height:44px}body.admin .hp-admin-catalog__actions .btn{width:44px;min-height:44px}body.admin .hp-admin-pagination{align-items:stretch;flex-direction:column;padding:14px}body.admin .hp-admin-pagination__summary{text-align:center}body.admin .hp-admin-pagination__controls{align-items:stretch;flex-direction:column}body.admin .hp-admin-pagination__size-form{justify-content:center}body.admin .hp-admin-pagination nav{justify-content:center;max-width:100%;overflow-x:auto}body.admin .hp-admin-pagination .pagination{gap:5px;min-height:0;padding:2px}body.admin .hp-admin-pagination .pagination>li>a,body.admin .hp-admin-pagination .pagination>li>span{min-width:40px;height:40px}}
.hp-assistant-qa__details{margin-bottom:18px;border:1px solid var(--qa-border);border-radius:11px;background:#fff}.hp-assistant-qa__details summary{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:12px 18px;cursor:pointer;list-style:none}.hp-assistant-qa__details summary::-webkit-details-marker{display:none}.hp-assistant-qa__details summary>span{display:flex;align-items:center;gap:9px}.hp-assistant-qa__details summary small,.hp-assistant-qa__history small{color:var(--qa-muted)}.hp-assistant-qa__details[open] summary>.fa-chevron-down{transform:rotate(180deg)}.hp-assistant-qa__coverage{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hp-assistant-qa__coverage>div{display:flex;flex-direction:column;padding:14px;border-radius:8px;background:var(--qa-soft)}.hp-assistant-qa__coverage strong{font-size:20px}.hp-assistant-qa__coverage span{color:var(--qa-muted)}
.hp-assistant-qa__release-actions{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}.hp-assistant-qa__release-actions form:not(.inline-block){width:min(560px,100%)}.hp-assistant-qa__history{display:grid;gap:8px;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--qa-border);list-style:none}.hp-assistant-qa__history li{display:flex;align-items:center;gap:10px}.hp-assistant-qa__history li>i{color:var(--qa-green)}.hp-assistant-qa__history span{display:flex;flex-direction:column}
.hp-assistant-qa__state-toggle{display:inline-flex;min-height:40px;align-items:center;gap:7px;border-width:1px!important;font-weight:800;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.hp-assistant-qa__state-toggle.is-on{border-color:#087f70!important;background:#087f70!important;color:#fff!important}.hp-assistant-qa__state-toggle.is-on:hover,.hp-assistant-qa__state-toggle.is-on:focus{border-color:#06685c!important;background:#06685c!important;color:#fff!important}.hp-assistant-qa__state-toggle.is-off{border-color:#c7d1d7!important;background:#e7ecef!important;color:#405665!important}.hp-assistant-qa__state-toggle.is-off:hover,.hp-assistant-qa__state-toggle.is-off:focus{border-color:#aebbc3!important;background:#dce3e7!important;color:#263d4c!important}
@media(max-width:1180px){.hp-assistant-qa__summary{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-assistant-qa__summary .hp-assistant-qa__score{grid-column:1/-1}}@media(max-width:820px){.hp-assistant-qa__hero{align-items:flex-start;flex-direction:column}.hp-assistant-qa__release-state{width:100%}.hp-assistant-qa__tabs{overflow-x:auto;scrollbar-width:none}.hp-assistant-qa__tabs::-webkit-scrollbar{display:none}.hp-assistant-qa__tabs>[role=tablist]{display:flex;width:max-content;min-width:100%}.hp-assistant-qa__tabs [role=tab]{min-width:160px;flex:1}.hp-assistant-qa__grid{grid-template-columns:1fr}.hp-assistant-qa__section-head{flex-direction:column}.hp-assistant-qa__section-head>.form-control{width:100%}.hp-assistant-qa__coverage{grid-template-columns:1fr}.hp-assistant-qa__table{min-width:760px}.hp-assistant-qa__candidate-approve{grid-template-columns:1fr}.hp-assistant-qa__protection-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.hp-assistant-qa__hero{padding:18px}.hp-assistant-qa__hero h1{font-size:24px}.hp-assistant-qa__tabs [role=tab]{min-width:145px;min-height:54px;padding:8px 12px}.hp-assistant-qa__summary{grid-template-columns:1fr}.hp-assistant-qa__summary .hp-assistant-qa__score{align-items:flex-start;grid-column:auto;flex-direction:column}.hp-assistant-qa__panel>.panel-body{padding:16px}.hp-assistant-qa__sim-actions{flex-direction:column}.hp-assistant-qa__sim-actions .btn{width:100%}.hp-assistant-qa__sim-result dl{grid-template-columns:1fr}.hp-assistant-qa__candidate-actions>.form-control,.hp-assistant-qa__candidate-actions .btn,.hp-assistant-qa__candidate-reject .btn{width:100%}.hp-assistant-qa__protection summary>span{align-items:flex-start;flex-direction:column}.hp-assistant-qa__protection-form{grid-template-columns:1fr}.hp-assistant-qa__protection-form>.btn,.hp-assistant-qa__protection-reset .btn{width:100%}}

/* Reversible superadmin access control for abusive bank-payment requesters. */
.hp-bank-account-control{margin-top:16px;padding:16px;border:1px solid #efc4c4;border-left:4px solid #b42318;border-radius:7px;background:#fff8f8}.hp-bank-account-control.is-blocked{border-color:#b8dccc;border-left-color:#087f70;background:#f3fbf8}.hp-bank-account-control>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.hp-bank-account-control>header div{display:flex;flex-direction:column;gap:3px}.hp-bank-account-control>header span{color:#6d7f8a;font-size:10px;font-weight:800;text-transform:uppercase}.hp-bank-account-control>header strong{color:#0b2740}.hp-bank-account-control>header>i{color:#b42318;font-size:19px}.hp-bank-account-control.is-blocked>header>i{color:#087f70}.hp-bank-account-control>p{margin:10px 0;color:#536c7a;line-height:1.5}.hp-bank-account-control form{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:12px}.hp-bank-account-control label{display:grid;gap:5px}.hp-bank-account-control label>span{font-weight:750}.hp-bank-account-control textarea{width:100%;padding:9px 11px;border:1px solid #b9cbd6;border-radius:5px;background:#fff}.hp-bank-account-control button{min-width:190px}.hp-bank-account-control textarea:focus{border-color:#087f70;outline:3px solid rgba(8,127,112,.14);outline-offset:1px}@media(max-width:800px){.hp-bank-account-control form{grid-template-columns:1fr}.hp-bank-account-control button{width:100%}}
/* Compact solo/clinic choice in professional registration. */
.hp-register-workspace-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 14px;padding:0;border:0}.hp-register-workspace-choice legend{grid-column:1/-1;margin-bottom:6px;color:#0b2f4a;font-size:13px;font-weight:800}.hp-register-workspace-choice label{position:relative;margin:0;cursor:pointer}.hp-register-workspace-choice input{position:absolute;opacity:0;pointer-events:none}.hp-register-workspace-choice label>span{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;align-items:center;min-height:72px;padding:11px 12px;border:1px solid #c8dce6;border-radius:10px;background:#fff;color:#123b58}.hp-register-workspace-choice i{grid-row:1/3;display:grid;width:30px;height:30px;border-radius:8px;background:#e8f5f3;color:#087f75;place-items:center}.hp-register-workspace-choice b{font-size:13px}.hp-register-workspace-choice small{color:#667f8d;font-size:11px}.hp-register-workspace-choice input:checked+span{border-color:#087f75;background:#f0faf8;box-shadow:0 0 0 2px rgba(8,127,117,.12)}.hp-register-workspace-choice input:focus-visible+span{outline:3px solid rgba(8,127,117,.2);outline-offset:2px}.hp-register-clinic-name[hidden]{display:none!important}@media(max-width:560px){.hp-register-workspace-choice{grid-template-columns:1fr}.hp-register-workspace-choice label>span{min-height:68px}}

/* Billing workspace: compact, filterable ledgers with accessible expandable details. */
.hp-billing-admin-tabs{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:6px;padding:6px;border:1px solid #d6e4eb;border-radius:12px;background:#edf5f8}.hp-billing-admin-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border-radius:8px;color:#496477;font-weight:750;text-align:center}.hp-billing-admin-tabs a:hover,.hp-billing-admin-tabs a:focus-visible{background:#fff;color:#0b5478;text-decoration:none}.hp-billing-admin-tabs a.is-active{background:#fff;color:#073a5a;box-shadow:0 1px 4px rgba(20,61,81,.12)}
.hp-billing-settings-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.hp-billing-settings-nav a{display:flex;align-items:center;min-height:44px;padding:8px 13px;border:1px solid #cbdde6;border-radius:8px;background:#fff;color:#145b7c;font-weight:700}.hp-billing-settings-nav a:hover,.hp-billing-settings-nav a:focus-visible{border-color:#07877b;background:#f2fbf9;text-decoration:none}
.hp-billing-toolbar{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:10px;margin:16px 0;padding:14px;border:1px solid #d5e3ea;border-radius:12px;background:#fff}.hp-billing-toolbar label{display:grid;gap:5px;margin:0;color:#38566a;font-size:11px;font-weight:800}.hp-billing-toolbar input,.hp-billing-toolbar select{width:100%;min-height:44px;padding:8px 10px;border:1px solid #bfd2dc;border-radius:8px;background:#fff;color:#102f44}.hp-billing-toolbar__search>div{position:relative}.hp-billing-toolbar__search i{position:absolute;top:50%;left:12px;color:#6d8593;transform:translateY(-50%)}.hp-billing-toolbar__search input{padding-left:34px}.hp-billing-toolbar__page-size{max-width:125px}.hp-billing-toolbar__actions{display:flex;gap:7px}.hp-billing-toolbar__actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px!important;white-space:nowrap}
.hp-billing-record{margin:0 0 10px;border:1px solid #d4e2e8!important;border-left:4px solid #7eb9b1!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}.hp-billing-record>summary{list-style:none}.hp-billing-record>summary::-webkit-details-marker{display:none}.hp-billing-record__summary{display:grid;grid-template-columns:minmax(240px,1.7fr) minmax(150px,.7fr) auto 22px;align-items:center;gap:18px;min-height:78px;padding:14px 16px;cursor:pointer}.hp-billing-record__summary h3{margin:3px 0 2px;color:#075e9d;font-size:16px}.hp-billing-record__summary p,.hp-billing-record__summary small{display:block;margin:0;color:#627b8a}.hp-billing-record__summary>span:not(.hp-subscription-status){display:grid;gap:3px}.hp-billing-record__summary>span>strong{color:#0b2d44}.hp-billing-record__summary>.fa-chevron-down{color:#66818f;transition:transform .18s ease}.hp-billing-record[open] .hp-billing-record__summary>.fa-chevron-down{transform:rotate(180deg)}.hp-billing-record[open]>.hp-billing-record__summary{background:#f7fbfc}.hp-billing-record__summary:focus-visible{outline:3px solid rgba(8,127,112,.2);outline-offset:2px}.hp-billing-record__body{padding:16px;border-top:1px solid #dce8ed}.hp-bank-admin-payment.hp-billing-record{padding:0}.hp-bank-admin-payment.hp-billing-record.is-pending_review{border-left-color:#d18a00!important}.hp-bank-admin-payment.hp-billing-record.is-rejected{border-left-color:#b42318!important}.hp-bank-admin-payment.hp-billing-record dl{margin-top:0}
.hp-billing-ledger{overflow:hidden;border:1px solid #d5e3e9;border-radius:11px;background:#fff}.hp-billing-ledger article{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:14px;min-height:70px;padding:12px 15px;border-bottom:1px solid #e1eaee}.hp-billing-ledger article:last-child{border-bottom:0}.hp-billing-ledger h3{margin:0 0 3px;color:#0a5f97;font-size:15px}.hp-billing-ledger p{margin:0;color:#647d8b}.hp-billing-ledger>article>strong{color:#0b2e45;font-size:16px}.hp-billing-empty{display:grid;min-height:150px;margin:16px 0;padding:24px;border:1px dashed #bfd1d9;border-radius:11px;background:#f8fbfc;color:#5b7482;place-content:center;text-align:center}.hp-billing-empty i{margin-bottom:8px;color:#07877b;font-size:24px}
.hp-billing-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 4px}.hp-billing-pagination p{margin:0;color:#5e7785}.hp-billing-pagination>div{display:flex;gap:5px}.hp-billing-pagination a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:7px 10px;border:1px solid #c5d7e0;border-radius:8px;background:#fff;color:#174d69;font-weight:700}.hp-billing-pagination a:hover,.hp-billing-pagination a:focus-visible{border-color:#07877b;background:#f1faf8;text-decoration:none}.hp-billing-pagination a.is-current{border-color:#073c5c;background:#073c5c;color:#fff}.hp-billing-pagination a.is-disabled{opacity:.45;pointer-events:none}
@media(max-width:1180px){.hp-billing-toolbar{grid-template-columns:repeat(3,minmax(150px,1fr))}.hp-billing-toolbar__search{grid-column:span 2}.hp-billing-toolbar__actions{justify-content:flex-end}.hp-billing-record__summary{grid-template-columns:minmax(220px,1fr) minmax(140px,.6fr) auto 20px}}
@media(max-width:700px){.hp-billing-admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.hp-billing-admin-tabs a{min-width:0;min-height:46px;padding:7px}.hp-billing-settings-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hp-billing-settings-nav a{justify-content:center;text-align:center}.hp-billing-toolbar{grid-template-columns:1fr 1fr;padding:12px}.hp-billing-toolbar__search{grid-column:1/-1}.hp-billing-toolbar__actions{grid-column:1/-1}.hp-billing-toolbar__actions .btn{flex:1}.hp-billing-record__summary{grid-template-columns:minmax(0,1fr) auto 18px;gap:10px;min-height:88px;padding:12px}.hp-billing-record__summary>span:not(.hp-subscription-status){grid-column:1/2}.hp-billing-record__summary>.hp-subscription-status{grid-column:2}.hp-billing-record__summary>.fa-chevron-down{grid-column:3;grid-row:1/3}.hp-billing-record__body{padding:12px}.hp-billing-ledger article{grid-template-columns:1fr auto}.hp-billing-ledger article>.hp-bank-transfer-status{grid-column:1/-1;width:max-content}.hp-billing-pagination{align-items:flex-start;flex-direction:column}.hp-billing-pagination>div{width:100%;overflow-x:auto}.hp-billing-pagination a{flex:0 0 auto}.hp-billing-pagination a span{display:none}}
@media(max-width:430px){.hp-billing-toolbar{grid-template-columns:1fr}.hp-billing-toolbar__search,.hp-billing-toolbar__actions{grid-column:auto}.hp-billing-toolbar__page-size{max-width:none}.hp-billing-record__summary{grid-template-columns:minmax(0,1fr) 18px}.hp-billing-record__summary>.hp-subscription-status{grid-column:1;width:max-content}.hp-billing-record__summary>.fa-chevron-down{grid-column:2}.hp-billing-ledger article{grid-template-columns:1fr}.hp-billing-ledger article>strong{justify-self:start}}
@media(prefers-reduced-motion:reduce){.hp-billing-record__summary>.fa-chevron-down{transition:none}}

/* Stripe one-step connection */
.hp-stripe-connect-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;margin-top:20px;padding:20px;border:1px solid #c8dbe5;border-radius:12px;background:linear-gradient(135deg,#f7fbfd 0%,#edf7fa 100%)}
.hp-stripe-connect-card.is-connected{align-items:center;border-color:#9bd8ca;background:linear-gradient(135deg,#f2fbf8 0%,#e9f8f4 100%)}
.hp-stripe-connect-card__intro,.hp-stripe-connect-card__status{display:flex;align-items:flex-start;gap:13px}
.hp-stripe-connect-card__intro>span,.hp-stripe-connect-card__status>span{display:inline-flex;flex:0 0 42px;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#0a6fa5;color:#fff}
.hp-stripe-connect-card__status>span{background:#078675}
.hp-stripe-connect-card__intro strong,.hp-stripe-connect-card__status strong{display:block;margin-bottom:4px;color:#103b52;font-size:16px}
.hp-stripe-connect-card__intro p,.hp-stripe-connect-card__status p{max-width:680px;margin:0;color:#587384;line-height:1.55}
.hp-stripe-key-guide{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;border:1px solid #bad5e1;border-radius:10px;background:#fff}.hp-stripe-key-guide>div{display:flex;align-items:flex-start;gap:11px}.hp-stripe-key-guide>div>span{display:inline-flex;flex:0 0 36px;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;background:#e7f3f8;color:#086b9c}.hp-stripe-key-guide strong{display:block;margin:0 0 3px;color:#153f55}.hp-stripe-key-guide p{max-width:650px;margin:0;color:#5c7685;line-height:1.5}.hp-stripe-key-guide nav{display:flex;align-items:center;gap:12px}.hp-stripe-key-guide nav .btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px!important;white-space:nowrap}.hp-stripe-key-guide nav>a:not(.btn){display:inline-flex;align-items:center;gap:6px;min-height:44px;color:#17668e;font-weight:700;white-space:nowrap}
.hp-stripe-connect-form{grid-column:1/-1;display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:12px;padding-top:2px}
.hp-stripe-connect-form label{display:grid;gap:6px;margin:0}.hp-stripe-connect-form label>span{color:#173f55;font-weight:700}.hp-stripe-connect-form label small{color:#5e7786;line-height:1.45}
.hp-stripe-connect-form input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #adc8d6;border-radius:8px;background:#fff;color:#102f44;font-family:monospace;font-size:15px}
.hp-stripe-connect-form input:focus{border-color:#087f70;box-shadow:0 0 0 3px rgba(8,127,112,.14);outline:0}
.hp-stripe-connect-form .btn,.hp-stripe-test-form .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px!important}
.hp-stripe-connect-form .btn.is-loading i{animation:hp-stripe-spin .8s linear infinite}.hp-stripe-connect-form .btn:disabled{cursor:wait;opacity:.72}
.hp-stripe-account-meta{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:8px 28px;margin:2px 0 0;padding-top:16px;border-top:1px solid rgba(7,134,117,.18)}
.hp-stripe-account-meta div{display:grid;gap:3px}.hp-stripe-account-meta dt{color:#607987;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hp-stripe-account-meta dd{margin:0;color:#123b50;font-weight:700}.hp-stripe-account-meta dd.is-live{color:#087f70}.hp-stripe-account-meta dd.is-test{color:#946200}
.hp-stripe-test-form{align-self:center;margin:0}.hp-stripe-advanced{margin-top:16px;border:1px solid #d3e1e8;border-radius:10px;background:#fafcfd}.hp-stripe-advanced>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:12px 14px;cursor:pointer;list-style:none}.hp-stripe-advanced>summary::-webkit-details-marker{display:none}.hp-stripe-advanced>summary span{color:#244b60;font-weight:700}.hp-stripe-advanced>summary small{color:#657e8c}.hp-stripe-advanced[open]>summary{border-bottom:1px solid #dce7ec;background:#f3f8fa}.hp-stripe-advanced>form{padding:6px 16px 16px}
.hp-stripe-reconnect{grid-column:1/-1;border-top:1px solid rgba(7,134,117,.18);padding-top:12px}.hp-stripe-reconnect>summary{width:max-content;min-height:44px;padding:12px 0;color:#276077;cursor:pointer;font-weight:700}.hp-stripe-reconnect>summary:focus-visible,.hp-stripe-advanced>summary:focus-visible{outline:3px solid rgba(8,127,112,.2);outline-offset:2px}.hp-stripe-reconnect .hp-stripe-connect-form{padding-top:10px}
.hp-stripe-events{margin:0 0 22px;padding:22px;border:1px solid #c9dde7;border-radius:8px;background:#fff}.hp-stripe-events>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.hp-stripe-events h2{margin:3px 0 6px}.hp-stripe-events header p{max-width:780px;margin:0;color:#667b89}.hp-stripe-events__list{border:1px solid #d7e4ea;border-radius:8px;overflow:hidden}.hp-stripe-events__list article{display:grid;grid-template-columns:10px minmax(260px,1fr) minmax(180px,.5fr) auto;align-items:center;gap:14px;min-height:74px;padding:12px 14px;border-bottom:1px solid #e1eaee;background:#fff}.hp-stripe-events__list article:last-child{border-bottom:0}.hp-stripe-events__signal{width:8px;height:8px;border-radius:50%;background:#8da2ae}.hp-stripe-events__list article.is-processed .hp-stripe-events__signal{background:#078675}.hp-stripe-events__list article.is-failed .hp-stripe-events__signal{background:#c2413b}.hp-stripe-events__event{display:grid;gap:4px;min-width:0}.hp-stripe-events__event strong{color:#12384d}.hp-stripe-events__event code{display:block;max-width:100%;overflow:hidden;color:#607887;text-overflow:ellipsis;white-space:nowrap}.hp-stripe-events__event p{margin:3px 0 0;color:#a53531;font-size:12px}.hp-stripe-events__time{display:grid;gap:2px}.hp-stripe-events__time span,.hp-stripe-events__time small{color:#718793;font-size:11px}.hp-stripe-events__time strong{color:#284f63;font-size:13px}.hp-stripe-events__status{padding:5px 9px;border-radius:999px;background:#eef3f5;color:#58707d;font-size:11px;font-weight:800}.hp-stripe-events__status.is-processed{background:#e3f6f1;color:#087867}.hp-stripe-events__status.is-failed{background:#fcebea;color:#a53531}.hp-stripe-events__empty{display:flex;align-items:center;gap:12px;padding:20px;border:1px dashed #cbdde5;border-radius:8px;background:#f8fbfc}.hp-stripe-events__empty>i{color:#718895;font-size:20px}.hp-stripe-events__empty p{margin:3px 0 0;color:#667d8a}.hp-stripe-events>footer{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:#6c818d;font-size:12px}.hp-stripe-events>footer i{margin-top:2px;color:#078675}
@keyframes hp-stripe-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.hp-stripe-key-guide{align-items:stretch;flex-direction:column}.hp-stripe-key-guide nav{flex-wrap:wrap}}
@media(max-width:700px){.hp-stripe-connect-card{grid-template-columns:1fr;padding:16px}.hp-stripe-key-guide{padding:13px}.hp-stripe-key-guide nav{display:grid;grid-template-columns:1fr}.hp-stripe-key-guide nav .btn,.hp-stripe-key-guide nav>a:not(.btn){width:100%;white-space:normal}.hp-stripe-connect-form{grid-template-columns:1fr}.hp-stripe-connect-form input{font-size:16px}.hp-stripe-connect-form .btn,.hp-stripe-test-form,.hp-stripe-test-form .btn{width:100%}.hp-stripe-advanced>summary{align-items:flex-start;flex-direction:column;gap:4px}.hp-stripe-account-meta{display:grid;grid-template-columns:1fr 1fr}.hp-stripe-connect-card__intro p,.hp-stripe-connect-card__status p{font-size:13px}.hp-stripe-events{padding:16px 14px}.hp-stripe-events>header{flex-direction:column}.hp-stripe-events>header .btn{width:100%}.hp-stripe-events__list article{grid-template-columns:10px 1fr auto;gap:9px}.hp-stripe-events__time{grid-column:2/-1}.hp-stripe-events__status{grid-column:3;grid-row:1}}
@media(max-width:430px){.hp-stripe-account-meta{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hp-stripe-connect-form .btn.is-loading i{animation:none}}

.hp-readiness-booking-disclosure{margin-top:20px;border:1px solid #d5e3eb;border-radius:9px;background:#fff;overflow:hidden}.hp-readiness-booking-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:12px 16px;cursor:pointer;list-style:none}.hp-readiness-booking-disclosure>summary::-webkit-details-marker{display:none}.hp-readiness-booking-disclosure>summary>span{display:flex;align-items:center;gap:11px;min-width:0}.hp-readiness-booking-disclosure>summary>span>i{display:grid;width:36px;height:36px;flex:0 0 36px;border-radius:8px;background:#e2f6f2;color:#087f70;place-items:center}.hp-readiness-booking-disclosure>summary>span>span{display:grid;gap:2px}.hp-readiness-booking-disclosure>summary strong{color:#123a52}.hp-readiness-booking-disclosure>summary small{color:#647d8b}.hp-readiness-booking-disclosure>summary>.fa-chevron-down{color:#5f7a89;transition:transform .18s ease}.hp-readiness-booking-disclosure[open]>summary{border-bottom:1px solid #e0e9ee;background:#f8fbfc}.hp-readiness-booking-disclosure[open]>summary>.fa-chevron-down{transform:rotate(180deg)}.hp-readiness-booking-disclosure .hp-readiness-booking{margin:0;padding:16px;border:0}.hp-readiness-booking-disclosure .hp-readiness-booking p{margin:0;max-width:680px}
.hp-team-billing-breakdown{margin-top:16px;border:1px solid #cfe0e8;border-radius:9px;background:#fff;overflow:hidden}.hp-team-billing-breakdown>header{display:flex;align-items:flex-start;gap:12px;padding:17px 20px;background:#f5fafb;border-bottom:1px solid #dce8ed}.hp-team-billing-breakdown>header>span{display:grid;width:38px;height:38px;flex:0 0 38px;border-radius:9px;background:#dff5f0;color:#087f70;place-items:center}.hp-team-billing-breakdown h3{margin:1px 0 3px;font-size:16px}.hp-team-billing-breakdown header p{margin:0;color:#647c8a}.hp-team-billing-breakdown__rows{padding:0 20px}.hp-team-billing-breakdown__rows>div{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:60px;padding:10px 0;border-bottom:1px solid #e4ecef}.hp-team-billing-breakdown__rows>div:last-child{border-bottom:0}.hp-team-billing-breakdown__rows span{display:grid;gap:2px}.hp-team-billing-breakdown__rows small{color:#687f8d}.hp-team-billing-breakdown__rows b{color:#133c53;white-space:nowrap}.hp-team-billing-breakdown>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:#eff8f6;border-top:1px solid #cfe5df;color:#315c68;font-weight:800}.hp-team-billing-breakdown>footer strong{color:#087460;font-size:20px}.hp-team-billing-breakdown>footer small{margin-left:2px;font-size:11px;color:#5e7a82}
@media(max-width:700px){.hp-readiness-booking-disclosure>summary{min-height:64px;padding:12px}.hp-readiness-booking-disclosure .hp-readiness-booking{align-items:center;padding:14px 12px}.hp-team-billing-breakdown>header{padding:15px}.hp-team-billing-breakdown__rows{padding:0 15px}.hp-team-billing-breakdown>footer{padding:13px 15px}}
.hp-readiness-booking-disclosure>summary:focus-visible{outline:3px solid rgba(11,137,121,.25);outline-offset:-3px}
@media(prefers-reduced-motion:reduce){.hp-readiness-booking-disclosure>summary>.fa-chevron-down{transition:none}}

/* Marketplace insights: compact, privacy-safe provider reporting. */
.hp-marketplace-insights__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.hp-marketplace-insights__head h1{margin:3px 0 7px}.hp-marketplace-insights__head p{max-width:760px;margin:0;color:#627b89}.hp-marketplace-insights__head>span{padding:7px 11px;border-radius:999px;background:#e5f6f2;color:#087866;font-size:12px;font-weight:800;white-space:nowrap}.hp-marketplace-insights__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hp-marketplace-insights__grid article{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;gap:2px 12px;padding:18px;border:1px solid #d4e3ea;border-radius:12px;background:#fff}.hp-marketplace-insights__grid i{display:grid;grid-row:1/3;width:42px;height:42px;border-radius:10px;background:#e5f4f8;color:#0a759e;place-items:center}.hp-marketplace-insights__grid strong{color:#0d354d;font-size:25px;line-height:1}.hp-marketplace-insights__grid span{color:#617a88;font-size:13px}.hp-marketplace-insights__rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.hp-marketplace-insights__rates article{display:grid;gap:5px;padding:18px;border:1px solid #cce2de;border-radius:12px;background:#f3fbf9}.hp-marketplace-insights__rates strong{color:#087866;font-size:24px}.hp-marketplace-insights__rates span{color:#153f54;font-weight:800}.hp-marketplace-insights__rates small{color:#627c89;line-height:1.45}.hp-marketplace-insights__breakdown{margin-top:22px;padding:18px;border:1px solid #d4e3ea;border-radius:12px;background:#fff}.hp-marketplace-insights__breakdown h2{margin:0 0 14px;font-size:18px}.hp-marketplace-insights__privacy{display:flex;align-items:flex-start;gap:8px;margin:18px 0 0;color:#647d8a;font-size:12px}.hp-marketplace-insights__privacy i{margin-top:2px;color:#087866}
@media(max-width:900px){.hp-marketplace-insights__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-marketplace-insights__rates{grid-template-columns:1fr}}
@media(max-width:520px){.hp-marketplace-insights__head{flex-direction:column}.hp-marketplace-insights__grid{grid-template-columns:1fr}.hp-marketplace-insights__grid article{min-height:82px}.hp-marketplace-insights__breakdown{padding:14px}.hp-marketplace-insights__breakdown .table-responsive{margin:0;border:0}}
.hp-marketplace-insights__outcomes{margin-top:22px;padding:18px;border:1px solid #d4e3ea;border-radius:12px;background:#fff}.hp-marketplace-insights__section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.hp-marketplace-insights__section-head h2{margin:0 0 5px;font-size:18px}.hp-marketplace-insights__section-head p{margin:0;color:#627b89}.hp-marketplace-insights__promotion{padding:7px 10px;border-radius:999px;background:#edf2f5;color:#627b89;font-size:12px;font-weight:800;white-space:nowrap}.hp-marketplace-insights__promotion.is-active{background:#e3f7ef;color:#087866}.hp-marketplace-insights__rates--four{grid-template-columns:repeat(4,minmax(0,1fr))}.hp-marketplace-insights__patient-mix{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.hp-marketplace-insights__patient-mix span{padding:10px 12px;border-radius:10px;background:#f3f8fa;color:#476675}.hp-marketplace-insights__patient-mix strong{color:#0d354d}.hp-marketplace-insights__empty{margin:16px 0 0;padding:14px;border-radius:10px;background:#f5f9fb;color:#597582}@media(max-width:1100px){.hp-marketplace-insights__rates--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.hp-marketplace-insights__section-head{flex-direction:column}.hp-marketplace-insights__rates--four{grid-template-columns:1fr}.hp-marketplace-insights__outcomes{padding:14px}.hp-marketplace-insights__promotion{white-space:normal}}
.hp-marketplace-insights__promotion-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.hp-marketplace-insights__promotion-wrap small{max-width:260px;text-align:right;color:#627b89}.hp-marketplace-insights__freshness{display:block;margin-top:4px;color:#627b89;font-weight:500;white-space:normal}@media(max-width:620px){.hp-marketplace-insights__promotion-wrap{align-items:flex-start}.hp-marketplace-insights__promotion-wrap small{text-align:left}}
.healthcare-booking-waitlist{display:grid;gap:12px;margin-top:16px;padding:16px;border:1px solid #cfe1e8;border-radius:12px;background:#f6fbfc}.healthcare-booking-waitlist label{display:flex;align-items:flex-start;gap:10px;margin:0;color:#34586a}.healthcare-booking-waitlist input{width:20px;height:20px;margin-top:1px}.healthcare-booking-waitlist small{color:#637e8b;line-height:1.45}.hp-waitlist-card{margin-top:18px}.hp-waitlist-card .hp-appointment-main small{display:block;color:#7a5d18}.hp-waitlist-card form{margin:0}.hp-waitlist-card .hp-appointment-side{gap:8px}@media(max-width:520px){.healthcare-booking-waitlist{padding:14px}.hp-waitlist-card .hp-appointment-side{width:100%;align-items:stretch}.hp-waitlist-card button{min-height:44px;width:100%}}

/* Provider activation: evidence-backed trust states and claim workflow. */
.hp-activation-filters label{display:block;color:#456372;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.hp-activation-filter-actions{margin-top:12px}.hp-activation-filter-submit{padding-top:21px}.hp-activation-layout{display:grid;grid-template-columns:1fr;gap:18px}.hp-activation-layout.has-detail{grid-template-columns:minmax(0,1.45fr) minmax(380px,.75fr);align-items:start}.hp-activation-list-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.hp-activation-list-heading strong{color:#123a50;font-size:18px}.hp-activation-list-heading span{padding:4px 9px;border-radius:999px;background:#e7f4f3;color:#087d71;font-weight:800}.hp-activation-list{display:grid;gap:8px}.hp-activation-row{display:grid;grid-template-columns:minmax(210px,1fr) 90px 105px 145px;align-items:center;gap:12px;min-height:72px;padding:11px 13px;border:1px solid #d8e5eb;border-radius:10px;background:#fff;color:#183e52;text-decoration:none}.hp-activation-row:hover,.hp-activation-row:focus,.hp-activation-row.is-active{border-color:#69bdb1;background:#f2fbf9;text-decoration:none}.hp-activation-row>span{display:grid;gap:3px;min-width:0}.hp-activation-row>span:first-child strong,.hp-activation-row>span:first-child small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-activation-row small{color:#69808c;font-size:11px}.hp-activation-state{justify-self:end;padding:5px 8px;border-radius:999px;background:#edf2f4;color:#56707d;font-size:10px;font-style:normal;font-weight:800;text-align:center}.hp-activation-state.is-verified{background:#dcf7ec;color:#08745f}.hp-activation-state.is-claimed,.hp-activation-state.is-public_unverified{background:#fff2d8;color:#8a5a00}.hp-activation-state.is-suspended,.hp-activation-state.is-rejected{background:#fde8e8;color:#a63434}.hp-activation-state.is-stale{background:#f8e9ff;color:#764195}.hp-activation-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.hp-activation-detail{position:sticky;top:18px}.hp-activation-detail-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hp-activation-detail-title h3{margin:3px 0 4px;color:#12394e}.hp-activation-detail-title p{margin:0;color:#657e8b}.hp-activation-readiness{display:flex;align-items:flex-start;gap:10px;margin:16px 0;padding:12px;border:1px solid #efcf91;border-radius:9px;background:#fff8e8;color:#7d5500}.hp-activation-readiness.is-ready{border-color:#afdcd0;background:#effaf7;color:#087463}.hp-activation-readiness>i{margin-top:2px}.hp-activation-readiness span{display:grid;gap:2px}.hp-activation-readiness small{color:inherit;opacity:.8}.hp-activation-action{margin:14px 0 20px}.hp-activation-evidence-list{display:grid;gap:7px;margin:10px 0 20px}.hp-activation-evidence{border:1px solid #d8e4e9;border-radius:8px;background:#fff}.hp-activation-evidence>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;cursor:pointer;list-style:none}.hp-activation-evidence>summary::-webkit-details-marker{display:none}.hp-activation-evidence>summary span{color:#244b5e;font-weight:700}.hp-activation-evidence>summary em{padding:3px 7px;border-radius:999px;background:#edf2f4;color:#607783;font-size:10px;font-style:normal;font-weight:800}.hp-activation-evidence.is-approved>summary em{background:#dcf7ec;color:#08745f}.hp-activation-evidence.is-rejected>summary em{background:#fde8e8;color:#a63434}.hp-activation-evidence.is-pending>summary em{background:#fff2d8;color:#8a5a00}.hp-activation-evidence form{display:grid;gap:8px;padding:0 11px 12px;border-top:1px solid #e5ecef}.hp-activation-evidence form label{margin:8px 0 0;color:#506a77;font-size:11px}.hp-activation-state-form{display:grid;gap:9px}.hp-activation-state-form label{margin:0;color:#435f6e;font-size:12px;font-weight:600}.hp-activation-state-form .btn{justify-self:start}.hp-activation-detail .alert input{margin-top:8px;font-family:monospace;font-size:11px}
@media(max-width:1100px){.hp-activation-layout.has-detail{grid-template-columns:1fr}.hp-activation-detail{position:static}.hp-activation-row{grid-template-columns:minmax(190px,1fr) 80px 90px 135px}}
@media(max-width:700px){.hp-activation-filter-submit{padding-top:0}.hp-activation-row{grid-template-columns:1fr auto;padding:12px}.hp-activation-row>span:nth-child(2),.hp-activation-row>span:nth-child(3){display:none}.hp-activation-state{max-width:140px}.hp-activation-detail .panel-body{padding:14px}.hp-activation-state-form .btn,.hp-activation-action .btn,.hp-activation-outreach,.hp-activation-filter-submit .btn{min-height:44px;width:100%}.hp-activation-detail-title .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}.hp-activation-evidence>summary{min-height:44px;touch-action:manipulation}.hp-activation-duplicates>a{min-height:52px;touch-action:manipulation}}
.hp-activation-outreach{margin:-11px 0 20px}.hp-activation-duplicate-help{margin:-5px 0 9px;font-size:12px;line-height:1.45}.hp-activation-duplicates{display:grid;gap:7px;margin-bottom:20px}.hp-activation-duplicates>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:9px 10px;border:1px solid #d9e5ea;border-radius:8px;background:#f9fbfc;color:#244b5e;text-decoration:none}.hp-activation-duplicates>a:hover,.hp-activation-duplicates>a:focus{border-color:#e1b75e;background:#fffaf0;text-decoration:none}.hp-activation-duplicates>a>span{display:grid;min-width:0}.hp-activation-duplicates>a>span strong,.hp-activation-duplicates>a>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hp-activation-duplicates>a>span small,.hp-activation-duplicates>a>small{color:#6a808c;font-size:10px}.hp-activation-duplicates>a>small{grid-column:1/-1}.hp-activation-duplicates>a>em{align-self:start;padding:3px 7px;border-radius:999px;background:#fff0cf;color:#845600;font-size:10px;font-style:normal;font-weight:800}.hp-activation-no-duplicates{padding:10px;border-radius:8px;background:#f0faf7;color:#087562;font-size:12px}
.hp-activation-settings{margin-bottom:18px;border:1px solid #d6e4ea;border-radius:10px;background:#fff}.hp-activation-settings>summary{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:10px 14px;cursor:pointer;list-style:none}.hp-activation-settings>summary::-webkit-details-marker{display:none}.hp-activation-settings>summary>span{display:grid;grid-template-columns:32px 1fr;column-gap:10px}.hp-activation-settings>summary>span>i{display:grid;grid-row:1/3;width:32px;height:32px;border-radius:8px;background:#e6f5f3;color:#08776b;place-items:center}.hp-activation-settings>summary small{color:#657d89}.hp-activation-settings>form{display:grid;grid-template-columns:minmax(240px,360px) 120px;align-items:end;gap:10px;padding:14px;border-top:1px solid #e2eaee}.hp-activation-settings label{grid-column:1/-1;margin:0;color:#46616e;font-size:11px;font-weight:800}.hp-activation-settings .btn{min-height:40px}@media(max-width:700px){.hp-activation-settings>form{grid-template-columns:1fr}.hp-activation-settings .btn{min-height:44px;width:100%}}
.hp-decision-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hp-decision-field,.hp-decision-options{display:grid;gap:7px;margin:0;padding:0;border:0}.hp-decision-field--wide,.hp-decision-options--reasons,.hp-decision-confirm{grid-column:1/-1}.hp-decision-field label,.hp-decision-options legend{margin:0;color:#173a4d;font-size:13px;font-weight:800}.hp-decision-field input,.hp-decision-field select,.hp-decision-field textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid #cbdde5;border-radius:8px;background:#fff;color:#102f40}.hp-decision-field textarea{min-height:84px;resize:vertical}.hp-decision-field small,.hp-decision-options>small{color:#647d89}.hp-decision-options{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;border:1px solid #dce8ed;border-radius:10px;background:#f8fbfc}.hp-decision-options legend,.hp-decision-options>small{grid-column:1/-1}.hp-decision-options label,.hp-decision-confirm{display:flex;align-items:flex-start;gap:9px;min-height:38px;margin:0;padding:7px;border-radius:7px}.hp-decision-options input,.hp-decision-confirm input{width:18px;height:18px;margin:1px 0 0}.hp-decision-confirm{border:1px solid #bfe1db;background:#eef9f6}.hp-decision-confirm span{display:grid}.hp-decision-confirm small{color:#58717d}.hp-public-decision-profile dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border:1px solid #dbe7ed;border-radius:10px;overflow:hidden}.hp-public-decision-profile dl>div{padding:12px 14px;border-bottom:1px solid #e4ecef}.hp-public-decision-profile dl>div:nth-child(odd){border-right:1px solid #e4ecef}.hp-public-decision-profile dl>div.is-wide{grid-column:1/-1;border-right:0}.hp-public-decision-profile dt{color:#5e7682;font-size:12px;font-weight:700}.hp-public-decision-profile dd{margin:3px 0 0;color:#102f40;font-weight:700}.hp-public-decision-profile__freshness{display:flex;align-items:center;gap:7px;margin:12px 0 0;color:#5e7682;font-size:12px}@media(max-width:700px){.hp-decision-fields,.hp-public-decision-profile dl{grid-template-columns:1fr}.hp-decision-options{grid-template-columns:1fr}.hp-decision-field--wide,.hp-decision-options--reasons,.hp-decision-confirm,.hp-public-decision-profile dl>div.is-wide{grid-column:auto}.hp-decision-options label,.hp-decision-confirm{min-height:44px}.hp-public-decision-profile dl>div:nth-child(odd){border-right:0}}

/* Stripe setup shows four catalog readiness signals as a stable two-by-two grid. */
.hp-stripe-checklist{grid-template-columns:repeat(2,1fr)}
@media(max-width:850px){.hp-stripe-checklist{grid-template-columns:1fr}}

/* One commercial catalog keeps every administrator-editable amount together. */
.hp-plan-mapping-status.is-neutral{background:#edf3f6;color:#536d79}
.hp-pricing-card-help{min-height:38px;margin:12px 0 0;color:#617985;font-size:12px;line-height:1.55}
.hp-plan-pricing-card--promotion{border-top:3px solid #dca72d!important}
.hp-plan-pricing-card--directory{border-top:3px solid #2c6f8d!important}
.hp-plan-pricing-fields--commercial{grid-template-columns:repeat(3,minmax(120px,1fr))}
.hp-plan-pricing-fields--single{grid-template-columns:minmax(180px,260px)}
.hp-pricing-settings-link{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;margin:18px 0;padding:14px 16px;border:1px solid #cfe0e6;border-radius:10px;background:#f7fbfc}
.hp-pricing-settings-link>span{display:grid;width:42px;height:42px;border-radius:10px;background:#e3f3f1;color:#087b72;place-items:center;font-size:17px}
.hp-pricing-settings-link strong{display:block;color:#173d50}
.hp-pricing-settings-link p{margin:3px 0 0;color:#657d88;font-size:12px}
.hp-pricing-settings-link .btn{border-radius:8px;white-space:nowrap}
@media(max-width:1100px){.hp-plan-pricing-fields--commercial{grid-template-columns:repeat(2,minmax(120px,1fr))}}
@media(max-width:700px){.hp-plan-pricing-fields--commercial,.hp-plan-pricing-fields--single{grid-template-columns:1fr}.hp-pricing-settings-link{grid-template-columns:42px 1fr}.hp-pricing-settings-link .btn{grid-column:1/-1;width:100%}}

/* Specialty assistant: inline, review-safe phrase conflict resolution. */
.hp-assistant-conflicts{display:grid;gap:12px}.hp-assistant-conflicts .hp-assistant-conflict{display:grid;gap:12px;padding:14px;border:1px solid #efd59b;border-radius:10px;background:#fffaf0}.hp-assistant-conflict__summary{display:grid;gap:3px}.hp-assistant-conflict__summary strong{color:#183d50;font-size:14px}.hp-assistant-conflict__summary small{color:#6c7f89}.hp-assistant-conflict__form{display:grid;gap:7px;margin:0;padding-top:11px;border-top:1px solid #eadfca}.hp-assistant-conflict__form>label{margin:0;color:#284d60;font-size:12px;font-weight:800}.hp-assistant-conflict__controls{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:stretch;gap:8px}.hp-assistant-conflict__controls select,.hp-assistant-conflict__controls .btn{min-height:44px}.hp-assistant-conflict__controls .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.hp-assistant-conflict__help{display:flex;align-items:flex-start;gap:6px;color:#6b644f;line-height:1.45}.hp-assistant-conflict__help i{margin-top:2px;color:#b67a00}
@media(max-width:700px){.hp-assistant-conflict__controls{grid-template-columns:1fr}.hp-assistant-conflict__controls select{font-size:16px}.hp-assistant-conflict__controls .btn{width:100%;min-height:46px!important;white-space:normal}}

/* Optional analytics remains off until a visitor makes an explicit choice. */
.hp-analytics-consent {
    align-items: center;
    background: #fff;
    border: 1px solid #c9dce8;
    border-radius: 14px;
    bottom: 18px;
    box-shadow: 0 18px 46px rgba(7, 31, 54, .2);
    color: #102f43;
    display: flex;
    gap: 24px;
    left: 50%;
    max-width: min(760px, calc(100vw - 32px));
    padding: 18px 20px;
    position: fixed;
    transform: translateX(-50%);
    width: 100%;
    z-index: 100000;
}

.hp-analytics-consent__body {
    flex: 1 1 auto;
    min-width: 0;
}

.hp-analytics-consent__body strong {
    display: block;
    font-size: 16px;
    margin-bottom: 5px;
}

.hp-analytics-consent__body p {
    color: #40576d;
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 5px;
}

.hp-analytics-consent__body a,
.hp-public-footer__privacy-choice {
    color: #075f9f;
    font-size: 13px;
    font-weight: 700;
    text-decoration: underline;
}

.hp-analytics-consent__actions {
    display: flex;
    flex: 0 0 auto;
    gap: 8px;
}

.hp-analytics-consent__actions button {
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    min-height: 44px;
    padding: 10px 14px;
}

.hp-analytics-consent__reject {
    background: #fff;
    border: 1px solid #8cabbf;
    color: #123b55;
}

.hp-analytics-consent__accept {
    background: #075f9f;
    border: 1px solid #075f9f;
    color: #fff;
}

.hp-public-footer__privacy-choice {
    background: none;
    border: 0;
    color: inherit;
    cursor: pointer;
    padding: 0;
    text-align: left;
}

@media (max-width: 700px) {
    .hp-analytics-consent {
        align-items: stretch;
        bottom: 10px;
        flex-direction: column;
        gap: 14px;
        padding: 16px;
    }

    .hp-analytics-consent__actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}

/* Canonical public-site header: one brand shell for marketing, trust, careers and registration pages. */
.hp-site-header {
    --hp-site-header-blue: #117ed0;
    --hp-site-header-blue-dark: #0c6eae;
    --hp-site-header-blue-deep: #095f99;
    background: var(--hp-site-header-blue);
    border-bottom: 1px solid rgba(255, 255, 255, .2);
    box-shadow: 0 2px 10px rgba(7, 54, 83, .08);
    color: #fff;
    margin-left: calc(50% - 50vw);
    position: relative;
    width: 100vw;
    z-index: 20;
}

@supports (width: 100dvw) {
    .hp-site-header {
        margin-left: calc(50% - 50dvw);
        width: 100dvw;
    }
}

.hp-site-header *,
.hp-site-header *::before,
.hp-site-header *::after {
    box-sizing: border-box;
}

.hp-site-header__bar {
    align-items: center;
    display: flex;
    gap: 28px;
    justify-content: space-between;
    margin: 0 auto;
    min-height: 72px;
    padding: 0 24px;
    width: min(100%, 1180px);
}

.hp-site-header__brand {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    min-height: 44px;
}

.hp-site-header__brand .hp-brand-logo,
.hp-site-header__brand .hp-brand-logo svg {
    display: block;
    height: auto;
    max-height: 40px;
    width: 176px;
}

.hp-site-header__primary {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    gap: 8px;
    justify-content: flex-end;
    min-width: 0;
}

.hp-site-header__account {
    flex: 0 0 auto;
}

.hp-site-header__primary > a,
.hp-site-header__context a,
.hp-site-header__mobile-menu nav > a {
    align-items: center;
    border-radius: 7px;
    color: rgba(255, 255, 255, .94);
    display: inline-flex;
    font-weight: 750;
    justify-content: center;
    min-height: 44px;
    padding: 9px 12px;
    position: relative;
    text-decoration: none;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

.hp-site-header__primary > a:hover,
.hp-site-header__primary > a:focus-visible,
.hp-site-header__context a:hover,
.hp-site-header__context a:focus-visible {
    background: rgba(255, 255, 255, .12);
    color: #fff;
    text-decoration: none;
}

.hp-site-header__primary > a.is-active::after,
.hp-site-header__context a.is-active::after {
    background: #fff;
    border-radius: 999px;
    bottom: 4px;
    content: '';
    height: 2px;
    left: 12px;
    position: absolute;
    right: 12px;
}

.hp-site-header__primary > .hp-site-header__professional-cta,
.hp-site-header__mobile-menu nav > .hp-site-header__professional-cta {
    background: var(--hp-site-header-blue-deep);
    border: 1px solid rgba(255, 255, 255, .22);
    color: #fff;
    padding-right: 16px;
    padding-left: 16px;
}

.hp-site-header__primary > .hp-site-header__professional-cta:hover,
.hp-site-header__primary > .hp-site-header__professional-cta:focus-visible {
    background: #075383;
}

.hp-site-header__primary > .hp-site-header__login {
    border: 1px solid rgba(255, 255, 255, .5);
    min-width: 76px;
}

.hp-site-header .hp-global-account-toggle {
    color: #fff;
}

.hp-site-header .hp-global-account-avatar {
    background: var(--hp-site-header-blue-dark);
}

.hp-site-header .hp-global-account-panel .hp-global-account-roles .is-active,
.hp-site-header .hp-global-account-panel .hp-global-account-roles .is-active strong,
.hp-site-header .hp-global-account-panel .hp-global-account-roles .is-active > i {
    background: #e7f2fa;
    color: #0a5d95;
}

.hp-site-header .hp-global-account-panel .hp-global-account-roles a:hover,
.hp-site-header .hp-global-account-panel .hp-global-account-role-form button:hover,
.hp-site-header .hp-global-account-panel .hp-global-account-links a:hover {
    background: #edf6fc;
    color: #0a5d95;
}

.hp-site-header__context {
    background: #f5f9fc;
    border-bottom: 1px solid #d9e7f1;
    border-top: 1px solid rgba(255, 255, 255, .22);
}

.hp-site-header__context > div {
    display: flex;
    gap: 4px;
    margin: 0 auto;
    min-height: 46px;
    padding: 0 24px;
    width: min(100%, 1180px);
}

.hp-site-header__context a {
    border-radius: 0;
    color: #315b76;
    font-size: 13px;
    min-height: 46px;
    padding: 8px 14px;
}

.hp-site-header__context a:hover,
.hp-site-header__context a:focus-visible {
    background: #e8f3fa;
    color: #075f9f;
}

.hp-site-header__context a:focus-visible {
    outline-color: rgba(17, 126, 208, .55);
}

.hp-site-header__context a.is-active {
    color: #075f9f;
}

.hp-site-header__context a.is-active::after {
    background: #117ed0;
}

.hp-site-header__mobile-actions,
.hp-site-header__mobile-menu {
    display: none;
}

.hp-site-header a:focus-visible,
.hp-site-header summary:focus-visible,
.hp-site-header button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 2px;
}

@media (max-width: 900px) {
    .hp-site-header__bar {
        gap: 12px;
        min-height: 64px;
        padding: 0 16px;
    }

    .hp-site-header__brand .hp-brand-logo,
    .hp-site-header__brand .hp-brand-logo svg {
        width: 154px;
    }

    .hp-site-header__primary,
    .hp-site-header__context {
        display: none;
    }

    .hp-site-header__mobile-actions {
        align-items: center;
        display: flex;
        gap: 8px;
        margin-left: 0;
    }

    .hp-site-header__account {
        margin-left: auto;
    }

    .hp-site-header__mobile-menu {
        display: block;
        position: relative;
    }

    .hp-site-header__mobile-menu > summary {
        align-items: center;
        background: rgba(255, 255, 255, .12);
        border: 1px solid rgba(255, 255, 255, .34);
        border-radius: 8px;
        color: #fff;
        cursor: pointer;
        display: flex;
        font-size: 18px;
        height: 44px;
        justify-content: center;
        list-style: none;
        width: 44px;
    }

    .hp-site-header__mobile-menu > summary::-webkit-details-marker {
        display: none;
    }

    .hp-site-header__mobile-menu[open] > summary {
        background: var(--hp-site-header-blue-dark);
    }

    .hp-site-header__mobile-menu nav {
        background: #fff;
        border: 1px solid #d5e3ec;
        border-radius: 10px;
        box-shadow: 0 18px 45px rgba(7, 54, 83, .24);
        display: grid;
        gap: 3px;
        max-height: calc(100vh - 86px);
        min-width: min(310px, calc(100vw - 24px));
        overflow-y: auto;
        padding: 10px;
        position: absolute;
        right: 0;
        top: calc(100% + 10px);
    }

    .hp-site-header__mobile-menu nav > a {
        color: #123b55;
        justify-content: flex-start;
        padding: 10px 12px;
    }

    .hp-site-header__mobile-menu nav > a:hover,
    .hp-site-header__mobile-menu nav > a:focus-visible,
    .hp-site-header__mobile-menu nav > a.is-active {
        background: #eaf4fb;
        color: #0a5d95;
        outline-color: var(--hp-site-header-blue);
    }

    .hp-site-header__mobile-menu nav > .hp-site-header__mobile-context {
        border-left: 3px solid #b9d8eb;
        border-radius: 0 7px 7px 0;
        font-size: 13px;
        margin-left: 10px;
        min-height: 42px;
    }

    .hp-site-header__mobile-menu nav > .hp-site-header__professional-cta {
        background: var(--hp-site-header-blue-deep);
        color: #fff;
        justify-content: center;
        margin-top: 5px;
    }

    .hp-site-header__mobile-menu nav > .hp-site-header__login {
        border: 1px solid #9fc3da;
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .hp-site-header__bar {
        padding: 0 12px;
    }

    .hp-site-header__brand .hp-brand-logo,
    .hp-site-header__brand .hp-brand-logo svg {
        width: 128px;
    }

    .hp-site-header__mobile-actions {
        gap: 6px;
    }
}

/* Registration entry points share the professional product design language. */
.hp-registration-product-shell {
    background:
        radial-gradient(circle at 76% 12%, rgba(79, 99, 199, .12), transparent 30%),
        linear-gradient(118deg, var(--hp-public-blue-soft) 0%, #f8fbff 53%, var(--hp-public-indigo-soft) 100%);
    color: var(--hp-public-navy);
    min-height: 100vh;
}

.hp-registration-product-shell .hp-account-register-main {
    gap: 30px;
    max-width: 1120px;
    padding: 72px 24px 88px;
}

.hp-registration-product-shell .hp-account-register-intro {
    max-width: 780px;
}

.hp-registration-product-shell .hp-account-register-intro h1 {
    color: var(--hp-public-navy);
    font-size: clamp(38px, 5vw, 54px);
    letter-spacing: -.035em;
    line-height: 1.04;
    margin: 12px 0 16px;
}

.hp-registration-product-shell .hp-account-register-intro > p:not(.hp-pro-kicker) {
    color: #526d80;
    font-size: 18px;
    line-height: 1.65;
}

.hp-registration-product-audience {
    justify-content: center;
    margin-top: 24px;
}

.hp-registration-product-audience i {
    color: var(--hp-public-blue);
}

.hp-registration-product-shell .hp-account-register-options {
    gap: 24px;
}

.hp-registration-product-shell .hp-account-register-card {
    border: 1px solid var(--hp-public-border);
    border-radius: 18px;
    box-shadow: 0 22px 55px rgba(9, 44, 68, .10);
    gap: 22px;
    min-height: 290px;
    overflow: hidden;
    padding: 34px;
    position: relative;
}

.hp-registration-product-shell .hp-account-register-card::before,
.hp-registration-product-shell .hp-pro-auth-card::before {
    background: linear-gradient(90deg, var(--hp-public-blue), var(--hp-public-indigo));
    content: "";
    height: 4px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.hp-registration-product-shell .hp-account-register-card.is-professional {
    border-top: 1px solid var(--hp-public-border);
    padding-top: 34px;
}

.hp-registration-product-shell .hp-account-register-icon,
.hp-registration-product-shell .hp-account-register-card.is-professional .hp-account-register-icon {
    background: var(--hp-public-blue-soft);
    border-radius: 12px;
    color: var(--hp-public-blue);
    font-size: 25px;
    height: 54px;
    width: 54px;
}

.hp-registration-product-shell .hp-account-register-card h2 {
    color: var(--hp-public-navy);
    font-size: 26px;
    letter-spacing: -.02em;
}

.hp-registration-product-shell .hp-account-register-card p,
.hp-registration-product-shell .hp-account-register-login {
    color: #526d80;
}

.hp-registration-product-shell .hp-pro-primary {
    background: var(--hp-public-navy);
    border-color: var(--hp-public-navy);
    border-radius: 10px;
    box-shadow: none;
    color: #fff;
}

.hp-registration-product-shell .hp-pro-primary:hover,
.hp-registration-product-shell .hp-pro-primary:focus {
    background: var(--hp-public-navy-hover);
    border-color: var(--hp-public-navy-hover);
    color: #fff;
}

.hp-registration-product-shell .hp-pro-primary:focus-visible,
.hp-registration-product-shell a:focus-visible,
.hp-registration-product-shell button:focus-visible,
.hp-registration-product-shell input:focus-visible {
    outline: 3px solid var(--hp-public-focus);
    outline-offset: 2px;
}

.hp-registration-product-shell .hp-account-register-login a {
    color: var(--hp-public-blue-strong);
}

.hp-registration-product-shell .hp-professional-register-main {
    align-items: start;
    gap: 32px;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .82fr);
    max-width: 1120px;
    padding: 58px 24px 88px;
}

.hp-registration-product-shell .hp-pro-auth-card,
.hp-registration-product-shell .hp-professional-register-aside {
    border-radius: 18px;
    box-shadow: 0 22px 55px rgba(9, 44, 68, .10);
}

.hp-registration-product-shell .hp-pro-auth-card {
    border: 1px solid var(--hp-public-border);
    overflow: hidden;
    padding: 42px;
    position: relative;
}

.hp-registration-product-shell .hp-pro-auth-card h1 {
    color: var(--hp-public-navy);
    font-size: clamp(34px, 4vw, 46px);
    letter-spacing: -.035em;
    line-height: 1.06;
}

.hp-registration-product-shell .hp-professional-register-steps span.is-active b,
.hp-registration-product-shell .hp-professional-register-steps span.is-complete b {
    background: var(--hp-public-blue);
}

.hp-registration-product-shell .hp-professional-register-steps::before {
    background: var(--hp-public-blue-soft-hover);
}

.hp-registration-product-shell .hp-professional-register-steps::after {
    background: linear-gradient(90deg, var(--hp-public-blue), var(--hp-public-indigo));
}

.hp-registration-product-shell .hp-pro-field input:focus,
.hp-registration-product-shell .hp-professional-register-password-control:focus-within {
    border-color: var(--hp-public-blue);
    box-shadow: 0 0 0 3px var(--hp-public-focus);
}

.hp-registration-product-shell .hp-register-workspace-choice input:checked + span {
    background: var(--hp-public-indigo-soft);
    border-color: var(--hp-public-indigo);
}

.hp-registration-product-shell .hp-professional-register-aside {
    background: var(--hp-public-navy);
    border: 1px solid rgba(255, 255, 255, .12);
    padding: 38px;
}

.hp-registration-product-shell .hp-professional-register-main > .hp-pro-auth-aside h2 {
    background: none;
    box-shadow: none;
    color: #fff;
    font-size: 30px;
    letter-spacing: -.025em;
    line-height: 1.15;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-pro-kicker,
.hp-registration-product-shell .hp-professional-register-aside > div > p:last-child,
.hp-registration-product-shell .hp-professional-register-benefits,
.hp-registration-product-shell .hp-professional-register-benefits li {
    color: #d7e8f2;
}

.hp-registration-product-shell .hp-professional-register-benefits i {
    background: rgba(255, 255, 255, .10);
    color: #fff;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list {
    background: rgba(255, 255, 255, .07);
    border-color: rgba(255, 255, 255, .14);
}

@media (max-width: 980px) {
    .hp-registration-product-shell .hp-professional-register-main {
        grid-template-columns: minmax(0, 1fr);
        max-width: 760px;
    }

    .hp-registration-product-shell .hp-professional-register-aside {
        position: static;
    }
}

@media (max-width: 700px) {
    .hp-registration-product-shell .hp-account-register-main,
    .hp-registration-product-shell .hp-professional-register-main {
        gap: 22px;
        padding: 38px 14px 56px;
    }

    .hp-registration-product-shell .hp-account-register-intro {
        text-align: left;
    }

    .hp-registration-product-shell .hp-account-register-intro h1,
    .hp-registration-product-shell .hp-pro-auth-card h1 {
        font-size: 34px;
    }

    .hp-registration-product-audience {
        justify-content: flex-start;
    }

    .hp-registration-product-shell .hp-account-register-options {
        grid-template-columns: minmax(0, 1fr);
    }

    .hp-registration-product-shell .hp-account-register-card,
    .hp-registration-product-shell .hp-account-register-card.is-professional,
    .hp-registration-product-shell .hp-pro-auth-card,
    .hp-registration-product-shell .hp-professional-register-aside {
        padding: 24px;
    }

    .hp-registration-product-shell .hp-account-register-card {
        min-height: 0;
    }
}

/* Keep the shared header authoritative inside the legacy contact wrapper. */
.hp-professional-contact > .hp-site-header {
    align-items: initial;
    display: block;
    gap: 0;
    height: auto;
    justify-content: initial;
    margin-left: calc(50% - 50vw);
    max-width: none;
    padding: 0;
}

@supports (width: 100dvw) {
    .hp-professional-contact > .hp-site-header {
        margin-left: calc(50% - 50dvw);
    }
}

.hp-professional-contact > .hp-site-header .hp-site-header__primary {
    gap: 8px;
}

.hp-professional-contact > .hp-site-header .hp-site-header__primary > a {
    color: rgba(255, 255, 255, .94);
}

@media (max-width: 900px) {
    .hp-professional-contact > .hp-site-header .hp-site-header__primary {
        display: none;
    }

    .hp-professional-contact > .hp-site-header .hp-site-header__mobile-menu nav {
        display: grid;
        gap: 3px;
    }

    .hp-professional-contact > .hp-site-header .hp-site-header__mobile-menu nav > a,
    .hp-professional-contact > .hp-site-header .hp-site-header__mobile-menu nav > a:first-child {
        color: #123b55;
        display: inline-flex;
    }

.hp-professional-contact > .hp-site-header .hp-site-header__mobile-menu nav > .hp-site-header__professional-cta {
        color: #fff;
    }
}

/* Professional registration pricing: integrate the plans into the dark trust card. */
.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list {
    background: transparent;
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, .18);
    gap: 0;
    margin: 30px 0 0;
    padding: 22px 0 0;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list h3 {
    align-items: center;
    color: #d9edf5;
    display: flex;
    font-size: 13px;
    font-weight: 800;
    gap: 12px;
    letter-spacing: .045em;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list h3::after {
    background: linear-gradient(90deg, rgba(119, 217, 199, .55), rgba(119, 217, 199, 0));
    content: "";
    flex: 1;
    height: 1px;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list article {
    align-items: center;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    border-radius: 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0;
    min-height: 62px;
    padding: 13px 2px;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list article > strong {
    color: #f4fbff;
    font-size: 15px;
    font-weight: 750;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list article > b {
    color: #8fe4d6;
    font-size: 23px;
    font-weight: 850;
    letter-spacing: -.025em;
    line-height: 1;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list article > b small {
    color: #c4dce6;
    font-size: 10px;
    font-weight: 650;
    letter-spacing: .02em;
    margin-top: 5px;
    opacity: 1;
}

.hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list > p {
    border-left: 2px solid #77d9c7;
    color: #c9dde6;
    font-size: 12px;
    line-height: 1.55;
    margin: 15px 0 0;
    opacity: 1;
    padding-left: 11px;
}

@media (max-width: 420px) {
    .hp-registration-product-shell .hp-professional-register-aside .hp-public-plan-list article > b {
        font-size: 21px;
    }
}

/* Match the embedded booking flow: choose one available day, then one time. */
.healthcare-booking-date-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 12px;
    overflow-x: auto;
    padding: 2px 1px 8px;
    scrollbar-width: thin;
}

.healthcare-booking-date-tab {
    align-items: center;
    background: #fff;
    border: 1px solid #cbdceb;
    border-radius: 8px;
    color: #365d7d;
    display: flex;
    flex: 1 0 82px;
    flex-direction: column;
    gap: 2px;
    justify-content: center;
    min-height: 62px;
    padding: 8px 10px;
}

.healthcare-booking-date-tab span {
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.healthcare-booking-date-tab strong {
    font-size: 17px;
}

.healthcare-booking-date-tab:hover,
.healthcare-booking-date-tab:focus,
.healthcare-booking-date-tab.is-active {
    background: #eaf5fd;
    border-color: #117ed0;
    color: #086cad;
}

.healthcare-booking-date-tab:focus-visible,
.healthcare-booking-time-region:focus-visible {
    outline: 3px solid rgba(17, 126, 208, .28);
    outline-offset: 2px;
}

.healthcare-booking-time-region {
    border: 1px solid #d8e6f0;
    border-radius: 8px;
    max-height: 292px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 10px;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
}

.hp-booking-date-tabs-ready .healthcare-booking-date-panel:not(.is-active) {
    display: none;
}

.healthcare-booking-date-panel-label {
    color: #365d7d;
    font-size: 14px;
    margin: 4px 0 10px;
}

.hp-booking-date-tabs-ready .healthcare-booking-date-panel-label {
    display: none;
}

.healthcare-booking-time-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.healthcare-booking-time-grid .healthcare-slot-button {
    min-height: 44px;
}

@media (max-width: 640px) {
    .healthcare-booking-date-tab {
        flex-basis: 76px;
    }

    .healthcare-booking-time-region {
        max-height: 242px;
        padding: 8px;
    }

    .healthcare-booking-time-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Homepage mobile completion: readable content first, deferred decorative media second. */
.healthcare-social-link .healthcare-social-icon {
    display: block;
    fill: currentColor;
    height: 20px;
    width: 20px;
}

.healthcare-social-link .healthcare-social-icon--instagram {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
}

.healthcare-social-link .healthcare-social-icon--instagram circle:last-child {
    fill: currentColor;
    stroke: none;
}

.healthcare-home-inline-icon svg,
.healthcare-mobile-promo-icon svg {
    display: block;
    fill: none;
    height: 24px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    width: 24px;
}

.healthcare-mobile-apps-visual [data-hp-progressive-media] {
    opacity: 0;
    transition: opacity .24s ease;
}

.healthcare-mobile-apps-visual [data-hp-progressive-media].is-ready {
    opacity: 1;
}

.healthcare-home-shell .healthcare-mobile-update-image {
    height: 100%;
    inset: 0;
    object-fit: cover;
    opacity: 0;
    position: absolute;
    transition: opacity .14s ease;
    width: 100%;
}

.healthcare-home-shell .healthcare-mobile-update-image.is-ready {
    opacity: 1;
}

@media (max-width: 640px) {
    body.hp-home-body .healthcare-mobile-update-visual::before {
        background: linear-gradient(180deg, rgba(223, 241, 251, .28), rgba(223, 241, 251, .52));
        z-index: 1;
    }

    body.hp-home-body .healthcare-mobile-update-visual .healthcare-home-inline-icon {
        align-items: center;
        background: #fff;
        border-radius: 10px;
        color: #075f9f;
        display: inline-flex;
        height: 38px;
        justify-content: center;
        position: relative;
        width: 38px;
        z-index: 2;
    }

    body.hp-home-body .healthcare-home-shared-features {
        background: #f4f8fb;
        padding: 34px 0;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-mobile-heading {
        margin-bottom: 20px;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-mobile-heading h2 {
        color: #071f36;
        font-size: 22px;
        line-height: 1.25;
    }

    body.hp-home-body .healthcare-home-shared-features .row {
        gap: 12px;
    }

    body.hp-home-body .healthcare-home-shared-features .row > div {
        padding: 0;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-feature-card {
        background: #fff;
        border: 1px solid #c9dce8;
        border-radius: 14px;
        box-shadow: 0 8px 20px rgba(7, 52, 94, .06);
        display: grid;
        gap: 4px 14px;
        grid-template-columns: 50px minmax(0, 1fr);
        grid-template-rows: auto auto;
        margin: 0;
        min-height: 0;
        padding: 16px;
        text-align: left;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-home-inline-icon {
        align-items: center;
        align-self: center;
        background: #e4f3fc;
        border-radius: 12px;
        color: #075f9f;
        display: inline-flex;
        grid-row: 1 / 3;
        height: 48px;
        justify-content: center;
        width: 48px;
    }

    body.hp-home-body .healthcare-home-shared-features .row > div:nth-child(2) .healthcare-home-inline-icon {
        background: #e4f5f1;
        color: #087467;
    }

    body.hp-home-body .healthcare-home-shared-features .row > div:nth-child(3) .healthcare-home-inline-icon {
        background: #fce8ef;
        color: #aa1f55;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-feature-card h3 {
        align-self: end;
        color: #071f36;
        font-size: 16px;
        line-height: 1.35;
        margin: 0;
    }

    body.hp-home-body .healthcare-home-shared-features .healthcare-feature-card p {
        color: #294b63;
        font-size: 15px;
        line-height: 1.55;
        margin: 0;
    }

    body.hp-home-body .healthcare-mobile-stats {
        background: #fff;
        border: 1px solid #cfdee8;
        border-radius: 14px;
        gap: 14px 8px;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: 22px 0 16px;
        padding: 20px 12px;
    }

    body.hp-home-body .healthcare-mobile-stats h2 {
        color: #071f36;
        font-size: 21px;
        grid-column: 1 / -1;
    }

    body.hp-home-body .healthcare-mobile-stats > div {
        border-left: 1px solid #d8e5ed;
        min-width: 0;
        padding: 0 6px;
    }

    body.hp-home-body .healthcare-mobile-stats > div:nth-of-type(1) {
        border-left: 0;
    }

    body.hp-home-body .healthcare-mobile-stats strong {
        color: #123b58;
        font-size: 27px;
    }

    body.hp-home-body .healthcare-mobile-stats span {
        color: #425f73;
        font-size: 13px;
        line-height: 1.4;
    }

    body.hp-home-body .healthcare-mobile-promo-card {
        padding: 24px 20px;
    }

    body.hp-home-body .healthcare-mobile-promo-card h2 {
        color: #071f36;
        font-size: 21px;
    }

    body.hp-home-body .healthcare-mobile-promo-card p,
    body.hp-home-body .healthcare-mobile-help-card p {
        color: #294b63;
        font-size: 15px;
        line-height: 1.55;
    }

    body.hp-home-body .healthcare-mobile-promo-card a,
    body.hp-home-body .healthcare-mobile-help-card .btn {
        align-items: center;
        min-height: 44px;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-band {
        background: #062845 !important;
        border-color: #062845;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-band h2,
    body.hp-home-body .healthcare-home-shell .healthcare-home-band p {
        color: #fff;
    }

    body.hp-home-body .healthcare-home-shell .healthcare-home-band-inner > div > p:not(.healthcare-home-kicker) {
        display: block;
        font-size: 15px;
        line-height: 1.55;
    }

    body.hp-home-body .healthcare-mobile-help-card h2 {
        color: #071f36;
        font-size: 21px;
    }

    body.hp-home-body .healthcare-mobile-apps-card .healthcare-mobile-apps-text {
        color: #36566c;
        font-size: 15px;
        line-height: 1.55;
    }

    body.hp-home-body .healthcare-mobile-apps-card .healthcare-mobile-apps-visual {
        aspect-ratio: 3 / 2;
        background: linear-gradient(145deg, #e4f3fb, #f1f8fc);
        overflow: hidden;
    }

    body.hp-home-body .hp-public-footer__brand p,
    body.hp-home-body .hp-public-footer__legal a,
    body.hp-home-body .hp-public-footer__connect > a {
        font-size: 14px;
        line-height: 1.5;
    }

    body.hp-home-body .hp-public-footer__connect .healthcare-social-link {
        height: 44px;
        width: 44px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .healthcare-mobile-apps-visual [data-hp-progressive-media],
    .healthcare-home-shell .healthcare-mobile-update-image {
        transition: none;
    }
}
