body.site-body {
    padding-top: 0 !important;
    background: #f7f9fc;
    color: #2b3445;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

body.wechat-copy-modal-open {
    overflow: hidden;
}

.wechat-copy-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    visibility: hidden;
    opacity: 0;
    transition: opacity .18s ease, visibility .18s ease;
    box-sizing: border-box;
}

.wechat-copy-modal.is-visible {
    visibility: visible;
    opacity: 1;
}

.wechat-copy-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .68);
}

.wechat-copy-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(440px, 92vw);
    padding: 38px 42px 34px;
    border-radius: 24px;
    background: #fff;
    color: #555;
    text-align: center;
    box-shadow: 0 20px 55px rgba(0, 0, 0, .22);
    box-sizing: border-box;
    transform: translateY(12px) scale(.97);
    transition: transform .18s ease;
}

.wechat-copy-modal.is-visible .wechat-copy-modal-dialog {
    transform: translateY(0) scale(1);
}

.wechat-copy-success-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 104px;
    height: 104px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: #47bd45;
    box-shadow: 0 10px 24px rgba(71, 189, 69, .28);
}

.wechat-copy-success-icon i {
    width: 24px;
    height: 44px;
    margin-top: -9px;
    border-right: 8px solid #fff;
    border-bottom: 8px solid #fff;
    transform: rotate(45deg);
}

.wechat-copy-modal-dialog > strong {
    display: block;
    color: #555;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.3;
}

.wechat-copy-modal-dialog > p {
    margin: 14px 0 28px;
    color: #777;
    font-size: 20px;
    line-height: 1.65;
}

.wechat-copy-success-id {
    color: #f04444;
    font-style: normal;
    overflow-wrap: anywhere;
}

.wechat-copy-modal-confirm {
    min-width: 126px;
    height: 50px;
    padding: 0 26px;
    border: 0;
    border-radius: 25px;
    background: #47bd45;
    color: #fff;
    font: inherit;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
}

.wechat-copy-modal-confirm:hover,
.wechat-copy-modal-confirm:focus {
    background: #36a934;
    outline: none;
}

@media (max-width: 767px) {
    /* 按疾病找医院：移动端筛选抽屉与医院信息流。 */
    .disease-hospital-page .page-layout {
        display: block;
    }

    .disease-hospital-page .site-sidebar,
    .disease-hospital-page .disease-filter-card {
        display: none;
    }

    .disease-hospital-page .page-main {
        width: 100%;
    }

    .disease-mobile-filterbar {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: 0 -3px 8px;
        border-top: 1px solid #e7edf3;
        border-bottom: 1px solid #e0e8f0;
        background: #fff;
    }

    .disease-mobile-filterbar button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        height: 43px;
        border: 0;
        border-right: 1px solid #edf1f5;
        background: #fff;
        color: #4f5d6d;
        font-size: 15px;
    }

    .disease-mobile-filterbar button:last-child {
        border-right: 0;
    }

    .disease-mobile-filterbar i {
        margin-left: 5px;
        color: #9ca9b7;
        font-size: 12px;
    }

    .disease-mobile-filterdrawer.is-open {
        position: fixed;
        z-index: 1100;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
    }

    .disease-mobile-filtermask {
        position: absolute;
        inset: 0;
        background: rgba(16, 33, 51, .35);
    }

    .disease-mobile-filterpanel {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        max-height: 72vh;
        overflow-y: auto;
        border-radius: 12px 12px 0 0;
        background: #fff;
        box-shadow: 0 -8px 24px rgba(30, 54, 82, .18);
    }

    .disease-mobile-filtertitle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 52px;
        padding: 0 16px;
        border-bottom: 1px solid #eef1f5;
        color: #2b3b4f;
        font-size: 17px;
    }

    .disease-mobile-filtertitle button {
        width: 36px;
        height: 36px;
        border: 0;
        background: transparent;
        color: #7d8b99;
        font-size: 18px;
    }

    .disease-mobile-filtergroup {
        display: none;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        padding: 16px;
    }

    .disease-mobile-filtergroup.is-active {
        display: grid;
    }

    .disease-mobile-filtergroup a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 38px;
        padding: 5px 7px;
        border: 1px solid #e2e9f0;
        border-radius: 4px;
        color: #526173;
        font-size: 14px;
        text-align: center;
        text-decoration: none;
    }

    .disease-mobile-filtergroup a.is-active {
        border-color: #55abef;
        background: #eef8ff;
        color: #2495e8;
    }

    .disease-hospital-page .disease-list-banner {
        margin: 0 0 8px;
        border-radius: 0;
    }

    .disease-hospital-page .disease-hospital-results {
        padding: 0 12px;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .disease-hospital-page .area-list-heading {
        display: none;
    }

    .disease-hospital-page .area-hospital-list {
        border-top: 1px solid #edf1f5;
        background: #fff;
    }

    .disease-hospital-page .area-hospital-item {
        position: relative;
        display: grid;
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 10px;
        padding: 13px 0;
    }

    .disease-mobile-hospital-media {
        display: flex;
        grid-row: 1 / span 3;
        align-items: center;
        justify-content: center;
        width: 82px;
        height: 64px;
        overflow: hidden;
        background: #edf5fc;
        color: #61a5e7;
        font-size: 22px;
        font-weight: 700;
    }

    .disease-mobile-hospital-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .disease-hospital-page .area-hospital-rank {
        position: absolute;
        z-index: 1;
        top: 8px;
        left: 0;
        width: 20px;
        height: 20px;
        font-size: 11px;
    }

    .disease-hospital-page .area-hospital-copy h3 {
        margin: 0 0 4px;
    }

    .disease-hospital-page .area-hospital-copy h3 a {
        font-size: 15px;
        line-height: 1.4;
    }

    .disease-hospital-page .area-hospital-tags {
        gap: 4px;
        margin-bottom: 4px;
    }

    .disease-hospital-page .area-hospital-tags span {
        padding: 1px 5px;
        font-size: 10px;
    }

    .disease-hospital-page .area-hospital-copy p {
        display: -webkit-box;
        overflow: hidden;
        font-size: 11px;
        line-height: 1.45;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .disease-hospital-page .area-hospital-action {
        display: none;
    }

    .disease-mobile-hospital-actions {
        display: flex;
        grid-column: 2;
        gap: 7px;
        margin-top: 2px;
    }

    .disease-mobile-hospital-actions a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 24px;
        padding: 0 10px;
        border-radius: 2px;
        background: #5ca2fc;
        color: #fff;
        font-size: 11px;
        text-decoration: none;
    }

    .disease-mobile-hospital-actions a + a {
        background: #ff8a87;
    }

    .disease-hospital-page .site-pagination {
        margin: 12px 0 20px;
        padding: 12px 8px;
        background: #fff;
    }
}
    .wechat-copy-modal {
        padding: 18px;
    }

    .wechat-copy-modal-dialog {
        width: min(360px, 90vw);
        padding: 32px 24px 28px;
        border-radius: 20px;
    }

    .wechat-copy-success-icon {
        width: 88px;
        height: 88px;
        margin-bottom: 20px;
    }

    .wechat-copy-success-icon i {
        width: 20px;
        height: 37px;
        border-width: 0 7px 7px 0;
    }

    .wechat-copy-modal-dialog > strong {
        font-size: 26px;
    }

    .wechat-copy-modal-dialog > p {
        margin: 12px 0 24px;
        font-size: 17px;
    }

    .wechat-copy-modal-confirm {
        height: 46px;
        font-size: 18px;
    }
}

@media (max-width: 767px) {
    /* Doctors list: mobile-only layout. */
    .hospital-doctors-page .hospital-station-card > .hospital-legacy-titlebar a,
    .hospital-doctors-page .hospital-station-lead,
    .hospital-doctors-page .hospital-sidebar > .hospital-sidecard-actions,
    .hospital-doctors-page .hospital-sidebar > .hospital-introduction-ad.is-side,
    .hospital-doctors-page .hospital-sidebar > .hospital-sidecard-doctors,
    .hospital-doctors-page .hospital-sidebar > .hospital-sidecard-info {
        display: none;
    }

    .hospital-doctors-page .hospital-station-card {
        width: 100%;
        max-width: 100%;
        padding: 20px 16px;
        box-sizing: border-box;
    }

    .hospital-doctors-page .hospital-legacy-titlebar {
        margin-bottom: 16px;
    }

    .hospital-doctors-page .hospital-legacy-titlebar span {
        font-size: 24px;
    }

    .hospital-doctors-page .hospital-doctor-listpage {
        min-width: 0;
        max-width: 100%;
        gap: 16px;
    }

    .hospital-doctors-page .hospital-doctor-row {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        grid-template-columns: 76px minmax(0, 1fr);
        gap: 14px;
        align-items: start;
        padding: 16px 14px;
        border-color: #dbe8f5;
        border-radius: 9px;
        background: #f8fbff;
        box-sizing: border-box;
    }

    .hospital-doctors-page .hospital-doctor-row-avatar {
        width: 76px;
        height: 76px;
        margin: 0;
        border-radius: 8px;
        font-size: 28px;
    }

    .hospital-doctors-page .hospital-doctor-row-copy {
        min-width: 0;
        gap: 10px;
    }

    .hospital-doctors-page .hospital-doctor-row-name {
        flex-wrap: nowrap;
        gap: 8px;
    }

    .hospital-doctors-page .hospital-doctor-row-name h3 {
        min-width: 0;
        margin: 0;
    }

    .hospital-doctors-page .hospital-doctor-row-name h3 a {
        font-size: 20px;
        white-space: nowrap;
    }

    .hospital-doctors-page .hospital-doctor-row-name span {
        overflow: hidden;
        color: #7b8493;
        font-size: 13px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .hospital-doctors-page .hospital-doctor-row-copy p {
        display: -webkit-box;
        overflow: hidden;
        font-size: 14px;
        line-height: 1.75;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .hospital-doctors-page .hospital-doctor-row-copy p::before {
        content: "擅长：";
    }

    .hospital-doctors-page .hospital-doctor-row-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        padding-top: 0;
    }

    .hospital-doctors-page .hospital-doctor-row-actions > * {
        width: 100%;
        height: 38px;
        padding: 0 8px;
        border-radius: 7px;
        font-size: 14px;
        box-sizing: border-box;
    }

    .hospital-doctors-page .hospital-sidebar {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        gap: 14px;
    }

    .hospital-doctors-page .hospital-sidebar .hospital-sidecard {
        width: 100%;
        max-width: 100%;
        padding: 20px;
        box-sizing: border-box;
    }

    .hospital-doctors-page .hospital-sidebar .site-sidecard-title {
        font-size: 22px;
    }

    .hospital-doctors-page .hospital-sidebar .hospital-side-list li {
        grid-template-columns: minmax(0, 1fr) 78px;
        padding: 12px 0;
    }

    .hospital-doctors-page .hospital-sidebar .hospital-side-list a {
        color: #0b8bd3;
        font-size: 15px;
    }

    .hospital-doctors-page .hospital-sidebar .hospital-side-list span {
        color: #667085;
        font-size: 13px;
        text-align: right;
    }

    /* Doctor detail: mobile-only content order and simplified schedule. */
    .doctor-show-page .doctor-detail-card {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: 100%;
        padding: 22px;
        box-sizing: border-box;
    }

    .doctor-show-page .doctor-profile {
        order: 10;
    }

    .doctor-show-page .doctor-schedule-block {
        order: 20;
        margin-top: 24px;
    }

    .doctor-show-page .doctor-intro-block {
        order: 30;
        margin-top: 8px;
    }

    .doctor-show-page .doctor-legacy-columns,
    .doctor-show-page .doctor-hospital-sidecard {
        display: none;
    }

    .doctor-show-page .doctor-profile-avatar {
        width: 140px;
        height: 140px;
    }

    .doctor-show-page .doctor-action-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        align-items: stretch;
    }

    .doctor-show-page .doctor-action-btn {
        width: 100%;
        min-width: 0;
        height: 42px;
        border-color: #42a5f5;
        border-radius: 7px;
        background: #42a5f5;
        color: #fff;
        box-sizing: border-box;
    }

    .doctor-show-page .doctor-action-btn.is-disabled {
        border-color: #d6dee9;
        background: #e9eef4;
        color: #98a2b3;
    }

    .doctor-show-page .doctor-schedule-head h3,
    .doctor-show-page .doctor-intro-block h3 {
        font-size: 24px;
    }

    .doctor-show-page .doctor-week-schedule {
        margin: 0 -6px;
        padding: 0 6px 8px;
    }

    .doctor-show-page .doctor-week-table {
        min-width: 560px;
        border: 0;
        border-radius: 0;
    }

    .doctor-show-page .doctor-week-table th,
    .doctor-show-page .doctor-week-table td {
        height: 54px;
        padding: 9px 5px;
        border: 0;
        border-bottom: 1px dashed #dfe5ec;
        background: #fff;
        vertical-align: middle;
    }

    .doctor-show-page .doctor-week-table thead th {
        color: #344054;
        font-weight: 400;
    }

    .doctor-show-page .doctor-week-table thead th span {
        margin-top: 4px;
        font-size: 13px;
    }

    .doctor-show-page .doctor-week-table thead th strong {
        margin-top: 0;
        font-size: 13px;
        font-weight: 400;
    }

    .doctor-show-page .doctor-week-table thead th > span,
    .doctor-show-page .doctor-week-table thead th > strong {
        display: none;
    }

    .doctor-show-page .doctor-week-mobile-date {
        display: grid;
        gap: 4px;
    }

    .doctor-show-page .doctor-week-mobile-date strong,
    .doctor-show-page .doctor-week-mobile-date span {
        display: block;
        margin: 0;
        color: #344054;
        font-size: 13px;
        font-weight: 400;
    }

    .doctor-show-page .doctor-week-period {
        width: 52px;
        color: #344054;
        font-size: 14px;
        font-weight: 500;
    }

    .doctor-show-page .doctor-week-entry {
        min-height: 0;
        padding: 0;
        border-radius: 0;
        background: transparent;
    }

    .doctor-show-page .doctor-week-entry span,
    .doctor-show-page .doctor-week-entry.is-normal strong {
        display: none;
    }

    .doctor-show-page .doctor-week-entry strong {
        color: #98a2b3;
        font-size: 12px;
        font-weight: 400;
    }

    .doctor-show-page .doctor-week-book {
        width: auto;
        margin: 0;
        padding: 2px 4px;
        background: transparent;
        color: #7b8493;
        font-size: 13px;
    }

    .doctor-show-page .doctor-sidebar {
        gap: 16px;
    }

    .doctor-show-page .doctor-articles-sidecard,
    .doctor-show-page .doctor-mobile-reviews {
        width: 100%;
        max-width: 100%;
        padding: 22px;
        box-sizing: border-box;
    }

    .doctor-show-page .doctor-articles-sidecard .site-sidecard-title,
    .doctor-show-page .doctor-mobile-reviews .site-sidecard-title {
        font-size: 24px;
    }

    .doctor-show-page .doctor-articles-sidecard .site-side-list li {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 78px;
        gap: 10px;
        padding: 13px 0;
    }

    .doctor-show-page .doctor-articles-sidecard .site-side-list a {
        overflow: hidden;
        color: #0b8bd3;
        font-size: 15px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .doctor-show-page .doctor-articles-sidecard .site-side-list span {
        color: #667085;
        font-size: 13px;
        text-align: right;
        white-space: nowrap;
    }

    .doctor-show-page .doctor-mobile-reviews {
        display: block;
    }

    .doctor-mobile-review-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-bottom: 12px;
        border-bottom: 1px solid #e4eaf2;
    }

    .doctor-mobile-review-head .site-sidecard-title {
        margin: 0;
        padding: 0;
        border: 0;
    }

    .doctor-mobile-review-head > a {
        color: #42a5f5;
        font-size: 14px;
    }

    .doctor-mobile-review-item {
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 14px;
        padding: 18px 0 8px;
    }

    .doctor-mobile-review-avatar {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background: #eef6ff;
        color: #168ed1;
        font-size: 24px;
        font-weight: 700;
    }

    .doctor-mobile-review-copy {
        display: grid;
        gap: 7px;
        min-width: 0;
    }

    .doctor-mobile-review-copy > div {
        display: flex;
        align-items: baseline;
        gap: 9px;
    }

    .doctor-mobile-review-copy strong {
        color: #20304d;
        font-size: 17px;
    }

    .doctor-mobile-review-copy span,
    .doctor-mobile-review-copy small {
        color: #667085;
        font-size: 13px;
    }

    .doctor-mobile-review-copy p {
        margin: 0;
        color: #475467;
        font-size: 14px;
        line-height: 1.75;
    }

    .doctor-mobile-review-more {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 150px;
        height: 42px;
        margin: 18px auto 0;
        border-radius: 7px;
        background: #42a5f5;
        color: #fff;
        text-decoration: none;
    }

    /* Article detail: mobile-only byline and bottom advertisement placement. */
    .article-detail-section .article-detail-meta,
    .article-detail-section .article-bottom-banner {
        display: none;
    }

    .article-detail-section .article-mobile-byline {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px 12px;
        margin-top: 12px;
        color: #7b8493;
        font-size: 14px;
        line-height: 1.6;
    }

    .article-detail-section .article-mobile-byline time,
    .article-detail-section .article-mobile-byline a {
        color: inherit;
        text-decoration: none;
    }

    .article-detail-section .article-mobile-recommendation-banner {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        margin: 10px 0;
        overflow: hidden;
        background: #fff;
        line-height: 0;
        box-sizing: border-box;
    }

    .article-detail-section .article-mobile-recommendation-banner a,
    .article-detail-section .article-mobile-recommendation-banner button {
        display: block;
        width: 100%;
        padding: 0;
        border: 0;
        background: transparent;
    }

    .article-detail-section .article-mobile-recommendation-banner img {
        display: block;
        width: 100%;
        height: auto;
        margin: 0 auto;
        object-fit: contain;
    }

    /* Hospital footer uses the unified text version on mobile. */
    .legacy-hospital-footer .legacy-hospital-footer-side {
        display: none;
    }
}

/* Hospital home mobile modules */
.hospital-mobile-departments,
.hospital-mobile-sticky-actions,
.doctor-mobile-reviews,
.doctor-week-mobile-date,
.hospital-mobile-news-content,
.hospital-mobile-hero-heading,
.hospital-mobile-hero-details,
.hospital-introduction-mobile-reviews,
.hospital-mobile-label,
.hospital-department-mobile-articles,
.hospital-mobile-main-banner,
.hospital-mobile-content-banner,
.article-mobile-byline,
.article-mobile-recommendation-banner {
    display: none;
}

.hospital-legacy-review-avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-legacy-review-detail {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin-top: 10px;
    color: #667085;
    font-size: 13px;
}

.hospital-legacy-review-detail strong {
    color: #2f9b79;
    font-weight: 600;
}

@media (max-width: 767px) {
    .hospital-desktop-main-banner,
    .hospital-desktop-content-banner {
        display: none;
    }

    .hospital-mobile-main-banner,
    .hospital-mobile-content-banner {
        display: block;
    }

    .hospital-mobile-main-banner,
    .hospital-mobile-content-banner.hospital-inline-banner {
        height: auto !important;
        aspect-ratio: 5 / 1;
    }

    .legacy-hospital-header {
        display: flex;
        flex-direction: column;
    }

    .legacy-hospital-topbar,
    .legacy-hospital-brandbar {
        display: none;
    }

    .hospital-main-banner {
        order: 1;
        height: 64px;
        border-bottom: 1px solid #fff;
    }

    .legacy-hospital-nav {
        order: 2;
        overflow: hidden;
    }

    .legacy-hospital-nav .legacy-home-shell {
        display: flex;
        justify-content: flex-start;
        gap: 0;
        overflow-x: auto;
        padding: 0;
        scroll-behavior: smooth;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .legacy-hospital-nav .legacy-home-shell::-webkit-scrollbar {
        display: none;
    }

    .legacy-hospital-nav a {
        flex: 0 0 auto;
        width: auto;
        min-width: 82px;
        height: 42px;
        padding: 0 14px;
        border: 0;
        border-right: 1px solid rgba(255, 255, 255, .15);
        font-size: 14px;
        white-space: nowrap;
        scroll-snap-align: start;
    }

    .detail-section {
        padding-top: 14px;
    }

    .hospital-hero .detail-hero-brand {
        grid-template-columns: 92px minmax(0, 1fr);
        gap: 14px;
        padding: 16px;
    }

    .hospital-hero .detail-hero-media {
        width: 92px;
        height: 112px;
        margin: 0;
    }

    .hospital-hero .detail-hero-copy {
        min-width: 0;
    }

    .hospital-hero .detail-hero-copy p {
        display: -webkit-box;
        overflow: hidden;
        margin-bottom: 8px;
        font-size: 13px;
        line-height: 1.7;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    .hospital-hero .detail-facts {
        gap: 5px;
        font-size: 12px;
    }

    .hospital-hero-stats {
        display: none;
    }

    .hospital-hero-actions {
        grid-column: 1 / -1;
        gap: 12px;
    }

    .hospital-page-action {
        min-width: 0;
        height: 38px;
        border-radius: 20px;
        font-size: 14px;
    }

    .hospital-legacy-side-news,
    .hospital-desktop-news-content {
        display: none;
    }

    .hospital-mobile-news-content {
        display: block;
    }

    .hospital-mobile-departments {
        display: block;
        padding: 16px;
    }

    .hospital-mobile-department-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
    }

    .hospital-mobile-department-grid a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        min-height: 48px;
        padding: 6px 4px;
        border-radius: 8px;
        background: linear-gradient(180deg, #fff, #f3f5f8);
        color: #344054;
        font-size: 14px;
        line-height: 1.35;
        text-align: center;
        text-decoration: none;
        overflow-wrap: anywhere;
    }

    .hospital-mobile-department-grid a:nth-child(n+9) {
        display: none;
    }

    .hospital-legacy-doctors {
        padding: 16px;
    }

    .hospital-legacy-doctor-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
    }

    .hospital-legacy-doctor-item {
        grid-template-columns: 62px minmax(0, 1fr);
        gap: 12px;
        padding: 14px 0;
        border: 0;
        border-bottom: 1px solid #edf2f8;
        border-radius: 0;
        background: #fff;
    }

    .hospital-legacy-doctor-item:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }

    .hospital-legacy-doctor-avatar {
        width: 62px;
        height: 62px;
        aspect-ratio: auto;
        border-radius: 50%;
        font-size: 24px;
    }

    .hospital-legacy-doctor-copy {
        gap: 6px;
    }

    .hospital-legacy-doctor-name a {
        font-size: 16px;
    }

    .hospital-legacy-doctor-copy p {
        display: -webkit-box;
        overflow: hidden;
        font-size: 12px;
        line-height: 1.55;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .hospital-legacy-doctor-specialty {
        height: auto;
        overflow: visible;
        line-height: normal;
    }

    .hospital-legacy-doctor-copy .hospital-desktop-doctor-specialty {
        display: none;
    }

    .hospital-legacy-doctor-copy .hospital-mobile-doctor-specialty {
        display: -webkit-box;
    }

    .hospital-legacy-doctor-actions {
        display: flex;
        gap: 8px;
        padding-top: 0;
    }

    .hospital-legacy-doctor-actions > a,
    .hospital-legacy-doctor-actions > button,
    .hospital-legacy-doctor-actions > span {
        flex: 0 1 92px;
        width: auto;
        height: 28px;
        border-radius: 14px;
        font-size: 12px;
    }

    .hospital-inline-banner.is-intro,
    .hospital-inline-banner.is-doctor,
    .hospital-inline-banner.is-article {
        height: 64px;
    }

    .hospital-legacy-listcard,
    .hospital-legacy-environment,
    .hospital-legacy-reviews {
        padding: 16px;
    }

    .hospital-legacy-titlebar {
        margin-bottom: 14px;
        padding-bottom: 10px;
    }

    .hospital-legacy-titlebar span {
        font-size: 19px;
    }

    .hospital-legacy-article-list {
        gap: 10px;
    }

    .hospital-legacy-article-list li {
        flex-direction: row;
        align-items: center;
        padding-bottom: 10px;
    }

    .hospital-legacy-article-list a {
        font-size: 13px;
    }

    .hospital-legacy-article-list span {
        flex: 0 0 76px;
        font-size: 11px;
    }

    .hospital-legacy-environment-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .hospital-legacy-environment-grid.count-1 {
        grid-template-columns: 1fr;
    }

    .hospital-legacy-environment-box img {
        height: 110px;
    }

    .hospital-legacy-review-list .hospital-legacy-review-item:nth-child(n+2) {
        display: none;
    }

    .hospital-legacy-review-item {
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 12px;
    }

    .hospital-legacy-review-top,
    .hospital-legacy-review-user {
        align-items: flex-start;
    }

    .hospital-legacy-review-copy p {
        display: -webkit-box;
        overflow: hidden;
        font-size: 13px;
        line-height: 1.75;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }

    .hospital-legacy-review-detail {
        display: grid;
        gap: 5px;
        font-size: 12px;
    }

    .hospital-mobile-sticky-actions {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1100;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 10px max(14px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));
        border-top: 1px solid #e4ebf5;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 -6px 20px rgba(31, 54, 88, .1);
        backdrop-filter: blur(8px);
    }

    .hospital-mobile-sticky-actions > * {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        height: 42px;
        padding: 0 12px;
        border: 0;
        border-radius: 22px;
        color: #fff;
        font: inherit;
        font-size: 15px;
        font-weight: 600;
        text-decoration: none;
    }

    .hospital-mobile-sticky-actions .is-consult {
        background: linear-gradient(90deg, #59c7f6, #2f9cf2);
    }

    .hospital-mobile-sticky-actions .is-appointment {
        background: linear-gradient(90deg, #ff7e85, #ff304f);
    }

    .hospital-mobile-sticky-actions .is-disabled {
        background: #cbd5e1;
    }

    .legacy-hospital-footer {
        padding-bottom: 68px;
    }
}

a {
    transition: color .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.site-topbar {
    background: #2b3445;
    color: rgba(255, 255, 255, .78);
    font-size: 12px;
}

.site-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 40px;
}

.site-topbar-actions {
    display: flex;
    gap: 16px;
}

.site-topbar a {
    color: rgba(255, 255, 255, .88);
}

.site-navbar-wrap {
    background: #fff;
    border-bottom: 1px solid #dbe8fb;
    box-shadow: 0 10px 30px rgba(29, 78, 216, .06);
}

.site-navbar {
    margin: 0;
    border: 0;
    min-height: 82px;
    background: transparent;
}

.site-navbar-header {
    display: flex;
    align-items: center;
    min-height: 82px;
}

.site-navbar-toggle {
    margin-top: 24px;
    margin-right: 0;
    border-color: #dbe8fb;
}

.site-navbar-toggle .icon-bar {
    background: #5ca2fc;
}

.site-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}

.site-brand:hover,
.site-brand:focus {
    text-decoration: none;
}

.site-brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    box-shadow: 0 16px 28px rgba(92, 162, 252, .28);
}

.site-brand-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.site-brand-text strong {
    color: #20304d;
    font-size: 22px;
    line-height: 1.1;
}

.site-brand-text small {
    color: #667085;
    font-size: 12px;
}

.site-nav-links {
    margin-left: 30px;
}

.site-nav-links > li > a {
    color: #2b3445;
    font-size: 15px;
    line-height: 82px;
    padding: 0 14px;
}

.site-nav-links > li > a:hover,
.site-nav-links > li > a:focus {
    background: transparent;
    color: #2f7fe8;
}

.site-nav-links > li > a.is-active {
    color: #2f7fe8;
    font-weight: 700;
}

.site-header-search {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 18px 0 18px auto;
    max-width: 360px;
}

.site-header-search input,
.hero-search input {
    width: 100%;
    height: 46px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    padding: 0 16px;
    outline: 0;
    box-shadow: none;
    background: #fff;
}

.site-header-search input:focus,
.hero-search input:focus {
    border-color: #5ca2fc;
    box-shadow: 0 0 0 4px rgba(92, 162, 252, .12);
}

.site-header-search button,
.hero-search button {
    flex: 0 0 auto;
    height: 46px;
    border: 0;
    border-radius: 8px;
    padding: 0 18px;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.site-header-search button:hover,
.hero-search button:hover {
    background: #2f7fe8;
}

.site-disease-nav {
    background: #fff;
    border-bottom: 1px solid #dbe8fb;
}

.site-disease-nav .container {
    padding-top: 16px;
    padding-bottom: 16px;
}

.site-disease-nav-head {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 12px;
}

.site-disease-nav-head strong {
    color: #2f7fe8;
    font-size: 18px;
    font-weight: 700;
}

.site-disease-nav-head span {
    color: #667085;
    font-size: 13px;
}

.site-disease-nav-body {
    display: grid;
    gap: 10px;
}

.site-disease-nav-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.site-disease-nav-group {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    line-height: 24px;
}

.site-disease-nav-parent {
    flex: 0 0 auto;
    font-size: 15px;
    font-weight: 700;
}

.site-disease-nav-parent a {
    color: #2f7fe8;
}

.site-disease-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    min-width: 0;
    color: #c7d2e2;
}

.site-disease-nav-links a {
    color: #2b3445;
    white-space: nowrap;
}

.site-disease-nav-links a:hover {
    color: #2f7fe8;
    text-decoration: none;
}

.site-disease-nav-links a + a:before {
    content: "|";
    margin: 0 6px;
    color: #c7d2e2;
}

.site-header-hospital {
    background: #f5f9ff;
}

.hospital-platform-navbar {
    border-bottom: 1px solid #dbe8fb;
    background: #fff;
}

.hospital-platform-brandbar {
    display: flex;
    align-items: center;
    min-height: 82px;
}

.hospital-header-wrap .container {
    padding-top: 22px;
    padding-bottom: 24px;
}

.hospital-header-card {
    padding: 26px 28px 0;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: linear-gradient(180deg, #ffffff 0%, #eef6ff 100%);
    box-shadow: 0 20px 36px rgba(47, 127, 232, .08);
}

.hospital-header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.hospital-header-brand {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.hospital-header-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    box-shadow: 0 16px 28px rgba(92, 162, 252, .24);
}

.hospital-header-copy {
    min-width: 0;
}

.hospital-header-copy h1 {
    margin: 0;
    color: #1f2b3d;
    font-size: 34px;
    line-height: 1.25;
}

.hospital-header-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 8px;
    color: #667085;
    font-size: 13px;
}

.hospital-header-actions {
    display: flex;
    gap: 12px;
}

.hospital-header-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    height: 42px;
    padding: 0 18px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2b3445;
    text-decoration: none;
}

.hospital-header-btn.is-primary {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.hospital-header-btn:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.hospital-header-btn.is-primary:hover {
    background: #2f7fe8;
    color: #fff;
}

.hospital-header-search {
    margin-bottom: 22px;
}

.hospital-header-search form {
    display: flex;
    align-items: center;
    gap: 12px;
}

.hospital-header-search input {
    flex: 1 1 auto;
    width: 100%;
    height: 46px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    padding: 0 16px;
    background: rgba(255, 255, 255, .92);
    color: #2b3445;
    outline: 0;
    box-shadow: none;
}

.hospital-header-search input:focus {
    border-color: #5ca2fc;
    box-shadow: 0 0 0 4px rgba(92, 162, 252, .12);
}

.hospital-header-search button {
    flex: 0 0 auto;
    height: 46px;
    border: 0;
    border-radius: 8px;
    padding: 0 20px;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.hospital-header-search button:hover {
    background: #2f7fe8;
}

.site-main {
    min-height: calc(100vh - 260px);
    padding-top: 0;
}

.hero-section {
    padding: 42px 0 24px;
}

.hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .9fr);
    gap: 24px;
}

.hero-copy,
.hero-panel-card,
.detail-card,
.site-card,
.area-card,
.topic-card,
.search-result-card,
.empty-panel,
.site-sidecard,
.review-card {
    background: #fff;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    box-shadow: 0 16px 40px rgba(31, 55, 90, .06);
}

.hero-copy {
    padding: 36px;
    background:
        radial-gradient(circle at top right, rgba(92, 162, 252, .18), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #fafdff 100%);
}

.hero-badge,
.section-kicker,
.site-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 12px;
    border-radius: 999px;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 12px;
    font-weight: 600;
}

.site-pill.is-muted {
    background: #f2f4f7;
    color: #667085;
}

.hero-copy h1 {
    margin: 18px 0 16px;
    color: #1f2b3d;
    font-size: 40px;
    line-height: 1.2;
}

.hero-copy p {
    margin: 0;
    max-width: 680px;
    color: #667085;
    font-size: 16px;
    line-height: 1.8;
}

.hero-search {
    display: flex;
    gap: 12px;
    margin-top: 28px;
    max-width: 680px;
}

.hero-anchors {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.hero-anchors a {
    display: inline-flex;
    align-items: center;
    height: 38px;
    padding: 0 16px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    color: #2b3445;
    background: #fff;
}

.hero-anchors a:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.home-portal-top {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) 320px;
    gap: 24px;
}

.home-portal-main {
    padding: 24px 28px;
    background:
        radial-gradient(circle at top right, rgba(92, 162, 252, .18), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #fafdff 100%);
}

.home-portal-main h1 {
    margin: 12px 0 10px;
    color: #1f2b3d;
    font-size: 34px;
    line-height: 1.18;
}

.home-portal-main p {
    margin: 0;
    color: #667085;
    font-size: 14px;
    line-height: 1.7;
}

.platform-channel-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-top: 18px;
    border: 1px solid #dbe8fb;
    border-radius: 6px;
    overflow: hidden;
    background: #f8fbff;
}

.platform-channel-bar a {
    flex: 1 1 0;
    min-width: 120px;
    padding: 12px 14px;
    border-right: 1px solid #dbe8fb;
    color: #344054;
    text-align: center;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
}

.platform-channel-bar a:last-child {
    border-right: 0;
}

.platform-channel-bar a:hover,
.platform-channel-bar a.is-active {
    background: #5ca2fc;
    color: #fff;
}

.home-portal-aside {
    display: grid;
    gap: 12px;
}

.home-channel-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
}

.home-channel-card {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 78px;
    padding: 12px 14px;
    border: 1px solid #dbe8fb;
    border-radius: 6px;
    background: rgba(255, 255, 255, .92);
    color: #2b3445;
    text-decoration: none;
}

.home-channel-card strong {
    color: #20304d;
    font-size: 16px;
    line-height: 1.25;
}

.home-channel-card span {
    color: #667085;
    font-size: 12px;
    line-height: 1.5;
}

.home-channel-card:hover {
    border-color: #5ca2fc;
    background: #eef6ff;
    text-decoration: none;
}

.home-index-directory {
    margin-top: 16px;
}

.home-directory-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.home-directory-block {
    min-width: 0;
}

.home-directory-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #edf2fa;
}

.home-directory-head strong {
    color: #20304d;
    font-size: 16px;
}

.home-directory-head a {
    color: #5ca2fc;
    font-size: 12px;
    text-decoration: none;
}

.home-directory-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    line-height: 1.7;
}

.home-directory-links a {
    color: #475467;
    font-size: 13px;
    text-decoration: none;
}

.home-directory-links a:hover {
    color: #2f7fe8;
}

.home-directory-links a:before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    margin: 0 8px 2px 0;
    border-radius: 50%;
    background: #9abffb;
    vertical-align: middle;
}

.home-metric-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #edf2fa;
}

.home-metric-strip div {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-height: 58px;
    padding: 10px 12px;
    border: 1px solid #e4edf8;
    border-radius: 6px;
    background: #fff;
}

.home-metric-strip strong {
    color: #1f2b3d;
    font-size: 22px;
    line-height: 1.1;
}

.home-metric-strip span {
    color: #667085;
    font-size: 12px;
}

.hero-panel {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.hero-panel-card {
    padding: 26px;
}

.hero-panel-card-alt {
    background: linear-gradient(180deg, #fff 0%, #f4f8ff 100%);
}

.hero-panel-title {
    margin-bottom: 18px;
    color: #20304d;
    font-size: 18px;
    font-weight: 700;
}

.hero-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.hero-metric {
    padding: 16px;
    border-radius: 8px;
    background: #f7faff;
    border: 1px solid #e4edf8;
}

.hero-metric strong {
    display: block;
    color: #1f2b3d;
    font-size: 28px;
    line-height: 1.1;
}

.hero-metric span {
    display: block;
    margin-top: 6px;
    color: #667085;
    font-size: 13px;
}

.hero-checklist {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hero-checklist li {
    position: relative;
    padding: 0 0 0 22px;
    color: #44526a;
    line-height: 1.9;
}

.hero-checklist li + li {
    margin-top: 8px;
}

.hero-checklist li:before {
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #5ca2fc;
}

.section-block {
    padding: 16px 0 28px;
}

.section-soft {
    background: #f2f7ff;
    border-top: 1px solid #e5eefb;
    border-bottom: 1px solid #e5eefb;
}

.section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.section-heading.compact {
    margin-bottom: 10px;
}

.section-heading h2,
.detail-card h1 {
    margin: 6px 0 0;
    color: #1f2b3d;
    font-size: 28px;
    line-height: 1.3;
}

.tag-wall,
.area-grid,
.card-grid,
.topic-grid,
.search-result-grid,
.info-grid,
.review-list {
    display: grid;
    gap: 16px;
}

.tag-wall {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
}

.tag-wall-lg {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

.tag-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2b3445;
    text-align: center;
}

.tag-chip:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.tag-chip.is-primary {
    background: #eef6ff;
}

.empty-panel {
    padding: 26px;
}

.empty-panel strong {
    display: block;
    margin-bottom: 8px;
    color: #20304d;
    font-size: 18px;
}

.empty-panel p {
    margin: 0;
    color: #667085;
    line-height: 1.8;
}

.area-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.area-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 8px;
    min-height: 112px;
    padding: 20px;
    color: #2b3445;
    text-decoration: none;
}

.area-card strong {
    font-size: 18px;
}

.area-card span {
    color: #667085;
    font-size: 13px;
}

.area-card:hover {
    transform: translateY(-2px);
    border-color: #5ca2fc;
    text-decoration: none;
}

.card-grid-hospital,
.topic-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card-grid-doctor {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-card {
    overflow: hidden;
}

.site-card-cover,
.doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    text-decoration: none;
}

.site-card-cover {
    height: 180px;
}

.doctor-avatar {
    width: 72px;
    height: 72px;
    margin: 22px 22px 0;
    border-radius: 50%;
    font-size: 28px;
    font-weight: 700;
}

.site-card-cover img,
.doctor-avatar img,
.detail-hero-media img,
.doctor-profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.site-card-body {
    padding: 20px 22px 22px;
}

.site-card-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.site-meta,
.detail-facts span,
.article-row span,
.site-side-list span,
.doctor-title,
.detail-subtitle,
.article-detail-meta span,
.review-head span {
    color: #667085;
    font-size: 13px;
}

.site-card h3,
.search-result-card h3,
.article-panel-head h3 {
    margin: 0 0 10px;
    color: #20304d;
    font-size: 20px;
    line-height: 1.45;
}

.site-card p,
.topic-card p,
.search-result-card li,
.article-row p,
.review-card p,
.site-footer p {
    margin: 0;
    color: #667085;
    line-height: 1.75;
}

.doctor-card .site-card-body {
    padding-top: 16px;
}

.article-panels {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.article-panel {
    padding: 22px;
    background: #fff;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    box-shadow: 0 16px 40px rgba(31, 55, 90, .06);
}

.article-panel-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid #edf2fa;
}

.article-panel-head span {
    color: #8a94a6;
    font-size: 13px;
}

.article-list {
    display: grid;
    gap: 14px;
}

.article-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.article-row-main {
    min-width: 0;
}

.article-row h4 {
    margin: 0 0 6px;
    color: #20304d;
    font-size: 16px;
    line-height: 1.55;
}

.article-row h4 a {
    color: inherit;
}

.topic-grid {
    gap: 18px;
}

.topic-card {
    display: block;
    padding: 22px;
    text-decoration: none;
}

.topic-card strong {
    display: block;
    margin-bottom: 10px;
    color: #20304d;
    font-size: 18px;
}

.topic-card:hover {
    text-decoration: none;
    border-color: #5ca2fc;
    transform: translateY(-2px);
}

.search-result-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.search-result-card {
    padding: 20px;
}

.search-result-card ul,
.site-side-list,
.site-footer-col ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-result-card li,
.site-side-list li {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #edf2fa;
}

.search-result-card li:last-child,
.site-side-list li:last-child {
    border-bottom: 0;
}

.search-result-card li.is-empty {
    color: #98a2b3;
}

.detail-section {
    padding: 24px 0 42px;
}

.site-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 18px 0 4px;
    list-style: none;
}

.site-breadcrumb li {
    color: #667085;
    font-size: 13px;
}

.site-breadcrumb li + li:before {
    content: "/";
    margin-right: 8px;
    color: #98a2b3;
}

.page-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 24px;
}

.hospital-home-layout {
    display: grid;
    gap: 24px;
}

.hospital-home-top {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .9fr);
    gap: 24px;
}

.hospital-home-bottom {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.hospital-tabbar {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 0;
    margin: 0 0 24px;
    overflow: hidden;
    border-radius: 8px;
    background: #5ca2fc;
    box-shadow: 0 16px 36px rgba(47, 127, 232, .18);
}

.hospital-tab {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
    padding: 0 10px;
    border-right: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .92);
    text-decoration: none;
    text-align: center;
}

.hospital-tab-title,
.hospital-tab em {
    pointer-events: none;
}

.hospital-tab:last-child {
    border-right: 0;
}

.hospital-tab-title {
    display: block;
    font-size: 17px;
    line-height: 1.2;
}

.hospital-tab em {
    position: absolute;
    top: 8px;
    right: 8px;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .2);
    color: #fff;
    font-style: normal;
    font-size: 11px;
    line-height: 22px;
}

.hospital-tab:hover,
.hospital-tab.is-active {
    background: #2f7fe8;
    color: #fff;
    text-decoration: none;
}

.page-main {
    min-width: 0;
}

.detail-card {
    padding: 28px;
}

.article-seo-summary {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.section-link {
    color: #2f7fe8;
    font-size: 14px;
}

.hospital-home-news .article-row h4 {
    margin-bottom: 0;
}

.hospital-sidebar {
    display: grid;
    gap: 20px;
    align-self: start;
    align-content: start;
    grid-auto-rows: max-content;
}

.hospital-sidecard {
    min-height: 0;
    height: auto;
    padding: 20px;
}

.hospital-side-actions {
    display: grid;
    gap: 10px;
}

.hospital-side-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2b3445;
    text-decoration: none;
    font: inherit;
    cursor: pointer;
}

.hospital-side-btn.is-appointment,
.hospital-doctor-row-actions .is-appointment {
    border-color: #ff6d76;
    background: linear-gradient(90deg, #ff4253, #ff8b91);
    color: #fff;
}

.hospital-side-btn.is-consult,
.hospital-doctor-row-actions .is-consult {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.hospital-side-btn.is-disabled,
.hospital-doctor-row-actions .is-disabled {
    border-color: #d7deea;
    background: #eef1f5;
    color: #98a2b3;
    cursor: not-allowed;
}

.hospital-side-btn.is-primary {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.hospital-side-btn:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.hospital-side-btn.is-primary:hover {
    background: #2f7fe8;
    color: #fff;
}

.hospital-side-facts {
    display: grid;
    gap: 12px;
}

.hospital-side-facts p {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    margin: 0;
}

.hospital-side-facts strong {
    color: #20304d;
    font-size: 13px;
    line-height: 1.7;
}

.hospital-side-facts span {
    min-width: 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.7;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.hospital-side-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-width: 0;
}

.hospital-side-list a {
    display: block;
    min-width: 0;
    overflow: hidden;
    line-height: 1.65;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-side-list span {
    white-space: nowrap;
}

.hospital-side-empty {
    padding: 10px 0 2px;
    color: #98a2b3;
    font-size: 13px;
    line-height: 1.7;
}

.hospital-side-doctor-list {
    display: grid;
    gap: 0;
}

.hospital-side-doctor-item {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    padding: 14px 0;
    border-bottom: 1px solid #edf2f8;
}

.hospital-side-doctor-item:first-child {
    padding-top: 4px;
}

.hospital-side-doctor-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hospital-side-doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    overflow: hidden;
    background: #dff4f8;
    color: #2f7fe8;
    font-size: 22px;
    font-weight: 700;
    text-decoration: none;
}

.hospital-side-doctor-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-side-doctor-copy {
    display: grid;
    gap: 7px;
    min-width: 0;
}

.hospital-side-doctor-name {
    display: flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
}

.hospital-side-doctor-name a {
    color: #20304d;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.hospital-side-doctor-name span {
    min-width: 0;
    color: #667085;
    font-size: 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-side-doctor-copy p {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #667085;
    font-size: 12px;
    line-height: 1.6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hospital-side-doctor-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hospital-side-doctor-actions a,
.hospital-side-doctor-actions button,
.hospital-side-doctor-actions span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    height: 26px;
    padding: 0 8px;
    border-radius: 4px;
    border: 0;
    color: #fff;
    font: inherit;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

.hospital-side-doctor-actions .is-consult {
    background: #26a8e0;
}

.hospital-side-doctor-actions .is-appointment {
    background: #ff4d5a;
}

.hospital-side-doctor-actions .is-disabled {
    background: #c7d0dd;
    cursor: not-allowed;
}

.article-detail-meta,
.detail-badges,
.detail-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.article-content,
.rich-content {
    margin-top: 22px;
    color: #344054;
    font-size: 15px;
    line-height: 1.95;
}

.article-content img,
.rich-content img {
    max-width: 100%;
    height: auto;
}

.detail-hero {
    margin-bottom: 24px;
}

.hospital-hero {
    padding: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #eef6ff 100%);
    border: 1px solid #dbe8fb;
    border-radius: 8px;
}

.hospital-station-hero {
    padding-top: 24px;
}

.hospital-station-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.hospital-station-brand {
    display: flex;
    align-items: center;
    gap: 16px;
}

.hospital-station-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    box-shadow: 0 16px 28px rgba(92, 162, 252, .24);
}

.hospital-station-copy h1 {
    margin: 0;
    color: #1f2b3d;
    font-size: 30px;
    line-height: 1.25;
}

.hospital-station-subtitle {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-top: 8px;
    color: #667085;
    font-size: 13px;
}

.hospital-station-actions {
    display: flex;
    gap: 12px;
}

.hospital-station-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    height: 42px;
    padding: 0 18px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2b3445;
    text-decoration: none;
}

.hospital-station-btn.is-primary {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.hospital-station-btn:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.hospital-station-btn.is-primary:hover {
    background: #2f7fe8;
    color: #fff;
}

.hospital-station-search {
    margin-bottom: 22px;
}

.hospital-station-hero .hospital-tabbar {
    margin-bottom: 22px;
    border-radius: 10px;
}

.hospital-station-search form {
    display: flex;
    align-items: center;
    gap: 12px;
}

.hospital-station-search input {
    flex: 1 1 auto;
    width: 100%;
    height: 46px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    padding: 0 16px;
    background: rgba(255, 255, 255, .92);
    color: #2b3445;
    outline: 0;
    box-shadow: none;
}

.hospital-station-search input:focus {
    border-color: #5ca2fc;
    box-shadow: 0 0 0 4px rgba(92, 162, 252, .12);
}

.hospital-station-search button {
    flex: 0 0 auto;
    height: 46px;
    border: 0;
    border-radius: 8px;
    padding: 0 20px;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.hospital-station-search button:hover {
    background: #2f7fe8;
}

.hospital-hero-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
    margin-top: 18px;
}

.hospital-hero-stats span {
    color: #4b6385;
    font-size: 13px;
}

.hospital-hero .detail-hero-brand {
    grid-template-columns: 180px minmax(0, 1fr) 132px;
}

.hospital-hero-actions {
    display: grid;
    gap: 12px;
}

.hospital-page-action,
.hospital-legacy-intro-actions > *,
.hospital-legacy-doctor-actions > * {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 112px;
    height: 40px;
    padding: 0 16px;
    border: 0;
    border-radius: 6px;
    color: #fff;
    font: inherit;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

.hospital-page-action.is-consult,
.hospital-legacy-intro-actions .is-consult,
.hospital-legacy-doctor-actions .is-consult {
    background: #5ca2fc;
    color: #fff;
}

.hospital-page-action.is-appointment,
.hospital-legacy-intro-actions .is-appointment,
.hospital-legacy-doctor-actions .is-appointment {
    background: linear-gradient(90deg, #ff4f60 0%, #ff8d99 100%);
    color: #fff;
}

.hospital-page-action.is-disabled,
.hospital-legacy-intro-actions .is-disabled,
.hospital-legacy-doctor-actions .is-disabled {
    background: #cbd5e1;
    cursor: default;
}

.hospital-legacy-layout {
    display: grid;
    gap: 24px;
}

.hospital-legacy-top,
.hospital-legacy-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, .85fr);
    gap: 24px;
}

.hospital-legacy-top-main {
    display: grid;
    align-content: start;
    gap: 16px;
}

.hospital-legacy-titlebar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e7eef8;
}

.hospital-legacy-titlebar span {
    color: #20304d;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.hospital-legacy-titlebar a {
    color: #5ca2fc;
    font-size: 14px;
    text-decoration: none;
}

.hospital-legacy-titlebar a:hover {
    color: #2f7fe8;
}

.hospital-legacy-intro-body {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.hospital-legacy-intro-media {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 88px;
    font-weight: 700;
}

.hospital-legacy-intro-media img,
.hospital-legacy-banner img,
.hospital-legacy-environment-box img,
.hospital-legacy-doctor-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-legacy-intro-copy {
    display: grid;
    gap: 14px;
}

.hospital-legacy-intro-text,
.hospital-legacy-intro-meta {
    color: #475467;
    font-size: 15px;
    line-height: 1.9;
}

.hospital-legacy-intro-text span,
.hospital-legacy-intro-meta span {
    color: #20304d;
    font-weight: 700;
}

.hospital-legacy-intro-actions,
.hospital-legacy-doctor-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 6px;
}

.hospital-legacy-intro-actions a,
.hospital-legacy-intro-actions button,
.hospital-legacy-intro-actions > span,
.hospital-legacy-doctor-actions a,
.hospital-legacy-doctor-actions button,
.hospital-legacy-doctor-actions > span,
.hospital-legacy-review-action a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 124px;
    height: 42px;
    padding: 0 18px;
    border-radius: 8px;
    background: #5ca2fc;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.hospital-legacy-intro-actions a:first-child,
.hospital-legacy-doctor-actions a:first-child {
    color: #fff;
}

.hospital-legacy-intro-actions a:hover,
.hospital-legacy-doctor-actions a:hover,
.hospital-legacy-review-action a:hover {
    background: #2f7fe8;
    color: #fff;
}

.hospital-legacy-side-list,
.hospital-legacy-article-list {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hospital-legacy-side-list li,
.hospital-legacy-article-list li {
    display: flex;
    gap: 12px;
    min-width: 0;
}

.hospital-legacy-side-list a,
.hospital-legacy-article-list a {
    min-width: 0;
    color: #344054;
    line-height: 1.7;
}

.hospital-legacy-side-list a:hover,
.hospital-legacy-article-list a:hover {
    color: #2f7fe8;
}

.hospital-legacy-article-list li {
    align-items: center;
    justify-content: space-between;
    padding-bottom: 14px;
    border-bottom: 1px dashed #e7eef8;
}

.hospital-legacy-article-list li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hospital-legacy-article-list span {
    flex: 0 0 94px;
    color: #98a2b3;
    font-size: 13px;
    text-align: right;
}

.hospital-legacy-article-list a {
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-legacy-doctor-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.hospital-legacy-doctor-item {
    display: grid;
    gap: 14px;
    min-width: 0;
    padding: 18px;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    overflow: hidden;
    background: #f8fbff;
    box-sizing: border-box;
}

.hospital-legacy-doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 44px;
    font-weight: 700;
    box-sizing: border-box;
}

.hospital-legacy-doctor-copy {
    display: grid;
    gap: 10px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
}

.hospital-legacy-doctor-name {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: baseline;
}

.hospital-legacy-doctor-name a {
    color: #20304d;
    font-size: 18px;
    font-weight: 700;
}

.hospital-legacy-doctor-name span {
    color: #667085;
    font-size: 13px;
}

.hospital-legacy-doctor-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.8;
}

.hospital-legacy-doctor-specialty {
    color: #475467;
    line-height: 1.8;
}

.hospital-mobile-doctor-specialty {
    display: none;
}

.hospital-legacy-doctor-detail {
    display: inline;
    margin-left: 2px;
    color: #16a0a5;
    font-size: 13px;
    white-space: nowrap;
}

.hospital-legacy-doctor-detail:hover {
    color: #0b858b;
}

.hospital-legacy-doctor-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.hospital-legacy-doctor-actions > a,
.hospital-legacy-doctor-actions > button,
.hospital-legacy-doctor-actions > span {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 36px;
    padding: 0 8px;
    font-size: 13px;
    box-sizing: border-box;
}

.hospital-inline-banner {
    overflow: hidden;
    border: 1px solid #dbe8fb;
    border-radius: 6px;
    background: #fff;
    line-height: 0;
}

.hospital-inline-banner.is-intro {
    height: 92px;
}

.hospital-inline-banner.is-doctor {
    height: 112px;
}

.hospital-inline-banner.is-article {
    height: 92px;
}

.hospital-inline-banner.is-side {
    height: 150px;
}

.hospital-inline-banner a,
.hospital-inline-banner button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.hospital-inline-banner img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hospital-legacy-banner {
    overflow: hidden;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
}

.hospital-legacy-banner img {
    display: block;
    width: 100%;
    max-height: 220px;
}

.hospital-legacy-environment-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 16px;
}

.hospital-legacy-environment-grid.count-1 {
    grid-template-columns: minmax(0, 360px);
}

.hospital-legacy-environment-box {
    overflow: hidden;
    border-radius: 8px;
    background: #f8fbff;
}

.hospital-legacy-environment-box img {
    display: block;
    width: 100%;
    height: 170px;
    object-fit: cover;
}

.hospital-legacy-review-list {
    display: grid;
    gap: 16px;
}

.hospital-legacy-review-item {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 14px;
    padding-bottom: 16px;
    border-bottom: 1px solid #edf2fa;
}

.hospital-legacy-review-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hospital-legacy-review-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 22px;
    font-weight: 700;
}

.hospital-legacy-review-copy {
    min-width: 0;
}

.hospital-legacy-review-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.hospital-legacy-review-user {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.hospital-legacy-review-user strong {
    color: #20304d;
    font-size: 16px;
}

.hospital-legacy-review-user span,
.hospital-legacy-review-top time {
    color: #667085;
    font-size: 13px;
}

.hospital-legacy-review-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.85;
}

.hospital-legacy-review-action {
    margin-top: 20px;
    text-align: center;
}

.hospital-station-card {
    padding: 28px 32px;
}

.hospital-station-lead {
    display: grid;
    gap: 10px;
    margin-bottom: 22px;
}

.hospital-station-lead p {
    margin: 0;
    color: #475467;
    line-height: 1.9;
}

.hospital-station-ministats {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}

.hospital-station-ministats span {
    color: #667085;
    font-size: 13px;
}

.hospital-article-listpage,
.hospital-doctor-listpage,
.hospital-department-listpage,
.hospital-review-listpage {
    display: grid;
    gap: 18px;
}

.hospital-article-row,
.hospital-doctor-row,
.hospital-department-row {
    display: grid;
    border: 1px solid #e7eef8;
    border-radius: 8px;
    background: #fbfdff;
}

.hospital-article-row {
    display: block;
    padding: 20px 10px;
    border: 0;
    border-bottom: 0;
    border-radius: 0;
    background: #fff;
}

.hospital-article-row:last-child {
    border-bottom: 0;
}

.hospital-article-copy {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 92px;
    gap: 14px 18px;
    align-items: end;
    min-width: 0;
}

.hospital-article-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 12px;
    color: #667085;
    font-size: 12px;
}

.hospital-article-source {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 7px;
    color: #475467;
    text-decoration: none;
}

.hospital-article-source > span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-article-source-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    overflow: hidden;
    border-radius: 50%;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 11px;
}

.hospital-article-source-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-article-meta time {
    flex: 0 0 auto;
    color: #98a2b3;
}

.hospital-article-copy h3,
.hospital-doctor-row-name h3 {
    margin: 0 0 8px;
}

.hospital-article-copy h3 a,
.hospital-doctor-row-name h3 a {
    color: #20304d;
    font-size: 20px;
    line-height: 1.45;
}

.hospital-article-copy p,
.hospital-doctor-row-copy p,
.hospital-department-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.85;
}

.hospital-article-copy p {
    display: -webkit-box;
    grid-column: 1 / 2;
    overflow: hidden;
    font-size: 13px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hospital-article-copy p a {
    color: #0b72b8;
    font-weight: 700;
    text-decoration: none;
}

.hospital-article-copy p a:hover {
    color: #2f7fe8;
}

.hospital-article-copy time {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    color: #0b72b8;
    font-size: 14px;
    font-weight: 700;
    text-align: right;
    white-space: nowrap;
}

.hospital-article-page .hospital-article-listpage {
    gap: 0;
    overflow: hidden;
    padding: 18px 22px;
    border: 0;
    border-radius: 0;
    background: #fff;
}

.hospital-article-bottom-banner {
    margin-top: 26px;
    overflow: hidden;
    border-radius: 0;
    background: #fff;
    line-height: 0;
}

.hospital-article-bottom-banner a,
.hospital-article-bottom-banner button {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.hospital-article-bottom-banner img {
    display: block;
    width: 100%;
    max-height: 92px;
    object-fit: contain;
}

.hospital-article-page .site-pagination {
    margin: 24px 0 0;
    text-align: left;
}

.hospital-article-page .site-pagination .pagination {
    margin: 0;
}

.hospital-article-link,
.hospital-doctor-row-actions a,
.hospital-doctor-row-actions button,
.hospital-doctor-row-actions span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    padding: 0 18px;
    border-radius: 8px;
    background: #eef6ff;
    color: #2f7fe8;
    font-weight: 600;
    text-decoration: none;
    border: 0;
    font: inherit;
    cursor: pointer;
}

.hospital-article-link:hover,
.hospital-doctor-row-actions a:hover,
.hospital-doctor-row-actions button:hover {
    background: #5ca2fc;
    color: #fff;
}

.hospital-doctor-row {
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    padding: 20px 24px;
}

.hospital-doctor-row-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 40px;
    font-weight: 700;
}

.hospital-doctor-row-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-doctor-row-copy {
    display: grid;
    gap: 12px;
}

.hospital-doctor-row-name {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 12px;
}

.hospital-doctor-row-name span {
    color: #667085;
    font-size: 13px;
}

.hospital-doctor-row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 4px;
}

.hospital-department-row {
    grid-template-columns: 72px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px 22px;
    color: inherit;
    text-decoration: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.hospital-department-row:hover {
    border-color: #9fc9ff;
    box-shadow: 0 8px 24px rgba(47, 127, 232, .1);
    transform: translateY(-1px);
}

.hospital-department-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 8px;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 24px;
    font-weight: 700;
}

.hospital-department-copy {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.hospital-department-copy strong {
    color: #20304d;
    font-size: 20px;
}

.hospital-department-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}

.hospital-department-meta span {
    color: #667085;
    font-size: 13px;
}

.hospital-department-description {
    display: -webkit-box;
    overflow: hidden;
    color: #475467;
    line-height: 1.85;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hospital-department-enter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    padding: 0 16px;
    border: 1px solid #d8e8fb;
    border-radius: 6px;
    color: #2f7fe8;
    font-size: 13px;
    white-space: nowrap;
}

.hospital-department-row:hover .hospital-department-enter {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.hospital-department-directory-card,
.hospital-department-section,
.hospital-department-detail,
.hospital-department-doctors-section {
    padding: 24px;
}

.hospital-department-directory {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.hospital-department-directory a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    padding: 5px 14px;
    border: 1px solid #dbe8f7;
    border-radius: 18px;
    background: #fff;
    color: #344054;
    font-size: 14px;
    text-decoration: none;
}

.hospital-department-directory a span {
    color: #2f7fe8;
    font-size: 12px;
    font-weight: 700;
}

.hospital-department-directory a:hover,
.hospital-department-directory a.is-active {
    border-color: #5ca2fc;
    background: #eef6ff;
    color: #2f7fe8;
}

.hospital-department-directory-empty {
    margin: 0;
    color: #98a2b3;
}

.hospital-department-section .hospital-legacy-titlebar small,
.hospital-department-doctors-section .hospital-legacy-titlebar small {
    color: #98a2b3;
    font-size: 12px;
    font-weight: 400;
}

.hospital-department-detail-head {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    margin-bottom: 20px;
}

.hospital-department-detail-head h1 {
    margin: 0 0 10px;
    color: #20304d;
    font-size: 24px;
    line-height: 1.4;
}

.hospital-department-detail-content {
    padding-top: 18px;
    border-top: 1px solid #edf2f8;
    color: #475467;
    line-height: 1.9;
}

.hospital-department-detail-content > :first-child {
    margin-top: 0;
}

.hospital-department-detail-content > :last-child {
    margin-bottom: 0;
}

.hospital-department-doctor-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.hospital-department-doctor-card {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 16px;
    min-width: 0;
    padding: 16px;
    border: 1px solid #dfeafa;
    border-radius: 8px;
    background: #fafdff;
}

.hospital-department-doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 112px;
    height: 112px;
    overflow: hidden;
    border-radius: 8px;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 32px;
    font-weight: 700;
}

.hospital-department-doctor-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-department-doctor-copy {
    display: grid;
    align-content: start;
    gap: 10px;
    min-width: 0;
}

.hospital-department-doctor-name {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 5px 8px;
}

.hospital-department-doctor-name em {
    color: #ff6675;
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
}

.hospital-department-doctor-name a {
    color: #20304d;
    font-size: 18px;
    font-weight: 700;
}

.hospital-department-doctor-name span {
    color: #98a2b3;
    font-size: 12px;
}

.hospital-department-doctor-copy p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.7;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.hospital-department-doctor-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: start;
    height: 34px;
    padding: 0 15px;
    border: 1px solid #d8e8fb;
    border-radius: 6px;
    background: #fff;
    color: #2f7fe8;
    font-size: 13px;
    text-decoration: none;
}

.hospital-department-doctor-link:hover {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.hospital-department-doctor-empty a {
    display: inline-flex;
    margin-top: 12px;
    color: #2f7fe8;
}

.hospital-review-listpage {
    gap: 0;
}

.hospital-review-listpage .hospital-legacy-review-item {
    padding: 20px 0;
}

.hospital-review-listpage .hospital-legacy-review-item:first-child {
    padding-top: 0;
}

.hospital-review-page .page-main {
    display: grid;
    gap: 20px;
}

.hospital-review-sidebar {
    align-content: start;
}

.hospital-review-related {
    padding: 18px 24px 22px;
}

.hospital-review-bottom-banner {
    margin-bottom: 20px;
    overflow: hidden;
    background: #fff;
    line-height: 0;
}

.hospital-review-bottom-banner > a,
.hospital-review-bottom-banner > button {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.hospital-review-bottom-banner img {
    display: block;
    width: 100%;
    max-height: 92px;
    object-fit: contain;
}

.hospital-review-related-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 8px;
    border-bottom: 1px solid #dbe4ef;
}

.hospital-review-related-head span {
    color: #20304d;
    font-size: 18px;
}

.hospital-review-related-head a {
    color: #98a2b3;
    font-size: 12px;
}

.hospital-review-related-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 10px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

.hospital-review-related-list li {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    min-width: 0;
}

.hospital-review-related-list li::before {
    content: "•";
    position: absolute;
}

.hospital-review-related-list a {
    overflow: hidden;
    padding-left: 10px;
    color: #344054;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-review-related-list span {
    color: #667085;
    font-size: 12px;
    white-space: nowrap;
}

.hospital-page-rich {
    color: #344054;
    line-height: 1.9;
}

.hospital-page-rich p:first-child {
    margin-top: 0;
}

.hospital-guide-content {
    min-height: 100%;
}

.hospital-guide-sidebar {
    align-content: start;
}

.hospital-introduction-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 20px;
    align-items: start;
}

.hospital-introduction-main,
.hospital-introduction-sidebar {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.hospital-introduction-content,
.hospital-introduction-contact {
    padding: 24px;
}

.hospital-introduction-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    margin-bottom: 22px;
}

.hospital-introduction-gallery img {
    display: block;
    width: 100%;
    height: 220px;
    border-radius: 6px;
    object-fit: cover;
}

.hospital-introduction-gallery.count-1 img {
    height: auto;
    max-height: 320px;
    object-fit: contain;
}

.hospital-introduction-contact-content {
    color: #475467;
    line-height: 1.8;
}

.hospital-introduction-ad {
    overflow: hidden;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    line-height: 0;
}

.hospital-introduction-ad.is-side {
    height: 184px;
}

.hospital-introduction-ad.is-bottom {
    height: 112px;
}

.hospital-introduction-ad > a,
.hospital-introduction-ad > button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
}

.hospital-introduction-ad img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hospital-introduction-doctors,
.hospital-introduction-articles {
    padding: 18px;
}

.hospital-introduction-doctor-list {
    display: grid;
}

.hospital-introduction-doctor {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 12px;
    padding: 14px 0;
    border-bottom: 1px solid #edf2f8;
}

.hospital-introduction-doctor:first-child {
    padding-top: 0;
}

.hospital-introduction-doctor:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hospital-introduction-doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    overflow: hidden;
    border-radius: 50%;
    background: #eef6ff;
    color: #2f7fe8;
    font-weight: 700;
}

.hospital-introduction-doctor-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hospital-introduction-doctor-copy {
    min-width: 0;
}

.hospital-introduction-doctor-copy > div:first-child {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 5px 8px;
}

.hospital-introduction-doctor-copy > div:first-child a {
    color: #20304d;
    font-weight: 700;
}

.hospital-introduction-doctor-copy > div:first-child span {
    color: #98a2b3;
    font-size: 12px;
}

.hospital-introduction-doctor-copy p {
    display: -webkit-box;
    overflow: hidden;
    margin: 5px 0 8px;
    color: #667085;
    font-size: 12px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hospital-introduction-doctor-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}

.hospital-introduction-doctor-actions > * {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 28px;
    padding: 0 6px;
    border: 0;
    border-radius: 4px;
    color: #fff;
    font: inherit;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
}

.hospital-introduction-doctor-actions .is-consult {
    background: #5ca2fc;
}

.hospital-introduction-doctor-actions .is-appointment {
    background: linear-gradient(90deg, #ff4f60, #ff8d99);
}

.hospital-introduction-doctor-actions .is-disabled {
    background: #cbd5e1;
}

.hospital-introduction-articles ul {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hospital-introduction-articles li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
}

.hospital-introduction-articles li a {
    overflow: hidden;
    color: #344054;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hospital-introduction-articles li span {
    color: #98a2b3;
    font-size: 11px;
}

@media (max-width: 991px) {
    .hospital-introduction-layout {
        grid-template-columns: 1fr;
    }

    .hospital-introduction-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hospital-introduction-ad.is-side {
        height: 210px;
    }
}

@media (max-width: 639px) {
    .hospital-introduction-content,
    .hospital-introduction-contact {
        padding: 18px;
    }

    .hospital-introduction-sidebar {
        grid-template-columns: 1fr;
    }

    .hospital-introduction-gallery {
        grid-template-columns: 1fr;
    }

    .hospital-introduction-gallery img {
        height: 180px;
    }

    .hospital-introduction-ad.is-side {
        height: 180px;
    }

    .hospital-introduction-ad.is-bottom {
        height: 72px;
    }
}

.detail-hero-brand,
.doctor-profile {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 24px;
    align-items: center;
}

.detail-hero-media,
.doctor-profile-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 180px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 56px;
    font-weight: 700;
}

.doctor-profile-avatar {
    width: 120px;
    height: 120px;
    border-radius: 50%;
}

.doctor-profile {
    grid-template-columns: 120px minmax(0, 1fr);
    align-items: flex-start;
}

.detail-hero-copy h1,
.doctor-profile-copy h1 {
    margin: 14px 0 10px;
    color: #1f2b3d;
    font-size: 34px;
    line-height: 1.25;
}

.info-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.info-grid-wide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.info-chip-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 120px;
    padding: 18px;
    background: #f8fbff;
    border: 1px solid #e4edf8;
    border-radius: 8px;
}

.info-chip-card strong {
    color: #20304d;
    font-size: 16px;
}

.info-chip-card span {
    color: #667085;
    font-size: 13px;
    line-height: 1.6;
}

.info-chip-card p {
    margin: 0;
    color: #667085;
    line-height: 1.7;
}

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

.review-card {
    padding: 18px;
}

.review-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.review-score {
    margin-bottom: 8px;
    color: #2f7fe8;
    font-size: 13px;
    font-weight: 600;
}

.article-row-block {
    padding: 16px 0;
    border-bottom: 1px solid #edf2fa;
}

.article-row-block:last-child {
    border-bottom: 0;
}

.article-row-topline {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.article-list-dense {
    gap: 0;
}

.page-extra-block {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #edf2fa;
}

.page-extra-block h3 {
    margin: 0 0 10px;
    color: #20304d;
    font-size: 22px;
}

.doctor-schedule-block {
    margin-top: 24px;
}

.doctor-schedule-head {
    margin-bottom: 14px;
}

.doctor-week-schedule {
    margin-bottom: 18px;
    overflow-x: auto;
}

.doctor-week-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    table-layout: fixed;
    border: 1px solid #d8e5f8;
    border-radius: 8px;
    overflow: hidden;
}

.doctor-week-table th,
.doctor-week-table td {
    padding: 10px 8px;
    border: 1px solid #dfe8f6;
    vertical-align: top;
    background: #fff;
}

.doctor-week-table thead th {
    background: #f3f8ff;
    color: #20304d;
    font-weight: 700;
    text-align: center;
}

.doctor-week-table thead th span {
    display: block;
    color: #667085;
    font-size: 12px;
    font-weight: 500;
}

.doctor-week-table thead th strong {
    display: block;
    margin-top: 4px;
    font-size: 15px;
    line-height: 1.2;
}

.doctor-week-table thead th.is-today {
    background: #eef6ff;
}

.doctor-week-period {
    width: 76px;
    background: #f7faff;
    color: #2f7fe8;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
}

.doctor-week-entry {
    display: grid;
    gap: 4px;
    min-height: 56px;
    padding: 7px 6px;
    border-radius: 6px;
    background: #f8fbff;
    align-content: center;
    justify-items: center;
    text-align: center;
}

.doctor-week-entry + .doctor-week-entry {
    margin-top: 6px;
}

.doctor-week-entry strong {
    color: #20304d;
    font-size: 12px;
    line-height: 1.3;
}

.doctor-week-entry span {
    color: #667085;
    font-size: 11px;
    line-height: 1.4;
}

.doctor-week-entry.is-normal {
    background: #eef9f1;
}

.doctor-week-entry.is-full {
    background: #fff6eb;
}

.doctor-week-entry.is-closed {
    background: #f2f4f7;
}

.doctor-week-entry.is-empty {
    background: #fafcff;
}

.doctor-week-entry.is-empty strong {
    color: #98a2b3;
    font-weight: 600;
}

.doctor-schedule-subtitle {
    margin: 16px 0 12px;
    color: #20304d;
    font-size: 16px;
    font-weight: 700;
}

.doctor-schedule-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.doctor-schedule-card {
    padding: 18px;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    background: #f8fbff;
}

.doctor-schedule-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.doctor-schedule-date strong {
    display: block;
    color: #20304d;
    font-size: 17px;
    line-height: 1.3;
}

.doctor-schedule-date span {
    display: block;
    margin-top: 4px;
    color: #667085;
    font-size: 13px;
}

.doctor-schedule-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.doctor-schedule-status.is-normal {
    background: #e9f7ef;
    color: #1f8b4c;
}

.doctor-schedule-status.is-full {
    background: #fff4e8;
    color: #c66a10;
}

.doctor-schedule-status.is-closed {
    background: #f2f4f7;
    color: #667085;
}

.doctor-schedule-meta {
    display: grid;
    gap: 8px;
}

.doctor-schedule-meta span {
    color: #475467;
    font-size: 13px;
    line-height: 1.65;
}

.doctor-schedule-empty {
    padding: 18px 20px;
    border: 1px dashed #dbe8fb;
    border-radius: 8px;
    background: #fbfdff;
}

.doctor-schedule-empty strong {
    display: block;
    margin-bottom: 8px;
    color: #20304d;
    font-size: 16px;
}

.doctor-schedule-empty p {
    margin: 0;
    color: #667085;
    line-height: 1.7;
}

.doctor-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.doctor-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    height: 38px;
    padding: 0 16px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2b3445;
    text-decoration: none;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
}

.doctor-action-btn.is-primary {
    border-color: #ff6d76;
    background: linear-gradient(90deg, #ff4253, #ff8b91);
    color: #fff;
}

.doctor-action-btn.is-consult {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.doctor-action-btn.is-disabled {
    border-color: #d7deea;
    background: #eef1f5;
    color: #98a2b3;
    cursor: not-allowed;
}

.doctor-action-btn:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
    text-decoration: none;
}

.doctor-action-btn.is-primary:hover {
    border-color: #ff4253;
    background: #ff4253;
    color: #fff;
}

.doctor-week-book {
    display: block;
    width: 100%;
    margin-top: 7px;
    padding: 4px 8px;
    border: 0;
    border-radius: 4px;
    background: #2f7fe8;
    color: #fff;
    font-size: 12px;
}

.doctor-schedule-actions {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #edf2f8;
    text-align: right;
}

.doctor-schedule-book {
    padding: 8px 20px;
    border: 0;
    border-radius: 5px;
    background: #2f7fe8;
    color: #fff;
    font-weight: 600;
}

.doctor-week-book:hover,
.doctor-schedule-book:hover {
    background: #176bc1;
}

.doctor-appointment-modal {
    position: fixed;
    z-index: 200000;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.doctor-appointment-modal.is-open {
    display: flex;
}

.doctor-appointment-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .45);
}

.doctor-appointment-dialog {
    position: relative;
    z-index: 1;
    width: min(600px, 100%);
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    padding: 22px 24px 24px;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 14px 40px rgba(0, 0, 0, .22);
}

.doctor-appointment-dialog-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: -22px -24px 20px;
    padding: 14px 20px;
    border-bottom: 1px solid #edf1f6;
}

.doctor-appointment-dialog-head h2 {
    margin: 0;
    color: #20304d;
    font-size: 18px;
}

.doctor-appointment-dialog-close {
    width: 30px;
    height: 30px;
    border: 0;
    background: transparent;
    color: #7b8798;
    font-size: 28px;
    line-height: 1;
}

.doctor-appointment-dialog-close:hover {
    color: #2f7fe8;
}

.doctor-appointment-selected {
    margin-bottom: 18px;
    padding: 12px 14px;
    border-radius: 6px;
    background: #f3f8ff;
}

.doctor-appointment-selected span,
.doctor-appointment-selected strong {
    display: block;
}

.doctor-appointment-selected span {
    margin-bottom: 5px;
    color: #7b8798;
    font-size: 12px;
}

.doctor-appointment-selected strong {
    color: #2f5f9e;
    line-height: 1.6;
}

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

.doctor-appointment-grid label,
.doctor-appointment-condition {
    display: block;
    margin: 0;
    font-weight: 400;
}

.doctor-appointment-grid label > span,
.doctor-appointment-condition > span {
    display: block;
    margin-bottom: 6px;
    color: #344054;
    font-weight: 600;
}

.doctor-appointment-condition {
    margin-top: 14px;
}

.doctor-appointment-tip {
    margin: 12px 0;
    color: #7b8798;
    font-size: 12px;
}

.doctor-appointment-submit {
    width: 100%;
    padding: 10px 16px;
}

.hospital-main-banner {
    width: 100%;
    height: clamp(80px, 10.4167vw, 200px);
    overflow: hidden;
    background: #f4f7fa;
}

.hospital-main-banner-content {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    line-height: 0;
}

button.hospital-main-banner-content {
    cursor: pointer;
}

.hospital-main-banner-content img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hospital-floating-ad {
    position: fixed;
    top: 50%;
    z-index: 850;
    width: 140px;
    transform: translateY(-50%);
    filter: drop-shadow(0 7px 18px rgba(31, 54, 88, .2));
}

.hospital-floating-ad.is-left {
    left: 16px;
}

.hospital-floating-ad.is-right {
    right: 16px;
}

.hospital-floating-content {
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    cursor: pointer;
}

.hospital-floating-content img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 420px;
    object-fit: contain;
}

.hospital-floating-close {
    position: absolute;
    top: -11px;
    right: -11px;
    z-index: 2;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #606b7b;
    color: #fff;
    font-size: 18px;
    line-height: 19px;
    text-align: center;
}

@media (max-width: 639px) {
    .doctor-appointment-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1399px) {
    .hospital-floating-ad {
        width: 100px;
    }

    .hospital-floating-ad.is-left {
        left: 5px;
    }

    .hospital-floating-ad.is-right {
        right: 5px;
    }
}

@media (max-width: 991px) {
    .hospital-floating-ad {
        display: none;
    }
}

@media (max-width: 639px) {
    .hospital-inline-banner.is-intro {
        height: 64px;
    }

    .hospital-inline-banner.is-doctor {
        height: 72px;
    }

    .hospital-inline-banner.is-article {
        height: 64px;
    }
}

.doctor-legacy-columns {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 20px;
    margin-top: 24px;
}

.doctor-legacy-listcard,
.doctor-legacy-doctors {
    align-self: start;
    min-height: 0;
    height: auto;
}

.doctor-legacy-listcard .hospital-legacy-article-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 0 28px;
}

.doctor-peer-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 16px 20px;
}

.doctor-peer-item {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
    min-width: 0;
    height: auto;
    padding: 14px;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    background: #f8fbff;
}

.doctor-peer-item:last-child {
    padding: 14px;
    border: 1px solid #e4edf8;
}

.doctor-peer-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    text-decoration: none;
}

.doctor-peer-avatar img,
.doctor-hospital-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.doctor-peer-copy {
    min-width: 0;
}

.doctor-peer-name {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: baseline;
    margin-bottom: 6px;
}

.doctor-peer-name a {
    color: #20304d;
    font-size: 17px;
    font-weight: 700;
}

.doctor-peer-name span {
    color: #667085;
    font-size: 13px;
}

.doctor-peer-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.75;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.doctor-peer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}

.doctor-peer-actions a,
.doctor-hospital-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    height: 34px;
    padding: 0 14px;
    border-radius: 6px;
    text-decoration: none;
}

.doctor-peer-actions a,
.doctor-hospital-actions a:first-child {
    border: 1px solid #dbe8fb;
    background: #fff;
    color: #2b3445;
}

.doctor-hospital-actions a:last-child {
    border: 1px solid #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.doctor-peer-actions a:hover,
.doctor-hospital-actions a:hover {
    text-decoration: none;
}

.doctor-peer-actions a:hover,
.doctor-hospital-actions a:first-child:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
}

.doctor-peer-actions a:last-child:hover,
.doctor-hospital-actions a:last-child:hover {
    background: #2f7fe8;
    color: #fff;
}

.doctor-sidebar {
    display: grid;
    gap: 18px;
    align-self: start;
    align-content: start;
    grid-auto-rows: max-content;
}

.doctor-sidebar .site-sidecard {
    align-self: start;
    min-height: 0;
    height: auto;
}

.doctor-hospital-sidecard {
    padding: 18px;
}

.doctor-hospital-card {
    display: grid;
    gap: 14px;
}

.doctor-hospital-media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 48px;
    font-weight: 700;
    text-decoration: none;
}

.doctor-hospital-copy h3 {
    margin: 0 0 8px;
    color: #20304d;
    font-size: 20px;
    line-height: 1.4;
}

.doctor-hospital-copy h3 a {
    color: inherit;
}

.doctor-hospital-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-bottom: 10px;
    color: #667085;
    font-size: 13px;
}

.doctor-hospital-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.75;
}

.doctor-hospital-facts {
    display: grid;
    gap: 6px;
    margin-top: 12px;
}

.doctor-hospital-facts span {
    color: #667085;
    font-size: 13px;
    line-height: 1.65;
}

.doctor-hospital-actions {
    display: flex;
    gap: 10px;
    margin-top: 14px;
}

.doctor-hospital-actions.is-primary-row {
    flex-wrap: wrap;
    margin-top: 16px;
}

.doctor-hospital-actions.is-primary-row a,
.doctor-hospital-actions.is-primary-row button,
.doctor-hospital-actions.is-primary-row span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 110px;
    height: 36px;
    padding: 0 12px;
    border: 0;
    border-radius: 6px;
    color: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

.doctor-hospital-actions.is-primary-row .is-appointment {
    background: linear-gradient(90deg, #ff4253, #ff8b91);
}

.doctor-hospital-actions.is-primary-row .is-consult {
    background: #5ca2fc;
}

.doctor-hospital-actions.is-primary-row .is-disabled {
    background: #c7d0dd;
    cursor: not-allowed;
}

.site-sidebar {
    display: grid;
    gap: 18px;
}

.site-sidecard {
    padding: 18px 20px;
}

.site-sidecard-title {
    margin-bottom: 10px;
    color: #20304d;
    font-size: 17px;
    font-weight: 700;
}

.site-footer {
    margin-top: 20px;
    padding: 38px 0 24px;
    background: #20304d;
    color: rgba(255, 255, 255, .82);
}

.site-footer-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.site-brand-footer .site-brand-text strong,
.site-footer h4,
.site-footer a {
    color: #fff;
}

.site-footer-col h4 {
    margin: 0 0 14px;
    font-size: 16px;
}

.site-footer-col li + li {
    margin-top: 8px;
}

.site-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    font-size: 13px;
}

.site-pagination {
    margin-top: 24px;
    text-align: center;
}

.browse-hero-card {
    margin-bottom: 24px;
}

.browse-summary {
    margin: 14px 0 0;
    color: #667085;
    line-height: 1.8;
}

.browse-search {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 0;
}

.browse-search input {
    flex: 1 1 auto;
    width: 100%;
    height: 46px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    padding: 0 16px;
    background: #fff;
    color: #2b3445;
    outline: 0;
    box-shadow: none;
}

.browse-search input:focus {
    border-color: #5ca2fc;
    box-shadow: 0 0 0 4px rgba(92, 162, 252, .12);
}

.browse-search button {
    flex: 0 0 auto;
    height: 46px;
    border: 0;
    border-radius: 8px;
    padding: 0 20px;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.browse-search button:hover {
    background: #2f7fe8;
}

.browse-panel {
    margin-bottom: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.browse-strip {
    display: flex;
    gap: 18px;
    padding: 16px 0;
    border-bottom: 1px solid #edf2fb;
}

.browse-strip:last-child {
    border-bottom: 0;
}

.browse-label {
    flex: 0 0 84px;
    padding-top: 6px;
    color: #2f7fe8;
    font-size: 14px;
    font-weight: 600;
}

.browse-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.browse-links a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 0 12px;
    border: 1px solid #dbe8fb;
    border-radius: 999px;
    background: #fff;
    color: #44516a;
    text-decoration: none;
}

.legacy-newslist-section {
    padding-top: 12px;
}

.legacy-newslist-nav {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 18px;
    border: 1px solid #dbe8fb;
    background: #eef4fb;
}

.legacy-newslist-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    min-height: 42px;
    padding: 0 14px;
    border-right: 1px solid #dbe8fb;
    color: #20304d;
    font-size: 15px;
    text-decoration: none;
}

.legacy-newslist-nav a:last-child {
    border-right: 0;
}

.legacy-newslist-nav a.is-active,
.legacy-newslist-nav a:hover {
    background: #5ca2fc;
    color: #fff;
}

.legacy-newslist-layout {
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 20px;
    align-items: start;
}

.legacy-newslist-maincard {
    padding: 0;
    overflow: hidden;
}

.legacy-newslist-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 20px;
    border-bottom: 1px solid #edf2fa;
    background: #f8fbff;
}

.legacy-newslist-head h2 {
    margin: 0;
    color: #20304d;
    font-size: 22px;
    line-height: 1.4;
}

.legacy-newslist-headmeta {
    color: #98a2b3;
    font-size: 13px;
}

.health-news-landing-head {
    align-items: flex-start;
}

.health-news-landing-head p {
    margin: 8px 0 0;
    color: #667085;
    font-size: 14px;
    line-height: 1.8;
}

.health-news-topcats {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    padding: 18px 20px 0;
}

.health-news-topcats a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    border: 1px solid #dbe8fb;
    border-radius: 999px;
    background: #f8fbff;
    color: #44516a;
    font-size: 13px;
    text-decoration: none;
}

.health-news-topcats a:hover {
    border-color: #5ca2fc;
    background: #eef6ff;
    color: #2f7fe8;
}

.health-news-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 20px;
}

.health-news-block {
    border: 1px solid #e4edf8;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.health-news-block-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-bottom: 1px solid #edf2fa;
    background: #f8fbff;
}

.health-news-block-head a {
    color: #20304d;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}

.health-news-block-head a:last-child {
    color: #98a2b3;
    font-size: 12px;
    font-weight: 400;
}

.health-news-block-head a:hover {
    color: #2f7fe8;
}

.health-news-block-list {
    margin: 0;
    padding: 16px 16px 4px 34px;
}

.health-news-block-list li {
    margin-bottom: 12px;
    color: #5e6675;
    line-height: 1.75;
}

.health-news-block-list a {
    color: #2b3445;
}

.health-news-block-list a:hover {
    color: #2f7fe8;
}

.legacy-newslist-list {
    margin: 0;
    padding: 20px 20px 8px 54px;
}

.legacy-newslist-list li {
    margin-bottom: 14px;
    color: #5e6675;
    font-size: 16px;
    line-height: 1.8;
}

.legacy-newslist-list li::marker {
    color: #98a2b3;
}

.legacy-newslist-list a {
    color: #2b3445;
}

.legacy-newslist-list a:hover {
    color: #2f7fe8;
}

.legacy-newslist-item-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}

.legacy-newslist-list span {
    flex: 0 0 auto;
    color: #98a2b3;
    font-size: 12px;
}

.legacy-newslist-list p {
    display: -webkit-box;
    margin: 4px 0 0;
    overflow: hidden;
    color: #7d8799;
    font-size: 13px;
    line-height: 1.7;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.legacy-newslist-latest li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-width: 0;
}

.legacy-newslist-latest a {
    display: block;
    min-width: 0;
    overflow: hidden;
    line-height: 1.6;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.legacy-newslist-latest span {
    flex: 0 0 auto;
    white-space: nowrap;
}

.legacy-newslist-side {
    display: grid;
    gap: 20px;
    min-width: 0;
    width: 100%;
}

.legacy-newslist-sidecard {
    min-width: 0;
    padding: 16px;
    overflow: hidden;
}

.legacy-newslist-hospitals,
.legacy-newslist-doctors {
    display: grid;
    gap: 16px;
}

.legacy-newslist-hospital,
.legacy-newslist-doctor {
    display: grid;
    gap: 12px;
}

.legacy-newslist-hospital {
    padding-bottom: 16px;
    border-bottom: 1px dashed #e6eef9;
}

.legacy-newslist-hospital:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.legacy-newslist-hospital-media {
    display: block;
    overflow: hidden;
    height: 128px;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
}

.legacy-newslist-hospital-media img,
.legacy-newslist-hospital-media span {
    width: 100%;
    height: 100%;
}

.legacy-newslist-hospital-media img {
    object-fit: cover;
}

.legacy-newslist-hospital-media span,
.legacy-newslist-doctor-avatar span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
}

.legacy-newslist-hospital-copy,
.legacy-newslist-doctor-copy {
    min-width: 0;
}

.legacy-newslist-hospital-name,
.legacy-newslist-doctor-name {
    display: block;
    color: #20304d;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
}

.legacy-newslist-hospital-copy span,
.legacy-newslist-doctor-summary {
    display: block;
    margin-top: 6px;
    color: #667085;
    font-size: 12px;
    line-height: 1.7;
}

.legacy-newslist-doctor {
    grid-template-columns: 72px minmax(0, 1fr);
    align-items: start;
    padding-bottom: 16px;
    border-bottom: 1px dashed #e6eef9;
}

.legacy-newslist-doctor:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.legacy-newslist-doctor-avatar {
    display: block;
    width: 72px;
    height: 72px;
    overflow: hidden;
    border-radius: 50%;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
}

.legacy-newslist-doctor-avatar img,
.legacy-newslist-doctor-avatar span {
    width: 100%;
    height: 100%;
}

.legacy-newslist-doctor-avatar img {
    object-fit: cover;
}

.legacy-newslist-actions {
    display: flex;
    gap: 8px;
    margin-top: 10px;
}

.legacy-newslist-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 92px;
    height: 30px;
    border: 1px solid #5ca2fc;
    border-radius: 4px;
    color: #5ca2fc;
    font-size: 12px;
    text-decoration: none;
}

.legacy-newslist-actions a.is-solid {
    background: #5ca2fc;
    color: #fff;
}

.legacy-newslist-empty {
    color: #98a2b3;
    font-size: 13px;
    line-height: 1.8;
}

.legacy-newslist-section .site-pagination {
    padding: 8px 20px 20px;
}

.legacy-newslist-section .site-pagination ul.pagination {
    margin: 0;
}

@media (max-width: 991px) {
    .legacy-newslist-layout {
        grid-template-columns: 1fr;
    }

    .health-news-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .hospital-review-page .hospital-review-sidebar,
    .hospital-review-page .hospital-review-related {
        display: none;
    }

    .legacy-newslist-nav a {
        min-width: 0;
        flex: 1 1 33.333%;
    }

    .legacy-newslist-head {
        display: block;
    }

    .legacy-newslist-headmeta {
        margin-top: 6px;
    }

    .legacy-newslist-list {
        padding-left: 32px;
    }

    .legacy-newslist-actions {
        flex-wrap: wrap;
    }

    .health-news-topcats,
    .health-news-grid {
        padding-left: 16px;
        padding-right: 16px;
    }

    .article-detail-links li {
        display: block;
    }

    .article-detail-links span {
        display: block;
        margin-top: 4px;
    }

    .legacy-newslist-list span {
        display: block;
        margin: 4px 0 0;
    }
}

.browse-links a:hover,
.browse-links a.is-active {
    border-color: #5ca2fc;
    background: #eef6ff;
    color: #2f7fe8;
}

.topic-directory {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.topic-directory-row {
    display: flex;
    gap: 18px;
    padding: 16px 0;
    border-bottom: 1px solid #edf2fb;
}

.topic-directory-row:last-child {
    border-bottom: 0;
}

.topic-directory-title {
    flex: 0 0 84px;
}

.topic-directory-title a {
    color: #2f7fe8;
    font-size: 15px;
    font-weight: 700;
}

.topic-directory-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.topic-directory-links a {
    color: #44516a;
}

.topic-directory-links a:hover {
    color: #2f7fe8;
}

.home-disease-directory {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.home-disease-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) 320px;
    gap: 24px;
}

.home-quick-column {
    display: grid;
    gap: 12px;
}

.home-side-summary {
    margin: 0 0 10px;
    color: #667085;
    font-size: 13px;
    line-height: 1.65;
}

.home-disease-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.home-disease-group {
    display: flex;
    gap: 12px;
    padding: 8px 0 10px;
    background: transparent;
    border: 0;
    border-bottom: 1px dashed #dbe5f3;
    border-radius: 0;
    box-shadow: none;
}

.home-disease-title {
    flex: 0 0 58px;
}

.home-disease-title a {
    color: #2f7fe8;
    font-size: 14px;
    font-weight: 700;
}

.home-disease-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0;
    min-width: 0;
    line-height: 24px;
}

.home-disease-links a {
    color: #44516a;
    font-size: 13px;
    line-height: 24px;
    white-space: nowrap;
}

.home-disease-links a:hover {
    color: #2f7fe8;
}

.home-disease-links a + a:before {
    content: "|";
    margin: 0 8px;
    color: #c7d2e2;
}

.home-tag-wall {
    margin-top: 14px;
}

.letter-directory {
    display: grid;
    grid-template-columns: repeat(13, minmax(0, 1fr));
    gap: 10px;
}

.letter-directory a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    background: #fff;
    color: #2f7fe8;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

.letter-directory a span {
    color: #98a2b3;
    font-size: 11px;
    font-weight: 500;
}

.letter-directory a:hover {
    border-color: #5ca2fc;
    background: #eef6ff;
}

.letter-group-list {
    display: grid;
    gap: 16px;
}

.letter-group-row {
    display: flex;
    gap: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid #edf2fb;
}

.letter-group-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.letter-group-title {
    flex: 0 0 48px;
    color: #2f7fe8;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}

.letter-group-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    min-width: 0;
}

.letter-group-links a {
    color: #44516a;
    line-height: 1.7;
}

.letter-group-links a:hover {
    color: #2f7fe8;
}

.symptom-empty-panel {
    margin-bottom: 18px;
}

.symptom-bodypart-list {
    display: grid;
    gap: 18px;
}

.symptom-bodypart-section {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

.symptom-bodypart-title {
    color: #20304d;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
}

.symptom-bodypart-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.symptom-bodypart-links__more {
    display: contents;
}

.symptom-bodypart-links__more[hidden] {
    display: none !important;
}

.symptom-bodypart-links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 6px 10px;
    border: 1px solid #e3ebf8;
    border-radius: 4px;
    background: #fbfdff;
    color: #344054;
    text-decoration: none;
    line-height: 1.5;
}

.symptom-bodypart-links a em {
    color: #8a94a6;
    font-size: 12px;
    font-style: normal;
}

.symptom-bodypart-links a:hover {
    border-color: #5ca2fc;
    color: #2f7fe8;
    background: #eef6ff;
}

.symptom-more-toggle {
    border: 0;
    padding: 0;
    background: transparent;
    color: #2f7fe8;
    font-size: 13px;
    line-height: 34px;
    cursor: pointer;
}

.symptom-page-hero,
.symptom-detail-hero,
.disease-page-hero,
.disease-detail-hero {
    margin-bottom: 24px;
}

.symptom-search-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.symptom-search-card {
    padding: 18px;
    border: 1px solid #e3ebf8;
    border-radius: 10px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.symptom-search-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.symptom-search-card__top a {
    color: #20304d;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}

.symptom-search-card__top span {
    color: #2f7fe8;
    font-size: 12px;
    white-space: nowrap;
}

.symptom-search-card p {
    margin: 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.7;
}

.symptom-search-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.symptom-search-card__actions a,
.symptom-detail-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: #eef6ff;
    color: #2f7fe8;
    text-decoration: none;
}

.symptom-search-card__actions a:hover,
.symptom-detail-actions a:hover {
    background: #dcecff;
}

.symptom-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-top: 16px;
}

.symptom-detail-meta span,
.symptom-detail-meta a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #f5f8fc;
    color: #506075;
    text-decoration: none;
}

.symptom-detail-meta a {
    background: #2f7fe8;
    color: #ffffff;
}

.symptom-tip-note {
    margin-top: 14px;
    color: #667085;
    font-size: 13px;
    line-height: 1.8;
}

.symptom-detail-actions {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}

.disease-tab-panel {
    display: grid;
    gap: 16px;
}

.disease-tab-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.disease-tab-button {
    min-height: 40px;
    padding: 0 16px;
    border: 1px solid #d8e4f5;
    border-radius: 999px;
    background: #f7faff;
    color: #425466;
    cursor: pointer;
}

.disease-tab-button.is-active {
    border-color: #2f7fe8;
    background: #2f7fe8;
    color: #ffffff;
}

.disease-tab-body {
    padding: 20px;
    border: 1px solid #e3ebf8;
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.disease-tab-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.disease-tab-title strong {
    display: block;
    color: #20304d;
    font-size: 20px;
    line-height: 1.4;
}

.disease-tab-title span {
    color: #667085;
    font-size: 13px;
}

.disease-tab-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.disease-tab-actions a,
.disease-tab-linkcard__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: #eef6ff;
    color: #2f7fe8;
    text-decoration: none;
}

.disease-tab-links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.disease-tab-linkcard {
    padding: 14px 16px;
    border: 1px solid #e7eef9;
    border-radius: 10px;
    background: #ffffff;
}

.disease-tab-linkcard__name {
    display: inline-block;
    margin-bottom: 12px;
    color: #20304d;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}

.disease-tab-linkcard__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.disease-overview-card,
.disease-knowledge-card {
    margin-top: 24px;
}

.disease-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.9fr);
    gap: 22px;
}

.disease-overview-copy p {
    margin: 0;
    color: #4d5b71;
    line-height: 1.9;
}

.disease-overview-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.disease-overview-actions a,
.disease-knowledge-feature__more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 16px;
    border-radius: 999px;
    background: #eef6ff;
    color: #2f7fe8;
    text-decoration: none;
}

.disease-headline-card {
    height: 100%;
    padding: 20px;
    border: 1px solid #e6edf8;
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.disease-headline-card h3 {
    margin: 12px 0 10px;
    color: #20304d;
    font-size: 22px;
    line-height: 1.5;
}

.disease-headline-card h3 a {
    color: inherit;
    text-decoration: none;
}

.disease-headline-card p {
    margin: 0;
    color: #667085;
    line-height: 1.8;
}

.disease-knowledge-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}

.disease-knowledge-button {
    min-height: 40px;
    padding: 0 16px;
    border: 1px solid #d7e4f6;
    border-radius: 999px;
    background: #f8fbff;
    color: #425466;
    cursor: pointer;
}

.disease-knowledge-button.is-active {
    border-color: #2f7fe8;
    background: #2f7fe8;
    color: #ffffff;
}

.disease-knowledge-panel {
    padding: 20px;
    border: 1px solid #e6edf8;
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #fafcff 100%);
}

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

.disease-knowledge-feature {
    padding: 18px;
    border: 1px solid #edf2fa;
    border-radius: 10px;
    background: #ffffff;
}

.disease-knowledge-feature h3 {
    margin: 12px 0 10px;
    color: #20304d;
    font-size: 22px;
    line-height: 1.5;
}

.disease-knowledge-feature h3 a {
    color: inherit;
    text-decoration: none;
}

.disease-knowledge-feature p {
    margin: 0;
    color: #667085;
    line-height: 1.8;
}

.disease-knowledge-feature__more {
    margin-top: 16px;
}

.disease-knowledge-listwrap {
    display: grid;
    gap: 14px;
}

.disease-knowledge-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.disease-knowledge-list li + li {
    margin-top: 10px;
}

.disease-knowledge-list a {
    color: #344054;
    text-decoration: none;
    line-height: 1.7;
}

.disease-knowledge-list a:hover {
    color: #2f7fe8;
}

.disease-knowledge-emptyline {
    color: #667085;
    font-size: 13px;
}

.disease-knowledge-children {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.disease-knowledge-children a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: #f4f8fe;
    color: #506075;
    text-decoration: none;
}

.platform-directory-panel {
    padding: 24px 26px;
}

.platform-directory-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #edf2fa;
}

.platform-directory-head strong {
    color: #20304d;
    font-size: 22px;
}

.platform-directory-head span {
    color: #667085;
    font-size: 13px;
}

.platform-link-matrix {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px 14px;
}

.platform-link-matrix a,
.platform-link-cloud a {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid #e3ebf8;
    border-radius: 6px;
    background: #fbfdff;
    color: #344054;
    text-decoration: none;
    line-height: 1.5;
}

.platform-link-matrix a:hover,
.platform-link-cloud a:hover {
    border-color: #5ca2fc;
    color: #2f7fe8;
    background: #eef6ff;
}

.platform-topic-count-matrix a {
    justify-content: space-between;
    gap: 12px;
}

.platform-topic-count-matrix a em {
    color: #8a94a6;
    font-size: 12px;
    font-style: normal;
    white-space: nowrap;
}

.platform-link-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
}

.platform-link-matrix-area a {
    justify-content: space-between;
}

.platform-link-matrix-area a strong {
    color: #20304d;
    font-size: 15px;
}

.platform-link-matrix-area a span {
    color: #667085;
    font-size: 12px;
}

.platform-hospital-groups {
    display: grid;
    gap: 22px;
}

.platform-hospital-group {
    display: grid;
    gap: 14px;
}

.platform-hospital-group + .platform-hospital-group {
    padding-top: 18px;
    border-top: 1px solid #edf2fa;
}

.platform-hospital-group-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
}

.platform-hospital-group-head strong {
    color: #20304d;
    font-size: 20px;
}

.platform-hospital-group-head span {
    display: block;
    margin-top: 4px;
    color: #667085;
    font-size: 13px;
}

.platform-hospital-group-head a {
    color: #5ca2fc;
    font-size: 13px;
    text-decoration: none;
    white-space: nowrap;
}

.platform-hospital-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.platform-hospital-item {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    background: #fbfdff;
}

.platform-hospital-media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 92px;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 34px;
    font-weight: 700;
}

.platform-hospital-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.platform-hospital-copy {
    min-width: 0;
}

.platform-hospital-topline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
    color: #667085;
    font-size: 12px;
}

.platform-hospital-topline em {
    font-style: normal;
    color: #2f7fe8;
}

.platform-hospital-copy h3 {
    margin: 0 0 8px;
}

.platform-hospital-copy h3 a {
    color: #20304d;
    font-size: 18px;
    line-height: 1.45;
}

.platform-hospital-copy p {
    margin: 0;
    color: #475467;
    line-height: 1.75;
    font-size: 13px;
}

.home-area-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
}

.home-area-links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid #dbe8fb;
    border-radius: 999px;
    background: #fff;
    color: #44516a;
    font-size: 12px;
    text-decoration: none;
}

.home-area-links a span {
    color: #98a2b3;
    font-size: 12px;
}

.home-area-links a:hover {
    border-color: #5ca2fc;
    background: #eef6ff;
    color: #2f7fe8;
}

.area-directory {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.area-page-hero {
    border: 1px solid #dbe8fb;
    background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 52%, #ffffff 100%);
}

.area-hotcity-matrix a {
    min-height: 92px;
}

.area-directory-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.area-directory-group {
    display: flex;
    gap: 16px;
    padding: 18px 20px;
    border: 1px solid #e4edf8;
    border-radius: 8px;
    background: #fff;
}

.area-directory-title {
    flex: 0 0 92px;
}

.area-directory-title a {
    color: #2f7fe8;
    font-size: 15px;
    font-weight: 700;
}

.area-directory-title span {
    display: block;
    margin-top: 6px;
    color: #98a2b3;
    font-size: 12px;
}

.area-directory-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    min-width: 0;
}

.area-directory-links a {
    color: #44516a;
    line-height: 1.7;
}

.area-directory-links a:hover {
    color: #2f7fe8;
}

.article-detail-section {
    padding-top: 12px;
}

.article-detail-card {
    border: 1px solid #edf2fa;
}

.article-detail-section .site-sidebar,
.article-detail-section .site-sidecard {
    min-width: 0;
    width: 100%;
}

.article-detail-section .site-sidebar {
    align-self: start;
    align-content: start;
}

.article-detail-section .site-sidecard {
    overflow: hidden;
}

.article-detail-section .site-side-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-width: 0;
}

.article-detail-section .site-side-list a {
    display: block;
    min-width: 0;
    overflow: hidden;
    line-height: 1.6;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.article-detail-section .site-side-list span {
    flex: 0 0 auto;
    white-space: nowrap;
}

.related-hospital-cards {
    display: grid;
    gap: 20px;
}

.related-hospital-card {
    min-width: 0;
    padding-bottom: 20px;
    border-bottom: 1px dashed #dce7f5;
}

.related-hospital-card:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.related-hospital-media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 2 / 1;
    overflow: hidden;
    border-radius: 6px;
    background: linear-gradient(135deg, #eaf4ff 0%, #5ca2fc 100%);
    color: #fff;
    font-size: 34px;
    font-weight: 700;
    text-decoration: none;
}

.related-hospital-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.related-hospital-card h3 {
    margin: 12px 0 0;
    font-size: 17px;
    line-height: 1.5;
}

.related-hospital-card h3 a {
    display: -webkit-box;
    overflow: hidden;
    color: #20304d;
    text-decoration: none;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.related-hospital-card h3 a:hover {
    color: #2f7fe8;
}

.related-hospital-card p {
    margin: 7px 0 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.6;
}

.related-hospital-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 12px;
}

.related-hospital-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 36px;
    border: 1px solid #5ca2fc;
    border-radius: 5px;
    color: #2f7fe8;
    text-decoration: none;
}

.related-hospital-actions a:first-child {
    background: #5ca2fc;
    color: #fff;
}

.related-hospital-actions a:hover {
    border-color: #2f7fe8;
    color: #2f7fe8;
}

.related-hospital-actions a:first-child:hover {
    background: #2f7fe8;
    color: #fff;
}

.article-detail-meta a {
    color: inherit;
    text-decoration: none;
}

.article-detail-meta a:hover {
    color: #2f7fe8;
}

.article-hospital-consult-card {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) 112px;
    gap: 14px;
    align-items: center;
    margin: 18px 0 24px;
    padding: 10px;
    border: 2px solid #5ca2fc;
    border-radius: 8px;
    background: #fff;
}

.article-hospital-consult-media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 96px;
    height: 52px;
    overflow: hidden;
    border-radius: 4px;
    background: #eef6ff;
    color: #2f7fe8;
    font-size: 24px;
    font-weight: 700;
    text-decoration: none;
}

.article-hospital-consult-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.article-hospital-consult-copy {
    min-width: 0;
}

.article-hospital-consult-copy > a {
    display: block;
    overflow: hidden;
    color: #20304d;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.article-hospital-consult-copy p {
    display: -webkit-box;
    margin: 4px 0 0;
    overflow: hidden;
    color: #667085;
    font-size: 12px;
    line-height: 1.6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.article-hospital-consult-copy span + span::before {
    content: " / ";
    color: #98a2b3;
}

.article-hospital-consult-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 112px;
    height: 38px;
    border: 0;
    border-radius: 5px;
    background: #2f7fe8;
    color: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

.article-hospital-consult-btn:hover {
    background: #1d6fd2;
    color: #fff;
}

.article-hospital-consult-btn.is-disabled {
    background: #c7d0dd;
    cursor: not-allowed;
}

.article-bottom-banner {
    overflow: hidden;
    background: #fff;
    line-height: 0;
}

.article-bottom-banner {
    margin-top: 28px;
}

.article-bottom-banner a,
.article-bottom-banner button {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.article-bottom-banner img {
    display: block;
    width: 100%;
    object-fit: contain;
}

.article-bottom-banner img {
    max-height: 96px;
}

.article-detail-disclaimer {
    margin-top: 24px;
    padding: 16px 18px;
    border: 1px dashed #d8e4f5;
    border-radius: 8px;
    background: #f8fbff;
    color: #667085;
    font-size: 13px;
    line-height: 1.85;
}

.article-detail-pager {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid #edf2fa;
}

.article-detail-pager p {
    margin: 0;
    color: #667085;
    line-height: 1.9;
}

.article-detail-pager a {
    color: #2b3445;
}

.article-detail-pager a:hover {
    color: #2f7fe8;
}

.article-detail-related {
    margin-top: 24px;
    border: 1px solid #edf2fa;
}

.article-detail-sectionhead {
    padding-bottom: 14px;
    border-bottom: 1px solid #edf2fa;
}

.article-detail-sectionhead h2 {
    margin: 0;
    color: #20304d;
    font-size: 20px;
    line-height: 1.4;
}

.article-detail-links {
    margin: 0;
    padding: 18px 0 0;
    list-style: none;
}

.article-detail-links li {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 0 0 14px;
    color: #667085;
    line-height: 1.8;
}

.article-detail-links li:last-child {
    padding-bottom: 0;
}

.article-detail-links a {
    color: #2b3445;
}

.article-detail-links a:hover {
    color: #2f7fe8;
}

.article-detail-links span {
    flex: 0 0 auto;
    color: #98a2b3;
    font-size: 12px;
}

.home-content-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.home-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.home-hospital-panel,
.home-doctor-list,
.home-topic-list {
    min-width: 0;
}

.home-hospital-list,
.home-doctor-list,
.home-topic-list {
    display: grid;
    gap: 10px;
}

.home-hospital-item,
.home-doctor-item {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding-bottom: 10px;
    border-bottom: 1px dashed #e7eef8;
}

.home-hospital-item:last-child,
.home-doctor-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.home-hospital-cover,
.home-doctor-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    overflow: hidden;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 34px;
    font-weight: 700;
}

.home-hospital-cover img,
.home-doctor-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-hospital-copy,
.home-doctor-copy {
    min-width: 0;
}

.home-hospital-copy h3,
.home-doctor-copy h3 {
    margin: 0 0 5px;
    color: #20304d;
    font-size: 16px;
    line-height: 1.35;
}

.home-hospital-copy p,
.home-doctor-copy p,
.home-topic-item p {
    margin: 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.6;
}

.home-topic-item {
    display: block;
    padding: 12px 14px;
    border: 1px solid #e4edf8;
    border-left: 3px solid #5ca2fc;
    border-radius: 6px;
    background: #fff;
    text-decoration: none;
}

.home-topic-item strong {
    display: block;
    margin-bottom: 5px;
    color: #20304d;
    font-size: 15px;
    line-height: 1.35;
}

.home-topic-item:hover {
    border-color: #5ca2fc;
    background: #f8fbff;
    text-decoration: none;
}

.home-legacy-hero {
    padding: 18px 0 10px;
}

.home-legacy-top {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr) 285px;
    gap: 16px;
    align-items: start;
}

.home-legacy-top .detail-card,
.home-legacy-section .detail-card {
    padding: 14px 16px;
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(31, 55, 90, .05);
}

.home-legacy-boxhead,
.home-legacy-panelhead,
.home-legacy-sidehead,
.home-legacy-subhead,
.home-legacy-directoryhead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.home-legacy-boxhead {
    padding-bottom: 8px;
    border-bottom: 1px solid #edf2fa;
}

.home-legacy-boxhead strong,
.home-legacy-panelhead strong,
.home-legacy-sidehead strong,
.home-legacy-directoryhead strong,
.home-legacy-subhead strong {
    color: #20304d;
    font-size: 18px;
    line-height: 1.4;
}

.home-legacy-boxhead span,
.home-legacy-directoryhead span,
.home-legacy-sidehead a,
.home-legacy-panelhead a,
.home-legacy-subhead a {
    color: #7b8ba5;
    font-size: 12px;
}

.home-legacy-search {
    gap: 8px;
    margin: 14px 0 12px;
}

.home-legacy-search input,
.home-legacy-search button {
    height: 40px;
    border-radius: 6px;
}

.home-legacy-search button {
    min-width: 78px;
}

.home-legacy-quickblock + .home-legacy-quickblock {
    margin-top: 12px;
}

.home-legacy-quickblock label {
    display: block;
    margin: 0 0 6px;
    color: #344054;
    font-size: 13px;
    font-weight: 600;
}

.home-legacy-minilinks,
.home-legacy-tagcloud {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 10px;
}

.home-legacy-minilinks a,
.home-legacy-tagcloud a {
    color: #4a566b;
    font-size: 13px;
    line-height: 1.6;
}

.home-legacy-minilinks a:hover,
.home-legacy-tagcloud a:hover {
    color: #5ca2fc;
}

.home-legacy-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}

.home-legacy-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    border: 1px solid #dbe6f4;
    border-radius: 6px;
    color: #2d3b55;
    font-size: 13px;
    background: #f8fbff;
}

.home-legacy-actions a:hover {
    border-color: #5ca2fc;
    color: #5ca2fc;
    text-decoration: none;
}

.home-legacy-titlebar {
    margin-bottom: 12px;
}

.home-legacy-titlebar h1 {
    margin: 0 0 6px;
    color: #20304d;
    font-size: 32px;
    line-height: 1.2;
}

.home-legacy-titlebar p {
    margin: 0;
    color: #667085;
    font-size: 14px;
    line-height: 1.6;
}

.home-legacy-navline {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-bottom: 14px;
    padding: 0 0 10px;
    border-bottom: 1px solid #edf2fa;
}

.home-legacy-navline a {
    position: relative;
    padding: 0 18px;
    color: #20304d;
    font-size: 15px;
    line-height: 1.6;
}

.home-legacy-navline a:first-child {
    padding-left: 0;
}

.home-legacy-navline a + a:before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 1px;
    height: 14px;
    background: #dbe6f4;
}

.home-legacy-directoryhead {
    margin-bottom: 10px;
}

.home-legacy-disease-directory {
    margin-bottom: 12px;
}

.home-legacy-subgrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #edf2fa;
}

.home-legacy-subblock {
    min-width: 0;
}

.home-legacy-subhead {
    margin-bottom: 8px;
}

.home-legacy-sideblock + .home-legacy-sideblock {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #edf2fa;
}

.home-legacy-newslist,
.home-legacy-arealist {
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
}

.home-legacy-newslist li,
.home-legacy-arealist li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
    border-bottom: 1px dashed #e7eef8;
}

.home-legacy-newslist li:last-child,
.home-legacy-arealist li:last-child {
    border-bottom: 0;
}

.home-legacy-newslist a,
.home-legacy-arealist a {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    color: #344054;
    font-size: 13px;
    line-height: 1.5;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.home-legacy-newslist span,
.home-legacy-arealist span {
    flex: 0 0 auto;
    color: #8a94a6;
    font-size: 12px;
}

.home-legacy-section {
    padding-top: 10px;
}

.home-legacy-midgrid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: 16px;
}

.home-legacy-hospital-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 14px;
    margin-top: 12px;
}

.home-legacy-hospital-item {
    min-width: 0;
}

.home-legacy-hospital-cover {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    border-radius: 6px;
    background: #edf4ff;
}

.home-legacy-hospital-cover img,
.home-legacy-hospital-cover span {
    width: 100%;
    height: 100%;
}

.home-legacy-hospital-cover img {
    object-fit: cover;
}

.home-legacy-hospital-cover span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5ca2fc;
    font-size: 34px;
    font-weight: 700;
}

.home-legacy-hospital-cover em {
    position: absolute;
    top: 8px;
    left: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1px 6px;
    border-radius: 3px;
    background: rgba(255, 153, 51, .92);
    color: #fff;
    font-size: 11px;
    font-style: normal;
}

.home-legacy-hospital-copy {
    margin-top: 8px;
}

.home-legacy-hospital-copy h3 {
    margin: 0 0 4px;
    font-size: 14px;
    line-height: 1.45;
}

.home-legacy-hospital-copy p {
    margin: 0;
    color: #667085;
    font-size: 12px;
    line-height: 1.5;
}

.home-legacy-bottomgrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.home-portal-hero {
    padding: 24px 0 12px;
}

.home-portal-hero .hero-search {
    gap: 8px;
    margin-top: 16px;
    max-width: 620px;
}

.home-portal-hero .hero-search input,
.home-portal-hero .hero-search button {
    height: 42px;
    border-radius: 6px;
}

.home-portal-hero .hero-search button {
    min-width: 92px;
    padding: 0 16px;
}

.home-portal-hero .site-sidecard,
.home-quick-column .site-sidecard,
.home-sidecard-news,
.home-content-grid .detail-card,
.home-bottom-grid .detail-card,
.home-content-grid .article-panel {
    padding: 14px 16px;
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(31, 55, 90, .05);
}

.legacy-home-shell {
    width: 100%;
    margin: 0 auto;
    padding-right: 15px;
    padding-left: 15px;
}

@media (min-width: 768px) {
    .legacy-home-shell {
        width: 750px;
    }
}

@media (min-width: 992px) {
    .legacy-home-shell {
        width: 970px;
    }
}

@media (min-width: 1200px) {
    .legacy-home-shell {
        width: 1170px;
    }
}

.legacy-home-header {
    background: #fff;
}

.legacy-hospital-header {
    background: #fff;
}

.legacy-hospital-topbar {
    background: #f7f7f7;
    border-bottom: 1px solid #e9e9e9;
}

.legacy-hospital-topbar .legacy-home-shell,
.legacy-hospital-nav .legacy-home-shell,
.legacy-hospital-footer-main .legacy-home-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.legacy-hospital-topbar .legacy-home-shell {
    min-height: 34px;
    gap: 12px;
    color: #7a7a7a;
    font-size: 12px;
}

.legacy-hospital-topbar-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.legacy-hospital-topbar-links a {
    color: #7a7a7a;
}

.legacy-hospital-brandbar {
    padding: 24px 0 20px;
}

.legacy-hospital-brandbar .legacy-home-shell {
    display: grid;
    grid-template-columns: max-content minmax(360px, 1fr);
    align-items: center;
    gap: 50px;
}

.legacy-hospital-identity {
    display: grid;
    gap: 12px;
    min-width: 0;
}

.legacy-hospital-logo {
    justify-content: flex-start;
}

.legacy-hospital-content {
    min-width: 0;
}

.legacy-hospital-nameblock {
    min-width: 0;
}

.legacy-hospital-nameblock h1 {
    margin: 0;
    color: #1f2b3d;
    font-size: 24px;
    line-height: 1.3;
    white-space: nowrap;
}

.legacy-hospital-nameblock span {
    display: block;
    margin-top: 6px;
    color: #6f7683;
    font-size: 13px;
    line-height: 1.5;
}

.legacy-hospital-search {
    width: 100%;
    margin: 0;
}

.legacy-hospital-search-main {
    display: flex;
    align-items: stretch;
}

.legacy-hospital-search-main input {
    flex: 1;
    height: 42px;
    padding: 0 14px;
    border: 1px solid #5ca2fc;
    border-right: 0;
    color: #2b2b2b;
    font-size: 14px;
    background: #fff;
}

.legacy-hospital-search-main button {
    width: 84px;
    border: 0;
    background: #5ca2fc;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}

.legacy-hospital-search-meta {
    display: flex;
    gap: 16px;
    padding-top: 6px;
    color: #6f6f6f;
    font-size: 12px;
}

.legacy-hospital-nav {
    background: #5ca2fc;
}

.legacy-hospital-nav .legacy-home-shell {
    justify-content: flex-start;
}

.legacy-hospital-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: 44px;
    flex: 1 1 0;
    color: #fff;
    font-size: 16px;
    text-decoration: none;
}

.legacy-hospital-nav a.is-active,
.legacy-hospital-nav a:hover {
    background: #2f7fe8;
}

.legacy-hospital-footer {
    margin-top: 24px;
    background: #f8fbff;
    border-top: 1px solid #e8e8e8;
}

.legacy-hospital-footer-main {
    padding: 22px 0 30px;
}

.legacy-hospital-footer-main .legacy-home-shell {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.legacy-hospital-footer-copy {
    min-width: 0;
}

.legacy-hospital-footer-copy p {
    margin: 0;
    color: #1f2b3d;
    font-size: 18px;
    font-weight: 700;
}

.legacy-hospital-footer-copy ul {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.legacy-hospital-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px dashed #d8e4f4;
}

.legacy-hospital-footer-copy li,
.legacy-hospital-footer-copy a,
.legacy-hospital-footer-links a {
    color: #6f7683;
    font-size: 13px;
    line-height: 1.9;
}

.legacy-hospital-footer-links a:hover {
    color: #2f7fe8;
}

.legacy-hospital-footer-site {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px dashed #d8e4f4;
}

.legacy-hospital-footer-site p {
    margin: 0;
    color: #6f7683;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.8;
}

.legacy-hospital-footer-site nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 22px;
    margin-top: 12px;
}

.legacy-hospital-footer-site a {
    color: #6f7683;
    font-size: 14px;
    line-height: 1.8;
    text-decoration: none;
}

.legacy-hospital-footer-site a:hover {
    color: #2f7fe8;
}

.legacy-hospital-footer-side {
    display: grid;
    justify-items: end;
    gap: 12px;
}

.legacy-hospital-footer-qrcodes {
    display: flex;
    gap: 16px;
}

.legacy-hospital-footer-qrcodes > div {
    display: grid;
    justify-items: center;
    gap: 6px;
    color: #667085;
    font-size: 12px;
}

.legacy-hospital-footer-qrcodes img {
    display: block;
    width: 132px;
    height: 132px;
    padding: 4px;
    border: 1px solid #e2e8f0;
    background: #fff;
    object-fit: contain;
}

.legacy-hospital-footer-wechat {
    color: #667085;
    font-size: 13px;
}

.legacy-home-topbar {
    background: #f7f7f7;
    border-bottom: 1px solid #e9e9e9;
}

.legacy-home-topbar .legacy-home-shell,
.legacy-home-brandbar .legacy-home-shell,
.legacy-home-nav .legacy-home-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.legacy-home-topbar .legacy-home-shell {
    min-height: 34px;
    color: #7a7a7a;
    font-size: 12px;
}

.legacy-home-topbar-actions {
    display: flex;
    gap: 14px;
}

.legacy-home-topbar-actions a {
    color: #7a7a7a;
}

.legacy-home-brandbar {
    padding: 18px 0 16px;
}

.legacy-home-logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}

.legacy-home-logo-image {
    display: block;
    width: auto;
    height: 58px;
    max-width: min(100%, 240px);
}

.legacy-home-logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 12px;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 32px;
    font-weight: 700;
}

.legacy-home-logo-text strong,
.legacy-home-logo-text em {
    display: block;
}

.legacy-home-logo-text strong {
    color: #1e2c21;
    font-size: 28px;
    line-height: 1.1;
}

.legacy-home-logo-text em {
    margin-top: 4px;
    color: #6b756f;
    font-size: 13px;
    font-style: normal;
}

.legacy-home-search {
    width: min(460px, 100%);
}

.legacy-home-search-main {
    display: flex;
    align-items: stretch;
}

.legacy-home-search-main input {
    flex: 1;
    height: 42px;
    padding: 0 14px;
    border: 2px solid #5ca2fc;
    border-right: 0;
    color: #2b2b2b;
    font-size: 14px;
    background: #fff;
}

.legacy-home-search-main button {
    width: 84px;
    border: 0;
    background: #5ca2fc;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}

.legacy-home-search-meta {
    display: flex;
    gap: 16px;
    padding-top: 6px;
    color: #6f6f6f;
    font-size: 12px;
}

.legacy-home-nav {
    background: #5ca2fc;
}

.legacy-home-nav .legacy-home-shell {
    justify-content: flex-start;
}

.legacy-home-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 116px;
    height: 42px;
    color: #fff;
    font-size: 16px;
    text-decoration: none;
}

.legacy-home-nav a.is-active,
.legacy-home-nav a:hover {
    background: #2f7fe8;
}

.legacy-home-page {
    padding: 14px 0 8px;
}

.legacy-home-toprow {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.legacy-home-mobile-quicklinks {
    display: none;
}

.legacy-home-quick,
.legacy-home-panel,
.legacy-home-banner {
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #e5e5e5;
}

.legacy-home-quick {
    height: 300px;
    overflow: hidden;
}

.legacy-home-quicktabs {
    display: flex;
    border-bottom: 1px solid #5ca2fc;
}

.legacy-home-quicktabs button {
    flex: 1;
    height: 42px;
    border: 0;
    background: #fff;
    color: #8d8d8d;
    font-size: 18px;
}

.legacy-home-quicktabs button.is-active {
    color: #5ca2fc;
    border-bottom: 2px solid #5ca2fc;
}

.legacy-home-quickpane {
    display: none;
    box-sizing: border-box;
    height: calc(100% - 43px);
    padding: 28px 15px 14px;
}

.legacy-home-quickpane.is-active {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.legacy-home-quickfield {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #333;
    font-size: 14px;
}

.legacy-home-quickfield span {
    flex: 0 0 43px;
}

.legacy-home-quickfield select {
    min-width: 0;
    flex: 1;
    height: 34px;
    padding: 0 8px;
    border: 1px solid #d8d8d8;
    background: #fff;
    color: #555;
}

.legacy-home-quicksubmit {
    width: 100%;
    height: 40px;
    margin: 0;
    border: 0;
    background: #5ca2fc;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
}

.legacy-home-quicksubmit:hover {
    background: #2f7fe8;
}

.legacy-home-quickmore {
    display: block;
    margin: 0;
    color: #777;
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}

.legacy-home-quickmore:hover {
    color: #5ca2fc;
}

.legacy-home-banner {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
}

.legacy-home-banner-stage {
    position: relative;
    width: 100%;
    height: 100%;
}

.legacy-home-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity .35s ease;
}

.legacy-home-slide.is-active {
    opacity: 1;
    pointer-events: auto;
}

.legacy-home-slide-media {
    display: block;
    width: 100%;
    height: 100%;
    background: #edf4ff;
}

.legacy-home-slide-media img,
.legacy-home-slide-media span {
    width: 100%;
    height: 100%;
}

.legacy-home-slide-media img {
    object-fit: cover;
}

.legacy-home-slide-media span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5ca2fc;
    font-size: 48px;
    font-weight: 700;
}

.legacy-home-slide-copy {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 14px 18px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .68) 100%);
}

.legacy-home-slide-copy h2,
.legacy-home-slide-copy p {
    margin: 0;
}

.legacy-home-slide-copy h2 a {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
}

.legacy-home-slide-copy p {
    margin-top: 6px;
    color: rgba(255, 255, 255, .88);
    font-size: 13px;
}

.legacy-home-banner-dots {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: flex;
    gap: 6px;
    z-index: 2;
}

.legacy-home-banner-dots button {
    width: 12px;
    height: 12px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, .6);
    color: transparent;
    overflow: hidden;
}

.legacy-home-banner-dots button.is-active {
    background: #5ca2fc;
}

.legacy-home-section {
    padding: 18px 0 0;
}

.legacy-home-panel {
    padding: 0 16px 16px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.legacy-home-sectionhead {
    position: relative;
    height: 44px;
    margin-bottom: 14px;
}

.legacy-home-sectionhead p {
    position: absolute;
    top: 22px;
    left: 0;
    right: 0;
    height: 1px;
    margin: 0;
    background: #ececec;
}

.legacy-home-sectionhead h2 {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding-right: 14px;
    background: #fff;
    color: #111;
    font-size: 20px;
    line-height: 44px;
}

.legacy-home-sectionhead h2 a {
    color: inherit;
}

.legacy-home-sectionmore {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    padding-left: 14px;
    background: #fff;
    color: #777;
    font-size: 13px;
    line-height: 44px;
}

.legacy-home-sectionmore:hover {
    color: #2f7fe8;
}

.legacy-home-sectionhead--tabs {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.legacy-home-sectionhead--tabs h2 {
    position: static;
    background: transparent;
    padding-right: 0;
}

.legacy-home-tabs {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
    margin: 0;
    padding: 0 0 4px;
    list-style: none;
}

.legacy-home-tabs li {
    padding: 6px 12px;
    color: #666;
    font-size: 13px;
    cursor: pointer;
}

.legacy-home-tabs li.is-active {
    color: #5ca2fc;
    border-bottom: 2px solid #5ca2fc;
    font-weight: 700;
}

.legacy-home-newsgrid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: 20px;
    align-items: stretch;
}

.legacy-home-newsgrid > *,
.legacy-home-newsfeature-list,
.legacy-home-newsfeature-list li,
.legacy-home-newslists,
.legacy-home-newscolumn,
.legacy-home-newscolumn ul,
.legacy-home-newscolumn li {
    min-width: 0;
}

.legacy-home-newsimage {
    position: relative;
    display: block;
    overflow: hidden;
    height: 176px;
    background: #eef4fb;
}

.legacy-home-newsimage img,
.legacy-home-newsimage span {
    width: 100%;
    height: 100%;
}

.legacy-home-newsimage img {
    object-fit: cover;
}

.legacy-home-newsimage span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5ca2fc;
    font-size: 28px;
    font-weight: 700;
}

.legacy-home-newsimage em {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0 14px;
    background: rgba(0, 0, 0, .55);
    color: #fff;
    font-size: 14px;
    font-style: normal;
    line-height: 38px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.legacy-home-newsfeature-list,
.legacy-home-newscolumn ul,
.legacy-home-articlelist {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.legacy-home-newsfeature-list li,
.legacy-home-newscolumn li,
.legacy-home-articlelist li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 32px;
    border-bottom: 1px dashed #ebebeb;
}

.legacy-home-newsfeature,
.legacy-home-newscolumn {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.legacy-home-newsfeature-list,
.legacy-home-newscolumn ul {
    flex: 1 1 auto;
}

.legacy-home-newsfeature-list {
    display: grid;
    grid-template-rows: repeat(4, minmax(32px, 1fr));
}

.legacy-home-newscolumn ul {
    display: grid;
    grid-template-rows: repeat(7, minmax(32px, 1fr));
    margin-top: 0;
}

.legacy-home-newscolumn h3 {
    margin: 0 0 6px;
    color: #1c1c1c;
    font-size: 16px;
}

.legacy-home-newslists {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
    overflow: hidden;
}

.legacy-home-newscolumn a,
.legacy-home-newsfeature-list a,
.legacy-home-articlelist a {
    min-width: 0;
    display: block;
    color: #333;
    font-size: 14px;
    line-height: 1.6;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.legacy-home-newscolumn a {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
}

.legacy-home-articlelist span {
    flex: 0 0 auto;
    color: #8a8a8a;
    font-size: 12px;
}

.legacy-home-tabpanel {
    display: none;
}

.legacy-home-tabpanel.is-active {
    display: block;
}

.legacy-home-hospitalgrid,
.legacy-home-doctorgrid,
.legacy-home-simplegrid {
    display: grid;
    gap: 16px;
}

.legacy-home-hospitalgrid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.legacy-home-hospitalcard-media,
.legacy-home-simplemedia {
    position: relative;
    display: block;
    overflow: hidden;
    background: #edf4ff;
}

.legacy-home-hospitalcard-media {
    height: 126px;
}

.legacy-home-simplemedia {
    height: 150px;
}

.legacy-home-hospitalcard-media img,
.legacy-home-hospitalcard-media span,
.legacy-home-simplemedia img,
.legacy-home-simplemedia span {
    width: 100%;
    height: 100%;
}

.legacy-home-hospitalcard-media img,
.legacy-home-simplemedia img {
    object-fit: cover;
}

.legacy-home-hospitalcard-media span,
.legacy-home-simplemedia span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5ca2fc;
    font-size: 30px;
    font-weight: 700;
}

.legacy-home-hospitalcard-media em {
    position: absolute;
    top: 8px;
    left: 8px;
    padding: 2px 6px;
    background: rgba(47, 127, 232, .92);
    color: #fff;
    font-size: 11px;
    font-style: normal;
}

.legacy-home-hospitalcard-copy,
.legacy-home-simplecopy {
    padding-top: 8px;
    text-align: center;
}

.legacy-home-hospitalcard-copy h3,
.legacy-home-simplecopy h3,
.legacy-home-doctorcopy h3,
.legacy-home-mini-copy h3 {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
}

.legacy-home-hospitalcard-copy p,
.legacy-home-simplecopy a,
.legacy-home-simplecopy p {
    margin: 4px 0 0;
    color: #6f6f6f;
    font-size: 12px;
}

.legacy-home-hospitalcard-actions,
.legacy-home-doctoractions {
    display: none;
}

.legacy-home-doctorgrid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.legacy-home-doctorcard {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 18px 14px 16px;
    border: 1px solid #e5e5e5;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.legacy-home-doctorcard:hover {
    border-color: #cfe2fb;
    box-shadow: 0 10px 24px rgba(47, 127, 232, .1);
    transform: translateY(-2px);
}

.legacy-home-doctoravatar,
.legacy-home-mini-avatar {
    display: block;
    overflow: hidden;
    border-radius: 50%;
    background: #edf4ff;
}

.legacy-home-doctoravatar {
    width: 88px;
    height: 88px;
    flex: 0 0 88px;
    border: 3px solid #eef6ff;
}

.legacy-home-mini-avatar {
    width: 64px;
    height: 64px;
}

.legacy-home-doctoravatar img,
.legacy-home-doctoravatar span,
.legacy-home-mini-avatar img,
.legacy-home-mini-avatar span {
    width: 100%;
    height: 100%;
}

.legacy-home-doctoravatar img,
.legacy-home-mini-avatar img {
    object-fit: cover;
}

.legacy-home-doctoravatar span,
.legacy-home-mini-avatar span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #5ca2fc;
    font-size: 26px;
    font-weight: 700;
}

.legacy-home-doctorcopy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    text-align: center;
}

.legacy-home-doctorcopy h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 2px 8px;
    margin-top: 12px;
}

.legacy-home-doctorcopy h3 a {
    color: #1677ff;
    font-size: 16px;
}

.legacy-home-doctorcopy h3 span {
    color: #55708f;
    font-size: 12px;
    font-weight: 400;
}

.legacy-home-doctormeta {
    min-height: 40px;
    margin: 8px 0 0;
    color: #444;
    font-size: 13px;
    line-height: 1.55;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.legacy-home-doctorsummary {
    min-height: 80px;
    margin: 10px 0 12px;
    padding: 9px 10px;
    border-radius: 4px;
    background: #f7faff;
    color: #666;
    font-size: 12px;
    line-height: 1.65;
    text-align: left;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.legacy-home-doctoraction {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 34px;
    margin-top: auto;
    border: 1px solid #5ca2fc;
    border-radius: 18px;
    color: #5ca2fc;
    font-size: 13px;
    text-decoration: none;
}

.legacy-home-doctoraction:hover {
    background: #5ca2fc;
    color: #fff;
}

.legacy-home-double {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.legacy-home-panel--articles .legacy-home-articlelist {
    display: grid;
    grid-template-rows: repeat(10, minmax(32px, 1fr));
    flex: 1 1 auto;
    margin-top: 0;
}

.legacy-home-panel--articles .legacy-home-articlelist li {
    min-height: 0;
}

.legacy-home-querygrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.legacy-home-querycard {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 10px;
    margin: 0;
    min-height: 108px;
    align-items: start;
}

.legacy-home-querycard dt {
    margin: 0;
    align-self: start;
}

.legacy-home-querycard dt a {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    height: 74px;
    aspect-ratio: 1 / 1;
    min-height: 0;
    background: linear-gradient(135deg, #5ca2fc 0%, #2f7fe8 100%);
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

.legacy-home-querycard:nth-child(2) dt a {
    background: linear-gradient(135deg, #a78bfa 0%, #7c3aed 100%);
}

.legacy-home-querycard:nth-child(3) dt a {
    background: linear-gradient(135deg, #2dd4bf 0%, #0f8f83 100%);
}

.legacy-home-querycard:nth-child(4) dt a {
    background: linear-gradient(135deg, #fbbf24 0%, #e07a08 100%);
}

.legacy-home-querycard:nth-child(5) dt a {
    background: linear-gradient(135deg, #fb7185 0%, #e11d48 100%);
}

.legacy-home-querycard:nth-child(6) dt a {
    background: linear-gradient(135deg, #22d3ee 0%, #0284c7 100%);
}

.legacy-home-querycard:nth-child(7) dt a {
    background: linear-gradient(135deg, #818cf8 0%, #4f46e5 100%);
}

.legacy-home-querycard:nth-child(8) dt a {
    background: linear-gradient(135deg, #4ade80 0%, #16a34a 100%);
}

.legacy-home-querycard dd {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 12px;
    margin: 0;
    min-height: 108px;
}

.legacy-home-querycard dd a {
    color: #333;
    font-size: 13px;
    line-height: 1.65;
}

.legacy-home-querycard dd a:hover {
    color: #2f7fe8;
}

.legacy-home-tagcloud,
.legacy-home-directory-group div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
}

.legacy-home-tagcloud a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 0 12px;
    border: 1px solid #d9d9d9;
    border-radius: 16px;
    color: #333;
    font-size: 13px;
}

.legacy-home-triple {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.legacy-home-panel--reviews {
    grid-column: 1 / -1;
}

.legacy-home-simplegrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-content: start;
}

.legacy-home-panel--hospitals .legacy-home-simplemedia {
    height: 172px;
}

.legacy-home-mini-doctors,
.legacy-home-reviewlist {
    display: grid;
    gap: 12px;
    align-content: start;
}

.legacy-home-mini-doctors {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(5, minmax(0, 1fr));
    flex: 1 1 auto;
    align-content: stretch;
}

.legacy-home-reviewlist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
    flex: 0 0 auto;
    grid-auto-rows: auto;
}

.legacy-home-mini-doctor {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    box-sizing: border-box;
    padding: 10px;
    border: 1px solid #e8eef7;
    background: #fbfdff;
}

.legacy-home-panel--doctors .legacy-home-mini-avatar {
    width: 72px;
    height: 72px;
}

.legacy-home-mini-copy {
    min-width: 0;
}

.legacy-home-mini-copy h3,
.legacy-home-mini-copy p,
.legacy-home-mini-copy span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.legacy-home-simplecard,
.legacy-home-mini-doctor {
    min-width: 0;
}

.legacy-home-mini-copy p,
.legacy-home-mini-copy span {
    display: block;
    margin: 4px 0 0;
    color: #666;
    font-size: 12px;
}

.legacy-home-review {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 0;
    padding-bottom: 12px;
    border-bottom: 1px dashed #e5e5e5;
}

.legacy-home-review:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.legacy-home-review:nth-last-child(2) {
    padding-bottom: 0;
    border-bottom: 0;
}

.legacy-home-review h3,
.legacy-home-review p {
    margin: 0;
}

.legacy-home-review h3 {
    color: #333;
    font-size: 13px;
    line-height: 1.55;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.legacy-home-review h3 strong {
    color: #1b1b1b;
}

.legacy-home-review p {
    margin-top: 4px;
    color: #666;
    font-size: 12px;
    line-height: 1.65;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.legacy-home-reviewmeta {
    display: flex;
    justify-content: space-between;
    margin-top: 4px;
    color: #8a8a8a;
    font-size: 12px;
}

.legacy-home-empty {
    color: #8a8a8a;
    font-size: 13px;
}

.legacy-home-section--nav {
    padding-bottom: 18px;
}

.legacy-home-directory {
    display: grid;
    gap: 12px;
}

.legacy-home-directory--legacy {
    gap: 8px;
}

.legacy-home-directory-line {
    display: grid;
    gap: 8px;
}

.legacy-home-directory-block {
    color: #4a4a4a;
    font-size: 13px;
    line-height: 1.9;
}

.legacy-home-directory-parent {
    display: inline-block;
    font-weight: 700;
}

.legacy-home-directory-parent a {
    color: #1f6fd5;
}

.legacy-home-directory-sep {
    margin: 0 4px;
    color: #a0a0a0;
}

.legacy-home-directory-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.legacy-home-directory-group strong {
    display: inline-block;
    margin-bottom: 8px;
    color: #2f7fe8;
    font-size: 14px;
}

.legacy-home-directory-group a {
    color: #4a4a4a;
    font-size: 13px;
    line-height: 1.7;
}

.legacy-topic-page {
    padding: 12px 0 36px;
}

.legacy-topic-fastchannel,
.legacy-topic-titlebar,
.legacy-topic-topgrid,
.legacy-topic-sectioncard,
.legacy-topic-articlecard,
.legacy-topic-sidecard {
    background: #fff;
    border: 1px solid #e6edf8;
}

.legacy-topic-fastchannel {
    padding: 12px 16px;
}

.legacy-topic-fastchannel ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.legacy-topic-fastchannel li + li {
    margin-top: 8px;
}

.legacy-topic-fastchannel-group {
    display: inline;
    font-size: 13px;
    line-height: 1.9;
}

.legacy-topic-fastchannel-group + .legacy-topic-fastchannel-group {
    margin-left: 12px;
}

.legacy-topic-fastchannel-group span {
    font-weight: 700;
}

.legacy-topic-fastchannel-group span a,
.legacy-topic-fastchannel-group a {
    color: #4a4a4a;
}

.legacy-topic-fastchannel-group span.is-active a,
.legacy-topic-fastchannel-group a.is-active,
.legacy-topic-titlebar span a.is-active,
.legacy-topic-tagwall a.is-active {
    color: #1f6fd5;
}

.legacy-topic-fastchannel-group em {
    margin: 0 4px;
    color: #a0a0a0;
    font-style: normal;
}

.legacy-topic-titlebar {
    margin-top: 12px;
    padding: 10px 14px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.legacy-topic-titlebar strong {
    color: #1f6fd5;
    font-size: 26px;
    line-height: 1.2;
    white-space: nowrap;
}

.legacy-topic-titlebar span {
    color: #7d7d7d;
    font-size: 13px;
    line-height: 2;
}

.legacy-topic-titlebar span a {
    margin-right: 12px;
    color: #4a4a4a;
}

.legacy-topic-topgrid {
    margin-top: 12px;
    padding: 14px;
    display: grid;
    grid-template-columns: 286px minmax(0, 1fr) 320px;
    gap: 14px;
}

.legacy-topic-focus-media {
    position: relative;
    display: block;
    width: 100%;
    height: 220px;
    overflow: hidden;
    background: linear-gradient(135deg, #eef5ff, #d6e7ff);
}

.legacy-topic-focus-media img,
.legacy-topic-focus-media span {
    width: 100%;
    height: 100%;
}

.legacy-topic-focus-media img {
    object-fit: cover;
}

.legacy-topic-focus-media span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f6fd5;
    font-size: 28px;
    font-weight: 700;
}

.legacy-topic-focus-media em {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 10px 12px;
    background: rgba(0, 0, 0, 0.58);
    color: #fff;
    font-size: 14px;
    font-style: normal;
    line-height: 1.5;
}

.legacy-topic-focus-list,
.legacy-topic-headline-list,
.legacy-topic-recommend-list,
.legacy-topic-sectionlist,
.legacy-topic-articlelist,
.legacy-topic-sidelist {
    margin: 0;
    padding: 0;
    list-style: none;
}

.legacy-topic-focus-list {
    margin-top: 8px;
}

.legacy-topic-focus-list li,
.legacy-topic-headline-list li,
.legacy-topic-recommend-list li,
.legacy-topic-sectionlist li,
.legacy-topic-sidelist li {
    border-bottom: 1px dashed #e5ebf5;
}

.legacy-topic-focus-list li a,
.legacy-topic-headline-list li a,
.legacy-topic-recommend-list li a,
.legacy-topic-sectionlist li a,
.legacy-topic-sidelist li a {
    display: block;
    padding: 6px 0;
    color: #3f3f3f;
    font-size: 13px;
    line-height: 1.55;
}

.legacy-topic-headline h2,
.legacy-topic-recommend h2 {
    margin: 0 0 10px;
    padding-bottom: 8px;
    border-bottom: 2px solid #1f6fd5;
    color: #1f6fd5;
    font-size: 16px;
}

.legacy-topic-headline-lead {
    padding-bottom: 10px;
    border-bottom: 1px solid #edf2fa;
}

.legacy-topic-headline-lead h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.4;
}

.legacy-topic-headline-lead p {
    margin: 10px 0 0;
    color: #666;
    font-size: 13px;
    line-height: 1.7;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.legacy-topic-recommend-list li.is-empty {
    padding: 10px 0;
    color: #8a8a8a;
}

.legacy-topic-sectioncard {
    margin-top: 12px;
    padding: 14px;
}

.legacy-topic-sectionhead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #e9f1fd;
}

.legacy-topic-sectionhead h2 {
    margin: 0;
    font-size: 18px;
}

.legacy-topic-sectionhead h2 a {
    color: #1f6fd5;
}

.legacy-topic-sectionactions {
    display: flex;
    gap: 10px;
}

.legacy-topic-sectionactions a {
    color: #6d6d6d;
    font-size: 12px;
}

.legacy-topic-sectionbody {
    margin-top: 12px;
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.legacy-topic-sectionfeature {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

.legacy-topic-sectionimage {
    width: 100%;
    height: 84px;
    overflow: hidden;
    background: linear-gradient(135deg, #eef5ff, #d6e7ff);
}

.legacy-topic-sectionimage img,
.legacy-topic-sectionimage span {
    width: 100%;
    height: 100%;
}

.legacy-topic-sectionimage img {
    object-fit: cover;
}

.legacy-topic-sectionimage span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f6fd5;
    font-size: 24px;
    font-weight: 700;
}

.legacy-topic-sectioncopy strong {
    display: block;
    margin-top: 0;
    color: #1f1f1f;
    font-size: 15px;
    line-height: 1.45;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.legacy-topic-sectioncopy p {
    margin: 6px 0 0;
    color: #666;
    font-size: 13px;
    line-height: 1.65;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.legacy-topic-sectionlist {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 18px;
    align-content: start;
}

.legacy-topic-sectionlist li {
    min-width: 0;
}

.legacy-topic-columns {
    margin-top: 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    gap: 16px;
    align-items: start;
}

.legacy-topic-articlecard,
.legacy-topic-sidecard {
    padding: 16px;
}

.legacy-topic-articlehead,
.legacy-topic-sidehead {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 2px solid #e9f1fd;
}

.legacy-topic-articlehead h2,
.legacy-topic-sidehead h3 {
    margin: 0;
    color: #1f6fd5;
    font-size: 18px;
}

.legacy-topic-articlehead span {
    color: #8a8a8a;
    font-size: 13px;
}

.legacy-topic-articlelist li {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid #edf2fa;
}

.legacy-topic-articlemain {
    min-width: 0;
}

.legacy-topic-articlemain h3 {
    margin: 0;
    font-size: 18px;
    line-height: 1.55;
}

.legacy-topic-articlemain p {
    margin: 10px 0 0;
    color: #666;
    font-size: 14px;
    line-height: 1.8;
}

.legacy-topic-intro p {
    margin: 0;
    color: #666;
    font-size: 15px;
    line-height: 1.9;
}

.legacy-topic-intro-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin-top: 16px;
}

.legacy-topic-intro-actions a {
    display: inline-block;
    padding: 8px 16px;
    background: #1f6fd5;
    color: #fff;
    font-size: 13px;
}

.legacy-topic-intro-actions span {
    color: #8a8a8a;
    font-size: 13px;
}

.legacy-topic-articlemeta {
    min-width: 120px;
    color: #8a8a8a;
    font-size: 12px;
    text-align: right;
}

.legacy-topic-articlemeta span,
.legacy-topic-articlemeta em {
    display: block;
    font-style: normal;
}

.legacy-topic-articlemeta em {
    margin-top: 8px;
}

.legacy-topic-side {
    display: grid;
    gap: 12px;
}

.legacy-topic-hospitallist {
    margin-top: 14px;
    display: grid;
    gap: 12px;
}

.legacy-topic-hospitalitem {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

.legacy-topic-hospitalmedia {
    width: 72px;
    height: 72px;
    overflow: hidden;
    background: linear-gradient(135deg, #eef5ff, #d6e7ff);
}

.legacy-topic-hospitalmedia img,
.legacy-topic-hospitalmedia span {
    width: 100%;
    height: 100%;
}

.legacy-topic-hospitalmedia img {
    object-fit: cover;
}

.legacy-topic-hospitalmedia span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1f6fd5;
    font-size: 26px;
    font-weight: 700;
}

.legacy-topic-hospitalname {
    color: #1f1f1f;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
}

.legacy-topic-hospitalcopy p {
    margin: 8px 0 0;
    color: #666;
    font-size: 13px;
    line-height: 1.7;
}

.legacy-topic-tagwall {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.legacy-topic-tagwall a {
    padding: 6px 12px;
    background: #f5f9ff;
    color: #4a4a4a;
    font-size: 13px;
}

.legacy-topic-empty {
    padding: 20px 0;
    color: #8a8a8a;
    font-size: 14px;
    text-align: center;
}

.platform-page { padding: 24px 0 40px; background: #f5f7fa; }
.platform-page-breadcrumb { margin-bottom: 14px; color: #8a8f99; font-size: 13px; }
.platform-page-breadcrumb a { color: #5d6570; }
.platform-page-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 20px; align-items: start; }
.platform-page-nav, .platform-page-card { background: #fff; border: 1px solid #e7e9ed; }
.platform-page-nav a { display: block; padding: 14px 20px; border-bottom: 1px solid #eef0f2; color: #444; font-size: 15px; }
.platform-page-nav a:last-child { border-bottom: 0; }
.platform-page-nav a.active { color: #fff; background: #2f7fe8; }
.platform-page-card { min-height: 420px; padding: 26px 34px 40px; }
.platform-page-card h1 { margin: 0 0 24px; padding-bottom: 15px; border-bottom: 1px solid #eceef1; color: #242932; font-size: 24px; }
.platform-page-content { color: #444; font-size: 15px; line-height: 1.9; }
.platform-feedback-form { max-width: 720px; margin-top: 24px; }
.platform-feedback-form > label { display: block; margin: 18px 0 8px; color: #333; font-weight: 600; }
.platform-feedback-form em { color: #e5484d; font-style: normal; }
.platform-feedback-types { display: flex; flex-wrap: wrap; gap: 12px 28px; }
.platform-feedback-types label { font-weight: 400; }
.platform-feedback-form textarea, .platform-feedback-form > input { width: 100%; padding: 10px 12px; border: 1px solid #d8dce2; border-radius: 3px; outline: none; }
.platform-feedback-form textarea:focus, .platform-feedback-form > input:focus { border-color: #2f7fe8; }
.platform-feedback-privacy { margin: 12px 0; color: #8a8f99; font-size: 13px; }
.platform-feedback-form button { padding: 10px 34px; border: 0; border-radius: 3px; color: #fff; background: #2f7fe8; cursor: pointer; }
.sitemap-page { padding: 28px 0 46px; background: #f5f7fa; }
.sitemap-breadcrumb { margin-bottom: 14px; color: #8a8f99; font-size: 13px; }
.sitemap-breadcrumb a { color: #5d6570; }
.sitemap-card { padding: 34px 42px 46px; background: #fff; border: 1px solid #e7e9ed; }
.sitemap-heading { padding-bottom: 24px; border-bottom: 1px solid #e8ebef; text-align: center; }
.sitemap-heading h1 { margin: 0; color: #202632; font-size: 28px; font-weight: 500; }
.sitemap-heading h1:after { display: block; width: 38px; height: 3px; margin: 13px auto 0; background: #2f7fe8; content: ''; }
.sitemap-heading p { margin: 13px 0 0; color: #8a8f99; font-size: 14px; }
.sitemap-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 54px; padding-top: 30px; }
.sitemap-group { padding: 4px 0 24px; border-bottom: 1px solid #edf0f3; }
.sitemap-group h2 { margin: 0 0 15px; color: #28313c; font-size: 18px; font-weight: 500; }
.sitemap-group h2 i { width: 24px; color: #2f7fe8; text-align: center; }
.sitemap-links { display: flex; flex-wrap: wrap; gap: 10px 0; }
.sitemap-links a { width: 25%; min-width: 92px; padding-right: 10px; color: #59616b; font-size: 14px; line-height: 1.65; }
.sitemap-links a:hover { color: #2f7fe8; }
.platform-contact-intro { margin-bottom: 28px; }
.platform-contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 72px; row-gap: 42px; max-width: 900px; padding: 12px 18px 20px; }
.platform-contact-item { display: flex; align-items: center; min-height: 112px; }
.platform-contact-item > i { flex: 0 0 68px; color: #174b8b; font-size: 48px; text-align: center; }
.platform-contact-detail { min-width: 0; padding: 2px 0 2px 24px; border-left: 1px solid #c8ccd1; }
.platform-contact-detail h2 { margin: 0 0 12px; padding: 0; border: 0; color: #222; font-size: 21px; font-weight: 500; line-height: 1.25; }
.platform-contact-detail p { margin: 5px 0; color: #3d4147; font-size: 15px; line-height: 1.55; word-break: break-all; }

@media (max-width: 767px) {
    .platform-page-layout { display: block; }
    .platform-page-nav { display: flex; margin-bottom: 15px; overflow-x: auto; }
    .platform-page-nav a { flex: 0 0 auto; border-right: 1px solid #eef0f2; border-bottom: 0; }
    .platform-page-card { min-height: 0; padding: 20px 16px 28px; }
    .platform-page-card h1 { font-size: 21px; }
    .sitemap-card { padding: 25px 18px 30px; }
    .sitemap-heading h1 { font-size: 23px; }
    .sitemap-groups { grid-template-columns: 1fr; gap: 18px; padding-top: 22px; }
    .sitemap-links a { width: 33.333%; }
    .platform-contact-grid { grid-template-columns: 1fr; gap: 22px; padding: 8px 0; }
    .platform-contact-item { min-height: 86px; }
    .platform-contact-item > i { flex-basis: 54px; font-size: 38px; }
    .platform-contact-detail { padding-left: 17px; }
    .platform-contact-detail h2 { font-size: 18px; }
}

.legacy-home-footer {
    padding: 20px 0 24px;
    background: #fff;
    border-top: 1px solid #e8e8e8;
}

.legacy-home-footer .legacy-home-shell {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 34px;
}

.legacy-friend-links {
    margin-top: 24px;
    background: #fff;
    border-top: 1px solid #e8e8e8;
}

.legacy-friend-links + .legacy-home-footer,
.legacy-friend-links + .legacy-hospital-footer {
    margin-top: 0;
}

.legacy-friend-links .legacy-home-shell {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding-top: 16px;
    padding-bottom: 16px;
}

.legacy-friend-links strong {
    flex: 0 0 auto;
    color: #2a3443;
    font-size: 14px;
    line-height: 24px;
}

.legacy-friend-links-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 18px;
    min-width: 0;
}

.legacy-friend-links-list a {
    color: #777f8c;
    font-size: 13px;
    line-height: 24px;
}

.legacy-friend-links-list a:hover {
    color: #2f7fe8;
}

.legacy-friend-links--hospital {
    background: #f8fbff;
}

.legacy-home-footer-brand {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4px 0;
    border-right: 1px solid #d7d7d7;
}

.legacy-home-footer-domain {
    margin-bottom: 14px;
    color: #222;
    font-size: 14px;
    font-family: Consolas, Monaco, monospace;
    letter-spacing: .2px;
}

.legacy-home-footer-title {
    width: 220px;
    margin-left: -5px;
    color: #111;
    font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 2px;
    text-align: center;
}

.legacy-home-logo--footer .legacy-home-logo-mark {
    width: 50px;
    height: 50px;
    font-size: 28px;
}

.legacy-home-logo--footer .legacy-home-logo-image {
    width: auto;
    max-width: 230px;
    height: 76px;
    margin-left: -5px;
    object-fit: contain;
    object-position: left center;
}

.legacy-home-footer-info a {
    color: #333;
}

.legacy-home-footer-info a:hover,
.legacy-home-footer-info a:focus {
    color: #111;
}

.legacy-home-footer-links {
    display: flex;
    align-items: center;
    padding-bottom: 9px;
    border-bottom: 1px solid #bfbfbf;
    white-space: nowrap;
}

.legacy-home-footer-links span,
.legacy-home-footer-links a {
    color: #333;
    font-size: 18px;
    line-height: 24px;
}

.legacy-home-footer-links > * + *::before {
    content: "|";
    display: inline-block;
    margin: 0 20px;
    color: #333;
}

.legacy-home-footer-info {
    padding-top: 7px;
    color: #333;
}

.legacy-home-footer-info p {
    margin: 0;
    font-size: 13px;
    line-height: 21px;
}

.legacy-home-footer-beian { display: flex; align-items: center; gap: 5px; }
.legacy-home-footer-beian img { width: 20px; height: 20px; }
.legacy-home-footer-beian a { color: inherit; }

.legacy-home-footer-info .legacy-home-footer-notice {
    font-size: 16px;
    line-height: 24px;
}

.legacy-home-footer-info .legacy-home-footer-copy {
    font-size: 18px;
    line-height: 26px;
}

@media (max-width: 1024px) {
    .legacy-home-footer .legacy-home-shell {
        grid-template-columns: 210px minmax(0, 1fr);
        gap: 20px;
    }

    .legacy-home-footer-links span,
    .legacy-home-footer-links a {
        font-size: 14px;
    }

    .legacy-home-footer-links > * + *::before {
        margin: 0 8px;
    }

    .legacy-home-toprow,
    .legacy-home-newsgrid,
    .legacy-home-double {
        grid-template-columns: minmax(0, 1fr);
    }

    .legacy-home-hospitalgrid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .legacy-home-doctorgrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .legacy-hospital-brandbar .legacy-home-shell {
        grid-template-columns: max-content minmax(280px, 1fr);
        gap: 28px;
    }

    .legacy-hospital-nameblock h1 {
        font-size: 21px;
    }

    .legacy-hospital-nav a {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .legacy-home-footer .legacy-home-shell {
        display: block;
    }

    .legacy-home-footer-brand {
        align-items: center;
        width: auto;
        padding: 0 0 16px;
        border-right: 0;
        border-bottom: 1px solid #e8e8e8;
    }

    .legacy-home-footer-domain {
        margin-bottom: 8px;
    }

    .legacy-home-footer-title {
        font-size: 26px;
    }

    .legacy-home-footer-links {
        flex-wrap: wrap;
        justify-content: center;
        gap: 6px 16px;
        padding: 14px 0 10px;
        white-space: normal;
    }

    .legacy-home-footer-links span,
    .legacy-home-footer-links a {
        font-size: 14px;
    }

    .legacy-home-footer-links > * + *::before {
        display: none;
    }

    .legacy-home-footer-info {
        text-align: center;
    }

    .legacy-home-footer-beian { justify-content: center; }

    .legacy-home-footer-info p,
    .legacy-home-footer-info .legacy-home-footer-notice,
    .legacy-home-footer-info .legacy-home-footer-copy {
        font-size: 12px;
        line-height: 20px;
    }

    .legacy-home-triple,
    .legacy-home-reviewlist {
        grid-template-columns: 1fr;
    }

    .legacy-home-review:nth-last-child(2) {
        padding-bottom: 12px;
        border-bottom: 1px dashed #e5e5e5;
    }

    .legacy-home-banner {
        width: 100%;
        height: auto;
        aspect-ratio: 12 / 5;
    }

    .legacy-home-topbar .legacy-home-shell,
    .legacy-home-brandbar .legacy-home-shell,
    .legacy-home-nav .legacy-home-shell {
        flex-direction: column;
        align-items: stretch;
    }

    .legacy-home-topbar .legacy-home-shell,
    .legacy-home-brandbar {
        gap: 10px;
    }

    .legacy-home-logo {
        justify-content: center;
    }

    .legacy-home-logo-image {
        max-width: 100%;
    }

    .legacy-home-search {
        width: 100%;
    }

    .legacy-home-nav a {
        min-width: 0;
        flex: 1 1 33.333%;
    }

    .legacy-home-nav .legacy-home-shell {
        flex-direction: row;
        flex-wrap: wrap;
    }

    /* 首页移动端头部：搜索框、横滑导航、Banner、快捷入口。 */
    .legacy-home-topbar {
        display: none;
    }

    .legacy-home-brandbar {
        padding: 8px 10px;
        background: #fff;
    }

    .legacy-home-brandbar .legacy-home-shell {
        display: block;
    }

    .legacy-home-logo {
        display: none;
    }

    .legacy-home-search-main {
        height: 34px;
    }

    .legacy-home-search-main input {
        height: 34px;
        border: 1px solid #c9d7e7;
        border-radius: 18px 0 0 18px;
        font-size: 12px;
    }

    .legacy-home-search-main button {
        width: 42px;
        border-radius: 0 18px 18px 0;
        background: #f1f6fb;
        color: #7c8fa3;
        font-size: 0;
    }

    .legacy-home-search-main button::before {
        content: '\f002';
        font-family: FontAwesome;
        font-size: 14px;
    }

    .legacy-home-search-meta {
        display: none;
    }

    .legacy-home-nav {
        overflow: hidden;
        border-top: 1px solid #edf1f5;
        border-bottom: 1px solid #dce5ee;
        background: #fff;
    }

    .legacy-home-nav .legacy-home-shell {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .legacy-home-nav .legacy-home-shell::-webkit-scrollbar {
        display: none;
    }

    .legacy-home-nav a {
        flex: 0 0 auto;
        min-width: 72px;
        height: 38px;
        color: #4a5969;
        font-size: 13px;
    }

    .legacy-home-nav a.is-active,
    .legacy-home-nav a:hover {
        background: #3196e9;
        color: #fff;
    }

    .legacy-home-toprow {
        display: flex;
        flex-direction: column;
        gap: 8px;
        width: 100%;
    }

    .legacy-home-page > .legacy-home-shell {
        width: 100%;
        max-width: none;
        padding-right: 10px;
        padding-left: 10px;
    }

    .legacy-home-toprow .legacy-home-quick {
        display: none;
    }

    .legacy-home-banner {
        order: 0;
        border: 0;
        aspect-ratio: 1.75 / 1;
    }

    .legacy-home-mobile-quicklinks {
        display: grid;
        order: 1;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .legacy-home-mobile-quicklink {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-width: 0;
        min-height: 72px;
        padding: 10px 12px;
        border-radius: 7px;
        background: #fff;
        box-shadow: 0 2px 7px rgba(47, 79, 114, .14);
        color: #223f61;
        text-decoration: none;
    }

    .legacy-home-mobile-quicklink span {
        display: block;
        min-width: 0;
    }

    .legacy-home-mobile-quicklink strong,
    .legacy-home-mobile-quicklink em {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .legacy-home-mobile-quicklink strong {
        font-size: 16px;
        line-height: 1.4;
    }

    .legacy-home-mobile-quicklink em {
        margin-top: 4px;
        color: #5b6d80;
        font-size: 11px;
        font-style: normal;
    }

    .legacy-home-mobile-quicklink img {
        display: block;
        flex: 0 0 40px;
        width: 40px;
        height: 40px;
        margin-left: 7px;
        object-fit: contain;
    }

    .legacy-home-hospitalgrid,
    .legacy-home-doctorgrid,
    .legacy-home-simplegrid,
    .legacy-home-querygrid,
    .legacy-home-directory-row,
    .legacy-home-newslists,
    .legacy-topic-topgrid,
    .legacy-topic-sectionbody,
    .legacy-topic-columns {
        grid-template-columns: 1fr;
    }

    /* 移动首页仅展示后台优先的前四家医院、前四位医生。 */
    .legacy-home-hospitalgrid .legacy-home-hospitalcard:nth-child(n + 5),
    .legacy-home-doctorgrid .legacy-home-doctorcard:nth-child(n + 5) {
        display: none;
    }

    /* 首页移动端按信息流展示：资讯、医院、医生均为独立模块。 */
    .legacy-home-page {
        padding: 8px 0 12px;
    }

    .legacy-home-section {
        padding-top: 12px;
    }

    .legacy-home-sectionhead {
        height: 38px;
        margin-bottom: 8px;
    }

    .legacy-home-sectionhead p {
        top: 19px;
    }

    .legacy-home-sectionhead h2,
    .legacy-home-sectionmore {
        font-size: 17px;
        line-height: 38px;
    }

    .legacy-home-sectionmore {
        padding-left: 10px;
        color: #999;
        font-size: 13px;
    }

    .legacy-home-newsgrid {
        display: block;
        padding: 0 10px 8px;
        border: 1px solid #edf0f4;
        background: #fff;
    }

    .legacy-home-newsimage {
        height: auto;
        margin-top: 10px;
        aspect-ratio: 2.35 / 1;
        border-radius: 4px;
    }

    .legacy-home-newsfeature-list {
        margin-top: 8px;
    }

    .legacy-home-newsfeature-list li {
        min-height: 30px;
        line-height: 30px;
    }

    .legacy-home-newsfeature-list a {
        font-size: 13px;
    }

    .legacy-home-newslists {
        display: none;
    }

    .legacy-home-hospitalgrid {
        gap: 0;
        padding: 0 10px;
        border: 1px solid #edf0f4;
        background: #fff;
    }

    .legacy-home-hospitalcard {
        display: grid;
        grid-template-columns: 118px minmax(0, 1fr);
        gap: 10px;
        padding: 10px 0;
        border: 0;
        border-bottom: 1px solid #edf0f4;
        box-shadow: none;
    }

    .legacy-home-hospitalcard:last-child {
        border-bottom: 0;
    }

    .legacy-home-hospitalcard:hover {
        box-shadow: none;
        transform: none;
    }

    .legacy-home-hospitalcard-media {
        height: 86px;
        margin: 0;
    }

    .legacy-home-hospitalcard-copy {
        display: flex;
        flex-direction: column;
        min-width: 0;
        padding: 0;
        text-align: left;
    }

    .legacy-home-hospitalcard-copy h3 {
        display: -webkit-box;
        overflow: hidden;
        margin-top: 1px;
        font-size: 14px;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .legacy-home-hospitalcard-copy p {
        margin-top: 3px;
        font-size: 12px;
    }

    .legacy-home-hospitalcard-actions,
    .legacy-home-doctoractions {
        display: flex;
        gap: 7px;
        margin-top: auto;
    }

    .legacy-home-hospitalcard-actions a,
    .legacy-home-doctoractions a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 24px;
        padding: 0 9px;
        border: 1px solid #75b7ff;
        border-radius: 3px;
        color: #4296f4;
        font-size: 11px;
        text-decoration: none;
    }

    .legacy-home-hospitalcard-actions a:first-child,
    .legacy-home-doctoractions a:first-child {
        border-color: #5ca2fc;
        background: #5ca2fc;
        color: #fff;
    }

    .legacy-home-doctorgrid {
        gap: 0;
        padding: 0 10px;
        border: 1px solid #edf0f4;
        background: #fff;
    }

    .legacy-home-doctorcard {
        display: grid;
        grid-template-columns: 58px minmax(0, 1fr);
        gap: 10px;
        padding: 11px 0;
        border: 0;
        border-bottom: 1px solid #edf0f4;
        box-shadow: none;
    }

    .legacy-home-doctorcard:last-child {
        border-bottom: 0;
    }

    .legacy-home-doctorcard:hover {
        box-shadow: none;
        transform: none;
    }

    .legacy-home-doctoravatar {
        width: 58px;
        height: 58px;
        border-width: 2px;
    }

    .legacy-home-doctorcopy {
        text-align: left;
    }

    .legacy-home-doctorcopy h3 {
        justify-content: flex-start;
        gap: 6px;
        margin: 0;
    }

    .legacy-home-doctorcopy h3 a {
        font-size: 15px;
    }

    .legacy-home-doctormeta {
        min-height: 0;
        margin: 3px 0 0;
        font-size: 12px;
    }

    .legacy-home-doctorsummary {
        min-height: 0;
        margin: 4px 0 7px;
        padding: 0;
        background: transparent;
        font-size: 12px;
        line-height: 1.5;
        -webkit-line-clamp: 2;
    }

    .legacy-home-doctoraction {
        display: none;
    }

    .legacy-home-sectionhead--tabs {
        display: block;
    }

    .legacy-home-tabs {
        justify-content: flex-start;
        margin-top: 44px;
    }

    .legacy-home-directory-line,
    .legacy-topic-side {
        gap: 10px;
    }

    .legacy-topic-titlebar {
        flex-direction: column;
    }

    .legacy-topic-topgrid,
    .legacy-topic-sectioncard,
    .legacy-topic-articlecard,
    .legacy-topic-sidecard,
    .legacy-topic-fastchannel {
        padding: 14px;
    }

    .legacy-topic-sectionfeature {
        grid-template-columns: 1fr;
    }

    .legacy-topic-sectionimage {
        height: 150px;
    }

    .legacy-topic-sectionlist {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .legacy-topic-articlelist li {
        display: block;
    }

    .legacy-topic-hospitalitem {
        grid-template-columns: 1fr;
    }

    .legacy-topic-articlemeta {
        min-width: 0;
        margin-top: 10px;
        text-align: left;
    }

    .legacy-hospital-topbar .legacy-home-shell,
    .legacy-hospital-footer-main .legacy-home-shell {
        flex-direction: column;
        align-items: stretch;
    }

    .legacy-hospital-brandbar .legacy-home-shell {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .legacy-hospital-logo {
        justify-content: center;
    }

    .legacy-hospital-identity {
        justify-items: center;
    }

    .legacy-hospital-nameblock {
        text-align: center;
    }

    .legacy-hospital-search {
        width: 100%;
        margin-left: 0;
    }

    .legacy-hospital-nav .legacy-home-shell {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-right: 0;
        padding-left: 0;
    }

    .legacy-hospital-nav a {
        min-width: 0;
        width: 100%;
        border-right: 1px solid rgba(255, 255, 255, .16);
        border-bottom: 1px solid rgba(255, 255, 255, .16);
    }
}

.home-sidecard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #edf2fa;
}

.home-sidecard-head .site-sidecard-title {
    margin-bottom: 0;
}

.home-portal-hero .site-sidecard-title,
.home-quick-column .site-sidecard-title,
.home-sidecard-news .site-sidecard-title {
    font-size: 16px;
}

.home-portal-hero .site-side-list li,
.home-sidecard-news .site-side-list li {
    position: relative;
    gap: 10px;
    padding: 7px 0 7px 12px;
}

.home-portal-hero .site-side-list li:before,
.home-sidecard-news .site-side-list li:before {
    content: "";
    position: absolute;
    top: 14px;
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #8fbdfd;
}

.home-portal-hero .site-side-list a,
.home-sidecard-news .site-side-list a {
    min-width: 0;
    color: #344054;
    font-size: 13px;
    line-height: 1.5;
}

.home-content-grid .article-panel-head {
    margin-bottom: 10px;
    padding-bottom: 8px;
}

.home-content-grid .article-panel-head h3 {
    margin-bottom: 0;
    font-size: 18px;
}

.home-content-grid .article-panel-head span,
.home-bottom-grid .section-link,
.home-content-grid .section-link,
.home-sidecard-head .section-link {
    font-size: 12px;
}

.home-content-grid .article-list {
    gap: 10px;
}

.home-content-grid .article-row {
    gap: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #e7eef8;
}

.home-content-grid .article-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.home-content-grid .article-row h4 {
    margin: 0 0 4px;
    font-size: 14px;
    line-height: 1.45;
}

.home-content-grid .article-row p {
    font-size: 12px;
    line-height: 1.55;
}

.home-content-grid .article-row span {
    flex: 0 0 54px;
    font-size: 12px;
    text-align: right;
}

.home-bottom-grid .section-heading h2,
.home-content-grid .section-heading h2,
.home-disease-layout .section-heading h2 {
    font-size: 24px;
}

.home-bottom-grid .doctor-title,
.home-content-grid .site-meta,
.home-content-grid .site-pill,
.home-hospital-copy .site-pill {
    font-size: 12px;
}

.home-hospital-copy .site-card-topline {
    margin-bottom: 6px;
}

.home-tag-wall.tag-wall {
    gap: 8px;
    grid-template-columns: repeat(auto-fill, minmax(104px, 1fr));
}

.home-tag-wall .tag-chip {
    justify-content: flex-start;
    min-height: 30px;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: 12px;
}

.topic-directory-compact {
    margin-top: 8px;
}

.filter-panel {
    margin-bottom: 24px;
}

.filter-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.filter-grid.filter-grid-doctor {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.filter-grid input,
.filter-grid select {
    width: 100%;
    height: 44px;
    border: 1px solid #dbe8fb;
    border-radius: 8px;
    padding: 0 14px;
    background: #fff;
    color: #2b3445;
    box-shadow: none;
    outline: 0;
}

.filter-grid input:focus,
.filter-grid select:focus {
    border-color: #5ca2fc;
    box-shadow: 0 0 0 4px rgba(92, 162, 252, .12);
}

.filter-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.filter-actions.filter-actions-wide {
    grid-column: span 2;
}

.filter-actions button,
.filter-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    height: 44px;
    border-radius: 8px;
    text-decoration: none;
}

.filter-actions button {
    border: 0;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.filter-actions a {
    border: 1px solid #dbe8fb;
    color: #2b3445;
    background: #fff;
}

.filter-actions button:hover {
    background: #2f7fe8;
}

.filter-actions a:hover {
    color: #2f7fe8;
    border-color: #5ca2fc;
}

/* Area hospital directory */
.doctor-directory-page .page-layout {
    align-items: start;
}

.doctor-directory-page .site-sidebar {
    align-self: start;
    align-content: start;
}

/* Doctor directory: use a full-width row so names and specialties are easier to scan. */
.doctor-directory-page .doctor-list-horizontal {
    grid-template-columns: minmax(0, 1fr);
}

.doctor-directory-page .doctor-list-horizontal .doctor-card {
    display: grid;
    grid-template-columns: 128px minmax(0, 1fr);
    align-items: start;
    column-gap: 24px;
    row-gap: 12px;
    min-height: 176px;
    padding: 24px;
}

.doctor-directory-page .doctor-list-horizontal .doctor-avatar {
    grid-row: 1 / span 2;
    width: 128px;
    height: 128px;
    margin: 0;
    border-radius: 8px;
}

.doctor-directory-page .doctor-list-horizontal .doctor-card-summary {
    min-width: 0;
    padding: 4px 0;
}

.doctor-directory-page .doctor-list-horizontal .doctor-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    margin-bottom: 12px;
    color: #718198;
    font-size: 14px;
    line-height: 1.5;
}

.doctor-directory-page .doctor-list-horizontal .doctor-card-meta span + span::before {
    margin-right: 10px;
    color: #c0cad5;
    content: '·';
}

.doctor-directory-page .doctor-list-horizontal .doctor-card h3 {
    margin: 0;
}

.doctor-directory-page .doctor-list-horizontal .doctor-name-line {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 12px;
}

.doctor-directory-page .doctor-list-horizontal .doctor-title {
    margin: 0;
    font-size: 15px;
}

.doctor-directory-page .doctor-list-horizontal .doctor-card-specialty {
    align-self: start;
    grid-column: 2;
    min-width: 0;
    padding: 4px 0;
}

.doctor-directory-page .doctor-list-horizontal .doctor-card-specialty p {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    color: #53687e;
    font-size: 15px;
    line-height: 1.8;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.area-hospital-page .page-layout {
    align-items: start;
}

.area-hospital-page .site-sidebar {
    align-self: start;
    align-content: start;
}

/* Disease hospital directory */
.disease-hospital-page .page-layout {
    align-items: start;
}

.disease-hospital-page .site-sidebar {
    align-self: start;
    align-content: start;
}

.disease-filter-card {
    margin-bottom: 24px;
    padding: 0;
    overflow: hidden;
}

.disease-list-banner {
    margin: 0 0 24px;
    overflow: hidden;
    border-radius: 6px;
    background: #eaf2ff;
}

.disease-list-banner a,
.disease-list-banner img {
    display: block;
    width: 100%;
}

.disease-list-banner img {
    aspect-ratio: 4.55 / 1;
    object-fit: cover;
}

.disease-list-banner--mobile {
    display: none;
}

.disease-find-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-bottom: 1px solid #e3eaf4;
    background: #f7f9fc;
}

.disease-find-tabs a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 64px;
    border-right: 1px solid #e3eaf4;
    color: #39465a;
    font-size: 18px;
    text-decoration: none;
}

.disease-find-tabs a:last-child {
    border-right: 0;
}

.disease-find-tabs a:hover,
.disease-find-tabs a.is-active {
    background: #5ca2fc;
    color: #fff;
}

.disease-search-form {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    padding: 25px 26px 18px;
}

.disease-search-form label,
.disease-filter-label {
    color: #697689;
    font-weight: 600;
}

.disease-search-control {
    display: flex;
    max-width: 610px;
}

.disease-search-control input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    height: 46px;
    padding: 0 15px;
    border: 1px solid #ccd8e8;
    border-right: 0;
    border-radius: 5px 0 0 5px;
    outline: 0;
}

.disease-search-control input[type="text"]:focus {
    border-color: #5ca2fc;
}

.disease-search-control button {
    flex: 0 0 112px;
    height: 46px;
    border: 0;
    border-radius: 0 5px 5px 0;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.disease-filter-row {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 18px;
    padding: 17px 26px;
    border-top: 1px dashed #dfe5ed;
}

.disease-filter-options,
.disease-letter-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 7px;
}

.disease-filter-options a,
.disease-letter-options a,
.disease-letter-options span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 3px 9px;
    border-radius: 4px;
    color: #344054;
    text-decoration: none;
}

.disease-filter-options a:hover,
.disease-filter-options a.is-active,
.disease-letter-options a:hover,
.disease-letter-options a.is-active {
    background: #5ca2fc;
    color: #fff;
}

.disease-letter-options a,
.disease-letter-options span {
    min-width: 31px;
    padding: 3px 6px;
    font-size: 16px;
}

.disease-letter-options span {
    color: #c2c9d3;
}

.disease-filter-empty {
    padding: 5px 0;
    color: #98a2b3;
}

.disease-hospital-results {
    padding: 24px 26px;
}

.disease-partner-list {
    margin: 0;
    border-bottom: 1px solid #edf2fa;
}

.doctor-partner-hospitals { margin-bottom: 24px; padding: 0 26px; }

.disease-partner-item {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 18px 0;
    border-bottom: 1px solid #edf2fa;
}

.disease-partner-item:last-child { border-bottom: 0; }

.disease-partner-media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 70px;
    overflow: hidden;
    border-radius: 3px;
    background: #edf4fc;
    color: #5a83b2;
    font-size: 20px;
    text-decoration: none;
}

.disease-partner-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.disease-partner-copy {
    min-width: 0;
}

.disease-partner-copy h3 {
    margin: 0 0 9px;
    overflow: hidden;
    font-size: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.disease-partner-copy h3 a {
    color: #20304d;
    text-decoration: none;
}

.disease-partner-actions {
    display: flex;
    gap: 8px;
}

.disease-partner-actions a {
    min-width: 76px;
    padding: 8px 10px;
    border: 1px solid #5ca2fc;
    border-radius: 4px;
    color: #2f7fe8;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}

.disease-partner-actions a:last-child {
    background: #5ca2fc;
    color: #fff;
}

.disease-partner-actions a:hover { background: #eaf3ff; }
.disease-partner-actions a:last-child:hover { background: #2f7fe8; color: #fff; }

.disease-hospital-results .area-list-heading h1 {
    margin: 5px 0 0;
    color: #20304d;
    font-size: 26px;
}

.disease-mobile-filterbar,
.disease-mobile-filterdrawer,
.disease-mobile-hospital-media,
.disease-mobile-hospital-actions,
.disease-mobile-bottomlists {
    display: none;
}

/* Symptom to disease directory */
.symptom-directory-page .page-layout {
    align-items: start;
}

.symptom-directory-page .site-sidebar {
    align-self: start;
    align-content: start;
}

.hospital-directory-page .page-layout {
    align-items: start;
}

.hospital-directory-page .site-sidebar {
    align-self: start;
    align-content: start;
}

.symptom-related-card {
    margin-bottom: 24px;
}

.symptom-directory-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid #edf2fa;
}

.symptom-directory-head h1,
.symptom-directory-head h2 {
    margin: 5px 0 0;
    color: #20304d;
    font-size: 26px;
}

.symptom-directory-head > span {
    color: #7c8799;
    font-size: 13px;
    white-space: nowrap;
}

.symptom-directory-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 9px 12px;
    margin-top: 20px;
}

.symptom-directory-grid a {
    display: block;
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid #e3ebf6;
    border-radius: 5px;
    overflow: hidden;
    background: #fbfdff;
    color: #344054;
    font-size: 13px;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.symptom-directory-grid a:hover,
.symptom-directory-grid a.is-active {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.disease-result-grid a {
    color: #2f6fb8;
}

.symptom-all-groups {
    margin-top: 20px;
}

.symptom-all-groups .symptom-bodypart-section {
    padding-bottom: 18px;
    border-bottom: 1px solid #edf2fa;
}

.symptom-all-groups .symptom-bodypart-section:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.symptom-all-groups .symptom-bodypart-title small {
    display: block;
    margin-top: 3px;
    color: #98a2b3;
    font-size: 12px;
    font-weight: 500;
}

.symptom-all-groups .symptom-bodypart-links a.is-active {
    border-color: #5ca2fc;
    background: #5ca2fc;
    color: #fff;
}

.area-filter-card {
    margin-bottom: 24px;
    padding: 0;
    overflow: hidden;
}

.area-filter-head,
.area-list-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.area-filter-head {
    padding: 24px 26px 20px;
    border-bottom: 1px solid #edf2fa;
}

.area-filter-head h1,
.area-list-heading h2 {
    margin: 5px 0 0;
    color: #20304d;
    font-size: 26px;
}

.area-result-count,
.area-list-heading > span {
    color: #7c8799;
    font-size: 13px;
    white-space: nowrap;
}

.area-result-count strong {
    color: #f08a24;
    font-size: 20px;
}

.area-filter-row {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 12px;
    padding: 15px 26px;
    border-bottom: 1px solid #f0f3f8;
}

.area-filter-label {
    padding-top: 5px;
    color: #7b8798;
    font-weight: 600;
}

.area-filter-options {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 5px;
}

.area-filter-options a {
    padding: 4px 10px;
    border-radius: 4px;
    color: #3b4658;
    line-height: 1.55;
    text-decoration: none;
}

.area-filter-options a:hover,
.area-filter-options a.is-active {
    background: #5ca2fc;
    color: #fff;
}

.area-hot-cities {
    background: #fbfdff;
}

.area-hospital-search {
    display: flex;
    max-width: 610px;
    padding: 20px 26px 24px;
}

.area-hospital-search input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    height: 44px;
    padding: 0 14px;
    border: 1px solid #dbe8fb;
    border-right: 0;
    border-radius: 7px 0 0 7px;
    outline: 0;
}

.area-hospital-search input[type="text"]:focus {
    border-color: #5ca2fc;
}

.area-hospital-search button {
    flex: 0 0 auto;
    height: 44px;
    padding: 0 22px;
    border: 0;
    border-radius: 0 7px 7px 0;
    background: #5ca2fc;
    color: #fff;
    font-weight: 600;
}

.area-hospital-results {
    padding: 24px 26px;
}

.area-list-heading {
    padding-bottom: 18px;
    border-bottom: 1px solid #edf2fa;
}

.area-hospital-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 22px 0;
    border-bottom: 1px solid #edf2fa;
}

.area-hospital-rank {
    align-self: start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #eef4fc;
    color: #6f7d91;
    font-weight: 700;
}

.area-hospital-item:nth-child(-n+3) .area-hospital-rank {
    background: #fff1e3;
    color: #ef8b2c;
}

.area-hospital-copy {
    min-width: 0;
}

.area-hospital-copy h3 {
    margin: 0 0 9px;
}

.area-hospital-copy h3 a {
    color: #20304d;
    font-size: 19px;
    text-decoration: none;
}

.area-hospital-copy h3 a:hover {
    color: #2f7fe8;
}

.area-hospital-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 10px;
}

.area-hospital-tags span {
    padding: 2px 8px;
    border: 1px solid #dce9f8;
    border-radius: 3px;
    color: #56708f;
    font-size: 12px;
}

.area-hospital-copy p {
    margin: 0;
    color: #768296;
    font-size: 13px;
    line-height: 1.6;
}

.area-hospital-copy p i {
    margin-right: 7px;
    color: #a6b1c0;
}

.area-hospital-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    height: 36px;
    padding: 0 15px;
    border: 1px solid #5ca2fc;
    border-radius: 5px;
    color: #2f7fe8;
    text-decoration: none;
}

.area-hospital-action:hover {
    background: #5ca2fc;
    color: #fff;
}

@media (max-width: 1199px) {
    .card-grid-hospital,
    .card-grid-doctor,
    .topic-grid,
    .search-result-grid,
    .area-grid,
    .home-content-grid,
    .home-bottom-grid,
    .area-directory-row,
    .home-disease-row,
    .info-grid,
    .info-grid-wide {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-layout,
    .hero-grid,
    .site-footer-grid,
    .home-portal-top,
    .home-legacy-top,
    .home-legacy-midgrid,
    .home-legacy-bottomgrid,
    .home-disease-layout,
    .hospital-home-top,
    .hospital-home-bottom,
    .hospital-legacy-top,
    .hospital-legacy-columns {
        grid-template-columns: 1fr;
    }

    .hospital-legacy-doctor-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hospital-article-row {
        grid-template-columns: 88px minmax(0, 1fr);
    }

    .hospital-article-link {
        grid-column: 2;
        justify-self: start;
    }

    .site-header-search {
        max-width: none;
        margin-left: 0;
    }

    .home-channel-grid,
    .home-metric-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-directory-grid,
    .home-legacy-hospital-grid,
    .platform-link-matrix,
    .platform-hospital-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hospital-header-top {
        flex-direction: column;
        align-items: stretch;
    }

    .site-disease-nav-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .hospital-tabbar {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .filter-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .letter-directory {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .hospital-hero .detail-hero-brand {
        grid-template-columns: 1fr;
    }

    .hospital-hero-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hospital-page-action {
        width: 100%;
    }

    .legacy-hospital-footer-main .legacy-home-shell {
        flex-direction: column;
    }

    .legacy-hospital-footer-side {
        width: 100%;
        justify-items: start;
    }

    .hospital-legacy-environment-grid {
        grid-template-columns: 1fr;
    }

    .hospital-legacy-environment-grid.count-1 {
        grid-template-columns: 1fr;
    }

    .site-topbar-inner,
    .article-panel-head,
    .article-row,
    .browse-search,
    .browse-strip,
    .home-legacy-panelhead,
    .home-legacy-sidehead,
    .home-legacy-boxhead,
    .home-legacy-directoryhead,
    .home-legacy-subhead,
    .topic-directory-row,
    .review-head,
    .site-footer-bottom,
    .doctor-schedule-top,
    .doctor-action-row,
    .doctor-hospital-actions {
        flex-direction: column;
        align-items: flex-start;
    }

    .site-disease-nav-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-search,
    .browse-search,
    .home-legacy-search {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-copy,
    .hero-panel-card,
    .detail-card,
    .article-panel {
        padding: 22px;
    }

    .hero-copy h1,
    .section-heading h2,
    .detail-card h1,
    .detail-hero-copy h1,
    .doctor-profile-copy h1 {
        font-size: 28px;
    }

    .detail-hero-brand,
    .doctor-profile,
    .hospital-legacy-intro-body,
    .hospital-legacy-review-item,
    .hospital-article-row,
    .hospital-doctor-row,
    .hospital-department-row {
        grid-template-columns: 1fr;
    }

    .hospital-department-detail-head,
    .hospital-department-doctor-card {
        grid-template-columns: 1fr;
    }

    .hospital-department-doctor-grid {
        grid-template-columns: 1fr;
    }

    .hospital-department-enter,
    .hospital-department-doctor-link {
        justify-self: stretch;
    }

    .hospital-department-doctor-avatar {
        margin: 0 auto;
    }

    .hospital-station-head,
    .hospital-station-brand,
    .hospital-station-actions,
    .hospital-station-search form,
    .hospital-header-brand,
    .hospital-header-actions,
    .hospital-header-search form,
    .hospital-legacy-review-top,
    .hospital-legacy-review-user {
        flex-direction: column;
        align-items: stretch;
    }

    .detail-hero-media {
        max-width: 200px;
    }

    .detail-hero-media,
    .doctor-profile-avatar {
        margin: 0 auto;
    }

    .hospital-station-card {
        padding: 22px;
    }

    .hospital-article-date,
    .hospital-doctor-row-avatar,
    .hospital-department-mark {
        margin: 0 auto;
    }

    .hospital-article-date {
        width: 100%;
    }

    .hospital-article-link {
        grid-column: auto;
        justify-self: stretch;
    }

    .hospital-article-copy h3 a,
    .hospital-doctor-row-name h3 a,
    .hospital-department-copy strong {
        font-size: 18px;
    }

    .card-grid-hospital,
    .card-grid-doctor,
    .topic-grid,
    .search-result-grid,
    .area-grid,
    .home-content-grid,
    .home-bottom-grid,
    .home-legacy-top,
    .home-legacy-midgrid,
    .home-legacy-bottomgrid,
    .area-directory-row,
    .home-disease-row,
    .hospital-legacy-doctor-grid,
    .home-directory-grid,
    .home-legacy-subgrid,
    .home-legacy-hospital-grid,
    .platform-link-matrix,
    .platform-hospital-list,
    .info-grid,
    .info-grid-wide,
    .review-list,
    .article-panels,
    .doctor-schedule-grid,
    .doctor-legacy-columns {
        grid-template-columns: 1fr;
    }

    .hospital-tabbar {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .platform-channel-bar a {
        flex-basis: calc(50% - 1px);
        min-width: 0;
    }

    .platform-directory-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .home-legacy-titlebar h1 {
        font-size: 28px;
    }

    .home-legacy-navline {
        gap: 8px 0;
    }

    .home-legacy-navline a {
        padding: 0 12px;
    }

    .home-legacy-actions {
        grid-template-columns: 1fr;
    }

    .symptom-bodypart-section {
        grid-template-columns: 1fr;
        gap: 10px;
    }

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

    .symptom-search-card__top {
        align-items: flex-start;
        flex-direction: column;
    }

    .disease-tab-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .disease-overview-grid,
    .disease-knowledge-layout {
        grid-template-columns: 1fr;
    }

    .disease-tab-links {
        grid-template-columns: 1fr;
    }

    .symptom-detail-meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .platform-hospital-group-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .filter-grid {
        grid-template-columns: 1fr;
    }

    .filter-actions {
        flex-wrap: wrap;
    }

    .area-filter-head,
    .area-list-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .area-filter-row {
        grid-template-columns: 1fr;
        gap: 7px;
        padding: 14px 18px;
    }

    .area-filter-label {
        padding-top: 0;
    }

    .area-hospital-search {
        padding: 18px;
    }

    .area-hospital-results {
        padding: 20px 18px;
    }

    .area-hospital-item {
        grid-template-columns: 28px minmax(0, 1fr);
        align-items: start;
        gap: 10px;
    }

    .area-hospital-action {
        grid-column: 2;
        justify-self: start;
    }

    .disease-find-tabs a {
        min-height: 50px;
        font-size: 14px;
    }

    .disease-search-form,
    .disease-filter-row {
        grid-template-columns: 1fr;
        gap: 9px;
        padding: 15px 18px;
    }

    .disease-search-control button {
        flex-basis: 86px;
    }

    .disease-hospital-results {
        padding: 20px 18px;
    }

    .symptom-directory-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .symptom-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .browse-label,
    .topic-directory-title,
    .home-disease-title,
    .area-directory-title {
        flex-basis: auto;
        padding-top: 0;
    }

    .home-disease-group,
    .area-directory-group,
    .letter-group-row,
    .home-hospital-item,
    .home-doctor-item {
        flex-direction: column;
    }

    .site-nav-links > li > a {
        line-height: 44px;
    }

    .site-disease-nav .container {
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .site-disease-nav-group {
        flex-direction: column;
        gap: 6px;
    }

    .site-disease-nav-links a {
        font-size: 13px;
    }

    .hospital-header-card {
        padding: 22px 22px 0;
    }

    .hospital-header-copy h1 {
        font-size: 28px;
    }

    .letter-directory {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .home-channel-grid,
    .home-metric-strip {
        grid-template-columns: 1fr;
    }

    .platform-hospital-item {
        grid-template-columns: 1fr;
    }

    .platform-hospital-media {
        margin: 0 auto;
    }

    .platform-channel-bar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .platform-channel-bar a {
        border-right: 1px solid #dbe8fb;
        border-bottom: 1px solid #dbe8fb;
    }

    .platform-channel-bar a:nth-child(2n) {
        border-right: 0;
    }

    .platform-channel-bar a:nth-last-child(-n+2) {
        border-bottom: 0;
    }

    .home-portal-main {
        padding: 24px 22px;
    }

    .home-portal-main h1 {
        font-size: 30px;
    }

    .home-hospital-item,
    .home-doctor-item,
    .doctor-peer-item {
        grid-template-columns: 1fr;
    }

    .doctor-peer-list,
    .doctor-legacy-listcard .hospital-legacy-article-list {
        grid-template-columns: 1fr;
    }

    .letter-group-title {
        flex-basis: auto;
    }

    .hospital-tab-title {
        font-size: 14px;
    }

    .hospital-tab {
        min-height: 44px;
        padding: 0 6px;
    }

    .hospital-tab em {
        display: none;
    }

    .hospital-legacy-intro-media {
        min-height: 180px;
        font-size: 64px;
    }

    .hospital-legacy-article-list li,
    .hospital-legacy-side-list li {
        flex-direction: column;
        align-items: flex-start;
    }

    .hospital-legacy-article-list span {
        flex-basis: auto;
    }
}

@media (max-width: 767px) {
    .hospital-article-page > .container > .hospital-hero,
    .hospital-article-page .page-sidebar,
    .hospital-article-page .hospital-station-card > .hospital-legacy-titlebar,
    .hospital-article-page .hospital-station-lead {
        display: none;
    }

    .hospital-article-page {
        padding-top: 12px;
    }

    .hospital-article-page .page-layout {
        display: block;
    }

    .hospital-article-page .hospital-sidebar > .hospital-sidecard-actions,
    .hospital-article-page .hospital-sidebar > .hospital-introduction-ad.is-side,
    .hospital-article-page .hospital-sidebar > .hospital-sidecard-info {
        display: none;
    }

    .hospital-article-page .hospital-sidebar {
        margin-top: 10px;
    }

    .hospital-article-page .hospital-station-card {
        padding: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .hospital-article-page .hospital-article-listpage {
        padding: 0 12px;
        border-radius: 9px;
    }

    .hospital-article-copy {
        grid-template-columns: minmax(0, 1fr);
    }

    .hospital-article-page .hospital-article-row {
        padding: 14px 0;
    }

    .hospital-article-page .hospital-article-copy h3 {
        margin-bottom: 6px;
    }

    .hospital-article-page .hospital-article-copy h3 a {
        display: -webkit-box;
        overflow: hidden;
        font-size: 18px;
        line-height: 1.45;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .hospital-article-page .hospital-article-copy p {
        font-size: 14px;
        line-height: 1.65;
    }

    .hospital-article-copy time {
        grid-column: auto;
        grid-row: auto;
        text-align: left;
    }

    .hospital-article-page .site-pagination {
        width: 100%;
        margin: 16px 0 0;
        overflow: hidden;
    }

    .hospital-article-page .site-pagination ul.pagination {
        display: flex;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: center;
        gap: 6px;
        width: 100%;
        margin: 0;
        padding: 0 8px;
        box-sizing: border-box;
    }

    .hospital-article-page .site-pagination ul.pagination > li {
        display: none;
        min-width: 0;
        flex: 1 1 0;
    }

    .hospital-article-page .site-pagination ul.pagination > li.is-mobile-page-visible {
        display: block;
    }

    .hospital-article-page .site-pagination ul.pagination > li > a,
    .hospital-article-page .site-pagination ul.pagination > li > span {
        display: flex;
        align-items: center;
        justify-content: center;
        float: none;
        width: 100%;
        min-width: 0;
        height: 42px;
        padding: 0 4px;
        border: 0;
        background: #edf8f8;
        color: #27374a;
        box-sizing: border-box;
        white-space: nowrap;
    }

    .hospital-article-page .site-pagination ul.pagination > li.active > span {
        background: #f3f1ed;
        color: #111827;
    }

    .hospital-article-page .hospital-article-bottom-banner {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        margin: 10px 0;
        padding: 0 8px;
        background: transparent;
        box-sizing: border-box;
    }

    .hospital-article-page .hospital-article-bottom-banner a,
    .hospital-article-page .hospital-article-bottom-banner button {
        width: 100%;
    }

    .hospital-article-page .hospital-article-bottom-banner img {
        width: 100%;
        height: auto;
        max-height: none;
        margin: 0 auto;
        object-fit: contain;
    }

    .hospital-guide-page .hospital-guide-mobile-banner,
    .hospital-review-page .hospital-review-mobile-banner {
        width: 100%;
        margin: 10px 0;
        box-sizing: border-box;
    }

    .legacy-hospital-header + .site-main .page-layout,
    .legacy-hospital-header + .site-main .hospital-introduction-layout,
    .legacy-hospital-header + .site-main .hospital-legacy-layout {
        gap: 10px;
    }

    .legacy-hospital-header + .site-main .hospital-hero {
        margin-bottom: 10px;
    }

    .hospital-guide-page .hospital-guide-mobile-banner.is-middle,
    .hospital-review-page .hospital-review-mobile-banner.is-middle {
        margin-top: 0;
    }

    .hospital-guide-page .hospital-guide-mobile-banner.is-bottom,
    .hospital-review-page .hospital-review-mobile-banner.is-bottom {
        margin-bottom: 0;
    }

    .legacy-hospital-header + .site-main .site-breadcrumb {
        display: none;
    }

    .hospital-introduction-main,
    .hospital-introduction-sidebar {
        display: contents;
    }

    .hospital-introduction-content {
        order: 10;
    }

    .hospital-introduction-contact {
        order: 20;
    }

    .hospital-introduction-doctors {
        order: 30;
    }

    .hospital-introduction-ad.is-side {
        display: none;
    }

    .hospital-introduction-ad.is-bottom {
        order: 40;
    }

    .hospital-introduction-articles {
        order: 50;
    }

    .hospital-introduction-mobile-reviews {
        display: block;
        order: 60;
    }

    .hospital-desktop-label,
    .hospital-department-desktop-articles {
        display: none;
    }

    .hospital-mobile-label {
        display: inline;
    }

    .hospital-department-mobile-articles {
        display: block;
        order: 40;
    }

    .hospital-department-directory-card,
    .hospital-department-section,
    .hospital-department-detail,
    .hospital-department-doctors-section {
        padding: 16px;
    }

    .hospital-department-directory-card .hospital-legacy-titlebar > a {
        display: none;
    }

    .hospital-department-directory {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
    }

    .hospital-department-directory a {
        justify-content: center;
        min-width: 0;
        min-height: 38px;
        padding: 6px 4px;
        border-radius: 7px;
        font-size: 13px;
        line-height: 1.25;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .hospital-department-directory a span {
        display: none;
    }

    .hospital-department-listpage {
        gap: 0;
    }

    .hospital-department-row {
        display: block;
        padding: 16px 0;
        border: 0;
        border-bottom: 1px solid #edf2f8;
        border-radius: 0;
        background: #fff;
    }

    .hospital-department-row:last-child {
        border-bottom: 0;
    }

    .hospital-department-row:hover {
        box-shadow: none;
        transform: none;
    }

    .hospital-department-mark,
    .hospital-department-row .hospital-department-meta {
        display: none;
    }

    .hospital-department-copy {
        gap: 8px;
    }

    .hospital-department-copy strong {
        color: #1768b5;
        font-size: 17px;
    }

    .hospital-department-description {
        font-size: 14px;
        line-height: 1.75;
        -webkit-line-clamp: 3;
    }

    .hospital-department-enter {
        width: 100%;
        height: 30px;
        margin-top: 10px;
        padding: 0;
        border: 0;
        border-radius: 15px;
        background: linear-gradient(90deg, transparent, #f2f6fa, transparent);
        color: #98a2b3;
        font-size: 12px;
    }

    .hospital-department-detail-head {
        display: block;
        margin-bottom: 12px;
    }

    .hospital-department-detail-head .hospital-department-mark {
        display: none;
    }

    .hospital-department-detail-head h1 {
        margin-bottom: 8px;
        color: #1768b5;
        font-size: 19px;
    }

    .hospital-department-detail-content {
        padding-top: 12px;
        font-size: 14px;
        line-height: 1.8;
    }

    .hospital-legacy-top,
    .hospital-legacy-top-main,
    .hospital-legacy-columns {
        display: contents;
    }

    .hospital-mobile-departments {
        order: 10;
    }

    .hospital-legacy-doctors {
        order: 20;
    }

    .hospital-inline-banner[data-mobile-slot="feature"] {
        order: 30;
    }

    .hospital-feature-card {
        order: 31;
    }

    .hospital-inline-banner[data-mobile-slot="news"] {
        order: 40;
    }

    .hospital-news-card {
        order: 41;
    }

    .hospital-legacy-doctor-copy .hospital-desktop-doctor-specialty {
        display: none;
    }

    .hospital-legacy-doctor-copy .hospital-mobile-doctor-specialty {
        display: -webkit-box;
        overflow: hidden;
        font-size: 12px;
        line-height: 1.55;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .hospital-feature-card .hospital-legacy-article-list li:nth-child(n + 7),
    .hospital-news-card .hospital-legacy-article-list li:nth-child(n + 7) {
        display: none;
    }

    .hospital-legacy-environment {
        order: 50;
    }

    .hospital-legacy-reviews {
        order: 60;
    }

    .hospital-legacy-intro-card {
        display: none;
    }

    .hospital-hero {
        padding: 0;
        background: #fff;
    }

    .legacy-hospital-nav .legacy-home-shell {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: flex-start;
        overflow-x: auto;
    }

    .legacy-hospital-nav a {
        flex: 0 0 auto;
        width: auto;
        min-width: 82px;
        border-bottom: 0;
    }

    .hospital-hero .detail-hero-brand {
        grid-template-columns: 108px minmax(0, 1fr);
        gap: 16px;
        padding: 18px;
        background: #fff;
    }

    .hospital-hero .detail-hero-copy {
        display: none;
    }

    .hospital-hero .detail-hero-media {
        width: 108px;
        height: 108px;
        border-radius: 8px;
    }

    .hospital-mobile-hero-heading {
        display: block;
        align-self: start;
        min-width: 0;
        padding-top: 2px;
    }

    .hospital-mobile-hero-heading h2 {
        margin: 0;
        color: #172033;
        font-size: 21px;
        font-weight: 700;
        line-height: 1.4;
        overflow-wrap: anywhere;
    }

    .hospital-mobile-hero-badges {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        margin-top: 9px;
    }

    .hospital-mobile-hero-badges span {
        display: inline-flex;
        align-items: center;
        min-height: 28px;
        padding: 2px 9px;
        border: 2px solid #18a4dc;
        border-radius: 5px;
        color: #168dc0;
        font-size: 13px;
        font-weight: 600;
        line-height: 1.2;
    }

    .hospital-mobile-hero-details {
        display: grid;
        grid-column: 1 / -1;
        gap: 12px;
        padding-top: 2px;
    }

    .hospital-mobile-hero-details p {
        display: grid;
        grid-template-columns: 26px minmax(0, 1fr);
        gap: 8px;
        align-items: start;
        margin: 0;
        color: #3f4756;
        font-size: 14px;
        line-height: 1.75;
    }

    .hospital-mobile-hero-details i {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        margin-top: 1px;
        border: 1px solid #667085;
        border-radius: 50%;
        color: #344054;
        font-size: 13px;
        font-style: normal;
        font-weight: 700;
        line-height: 1;
    }

    .hospital-mobile-hero-details strong {
        color: #2a3344;
    }

    .hospital-mobile-hero-intro-copy > span {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .hospital-mobile-hero-intro-copy > a {
        display: inline-flex;
        margin-top: 2px;
        color: #00a0d8;
        font-weight: 600;
        white-space: nowrap;
    }

    .hospital-hero-actions {
        margin-top: 4px;
    }

    .hospital-legacy-environment-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hospital-legacy-environment-grid.count-1 {
        grid-template-columns: 1fr;
    }

    .hospital-legacy-review-item {
        grid-template-columns: 52px minmax(0, 1fr);
    }

    .hospital-legacy-article-list li {
        flex-direction: row;
        align-items: center;
    }

    .hospital-legacy-article-list span {
        flex: 0 0 76px;
    }

    .hospital-mobile-departments,
    .hospital-legacy-doctors,
    .hospital-legacy-listcard,
    .hospital-legacy-environment,
    .hospital-legacy-reviews {
        padding: 16px;
    }
}

/* Keep these rules last: the desktop defaults intentionally hide mobile-only elements. */
@media (max-width: 767px) {
    .disease-page-breadcrumb {
        display: none;
    }

    .site-breadcrumb {
        display: none;
    }

    .disease-mobile-filterbar {
        display: grid;
        margin: .625rem;
        overflow: hidden;
        border: 1px solid #d7e8f7;
        border-radius: .375rem;
        box-shadow: 0 2px 8px rgba(61, 128, 190, .08);
    }

    /* 移动端头部隐藏品牌，不影响页脚品牌图片。 */
    .legacy-home-footer .legacy-home-logo--footer {
        display: inline-flex;
    }

    .legacy-home-footer .legacy-home-logo--footer .legacy-home-logo-image {
        display: block;
        width: auto;
        max-width: 230px;
        height: 76px;
    }

    .detail-section.disease-hospital-page {
        padding: 0 0 20px;
    }

    .disease-hospital-page > .container {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }

    .disease-mobile-filterbar button {
        height: 38px;
        background: #f8fbff;
        color: #42617f;
        font-size: 14px;
    }

    .disease-mobile-filterbar button + button {
        border-left-color: #dfeaf5;
    }

    .disease-mobile-hospital-media {
        display: flex;
    }

    .disease-mobile-hospital-actions {
        display: flex;
    }

    .disease-hospital-page .disease-list-banner--desktop {
        display: none;
    }

    .disease-hospital-page .disease-list-banner--mobile {
        display: block;
        margin: 0 0 8px;
        border-radius: 0;
    }

    .disease-hospital-page .disease-list-banner--mobile img {
        aspect-ratio: 2.35 / 1;
    }

    .doctor-directory-page .disease-list-banner--desktop,
    .area-hospital-page .disease-list-banner--desktop {
        display: none;
    }

    .doctor-directory-page .disease-list-banner--mobile,
    .area-hospital-page .disease-list-banner--mobile {
        display: block;
        margin: 0 0 8px;
        border-radius: 0;
    }

    .doctor-directory-page .disease-list-banner--mobile img,
    .area-hospital-page .disease-list-banner--mobile img {
        aspect-ratio: 2.35 / 1;
    }

    .disease-partner-list {
        margin: 0;
    }

    .disease-partner-item {
        grid-template-columns: 88px minmax(0, 1fr);
        grid-template-rows: auto auto;
        gap: 7px 11px;
        align-items: start;
        padding: 10px 12px;
    }

    .disease-partner-media {
        grid-row: 1 / span 2;
        width: 88px;
        height: 68px;
    }

    .disease-partner-copy,
    .disease-partner-actions { grid-column: 2; }

    .disease-partner-actions {
        gap: 6px;
    }

    .disease-partner-actions a {
        min-width: 58px;
        padding: 7px 6px;
    }

    .disease-hospital-page .disease-hospital-results {
        padding: 0;
    }

    .disease-hospital-page .area-hospital-list {
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    .disease-hospital-page .area-hospital-item {
        grid-template-columns: 88px minmax(0, 1fr);
        grid-template-rows: auto auto;
        gap: 7px 11px;
        align-items: start;
        padding: 10px 12px;
    }

    .disease-mobile-hospital-media {
        grid-row: 1 / span 2;
        align-self: start;
        width: 88px;
        height: 68px;
        border-radius: 3px;
    }

    .disease-hospital-page .area-hospital-copy {
        grid-column: 2;
    }

    .disease-hospital-page .area-hospital-copy h3 {
        margin-bottom: 5px;
    }

    .disease-hospital-page .area-hospital-copy p {
        -webkit-line-clamp: 1;
    }

    .disease-mobile-hospital-actions {
        grid-column: 2;
        margin-top: 0;
    }

    .disease-mobile-hospital-actions a {
        height: 26px;
        padding: 0 12px;
        border-radius: 3px;
    }

    .disease-hospital-page .site-pagination {
        overflow: hidden;
        margin: .625rem 0;
        padding: .625rem .25rem;
        border-top: 1px solid #edf1f5;
        border-bottom: 1px solid #edf1f5;
        background: #fff;
    }

    .disease-hospital-page .site-pagination .pagination {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        margin: 0;
        white-space: nowrap;
    }

    .disease-hospital-page .site-pagination .pagination li {
        flex: 0 0 auto;
    }

    .disease-hospital-page .site-pagination .pagination li:nth-child(n + 6):not(:nth-last-child(-n + 2)) {
        display: none;
    }

    .disease-hospital-page .site-pagination .pagination a,
    .disease-hospital-page .site-pagination .pagination span {
        min-width: 28px;
        height: 28px;
        padding: 4px 6px;
        font-size: 12px;
        line-height: 18px;
    }

    .disease-mobile-bottomlists {
        display: grid;
        gap: .625rem;
        margin: .625rem 0;
    }

    .disease-mobile-bottomcard {
        overflow: hidden;
        padding: 0 .625rem;
        border: 1px solid #edf1f5;
        border-radius: 4px;
        background: #fff;
    }

    .disease-mobile-bottomcard h2 {
        margin: 0;
        padding: .75rem 0 .625rem;
        border-bottom: 1px solid #edf1f5;
        color: #35465a;
        font-size: 15px;
        line-height: 1.4;
    }

    .disease-mobile-bottomcard ul {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .disease-mobile-bottomcard li {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-height: 36px;
        border-bottom: 1px solid #f1f4f7;
        font-size: 13px;
    }

    .legacy-friend-links .legacy-home-shell {
        gap: .625rem;
        padding-top: .625rem;
        padding-bottom: .625rem;
    }

    .legacy-friend-links-list {
        gap: .25rem .625rem;
    }

    .disease-mobile-bottomcard li:last-child {
        border-bottom: 0;
    }

    .disease-mobile-bottomcard a {
        overflow: hidden;
        color: #2999e8;
        text-overflow: ellipsis;
        white-space: nowrap;
        text-decoration: none;
    }

    .disease-mobile-bottomcard span {
        flex: 0 0 auto;
        color: #8a97a6;
        font-size: 11px;
    }
}

@media (max-width: 767px) {
    .doctor-directory-page {
        padding: 0 0 .625rem;
    }

    .doctor-directory-page > .container {
        width: 100%;
        padding: 0;
    }

    .doctor-directory-page .browse-hero-card,
    .doctor-directory-page .browse-panel,
    .doctor-directory-page .site-sidebar,
    .doctor-directory-page .section-heading {
        display: none;
    }

    .doctor-directory-page .page-layout,
    .doctor-directory-page .page-main {
        display: block;
        width: 100%;
    }

    .doctor-mobile-filterbar {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: .625rem;
        overflow: hidden;
        border: 1px solid #d7e8f7;
        border-radius: .375rem;
        box-shadow: 0 2px 8px rgba(61, 128, 190, .08);
    }

    .doctor-mobile-filterbar button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        height: 38px;
        border: 0;
        border-right: 1px solid #dfeaf5;
        background: #f8fbff;
        color: #42617f;
        font-size: 14px;
    }

    .doctor-mobile-filterbar button:last-child { border-right: 0; }
    .doctor-mobile-filterbar i { margin-left: 5px; color: #9ca9b7; font-size: 12px; }

    .doctor-mobile-filterdrawer { display: none; }

    .doctor-mobile-filterdrawer.is-open {
        position: fixed;
        z-index: 1100;
        inset: 0;
        display: block;
    }

    .doctor-mobile-filtermask { position: absolute; inset: 0; background: rgba(16, 33, 51, .35); }
    .doctor-mobile-filterpanel { position: absolute; right: 0; bottom: 0; left: 0; max-height: 72vh; overflow-y: auto; border-radius: 12px 12px 0 0; background: #fff; box-shadow: 0 -8px 24px rgba(30, 54, 82, .18); }
    .doctor-mobile-filtertitle { display: flex; align-items: center; justify-content: space-between; height: 52px; padding: 0 16px; border-bottom: 1px solid #eef1f5; color: #2b3b4f; font-size: 17px; }
    .doctor-mobile-filtertitle button { width: 36px; height: 36px; border: 0; background: transparent; color: #7d8b99; font-size: 18px; }
    .doctor-mobile-filtergroup { display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 16px; }
    .doctor-mobile-filtergroup.is-active { display: grid; }
    .doctor-mobile-filtergroup a { display: flex; align-items: center; justify-content: center; min-height: 38px; padding: 5px 7px; border: 1px solid #e2e9f0; border-radius: 4px; color: #526173; font-size: 14px; text-align: center; text-decoration: none; }
    .doctor-mobile-filtergroup a.is-active { border-color: #55abef; background: #eef8ff; color: #2495e8; }

    .doctor-directory-page .detail-card:not(.browse-hero-card):not(.browse-panel) {
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .doctor-directory-page .card-grid-doctor {
        display: grid;
        grid-template-columns: 1fr;
        gap: .625rem;
        padding: 0 .625rem;
    }

    .doctor-directory-page .doctor-card {
        display: grid;
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 12px;
        min-height: 112px;
        padding: 12px;
        border: 1px solid #e1ebf5;
        border-radius: 7px;
        background: #fbfdff;
        box-shadow: none;
    }

    .doctor-directory-page .doctor-avatar {
        grid-row: 1 / span 2;
        width: 88px;
        height: 88px;
        margin: 0;
        border-radius: 7px;
    }

    .doctor-directory-page .site-card-body { min-width: 0; padding: 0; }
    .doctor-directory-page .site-card-topline { margin: 0 0 4px; }
    .doctor-directory-page .doctor-card h3 { margin: 0; }
    .doctor-directory-page .doctor-card h3 a { color: #203d62; font-size: 18px; }
    .doctor-directory-page .doctor-title { margin: 2px 0 6px; color: #687b92; font-size: 13px; }
    .doctor-directory-page .doctor-card p { display: -webkit-box; overflow: hidden; margin: 0; color: #55677d; font-size: 13px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card { grid-template-columns: 88px minmax(0, 1fr); gap: 12px; min-height: 112px; padding: 12px; }
    .doctor-directory-page .doctor-list-horizontal .doctor-avatar { width: 88px; height: 88px; border-radius: 7px; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card-summary { padding: 0; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card-meta { margin-bottom: 4px; font-size: 12px; }
    .doctor-directory-page .doctor-list-horizontal .doctor-name-line { gap: 4px 8px; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card-specialty { grid-column: 2; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card-specialty { align-self: start; padding: 0; }
    .doctor-directory-page .doctor-list-horizontal .doctor-card-specialty p { font-size: 13px; line-height: 1.55; -webkit-line-clamp: 2; }
    .doctor-directory-page .site-pagination {
        overflow: hidden;
        margin: .625rem 0;
        padding: .625rem .25rem;
        border-top: 1px solid #edf1f5;
        border-bottom: 1px solid #edf1f5;
        background: #fff;
    }

    .doctor-directory-page .site-pagination .pagination {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        margin: 0;
        white-space: nowrap;
    }

    .doctor-directory-page .site-pagination .pagination li {
        flex: 0 0 auto;
    }

    .doctor-directory-page .site-pagination .pagination li:nth-child(n + 6):not(:nth-last-child(-n + 2)) {
        display: none;
    }

    .doctor-directory-page .site-pagination .pagination a,
    .doctor-directory-page .site-pagination .pagination span {
        min-width: 28px;
        height: 28px;
        padding: 4px 6px;
        font-size: 12px;
        line-height: 18px;
    }
}

@media (min-width: 768px) {
    .doctor-mobile-filterbar,
    .doctor-mobile-filterdrawer,
    .area-mobile-filterbar,
    .area-mobile-filterdrawer {
        display: none;
    }
}

@media (max-width: 767px) {
    .area-hospital-page {
        padding: 0 0 .625rem;
    }

    .area-hospital-page > .container {
        width: 100%;
        padding: 0;
    }

    .area-hospital-page .area-filter-card,
    .area-hospital-page .site-sidebar {
        display: none;
    }

    .area-hospital-page .page-layout,
    .area-hospital-page .page-main {
        display: block;
        width: 100%;
    }

    .area-mobile-filterbar {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: .625rem;
        overflow: hidden;
        border: 1px solid #d7e8f7;
        border-radius: .375rem;
        box-shadow: 0 2px 8px rgba(61, 128, 190, .08);
    }

    .area-mobile-filterbar button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        height: 38px;
        border: 0;
        border-right: 1px solid #dfeaf5;
        background: #f8fbff;
        color: #42617f;
        font-size: 14px;
    }

    .area-mobile-filterbar button:last-child { border-right: 0; }
    .area-mobile-filterbar i { margin-left: 5px; color: #9ca9b7; font-size: 12px; }

    .area-mobile-filterdrawer { display: none; }
    .area-mobile-filterdrawer.is-open { position: fixed; z-index: 1100; inset: 0; display: block; }
    .area-mobile-filtermask { position: absolute; inset: 0; background: rgba(16, 33, 51, .35); }
    .area-mobile-filterpanel { position: absolute; right: 0; bottom: 0; left: 0; max-height: 72vh; overflow-y: auto; border-radius: 12px 12px 0 0; background: #fff; box-shadow: 0 -8px 24px rgba(30, 54, 82, .18); }
    .area-mobile-filtertitle { display: flex; align-items: center; justify-content: space-between; height: 52px; padding: 0 16px; border-bottom: 1px solid #eef1f5; color: #2b3b4f; font-size: 17px; }
    .area-mobile-filtertitle button { width: 36px; height: 36px; border: 0; background: transparent; color: #7d8b99; font-size: 18px; }
    .area-mobile-filtergroup { display: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 16px; }
    .area-mobile-filtergroup.is-active { display: grid; }
    .area-mobile-filtergroup a { display: flex; align-items: center; justify-content: center; min-height: 38px; padding: 5px 7px; border: 1px solid #e2e9f0; border-radius: 4px; color: #526173; font-size: 14px; text-align: center; text-decoration: none; }
    .area-mobile-filtergroup a.is-active { border-color: #55abef; background: #eef8ff; color: #2495e8; }
    .area-mobile-filtergroup-label { grid-column: 1 / -1; padding-top: 5px; color: #8190a0; font-size: 13px; }

    .area-hospital-page .area-hospital-results {
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .area-hospital-page .area-hospital-list {
        border-top: 1px solid #edf1f5;
        border-bottom: 1px solid #edf1f5;
        background: #fff;
    }

    .area-hospital-page .area-hospital-item {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 8px 10px;
        align-items: start;
        padding: 10px .625rem;
    }

    .area-hospital-page .area-hospital-rank {
        width: 28px;
        height: 28px;
        font-size: 13px;
    }

    .area-hospital-page .area-hospital-copy h3 {
        margin-bottom: 5px;
        line-height: 1.35;
    }

    .area-hospital-page .area-hospital-copy h3 a {
        color: #203d62;
        font-size: 17px;
    }

    .area-hospital-page .area-hospital-tags { gap: 5px; margin-bottom: 5px; }
    .area-hospital-page .area-hospital-tags span { padding: 1px 7px; color: #69809a; font-size: 12px; }
    .area-hospital-page .area-hospital-copy p { display: -webkit-box; overflow: hidden; font-size: 13px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
    .area-hospital-page .area-hospital-action { grid-column: 2; justify-self: start; min-width: 0; height: 27px; padding: 0 12px; border-radius: 3px; background: #5ca2fc; color: #fff; font-size: 12px; }

    .area-hospital-page .site-pagination {
        overflow: hidden;
        margin: .625rem 0;
        padding: .625rem .25rem;
        border-top: 1px solid #edf1f5;
        border-bottom: 1px solid #edf1f5;
        background: #fff;
    }

    .area-hospital-page .site-pagination .pagination { display: flex; flex-wrap: nowrap; justify-content: center; margin: 0; white-space: nowrap; }
    .area-hospital-page .site-pagination .pagination li { flex: 0 0 auto; }
    .area-hospital-page .site-pagination .pagination li:nth-child(n + 6):not(:nth-last-child(-n + 2)) { display: none; }
    .area-hospital-page .site-pagination .pagination a,
    .area-hospital-page .site-pagination .pagination span { min-width: 28px; height: 28px; padding: 4px 6px; font-size: 12px; line-height: 18px; }
}

@media (max-width: 767px) {
    .symptom-directory-page { padding: 0 0 .625rem; }
    .symptom-directory-page > .container { width: 100%; padding: 0; }
    .symptom-directory-page .page-layout,
    .symptom-directory-page .page-main { display: block; width: 100%; }
    .symptom-directory-page .site-sidebar { display: none; }

    .symptom-directory-page .detail-card {
        margin: 0 0 .625rem;
        padding: .75rem .625rem;
        border: 1px solid #edf1f5;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
        background: #fff;
        box-shadow: none;
    }

    .symptom-directory-page .symptom-directory-head {
        gap: .625rem;
        padding-bottom: .625rem;
    }

    .symptom-directory-page .symptom-directory-head h1,
    .symptom-directory-page .symptom-directory-head h2 {
        margin: 0;
        color: #203d62;
        font-size: 17px;
        line-height: 1.4;
    }

    .symptom-directory-page .symptom-directory-head > span { color: #8a97a6; font-size: 12px; }
    .symptom-directory-page .symptom-total-count { display: none; }
    .symptom-directory-page .symptom-directory-card > .symptom-directory-head { display: none; }
    .symptom-directory-page .page-main > .symptom-directory-card:first-child { margin-top: .625rem; }

    .symptom-directory-page .symptom-directory-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        margin-top: .625rem;
    }

    .symptom-directory-page .symptom-directory-grid a {
        padding: 7px 8px;
        border-radius: 4px;
        color: #40617f;
        font-size: 13px;
        text-align: center;
    }

    .symptom-directory-page .symptom-all-groups { gap: 0; margin-top: 0; }
    .symptom-directory-page .symptom-bodypart-section { display: block; padding: .75rem 0; }
    .symptom-directory-page .symptom-bodypart-section:first-child { padding-top: .125rem; }

    .symptom-directory-page .symptom-bodypart-title {
        display: flex;
        align-items: baseline;
        gap: 6px;
        margin-bottom: .625rem;
        color: #294663;
        font-size: 15px;
        line-height: 1.4;
    }

    .symptom-directory-page .symptom-bodypart-title small {
        display: inline;
        margin: 0;
        color: #98a5b4;
        font-size: 12px;
    }

    .symptom-directory-page .symptom-bodypart-links {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
    }

    .symptom-directory-page .symptom-bodypart-links a {
        display: block;
        min-width: 0;
        min-height: 34px;
        padding: 7px 6px;
        overflow: hidden;
        border-radius: 4px;
        color: #526f8c;
        font-size: 13px;
        line-height: 20px;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .symptom-directory-page .symptom-bodypart-links__more { display: contents; }

    .symptom-directory-page .symptom-more-toggle {
        min-height: 34px;
        padding: 0 6px;
        border: 1px solid #dce9f8;
        border-radius: 4px;
        background: #f8fbff;
        color: #2f92dd;
        font-size: 13px;
        line-height: 32px;
    }
}

@media (max-width: 767px) {
    /* 首页信息模块用完整卡片承载标题，避免浅灰背景上的零散白底。 */
    .legacy-home-section {
        margin: .625rem .625rem 0;
        padding: 0;
        overflow: hidden;
        border: 1px solid #e6edf5;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 2px 8px rgba(50, 83, 120, .04);
    }

    .legacy-home-sectionhead {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 46px;
        margin: 0;
        padding: 0 .75rem;
        border-bottom: 1px solid #edf1f5;
        background: #fff;
    }

    .legacy-home-sectionhead p { display: none; }

    .legacy-home-sectionhead h2 {
        position: static;
        margin: 0;
        padding: 0 0 0 9px;
        border-left: 3px solid #5ca2fc;
        background: transparent;
        color: #294663;
        font-size: 17px;
        font-weight: 700;
        line-height: 1.4;
    }

    .legacy-home-sectionmore {
        position: static;
        padding: 0;
        background: transparent;
        color: #8392a2;
        font-size: 13px;
        line-height: 1.4;
    }

    .legacy-home-sectionmore:hover { color: #2f92dd; }

    .legacy-home-newsgrid {
        padding: 0 .625rem .625rem;
        border: 0;
    }
}
