:root {
    --blue: #2563eb;
    --blue-dark: #1d4ed8;
    --emerald: #10b981;
    --slate-50: #f8fafc;
    --slate-100: #f1f5f9;
    --slate-200: #e2e8f0;
    --slate-300: #cbd5e1;
    --slate-500: #64748b;
    --slate-600: #475569;
    --slate-700: #334155;
    --slate-900: #0f172a;
    --white: #ffffff;
    --red: #dc2626;
    --shadow-blue: 0 14px 28px rgba(37, 99, 235, .2);
    --shadow-panel: 0 24px 70px rgba(15, 23, 42, .18);
}

/* e-hizmetler UI refinement pass - 2026-08-29 */
.lh-app {
    font-weight: 400;
}

.lh-app h1,
.lh-app h2,
.lh-app h3,
.lh-app h4,
.lh-app strong,
.lh-app b,
.lh-app button,
.lh-app label,
.lh-app .lh-eyebrow,
.lh-app .lh-section-kicker,
.lh-app .lh-card-action,
.lh-app .lh-status,
.lh-app .lh-pill,
.lh-app .lh-list-status {
    font-weight: 550;
}

.lh-app small,
.lh-app em,
.lh-app span,
.lh-app p,
.lh-app select,
.lh-app input {
    letter-spacing: 0;
}

.lh-top-cta,
.lh-btn,
.lh-action,
.lh-card-action,
.lh-emergency-action,
.online-btn,
.appointment-next,
.appointment-back,
.refpro-actions a,
.refpro-copy-top {
    border-radius: 9px;
    font-weight: 550;
}

.lh-language-select {
    min-width: 82px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 1px solid #dbe5f0;
    border-radius: 9px;
    padding: 0 10px;
    background: #fff;
}

.lh-language-select span {
    color: #61738b;
    font-size: 12px;
    font-weight: 500;
}

.lh-language-select select {
    min-width: 46px;
    height: 30px;
    border: 0;
    padding: 0 20px 0 0;
    background: transparent;
    color: #14243b;
    font-size: 12px !important;
    font-weight: 550;
    line-height: 1;
}

.lh-notification-bell {
    border-radius: 50% !important;
}

.lh-notification-bell:hover,
.lh-notification-bell:focus-visible {
    border-color: #d8e3ef;
    border-radius: 50% !important;
    background: #f4f8fc;
}

.lh-top-ann-item-icon,
.lh-ann-detail-icon {
    background: #eef6ff;
    color: #1463a5;
}

.lh-ann-detail-icon img {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.lh-ann-detail-close {
    position: relative;
    right: -4px;
    top: -4px;
    border-radius: 50%;
}

.lh-ann-detail-close:hover {
    border-radius: 50%;
}

.lh-pwa-prompt {
    border-color: #dbe7f1;
    border-radius: 14px;
}

.lh-pwa-prompt-copy strong,
.lh-pwa-prompt-copy span {
    font-size: 13px;
}

.lh-pwa-prompt-actions .primary,
.lh-pwa-prompt button.primary {
    background: #1768e5;
    border-color: #1768e5;
    color: #fff;
}

.lh-pwa-prompt-close {
    border-radius: 50%;
}

.lh-premium-crown {
    display: none !important;
}

.lh-premium-badge svg {
    width: 14px;
    height: 14px;
}

.lh-doctor-grid-modern {
    gap: 18px;
}

.lh-doctor-profile-card-modern {
    padding: 18px;
    background: #fff url("https://lokmanhekim.com.tr/wp-content/uploads/2026/06/doktor-arkaplani.webp") right bottom / 180px auto no-repeat;
}

.lh-doctor-photo-wrap {
    width: 64px;
    height: 84px;
    flex: 0 0 64px;
    border-radius: 13px;
    overflow: hidden;
    background: #eef4fb;
}

.lh-doctor-photo.large {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.lh-doctor-profile-card-modern h2,
.lh-doctor-profile-card-modern .lh-doctor-name-link {
    font-size: 15px;
    font-weight: 550;
}

.doctor-card-avatar,
.selected-doctor-avatar {
    width: 96px;
    min-height: 144px;
    height: 100%;
    border-radius: 0;
    background: #eef6ff;
}

.doctor-card {
    grid-template-columns: 96px minmax(0, 1fr);
    min-height: 144px;
}

.doctor-card-content strong {
    font-size: 16px;
    font-weight: 550;
}

.online-modal-head-pro {
    min-height: 92px !important;
}

.online-modal-head-pro #onlineConsultationTitle {
    font-size: 25px !important;
    font-weight: 500 !important;
}

.online-modal-head-pro p {
    max-width: 620px;
    font-size: 12px !important;
}

.online-modal-head-meta span,
.online-modal-head-meta em {
    font-weight: 500;
}

.online-btn {
    min-height: 40px;
    padding: 0 14px;
    white-space: nowrap;
}

.online-btn.primary#onlineContinueBtn {
    min-width: 184px;
}

.online-btn.primary#onlineContinueBtn span {
    flex: 0 0 auto;
}

.lh-emergency-hero {
    align-items: center;
}

.lh-emergency-callout {
    align-content: center;
}

.lh-emergency-callout a,
.lh-emergency-contact-grid a[href="tel:112"] {
    min-height: 40px;
    border-radius: 10px;
}

.lh-emergency-callout a:before {
    content: "";
    width: 18px;
    height: 18px;
    background: currentColor;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='2'%3E%3Cpath d='M3 12h4l2-5 4 10 2-5h6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.lh-emergency-card-head {
    align-items: center;
}

.lh-emergency-card-head h2,
.lh-emergency-card-head small,
.lh-emergency-card footer strong,
.lh-emergency-branch-list strong,
.lh-emergency-diagnosis-list strong {
    font-weight: 550;
}

.lh-emergency-assessment.is-empty .lh-emergency-meter i {
    width: 0 !important;
}

.lh-emergency-assessment.is-empty footer strong {
    color: #64748b;
    font-size: 18px;
}

.lh-live-card .lh-emergency-action {
    min-height: 40px;
    padding: 0 14px;
}

.lh-report-filter-pro,
.lh-lab-filter-bar {
    grid-template-columns: repeat(5, minmax(160px, 1fr)) auto;
    align-items: end;
}

.lh-report-filter-pro label,
.lh-lab-filter-bar label {
    min-width: 0;
}

.lh-report-filter-pro select,
.lh-lab-filter-bar select {
    min-height: 42px;
    padding-right: 32px;
    white-space: normal;
}

.lh-report-filter-pro a,
.lh-lab-filter-bar a {
    min-height: 42px;
    white-space: nowrap;
}

.lh-report-card em,
.lh-lab-card em {
    color: #0f4c81;
    background: #eaf4ff;
    border: 1px solid #c9e1ff;
}

.lh-report-card em.is-pending,
.lh-lab-card em.is-pending {
    color: #8a4f00;
    background: #fff6df;
    border-color: #f4d58a;
}

.lh-report-dialog-head-pro .lh-report-modal-brand {
    min-width: 0 !important;
}

.lh-duty-panel-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.lh-location-btn {
    width: auto;
    min-width: 132px;
    min-height: 40px;
    justify-self: end;
}

.lh-pharmacy-manual-pro {
    grid-template-columns: repeat(2, minmax(180px, 1fr)) auto;
}

.lh-search-btn {
    min-width: 104px;
    min-height: 40px;
}

.lh-duty-pharmacy-list-pro.is-ready {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.lh-duty-pharmacy-item {
    border-radius: 13px;
    padding: 15px;
}

.lh-duty-card-title strong,
.lh-duty-result-toolbar strong {
    font-size: 14px;
    font-weight: 550;
}

.lh-duty-pharmacy-main p {
    font-size: 12.5px;
    line-height: 1.55;
}

.lh-duty-pharmacy-item nav {
    gap: 8px;
}

.lh-diagnosis-layout-clean {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px);
}

.lh-clinical-map-card {
    overflow: hidden;
}

.lh-enabiz-workspace-pro {
    min-height: 560px;
    overflow: hidden;
}

.lh-enabiz-stage {
    min-width: 0;
    max-width: 100%;
}

.lh-human-anatomy-svg {
    max-width: min(100%, 420px);
    height: auto;
}

.lh-diagnosis-stats small,
.lh-diagnosis-stats strong,
.lh-diagnosis-table .head,
.lh-diagnosis-table .row b,
.lh-card-headline h2,
.lh-diagnosis-insight-card h2,
.lh-diagnosis-insight-card h3,
.lh-specialty-list strong,
.lh-recommendation-list strong {
    font-weight: 550;
}

.lh-diagnosis-insight-card {
    align-self: stretch;
}

.lh-bluetooth-panel {
    grid-template-columns: minmax(0, 1fr) minmax(320px, auto);
    align-items: center;
}

.lh-bluetooth-actions {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto;
    gap: 10px;
}

.lh-bluetooth-actions .lh-btn {
    min-width: 132px;
    min-height: 40px;
}

.lh-bluetooth-copy h2,
.lh-health-card-copy strong,
.lh-health-card-footer b,
.lh-health-mini-grid strong {
    font-weight: 550;
}

.lh-health-card-copy small {
    min-height: auto;
}

.refpro-copy-top {
    width: max-content;
    min-height: 36px;
    margin: 2px 0 0;
    border: 1px solid #1768e5;
    padding: 0 13px;
    background: #1768e5;
    color: #fff;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}

.refpro-copy-top.is-copied,
.refpro-iconbtn.is-copied {
    border-color: #0f766e;
    background: #0f766e;
    color: #fff;
}

.refpro-actions {
    grid-template-columns: 1fr !important;
}

@media (max-width: 1180px) {
    .lh-report-filter-pro,
    .lh-lab-filter-bar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lh-report-filter-pro a,
    .lh-lab-filter-bar a {
        width: 100%;
    }

    .lh-bluetooth-panel,
    .lh-duty-panel-head {
        grid-template-columns: 1fr;
    }

    .lh-location-btn {
        justify-self: start;
    }
}

@media (max-width: 760px) {
    .lh-pharmacy-manual-pro,
    .lh-duty-pharmacy-list-pro.is-ready,
    .lh-bluetooth-actions {
        grid-template-columns: 1fr;
    }

    .lh-location-btn,
    .lh-search-btn,
    .lh-bluetooth-actions .lh-btn {
        width: 100%;
    }

    .lh-doctor-profile-card-modern {
        background-size: 140px auto;
    }
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
}

body {
    margin: 0;
    min-height: 100vh;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--slate-900);
    background: var(--white);
    -webkit-font-smoothing: antialiased;
}

button,
input {
    font: inherit;
}

.login-shell {
    min-height: 100vh;
    display: flex;
    background: var(--white);
}

.login-side {
    width: 50%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 64px 96px;
}

.login-form-wrap {
    width: 100%;
    max-width: 448px;
}

.brand-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 48px;
}

.brand-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: inline-grid;
    place-items: center;
    background: var(--blue);
    box-shadow: var(--shadow-blue);
    position: relative;
    flex: 0 0 auto;
}

.brand-icon::before,
.brand-icon::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    background: var(--white);
}

.brand-icon::before {
    width: 22px;
    height: 6px;
}

.brand-icon::after {
    width: 6px;
    height: 22px;
}

.brand-row strong {
    display: block;
    color: var(--slate-900);
    font-size: 24px;
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: 0;
}

.brand-row small {
    display: block;
    margin-top: 4px;
    color: var(--slate-500);
    font-size: 14px;
    font-weight: 500;
}

.welcome-copy {
    margin-bottom: 32px;
}

.welcome-copy h1 {
    margin: 0 0 10px;
    color: var(--slate-900);
    font-size: 32px;
    line-height: 1.18;
    font-weight: 700;
    letter-spacing: 0;
}

.welcome-copy p {
    margin: 0;
    color: var(--slate-600);
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
}

.login-form {
    display: grid;
    gap: 10px;
}

label {
    color: var(--slate-700);
    font-size: 14px;
    font-weight: 600;
}

input {
    width: 100%;
    height: 48px;
    border: 1px solid var(--slate-200);
    border-radius: 8px;
    padding: 0 14px;
    color: var(--slate-900);
    background: var(--white);
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

input::placeholder {
    color: #94a3b8;
}

input:focus {
    border-color: var(--blue);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .12);
}

button,
.logout-link {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    background: var(--blue);
    color: var(--white);
    box-shadow: var(--shadow-blue);
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.logout-link:hover {
    background: var(--blue-dark);
    transform: translateY(-1px);
}

button:disabled {
    opacity: .7;
    cursor: wait;
    transform: none;
}

.form-message {
    min-height: 22px;
    margin: 4px 0 0;
    color: transparent;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.45;
}

.showcase-side {
    width: 50%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 64px 96px;
    background: linear-gradient(140deg, rgba(37, 99, 235, .16), transparent 34%),
    linear-gradient(315deg, rgba(16, 185, 129, .11), transparent 32%),
    var(--slate-900);
    color: var(--white);
    overflow: hidden;
    position: relative;
}

.showcase-pattern {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(120deg, transparent 0%, black 34%, black 70%, transparent 100%);
    opacity: .58;
    pointer-events: none;
}

.showcase-content {
    position: relative;
    z-index: 1;
    margin-top: 48px;
}

.version-badge {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 16px;
    border-radius: 999px;
    color: #bfdbfe;
    background: rgba(59, 130, 246, .18);
    font-size: 14px;
    font-weight: 600;
}

.showcase-side h2 {
    margin: 24px 0 0;
    color: var(--white);
    font-size: clamp(48px, 5.8vw, 72px);
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: 0;
}

.feature-list {
    display: grid;
    gap: 18px;
    margin: 48px 0 0;
    padding: 0;
    list-style: none;
}

.feature-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--slate-300);
    font-size: 18px;
    font-weight: 400;
}

.feature-list span {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    display: inline-grid;
    place-items: center;
    background: rgba(37, 99, 235, .24);
    color: #60a5fa;
    flex: 0 0 auto;
    position: relative;
}

.feature-list span::before {
    content: "";
    width: 10px;
    height: 6px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg) translate(1px, -1px);
}

.showcase-footer {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(226, 232, 240, .6);
    font-size: 13px;
    font-weight: 500;
}

.modal-backdrop {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(15, 23, 42, .68);
    z-index: 20;
}

.modal-backdrop.is-open {
    display: flex;
}

.otp-modal {
    width: min(100%, 520px);
    border: 1px solid rgba(226, 232, 240, .86);
    border-radius: 16px;
    padding: 34px;
    background: var(--white);
    box-shadow: var(--shadow-panel);
    position: relative;
    text-align: center;
}

.modal-close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 38px;
    min-height: 38px;
    margin: 0;
    border-radius: 8px;
    background: var(--slate-100);
    color: var(--slate-700);
    box-shadow: none;
    font-size: 22px;
    display: grid;
    place-items: center;
}

.modal-close:hover {
    background: var(--slate-200);
    color: var(--slate-900);
}

.modal-close svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    display: block;
}

.otp-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 18px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: var(--blue);
    box-shadow: var(--shadow-blue);
    position: relative;
}

.otp-icon::before {
    content: "";
    width: 24px;
    height: 18px;
    border: 3px solid var(--white);
    border-top: 0;
    border-radius: 0 0 6px 6px;
    transform: translateY(4px);
}

.otp-icon::after {
    content: "";
    position: absolute;
    width: 18px;
    height: 16px;
    border: 3px solid var(--white);
    border-bottom: 0;
    border-radius: 999px 999px 0 0;
    transform: translateY(-8px);
}

.otp-icon svg {
    width: 29px;
    height: 29px;
    fill: none;
    stroke: var(--white);
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.otp-icon::before,
.otp-icon::after {
    display: none;
    content: none;
}

.modal-kicker {
    margin: 0 0 8px;
    color: var(--blue);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.otp-modal h2 {
    margin: 0;
    color: var(--slate-900);
    font-size: 28px;
    line-height: 1.18;
    font-weight: 700;
}

.modal-copy {
    margin: 12px 0 18px;
    color: var(--slate-600);
    line-height: 1.55;
    font-weight: 400;
}

.toast-stack {
    position: fixed;
    top: 18px;
    right: 18px;
    z-index: 60;
    display: grid;
    gap: 12px;
    width: min(380px, calc(100vw - 32px));
    pointer-events: none;
}

.toast {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px;
    border: 1px solid #e2e8f0;
    border-left-width: 4px;
    border-radius: 12px;
    padding: 14px 14px 14px 12px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 18px 40px rgba(15, 23, 42, .14);
    backdrop-filter: blur(14px);
    pointer-events: auto;
    animation: toast-in .22s ease-out;
}

.toast.success {
    border-left-color: #10b981;
}

.toast.error {
    border-left-color: #ef4444;
}

.toast.info {
    border-left-color: #2563eb;
}

.toast-icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}

.toast.success .toast-icon {
    background: #10b981;
}

.toast.error .toast-icon {
    background: #ef4444;
}

.toast.info .toast-icon {
    background: #2563eb;
}

.toast strong {
    display: block;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25;
}

.toast span {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 400;
}

.toast-close {
    width: 26px;
    min-height: 26px;
    margin: -4px -4px 0 0;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    color: #94a3b8;
    font-size: 18px;
    font-weight: 400;
}

.toast-close:hover {
    background: #f1f5f9;
    color: #0f172a;
    transform: none;
}

@keyframes toast-in {
    from {
        opacity: 0;
        transform: translateX(16px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.timer {
    margin: 16px 0 24px;
    color: var(--slate-700);
    font-weight: 600;
}

.timer-bar {
    height: 8px;
    margin-top: 8px;
    border-radius: 999px;
    background: var(--slate-100);
    overflow: hidden;
}

.timer-bar span {
    display: block;
    height: 100%;
    width: 100%;
    border-radius: inherit;
    background: var(--blue);
}

.otp-inputs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}

.otp-inputs input {
    height: 58px;
    padding: 0;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
}

.patient-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 28px 0 12px;
}

.patient-summary div {
    border: 1px solid var(--slate-200);
    border-radius: 12px;
    padding: 16px;
    background: var(--slate-50);
}

dt {
    color: var(--slate-500);
    font-size: 13px;
    font-weight: 800;
}

dd {
    margin: 6px 0 0;
    font-size: 18px;
    font-weight: 900;
}

.app-body {
    background: var(--slate-50);
}

.app-topbar {
    position: sticky;
    top: 0;
    z-index: 10;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid var(--slate-200);
    padding: 0 24px;
    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(14px);
}

.app-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: inherit;
    text-decoration: none;
}

.app-brand .brand-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
}

.app-brand strong {
    display: block;
    color: var(--slate-900);
    font-size: 18px;
    line-height: 1;
    font-weight: 850;
}

.app-brand small {
    display: block;
    margin-top: 4px;
    color: var(--slate-500);
    font-size: 12px;
    font-weight: 700;
}

.top-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.top-action,
.avatar-action,
.outline-action,
.solid-action {
    text-decoration: none;
}

.top-action {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 800;
}

.top-action.is-primary {
    color: var(--white);
    background: var(--blue);
    box-shadow: var(--shadow-blue);
}

.avatar-action {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    border: 2px solid var(--white);
    background: linear-gradient(135deg, #fb923c, #f43f5e);
    color: var(--white);
    box-shadow: 0 0 0 1px var(--slate-200);
    font-size: 13px;
    font-weight: 850;
}

.app-layout {
    display: flex;
    min-height: calc(100vh - 64px);
}

.app-sidebar {
    position: sticky;
    top: 64px;
    width: 256px;
    height: calc(100vh - 64px);
    flex: 0 0 256px;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--slate-200);
    padding: 18px 12px;
    background: var(--white);
}

.nav-section {
    margin-bottom: 22px;
}

.nav-section p {
    margin: 0 12px 8px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.nav-link,
.logout-nav {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 12px;
    border-left: 4px solid transparent;
    border-radius: 8px;
    padding: 0 12px;
    color: var(--slate-600);
    text-decoration: none;
    font-size: 14px;
    font-weight: 750;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.nav-link:hover {
    color: var(--slate-900);
    background: var(--slate-50);
}

.nav-link.is-active {
    border-left-color: var(--blue);
    color: #1d4ed8;
    background: #eff6ff;
}

.logout-nav {
    margin-top: auto;
    color: #e11d48;
}

.logout-nav:hover {
    background: #fff1f2;
}

.nav-icon,
.quick-icon,
.empty-icon {
    width: 22px;
    height: 22px;
    border-radius: 7px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    position: relative;
}

.nav-icon {
    color: currentColor;
    background: currentColor;
    opacity: .72;
}

.nav-icon::before,
.quick-icon::before,
.empty-icon::before {
    content: "";
    position: absolute;
    inset: 6px;
    border: 2px solid currentColor;
}

.nav-icon::before {
    border-color: var(--white);
}

.home-icon::before {
    border-radius: 4px;
    transform: translateY(2px);
}

.calendar-icon::before {
    border-radius: 4px;
}

.doctor-icon::before {
    border-radius: 999px;
}

.report-icon::before,
.test-icon::before {
    border-radius: 3px;
}

.help-icon::before,
.support-icon::before {
    border-radius: 999px;
}

.dashboard {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 28px;
}

.hero-card,
.panel-card,
.quick-card,
.profile-card,
.tip-card {
    border: 1px solid var(--slate-200);
    border-radius: 16px;
    background: var(--white);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.hero-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 24px;
}

.hero-title-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.hero-card h1 {
    margin: 0;
    color: var(--slate-900);
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.15;
    font-weight: 850;
}

.hero-card p {
    margin: 8px 0 0;
    color: var(--slate-500);
    font-size: 16px;
}

.online-badge {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    color: #047857;
    background: #d1fae5;
    font-size: 12px;
    font-weight: 850;
}

.hero-actions {
    display: flex;
    gap: 12px;
    flex: 0 0 auto;
}

.outline-action,
.solid-action {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 850;
}

.outline-action {
    border: 1px solid var(--slate-200);
    color: var(--slate-700);
    background: var(--white);
}

.solid-action {
    color: var(--white);
    background: var(--blue);
    box-shadow: var(--shadow-blue);
}

.quick-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 24px;
}

.quick-card {
    padding: 20px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.quick-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 28px rgba(15, 23, 42, .08);
}

.quick-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    margin-bottom: 18px;
}

.quick-blue .quick-icon {
    color: var(--blue);
    background: #eff6ff;
}

.quick-emerald .quick-icon {
    color: #059669;
    background: #ecfdf5;
}

.quick-purple .quick-icon {
    color: #9333ea;
    background: #faf5ff;
}

.quick-rose .quick-icon {
    color: #e11d48;
    background: #fff1f2;
}

.quick-card h2 {
    margin: 0;
    color: var(--slate-900);
    font-size: 16px;
}

.quick-card p {
    margin: 6px 0 0;
    color: var(--slate-500);
    font-size: 14px;
}

.content-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
    gap: 24px;
    margin-top: 24px;
}

.main-column,
.side-column {
    display: grid;
    gap: 24px;
    align-content: start;
}

.panel-card {
    padding: 24px;
}

.panel-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.panel-head h2,
.profile-card h2,
.tip-card h2 {
    margin: 0;
    color: var(--slate-900);
    font-size: 18px;
    line-height: 1.25;
}

.panel-head p,
.profile-card p,
.tip-card p {
    margin: 6px 0 0;
    color: var(--slate-500);
    font-size: 14px;
    line-height: 1.6;
}

.panel-head a {
    color: var(--blue);
    text-decoration: none;
    font-size: 14px;
    font-weight: 850;
    white-space: nowrap;
}

.empty-appointment {
    min-height: 240px;
    display: grid;
    place-items: center;
    align-content: center;
    border: 1px dashed var(--slate-200);
    border-radius: 14px;
    padding: 28px;
    text-align: center;
    background: var(--slate-50);
}

.empty-icon {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    color: var(--blue);
    background: #eff6ff;
    margin-bottom: 14px;
}

.empty-appointment h3 {
    margin: 0;
    color: var(--slate-900);
    font-size: 17px;
}

.empty-appointment p {
    max-width: 360px;
    margin: 8px 0 14px;
    color: var(--slate-500);
    line-height: 1.55;
}

.small-action {
    min-height: 38px;
    padding: 0 14px;
}

.dashboard-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
}

.profile-card,
.tip-card {
    padding: 24px;
}

.profile-card {
    text-align: center;
}

.profile-avatar {
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    margin: 0 auto 14px;
    color: var(--white);
    background: linear-gradient(135deg, #fb923c, #f43f5e);
    font-size: 22px;
    font-weight: 850;
}

.profile-card span {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    margin-top: 14px;
    padding: 0 12px;
    color: #b45309;
    background: #fef3c7;
    font-size: 12px;
    font-weight: 850;
}

.tip-card {
    background: linear-gradient(135deg, #eff6ff, #ecfeff);
}

.tip-icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    margin-bottom: 14px;
    background: var(--blue);
    box-shadow: var(--shadow-blue);
    position: relative;
}

.tip-icon::before {
    content: "";
    position: absolute;
    inset: 12px 15px;
    border-radius: 999px;
    background: var(--white);
    box-shadow: 0 11px 0 -2px var(--white);
}

@media (max-width: 980px) {
    .login-shell {
        display: grid;
        min-height: 100svh;
        padding: 18px;
        place-items: center;
        position: relative;
        overflow: hidden;
        background: radial-gradient(circle at 15% 0%, rgba(37, 99, 235, .16), transparent 32%),
        linear-gradient(180deg, #eff6ff 0%, #fff 44%, #f8fafc 100%);
    }

    .login-side {
        width: min(100%, 460px);
        min-height: auto;
        display: block;
        padding: 0;
        position: relative;
        z-index: 1;
    }

    .login-form-wrap {
        max-width: none;
        border: 1px solid rgba(226, 232, 240, .9);
        border-radius: 24px;
        padding: 26px 22px;
        background: rgba(255, 255, 255, .94);
        box-shadow: 0 22px 60px rgba(15, 23, 42, .12);
        backdrop-filter: blur(18px);
    }

    .brand-row {
        justify-content: center;
        margin-bottom: 28px;
    }

    .brand-row img {
        max-width: 245px;
        height: auto;
    }

    .welcome-copy {
        margin-bottom: 24px;
        text-align: center;
    }

    .welcome-copy h1 {
        font-size: 28px;
    }

    .welcome-copy p {
        font-size: 14px;
        line-height: 1.55;
    }

    .login-form input {
        height: 52px;
        border-radius: 14px;
        background: #f8fafc;
    }

    .login-form button {
        min-height: 52px;
        border-radius: 14px;
    }

    .showcase-side {
        display: none;
    }

    .app-layout {
        display: block;
    }

    .app-sidebar {
        display: none;
    }

    .dashboard {
        padding: 18px;
    }

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

    .content-grid {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 520px) {
    .login-shell {
        padding: 14px;
        align-items: start;
    }

    .login-form-wrap {
        margin-top: 10px;
        padding: 22px 18px;
        border-radius: 22px;
    }

    .brand-row {
        margin-bottom: 24px;
    }

    .brand-row strong {
        font-size: 21px;
    }

    .welcome-copy h1 {
        font-size: 26px;
    }

    .welcome-copy p {
        font-size: 13px;
    }

    .modal-backdrop {
        align-items: flex-end;
        padding: 0;
    }

    .otp-modal {
        width: 100%;
        max-height: 92svh;
        overflow: auto;
        border-radius: 24px 24px 0 0;
        padding: 24px 18px max(24px, env(safe-area-inset-bottom));
    }

    .otp-modal h2 {
        font-size: 24px;
    }

    .otp-inputs {
        gap: 7px;
    }

    .otp-inputs input {
        height: 50px;
        font-size: 20px;
    }

    .patient-summary {
        grid-template-columns: 1fr;
    }

    .app-topbar {
        padding: 0 16px;
    }

    .app-brand small,
    .top-action {
        display: none;
    }

    .hero-card,
    .panel-head {
        display: grid;
    }

    .hero-actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }

    .quick-grid,
    .dashboard-summary {
        grid-template-columns: 1fr;
    }
}

.lh-sprite {
    display: none;
}

.lh-app {
    min-height: 100vh;
    background: #f8fafc;
    color: #0f172a;
}

.lh-app svg {
    width: 1em;
    height: 1em;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.lh-shell {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 256px minmax(0, 1fr);
    grid-template-rows: 64px minmax(0, 1fr);
}

.lh-topbar {
    grid-column: 1 / -1;
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    gap: 18px;
    border-bottom: 1px solid #e2e8f0;
    padding: 0 24px;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(14px);
}

.lh-logo,
.lh-user-chip,
.lh-sidebar a,
.lh-btn,
.lh-quick-card,
.lh-panel header a,
.lh-service-row a,
.lh-logout {
    text-decoration: none;
}

.lh-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: inherit;
    flex: 0 0 auto;
}

.lh-logo-mark {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    color: #fff;
    background: #2563eb;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .22);
    font-size: 20px;
    font-weight: 700;
}

.lh-logo strong {
    display: block;
    color: #0f172a;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
}

.lh-logo small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
    font-weight: 500;
}

.lh-search {
    max-width: 544px;
    height: 40px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 1 544px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 0 12px;
    background: #f8fafc;
    color: #94a3b8;
}

.lh-search input {
    height: auto;
    border: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
    color: #0f172a;
}

.lh-search input:focus {
    box-shadow: none;
}

.lh-search svg {
    width: 18px;
    height: 18px;
}

.lh-top-profile {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
}

.lh-top-cta {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 9px;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.lh-top-cta svg {
    width: 16px;
    height: 16px;
}

.lh-top-cta.green {
    border: 1px solid #86efac;
    color: #059669;
    background: #f0fdf4;
    text-decoration: none;
}

.lh-top-cta.blue {
    color: #fff;
    background: #2563eb;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .22);
    text-decoration: none;
}

.lh-icon-button {
    width: 40px;
    height: 40px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    display: grid;
    place-items: center;
    margin: 0;
    background: #fff;
    box-shadow: none;
    color: #475569;
    position: relative;
}

.lh-icon-button.borderless {
    border-color: transparent;
    border-left: 1px solid #e2e8f0;
    border-radius: 0;
}

.lh-icon-button:hover {
    background: #f8fafc;
    color: #0f172a;
    transform: none;
}

.lh-icon-button svg {
    width: 19px;
    height: 19px;
}

.lh-dot {
    position: absolute;
    top: 9px;
    right: 9px;
    width: 8px;
    height: 8px;
    border: 2px solid #fff;
    border-radius: 999px;
    background: #ef4444;
}

.lh-user-chip {
    display: flex;
    align-items: center;
    gap: 10px;
    color: inherit;
}

.lh-avatar,
.lh-big-avatar {
    display: grid;
    place-items: center;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #fb923c, #f43f5e);
    font-weight: 700;
}

.lh-avatar {
    width: 40px;
    height: 40px;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px #e2e8f0;
    font-size: 13px;
}

.lh-user-text strong {
    display: block;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 600;
}

.lh-user-text small {
    display: block;
    margin-top: 2px;
    color: #f59e0b;
    font-size: 12px;
    font-weight: 600;
}

.lh-sidebar {
    grid-row: 2;
    position: sticky;
    top: 64px;
    height: calc(100vh - 64px);
    display: flex;
    flex-direction: column;
    border-right: 1px solid #e2e8f0;
    background: #fff;
    overflow: auto;
}

.lh-sidebar nav {
    padding: 16px 12px;
}

.lh-sidebar section {
    margin-bottom: 24px;
}

.lh-sidebar h2 {
    margin: 0 12px 8px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.lh-sidebar a,
.lh-logout {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 12px;
    border-left: 4px solid transparent;
    border-radius: 9px;
    padding: 0 10px;
    color: #64748b;
    font-size: 14px;
    font-weight: 600;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.lh-sidebar a:hover {
    color: #0f172a;
    background: #f8fafc;
}

.lh-sidebar a.active {
    border-left-color: #2563eb;
    color: #1d4ed8;
    background: #eff6ff;
}

.lh-sidebar svg,
.lh-logout svg {
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
}

.lh-sidebar a span,
.lh-logout span {
    min-width: 0;
    flex: 1;
}

.lh-sidebar b {
    min-width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-grid;
    place-items: center;
    background: #e2e8f0;
    color: #475569;
    font-size: 12px;
    font-weight: 600;
}

.lh-sidebar a.active b {
    background: #dbeafe;
    color: #1d4ed8;
}

.lh-logout {
    margin: auto 12px 16px;
    color: #e11d48;
}

.lh-logout:hover {
    background: #fff1f2;
}

.lh-main {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    max-width: none;
    padding: 32px 56px;
}

.lh-welcome,
.lh-panel,
.lh-quick-card,
.lh-profile-card,
.lh-tip-card,
.lh-mini-panel {
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-welcome {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 114px;
    padding: 24px;
    border-radius: 15px;
}

.lh-title-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.lh-title-line h1 {
    margin: 0;
    color: #0f172a;
    font-size: clamp(28px, 3vw, 34px);
    line-height: 1.15;
    font-weight: 700;
}

.lh-title-line span {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    color: #047857;
    background: #d1fae5;
    font-size: 12px;
    font-weight: 600;
}

.lh-welcome p {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 16px;
}

.lh-actions {
    display: flex;
    gap: 12px;
    flex: 0 0 auto;
}

.lh-btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 600;
}

.lh-btn.ghost {
    border: 1px solid #e2e8f0;
    color: #334155;
    background: #fff;
}

.lh-btn.primary {
    color: #fff;
    background: #2563eb;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .22);
}

.lh-quick-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 32px;
}

.lh-quick-card {
    display: block;
    min-height: 150px;
    padding: 20px;
    border-radius: 15px;
    color: inherit;
    transition: transform .18s ease, box-shadow .18s ease;
}

.lh-quick-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 28px rgba(15, 23, 42, .08);
}

.lh-quick-card > span {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    margin-bottom: 18px;
}

.lh-quick-card svg {
    width: 24px;
    height: 24px;
}

.lh-quick-card strong {
    display: block;
    color: #0f172a;
    font-size: 16px;
    font-weight: 600;
}

.lh-quick-card small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 14px;
}

.lh-quick-card.blue > span {
    color: #2563eb;
    background: #eff6ff;
}

.lh-quick-card.emerald > span {
    color: #059669;
    background: #ecfdf5;
}

.lh-quick-card.purple > span {
    color: #9333ea;
    background: #faf5ff;
}

.lh-quick-card.rose > span {
    color: #e11d48;
    background: #fff1f2;
}

.lh-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(420px, 1fr);
    gap: 24px;
    margin-top: 32px;
}

.lh-left-stack,
.lh-right-stack {
    display: grid;
    gap: 24px;
    align-content: start;
}

.lh-panel,
.lh-profile-card,
.lh-tip-card,
.lh-mini-panel,
.lh-score-card,
.lh-calendar-card,
.lh-doctors-card {
    padding: 24px;
}

.lh-score-card,
.lh-calendar-card,
.lh-doctors-card {
    border: 1px solid #e2e8f0;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-panel header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.lh-panel h2,
.lh-profile-card h2,
.lh-tip-card h2,
.lh-mini-panel h2 {
    margin: 0;
    color: #0f172a;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 600;
}

.lh-panel p,
.lh-tip-card p,
.lh-profile-card p {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.lh-panel header a {
    color: #2563eb;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.lh-page-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 2px 0 26px;
}

.lh-page-head h1 {
    margin: 0;
    color: #0f172a;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}

.lh-page-head p {
    margin: 6px 0 0;
    color: #475569;
    font-size: 14px;
}

.lh-page-head .lh-btn svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
}

.lh-tabs {
    width: max-content;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    margin-bottom: 28px;
    border-radius: 14px;
    background: #f1f5f9;
}

.lh-tabs a {
    position: relative;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    padding: 0 20px;
    color: #64748b;
    font-size: 14px;
    font-weight: 600;
    transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}

.lh-tabs a.active {
    color: #2563eb;
    background: #fff;
    box-shadow: 0 1px 4px rgba(15, 23, 42, .1);
}

.lh-page-list {
    display: grid;
    gap: 12px;
}

.lh-page-list.hidden {
    display: none;
}

.lh-wide-appointment {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 14px;
    min-height: 98px;
    padding: 18px 18px 18px 16px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    background: #fff;
    transition: border-color .18s ease, background .18s ease;
}

.lh-wide-appointment:hover {
    border-color: #cbd8ea;
    background: #fbfdff;
}

.lh-wide-appointment.muted {
    background: #fbfdff;
}

.lh-doctor-avatar {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: #2563eb;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18);
}

.lh-doctor-avatar.large {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    font-size: 17px;
}

.lh-doctor-profile-card:nth-child(3n + 1) .lh-doctor-avatar {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.lh-doctor-profile-card:nth-child(3n + 2) .lh-doctor-avatar {
    background: linear-gradient(135deg, #fb7185, #e11d48);
    box-shadow: 0 8px 18px rgba(225, 29, 72, .16);
}

.lh-doctor-profile-card:nth-child(3n) .lh-doctor-avatar {
    background: linear-gradient(135deg, #10b981, #059669);
    box-shadow: 0 8px 18px rgba(5, 150, 105, .16);
}

.lh-wide-info h2 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    font-weight: 700;
}

.lh-wide-info p {
    margin: 4px 0 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.25;
}

.lh-wide-info small {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 7px;
    color: #64748b;
    font-size: 13px;
}

.lh-wide-info svg {
    width: 13px;
    height: 13px;
}

.lh-list-status {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 999px;
    padding: 0 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.lh-list-status::before {
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: currentColor;
}

.lh-list-status.ok {
    color: #047857;
    background: #d1fae5;
}

.lh-list-status.wait {
    color: #b45309;
    background: #fef3c7;
}

.lh-list-status.done {
    color: #475569;
    background: #e2e8f0;
}

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

.lh-doctor-profile-card {
    min-height: 176px;
    padding: 20px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    background: #fff;
    transition: border-color .18s ease, background .18s ease;
}

.lh-doctor-profile-card:hover {
    border-color: #cbd8ea;
    background: #fbfdff;
}

.lh-doctor-profile-card header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 14px;
}

.lh-doctor-profile-card h2 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    font-weight: 700;
}

.lh-doctor-profile-card p {
    margin: 5px 0 0;
    color: #475569;
    font-size: 14px;
}

.lh-heart-dot {
    color: #fb7185;
}

.lh-heart-dot svg {
    width: 18px;
    height: 18px;
}

.lh-doctor-divider {
    height: 1px;
    margin: 18px 0 14px;
    background: #eef2f7;
}

.lh-doctor-profile-card footer {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: end;
    gap: 18px;
}

.lh-doctor-profile-card footer small {
    display: block;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 600;
}

.lh-doctor-profile-card footer strong {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 700;
}

.lh-doctor-profile-card footer .lh-list-status {
    justify-self: end;
}

.lh-appointment-list {
    display: grid;
    gap: 12px;
}

.lh-appointment-list article {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(350px, auto) auto;
    align-items: center;
    gap: 20px;
    border: 1px solid #e5edf7;
    min-height: 96px;
    border-radius: 18px;
    padding: 18px 18px 18px 20px;
    background: #fff;
    box-shadow: none;
    overflow: hidden;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.lh-appointment-list article::before {
    content: "";
    position: absolute;
    inset: 18px auto 18px 0;
    width: 3px;
    border-radius: 0 999px 999px 0;
    background: #2f6df6;
}

.lh-appointment-list article:hover {
    transform: translateY(-1px);
    border-color: #cfe0f7;
    box-shadow: none;
    background: #fbfdff;
}

.lh-date {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    align-content: center;
    border: 1px solid #dbeafe;
    background: linear-gradient(180deg, #eff6ff 0%, #f8fbff 100%);
    color: #1e3a8a;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.lh-date strong {
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
}

.lh-date span {
    line-height: 1.15;
    max-width: 44px;
    margin-top: 4px;
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    color: #64748b;
}

.lh-appt-body h3 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0;
}

.lh-appt-body p,
.lh-appt-time {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.55;
}

.lh-appt-body svg,
.lh-appt-time svg {
    width: 14px;
    height: 14px;
}

.lh-appt-time {
    font-weight: 600;
}

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

.lh-status.ok {
    color: #047857;
    background: #d1fae5;
    box-shadow: inset 0 0 0 1px rgba(16, 185, 129, .12);
}

.lh-status.wait {
    color: #b45309;
    background: #fef3c7;
}

.lh-status.done {
    color: #c2410c;
    background: #ffedd5;
}

.lh-status-card {
    display: inline-grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    justify-self: end;
    gap: 7px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid #a7f3d0;
    border-radius: 999px;
    color: #065f46;
    background: #ecfdf5;
    box-shadow: none;
    flex: 0 0 auto;
}

.lh-status-dot {
    width: 8px;
    height: 8px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #10b981;
    box-shadow: none;
}

.lh-status-dot::before {
    content: "";
}

.lh-status-card strong,
.lh-status-card small,
.lh-action-copy strong,
.lh-action-copy small {
    display: block;
    min-width: 0;
}

.lh-status-card strong {
    color: #065f46;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.15;
}

.lh-status-card small {
    display: none;
}

.lh-appt-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-width: 0;
    flex: 0 0 auto;
}

.lh-appt-side {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    min-width: 350px;
}

.lh-reminder-btn,
.lh-cancel-appt-btn {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: auto;
    border-radius: 10px;
    padding: 0 11px;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: none;
    transition: border-color .18s ease, background .18s ease, color .18s ease;
    flex: 0 0 auto;
}

.lh-reminder-btn {
    border: 1px solid #dbeafe;
    color: #2563eb;
    background: #eff6ff;
}

.lh-cancel-appt-btn:hover {
    border: 1px solid #dbeafe;
    color: #fff;
    background: #de1332;
}

.lh-action-icon {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

.lh-action-icon svg {
    width: 13px;
    height: 13px;
}

.lh-reminder-btn .lh-action-icon {
    color: #2563eb;
    background: #dbeafe;
}

.lh-reminder-btn:hover:not(:disabled) {
    border-color: #bfdbfe;
    background: #eaf2ff;
}

.lh-reminder-btn.is-set,
.lh-reminder-btn:disabled {
    color: #047857;
    border-color: #bbf7d0;
    background: #ecfdf5;
    cursor: default;
}

.lh-reminder-btn.is-set {
    min-width: 156px;
}

.lh-reminder-btn.is-set .lh-action-icon,
.lh-reminder-btn:disabled .lh-action-icon {
    color: #047857;
    background: #bbf7d0;
}

.lh-cancel-appt-btn {
    border: 1px solid #fee2e2;
    color: #b91c1c;
    background: #fff7f7;
}

.lh-cancel-appt-btn .lh-action-icon {
    color: #b91c1c;
    background: #fee2e2;
}

.lh-cancel-appt-btn.is-confirming {
    color: #fff;
    border-color: #dc2626;
    background: #dc2626;
    box-shadow: 0 12px 22px rgba(220, 38, 38, .18);
}

.lh-cancel-appt-btn.is-confirming .lh-action-icon {
    color: #dc2626;
    background: #fff;
}

.lh-action-copy {
    min-width: 0;
}

.lh-action-copy strong {
    color: inherit;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
}

.lh-action-copy small {
    display: none;
}

.lh-reminder-btn.is-set .lh-action-copy small,
.lh-reminder-btn:disabled .lh-action-copy small {
    color: #047857;
}

.lh-cancel-appt-btn.is-confirming .lh-action-copy small,
.lh-cancel-appt-btn.is-confirming .lh-action-copy strong {
    color: #fff;
}

.lh-cancel-appt-btn:disabled {
    cursor: default;
    opacity: .72;
}

.lh-appointment-list article.is-cancelled {
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .22s ease, transform .22s ease;
}

.lh-empty-state {
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    padding: 18px;
    color: #64748b;
    background: #f8fafc;
    font-size: 14px;
}

.lh-row-arrow {
    width: 18px;
    height: 18px;
    color: #cbd5e1;
}

.lh-service-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.lh-service-row a {
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 16px;
    color: inherit;
    background: #fff;
}

.lh-service-row span {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    margin-bottom: 12px;
    color: #2563eb;
    background: #eff6ff;
}

.lh-service-row svg {
    width: 22px;
    height: 22px;
}

.lh-service-row strong,
.lh-service-row small {
    display: block;
}

.lh-service-row strong {
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.lh-service-row small {
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
}

.lh-profile-card {
    text-align: center;
}

.lh-big-avatar {
    width: 76px;
    height: 76px;
    margin: 0 auto 14px;
    font-size: 22px;
    font-weight: 700;
}

.lh-premium {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    margin-top: 14px;
    padding: 0 12px;
    color: #b45309;
    background: #fef3c7;
    font-size: 12px;
    font-weight: 600;
}

.lh-profile-card dl,
.lh-mini-panel dl {
    display: grid;
    gap: 10px;
    margin: 20px 0 0;
    text-align: left;
}

.lh-profile-card dl div,
.lh-mini-panel dl div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 12px;
    background: #f8fafc;
}

.lh-profile-card dt,
.lh-mini-panel dt {
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}

.lh-profile-card dd,
.lh-mini-panel dd {
    margin: 0;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.lh-tip-card {
    background: linear-gradient(135deg, #eff6ff, #ecfeff);
}

.lh-tip-card > span {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    margin-bottom: 14px;
    color: #fff;
    background: #2563eb;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .22);
}

.lh-tip-card > span svg {
    width: 24px;
    height: 24px;
}

.lh-tip-card button {
    width: auto;
    min-height: 38px;
    border-radius: 9px;
    margin-top: 16px;
    padding: 0 14px;
    background: #fff;
    color: #2563eb;
    box-shadow: none;
    font-size: 13px;
}

.lh-score-card {
    min-height: 160px;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #4338ca);
    box-shadow: 0 12px 24px rgba(37, 99, 235, .22);
}

.lh-score-head,
.lh-score-foot,
.lh-calendar-card header,
.lh-doctors-card header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.lh-score-head span {
    font-size: 15px;
    font-weight: 500;
}

.lh-score-head b {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    background: rgba(16, 185, 129, .28);
    font-size: 12px;
}

.lh-score-value {
    margin-top: 8px;
}

.lh-score-value strong {
    font-size: 38px;
    line-height: 1;
}

.lh-score-value span {
    margin-left: 6px;
    opacity: .86;
}

.lh-score-foot {
    margin-top: 24px;
    font-size: 14px;
}

.lh-score-foot a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
}

.lh-score-foot svg {
    width: 15px;
    height: 15px;
}

.lh-calendar-card header,
.lh-doctors-card header {
    margin-bottom: 20px;
}

.lh-calendar-card h2,
.lh-doctors-card h2 {
    margin: 0;
    color: #0f172a;
    font-size: 17px;
    font-weight: 600;
}

.lh-calendar-card header div {
    display: flex;
    gap: 10px;
}

.lh-calendar-card button {
    width: 28px;
    min-height: 28px;
    margin: 0;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    color: #0f172a;
    font-size: 24px;
    font-weight: 500;
}

.lh-calendar {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 14px 10px;
    text-align: center;
}

.lh-calendar span {
    color: #94a3b8;
    font-size: 12px;
}

.lh-calendar b {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    justify-self: center;
    border-radius: 999px;
    color: #334155;
    font-size: 14px;
    font-weight: 500;
    position: relative;
}

.lh-calendar b.selected {
    color: #fff;
    background: #2563eb;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .28);
}

.lh-calendar b.has-dot::after {
    content: "";
    position: absolute;
    bottom: -3px;
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: #f97316;
}

.lh-doctors-card header a {
    color: #2563eb;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
}

.lh-doctors-card article {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #f1f5f9;
    border-radius: 14px;
    padding: 12px;
}

.lh-doctors-card article + article {
    margin-top: 10px;
}

.lh-doctors-card article span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #60a5fa, #8b5cf6);
    font-size: 13px;
    font-weight: 700;
}

.lh-doctors-card strong,
.lh-doctors-card small {
    display: block;
}

.lh-doctors-card strong {
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.lh-doctors-card small {
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
}

.lh-mobile-only {
    display: none;
}

.lh-sidebar-scrim {
    display: none;
}

@media (max-width: 1120px) {
    .lh-search {
        display: none;
    }

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

    .lh-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .lh-doctor-grid-page {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lh-logo {
        width: auto;
    }
}

@media (max-width: 820px) {
    .lh-shell {
        display: block;
    }

    .lh-topbar {
        height: 60px;
        gap: 10px;
        padding: 0 12px;
    }

    .lh-mobile-only {
        display: grid;
    }

    .lh-logo {
        width: auto;
    }

    .lh-logo small,
    .lh-user-text {
        display: none;
    }

    .lh-logo-mark {
        width: 36px;
        height: 36px;
        border-radius: 10px;
    }

    .lh-top-profile {
        margin-left: auto;
        gap: 8px;
    }

    .lh-user-chip {
        padding: 0;
        border: 0;
        background: transparent;
    }

    .lh-sidebar {
        position: fixed;
        inset: 0 auto 0 0;
        z-index: 70;
        width: min(84vw, 310px);
        height: 100svh;
        display: flex;
        flex-direction: column;
        background: #fff;
        box-shadow: 24px 0 60px rgba(15, 23, 42, .22);
        transform: translateX(-105%);
        transition: transform .22s ease;
    }

    .lh-sidebar nav {
        padding-top: 22px;
    }

    .sidebar-open .lh-sidebar {
        transform: translateX(0);
    }

    .lh-sidebar-scrim {
        position: fixed;
        inset: 0;
        z-index: 65;
        display: none;
        background: rgba(15, 23, 42, .42);
        backdrop-filter: blur(3px);
    }

    .sidebar-open .lh-sidebar-scrim {
        display: block;
    }

    .lh-top-cta {
        display: none;
    }

    .lh-main {
        padding: 18px;
    }

    .lh-welcome {
        display: grid;
    }

    .lh-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .lh-page-head {
        display: grid;
    }
}

@media (max-width: 560px) {
    .lh-logo strong {
        font-size: 16px;
    }

    .lh-quick-grid,
    .lh-service-row {
        grid-template-columns: 1fr;
    }

    .lh-panel header {
        display: grid;
    }

    .lh-tabs {
        width: 100%;
    }

    .lh-tabs a {
        flex: 1;
    }

    .lh-wide-appointment {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .lh-wide-appointment .lh-list-status {
        grid-column: 2;
        justify-self: start;
    }

    .lh-doctor-grid-page {
        grid-template-columns: 1fr;
    }

    .lh-appointment-list article {
        grid-template-columns: auto minmax(0, 1fr);
        align-items: start;
        padding: 16px;
        min-height: 0;
    }

    .lh-row-arrow {
        display: none;
    }

    .lh-appt-side {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
        justify-content: space-between;
        flex-wrap: wrap;
        padding-top: 2px;
    }

    .lh-status {
        justify-self: start;
    }

    .lh-appt-actions {
        min-width: 0;
        width: auto;
    }

    .lh-reminder-btn,
    .lh-cancel-appt-btn {
        min-height: 36px;
    }

    .lh-score-foot {
        display: grid;
    }

    .lh-calendar {
        gap: 10px 6px;
    }
}

.modal-lock {
    overflow: hidden;
}

.appointment-modal {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, .58);
    backdrop-filter: blur(8px);
}

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

.appointment-dialog {
    width: min(1120px, 100%);
    max-height: min(860px, calc(100vh - 48px));
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 26px 80px rgba(15, 23, 42, .26);
    overflow: hidden;
}

.appointment-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-bottom: 1px solid #e2e8f0;
    padding: 22px 24px;
}

.appointment-head p,
.appointment-panel-title p,
.branch-placeholder p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
}

.appointment-head p {
    margin-bottom: 4px;
    color: #2563eb;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.appointment-head h2,
.appointment-panel-title h3,
.branch-placeholder h3 {
    margin: 0;
    color: #0f172a;
    line-height: 1.2;
}

.appointment-head h2 {
    font-size: 24px;
    font-weight: 700;
}

.appointment-close {
    width: 40px;
    min-height: 40px;
    margin: 0;
    border-radius: 12px;
    background: #f8fafc;
    box-shadow: none;
    color: #64748b;
    font-size: 24px;
    font-weight: 400;
}

.appointment-close:hover {
    background: #f1f5f9;
    color: #0f172a;
    transform: none;
}

.appointment-steps {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    margin: 0;
    padding: 18px 24px;
    border-bottom: 1px solid #e2e8f0;
    list-style: none;
    background: #f8fafc;
}

.appointment-steps li {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 600;
}

.appointment-steps span {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #e2e8f0;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    flex: 0 0 auto;
}

.appointment-steps li.active {
    color: #2563eb;
}

.appointment-steps li.active span {
    color: #fff;
    background: #2563eb;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .24);
}

.appointment-steps li.done {
    color: #059669;
}

.appointment-steps li.done span {
    color: #fff;
    background: #10b981;
}

.appointment-body {
    min-height: 0;
    overflow: auto;
    padding: 24px;
}

.appointment-step-panel {
    display: none;
}

.appointment-step-panel.active {
    display: block;
}

.appointment-panel-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}

.appointment-panel-title h3,
.branch-placeholder h3 {
    font-size: 20px;
    font-weight: 700;
}

.appointment-refresh {
    width: auto;
    min-height: 38px;
    margin: 0;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 0 14px;
    background: #fff;
    box-shadow: none;
    color: #334155;
    font-size: 13px;
    font-weight: 600;
}

.hospital-loading,
.hospital-empty {
    min-height: 220px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 12px;
    border: 1px dashed #cbd5e1;
    border-radius: 16px;
    color: #64748b;
    background: #f8fafc;
}

.hospital-loading[hidden] {
    display: none;
}

.hospital-loading span {
    width: 34px;
    height: 34px;
    border: 3px solid #dbeafe;
    border-top-color: #2563eb;
    border-radius: 999px;
    animation: spin .9s linear infinite;
}

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

.hospital-city-group header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.hospital-city-group h4 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    font-weight: 700;
}

.hospital-city-group header span {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-weight: 600;
}

.hospital-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.hospital-card {
    width: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: auto 1fr;
    border: 1px solid #d8e2ef;
    border-radius: 20px;
    margin: 0;
    padding: 0;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
    color: inherit;
    overflow: hidden;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.hospital-card:hover {
    border-color: #60a5fa;
    background: #fbfdff;
    box-shadow: 0 20px 42px rgba(15, 23, 42, .13);
    transform: translateY(-3px);
}

.hospital-card.selected {
    border-color: #2563eb;
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .14), 0 20px 42px rgba(37, 99, 235, .14);
}

.hospital-card-media {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    min-height: 190px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #e5edf7;
    background: linear-gradient(135deg, #e0f2fe, #eef2ff);
}

.hospital-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(15, 23, 42, 0) 48%, rgba(15, 23, 42, .18) 100%),
    linear-gradient(135deg, rgba(37, 99, 235, .08), rgba(14, 165, 233, 0));
    opacity: .9;
    pointer-events: none;
}

.hospital-card img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    background: #e2e8f0;
    transition: transform .45s ease, filter .25s ease;
}

.hospital-card:hover img {
    transform: scale(1.035);
    filter: saturate(1.04) contrast(1.02);
}

.hospital-card-check {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    font-weight: 700;
}

.hospital-card-check {
    top: 12px;
    right: 12px;
    width: 30px;
    height: 30px;
    justify-content: center;
    color: #fff;
    background: #2563eb;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .28);
    opacity: 0;
    transform: scale(.82);
    transition: opacity .18s ease, transform .18s ease;
}

.hospital-card-title {
    display: block;
    min-height: 46px;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: 0;
}

.hospital-card-location {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    min-width: 0;
}

.hospital-card-location em {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    padding: 0 9px;
    color: #1e40af;
    background: #eff6ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
}

.hospital-card.selected .hospital-card-check {
    opacity: 1;
    transform: scale(1);
}

.hospital-card-content {
    display: grid;
    gap: 10px;
    padding: 15px 16px 16px;
}

.hospital-card-content small {
    min-width: 0;
    color: #64748b;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
}

.hospital-card-content small::before {
    content: "";
    width: 7px;
    height: 7px;
    display: inline-block;
    border-radius: 999px;
    margin-right: 7px;
    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34, 197, 94, .12);
    vertical-align: 1px;
}

.hospital-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-width: 0;
}

.hospital-card-action {
    min-height: 30px;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 0 12px;
    color: #2563eb;
    background: #eff6ff;
    font-size: 12px;
    font-weight: 700;
    transition: background .18s ease, color .18s ease;
}

.hospital-card:hover .hospital-card-action,
.hospital-card.selected .hospital-card-action {
    color: #fff;
    background: #2563eb;
}

.selected-hospital {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid #bfdbfe;
    border-radius: 16px;
    margin-bottom: 20px;
    padding: 12px;
    background: #eff6ff;
}

.selected-hospital img {
    width: 92px;
    height: 68px;
    border-radius: 12px;
    object-fit: cover;
}

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

.branch-search {
    width: min(320px, 100%);
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #dbe4ef;
    border-radius: 12px;
    padding: 0 12px;
    background: #fff;
    color: #94a3b8;
}

.branch-search svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
}

.branch-search input {
    height: 38px;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
    font-size: 14px;
}

.branch-search input:focus {
    box-shadow: none;
}

.branch-loading {
    min-height: 180px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 12px;
    border: 1px dashed #cbd5e1;
    border-radius: 16px;
    color: #64748b;
    background: #f8fafc;
}

.branch-loading[hidden] {
    display: none;
}

.branch-loading span {
    width: 34px;
    height: 34px;
    border: 3px solid #dbeafe;
    border-top-color: #2563eb;
    border-radius: 999px;
    animation: spin .9s linear infinite;
}

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

.branch-card {
    width: 100%;
    min-height: 92px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 13px;
    border: 1px solid #dbe4ef;
    border-radius: 16px;
    margin: 0;
    padding: 15px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.branch-card:hover {
    border-color: #93c5fd;
    background: #fbfdff;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .1);
    transform: translateY(-2px);
}

.branch-card.selected {
    border-color: #2563eb;
    background: #eff6ff;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12), 0 16px 34px rgba(37, 99, 235, .12);
}

.branch-card-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    color: #2563eb;
    background: #eff6ff;
}

.branch-card-icon svg {
    width: 21px;
    height: 21px;
}

.branch-card-content {
    min-width: 0;
    display: grid;
    gap: 5px;
}

.branch-card-content strong {
    color: #0f172a;
    font-size: 15px;
    line-height: 1.28;
    font-weight: 700;
}

.branch-card-content small {
    color: #64748b;
    font-size: 12px;
    font-weight: 500;
}

.branch-card-check {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    color: #fff;
    background: #2563eb;
    opacity: 0;
    transform: scale(.8);
    transition: opacity .18s ease, transform .18s ease;
}

.branch-card.selected .branch-card-check {
    opacity: 1;
    transform: scale(1);
}

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

.doctor-card {
    width: 100%;
    min-height: 112px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    margin: 0;
    padding: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.doctor-card:hover {
    border-color: #93c5fd;
    background: #fbfdff;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .1);
    transform: translateY(-2px);
}

.doctor-card.selected {
    border-color: #2563eb;
    background: #eff6ff;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12), 0 16px 34px rgba(37, 99, 235, .12);
}

.doctor-card-avatar,
.selected-doctor-avatar {
    width: 70px;
    height: 70px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    color: #1d4ed8;
    background: linear-gradient(135deg, #dbeafe, #eef2ff);
    font-weight: 800;
    overflow: hidden;
    flex: 0 0 auto;
}

.doctor-card-avatar img,
.selected-doctor-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.doctor-card-content {
    min-width: 0;
    display: grid;
    gap: 6px;
}

.doctor-card-content strong {
    color: #0f172a;
    font-size: 16px;
    line-height: 1.28;
    font-weight: 700;
}

.doctor-card-content small {
    color: #64748b;
    font-size: 13px;
    font-weight: 500;
}

.doctor-card-check {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    color: #fff;
    background: #2563eb;
    opacity: 0;
    transform: scale(.8);
    transition: opacity .18s ease, transform .18s ease;
}

.doctor-card.selected .doctor-card-check {
    opacity: 1;
    transform: scale(1);
}

.selected-doctor {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid #bfdbfe;
    border-radius: 16px;
    margin-bottom: 20px;
    padding: 12px;
    background: #eff6ff;
}

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

.selected-doctor strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 700;
}

.selected-doctor span {
    margin-top: 3px;
    color: #64748b;
    font-size: 13px;
}

.slot-groups {
    display: grid;
    gap: 16px;
}

.slot-day {
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    padding: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.slot-day header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.slot-day header strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 700;
    text-transform: capitalize;
}

.slot-day header span {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-weight: 700;
}

.slot-times {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.slot-time {
    width: auto;
    min-height: 36px;
    margin: 0;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    padding: 0 14px;
    color: #1d4ed8;
    background: #eff6ff;
    box-shadow: none;
    font-size: 13px;
    font-weight: 700;
}

.slot-time:hover,
.slot-time.selected {
    border-color: #2563eb;
    color: #fff;
    background: #2563eb;
    transform: none;
}

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

.doctor-card {
    min-height: 184px;
    grid-template-columns: 112px minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    align-items: stretch;
    gap: 0;
    border-radius: 20px;
    padding: 0;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.doctor-card:hover {
    background: #fff;
    box-shadow: 0 22px 46px rgba(15, 23, 42, .14);
    transform: translateY(-3px);
}

.doctor-card.selected {
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .14), 0 22px 46px rgba(37, 99, 235, .14);
}

.doctor-card-avatar {
    grid-row: 1 / 3;
    width: 112px;
    height: 100%;
    min-height: 184px;
    border-radius: 0;
    background: #e0f2fe;
}

.doctor-card-content {
    padding: 18px 18px 10px;
    align-content: start;
    gap: 8px;
}

.doctor-card-content em {
    width: max-content;
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 9px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

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

.doctor-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 4px;
}

.doctor-card-tags i {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    padding: 0 9px;
    color: #475569;
    background: #f8fafc;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
}

.doctor-card-action {
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid #edf2f7;
    padding: 12px 18px;
    color: #2563eb;
    background: #fbfdff;
    font-size: 13px;
    font-weight: 800;
}

.doctor-card-action .doctor-card-check {
    position: static;
    opacity: 0;
    transform: scale(.82);
}

.doctor-card.selected .doctor-card-action {
    color: #fff;
    background: #2563eb;
}

.doctor-card.selected .doctor-card-action .doctor-card-check {
    opacity: 1;
    transform: scale(1);
    color: #2563eb;
    background: #fff;
}

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

.slot-summary > div {
    border: 1px solid #dbeafe;
    border-radius: 18px;
    padding: 16px;
    background: linear-gradient(135deg, #eff6ff, #fff);
}

.slot-summary strong,
.slot-summary span {
    display: block;
}

.slot-summary strong {
    color: #1d4ed8;
    font-size: 22px;
    line-height: 1;
    font-weight: 800;
}

.slot-summary span {
    margin-top: 6px;
    color: #64748b;
    font-size: 13px;
}

.slot-day {
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .07);
}

.slot-day header div {
    display: grid;
    gap: 3px;
}

.slot-day header small {
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}

.slot-times {
    gap: 10px;
}

.slot-time {
    min-width: 96px;
    min-height: 48px;
    display: grid;
    align-content: center;
    gap: 2px;
    border-radius: 14px;
    padding: 7px 13px;
    text-align: center;
}

.slot-time strong,
.slot-time span {
    display: block;
}

.slot-time strong {
    font-size: 14px;
    line-height: 1;
}

.slot-time span {
    color: inherit;
    font-size: 11px;
    font-weight: 600;
    opacity: .72;
}

.selected-hospital strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 700;
}

.selected-hospital span {
    margin-top: 4px;
    color: #64748b;
    font-size: 13px;
}

.branch-placeholder {
    min-height: 320px;
    display: grid;
    place-items: center;
    align-content: center;
    border: 1px dashed #cbd5e1;
    border-radius: 18px;
    padding: 28px;
    text-align: center;
    background: #f8fafc;
}

.branch-placeholder > span {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    margin-bottom: 16px;
    color: #2563eb;
    background: #eff6ff;
}

.branch-placeholder svg {
    width: 28px;
    height: 28px;
}

.branch-placeholder p {
    max-width: 460px;
    margin-top: 8px;
}

.appointment-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid #e2e8f0;
    padding: 16px 24px;
    background: #fff;
}

.appointment-back,
.appointment-next {
    width: auto;
    min-height: 42px;
    margin: 0;
    border-radius: 10px;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 600;
}

.appointment-back {
    border: 1px solid #e2e8f0;
    background: #fff;
    box-shadow: none;
    color: #334155;
}

.appointment-next {
    background: #2563eb;
    color: #fff;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .22);
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 900px) {
    .appointment-modal {
        align-items: flex-end;
        padding: 0;
        background: rgba(15, 23, 42, .5);
    }

    .appointment-dialog {
        width: 100%;
        height: 94svh;
        max-height: 94svh;
        grid-template-rows: auto auto minmax(0, 1fr) auto;
        border-radius: 22px 22px 0 0;
    }

    .appointment-head {
        padding: 16px 18px 14px;
    }

    .appointment-head h2 {
        font-size: 21px;
    }

    .appointment-close {
        width: 38px;
        min-height: 38px;
        border-radius: 12px;
    }

    .appointment-steps {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        padding: 12px 18px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .appointment-steps::-webkit-scrollbar {
        display: none;
    }

    .appointment-steps li {
        min-width: max-content;
        border: 1px solid #e2e8f0;
        border-radius: 999px;
        padding: 6px 10px 6px 6px;
        background: #fff;
        font-size: 12px;
    }

    .appointment-steps span {
        width: 24px;
        height: 24px;
    }

    .appointment-head,
    .appointment-body,
    .appointment-foot {
        padding-left: 18px;
        padding-right: 18px;
    }

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

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

    .doctor-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .appointment-head {
        align-items: center;
    }

    .appointment-head p {
        font-size: 11px;
    }

    .appointment-dialog {
        height: 100svh;
        max-height: 100svh;
        border-radius: 0;
    }

    .appointment-panel-title {
        display: grid;
    }

    .appointment-refresh {
        width: 100%;
    }

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

    .branch-search {
        width: 100%;
    }

    .branch-grid {
        grid-template-columns: 1fr;
    }

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

    .doctor-card-check {
        display: none;
    }

    .slot-day {
        padding: 14px;
    }

    .hospital-card {
        grid-template-rows: auto 1fr;
    }

    .hospital-card-media {
        min-height: 210px;
    }

    .appointment-foot {
        display: grid;
        grid-template-columns: 1fr;
        padding-bottom: max(18px, env(safe-area-inset-bottom));
    }

    .appointment-next,
    .appointment-back {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .doctor-card {
        grid-template-columns: 96px minmax(0, 1fr);
        min-height: 168px;
    }

    .doctor-card-avatar {
        width: 96px;
        min-height: 168px;
    }

    .doctor-card-content {
        padding: 14px 14px 8px;
    }

    .doctor-card-content strong {
        font-size: 16px;
    }

    .doctor-card-action {
        padding: 10px 14px;
    }

    .doctor-card-action .doctor-card-check {
        display: grid;
    }

    .slot-summary {
        grid-template-columns: 1fr;
    }

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

    .slot-time {
        width: 100%;
        min-width: 0;
    }
}

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

.appointment-modal .doctor-card {
    width: 100%;
    min-height: 190px;
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    align-items: stretch;
    justify-content: stretch;
    gap: 0;
    border: 1px solid #dbe4ef;
    border-radius: 20px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    color: #0f172a;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
    text-align: left;
}

.appointment-modal .doctor-card:hover {
    border-color: #93c5fd;
    color: #0f172a;
    background: #fff;
    box-shadow: 0 22px 46px rgba(15, 23, 42, .14);
    transform: translateY(-3px);
}

.appointment-modal .doctor-card.selected {
    border-color: #2563eb;
    color: #0f172a;
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .14), 0 22px 46px rgba(37, 99, 235, .14);
}

.appointment-modal .doctor-card-avatar {
    grid-row: 1 / 3;
    width: 150px;
    height: 100%;
    min-height: 190px;
    border-radius: 0;
    background: #e0f2fe;
}

.appointment-modal .doctor-card-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.appointment-modal .doctor-card-content {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 10px;
    padding: 18px 18px 10px;
    width: 100%;
    margin-left: 20px;
}

.appointment-modal .doctor-card-content em {
    width: max-content;
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 9px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.appointment-modal .doctor-card-content strong {
    color: #0f172a;
    font-size: 18px;
    line-height: 1.24;
    font-weight: 750;
}

.appointment-modal .doctor-card-content small {
    color: #64748b;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 500;
}

.appointment-modal .doctor-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 2px;
}

.appointment-modal .doctor-card-tags i {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    padding: 0 9px;
    color: #475569;
    background: #f8fafc;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
}

.appointment-modal .doctor-card-action {
    grid-column: 2;
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-top: 1px solid #edf2f7;
    padding: 0 18px;
    color: #2563eb;
    background: #fbfdff;
    font-size: 13px;
    font-weight: 800;
    margin-left: 32px;
}

.appointment-modal .doctor-card-check {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    color: #fff;
    background: #2563eb;
    opacity: 0;
    transform: scale(.84);
    transition: opacity .18s ease, transform .18s ease;
}

.appointment-modal .doctor-card.selected .doctor-card-action {
    color: #fff;
    background: #2563eb;
}

.appointment-modal .doctor-card.selected .doctor-card-check {
    color: #2563eb;
    background: #fff;
    opacity: 1;
    transform: scale(1);
}

.appointment-modal .selected-doctor {
    min-height: 92px;
    display: flex;
    align-items: center;
    gap: 14px;
}

.appointment-modal .selected-doctor-avatar {
    width: 76px;
    height: 76px;
    min-width: 76px;
    min-height: 76px;
    border-radius: 18px;
    overflow: hidden;
}

.appointment-modal .selected-doctor-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.appointment-modal .slot-groups {
    display: grid;
    gap: 16px;
}

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

.appointment-modal .slot-summary > div,
.appointment-modal .slot-day {
    border: 1px solid #dbe4ef;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .07);
}

.appointment-modal .slot-summary > div {
    padding: 16px;
    background: linear-gradient(135deg, #eff6ff, #fff);
}

.appointment-modal .slot-day {
    padding: 18px;
}

.appointment-modal .slot-times {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
    gap: 10px;
}

.appointment-modal .slot-time {
    width: 100%;
    min-width: 0;
    min-height: 50px;
    display: grid;
    align-content: center;
    gap: 2px;
    border: 1px solid #dbeafe;
    border-radius: 14px;
    margin: 0;
    padding: 7px 13px;
    color: #1d4ed8;
    background: #eff6ff;
    box-shadow: none;
    text-align: center;
}

.appointment-modal .slot-time:hover,
.appointment-modal .slot-time.selected {
    border-color: #2563eb;
    color: #fff;
    background: #2563eb;
    transform: none;
}

.appointment-modal .confirm-layout {
    display: grid;
    gap: 18px;
}

.appointment-modal .confirm-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    border: 1px solid #bfdbfe;
    border-radius: 22px;
    padding: 22px;
    background: linear-gradient(135deg, rgba(37, 99, 235, .08), rgba(16, 185, 129, .08)),
    #fff;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .08);
}

.appointment-modal .confirm-kicker {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    margin-bottom: 10px;
    padding: 0 10px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.appointment-modal .confirm-hero h3 {
    margin: 0;
    color: #0f172a;
    font-size: 26px;
    line-height: 1.15;
    font-weight: 800;
}

.appointment-modal .confirm-hero p {
    max-width: 620px;
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.55;
}

.appointment-modal .confirm-time {
    min-width: 180px;
    border-radius: 20px;
    padding: 18px;
    color: #fff;
    background: #2563eb;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
    text-align: center;
}

.appointment-modal .confirm-time strong,
.appointment-modal .confirm-time span {
    display: block;
}

.appointment-modal .confirm-time strong {
    font-size: 34px;
    line-height: 1;
    font-weight: 850;
}

.appointment-modal .confirm-time span {
    margin-top: 8px;
    font-size: 13px;
    font-weight: 650;
    opacity: .9;
    text-transform: capitalize;
}

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

.appointment-modal .confirm-card {
    min-height: 116px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    padding: 16px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.appointment-modal .confirm-card-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #2563eb;
    background: #eff6ff;
}

.appointment-modal .confirm-card-icon svg {
    width: 22px;
    height: 22px;
}

.appointment-modal .confirm-card small,
.appointment-modal .confirm-card strong,
.appointment-modal .confirm-card em {
    display: block;
}

.appointment-modal .confirm-card small {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.appointment-modal .confirm-card strong {
    margin-top: 5px;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 800;
}

.appointment-modal .confirm-card em {
    margin-top: 5px;
    color: #64748b;
    font-size: 13px;
    font-style: normal;
    line-height: 1.35;
}

.appointment-modal .confirm-doctor-photo {
    width: 58px;
    height: 58px;
    border-radius: 16px;
    overflow: hidden;
    background: #e0f2fe;
}

.appointment-modal .confirm-doctor-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.appointment-modal .confirm-notice {
    display: grid;
    gap: 5px;
    border: 1px solid #fde68a;
    border-radius: 18px;
    padding: 16px;
    background: #fffbeb;
}

.appointment-modal .confirm-notice strong {
    color: #92400e;
    font-size: 14px;
}

.appointment-modal .confirm-notice span {
    color: #78350f;
    font-size: 13px;
    line-height: 1.45;
}

.appointment-modal .confirm-success {
    min-height: 420px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 14px;
    border: 1px solid #bbf7d0;
    border-radius: 24px;
    padding: 32px;
    background: linear-gradient(135deg, #ecfdf5, #fff);
    text-align: center;
}

.appointment-modal .confirm-success > span {
    width: 78px;
    height: 78px;
    display: grid;
    place-items: center;
    border-radius: 24px;
    color: #fff;
    background: #10b981;
    box-shadow: 0 18px 34px rgba(16, 185, 129, .24);
}

.appointment-modal .confirm-success svg {
    width: 34px;
    height: 34px;
}

.appointment-modal .confirm-success h3 {
    margin: 0;
    color: #064e3b;
    font-size: 28px;
    font-weight: 850;
}

.appointment-modal .confirm-success p {
    max-width: 460px;
    margin: 0;
    color: #047857;
    line-height: 1.5;
}

.appointment-modal .confirm-success div {
    border-radius: 16px;
    margin-top: 4px;
    padding: 14px 18px;
    color: #065f46;
    background: #d1fae5;
}

.appointment-modal .confirm-success strong,
.appointment-modal .confirm-success em {
    display: block;
}

.appointment-modal .confirm-success em {
    margin-top: 4px;
    font-style: normal;
    font-weight: 750;
}

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

    .appointment-modal .confirm-hero,
    .appointment-modal .confirm-grid {
        grid-template-columns: 1fr;
    }

    .appointment-modal .confirm-time {
        min-width: 0;
    }
}

@media (max-width: 560px) {
    .appointment-modal .doctor-card {
        grid-template-columns: 96px minmax(0, 1fr);
        min-height: 168px;
    }

    .appointment-modal .doctor-card-avatar {
        width: 96px;
        min-height: 168px;
    }

    .appointment-modal .slot-summary {
        grid-template-columns: 1fr;
    }
}

/* Randevularım ve Doktorlarım sayfaları */
.lh-app .lh-page-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin: 4px 0 26px;
}

.lh-app .lh-page-head h1 {
    margin: 0;
    color: #020617;
    font-size: 26px;
    line-height: 1.18;
    font-weight: 750;
}

.lh-app .lh-page-head p {
    margin: 7px 0 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.45;
}

.lh-app .lh-page-head .lh-btn {
    min-width: 154px;
    min-height: 40px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
}

.lh-app .lh-page-head .lh-btn svg {
    width: 16px;
    height: 16px;
    margin-right: 8px;
}

.lh-app .lh-tabs {
    width: max-content;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0 0 26px;
    padding: 4px;
    border-radius: 14px;
    background: #eef3fa;
}

.lh-app .lh-tabs a {
    min-width: 112px;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 11px;
    color: #64748b;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}

.lh-app .lh-tabs a.active {
    color: #1d4ed8;
    background: #fff;
    box-shadow: 0 2px 7px rgba(15, 23, 42, .12);
}

.lh-app .lh-empty-state {
    padding: 22px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    color: #475569;
    background: #fff;
}

.lh-app .lh-page-list {
    display: grid;
    gap: 12px;
}

.lh-app .lh-page-list.hidden {
    display: none;
}

.lh-app .lh-wide-appointment {
    min-height: 98px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 16px;
    padding: 16px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    color: #0f172a;
    background: #fff;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
}

.lh-app .lh-wide-appointment:hover {
    border-color: #cbd8ea;
    background: #fbfdff;
}

.lh-app .lh-wide-appointment.muted {
    background: #fbfdff;
}

.lh-app .lh-doctor-avatar {
    width: 50px;
    height: 50px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18);
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0;
}

.lh-app .lh-page-list .lh-wide-appointment:nth-of-type(3n + 2) .lh-doctor-avatar,
.lh-app .lh-doctor-profile-card:nth-child(3n) .lh-doctor-avatar {
    background: linear-gradient(135deg, #10b981, #059669);
    box-shadow: 0 8px 18px rgba(5, 150, 105, .16);
}

.lh-app .lh-page-list .lh-wide-appointment:nth-of-type(3n) .lh-doctor-avatar,
.lh-app .lh-doctor-profile-card:nth-child(3n + 2) .lh-doctor-avatar {
    background: linear-gradient(135deg, #fb7185, #e11d48);
    box-shadow: 0 8px 18px rgba(225, 29, 72, .16);
}

.lh-app .lh-doctor-avatar.large {
    width: 58px;
    height: 58px;
    border-radius: 15px;
    font-size: 18px;
}

.lh-app .lh-wide-info {
    min-width: 0;
}

.lh-app .lh-wide-info h2 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 750;
}

.lh-app .lh-wide-info p {
    margin: 5px 0 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.35;
}

.lh-app .lh-wide-info small {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
    color: #52647f;
    font-size: 13px;
    line-height: 1.3;
}

.lh-app .lh-wide-info small svg,
.lh-app .lh-row-arrow {
    width: 14px;
    height: 14px;
    color: #7890ae;
}

.lh-app .lh-row-arrow {
    color: #c8d4e5;
}

.lh-app .lh-list-status {
    min-height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 11px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 750;
    white-space: nowrap;
}

.lh-app .lh-list-status::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
}

.lh-app .lh-list-status.ok {
    color: #047857;
    background: #d1fae5;
}

.lh-app .lh-list-status.done {
    color: #b45309;
    background: #fef3c7;
}

.lh-app .lh-doctor-grid-page {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.lh-app .lh-doctor-profile-card {
    min-height: 176px;
    padding: 20px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
}

.lh-app .lh-doctor-profile-card:hover {
    border-color: #cbd8ea;
    background: #fbfdff;
}

.lh-app .lh-doctor-profile-card header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 14px;
}

.lh-app .lh-doctor-profile-card h2 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 750;
}

.lh-app .lh-doctor-profile-card p {
    margin: 5px 0 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.35;
}

.lh-app .lh-heart-dot {
    width: 24px;
    height: 24px;
    display: inline-grid;
    place-items: center;
    border: 0;
    color: #fb7185;
    background: transparent;
}

.lh-app .lh-heart-dot svg {
    width: 17px;
    height: 17px;
    fill: currentColor;
}

.lh-app .lh-doctor-divider {
    height: 1px;
    margin: 20px 0 15px;
    background: #edf2f7;
}

.lh-app .lh-doctor-profile-card footer {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr);
    align-items: end;
    gap: 22px;
}

.lh-app .lh-doctor-profile-card footer small {
    display: block;
    color: #94a3b8;
    font-size: 12px;
    line-height: 1.2;
}

.lh-app .lh-doctor-profile-card footer strong {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 800;
}

.lh-app .lh-doctor-profile-card footer .lh-list-status {
    justify-self: end;
}

.lh-app .lh-card-action {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    justify-self: end;
    border: 1px solid #dbe7f7;
    border-radius: 10px;
    padding: 0 14px;
    color: #2563eb;
    background: #eef6ff;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, color .18s ease;
    text-decoration: none;
}

.lh-app .lh-card-action svg {
    width: 15px;
    height: 15px;
}

.lh-app .lh-card-action:hover,
.lh-app .lh-card-action.active {
    border-color: #bfdbfe;
    background: #dbeafe;
}

.lh-app .lh-card-action.primary {
    color: #fff;
    border-color: #2563eb;
    background: #2563eb;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18);
}

.lh-app .lh-card-action.primary:hover {
    background: #1d4ed8;
}

.lh-app .lh-card-action:disabled {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
}

.lh-app .lh-prescription-list {
    display: grid;
    gap: 12px;
}

.lh-app .lh-prescription-card {
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
    overflow: hidden;
}

.lh-app .lh-prescription-main {
    min-height: 104px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 16px;
}

.lh-app .lh-prescription-code {
    display: inline-flex;
    width: max-content;
    margin-bottom: 6px;
    border-radius: 999px;
    padding: 4px 9px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    font-weight: 750;
}

.lh-app .lh-prescription-detail {
    border-top: 1px solid #edf2f7;
    padding: 14px 16px 16px;
    background: #fbfdff;
}

.lh-app .lh-detail-loading {
    color: #64748b;
    font-size: 13px;
}

.lh-app .lh-empty-state.compact {
    padding: 14px;
    font-size: 13px;
}

.lh-app .lh-medicine-list {
    display: grid;
    gap: 10px;
}

.lh-app .lh-medicine-card {
    display: grid;
    grid-template-columns: minmax(220px, 1.2fr) minmax(0, 2fr);
    gap: 18px;
    border: 1px solid #e4edf8;
    border-radius: 13px;
    padding: 14px;
    background: #fff;
}

.lh-app .lh-medicine-card strong {
    display: block;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 750;
}

.lh-app .lh-medicine-card span {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 13px;
}

.lh-app .lh-medicine-card dl {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
}

.lh-app .lh-medicine-card dt,
.lh-app .lh-medicine-card dd {
    margin: 0;
}

.lh-app .lh-medicine-card dt {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
}

.lh-app .lh-medicine-card dd {
    margin-top: 3px;
    color: #0f172a;
    font-size: 12px;
    font-weight: 750;
    word-break: break-word;
}

@media (max-width: 1180px) {
    .lh-app .lh-doctor-grid-page {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lh-app .lh-page-head {
        display: grid;
        gap: 16px;
        margin-bottom: 20px;
    }

    .lh-app .lh-page-head .lh-btn {
        width: 100%;
    }

    .lh-app .lh-tabs {
        width: 100%;
    }

    .lh-app .lh-tabs a {
        flex: 1;
        min-width: 0;
    }

    .lh-app .lh-wide-appointment {
        grid-template-columns: auto minmax(0, 1fr);
        align-items: start;
    }

    .lh-app .lh-wide-appointment .lh-list-status {
        grid-column: 2;
        justify-self: start;
    }

    .lh-app .lh-wide-appointment .lh-row-arrow {
        grid-column: 2;
        justify-self: end;
        margin-top: -26px;
    }

    .lh-app .lh-doctor-grid-page {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 460px) {
    .lh-app .lh-wide-appointment {
        padding: 14px;
        gap: 12px;
    }

    .lh-app .lh-doctor-avatar {
        width: 44px;
        height: 44px;
        border-radius: 13px;
        font-size: 14px;
    }

    .lh-app .lh-doctor-profile-card {
        padding: 16px;
    }

    .lh-app .lh-doctor-profile-card footer {
        grid-template-columns: 1fr 1fr;
        gap: 14px;
    }

    .lh-app .lh-doctor-profile-card footer .lh-list-status {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .lh-app .lh-prescription-main,
    .lh-app .lh-medicine-card {
        grid-template-columns: 1fr;
    }

    .lh-app .lh-prescription-main .lh-card-action {
        justify-self: start;
    }

    .lh-app .lh-medicine-card dl {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Reçetelerim sayfası */
.lh-app .lh-prescription-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.lh-app .lh-prescription-card {
    width: 100%;
    min-height: 154px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 16px;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    padding: 20px;
    color: inherit;
    text-align: left;
    background: #fff;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
    overflow: visible;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.lh-app .lh-prescription-card:hover {
    border-color: #cbd8ea;
    background: #fbfdff;
    transform: translateY(-1px);
}

.lh-app .lh-prescription-icon {
    width: 48px;
    height: 48px;
    display: inline-grid;
    place-items: center;
    border-radius: 15px;
    color: #7c3aed;
    background: #ede9fe;
}

.lh-app .lh-prescription-icon.large {
    width: 48px;
    height: 48px;
}

.lh-app .lh-prescription-icon svg {
    width: 24px;
    height: 24px;
}

.lh-app .lh-prescription-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.lh-app .lh-prescription-title-row {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.lh-app .lh-prescription-title-row strong {
    color: #0f172a;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 750;
}

.lh-app .lh-prescription-title-row em {
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 9px;
    color: #ef4444;
    background: #fee2e2;
    font-size: 12px;
    font-style: normal;
    font-weight: 750;
    white-space: nowrap;
}

.lh-app .lh-prescription-card.valid .lh-prescription-title-row em {
    color: #047857;
    background: #d1fae5;
}

.lh-app .lh-prescription-doctor {
    display: block;
    color: #52647f;
    font-size: 13px;
    line-height: 1.35;
}

.lh-app .lh-prescription-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.lh-app .lh-prescription-tags i {
    min-height: 23px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 1px solid #e9d5ff;
    border-radius: 999px;
    padding: 0 9px;
    color: #7c3aed;
    background: #f5f3ff;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
}

.lh-app .lh-prescription-tags svg {
    width: 12px;
    height: 12px;
}

.lh-app .lh-prescription-foot {
    display: flex;
    align-items: center;
    gap: 12px;
    border-top: 1px solid #edf2f7;
    margin-top: 2px;
    padding-top: 12px;
    color: #7890ae;
}

.lh-app .lh-prescription-foot small {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
}

.lh-app .lh-prescription-foot small:first-child {
    margin-right: auto;
}

.lh-app .lh-prescription-foot svg {
    width: 13px;
    height: 13px;
}

.lh-prescription-modal {
    position: fixed;
    inset: 0;
    z-index: 70;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(7px);
}

.lh-prescription-modal.is-open {
    display: flex;
}

.lh-prescription-dialog {
    width: min(512px, 100%);
    max-height: min(820px, calc(100svh - 48px));
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
    overflow: hidden;
}

.lh-prescription-dialog-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;
    gap: 16px;
    border-bottom: 1px solid #edf2f7;
    padding: 24px;
}

.lh-prescription-dialog-head h2 {
    margin: 0;
    color: #0f172a;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 800;
}

.lh-prescription-dialog-head p {
    margin: 4px 0 0;
    color: #52647f;
    font-size: 13px;
    line-height: 1.35;
}

.lh-prescription-close {
    width: 36px;
    height: 36px;
    display: inline-grid;
    place-items: center;
    border: 0;
    border-radius: 10px;
    color: #7890ae;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

.lh-prescription-close:hover {
    color: #334155;
    background: #f1f5f9;
}

.lh-prescription-dialog-body {
    overflow: auto;
    padding: 24px;
}

.lh-prescription-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 26px;
}

.lh-prescription-meta article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.lh-prescription-meta article:last-child {
    grid-column: 1 / -1;
}

.lh-prescription-meta svg {
    width: 16px;
    height: 16px;
    color: #8aa0bd;
    margin-top: 2px;
}

.lh-prescription-meta small,
.lh-prescription-meta strong {
    display: block;
}

.lh-prescription-meta small {
    color: #8aa0bd;
    font-size: 12px;
    font-weight: 700;
}

.lh-prescription-meta strong {
    margin-top: 3px;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 750;
}

.lh-prescription-warning {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    border: 1px solid #fecaca;
    border-radius: 16px;
    margin: 22px 0;
    padding: 15px;
    color: #ef4444;
    background: #fef2f2;
}

.lh-prescription-warning svg {
    width: 16px;
    height: 16px;
    margin-top: 2px;
}

.lh-prescription-warning strong,
.lh-prescription-warning span {
    display: block;
    font-size: 13px;
}

.lh-prescription-warning strong {
    font-weight: 800;
}

.lh-prescription-warning span {
    margin-top: 3px;
}

.lh-prescription-section-title {
    margin: 0 0 12px;
    color: #8aa0bd;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}

.lh-prescription-medicine-list {
    display: grid;
    gap: 14px;
}

.lh-prescription-medicine-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
    border: 1px solid #dfe8f4;
    border-radius: 15px;
    padding: 16px;
    background: #fbfdff;
}

.lh-prescription-medicine-icon {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: #7c3aed;
    background: #ede9fe;
}

.lh-prescription-medicine-icon svg {
    width: 15px;
    height: 15px;
}

.lh-prescription-medicine-card strong {
    display: block;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 700;
}

.lh-prescription-medicine-card span {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 8px;
    color: #52647f;
    font-size: 12px;
}

.lh-prescription-medicine-card span svg {
    width: 33px;
    height: 17px;
    color: #8aa0bd;
}

.lh-prescription-medicine-card em {
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    border: 1px solid #dfe8f4;
    border-radius: 999px;
    padding: 0 10px;
    color: #52647f;
    background: #fff;
    font-size: 12px;
    font-style: normal;
    font-weight: 650;
    white-space: nowrap;
}

.lh-prescription-dialog-foot {
    border-top: 1px solid #edf2f7;
    padding: 14px 24px;
    color: #7890ae;
    background: #fbfdff;
    font-size: 12px;
    font-weight: 700;
}

@media (max-width: 1100px) {
    .lh-app .lh-prescription-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .lh-prescription-modal {
        align-items: flex-end;
        padding: 0;
    }

    .lh-prescription-dialog {
        width: 100%;
        max-height: 92svh;
        border-radius: 22px 22px 0 0;
    }

    .lh-prescription-dialog-head,
    .lh-prescription-dialog-body,
    .lh-prescription-dialog-foot {
        padding-left: 18px;
        padding-right: 18px;
    }

    .lh-prescription-meta,
    .lh-prescription-medicine-card {
        grid-template-columns: 1fr;
    }

    .lh-prescription-meta article:last-child {
        grid-column: auto;
    }

    .lh-app .lh-prescription-card {
        grid-template-columns: 1fr;
    }

    .lh-app .lh-prescription-title-row,
    .lh-app .lh-prescription-foot {
        display: grid;
    }

    .lh-app .lh-prescription-foot small:first-child {
        margin-right: 0;
    }
}

/* Ana ekran dinamik takvim */
.lh-app .lh-calendar {
    align-items: center;
}

.lh-app .lh-calendar i {
    width: 30px;
    height: 30px;
}

.lh-app .lh-calendar button {
    position: relative;
    width: 30px;
    height: 30px;
    min-height: 30px;
    display: grid;
    place-items: center;
    justify-self: center;
    border: 0;
    border-radius: 999px;
    padding: 0;
    color: #334155;
    background: transparent;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.lh-app .lh-calendar button:disabled {
    cursor: default;
    opacity: 1;
}

.lh-app .lh-calendar button:not(:disabled):hover {
    color: #2563eb;
    background: #eff6ff;
}

.lh-app .lh-calendar button.selected {
    color: #fff;
    background: #2563eb;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .28);
}

.lh-app .lh-calendar button.has-dot::after {
    content: "";
    position: absolute;
    bottom: -3px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #f97316;
}

.lh-app .lh-calendar button.selected.has-dot::after {
    background: #f97316;
}

.lh-calendar-modal {
    position: fixed;
    inset: 0;
    z-index: 72;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(7px);
}

.lh-calendar-modal.is-open {
    display: flex;
}

.lh-calendar-dialog {
    width: min(520px, 100%);
    max-height: min(680px, calc(100svh - 48px));
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
    overflow: hidden;
}

.lh-calendar-dialog header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    border-bottom: 1px solid #edf2f7;
    padding: 22px 24px;
}

.lh-calendar-dialog header small {
    display: block;
    color: #2563eb;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.lh-calendar-dialog header h2 {
    margin: 5px 0 0;
    color: #0f172a;
    font-size: 20px;
    line-height: 1.25;
    font-weight: 800;
}

.lh-calendar-dialog header button {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 10px;
    color: #7890ae;
    background: #f8fafc;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.lh-calendar-appts {
    display: grid;
    gap: 12px;
    overflow: auto;
    padding: 18px 24px 24px;
}

.lh-calendar-appts article {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    border: 1px solid #dfe8f4;
    border-radius: 14px;
    padding: 14px;
    background: #fbfdff;
}

.lh-calendar-appts strong,
.lh-calendar-appts small,
.lh-calendar-appts em {
    display: block;
}

.lh-calendar-appts strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 800;
}

.lh-calendar-appts small {
    margin-top: 4px;
    color: #52647f;
    font-size: 13px;
}

.lh-calendar-appts em {
    margin-top: 8px;
    color: #2563eb;
    font-size: 13px;
    font-style: normal;
    font-weight: 750;
}

.lh-calendar-appts em svg {
    width: 13px;
    height: 13px;
    margin-right: 5px;
    vertical-align: -2px;
}

@media (max-width: 620px) {
    .lh-calendar-modal {
        align-items: flex-end;
        padding: 0;
    }

    .lh-calendar-dialog {
        max-height: 86svh;
        border-radius: 22px 22px 0 0;
    }
}

/* Sağlık Takibi - flat ve profesyonel arayüz düzenlemesi */
:root {
    --app-font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    --lh-brand: #2563eb;
    --lh-brand-dark: #1d4ed8;
    --lh-brand-soft: #eff6ff;
    --lh-ink: #0f172a;
    --lh-text: #334155;
    --lh-muted: #64748b;
    --lh-line: #e2e8f0;
    --lh-line-soft: #eef2f7;
    --lh-surface: #ffffff;
    --lh-surface-soft: #f8fafc;
}

html,
body,
button,
input,
select,
textarea {
    font-family: var(--app-font-family);
}

body {
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
}

.lh-app {
    background: #f6f8fb;
}

.lh-sidebar {
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

.lh-sidebar nav {
    padding: 18px 12px 20px;
}

.lh-sidebar section {
    margin-bottom: 22px;
}

.lh-sidebar h2 {
    margin: 0 12px 10px;
    color: #7c8da5;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .075em;
}

.lh-sidebar a,
.lh-logout {
    position: relative;
    min-height: 40px;
    gap: 11px;
    border-left: 0;
    border-radius: 12px;
    padding: 0 11px;
    color: #52647f;
    font-size: 13px;
    line-height: 1.25;
    letter-spacing: -.005em;
    outline: none;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.lh-sidebar a + a {
    margin-top: 3px;
}

.lh-sidebar a:hover,
.lh-sidebar a:focus-visible {
    color: #0f172a;
    background: #f1f6fb;
    transform: translateX(1px);
}

.lh-sidebar a.active {
    color: var(--lh-brand-dark);
    background: var(--lh-brand-soft);
    box-shadow: inset 3px 0 0 var(--lh-brand), 0 1px 0 rgba(37, 99, 235, .04);
}

.lh-sidebar svg,
.lh-logout svg {
    width: 19px;
    height: 19px;
    color: #6b7f99;
    stroke-width: 1.9;
}

.lh-sidebar a.active svg {
    color: var(--lh-brand);
}

.lh-sidebar a span,
.lh-logout span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lh-health-nav {
    margin-top: 2px;
    padding: 12px 0 4px;
    border-top: 1px solid #eef2f7;
}

.lh-health-nav a {
    min-height: 38px;
    font-size: 13px;
    font-weight: 650;
}

.lh-health-nav a svg {
    width: 18px;
    height: 18px;
}

.lh-page-head {
    align-items: flex-start;
}

.lh-app .lh-page-head h1,
.lh-page-head h1 {
    color: #08111f;
    font-size: 28px;
    line-height: 1.14;
    font-weight: 600;
    letter-spacing: -.025em;
}

.lh-app .lh-page-head p,
.lh-page-head p {
    max-width: 680px;
    color: #64748b;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 450;
}

.lh-health-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.lh-health-card {
    min-height: 148px;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 14px;
    padding: 18px;
    border: 1px solid var(--lh-line-soft);
    border-radius: 18px;
    color: var(--lh-ink);
    background: var(--lh-surface);
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.lh-health-card:hover,
.lh-health-card:focus-visible {
    border-color: #cfe0f7;
    background: #fbfdff;
    box-shadow: 0 14px 32px rgba(15, 23, 42, .08);
    transform: translateY(-2px);
    outline: none;
}

.lh-health-card > span,
.lh-health-entry-list article > span {
    width: 42px;
    height: 42px;
    display: inline-grid;
    place-items: center;
    border-radius: 14px;
    color: var(--lh-brand);
    background: var(--lh-brand-soft);
}

.lh-health-card svg,
.lh-health-entry-list svg {
    width: 21px;
    height: 21px;
    stroke-width: 1.9;
}

.lh-health-card strong {
    display: block;
    color: #0f172a;
    font-size: 15px;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: -.01em;
}

.lh-health-card small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 500;
}

.lh-health-card em {
    width: max-content;
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 12px;
    line-height: 1;
    font-style: normal;
    font-weight: 800;
}

.lh-health-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.lh-health-summary-grid article {
    min-height: 112px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    padding: 20px;
    border: 1px solid var(--lh-line-soft);
    border-radius: 18px;
    background: var(--lh-surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-health-summary-grid small {
    color: #64748b;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.lh-health-summary-grid strong {
    color: #0f172a;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 850;
    letter-spacing: -.03em;
}

.lh-health-history,
.lh-health-form-panel {
    border-color: var(--lh-line-soft);
    border-radius: 18px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-health-entry-list {
    display: grid;
    gap: 10px;
}

.lh-health-entry-list article {
    min-height: 76px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--lh-line-soft);
    border-radius: 15px;
    background: #fbfdff;
}

.lh-health-entry-list strong {
    display: block;
    color: #0f172a;
    font-size: 15px;
    line-height: 1.25;
    font-weight: 800;
}

.lh-health-entry-list small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 500;
}

.lh-health-entry-list form {
    margin: 0;
}

.lh-card-action.danger {
    color: #dc2626;
    border-color: #fee2e2;
    background: #fff1f2;
}

.lh-card-action.danger:hover {
    border-color: #fecdd3;
    background: #ffe4e6;
}

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

.lh-health-form label {
    display: grid;
    gap: 8px;
    color: #334155;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 800;
}

.lh-health-form label span {
    color: #334155;
}

.lh-health-form input,
.lh-health-form textarea,
.lh-health-form select {
    width: 100%;
    min-height: 44px;
    border: 1px solid #dbe5f1;
    border-radius: 12px;
    padding: 0 13px;
    color: #0f172a;
    background: #fff;
    font-size: 14px;
    font-weight: 550;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.lh-health-form textarea {
    min-height: 96px;
    padding-top: 12px;
}

.lh-health-form input:focus,
.lh-health-form textarea:focus,
.lh-health-form select:focus {
    border-color: var(--lh-brand);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .12);
}

.lh-health-form label small {
    color: #dc2626;
    font-size: 12px;
    font-weight: 700;
}

.lh-form-actions {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 6px;
}

@media (max-width: 1280px) {
    .lh-health-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .lh-health-grid,
    .lh-health-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .lh-health-grid,
    .lh-health-summary-grid,
    .lh-health-form {
        grid-template-columns: 1fr;
    }

    .lh-health-entry-list article {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .lh-health-entry-list .lh-card-action,
    .lh-health-entry-list form {
        justify-self: stretch;
        grid-column: 2;
    }
}

/* Sağlık Takibi v2 - ana sayfa, liste ve özel form tasarımları */
.lh-health-hero {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding: 24px;
    border: 1px solid #e6edf7;
    border-radius: 24px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-health-hero-copy {
    max-width: 760px;
}

.lh-eyebrow {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin-bottom: 8px;
    padding: 0 10px;
    border-radius: 999px;
    color: #2563eb;
    background: #eff6ff;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-health-hero h1 {
    margin: 0;
    color: #08111f;
    font-size: 30px;
    line-height: 1.12;
    font-weight: 850;
    letter-spacing: -.035em;
}

.lh-health-hero p {
    margin: 9px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 500;
}

.lh-health-hero-stat {
    min-width: 172px;
    display: grid;
    align-content: center;
    gap: 4px;
    padding: 18px;
    border-radius: 20px;
    background: #0f172a;
    color: #fff;
}

.lh-health-hero-stat small,
.lh-health-hero-stat span {
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 700;
}

.lh-health-hero-stat strong {
    font-size: 34px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: -.04em;
}

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

.lh-health-card-pro {
    min-height: 178px;
    position: relative;
    overflow: hidden;
    padding: 20px;
    border-radius: 22px;
}

.lh-health-card-pro:before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: var(--health-accent, #2563eb);
}

.lh-health-card-pro:after {
    content: "";
    position: absolute;
    right: -32px;
    top: -34px;
    width: 118px;
    height: 118px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--health-accent, #2563eb) 10%, transparent);
}

.lh-health-card-pro .lh-health-card-icon {
    color: var(--health-accent, #2563eb);
    background: color-mix(in srgb, var(--health-accent, #2563eb) 11%, #fff);
}

.lh-health-card-copy {
    position: relative;
    z-index: 1;
}

.lh-health-card-copy strong {
    font-size: 16px;
}

.lh-health-card-copy small {
    min-height: 38px;
}

.lh-health-card-footer {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.lh-health-card-footer b {
    color: #0f172a;
    font-size: 13px;
    font-weight: 850;
    text-align: right;
}

.lh-health-card-pro em {
    color: var(--health-accent, #2563eb);
    background: color-mix(in srgb, var(--health-accent, #2563eb) 11%, #fff);
}

.is-rose {
    --health-accent: #e11d48;
}

.is-red {
    --health-accent: #dc2626;
}

.is-amber {
    --health-accent: #d97706;
}

.is-cyan {
    --health-accent: #0891b2;
}

.is-emerald {
    --health-accent: #059669;
}

.is-violet {
    --health-accent: #7c3aed;
}

.is-orange {
    --health-accent: #ea580c;
}

.is-blue {
    --health-accent: #2563eb;
}

.is-purple {
    --health-accent: #9333ea;
}

.is-indigo {
    --health-accent: #4f46e5;
}

.is-slate {
    --health-accent: #475569;
}

.lh-health-mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.lh-health-mini-grid a {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    min-height: 86px;
    padding: 14px;
    border: 1px solid #e6edf7;
    border-radius: 18px;
    background: #fff;
    color: #0f172a;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .035);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.lh-health-mini-grid a:hover {
    transform: translateY(-1px);
    border-color: #cfe0f7;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
}

.lh-health-mini-grid a > span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #2563eb;
    background: #eff6ff;
}

.lh-health-mini-grid svg {
    width: 21px;
    height: 21px;
    stroke-width: 1.9;
}

.lh-health-mini-grid strong {
    display: block;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.2;
}

.lh-health-mini-grid em {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-size: 16px;
    font-style: normal;
    font-weight: 850;
    letter-spacing: -.02em;
}

.lh-health-mini-grid small {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}

.lh-health-form-hero {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
    padding: 20px;
    border: 1px solid #e6edf7;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-back-link {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    color: #0f172a;
    background: #f8fafc;
    transform: rotate(180deg);
}

.lh-back-link svg {
    width: 21px;
    height: 21px;
}

.lh-health-form-title {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.lh-health-form-title > span {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    color: var(--health-accent, #2563eb);
    background: color-mix(in srgb, var(--health-accent, #2563eb) 11%, #fff);
}

.lh-health-form-title svg {
    width: 24px;
    height: 24px;
}

.lh-health-form-title small {
    color: var(--health-accent, #2563eb);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-health-form-title h1 {
    margin: 2px 0 0;
    color: #08111f;
    font-size: 24px;
    line-height: 1.18;
    font-weight: 850;
    letter-spacing: -.03em;
}

.lh-health-form-title p {
    margin: 5px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 500;
}

.lh-health-form-shell {
    padding: 0;
    overflow: hidden;
}

.lh-health-form-pro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 22px;
}

.lh-form-wide {
    grid-column: 1 / -1;
}

.lh-form-section {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 0 0 4px;
    border-bottom: 1px solid #eef2f7;
}

.lh-form-section h2 {
    margin: 0;
    color: #0f172a;
    font-size: 16px;
    font-weight: 850;
    letter-spacing: -.02em;
}

.lh-form-section p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 500;
}

.lh-health-form-pro label {
    padding: 12px;
    border: 1px solid #eef2f7;
    border-radius: 16px;
    background: #fbfdff;
}

.lh-health-form-pro label > span {
    color: #334155;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: -.005em;
}

.lh-health-form-pro input,
.lh-health-form-pro textarea,
.lh-health-form-pro select {
    min-height: 50px;
    border-radius: 14px;
    border-color: #dbe5f1;
    background: #fff;
    font-size: 14px;
    font-weight: 650;
}

.lh-health-form-pro textarea {
    min-height: 104px;
    resize: vertical;
}

.lh-health-form-pro em {
    color: #64748b;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
}

.lh-form-actions-pro {
    position: sticky;
    bottom: 0;
    margin: 4px -22px -22px;
    padding: 16px 22px;
    border-top: 1px solid #eef2f7;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
}

.lh-form-actions-pro .lh-btn {
    min-height: 48px;
    flex: 1;
    justify-content: center;
    border-radius: 14px;
    font-weight: 850;
}

.lh-form-actions-pro .lh-btn.ghost {
    color: #dc2626;
    border-color: #fecaca;
    background: #fff;
}

.lh-form-actions-pro .lh-btn.primary {
    background: #059669;
    border-color: #059669;
}

.lh-health-metric-hero {
    align-items: center;
}

.lh-health-summary-pro article {
    position: relative;
    overflow: hidden;
}

.lh-health-summary-pro article:before {
    content: "";
    position: absolute;
    left: 0;
    top: 18px;
    bottom: 18px;
    width: 4px;
    border-radius: 999px;
    background: #2563eb;
}

.lh-health-history-pro .lh-health-entry-list article {
    background: #fff;
}

@media (max-width: 1280px) {
    .lh-health-grid-pro {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .lh-health-hero, .lh-health-form-hero {
        flex-direction: column;
        align-items: stretch;
    }

    .lh-health-hero-stat {
        min-width: 0;
    }

    .lh-health-mini-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .lh-health-hero {
        padding: 18px;
        border-radius: 20px;
    }

    .lh-health-hero h1 {
        font-size: 25px;
    }

    .lh-health-grid-pro {
        grid-template-columns: 1fr;
    }

    .lh-health-form-pro {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .lh-form-actions-pro {
        margin: 0 -16px -16px;
        padding: 14px 16px;
    }

    .lh-health-form-title {
        align-items: flex-start;
    }

    .lh-health-form-title h1 {
        font-size: 21px;
    }
}

/* Home health dashboard - dynamic score */
.lh-home-health-panel {
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.lh-home-health-header .lh-eyebrow {
    display: inline-flex;
    margin-bottom: 6px;
    color: #2563eb;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-health-overview-row {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 12px;
    margin-bottom: 14px;
}

.lh-health-overview-card {
    position: relative;
    overflow: hidden;
    min-height: 104px;
    padding: 16px;
    border: 1px solid #dbeafe;
    border-radius: 20px;
    background: #eff6ff;
}

.lh-health-overview-card.muted {
    border-color: #e6edf7;
    background: #fff;
}

.lh-health-overview-card small {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}

.lh-health-overview-card strong {
    display: block;
    margin-top: 6px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -.03em;
}

.lh-health-overview-card span {
    display: block;
    margin-top: 5px;
    color: #475569;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.45;
}

.lh-health-overview-card i {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 14px;
    height: 7px;
    border-radius: 999px;
    background: #dbeafe;
    top: 101px;
}

.lh-health-overview-card i:after {
    content: "";
    display: block;
    width: var(--progress, 0%);
    height: 100%;
    border-radius: inherit;
    background: #2563eb;
}

.lh-health-mini-grid-v2 a {
    border-color: color-mix(in srgb, var(--health-accent, #2563eb) 18%, #e6edf7);
}

.lh-health-mini-grid-v2 a:before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: var(--health-accent, #2563eb);
}

.lh-health-mini-grid-v2 a > span {
    color: var(--health-accent, #2563eb);
    background: color-mix(in srgb, var(--health-accent, #2563eb) 11%, #fff);
}

.lh-health-mini-grid-v2 a > b {
    align-self: end;
    justify-self: start;
    grid-column: 2;
    color: var(--health-accent, #2563eb);
    font-size: 11px;
    font-weight: 850;
}

.lh-health-quick-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #eef2f7;
}

.lh-health-quick-actions a {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none;
}

.lh-score-card-dynamic {
    position: relative;
    overflow: hidden;
    padding-bottom: 18px;
}

.lh-score-card-dynamic:after {
    content: "";
    position: absolute;
    right: -50px;
    top: -54px;
    width: 160px;
    height: 160px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
}

.lh-score-card-dynamic .lh-score-value {
    position: relative;
    z-index: 1;
}

.lh-score-ring {
    position: absolute;
    right: 20px;
    top: 56px;
    width: 82px;
    height: 82px;
    border-radius: 50%;
    background: conic-gradient(#ffffff var(--score, 0%), rgba(255, 255, 255, .22) 0);
    display: grid;
    place-items: center;
}

.lh-score-ring i {
    width: 58px;
    height: 58px;
    border-radius: inherit;
    background: linear-gradient(135deg, #2563eb, #4338ca);
}

.lh-score-foot .is-up {
    color: #bbf7d0;
}

.lh-score-foot .is-down {
    color: #fecaca;
}

.lh-score-foot .is-neutral {
    color: #dbeafe;
}

.lh-score-breakdown {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 8px;
    margin-top: 16px;
}

.lh-score-breakdown a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 9px 10px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 15px;
    background: rgba(255, 255, 255, .11);
    color: #fff;
    text-decoration: none;
}

.lh-score-breakdown span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, .16);
}

.lh-score-breakdown svg {
    width: 16px;
    height: 16px;
}

.lh-score-breakdown strong,
.lh-score-breakdown small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lh-score-breakdown strong {
    font-size: 12px;
    font-weight: 850;
}

.lh-score-breakdown small {
    margin-top: 2px;
    opacity: .78;
    font-size: 11px;
    font-weight: 650;
}

.lh-score-breakdown em {
    width: 32px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: rgba(255, 255, 255, .16);
    font-style: normal;
    font-size: 12px;
    font-weight: 900;
}

@media (max-width: 900px) {
    .lh-health-overview-row {
        grid-template-columns: 1fr;
    }

    .lh-score-ring {
        position: static;
        margin-top: 12px;
    }
}

/* Sağlık Takibi v4 - skor kartı, grafik, yorum ve sadakat sistemi */
.lh-score-main-row {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 8px;
}

.lh-score-card-dynamic .lh-score-ring {
    position: static;
    flex: 0 0 82px;
    margin-left: auto;
}

.lh-score-foot-v4 {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
}

.lh-score-foot-v4 span {
    min-width: 0;
    display: block;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 750;
}

.lh-score-foot-v4 a {
    white-space: nowrap;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
}

.lh-health-insight-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(300px, .85fr);
    gap: 18px;
    margin-bottom: 20px;
}

.lh-health-chart-card,
.lh-health-interpretation {
    min-height: 260px;
}

.lh-health-bar-chart {
    height: 210px;
    display: flex;
    align-items: end;
    gap: 10px;
    padding: 18px 6px 4px;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    overflow-x: auto;
}

.lh-health-bar-item {
    min-width: 58px;
    height: 100%;
    display: grid;
    grid-template-rows: 1fr auto auto;
    align-items: end;
    gap: 7px;
    text-align: center;
}

.lh-health-bar-item span {
    width: 100%;
    height: var(--bar, 20%);
    min-height: 18px;
    border-radius: 14px 14px 8px 8px;
    background: linear-gradient(180deg, var(--health-accent, #2563eb), color-mix(in srgb, var(--health-accent, #2563eb) 68%, #0f172a));
    box-shadow: 0 8px 18px color-mix(in srgb, var(--health-accent, #2563eb) 18%, transparent);
}

.lh-health-bar-item small {
    color: #64748b;
    font-size: 11px;
    font-weight: 750;
}

.lh-health-bar-item em {
    max-width: 64px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #0f172a;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
}

.lh-health-interpretation {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-content: start;
    gap: 16px;
    border: 1px solid #e6edf7;
    background: #fff;
}

.lh-health-interpretation-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    color: #2563eb;
    background: #eff6ff;
}

.lh-health-interpretation-icon svg {
    width: 26px;
    height: 26px;
}

.lh-health-interpretation small {
    color: #64748b;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-health-interpretation h2 {
    margin: 4px 0 8px;
    color: #0f172a;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -.03em;
}

.lh-health-interpretation p {
    color: #475569;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 550;
}

.lh-health-interpretation b {
    display: inline-flex;
    margin-top: 14px;
    padding: 8px 12px;
    border-radius: 999px;
    color: #0f172a;
    background: #f1f5f9;
    font-size: 12px;
    font-weight: 850;
}

.lh-health-interpretation.is-success .lh-health-interpretation-icon {
    color: #059669;
    background: #ecfdf5;
}

.lh-health-interpretation.is-warning .lh-health-interpretation-icon {
    color: #d97706;
    background: #fffbeb;
}

.lh-health-interpretation.is-danger .lh-health-interpretation-icon {
    color: #dc2626;
    background: #fef2f2;
}

.lh-loyalty-card {
    padding: 20px;
    border-radius: 24px;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 52%, #2563eb 100%);
    color: #fff;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .16);
}

.lh-loyalty-card header {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 14px;
}

.lh-loyalty-card small {
    display: block;
    color: #bfdbfe;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-loyalty-card h2 {
    margin-top: 3px;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -.035em;
}

.lh-loyalty-card header strong {
    padding: 8px 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
}

.lh-loyalty-card p {
    margin-top: 12px;
    color: #dbeafe;
    font-size: 13px;
    line-height: 1.45;
    font-weight: 650;
}

.lh-loyalty-progress {
    height: 9px;
    margin-top: 16px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
}

.lh-loyalty-progress span {
    display: block;
    width: var(--progress, 0%);
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #22c55e, #a3e635);
}

.lh-loyalty-card > em {
    display: block;
    margin-top: 8px;
    color: #bfdbfe;
    font-size: 12px;
    font-style: normal;
    font-weight: 750;
}

.lh-loyalty-segments {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}

.lh-loyalty-segments span {
    min-height: 48px;
    padding: 9px 10px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .1);
    color: #dbeafe;
    font-size: 11px;
    font-weight: 700;
}

.lh-loyalty-segments b {
    display: block;
    color: #fff;
    font-size: 15px;
    font-weight: 900;
}

.lh-loyalty-card footer {
    margin-top: 14px;
    padding: 11px 12px;
    border-radius: 15px;
    background: rgba(255, 255, 255, .12);
    color: #f8fafc;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 750;
}

@media (max-width: 980px) {
    .lh-health-insight-grid {
        grid-template-columns: 1fr;
    }

    .lh-score-foot-v4 {
        grid-template-columns: 1fr;
    }

    .lh-score-foot-v4 a {
        justify-self: start;
    }
}

/* v5 - Profil ve sadakat rozeti */
.lh-user-chip-premium {
    position: relative;
    min-height: 48px;
    padding: 5px 10px 5px 5px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .06);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.lh-user-chip-premium:hover {
    transform: translateY(-1px);
    border-color: #bfdbfe;
    box-shadow: 0 12px 28px rgba(37, 99, 235, .12);
}

.lh-user-chip-premium .lh-user-text small {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 18px;
    padding: 2px 8px;
    border-radius: 999px;
    color: #92400e;
    background: #fffbeb;
    font-size: 11px;
    font-weight: 900;
}

.lh-user-chip-premium.is-silver .lh-user-text small {
    color: #475569;
    background: #f1f5f9;
}

.lh-user-chip-premium.is-gold .lh-user-text small {
    color: #92400e;
    background: #fef3c7;
}

.lh-user-chip-premium.is-platinum .lh-user-text small {
    color: #1d4ed8;
    background: #dbeafe;
}

.lh-member-points {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 46px;
    height: 26px;
    padding: 0 9px;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #4f46e5);
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

.lh-user-chip-premium.is-silver .lh-member-points {
    background: linear-gradient(135deg, #64748b, #334155);
}

.lh-user-chip-premium.is-gold .lh-member-points {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

.lh-user-chip-premium.is-platinum .lh-member-points {
    background: linear-gradient(135deg, #2563eb, #7c3aed);
}

.lh-btn.light {
    border: 1px solid rgba(255, 255, 255, .45);
    color: #fff;
    background: rgba(255, 255, 255, .14);
    backdrop-filter: blur(10px);
}

.lh-profile-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding: 26px;
    border-radius: 26px;
    color: #fff;
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 54%, #2563eb 100%);
    box-shadow: 0 16px 34px rgba(15, 23, 42, .12);
}

.lh-profile-hero.is-silver {
    background: linear-gradient(135deg, #0f172a 0%, #334155 60%, #64748b 100%);
}

.lh-profile-hero.is-gold {
    background: linear-gradient(135deg, #78350f 0%, #b45309 55%, #f59e0b 100%);
}

.lh-profile-hero.is-platinum {
    background: linear-gradient(135deg, #172554 0%, #4f46e5 52%, #7c3aed 100%);
}

.lh-profile-identity {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.lh-profile-avatar {
    width: 72px;
    height: 72px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 3px solid rgba(255, 255, 255, .45);
    border-radius: 24px;
    background: rgba(255, 255, 255, .16);
    font-size: 22px;
    font-weight: 950;
}

.lh-profile-identity small {
    display: block;
    color: #bfdbfe;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-profile-identity h1 {
    margin-top: 4px;
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.05;
    font-weight: 950;
    letter-spacing: -.04em;
}

.lh-profile-identity p {
    margin-top: 8px;
    color: #e0f2fe;
    font-size: 14px;
    font-weight: 750;
}

.lh-profile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.lh-profile-loyalty-card {
    grid-column: 1 / -1;
}

.lh-profile-info-grid,
.lh-profile-score-row,
.lh-profile-segment-grid {
    display: grid;
    gap: 12px;
}

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

.lh-profile-score-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lh-profile-info-grid div,
.lh-profile-score-row div,
.lh-profile-segment-grid div {
    min-height: 88px;
    padding: 16px;
    border: 1px solid #e6edf7;
    border-radius: 20px;
    background: #f8fafc;
}

.lh-profile-info-grid small,
.lh-profile-score-row small {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.lh-profile-info-grid strong,
.lh-profile-score-row strong {
    display: block;
    margin-top: 8px;
    color: #0f172a;
    font-size: 18px;
    font-weight: 900;
}

.lh-profile-score-row strong {
    font-size: 28px;
    letter-spacing: -.035em;
}

.lh-profile-score-row span {
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
}

.lh-profile-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    padding: 0 15px;
    border-radius: 999px;
    color: #2563eb;
    background: #eff6ff;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none;
}

.lh-profile-link svg {
    width: 16px;
    height: 16px;
}

.lh-profile-loyalty-card > header > strong {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    color: #1d4ed8;
    background: #dbeafe;
    font-size: 12px;
    font-weight: 950;
}

.lh-profile-loyalty-main {
    margin-top: 8px;
    padding: 18px;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8fafc, #eff6ff);
}

.lh-profile-loyalty-level small {
    color: #64748b;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.lh-profile-loyalty-level h3 {
    margin-top: 5px;
    color: #0f172a;
    font-size: 30px;
    font-weight: 950;
    letter-spacing: -.04em;
}

.lh-profile-loyalty-level p {
    margin-top: 6px;
    color: #475569;
    font-size: 14px;
    font-weight: 650;
}

.lh-profile-loyalty-progress {
    height: 12px;
    margin-top: 18px;
    overflow: hidden;
    border-radius: 999px;
    background: #dbeafe;
}

.lh-profile-loyalty-progress span {
    display: block;
    width: var(--progress, 0%);
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #22c55e, #2563eb);
}

.lh-profile-loyalty-main em {
    display: block;
    margin-top: 10px;
    color: #334155;
    font-size: 13px;
    font-style: normal;
    font-weight: 800;
}

.lh-profile-segment-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 14px;
}

.lh-profile-segment-grid strong {
    display: block;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
}

.lh-profile-segment-grid span {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}

.lh-profile-loyalty-card footer {
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #bfdbfe;
    border-radius: 20px;
    background: #eff6ff;
}

.lh-profile-loyalty-card footer b {
    display: block;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 950;
}

.lh-profile-loyalty-card footer p {
    margin-top: 6px;
    color: #334155;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 650;
}

@media (max-width: 1100px) {
    .lh-member-points {
        display: none;
    }

    .lh-profile-grid {
        grid-template-columns: 1fr;
    }

    .lh-profile-segment-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lh-profile-hero {
        align-items: stretch;
        flex-direction: column;
        padding: 20px;
    }

    .lh-profile-info-grid,
    .lh-profile-score-row,
    .lh-profile-segment-grid {
        grid-template-columns: 1fr;
    }

    .lh-user-chip-premium {
        padding-right: 6px;
    }

    .lh-user-chip-premium .lh-user-text {
        display: none;
    }
}

/* v6: topbar global search */
.lh-global-search {
    position: relative;
    z-index: 30;
}

.lh-search-panel {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    right: 0;
    display: none;
    overflow: hidden;
    border: 1px solid #dbe4f0;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .16);
}

.lh-global-search.is-search-open .lh-search-panel {
    display: block;
}

.lh-search-panel-head,
.lh-search-panel-foot,
.lh-search-empty {
    padding: 13px 16px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}

.lh-search-panel-head {
    border-bottom: 1px solid #eef2f7;
    color: #334155;
    letter-spacing: .02em;
}

.lh-search-panel-foot {
    border-top: 1px solid #eef2f7;
    background: #f8fafc;
}

.lh-search-result {
    width: 100%;
    min-height: 58px;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 14px;
    background: #ffffff;
    color: #0f172a;
    text-align: left;
    cursor: pointer;
    transition: background .16s ease;
}

.lh-search-result:hover {
    background: #f1f6ff;
    transform: none;
    font-size: inherit;
    line-height: inherit;
}

.lh-search-result-icon {
    width: 34px;
    height: 34px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: #eff6ff;
    color: #2563eb;
    font-size: 11px;
    font-weight: 800;
}

.lh-search-result-icon.doctor {
    background: #ecfdf5;
    color: #059669;
}

.lh-search-result-icon.branch {
    background: #f5f3ff;
    color: #7c3aed;
}

.lh-search-result-icon.hospital {
    background: #eff6ff;
    color: #2563eb;
}

.lh-search-result-body {
    min-width: 0;
    display: grid;
    gap: 3px;
    flex: 1;
}

.lh-search-result-body strong {
    overflow: hidden;
    color: #0f172a;
    font-size: 13px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lh-search-result-body small {
    overflow: hidden;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lh-search-result em {
    border-radius: 999px;
    padding: 4px 8px;
    background: #f1f5f9;
    color: #475569;
    font-size: 10px;
    font-style: normal;
    font-weight: 800;
}

/* v6: login security code */
.security-code-row {
    display: grid;
    grid-template-columns: 1fr 48px;
    gap: 10px;
    align-items: stretch;
    margin-top: 6px;
}

.security-code-box {
    min-height: 58px;
    border: 1px dashed #93c5fd;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    background: linear-gradient(135deg, #eff6ff, #f8fafc);
}

.security-code-box span {
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}

.security-code-box strong {
    color: #1d4ed8;
    font-size: 22px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .18em;
    user-select: none;
}

.security-refresh {
    width: 48px;
    min-height: 58px;
    margin: 0;
    border: 1px solid #dbeafe;
    border-radius: 12px;
    background: #ffffff;
    color: #2563eb;
    box-shadow: none;
    font-size: 20px;
    font-weight: 900;
}

.security-refresh:hover {
    background: #eff6ff;
    transform: none;
    font-size: 20px;
    line-height: 1;
}


/* v8 - loyalty, reminders, appointment actions */
.lh-user-chip {
    min-width: 210px;
    justify-content: flex-start
}

.lh-member-points {
    margin-left: auto;
    white-space: nowrap
}

.lh-appointment-actions {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-left: auto
}

.lh-mini-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dbe7f6;
    background: #fff;
    border-radius: 14px;
    padding: 9px 12px;
    cursor: pointer;
    transition: .2s ease;
    min-width: 142px
}

.lh-mini-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15, 43, 86, .08)
}

.lh-mini-action .lh-action-icon {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    display: grid;
    place-items: center
}

.lh-mini-action .lh-action-icon svg {
    width: 14px;
    height: 14px
}

.lh-mini-action .lh-action-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    text-align: left
}

.lh-mini-action .lh-action-copy strong {
    font-size: 12px;
    font-weight: 800
}

.lh-mini-action .lh-action-copy small {
    font-size: 10px;
    color: #64748b;
    margin-top: 3px
}

.lh-mini-action.reminder {
    color: #059669;
    background: #f0fdf4;
    border-color: #bbf7d0
}

.lh-mini-action.reminder .lh-action-icon {
    background: #dcfce7
}

.lh-mini-action.reminder.is-set {
    background: #ecfdf5;
    border-color: #a7f3d0
}

.lh-mini-action.cancel {
    color: #dc2626;
    background: #fff7f7;
    border-color: #fecaca
}

.lh-mini-action.cancel .lh-action-icon {
    background: #fee2e2
}

.lh-mini-action.is-confirming {
    background: #fff7ed;
    color: #ea580c;
    border-color: #fed7aa
}

.reminder-hero {
    background: linear-gradient(135deg, #fff, #f8fbff)
}

.lh-eyebrow {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-weight: 900;
    font-size: 12px;
    letter-spacing: .08em;
    padding: 6px 12px;
    margin-bottom: 10px
}

.reminder-summary-grid {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 18px 0
}

.reminder-summary-grid article {
    background: #fff;
    border: 1px solid #dfe8f5;
    border-radius: 22px;
    padding: 20px;
    box-shadow: 0 12px 30px rgba(15, 43, 86, .05)
}

.reminder-summary-grid span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em
}

.reminder-summary-grid strong {
    display: block;
    font-size: 30px;
    margin: 8px 0;
    color: #0f172a
}

.reminder-summary-grid small {
    color: #64748b
}

.reminder-panel {
    padding: 22px
}

.reminder-timeline {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.reminder-row {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    padding: 15px;
    background: #fff
}

.reminder-icon {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: #eff6ff;
    color: #2563eb;
    display: grid;
    place-items: center
}

.reminder-icon svg {
    width: 20px;
    height: 20px
}

.reminder-copy {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1
}

.reminder-copy strong {
    font-weight: 900;
    color: #0f172a
}

.reminder-copy span, .reminder-copy small {
    color: #64748b
}

.reminder-copy em {
    font-style: normal;
    color: #dc2626;
    font-size: 12px
}

.reminder-status {
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-weight: 800;
    font-size: 12px;
    padding: 8px 12px
}

.status-pending .reminder-status {
    background: #eff6ff;
    color: #2563eb
}

.status-sent .reminder-status {
    background: #ecfdf5;
    color: #059669
}

.status-failed .reminder-status {
    background: #fef2f2;
    color: #dc2626
}

.status-canceled .reminder-status {
    background: #f8fafc;
    color: #64748b
}

@media (max-width: 1100px) {
    .reminder-summary-grid {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .lh-appointment-actions {
        width: 100%;
        margin-left: 0;
        flex-wrap: wrap
    }

    .lh-mini-action {
        flex: 1
    }
}

@media (max-width: 640px) {
    .reminder-summary-grid {
        grid-template-columns:1fr
    }

    .lh-user-chip {
        min-width: 0
    }

    .lh-member-points {
        display: none
    }
}

/* v9 appointment reminder fixes and professional reminder center */
.lh-notification-bell {
    position: relative;
    overflow: visible;
    text-decoration: none
}

.lh-notification-bell.has-alert {
    background: #eff6ff;
    color: #2563eb
}

.lh-notification-bell.has-alert svg {
    animation: lhBellRing 1.7s ease-in-out infinite;
    transform-origin: 50% 0
}

.lh-notification-bell span {
    position: absolute;
    top: 4px;
    right: 3px;
    min-width: 16px;
    height: 16px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    display: grid;
    place-items: center;
    border: 2px solid #fff;
    box-shadow: 0 8px 18px rgba(239, 68, 68, .28)
}

.lh-notification-bell.has-alert:after {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: 999px;
    border: 1px solid rgba(37, 99, 235, .34);
    animation: lhBellPulse 1.8s ease-out infinite
}

@keyframes lhBellRing {
    0%, 100% {
        transform: rotate(0)
    }
    8% {
        transform: rotate(15deg)
    }
    16% {
        transform: rotate(-13deg)
    }
    24% {
        transform: rotate(9deg)
    }
    32% {
        transform: rotate(-6deg)
    }
    40% {
        transform: rotate(0)
    }
}

@keyframes lhBellPulse {
    0% {
        transform: scale(.75);
        opacity: .7
    }
    80%, 100% {
        transform: scale(1.45);
        opacity: 0
    }
}

.reminder-hero-v9 {
    align-items: center;
    background: linear-gradient(135deg, #ffffff 0%, #f7fbff 55%, #eef6ff 100%);
    border: 1px solid #dfe8f5;
    border-radius: 30px;
    padding: 30px;
}

.reminder-hero-actions {
    display: flex;
    gap: 12px;
    align-items: center
}

.lh-btn.secondary {
    background: #fff;
    color: #2563eb;
    border: 1px solid #dbeafe;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .08)
}

.reminder-command-center {
    display: grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 18px 0 22px
}

.reminder-command-card {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 132px;
    background: #fff;
    border: 1px solid #dfe8f5;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 16px 38px rgba(15, 43, 86, .06)
}

.reminder-command-card:before {
    content: "";
    position: absolute;
    left: 0;
    top: 22px;
    bottom: 22px;
    width: 4px;
    border-radius: 999px;
    background: #2563eb
}

.reminder-command-card span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em
}

.reminder-command-card strong {
    display: block;
    color: #061431;
    font-size: 34px;
    line-height: 1;
    margin: 10px 0 12px;
    font-weight: 950
}

.reminder-command-card small {
    color: #64748b;
    line-height: 1.45
}

.reminder-command-card i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    background: #eff6ff;
    color: #2563eb;
    display: grid;
    place-items: center;
    font-style: normal;
    font-weight: 950;
    flex: 0 0 auto
}

.reminder-command-card i svg {
    width: 22px;
    height: 22px
}

.reminder-command-card.success:before {
    background: #10b981
}

.reminder-command-card.success i {
    background: #ecfdf5;
    color: #059669
}

.reminder-command-card.muted:before {
    background: #64748b
}

.reminder-command-card.muted i {
    background: #f1f5f9;
    color: #475569
}

.reminder-command-card.progress:before {
    background: #8b5cf6
}

.reminder-command-card.progress b {
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: conic-gradient(#2563eb var(--progress), #e2e8f0 0);
    display: grid;
    place-items: center
}

.reminder-command-card.progress b em {
    width: 42px;
    height: 42px;
    background: #fff;
    border-radius: 999px;
    display: block
}

.reminder-workspace {
    display: grid;
    grid-template-columns:360px minmax(0, 1fr);
    gap: 18px;
    align-items: start
}

.reminder-next-card {
    position: sticky;
    top: 92px;
    background: #132033;
    color: #fff;
    border-radius: 26px;
    padding: 24px;
    box-shadow: 0 22px 50px rgba(15, 23, 42, .18);
    overflow: hidden
}

.reminder-next-card:before {
    content: "";
    position: absolute;
    right: -46px;
    top: -46px;
    width: 170px;
    height: 170px;
    border-radius: 999px;
    background: rgba(37, 99, 235, .35)
}

.reminder-next-card .lh-eyebrow {
    background: rgba(255, 255, 255, .12);
    color: #bfdbfe;
    position: relative
}

.reminder-next-card h2 {
    font-size: 26px;
    line-height: 1.15;
    margin: 10px 0 6px;
    position: relative
}

.reminder-next-card p {
    color: #cbd5e1;
    line-height: 1.5;
    position: relative
}

.reminder-next-time {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 18px 0;
    position: relative
}

.reminder-next-time span {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 16px;
    padding: 12px;
    color: #e2e8f0;
    font-weight: 800
}

.reminder-next-time svg {
    width: 18px;
    height: 18px
}

.reminder-next-card > a {
    display: inline-flex;
    margin-top: 12px;
    background: #2563eb;
    color: #fff;
    border-radius: 14px;
    padding: 11px 16px;
    text-decoration: none;
    font-weight: 900
}

.reminder-pill {
    display: inline-flex;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    padding: 8px 12px;
    font-size: 12px;
    text-transform: uppercase;
    position: relative
}

.reminder-pill.is-sent {
    background: #ecfdf5;
    color: #059669
}

.reminder-pill.is-canceled {
    background: #f1f5f9;
    color: #475569
}

.reminder-pill.is-failed {
    background: #fef2f2;
    color: #dc2626
}

.reminder-process {
    display: grid;
    grid-template-columns:1fr;
    gap: 10px;
    margin-top: 22px;
    position: relative
}

.reminder-process span {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #cbd5e1;
    font-weight: 800
}

.reminder-process span:before {
    content: "";
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background: #475569;
    box-shadow: 0 0 0 5px rgba(255, 255, 255, .06)
}

.reminder-process span.active:before {
    background: #22c55e
}

.reminder-panel-v9 {
    padding: 22px;
    border-radius: 26px
}

.reminder-timeline-v9 {
    gap: 14px
}

.reminder-timeline-v9 .reminder-row {
    border-radius: 20px;
    padding: 16px 18px;
    border-color: #dfe8f5;
    box-shadow: 0 10px 28px rgba(15, 43, 86, .04);
    transition: .2s ease
}

.reminder-timeline-v9 .reminder-row:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(15, 43, 86, .08)
}

.reminder-timeline-v9 .reminder-icon {
    width: 50px;
    height: 50px;
    border-radius: 18px
}

.reminder-timeline-v9 .reminder-copy strong {
    font-size: 15px
}

.reminder-timeline-v9 .reminder-copy small b {
    color: #0f172a
}

.reminder-row-meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px
}

.reminder-row-meta small {
    color: #94a3b8;
    font-size: 11px
}

.lh-mini-action:disabled, .lh-reminder-btn:disabled, .lh-cancel-appt-btn:disabled {
    opacity: .75;
    cursor: not-allowed
}

.lh-wide-appointment.is-cancelled, .lh-appointment-card.is-cancelled {
    opacity: .45;
    transform: scale(.995);
    transition: .25s ease
}

@media (max-width: 1200px) {
    .reminder-command-center {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .reminder-workspace {
        grid-template-columns:1fr
    }

    .reminder-next-card {
        position: relative;
        top: auto
    }
}

@media (max-width: 680px) {
    .reminder-command-center {
        grid-template-columns:1fr
    }

    .reminder-hero-actions {
        width: 100%;
        flex-wrap: wrap
    }

    .reminder-hero-actions .lh-btn {
        flex: 1
    }

    .reminder-row-meta {
        align-items: flex-start
    }

    .reminder-timeline-v9 .reminder-row {
        align-items: flex-start;
        flex-direction: column
    }

    .reminder-command-card {
        min-height: auto
    }
}

/* Tanı ve ICD Sağlık Analizim */
.lh-diagnosis-hero,
.lh-diagnosis-card,
.lh-diagnosis-map-card,
.lh-diagnosis-insight-card,
.lh-alert-card {
    border: 1px solid #e3ebf6;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
}

.lh-diagnosis-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 20px;
    padding: 26px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
}

.lh-diagnosis-hero h1 {
    margin: 0;
    color: #08111f;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: -.04em;
}

.lh-diagnosis-hero p,
.lh-card-headline p {
    margin: 8px 0 0;
    max-width: 760px;
    color: #64748b;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 550;
}

.lh-diagnosis-risk {
    min-width: 190px;
    display: grid;
    gap: 5px;
    padding: 18px;
    border-radius: 20px;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #4338ca);
}

.lh-diagnosis-risk.is-high {
    background: linear-gradient(135deg, #dc2626, #be123c);
}

.lh-diagnosis-risk.is-medium {
    background: linear-gradient(135deg, #d97706, #ea580c);
}

.lh-diagnosis-risk.is-low {
    background: linear-gradient(135deg, #059669, #0d9488);
}

.lh-diagnosis-risk.is-empty {
    background: linear-gradient(135deg, #64748b, #334155);
}

.lh-diagnosis-risk small {
    color: rgba(255, 255, 255, .78);
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.lh-diagnosis-risk strong {
    font-size: 24px;
    line-height: 1.1;
    font-weight: 900;
    letter-spacing: -.025em;
}

.lh-diagnosis-risk span {
    font-size: 13px;
    font-weight: 850;
    opacity: .92;
}

.lh-alert-card {
    margin-bottom: 18px;
    padding: 16px 18px;
}

.lh-alert-card.danger {
    color: #991b1b;
    border-color: #fecaca;
    background: #fff1f2;
}

.lh-alert-card strong {
    display: block;
    font-size: 14px;
    font-weight: 900;
}

.lh-alert-card span {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    font-weight: 600;
}

.lh-diagnosis-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}

.lh-diagnosis-stats article {
    min-height: 116px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    padding: 20px;
    border: 1px solid #e3ebf6;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .035);
}

.lh-diagnosis-stats small {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.lh-diagnosis-stats strong {
    color: #0f172a;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 750;
    letter-spacing: -.04em;
}

.lh-diagnosis-stats span {
    color: #64748b;
    font-size: 12px;
    font-weight: 650;
}

.lh-diagnosis-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(360px, .75fr);
    gap: 18px;
    margin-bottom: 18px;
}

.lh-diagnosis-map-card,
.lh-diagnosis-insight-card,
.lh-diagnosis-card {
    padding: 22px;
}

.lh-card-headline {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.lh-card-headline h2,
.lh-diagnosis-insight-card h2 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
    line-height: 1.18;
    font-weight: 900;
    letter-spacing: -.03em;
}

.lh-body-map {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    border-radius: 22px;
    background: radial-gradient(circle at 50% 43%, #e9edf3 0 35%, transparent 35.5%), linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
}

.lh-body-silhouette {
    position: absolute;
    inset: 36px 0 20px;
    margin: auto;
    width: 310px;
    opacity: .78;
}

.lh-body-silhouette span {
    position: absolute;
    display: block;
    background: #d8dee8;
}

.lh-body-silhouette .head {
    left: 125px;
    top: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

.lh-body-silhouette .neck {
    left: 137px;
    top: 56px;
    width: 36px;
    height: 28px;
    border-radius: 14px;
}

.lh-body-silhouette .torso {
    left: 86px;
    top: 78px;
    width: 138px;
    height: 210px;
    border-radius: 58px 58px 42px 42px;
}

.lh-body-silhouette .arm {
    top: 100px;
    width: 58px;
    height: 230px;
    border-radius: 30px;
    transform-origin: top center;
}

.lh-body-silhouette .arm.left {
    left: 43px;
    transform: rotate(16deg);
}

.lh-body-silhouette .arm.right {
    right: 43px;
    transform: rotate(-16deg);
}

.lh-body-silhouette .leg {
    top: 276px;
    width: 60px;
    height: 225px;
    border-radius: 28px;
}

.lh-body-silhouette .leg.left {
    left: 94px;
}

.lh-body-silhouette .leg.right {
    right: 94px;
}

.lh-diagnosis-point {
    position: absolute;
    z-index: 3;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    margin: -17px 0 0 -17px;
    border: 3px solid #fff;
    border-radius: 999px;
    color: #fff;
    background: var(--diag-color, #2563eb);
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--diag-color, #2563eb) 18%, transparent), 0 12px 26px rgba(15, 23, 42, .18);
    animation: diagPulse 2.2s ease-in-out infinite;
}

.lh-diagnosis-point b {
    font-size: 12px;
    font-weight: 950;
}

@keyframes diagPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.08);
    }
}

.lh-diagnosis-point.is-red {
    --diag-color: #dc2626;
}

.lh-diagnosis-point.is-rose {
    --diag-color: #e11d48;
}

.lh-diagnosis-point.is-orange {
    --diag-color: #ea580c;
}

.lh-diagnosis-point.is-amber {
    --diag-color: #d97706;
}

.lh-diagnosis-point.is-emerald {
    --diag-color: #059669;
}

.lh-diagnosis-point.is-green {
    --diag-color: #16a34a;
}

.lh-diagnosis-point.is-blue {
    --diag-color: #2563eb;
}

.lh-diagnosis-point.is-sky {
    --diag-color: #0284c7;
}

.lh-diagnosis-point.is-cyan {
    --diag-color: #0891b2;
}

.lh-diagnosis-point.is-violet {
    --diag-color: #7c3aed;
}

.lh-diagnosis-point.is-purple {
    --diag-color: #9333ea;
}

.lh-diagnosis-point.is-indigo {
    --diag-color: #4f46e5;
}

.lh-diagnosis-point.is-pink {
    --diag-color: #db2777;
}

.lh-diagnosis-point.is-teal {
    --diag-color: #0d9488;
}

.lh-diagnosis-point.is-slate {
    --diag-color: #475569;
}

.lh-map-empty {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: #64748b;
    font-weight: 800;
}

.lh-diagnosis-insight-card {
    align-self: stretch;
}

.lh-diagnosis-insight-card p {
    margin: 10px 0 0;
    color: #475569;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 600;
}

.lh-risk-meter {
    height: 10px;
    margin: 18px 0 22px;
    overflow: hidden;
    border-radius: 999px;
    background: #e2e8f0;
}

.lh-risk-meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #16a34a, #d97706, #dc2626);
}

.lh-diagnosis-insight-card h3 {
    margin: 0 0 10px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 900;
}

.lh-specialty-list {
    display: grid;
    gap: 10px;
}

.lh-specialty-list a,
.lh-specialty-list span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 54px;
    padding: 12px 14px;
    border: 1px solid #e6edf7;
    border-radius: 15px;
    background: #f8fbff;
    color: #0f172a;
    text-decoration: none;
}

.lh-specialty-list strong {
    font-size: 13px;
    font-weight: 900;
}

.lh-specialty-list small {
    color: #2563eb;
    font-size: 12px;
    font-weight: 850;
}

.lh-diagnosis-grid-two {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 18px;
}

.lh-system-bars {
    display: grid;
    gap: 13px;
}

.lh-system-bars div {
    display: grid;
    gap: 7px;
}

.lh-system-bars span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 850;
}

.lh-system-bars em {
    color: #64748b;
    font-style: normal;
    font-weight: 900;
}

.lh-system-bars i {
    display: block;
    height: 9px;
    border-radius: 999px;
    background: linear-gradient(90deg, #2563eb, #22c55e);
}

.lh-recommendation-list {
    display: grid;
    gap: 10px;
}

.lh-recommendation-list div {
    padding: 14px;
    border: 1px solid #e6edf7;
    border-radius: 16px;
    background: #fbfdff;
}

.lh-recommendation-list strong {
    display: block;
    color: #0f172a;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 900;
}

.lh-recommendation-list small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 650;
}

.lh-diagnosis-table {
    overflow: hidden;
    border: 1px solid #e6edf7;
    border-radius: 18px;
}

.lh-diagnosis-table .head,
.lh-diagnosis-table .row {
    display: grid;
    grid-template-columns: 110px minmax(240px, 1.4fr) minmax(200px, 1fr) minmax(190px, .8fr) 80px;
    align-items: center;
    gap: 12px;
    padding: 13px 16px;
}

.lh-diagnosis-table .head {
    color: #64748b;
    background: #f8fafc;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.lh-diagnosis-table .row {
    border-top: 1px solid #eef2f7;
    color: #0f172a;
    font-size: 13px;
    font-weight: 650;
}

.lh-diagnosis-table .row b {
    color: var(--diag-color, #2563eb);
    font-size: 14px;
    font-weight: 950;
}

.lh-diagnosis-table .row small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}

.lh-diagnosis-table .row em {
    display: inline-flex;
    min-width: 34px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #fff;
    background: var(--diag-color, #2563eb);
    font-style: normal;
    font-weight: 950;
}

.lh-diagnosis-table .row.is-red {
    --diag-color: #dc2626;
}

.lh-diagnosis-table .row.is-rose {
    --diag-color: #e11d48;
}

.lh-diagnosis-table .row.is-orange {
    --diag-color: #ea580c;
}

.lh-diagnosis-table .row.is-amber {
    --diag-color: #d97706;
}

.lh-diagnosis-table .row.is-emerald {
    --diag-color: #059669;
}

.lh-diagnosis-table .row.is-green {
    --diag-color: #16a34a;
}

.lh-diagnosis-table .row.is-blue {
    --diag-color: #2563eb;
}

.lh-diagnosis-table .row.is-sky {
    --diag-color: #0284c7;
}

.lh-diagnosis-table .row.is-cyan {
    --diag-color: #0891b2;
}

.lh-diagnosis-table .row.is-violet {
    --diag-color: #7c3aed;
}

.lh-diagnosis-table .row.is-purple {
    --diag-color: #9333ea;
}

.lh-diagnosis-table .row.is-indigo {
    --diag-color: #4f46e5;
}

.lh-diagnosis-table .row.is-pink {
    --diag-color: #db2777;
}

.lh-diagnosis-table .row.is-teal {
    --diag-color: #0d9488;
}

.lh-diagnosis-table .row.is-slate {
    --diag-color: #475569;
}

.lh-diagnosis-table .empty {
    padding: 22px;
    color: #64748b;
    font-weight: 800;
    text-align: center;
}

@media (max-width: 1280px) {
    .lh-diagnosis-layout {
        grid-template-columns: 1fr;
    }

    .lh-diagnosis-grid-two {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    .lh-diagnosis-hero {
        flex-direction: column;
        align-items: stretch;
        padding: 20px;
    }

    .lh-diagnosis-stats {
        grid-template-columns: 1fr;
    }

    .lh-body-map {
        min-height: 460px;
    }

    .lh-diagnosis-table {
        overflow-x: auto;
    }

    .lh-diagnosis-table .head,
    .lh-diagnosis-table .row {
        min-width: 860px;
    }
}

/* Neyim Var AI sohbet */
.lh-ai-page {
    display: grid;
    gap: 18px;
}

.lh-ai-head {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 18px;
    padding: 26px;
    border: 1px solid #dbe5f2;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .04);
}

.lh-ai-head h1 {
    margin: 8px 0 8px;
    color: #0f172a;
    font-size: 34px;
    letter-spacing: 0;
}

.lh-ai-head p,
.lh-ai-head aside span,
.lh-ai-side p,
.lh-ai-compose small {
    color: #52657f;
    font-weight: 650;
    line-height: 1.55;
}

.lh-ai-head aside {
    width: min(330px, 100%);
    padding: 16px;
    border: 1px solid #bfdbfe;
    border-radius: 16px;
    background: #eff6ff;
}

.lh-ai-head aside strong,
.lh-ai-head aside span {
    display: block;
}

.lh-ai-head aside strong {
    margin-bottom: 6px;
    color: #1d4ed8;
    font-size: 16px;
}

.lh-ai-shell {
    display: grid;
    grid-template-columns:320px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.lh-ai-side,
.lh-ai-chat {
    border: 1px solid #dbe5f2;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .04);
}

.lh-ai-side {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.lh-ai-side h2 {
    margin: 0;
    color: #0f172a;
    font-size: 18px;
}

.lh-ai-side label {
    display: grid;
    gap: 6px;
}

.lh-ai-side label span {
    color: #334155;
    font-size: 12px;
    font-weight: 850;
}

.lh-ai-side input,
.lh-ai-compose textarea {
    width: 100%;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
    color: #0f172a;
    font: inherit;
    font-weight: 650;
}

.lh-ai-side input {
    min-height: 44px;
    padding: 0 12px;
}

.lh-ai-side input:focus,
.lh-ai-compose textarea:focus {
    outline: 0;
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}

.lh-ai-location {
    min-height: 42px;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    background: #eff6ff;
    color: #2563eb;
    font-weight: 850;
    cursor: pointer;
}

.lh-ai-safety {
    padding: 14px;
    border: 1px solid #fecaca;
    border-radius: 14px;
    background: #fff5f5;
}

.lh-ai-safety strong {
    display: block;
    margin-bottom: 6px;
    color: #dc2626;
}

.lh-ai-safety p {
    margin: 0;
    color: #7f1d1d;
}

.lh-ai-chat {
    overflow: hidden;
}

.lh-ai-thread {
    height: min(620px, calc(100vh - 330px));
    min-height: 430px;
    overflow: auto;
    padding: 22px;
    background: linear-gradient(180deg, rgba(248, 251, 255, .94), rgba(255, 255, 255, .98)),
    #fff;
}

.lh-ai-message {
    display: flex;
    margin-bottom: 14px;
}

.lh-ai-message > div {
    max-width: min(760px, 92%);
    padding: 14px 16px;
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .035);
}

.lh-ai-message.patient {
    justify-content: flex-end;
}

.lh-ai-message.patient > div {
    border-color: #bfdbfe;
    background: #eff6ff;
}

.lh-ai-message strong {
    display: block;
    margin-bottom: 6px;
    color: #0f172a;
}

.lh-ai-message p {
    margin: 0;
    color: #334155;
    line-height: 1.55;
    font-weight: 650;
}

.lh-ai-answer {
    display: grid;
    gap: 14px;
}

.lh-ai-urgency {
    padding: 14px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #dbe5f2;
}

.lh-ai-urgency span {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 900;
}

.lh-ai-urgency.yüksek span,
.lh-ai-urgency.acil span {
    background: #fee2e2;
    color: #dc2626;
}

.lh-ai-urgency.orta span {
    background: #fef3c7;
    color: #b45309;
}

.lh-ai-emergency {
    padding: 12px 14px;
    border: 1px solid #fecaca;
    border-radius: 14px;
    background: #fff1f2;
    color: #991b1b;
    font-weight: 800;
}

.lh-ai-answer-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.lh-ai-answer-grid article {
    padding: 13px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
}

.lh-ai-answer-grid h3 {
    margin: 0 0 8px;
    color: #0f172a;
    font-size: 14px;
}

.lh-ai-answer-grid ul {
    margin: 0;
    padding-left: 18px;
    color: #334155;
    font-weight: 650;
    line-height: 1.55;
}

.lh-ai-doctors {
    display: grid;
    gap: 8px;
}

.lh-ai-doctors span {
    display: block;
    padding: 9px 10px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid #e2e8f0;
}

.lh-ai-doctors strong,
.lh-ai-doctors small {
    display: block;
}

.lh-ai-doctors small {
    margin-top: 3px;
    color: #64748b;
    font-weight: 650;
}

.lh-ai-answer footer {
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.lh-ai-compose {
    display: grid;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid #e2e8f0;
    background: #fff;
}

.lh-ai-compose-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 132px;
    align-items: stretch;
    gap: 10px;
}

.lh-ai-compose textarea {
    resize: none;
    min-height: 48px;
    max-height: 92px;
    padding: 12px 14px;
    line-height: 1.35;
}

.lh-ai-compose small {
    color: #475569;
    font-weight: 750;
}

.lh-ai-compose button {
    min-height: 48px;
    padding: 0 18px;
    border: 0;
    border-radius: 13px;
    background: #2563eb;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(37, 99, 235, .18);
}

@media (max-width: 980px) {
    .lh-ai-head,
    .lh-ai-shell {
        grid-template-columns:1fr;
        display: grid;
    }

    .lh-ai-head aside {
        width: 100%;
    }

    .lh-ai-thread {
        height: auto;
        max-height: none;
    }

    .lh-ai-answer-grid {
        grid-template-columns:1fr;
    }
}

@media (max-width: 640px) {
    .lh-ai-head {
        padding: 18px;
    }

    .lh-ai-head h1 {
        font-size: 28px;
    }

    .lh-ai-compose-row {
        grid-template-columns: 1fr;
    }

    .lh-ai-compose button {
        width: 100%;
    }
}

/* v12.1 - Geliştirilmiş Sağlık Analizim anatomik harita */
.lh-anatomy-workspace {
    display: grid;
    grid-template-columns:minmax(430px, 1fr) minmax(320px, .58fr);
    gap: 18px;
    align-items: stretch;
}

.lh-anatomy-map {
    min-height: 590px;
    border: 1px solid #e8eef7;
    border-radius: 26px;
    background: radial-gradient(circle at 50% 42%, rgba(37, 99, 235, .08), transparent 34%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
    overflow: hidden;
    position: relative;
}

.lh-anatomy-map:before,
.lh-anatomy-map:after {
    content: "";
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
}

.lh-anatomy-map:before {
    inset: 70px 90px;
    border: 1px dashed rgba(37, 99, 235, .18)
}

.lh-anatomy-map:after {
    width: 360px;
    height: 360px;
    left: 50%;
    top: 50%;
    translate: -50% -48%;
    background: rgba(226, 232, 240, .42)
}

.lh-anatomy-map .lh-body-map {
    min-height: 590px;
    border-radius: 0;
    background: transparent;
    z-index: 1;
}

.lh-body-rings span {
    position: absolute;
    left: 50%;
    top: 48%;
    translate: -50% -50%;
    border-radius: 999px;
    border: 12px solid rgba(255, 255, 255, .78);
    z-index: 1;
    pointer-events: none
}

.lh-body-rings span:first-child {
    width: 360px;
    height: 360px
}

.lh-body-rings span:last-child {
    width: 520px;
    height: 520px;
    border-width: 1px;
    border-color: rgba(37, 99, 235, .12)
}

.lh-body-silhouette.enhanced {
    z-index: 2;
    inset: 54px 0 18px;
    width: 330px;
    opacity: .86
}

.lh-body-silhouette.enhanced span {
    background: #dbe3ee;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .42)
}

.lh-body-silhouette.enhanced .head {
    left: 132px;
    top: 0;
    width: 66px;
    height: 66px
}

.lh-body-silhouette.enhanced .neck {
    left: 145px;
    top: 62px;
    width: 40px;
    height: 30px
}

.lh-body-silhouette.enhanced .chest {
    left: 86px;
    top: 88px;
    width: 158px;
    height: 145px;
    border-radius: 68px 68px 38px 38px
}

.lh-body-silhouette.enhanced .abdomen {
    left: 103px;
    top: 210px;
    width: 124px;
    height: 112px;
    border-radius: 26px 26px 46px 46px;
    background: #d3dce8
}

.lh-body-silhouette.enhanced .pelvis {
    left: 97px;
    top: 305px;
    width: 136px;
    height: 58px;
    border-radius: 18px 18px 38px 38px;
    background: #ccd7e4
}

.lh-body-silhouette.enhanced .arm {
    top: 122px;
    width: 60px;
    height: 240px
}

.lh-body-silhouette.enhanced .arm.left {
    left: 41px
}

.lh-body-silhouette.enhanced .arm.right {
    right: 41px
}

.lh-body-silhouette.enhanced .leg {
    top: 350px;
    width: 62px;
    height: 190px
}

.lh-body-silhouette.enhanced .leg.left {
    left: 98px
}

.lh-body-silhouette.enhanced .leg.right {
    right: 98px
}

.lh-anatomy-workspace .lh-diagnosis-point {
    width: 44px;
    height: 44px;
    margin: -22px 0 0 -22px;
    border-width: 4px;
    cursor: pointer;
    transition: .18s ease;
    z-index: 6;
}

.lh-anatomy-workspace .lh-diagnosis-point:hover {
    transform: scale(1.14);
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--diag-color, #2563eb) 14%, transparent), 0 20px 38px rgba(15, 23, 42, .22)
}

.lh-anatomy-workspace .lh-diagnosis-point b {
    font-size: 14px
}

.lh-anatomy-panel {
    border: 1px solid #e6edf7;
    border-radius: 26px;
    background: #fff;
    padding: 18px;
    box-shadow: 0 14px 35px rgba(15, 43, 86, .05)
}

.lh-anatomy-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px
}

.lh-anatomy-panel-head strong {
    color: #0f172a;
    font-size: 16px;
    font-weight: 950;
    letter-spacing: -.02em
}

.lh-anatomy-panel-head span {
    display: inline-flex;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    padding: 7px 10px;
    font-size: 11px;
    font-weight: 900
}

.lh-anatomy-region-list {
    display: grid;
    gap: 10px;
    max-height: 540px;
    overflow: auto;
    padding-right: 4px
}

.lh-anatomy-region-list article {
    --diag-color: #2563eb;
    display: grid;
    grid-template-columns:42px 1fr;
    gap: 12px;
    align-items: center;
    padding: 13px;
    border: 1px solid #e8eef7;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff, #fbfdff)
}

.lh-anatomy-region-list article i {
    width: 42px;
    height: 42px;
    border-radius: 15px;
    display: grid;
    place-items: center;
    background: color-mix(in srgb, var(--diag-color) 12%, #fff);
    color: var(--diag-color);
    font-style: normal;
    font-weight: 950
}

.lh-anatomy-region-list article strong {
    display: block;
    color: #0f172a;
    font-size: 13px;
    font-weight: 950
}

.lh-anatomy-region-list article span {
    display: block;
    margin-top: 3px;
    color: #475569;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.35
}

.lh-anatomy-region-list article small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 11px;
    font-weight: 800
}

.lh-anatomy-region-list article.is-red {
    --diag-color: #dc2626
}

.lh-anatomy-region-list article.is-rose {
    --diag-color: #e11d48
}

.lh-anatomy-region-list article.is-orange {
    --diag-color: #ea580c
}

.lh-anatomy-region-list article.is-amber {
    --diag-color: #d97706
}

.lh-anatomy-region-list article.is-emerald {
    --diag-color: #059669
}

.lh-anatomy-region-list article.is-green {
    --diag-color: #16a34a
}

.lh-anatomy-region-list article.is-blue {
    --diag-color: #2563eb
}

.lh-anatomy-region-list article.is-sky {
    --diag-color: #0284c7
}

.lh-anatomy-region-list article.is-cyan {
    --diag-color: #0891b2
}

.lh-anatomy-region-list article.is-violet {
    --diag-color: #7c3aed
}

.lh-anatomy-region-list article.is-purple {
    --diag-color: #9333ea
}

.lh-anatomy-region-list article.is-indigo {
    --diag-color: #4f46e5
}

.lh-anatomy-region-list article.is-pink {
    --diag-color: #db2777
}

.lh-anatomy-region-list article.is-teal {
    --diag-color: #0d9488
}

.lh-anatomy-region-list article.is-slate {
    --diag-color: #475569
}

@media (max-width: 1280px) {
    .lh-anatomy-workspace {
        grid-template-columns:1fr
    }

    .lh-anatomy-panel {
        order: 2
    }

    .lh-anatomy-region-list {
        max-height: none;
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }
}

@media (max-width: 720px) {
    .lh-anatomy-workspace {
        grid-template-columns:1fr
    }

    .lh-anatomy-map, .lh-anatomy-map .lh-body-map {
        min-height: 520px
    }

    .lh-anatomy-region-list {
        grid-template-columns:1fr
    }

    .lh-anatomy-map:before {
        inset: 72px 24px
    }

    .lh-body-rings span:first-child {
        width: 310px;
        height: 310px
    }

    .lh-body-rings span:last-child {
        width: 410px;
        height: 410px
    }

    .lh-body-silhouette.enhanced {
        scale: .88
    }
}


/* v12.4 - Modern, cinsiyete göre anatomi haritası */
.lh-modern-anatomy {
    min-height: 620px !important;
    background: radial-gradient(circle at 50% 46%, rgba(37, 99, 235, .10), transparent 30%),
    radial-gradient(circle at 50% 46%, rgba(255, 255, 255, .92) 0 30%, transparent 30.5%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 100%) !important;
}

.lh-modern-anatomy .lh-anatomy-orbit span {
    position: absolute;
    left: 50%;
    top: 48%;
    translate: -50% -50%;
    border-radius: 999px;
    pointer-events: none;
    z-index: 1
}

.lh-modern-anatomy .lh-anatomy-orbit span:nth-child(1) {
    width: 300px;
    height: 300px;
    background: rgba(37, 99, 235, .045)
}

.lh-modern-anatomy .lh-anatomy-orbit span:nth-child(2) {
    width: 430px;
    height: 430px;
    border: 1px dashed rgba(37, 99, 235, .20)
}

.lh-modern-anatomy .lh-anatomy-orbit span:nth-child(3) {
    width: 540px;
    height: 540px;
    border: 1px solid rgba(37, 99, 235, .10)
}

.lh-anatomy-svg {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 50%;
    width: min(420px, 72%);
    height: 590px;
    translate: -50% -49%;
    overflow: visible
}

.lh-anatomy-svg .female-only {
    display: none
}

.lh-modern-anatomy.is-female .female-only {
    display: block
}

.lh-modern-anatomy.is-female .male-only {
    display: none
}

.lh-modern-anatomy.is-female .anatomy-person {
    transform-origin: 180px 320px;
    transform: scale(.98)
}

.lh-modern-anatomy.is-female .head {
    fill: #e8eff8
}

.lh-modern-anatomy.is-female .torso {
    filter: drop-shadow(0 16px 18px rgba(15, 43, 86, .08))
}

.lh-anatomy-gender-badge {
    position: absolute;
    z-index: 7;
    right: 18px;
    top: 18px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: rgba(255, 255, 255, .86);
    backdrop-filter: blur(10px);
    padding: 8px 11px;
    color: #2563eb;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .02em
}

.lh-anatomy-gender-badge:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 5px rgba(34, 197, 94, .14)
}

.lh-modern-point {
    width: 52px !important;
    height: 52px !important;
    margin: -26px 0 0 -26px !important;
    border: 4px solid rgba(255, 255, 255, .94) !important;
    background: linear-gradient(135deg, var(--diag-color, #2563eb), color-mix(in srgb, var(--diag-color, #2563eb) 74%, #111827)) !important;
    box-shadow: 0 0 0 8px color-mix(in srgb, var(--diag-color, #2563eb) 16%, transparent), 0 18px 40px rgba(15, 23, 42, .23) !important
}

.lh-modern-point:after {
    content: "";
    position: absolute;
    inset: -13px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--diag-color, #2563eb) 38%, transparent);
    animation: diagRadar 2.4s ease-out infinite
}

.lh-modern-point b {
    position: relative;
    z-index: 2;
    font-size: 15px !important;
    text-shadow: 0 1px 2px rgba(15, 23, 42, .25)
}

.lh-modern-point span {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 12px);
    translate: -50% 8px;
    min-width: 190px;
    max-width: 240px;
    padding: 10px 12px;
    border: 1px solid #e6edf7;
    border-radius: 14px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .16s ease;
    text-align: left
}

.lh-modern-point span:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
    translate: -50% 0;
    border: 7px solid transparent;
    border-top-color: #fff
}

.lh-modern-point:hover span {
    opacity: 1;
    visibility: visible;
    translate: -50% 0
}

.lh-modern-point span strong {
    display: block;
    font-size: 12px;
    font-weight: 950;
    line-height: 1.25
}

.lh-modern-point span small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 11px;
    font-weight: 750;
    line-height: 1.35
}

@keyframes diagRadar {
    0% {
        transform: scale(.72);
        opacity: .70
    }
    100% {
        transform: scale(1.58);
        opacity: 0
    }
}

.lh-anatomy-region-list article {
    transition: .16s ease
}

.lh-anatomy-region-list article:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--diag-color, #2563eb) 34%, #e8eef7);
    box-shadow: 0 14px 28px rgba(15, 43, 86, .08)
}

@media (max-width: 720px) {
    .lh-modern-anatomy {
        min-height: 540px !important
    }

    .lh-anatomy-svg {
        height: 520px;
        width: min(360px, 82%)
    }

    .lh-modern-point {
        width: 44px !important;
        height: 44px !important;
        margin: -22px 0 0 -22px !important
    }

    .lh-modern-point span {
        display: none
    }

    .lh-anatomy-gender-badge {
        right: 12px;
        top: 12px
    }
}


/* v12.5 - Çalışır ve daha okunabilir anatomi haritası düzeltmeleri */
.lh-anatomy-map {
    isolation: isolate;
}

.lh-anatomy-map:before,
.lh-anatomy-map:after {
    z-index: 0 !important;
}

.lh-anatomy-map .lh-body-map {
    position: relative !important;
    z-index: 2 !important;
}

.lh-modern-anatomy {
    overflow: hidden !important;
    background: radial-gradient(circle at 50% 45%, rgba(59, 130, 246, .10), transparent 34%),
    linear-gradient(180deg, #f8fbff 0%, #ffffff 100%) !important;
}

.lh-anatomy-svg {
    z-index: 3 !important;
    width: min(390px, 68%) !important;
    height: 570px !important;
    top: 51% !important;
    opacity: 1 !important;
    filter: drop-shadow(0 22px 30px rgba(15, 43, 86, .14));
}

.lh-anatomy-svg .anatomy-glow {
    opacity: .42 !important;
}

.lh-anatomy-svg .anatomy-person .head,
.lh-anatomy-svg .anatomy-person .neck,
.lh-anatomy-svg .anatomy-person .shoulders,
.lh-anatomy-svg .anatomy-person .torso,
.lh-anatomy-svg .anatomy-person .arm,
.lh-anatomy-svg .anatomy-person .pelvis,
.lh-anatomy-svg .anatomy-person .leg {
    stroke: #ffffff;
    stroke-width: 2.2;
}

.lh-anatomy-svg .anatomy-person .torso,
.lh-anatomy-svg .anatomy-person .pelvis {
    opacity: .98;
}

.lh-anatomy-svg .anatomy-person .arm,
.lh-anatomy-svg .anatomy-person .leg,
.lh-anatomy-svg .anatomy-person .shoulders {
    opacity: .92;
}

.lh-anatomy-gender-badge {
    left: 18px !important;
    right: auto !important;
    z-index: 9 !important;
}

.lh-modern-point {
    z-index: 12 !important;
}

.lh-map-empty {
    z-index: 15 !important;
}

.lh-modern-anatomy.is-female .hair {
    display: block !important;
}

.lh-modern-anatomy.is-male .hair {
    display: none !important;
}

@media (max-width: 720px) {
    .lh-anatomy-svg {
        width: min(340px, 84%) !important;
        height: 510px !important;
    }
}

/* v12.6 - e-Nabız benzeri anatomik tanı sahnesi */
.lh-enabiz-workspace {
    display: grid;
    grid-template-columns:260px minmax(460px, 1fr) 320px;
    gap: 18px;
    align-items: stretch;
    min-height: 640px;
}

.lh-enabiz-diagnosis-card {
    align-self: center;
    border: 0;
    background: transparent;
    padding: 20px 10px 20px 4px;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.lh-enabiz-pill {
    display: inline-flex;
    width: max-content;
    padding: 8px 12px;
    border-radius: 999px;
    background: #ecfeff;
    color: #0891b2;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.lh-enabiz-diagnosis-card h3 {
    margin: 0;
    color: #1f2937;
    font-size: 24px;
    font-weight: 750;
    line-height: 1.38;
    letter-spacing: -.025em;
}

.lh-enabiz-diagnosis-card p {
    margin: 13px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
}

.lh-enabiz-detail-btn {
    display: inline-flex;
    width: max-content;
    margin-top: 22px;
    padding: 9px 15px;
    border-radius: 999px;
    background: #00bfa5;
    color: #fff !important;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none !important;
    box-shadow: 0 10px 20px rgba(0, 191, 165, .20);
}

.lh-enabiz-nav {
    display: flex;
    gap: 12px;
    margin-top: 18px
}

.lh-enabiz-nav button {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 0;
    display: grid;
    place-items: center;
    font-size: 24px;
    font-weight: 700;
    color: #13233b;
    background: #00bfa5;
    box-shadow: 0 10px 20px rgba(0, 191, 165, .18);
    cursor: default
}

.lh-enabiz-nav button:first-child {
    background: #db6571;
    color: #13233b
}

.lh-enabiz-stage {
    position: relative;
    min-height: 640px;
    border-radius: 26px;
    overflow: hidden;
    background: radial-gradient(circle at 50% 47%, rgba(226, 232, 240, .78) 0 28%, transparent 28.5%),
    radial-gradient(circle at 50% 47%, rgba(226, 232, 240, .58) 0 42%, transparent 42.5%),
    linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
}

.lh-enabiz-stage:before {
    content: "";
    position: absolute;
    inset: 34px 22px 28px;
    border-radius: 28px;
    background: radial-gradient(circle at 50% 46%, rgba(226, 232, 240, .76) 0 34%, transparent 34.5%),
    radial-gradient(circle at 50% 46%, transparent 0 27%, rgba(255, 255, 255, .86) 27.5% 29.5%, transparent 30%),
    radial-gradient(circle at 50% 46%, transparent 0 47%, rgba(255, 255, 255, .66) 47.5% 48.8%, transparent 49%);
    pointer-events: none;
}

.lh-enabiz-svg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: min(430px, 76%);
    height: 600px;
    transform: translate(-50%, -48%);
    overflow: visible;
    z-index: 2;
}

.lh-enabiz-rings circle {
    fill: none;
    stroke: #fff;
    stroke-width: 7;
    opacity: .9
}

.lh-enabiz-rings circle:first-child {
    stroke-width: 0;
    fill: rgba(226, 232, 240, .60)
}

.lh-ecg-bg path {
    fill: none;
    stroke: #cbd5e1;
    stroke-width: 4;
    opacity: .45;
    stroke-linecap: round;
    stroke-linejoin: round
}

.lh-person-outline {
    fill: rgba(226, 232, 240, .18);
    stroke: rgba(148, 163, 184, .44);
    stroke-width: 2.2;
    filter: drop-shadow(0 14px 28px rgba(15, 23, 42, .10))
}

.lh-enabiz-stage.is-female .male-only {
    display: none
}

.lh-enabiz-stage.is-male .female-only {
    display: none
}

.lh-enabiz-stage.is-female .female-only {
    display: block
}

.lh-enabiz-stage.is-male .male-only {
    display: block
}

.lh-network-lines line {
    stroke: #ff5b22;
    stroke-width: 1.15;
    stroke-opacity: .58
}

.lh-network-dots circle {
    fill: #ff4a1c;
    stroke: #ff9b4a;
    stroke-width: .55;
    opacity: .98
}

.lh-network {
    filter: drop-shadow(0 0 7px rgba(255, 91, 34, .25))
}

.lh-enabiz-gender-badge, .lh-enabiz-total-badge {
    position: absolute;
    z-index: 8;
    display: inline-flex;
    align-items: center;
    border: 1px solid #e2e8f0;
    background: rgba(255, 255, 255, .88);
    backdrop-filter: blur(10px);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08);
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950
}

.lh-enabiz-gender-badge {
    left: 18px;
    top: 18px;
    color: #2563eb;
    padding: 9px 12px
}

.lh-enabiz-gender-badge:before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 999px;
    margin-right: 8px;
    background: #22c55e;
    box-shadow: 0 0 0 6px rgba(34, 197, 94, .13)
}

.lh-enabiz-total-badge {
    right: 18px;
    top: 18px;
    color: #0f172a;
    padding: 9px 13px
}

.lh-enabiz-hotspot {
    --diag-color: #2563eb;
    position: absolute;
    z-index: 10;
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
    border-radius: 999px;
    border: 3px solid rgba(255, 255, 255, .9);
    background: linear-gradient(135deg, var(--diag-color), color-mix(in srgb, var(--diag-color) 72%, #111827));
    box-shadow: 0 0 0 7px color-mix(in srgb, var(--diag-color) 16%, transparent), 0 16px 35px rgba(15, 23, 42, .22);
    color: #fff;
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: .18s ease
}

.lh-enabiz-hotspot:before, .lh-enabiz-hotspot:after {
    content: "";
    position: absolute;
    inset: -10px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--diag-color) 45%, transparent);
    animation: lhDiagPulse 2.2s ease-out infinite
}

.lh-enabiz-hotspot:after {
    animation-delay: .8s
}

.lh-enabiz-hotspot b {
    position: relative;
    z-index: 2;
    font-size: 13px;
    font-weight: 950;
    text-shadow: 0 1px 2px rgba(15, 23, 42, .25)
}

.lh-enabiz-hotspot span {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 12px);
    transform: translate(-50%, 8px);
    min-width: 190px;
    padding: 10px 12px;
    border: 1px solid #e6edf7;
    border-radius: 14px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .16s ease;
    text-align: left
}

.lh-enabiz-hotspot:hover {
    transform: scale(1.12);
    z-index: 25
}

.lh-enabiz-hotspot:hover span {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0)
}

.lh-enabiz-hotspot span strong {
    display: block;
    font-size: 12px;
    font-weight: 950;
    line-height: 1.25
}

.lh-enabiz-hotspot span small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 11px;
    font-weight: 750;
    line-height: 1.35
}

.lh-enabiz-hotspot.is-red {
    --diag-color: #dc2626
}

.lh-enabiz-hotspot.is-rose {
    --diag-color: #e11d48
}

.lh-enabiz-hotspot.is-orange {
    --diag-color: #ea580c
}

.lh-enabiz-hotspot.is-amber {
    --diag-color: #d97706
}

.lh-enabiz-hotspot.is-emerald {
    --diag-color: #059669
}

.lh-enabiz-hotspot.is-green {
    --diag-color: #16a34a
}

.lh-enabiz-hotspot.is-blue {
    --diag-color: #2563eb
}

.lh-enabiz-hotspot.is-sky {
    --diag-color: #0284c7
}

.lh-enabiz-hotspot.is-cyan {
    --diag-color: #0891b2
}

.lh-enabiz-hotspot.is-violet {
    --diag-color: #7c3aed
}

.lh-enabiz-hotspot.is-purple {
    --diag-color: #9333ea
}

.lh-enabiz-hotspot.is-indigo {
    --diag-color: #4f46e5
}

.lh-enabiz-hotspot.is-pink {
    --diag-color: #db2777
}

.lh-enabiz-hotspot.is-teal {
    --diag-color: #0d9488
}

.lh-enabiz-hotspot.is-slate {
    --diag-color: #475569
}

@keyframes lhDiagPulse {
    0% {
        transform: scale(.72);
        opacity: .75
    }
    100% {
        transform: scale(1.72);
        opacity: 0
    }
}

.lh-enabiz-region-panel {
    border: 1px solid #e6edf7;
    border-radius: 26px;
    background: #fff;
    padding: 18px;
    box-shadow: 0 14px 35px rgba(15, 43, 86, .05);
    overflow: hidden
}

.lh-enabiz-region-panel .lh-anatomy-region-list {
    max-height: 585px
}

.lh-enabiz-region-panel .lh-anatomy-region-list article {
    border-radius: 18px;
    background: #fff
}

.lh-map-empty {
    position: absolute;
    z-index: 20;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 14px 18px;
    border-radius: 16px;
    background: rgba(255, 255, 255, .88);
    color: #64748b;
    font-weight: 900;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08)
}

@media (max-width: 1400px) {
    .lh-enabiz-workspace {
        grid-template-columns:1fr;
    }

    .lh-enabiz-diagnosis-card {
        min-height: auto;
        display: block;
        padding: 6px 0
    }

    .lh-enabiz-stage {
        min-height: 640px
    }

    .lh-enabiz-region-panel .lh-anatomy-region-list {
        max-height: none;
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }
}

@media (max-width: 720px) {
    .lh-enabiz-stage {
        min-height: 540px
    }

    .lh-enabiz-svg {
        height: 520px;
        width: min(360px, 88%)
    }

    .lh-enabiz-hotspot {
        width: 34px;
        height: 34px;
        margin: -17px 0 0 -17px
    }

    .lh-enabiz-hotspot span {
        display: none
    }

    .lh-enabiz-region-panel .lh-anatomy-region-list {
        grid-template-columns:1fr
    }

    .lh-enabiz-diagnosis-card h3 {
        font-size: 19px
    }
}

/* Sağlık Analizim - sade, stabil, profesyonel anatomi haritası */
.lh-diagnosis-layout-clean {
    grid-template-columns:minmax(0, 1fr) 410px;
    align-items: start
}

.lh-clinical-map-card {
    overflow: hidden
}

.lh-map-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #eef5ff;
    color: #2563eb;
    font-size: 12px;
    font-weight: 900;
    padding: 10px 14px;
    white-space: nowrap
}

.lh-clinical-map-shell {
    display: grid;
    grid-template-columns:250px minmax(420px, 1fr) 320px;
    gap: 18px;
    align-items: stretch;
    margin-top: 18px
}

.lh-active-diagnosis-card {
    border: 1px solid #e6edf7;
    border-radius: 24px;
    background: linear-gradient(180deg, #fff, #f8fbff);
    padding: 22px;
    box-shadow: 0 12px 30px rgba(15, 43, 86, .05);
    min-height: 510px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.lh-active-diagnosis-card > span {
    width: max-content;
    border-radius: 999px;
    background: #dffbf6;
    color: #0f9f8d;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .04em;
    text-transform: uppercase;
    padding: 9px 12px;
    margin-bottom: 18px
}

.lh-active-diagnosis-card h3 {
    font-size: 28px;
    line-height: 1.15;
    font-weight: 950;
    color: #071225;
    margin: 0 0 12px
}

.lh-active-diagnosis-card strong {
    display: block;
    font-size: 17px;
    line-height: 1.45;
    color: #172033;
    margin-bottom: 14px
}

.lh-active-diagnosis-card small {
    display: block;
    color: #56708f;
    font-weight: 750;
    line-height: 1.5
}

.lh-active-diagnosis-card a {
    margin-top: 22px;
    width: max-content;
    border-radius: 14px;
    background: #00bfa5;
    color: #fff;
    font-weight: 900;
    font-size: 13px;
    padding: 12px 16px;
    text-decoration: none;
    box-shadow: 0 14px 24px rgba(0, 191, 165, .18)
}

.lh-clinical-body-stage {
    position: relative;
    min-height: 560px;
    border: 1px solid #e4edf8;
    border-radius: 26px;
    background: radial-gradient(circle at 50% 42%, #fff 0 22%, #f5f9ff 48%, #eef5ff 100%);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center
}

.lh-clinical-body-stage:before {
    content: "";
    position: absolute;
    inset: 42px;
    border-radius: 999px;
    border: 1px dashed rgba(37, 99, 235, .22)
}

.lh-body-radar {
    position: absolute;
    width: 390px;
    height: 390px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(37, 99, 235, .10) 0 28%, transparent 29%), radial-gradient(circle, transparent 0 54%, rgba(37, 99, 235, .08) 55%, transparent 56%);
    box-shadow: inset 0 0 60px rgba(37, 99, 235, .07)
}

.lh-body-svg {
    position: relative;
    z-index: 2;
    width: min(330px, 72%);
    height: auto;
    overflow: visible
}

.lh-body-grid circle {
    fill: none;
    stroke: #d7e6fa;
    stroke-width: 1.4;
    stroke-dasharray: 5 5
}

.lh-body-grid path {
    fill: none;
    stroke: #e8f0fb;
    stroke-width: 2
}

.lh-body-shape {
    fill: url(#bodyFill);
    stroke: #fff;
    stroke-width: 4;
    opacity: .9
}

.lh-body-female, .lh-clinical-body-stage.is-female .lh-body-male {
    display: none
}

.lh-clinical-body-stage.is-female .lh-body-female {
    display: block
}

.lh-gender-chip {
    position: absolute;
    left: 20px;
    top: 18px;
    z-index: 8;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    border: 1px solid #dbeafe;
    background: rgba(255, 255, 255, .88);
    backdrop-filter: blur(10px);
    color: #2563eb;
    font-size: 12px;
    font-weight: 950;
    padding: 9px 13px;
    box-shadow: 0 12px 28px rgba(15, 43, 86, .08)
}

.lh-gender-chip:before {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 6px rgba(34, 197, 94, .14);
    margin-right: 9px
}

.lh-clinical-hotspot {
    --hotspot: #2563eb;
    position: absolute;
    z-index: 12;
    left: 50%;
    top: 50%;
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
    border: 3px solid #fff;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--hotspot), color-mix(in srgb, var(--hotspot) 70%, #0f172a));
    box-shadow: 0 14px 30px rgba(15, 23, 42, .22), 0 0 0 9px color-mix(in srgb, var(--hotspot) 14%, transparent);
    color: #fff;
    display: grid;
    place-items: center;
    cursor: default;
    transition: .18s ease
}

.lh-clinical-hotspot .ring {
    position: absolute;
    inset: -9px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--hotspot) 45%, transparent);
    animation: lhClinicalPulse 2.4s ease-out infinite
}

.lh-clinical-hotspot b {
    font-size: 13px;
    font-weight: 950;
    position: relative;
    z-index: 2
}

.lh-clinical-hotspot em {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 12px);
    transform: translate(-50%, 8px);
    min-width: 150px;
    padding: 8px 10px;
    border: 1px solid #e6edf7;
    border-radius: 12px;
    background: #fff;
    color: #10203a;
    font-size: 11px;
    font-weight: 900;
    font-style: normal;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .14);
    opacity: 0;
    visibility: hidden;
    transition: .16s ease
}

.lh-clinical-hotspot:hover {
    transform: scale(1.12);
    z-index: 20
}

.lh-clinical-hotspot:hover em {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0)
}

.lh-clinical-hotspot.is-red {
    --hotspot: #dc2626
}

.lh-clinical-hotspot.is-rose {
    --hotspot: #e11d48
}

.lh-clinical-hotspot.is-orange {
    --hotspot: #ea580c
}

.lh-clinical-hotspot.is-amber {
    --hotspot: #d97706
}

.lh-clinical-hotspot.is-emerald, .lh-clinical-hotspot.is-green {
    --hotspot: #059669
}

.lh-clinical-hotspot.is-blue {
    --hotspot: #2563eb
}

.lh-clinical-hotspot.is-sky, .lh-clinical-hotspot.is-cyan {
    --hotspot: #0284c7
}

.lh-clinical-hotspot.is-violet {
    --hotspot: #7c3aed
}

.lh-clinical-hotspot.is-purple {
    --hotspot: #9333ea
}

.lh-clinical-hotspot.is-indigo {
    --hotspot: #4f46e5
}

.lh-clinical-hotspot.is-pink {
    --hotspot: #db2777
}

.lh-clinical-hotspot.is-teal {
    --hotspot: #0d9488
}

.lh-clinical-hotspot.is-slate {
    --hotspot: #475569
}

@keyframes lhClinicalPulse {
    0% {
        transform: scale(.72);
        opacity: .7
    }
    100% {
        transform: scale(1.75);
        opacity: 0
    }
}

.lh-region-summary-panel {
    border: 1px solid #e6edf7;
    border-radius: 24px;
    background: #fff;
    padding: 18px;
    box-shadow: 0 12px 30px rgba(15, 43, 86, .05);
    overflow: hidden
}

.lh-region-summary-panel .lh-anatomy-region-list {
    max-height: 525px;
    overflow: auto;
    padding-right: 6px
}

.lh-region-summary-panel .lh-anatomy-region-list article {
    border-radius: 18px;
    background: #fff
}

.lh-map-empty {
    position: absolute;
    z-index: 20;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid #e6edf7;
    border-radius: 16px;
    background: #fff;
    color: #64748b;
    font-weight: 900;
    padding: 14px 18px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .08)
}

@media (max-width: 1500px) {
    .lh-diagnosis-layout-clean {
        grid-template-columns:1fr
    }

    .lh-clinical-map-shell {
        grid-template-columns:1fr
    }

    .lh-active-diagnosis-card {
        min-height: auto;
        justify-content: flex-start
    }

    .lh-region-summary-panel .lh-anatomy-region-list {
        max-height: 360px
    }
}

@media (max-width: 720px) {
    .lh-clinical-body-stage {
        min-height: 500px
    }

    .lh-body-svg {
        width: min(280px, 76%)
    }

    .lh-clinical-hotspot {
        width: 34px;
        height: 34px;
        margin: -17px 0 0 -17px
    }

    .lh-clinical-hotspot em {
        display: none
    }
}

/* v12.7 - Saglik Analizim tani anatomisi, referans gorsele yakin profesyonel sahne */
.lh-diagnosis-layout-clean {
    grid-template-columns:minmax(0, 1fr) 410px;
    align-items: stretch
}

.lh-clinical-map-card {
    background: #fff
}

.lh-clinical-map-card .lh-card-headline {
    margin-bottom: 12px
}

.lh-enabiz-workspace-pro {
    display: grid;
    grid-template-columns:280px minmax(560px, 1fr);
    gap: 18px;
    min-height: 660px;
    align-items: stretch;
    margin-top: 10px
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
    position: relative;
    min-height: 640px;
    padding: 0 10px;
    border: 0;
    background: transparent;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card h3 {
    max-width: 260px;
    margin: 0 0 20px;
    color: #1d1d1f;
    font-size: 25px;
    line-height: 1.34;
    font-weight: 650;
    letter-spacing: 0
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card p {
    margin: 0 0 20px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 650
}

.lh-enabiz-detail-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 7px 14px;
    border-radius: 999px;
    background: #00bfa5;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    font-weight: 850;
    box-shadow: none
}

.lh-enabiz-detail-btn:hover {
    background: #0f9f8d
}

.lh-enabiz-nav {
    display: flex;
    gap: 12px;
    margin-top: 16px
}

.lh-enabiz-nav button {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 50%;
    color: #061431;
    background: #00bfa5;
    font-size: 22px;
    font-weight: 800;
    line-height: 1;
    display: grid;
    place-items: center
}

.lh-enabiz-nav button:first-child {
    background: #df6b73
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    position: relative;
    min-height: 640px;
    border: 0;
    border-radius: 24px;
    background: radial-gradient(circle at 50% 48%, transparent 0 31%, rgba(255, 255, 255, .96) 31.4% 32.6%, transparent 33%), radial-gradient(circle at 50% 48%, rgba(229, 231, 235, .78) 0 52%, rgba(229, 231, 235, .45) 52.5%, rgba(255, 255, 255, 0) 53%), #fff;
    overflow: hidden;
    box-shadow: none
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: min(590px, 88%);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: rgba(229, 231, 235, .72);
    z-index: 0
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: min(360px, 54%);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    border: 6px solid rgba(255, 255, 255, .92);
    z-index: 1
}

.lh-enabiz-workspace-pro .lh-enabiz-svg {
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    width: min(520px, 76%);
    height: 640px;
    transform: translate(-50%, -49%);
    overflow: visible
}

.lh-enabiz-workspace-pro .lh-enabiz-rings circle:first-child {
    fill: rgba(229, 231, 235, .62);
    stroke: transparent
}

.lh-enabiz-workspace-pro .lh-enabiz-rings circle:last-child {
    fill: transparent;
    stroke: #fff;
    stroke-width: 7;
    opacity: .96
}

.lh-enabiz-workspace-pro .lh-ecg-bg path {
    fill: none;
    stroke: #d9dde3;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .86
}

.lh-enabiz-workspace-pro .lh-person-outline {
    fill: rgba(255, 91, 34, .025);
    stroke: rgba(255, 91, 34, .42);
    stroke-width: 1.2;
    filter: none
}

.lh-enabiz-workspace-pro .lh-network-lines line {
    stroke: #ff5b22;
    stroke-width: 1.05;
    stroke-opacity: .50
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    --diag-color: #2563eb;
    position: absolute;
    z-index: 9;
    width: 44px;
    height: 44px;
    margin: -22px 0 0 -22px;
    border-radius: 999px;
    border: 3px solid rgba(255, 255, 255, .92);
    background: linear-gradient(135deg, var(--diag-color), color-mix(in srgb, var(--diag-color) 72%, #111827));
    color: #fff;
    display: grid;
    place-items: center;
    cursor: default;
    box-shadow: 0 0 0 7px color-mix(in srgb, var(--diag-color) 18%, transparent), 0 13px 26px rgba(15, 23, 42, .24);
    transition: transform .16s ease, box-shadow .16s ease
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:before, .lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    content: "";
    position: absolute;
    inset: -9px;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--diag-color) 46%, transparent);
    animation: lhDiagPulse 2.2s ease-out infinite
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    animation-delay: .75s
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot b {
    position: relative;
    z-index: 2;
    font-size: 13px;
    font-weight: 900
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot span {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 12px);
    transform: translate(-50%, 8px);
    min-width: 190px;
    padding: 10px 12px;
    border: 1px solid #e6edf7;
    border-radius: 14px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .16);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    text-align: left;
    transition: .16s ease
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:hover {
    transform: scale(1.1);
    z-index: 25
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:hover span {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot span strong {
    display: block;
    font-size: 12px;
    line-height: 1.25;
    font-weight: 850
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot span small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 650
}

@media (max-width: 1500px) {
    .lh-diagnosis-layout-clean {
        grid-template-columns:1fr
    }

    .lh-enabiz-workspace-pro {
        grid-template-columns:250px minmax(460px, 1fr)
    }
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:1fr;
        min-height: auto
    }

    .lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
        min-height: auto;
        padding: 4px 2px 12px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card h3 {
        max-width: none;
        font-size: 21px;
        margin-bottom: 10px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px;
        border-radius: 20px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-svg {
        width: min(390px, 86%);
        height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-hotspot {
        width: 34px;
        height: 34px;
        margin: -17px 0 0 -17px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-hotspot span {
        display: none
    }
}

/* v12.8 - Anatomi sahnesi referans gorsel ince ayari */
.lh-enabiz-workspace-pro {
    grid-template-columns:285px minmax(620px, 1fr);
    min-height: 690px
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
    min-height: 670px;
    padding-left: 8px
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card h3 {
    font-size: 24px;
    line-height: 1.42;
    font-weight: 560;
    color: #24262b
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    min-height: 670px;
    background: radial-gradient(circle at 50% 49%, transparent 0 31%, rgba(255, 255, 255, .97) 31.3% 32.5%, transparent 32.8%), radial-gradient(circle at 50% 49%, rgba(229, 231, 235, .72) 0 53%, rgba(229, 231, 235, .34) 53.4%, rgba(255, 255, 255, 0) 54%), #fff
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    width: min(625px, 90%);
    background: rgba(229, 231, 235, .66)
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    width: min(365px, 53%);
    border-width: 6px
}

.lh-enabiz-workspace-pro .lh-enabiz-svg {
    width: min(610px, 84%);
    height: 680px;
    top: 51%;
    transform: translate(-50%, -50%)
}

.lh-enabiz-workspace-pro .lh-person-outline {
    fill: transparent;
    stroke: #ff5b22;
    stroke-width: 1.1;
    stroke-opacity: .62
}

.lh-enabiz-workspace-pro #diagnosisDotPattern circle {
    filter: none
}

.lh-enabiz-workspace-pro .lh-network-lines line {
    stroke: #ff5b22;
    stroke-width: .95;
    stroke-opacity: .68
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
    border-width: 3px;
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--diag-color) 15%, transparent), 0 8px 18px rgba(15, 23, 42, .18)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:before, .lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    inset: -8px
}

.lh-enabiz-workspace-pro .lh-ecg-bg path {
    stroke: #d9dde3;
    opacity: .72
}

.lh-enabiz-workspace-pro .lh-enabiz-rings circle:first-child {
    fill: rgba(229, 231, 235, .58)
}

@media (max-width: 1500px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:285px minmax(560px, 1fr)
    }
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:1fr
    }

    .lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
        min-height: auto
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-svg {
        width: min(520px, 88%);
        height: 610px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-svg {
        width: min(410px, 92%);
        height: 520px
    }
}

/* v12.9 - Gercek insan formuna yakin parca anatomisi */
.lh-enabiz-workspace-pro .lh-person-outline {
    fill: rgba(255, 255, 255, .02);
    stroke: none
}

.lh-enabiz-workspace-pro .lh-person-outline path, .lh-enabiz-workspace-pro .lh-person-outline circle {
    fill: transparent;
    stroke: #ff5b22;
    stroke-width: 1.15;
    stroke-opacity: .68;
    vector-effect: non-scaling-stroke
}

.lh-enabiz-workspace-pro .lh-enabiz-svg {
    width: min(585px, 82%);
    height: 690px
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    min-height: 690px
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    width: min(610px, 88%)
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    width: min(350px, 51%)
}

.lh-enabiz-workspace-pro .lh-network-lines line {
    stroke-width: .8;
    stroke-opacity: .55
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro .lh-enabiz-svg {
        width: min(500px, 88%);
        height: 620px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-svg {
        width: min(390px, 92%);
        height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px
    }
}

/* v13.0 - Sabit oranli profesyonel insan anatomi haritasi */
.lh-enabiz-workspace-pro {
    grid-template-columns:285px minmax(620px, 1fr);
    min-height: 700px
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
    min-height: 680px
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    min-height: 680px;
    background: radial-gradient(circle at 50% 51%, transparent 0 31%, rgba(255, 255, 255, .96) 31.4% 32.7%, transparent 33%), radial-gradient(circle at 50% 51%, rgba(229, 231, 235, .68) 0 52%, rgba(229, 231, 235, .30) 52.5%, rgba(255, 255, 255, 0) 53%), #fff
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    width: min(625px, 89%);
    background: rgba(229, 231, 235, .58)
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    width: min(360px, 52%);
    border: 6px solid rgba(255, 255, 255, .92)
}

.lh-human-anatomy-svg {
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 51%;
    width: min(585px, 82%);
    height: 690px;
    transform: translate(-50%, -50%);
    overflow: visible
}

.lh-human-anatomy-svg .lh-enabiz-rings circle:first-child {
    fill: rgba(229, 231, 235, .55);
    stroke: transparent
}

.lh-human-anatomy-svg .lh-enabiz-rings circle:last-child {
    fill: transparent;
    stroke: #fff;
    stroke-width: 7;
    opacity: .96
}

.lh-human-anatomy-svg .lh-ecg-bg path {
    fill: none;
    stroke: #d8dde5;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .70
}

.lh-human-network {
    filter: drop-shadow(0 0 4px rgba(255, 91, 34, .10))
}

.lh-human-net-lines path {
    fill: none;
    stroke: #ff5b22;
    stroke-width: .85;
    stroke-opacity: .48;
    stroke-linecap: round;
    stroke-linejoin: round
}

.lh-human-net-dots circle {
    fill: #ff4f1f;
    stroke: #ff9b4a;
    stroke-width: .35;
    opacity: .95
}

.lh-human-outline path, .lh-human-outline circle {
    fill: rgba(255, 255, 255, .015);
    stroke: #ff5b22;
    stroke-width: 1.2;
    stroke-opacity: .58;
    vector-effect: non-scaling-stroke
}

.lh-enabiz-workspace-pro .lh-person-outline {
    display: none
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    width: 38px;
    height: 38px;
    margin: -19px 0 0 -19px;
    border-width: 3px;
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--diag-color) 14%, transparent), 0 8px 18px rgba(15, 23, 42, .18)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:before, .lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    inset: -8px
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot b {
    font-size: 12px
}

@media (max-width: 1500px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:285px minmax(540px, 1fr)
    }

    .lh-human-anatomy-svg {
        width: min(545px, 84%)
    }
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:1fr;
        min-height: auto
    }

    .lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card {
        min-height: auto
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }

    .lh-human-anatomy-svg {
        width: min(500px, 88%);
        height: 620px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px
    }

    .lh-human-anatomy-svg {
        width: min(390px, 92%);
        height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-hotspot {
        width: 32px;
        height: 32px;
        margin: -16px 0 0 -16px
    }
}

/* v13.1 - Final klinik insan silueti */
.lh-enabiz-workspace-pro {
    grid-template-columns:300px minmax(640px, 1fr);
    min-height: 710px
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    min-height: 700px;
    background: radial-gradient(circle at 50% 52%, transparent 0 31%, rgba(255, 255, 255, .96) 31.4% 32.8%, transparent 33.2%), radial-gradient(circle at 50% 52%, rgba(229, 231, 235, .70) 0 52%, rgba(229, 231, 235, .30) 52.5%, rgba(255, 255, 255, 0) 53%), #fff
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    width: min(640px, 90%);
    background: rgba(229, 231, 235, .58)
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    width: min(375px, 52%);
    border: 7px solid rgba(255, 255, 255, .94)
}

.lh-human-anatomy-svg {
    width: min(610px, 84%);
    height: 700px;
    top: 52%
}

.lh-human-outline path {
    fill: rgba(255, 255, 255, .22);
    stroke: #ff6a2a;
    stroke-width: 1.35;
    stroke-opacity: .86;
    filter: drop-shadow(0 18px 26px rgba(15, 23, 42, .07));
    vector-effect: non-scaling-stroke
}

.lh-human-net-lines path {
    stroke: #ff5b22;
    stroke-width: .75;
    stroke-opacity: .34
}

.lh-human-net-dots circle {
    fill: #ff5b22;
    stroke: none;
    opacity: .90
}

.lh-human-network {
    filter: none
}

.lh-human-anatomy-svg .lh-ecg-bg path {
    opacity: .48
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    border: 3px solid rgba(255, 255, 255, .95);
    box-shadow: 0 0 0 7px color-mix(in srgb, var(--diag-color) 13%, transparent), 0 12px 22px rgba(15, 23, 42, .18)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot b {
    font-size: 12px;
    font-weight: 850
}

@media (max-width: 1500px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:285px minmax(560px, 1fr)
    }

    .lh-human-anatomy-svg {
        width: min(560px, 84%)
    }
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:1fr
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }

    .lh-human-anatomy-svg {
        width: min(500px, 88%);
        height: 620px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px
    }

    .lh-human-anatomy-svg {
        width: min(390px, 92%);
        height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-hotspot {
        width: 32px;
        height: 32px;
        margin: -16px 0 0 -16px
    }
}

/* v13.2 - Okunabilir insan silueti ve net pin yerlesimi */
.lh-human-outline path {
    fill: rgba(255, 255, 255, .58);
    stroke: #ff6a2a;
    stroke-width: 1.55;
    stroke-opacity: .92;
    filter: drop-shadow(0 18px 28px rgba(15, 23, 42, .08));
    vector-effect: non-scaling-stroke
}

.lh-human-net-lines path {
    stroke: #ff6a2a;
    stroke-width: .62;
    stroke-opacity: .22
}

.lh-human-net-dots circle {
    fill: #ff6a2a;
    opacity: .52
}

.lh-human-anatomy-svg {
    width: min(560px, 79%);
    height: 690px;
    top: 52%
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    z-index: 18;
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
    border: 3px solid #fff;
    background: #2563eb;
    box-shadow: 0 0 0 8px rgba(37, 99, 235, .13), 0 12px 24px rgba(37, 99, 235, .25)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:before, .lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    border-color: rgba(37, 99, 235, .22)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot b {
    font-size: 12px;
    font-weight: 900
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    background: rgba(229, 231, 235, .52)
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    border-color: rgba(255, 255, 255, .96)
}

/* v13.3 - e-Nabiz referansina uygun nokta-ag anatomisi */
.lh-enabiz-workspace-pro {
    grid-template-columns:300px minmax(660px, 1fr);
    min-height: 720px
}

.lh-enabiz-workspace-pro .lh-enabiz-diagnosis-card h3 {
    font-weight: 520;
    color: #25272c;
    font-size: 24px;
    line-height: 1.38
}

.lh-enabiz-workspace-pro .lh-enabiz-stage {
    min-height: 710px;
    background: #fff
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:before {
    width: min(590px, 82%);
    background: rgba(229, 231, 235, .72);
    top: 52%
}

.lh-enabiz-workspace-pro .lh-enabiz-stage:after {
    width: min(360px, 49%);
    top: 52%;
    border: 6px solid rgba(255, 255, 255, .94)
}

.lh-human-anatomy-svg {
    width: min(640px, 86%);
    height: 710px;
    top: 52%;
    transform: translate(-50%, -50%)
}

#enabizOrangeDots circle {
    fill: #ff4b1f;
    opacity: .92
}

.lh-human-dot-fill {
    opacity: .96
}

.lh-human-net-lines path {
    fill: none;
    stroke: #ff4b1f;
    stroke-width: .55;
    stroke-opacity: .38;
    stroke-linecap: round;
    stroke-linejoin: round
}

.lh-human-net-dots circle {
    fill: #ff2f18;
    stroke: none;
    opacity: .68
}

.lh-human-outline, .lh-enabiz-workspace-pro .lh-person-outline {
    display: none !important
}

.lh-human-anatomy-svg .lh-ecg-bg path {
    stroke: #d7dbe1;
    opacity: .52
}

.lh-human-anatomy-svg .lh-enabiz-rings circle:first-child {
    fill: rgba(229, 231, 235, .62)
}

.lh-human-anatomy-svg .lh-enabiz-rings circle:last-child {
    stroke: #fff;
    stroke-width: 7
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot {
    z-index: 25;
    width: 38px;
    height: 38px;
    margin: -19px 0 0 -19px;
    border: 3px solid rgba(255, 255, 255, .96);
    background: linear-gradient(135deg, #6887ef, #2f55c9);
    box-shadow: 0 0 0 6px rgba(47, 85, 201, .15), 0 12px 24px rgba(47, 85, 201, .24)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot:before, .lh-enabiz-workspace-pro .lh-enabiz-hotspot:after {
    inset: -8px;
    border-color: rgba(47, 85, 201, .22)
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot b {
    font-size: 12px;
    font-weight: 850
}

.lh-enabiz-workspace-pro .lh-enabiz-hotspot.is-emerald, .lh-enabiz-workspace-pro .lh-enabiz-hotspot.is-green {
    background: linear-gradient(135deg, #39d6c5, #0f9f8d);
    box-shadow: 0 0 0 6px rgba(15, 159, 141, .18), 0 12px 24px rgba(15, 159, 141, .22)
}

@media (max-width: 1500px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:285px minmax(560px, 1fr)
    }

    .lh-human-anatomy-svg {
        width: min(590px, 86%)
    }
}

@media (max-width: 980px) {
    .lh-enabiz-workspace-pro {
        grid-template-columns:1fr
    }

    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 620px
    }

    .lh-human-anatomy-svg {
        width: min(520px, 90%);
        height: 620px
    }
}

@media (max-width: 720px) {
    .lh-enabiz-workspace-pro .lh-enabiz-stage {
        min-height: 520px
    }

    .lh-human-anatomy-svg {
        width: min(400px, 94%);
        height: 520px
    }

    .lh-enabiz-workspace-pro .lh-enabiz-hotspot {
        width: 32px;
        height: 32px;
        margin: -16px 0 0 -16px
    }
}

/* Bluetooth saglik cihazi olcum paneli */
.lh-bluetooth-panel {
    display: grid;
    grid-template-columns:minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    margin: 0 0 22px;
    padding: 22px;
    border: 1px solid #dfe8f5;
    border-radius: 22px;
    background: linear-gradient(135deg, #fff 0%, #f8fbff 62%, #eef6ff 100%);
    box-shadow: 0 14px 34px rgba(15, 43, 86, .055)
}

.lh-bluetooth-panel.compact {
    margin: 0 0 18px
}

.lh-bluetooth-copy h2 {
    margin: 8px 0 6px;
    color: #071225;
    font-size: 20px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: 0
}

.lh-bluetooth-copy p {
    max-width: 760px;
    margin: 0;
    color: #56708f;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 600
}

.lh-bluetooth-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap
}

.lh-bluetooth-select {
    height: 44px;
    min-width: 190px;
    border: 1px solid #dbe6f4;
    border-radius: 14px;
    background: #fff;
    color: #172033;
    padding: 0 14px;
    font-weight: 750;
    outline: none;
    box-shadow: 0 8px 18px rgba(15, 43, 86, .045)
}

.lh-bluetooth-status {
    grid-column: 1/-1;
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 38px;
    border: 1px solid #dbe6f4;
    border-radius: 14px;
    background: rgba(255, 255, 255, .72);
    color: #56708f;
    padding: 10px 13px;
    font-size: 12px;
    font-weight: 750
}

.lh-bluetooth-status:before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #94a3b8;
    box-shadow: 0 0 0 5px rgba(148, 163, 184, .12);
    flex: 0 0 auto
}

.lh-bluetooth-status.is-loading:before {
    background: #2563eb;
    box-shadow: 0 0 0 5px rgba(37, 99, 235, .12);
    animation: lhBtPulse 1.2s ease-in-out infinite
}

.lh-bluetooth-status.is-success {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #047857
}

.lh-bluetooth-status.is-success:before {
    background: #10b981;
    box-shadow: 0 0 0 5px rgba(16, 185, 129, .14)
}

.lh-bluetooth-status.is-error {
    border-color: #fecaca;
    background: #fff5f5;
    color: #dc2626
}

.lh-bluetooth-status.is-error:before {
    background: #ef4444;
    box-shadow: 0 0 0 5px rgba(239, 68, 68, .12)
}

@keyframes lhBtPulse {
    0%, 100% {
        transform: scale(.85);
        opacity: .75
    }
    50% {
        transform: scale(1.2);
        opacity: 1
    }
}

@media (max-width: 760px) {
    .lh-bluetooth-panel {
        grid-template-columns:1fr;
        padding: 18px
    }

    .lh-bluetooth-actions {
        justify-content: stretch
    }

    .lh-bluetooth-select, .lh-bluetooth-actions .lh-btn {
        width: 100%
    }
}

/* Acil destek merkezi */
.lh-emergency-hero {
    display: grid;
    grid-template-columns:minmax(0, 1fr)360px;
    gap: 20px;
    align-items: stretch;
    margin-bottom: 24px
}

.lh-emergency-hero > div, .lh-emergency-card {
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .04)
}

.lh-emergency-hero > div:first-child {
    padding: 28px 30px
}

.lh-emergency-hero h1 {
    margin: 8px 0;
    color: #0f172a;
    font-size: 32px;
    line-height: 1.15;
    letter-spacing: 0
}

.lh-emergency-hero p, .lh-emergency-card p {
    margin: 0;
    color: #52657f;
    line-height: 1.55
}

.lh-emergency-callout {
    display: grid;
    align-content: center;
    gap: 12px;
    padding: 22px;
    border-color: #fecdd3;
    background: #fff7f8
}

.lh-emergency-callout strong {
    color: #be123c;
    font-size: 18px
}

.lh-emergency-callout span {
    color: #7f1d1d;
    line-height: 1.45
}

.lh-emergency-callout a, .lh-emergency-action {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    padding: 0 18px;
    border: 0;
    border-radius: 12px;
    background: #e11d48;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer
}

.lh-emergency-action.ghost {
    border: 1px solid #cfe0f7;
    background: #f8fbff;
    color: #2563eb
}

.lh-emergency-grid {
    display: grid;
    grid-template-columns:1.15fr 1.35fr 1fr;
    gap: 16px
}

.lh-emergency-bottom-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 16px
}

.lh-emergency-card {
    min-width: 0;
    padding: 22px
}

.lh-emergency-card-head {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-bottom: 16px
}

.lh-emergency-card-head > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 14px;
    background: #eff6ff;
    color: #2563eb
}

.lh-emergency-card-head svg {
    width: 22px;
    height: 22px
}

.lh-emergency-card-head small {
    display: block;
    color: #2563eb;
    font-weight: 800;
    font-size: 12px
}

.lh-emergency-card-head h2 {
    margin: 4px 0 0;
    color: #0f172a;
    font-size: 18px;
    line-height: 1.2
}

.lh-emergency-assessment {
    display: grid;
    align-content: start;
    gap: 14px
}

.lh-emergency-meter {
    height: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: #e2e8f0
}

.lh-emergency-meter i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #16a34a, #f59e0b, #ef4444)
}

.lh-emergency-assessment footer {
    display: flex;
    align-items: baseline;
    gap: 8px
}

.lh-emergency-assessment footer strong {
    color: #0f172a;
    font-size: 28px
}

.lh-emergency-assessment footer span {
    color: #64748b;
    font-weight: 700
}

.lh-emergency-assessment.is-high .lh-emergency-card-head > span {
    background: #fff1f2;
    color: #e11d48
}

.lh-emergency-assessment.is-medium .lh-emergency-card-head > span {
    background: #fffbeb;
    color: #d97706
}

.lh-emergency-assessment.is-low .lh-emergency-card-head > span {
    background: #ecfdf5;
    color: #059669
}

.lh-symptom-list {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 10px
}

.lh-symptom-list label {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    background: #f8fbff;
    color: #334155;
    font-weight: 700;
    cursor: pointer
}

.lh-symptom-list input {
    width: 16px;
    height: 16px;
    accent-color: #2563eb
}

.lh-symptom-result {
    margin-top: 14px;
    padding: 14px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff
}

.lh-symptom-result strong, .lh-symptom-result span {
    display: block
}

.lh-symptom-result strong {
    color: #0f172a
}

.lh-symptom-result span {
    margin-top: 4px;
    color: #52657f;
    line-height: 1.45
}

.lh-symptom-result.is-high {
    border-color: #fecdd3;
    background: #fff7f8
}

.lh-symptom-result.is-medium {
    border-color: #fde68a;
    background: #fffbeb
}

.lh-symptom-result.is-low {
    border-color: #bbf7d0;
    background: #f0fdf4
}

.lh-emergency-branch-list, .lh-emergency-result-list, .lh-emergency-diagnosis-list {
    display: grid;
    gap: 10px
}

.lh-emergency-branch-list a, .lh-emergency-result-list a, .lh-emergency-diagnosis-list a, .lh-emergency-contact-grid a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 54px;
    padding: 12px 14px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
    color: #0f172a;
    text-decoration: none
}

.lh-emergency-result-list a {
    justify-content: flex-start
}

.lh-emergency-result-list a > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 12px;
    background: #eff6ff;
    color: #2563eb
}

.lh-emergency-result-list svg {
    width: 19px;
    height: 19px
}

.lh-emergency-branch-list strong, .lh-emergency-result-list strong, .lh-emergency-diagnosis-list strong, .lh-emergency-contact-grid strong {
    color: #0f172a;
    font-size: 14px
}

.lh-emergency-branch-list small, .lh-emergency-result-list small, .lh-emergency-diagnosis-list small, .lh-emergency-contact-grid span {
    color: #64748b;
    font-weight: 700;
    font-size: 12px
}

.lh-live-card {
    display: grid;
    align-content: start;
    gap: 14px
}

.lh-emergency-contact-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 10px
}

.lh-emergency-contact-grid a {
    display: grid;
    justify-items: start
}

@media (max-width: 1180px) {
    .lh-emergency-hero, .lh-emergency-grid, .lh-emergency-bottom-grid {
        grid-template-columns:1fr
    }
}

@media (max-width: 720px) {
    .lh-emergency-hero h1 {
        font-size: 26px
    }

    .lh-emergency-hero > div:first-child, .lh-emergency-card, .lh-emergency-callout {
        padding: 18px
    }

    .lh-symptom-list, .lh-emergency-contact-grid {
        grid-template-columns:1fr
    }

    .lh-emergency-branch-list a, .lh-emergency-diagnosis-list a {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px
    }
}

.lh-nearest-hospital {
    display: none;
    margin-top: 14px;
    padding: 14px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
    color: #52657f;
    line-height: 1.45
}

.lh-nearest-hospital.is-loading, .lh-nearest-hospital.is-success, .lh-nearest-hospital.is-warning, .lh-nearest-hospital.is-error {
    display: block
}

.lh-nearest-hospital strong, .lh-nearest-hospital span {
    display: block
}

.lh-nearest-hospital strong {
    color: #0f172a
}

.lh-nearest-hospital span {
    margin-top: 4px;
    color: #52657f;
    font-weight: 700
}

.lh-nearest-hospital a {
    margin-top: 12px;
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 11px;
    background: #2563eb;
    color: #fff;
    font-weight: 800;
    text-decoration: none
}

.lh-nearest-hospital.is-success {
    border-color: #bbf7d0;
    background: #f0fdf4
}

.lh-nearest-hospital.is-warning {
    border-color: #fde68a;
    background: #fffbeb
}

.lh-nearest-hospital.is-error {
    border-color: #fecdd3;
    background: #fff7f8;
    color: #991b1b
}

/* Language selector */
.lh-language-floating {
    position: fixed;
    top: 18px;
    right: 22px;
    z-index: 60;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
    backdrop-filter: blur(10px);
    font-size: 12px;
    font-weight: 800;
    color: #0f172a;
}

.lh-language-floating select,
.lh-language-select select {
    border: 0;
    outline: 0;
    background: transparent;
    font-weight: 800;
    color: #0f172a;
    cursor: pointer;
}

.lh-language-select {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 38px;
    padding: 0 10px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    font-size: 12px;
    font-weight: 800;
    color: #64748b;
    white-space: nowrap;
}

html[dir="rtl"] body {
    direction: rtl;
}

html[dir="rtl"] .lh-language-floating {
    right: auto;
    left: 22px;
}

html[dir="rtl"] .lh-search svg,
html[dir="rtl"] .lh-top-cta svg,
html[dir="rtl"] .lh-sidebar svg {
    margin-left: 6px;
    margin-right: 0;
}

@media (max-width: 900px) {
    .lh-language-floating {
        top: 12px;
        right: 12px;
    }

    .lh-language-select span {
        display: none;
    }
}

/* Duty pharmacy widgets */
.lh-duty-pharmacy-card, .lh-duty-pharmacy-panel, .lh-pharmacy-hero > div, .lh-pharmacy-hero-card {
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .04)
}

.lh-duty-pharmacy-card {
    padding: 20px;
    display: grid;
    gap: 14px
}

.lh-duty-pharmacy-card header, .lh-duty-pharmacy-panel header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px
}

.lh-duty-pharmacy-card header small {
    display: block;
    color: #059669;
    font-weight: 800;
    font-size: 12px
}

.lh-duty-pharmacy-card h2, .lh-duty-pharmacy-panel h2, .lh-pharmacy-hero h1 {
    margin: 4px 0 0;
    color: #0f172a;
    line-height: 1.2
}

.lh-duty-pharmacy-card h2 {
    font-size: 18px
}

.lh-duty-pharmacy-card header a, .lh-duty-pharmacy-card footer a, .lh-duty-pharmacy-item nav a {
    color: #2563eb;
    text-decoration: none;
    font-weight: 800
}

.lh-duty-pharmacy-card p, .lh-duty-pharmacy-panel p, .lh-pharmacy-hero p {
    margin: 0;
    color: #52657f;
    line-height: 1.5
}

.lh-duty-pharmacy-card footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.lh-duty-pharmacy-card footer button {
    min-height: 38px;
    padding: 0 14px;
    border: 0;
    border-radius: 11px;
    background: #059669;
    color: #fff;
    font-weight: 800;
    cursor: pointer
}

.lh-duty-pharmacy-card footer button:disabled, .lh-duty-pharmacy-panel button:disabled {
    opacity: .65;
    cursor: not-allowed
}

.lh-duty-pharmacy-list {
    display: grid;
    gap: 10px
}

.lh-duty-pharmacy-state {
    padding: 14px;
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    background: #f8fbff;
    color: #52657f;
    font-weight: 700;
    line-height: 1.45
}

.lh-duty-pharmacy-list.is-error .lh-duty-pharmacy-state {
    border-color: #fecdd3;
    background: #fff7f8;
    color: #be123c
}

.lh-duty-pharmacy-list.is-loading .lh-duty-pharmacy-state {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8
}

.lh-duty-pharmacy-item {
    display: grid;
    grid-template-columns:minmax(0, 1fr)auto;
    gap: 14px;
    align-items: center;
    padding: 14px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff
}

.lh-duty-pharmacy-item.compact {
    padding: 12px
}

.lh-duty-pharmacy-item strong, .lh-duty-pharmacy-item span, .lh-duty-pharmacy-item small, .lh-duty-pharmacy-item em {
    display: block
}

.lh-duty-pharmacy-item strong {
    color: #0f172a;
    font-size: 15px
}

.lh-duty-pharmacy-item span {
    margin-top: 3px;
    color: #059669;
    font-weight: 800;
    font-size: 12px
}

.lh-duty-pharmacy-item small {
    margin-top: 4px;
    color: #52657f;
    line-height: 1.35
}

.lh-duty-pharmacy-item em {
    margin-top: 5px;
    color: #64748b;
    font-style: normal;
    font-weight: 800;
    font-size: 12px
}

.lh-duty-pharmacy-item nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-end
}

.lh-duty-pharmacy-item nav a {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border: 1px solid #bfdbfe;
    border-radius: 10px;
    background: #fff;
    white-space: nowrap;
    font-size: 12px
}

.lh-pharmacy-hero {
    display: grid;
    grid-template-columns:minmax(0, 1fr)360px;
    gap: 20px;
    align-items: stretch;
    margin-bottom: 24px
}

.lh-pharmacy-hero > div:first-child {
    padding: 28px 30px
}

.lh-pharmacy-hero h1 {
    font-size: 32px
}

.lh-pharmacy-hero-card {
    display: grid;
    align-content: center;
    gap: 10px;
    padding: 22px;
    border-color: #bbf7d0;
    background: #f0fdf4
}

.lh-pharmacy-hero-card strong {
    color: #047857;
    font-size: 18px
}

.lh-pharmacy-hero-card span {
    color: #065f46;
    line-height: 1.45
}

.lh-duty-pharmacy-panel {
    padding: 24px
}

.lh-pharmacy-manual-search {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr))auto;
    gap: 12px;
    align-items: end;
    margin: 18px 0
}

.lh-pharmacy-query-box {
    margin: 18px 0 20px;
    padding: 18px;
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #f8fbff;
}

.lh-pharmacy-manual-search label {
    display: grid;
    gap: 6px
}

.lh-pharmacy-manual-search span {
    color: #334155;
    font-weight: 800;
    font-size: 13px
}

.lh-pharmacy-manual-search input,
.lh-pharmacy-manual-search select {
    width: 100%;
    min-height: 44px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    padding: 0 12px;
    color: #0f172a;
    background: #fff;
    font: inherit;
    font-weight: 700
}

.lh-pharmacy-manual-search select {
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #64748b 50%), linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position: calc(100% - 18px) 19px, calc(100% - 13px) 19px;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-right: 36px;
}

.lh-pharmacy-manual-search select:disabled {
    color: #94a3b8;
    background-color: #f1f5f9;
    cursor: not-allowed;
}

.lh-duty-type-group {
    display: grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid #e2e8f0;
    min-inline-size: 0;
}

.lh-duty-type-group legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 8px;
    color: #334155;
    font-size: 13px;
    font-weight: 850;
}

.lh-duty-type-group label {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 0 13px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    background: #fff;
    color: #0f172a;
    font-weight: 750;
    cursor: pointer;
}

.lh-duty-type-group input {
    width: 16px;
    height: 16px;
    accent-color: #2563eb;
}

.lh-duty-type-group input:checked + span {
    color: #2563eb;
}

.lh-btn.primary, .lh-btn.ghost {
    border: 0;
    cursor: pointer
}

@media (max-width: 1180px) {
    .lh-pharmacy-hero {
        grid-template-columns:1fr
    }

    .lh-pharmacy-manual-search {
        grid-template-columns:1fr
    }
}

@media (max-width: 720px) {
    .lh-duty-pharmacy-card header, .lh-duty-pharmacy-panel header, .lh-duty-pharmacy-item {
        grid-template-columns:1fr;
        display: grid
    }

    .lh-duty-pharmacy-item nav {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start
    }

    .lh-pharmacy-hero h1 {
        font-size: 26px
    }

    .lh-pharmacy-hero > div:first-child, .lh-pharmacy-hero-card, .lh-duty-pharmacy-panel {
        padding: 18px
    }
}

/* Mobil genel duzeltmeler */
.lh-logo-img {
    display: block;
    width: auto;
    max-width: 290px;
    height: 78px;
    object-fit: contain
}

.lh-emergency-hero {
    grid-template-columns:minmax(0, 1fr) 360px
}

.lh-nearest-list {
    display: grid;
    gap: 10px;
    margin-top: 12px
}

.lh-nearest-row {
    display: grid !important;
    grid-template-columns:minmax(0, 1fr) auto;
    align-items: center;
    gap: 4px 12px;
    padding: 12px !important;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    background: #fff;
    text-decoration: none
}

.lh-nearest-row strong {
    grid-column: 1/-1
}

.lh-nearest-row span {
    margin: 0 !important
}

.lh-nearest-row em {
    grid-column: 2;
    grid-row: 2;
    color: #2563eb;
    font-style: normal;
    font-weight: 850;
    font-size: 12px;
    white-space: nowrap
}

@media (max-width: 1180px) {
    .lh-logo {
        width: auto;
        max-width: 300px
    }

    .lh-logo-img {
        max-width: 260px
    }
}

@media (max-width: 820px) {
    .lh-shell {
        display: block;
        min-width: 0
    }

    .lh-topbar {
        height: 58px;
        display: grid;
        grid-template-columns:40px minmax(116px, 1fr) auto;
        gap: 8px;
        padding: 0 10px
    }

    .lh-mobile-only {
        display: grid
    }

    .lh-logo {
        width: 100%;
        min-width: 0;
        max-width: none;
        overflow: hidden
    }

    .lh-logo-img {
        width: 100%;
        max-width: 190px;
        height: 32px;
        object-position: left center
    }

    .lh-search, .lh-top-cta, .lh-language-select, .lh-user-text, .lh-member-points {
        display: none !important
    }

    .lh-top-profile {
        min-width: 0;
        margin-left: 0;
        gap: 6px;
        justify-self: end
    }

    .lh-user-chip, .lh-user-chip-premium {
        min-width: 0 !important;
        min-height: 40px;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important
    }

    .lh-avatar {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important
    }

    .lh-icon-button {
        width: 38px;
        height: 38px;
        border-radius: 10px
    }

    .lh-main {
        padding: 14px;
        overflow: hidden
    }

    .lh-welcome, .lh-page-head, .lh-health-hero, .lh-health-form-hero, .lh-diagnosis-hero, .lh-emergency-hero, .lh-pharmacy-hero {
        display: grid !important;
        grid-template-columns:1fr !important;
        gap: 14px !important
    }

    .lh-welcome h1, .lh-page-head h1, .lh-health-hero h1, .lh-diagnosis-hero h1, .lh-emergency-hero h1, .lh-pharmacy-hero h1 {
        font-size: 25px !important;
        line-height: 1.18 !important
    }

    .lh-actions, .lh-page-head > div:last-child {
        width: 100%;
        display: grid;
        grid-template-columns:1fr;
        gap: 10px
    }

    .lh-btn, .lh-actions a {
        width: 100%;
        min-height: 42px
    }

    .lh-quick-grid, .lh-dashboard-grid, .lh-left-stack, .lh-right-stack, .lh-health-grid, .lh-health-summary-grid, .lh-health-grid-pro, .lh-diagnosis-stats, .lh-diagnosis-layout, .lh-diagnosis-grid-two, .lh-emergency-grid, .lh-emergency-bottom-grid, .lh-pharmacy-manual-search, .lh-duty-pharmacy-grid {
        grid-template-columns:1fr !important
    }

    .lh-panel, .lh-score-card, .lh-calendar-card, .lh-doctors-card, .lh-health-card, .lh-health-summary-card, .lh-diagnosis-card, .lh-emergency-card, .lh-duty-pharmacy-panel {
        border-radius: 15px
    }

    .lh-appointment-list article, .lh-wide-appointment {
        grid-template-columns:auto minmax(0, 1fr) !important;
        align-items: start
    }

    .lh-appt-side, .lh-row-arrow, .lh-list-status {
        grid-column: 1/-1;
        justify-self: stretch
    }

    .lh-appt-actions {
        grid-template-columns:1fr 1fr
    }

    .lh-sidebar {
        position: fixed !important;
        inset: 0 auto 0 0 !important;
        z-index: 70 !important;
        width: min(86vw, 320px) !important;
        height: 100svh !important;
        display: flex !important;
        flex-direction: column !important;
        background: #fff !important;
        box-shadow: 24px 0 60px rgba(15, 23, 42, .22) !important;
        transform: translateX(-105%);
        transition: transform .22s ease
    }

    .sidebar-open .lh-sidebar {
        transform: translateX(0)
    }

    .lh-sidebar nav {
        overflow: auto;
        padding-bottom: 88px
    }

    .lh-sidebar-scrim {
        position: fixed;
        inset: 0;
        z-index: 65;
        background: rgba(15, 23, 42, .42);
        backdrop-filter: blur(3px)
    }

    .sidebar-open .lh-sidebar-scrim {
        display: block
    }

    .lh-emergency-hero > div:first-child, .lh-emergency-callout, .lh-pharmacy-hero > div:first-child, .lh-pharmacy-hero-card {
        padding: 18px !important
    }
}

@media (max-width: 520px) {
    .lh-topbar {
        grid-template-columns:38px minmax(84px, 1fr) auto;
        padding: 0 8px
    }

    .lh-logo-img {
        max-width: 270px;
        height: 78px;
    }

    .lh-notification-bell {
        display: none
    }

    .lh-avatar {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 12px !important
    }

    .lh-main {
        padding: 12px
    }

    .lh-quick-card, .lh-panel, .lh-emergency-card, .lh-health-card, .lh-diagnosis-card {
        padding: 16px !important
    }

    .lh-title-line {
        display: grid;
        gap: 8px
    }

    .lh-title-line span {
        width: max-content
    }

    .lh-symptom-list, .lh-emergency-contact-grid, .lh-appt-actions {
        grid-template-columns:1fr !important
    }

    .lh-nearest-row {
        grid-template-columns:1fr
    }

    .lh-nearest-row em {
        grid-column: 1;
        grid-row: auto
    }

    .lh-calendar-card, .lh-doctors-card {
        padding: 18px !important
    }
}

/* Mobil liste/kart stabilizasyonu - randevular, doktorlar, receteler */
@media (max-width: 720px) {
    .lh-app .lh-page-list,
    .lh-app .lh-doctor-grid-page,
    .lh-app .lh-prescription-grid {
        width: 100%;
        min-width: 0;
        overflow: visible;
    }

    .lh-app .lh-wide-appointment {
        width: 100%;
        min-width: 0;
        display: grid !important;
        grid-template-columns:46px minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: start !important;
        padding: 14px !important;
        overflow: hidden;
    }

    .lh-app .lh-wide-appointment > * {
        min-width: 0;
    }

    .lh-app .lh-wide-info {
        grid-column: 2;
        min-width: 0;
        max-width: 100%;
        overflow: hidden;
    }

    .lh-app .lh-wide-info h2 {
        font-size: 15px !important;
        line-height: 1.25 !important;
        overflow-wrap: anywhere;
    }

    .lh-app .lh-wide-info p {
        font-size: 13px !important;
        overflow-wrap: anywhere;
    }

    .lh-app .lh-wide-info small {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    .lh-app .lh-wide-appointment .lh-list-status {
        grid-column: 2 !important;
        justify-self: start !important;
        width: max-content;
        max-width: 100%;
        margin-top: 2px;
    }

    .lh-app .lh-appointment-actions {
        grid-column: 1/-1 !important;
        width: 100% !important;
        display: grid !important;
        grid-template-columns:1fr 1fr !important;
        gap: 10px !important;
        margin: 4px 0 0 !important;
    }

    .lh-app .lh-mini-action {
        width: 100% !important;
        min-width: 0 !important;
        justify-content: center !important;
        padding: 10px !important;
    }

    .lh-app .lh-mini-action .lh-action-copy {
        min-width: 0;
    }

    .lh-app .lh-mini-action .lh-action-copy strong,
    .lh-app .lh-mini-action .lh-action-copy small {
        white-space: normal;
    }

    .lh-app .lh-wide-appointment .lh-row-arrow {
        display: none !important;
    }

    .lh-app .lh-tabs {
        width: 100% !important;
        display: grid !important;
        grid-template-columns:repeat(auto-fit, minmax(0, 1fr));
    }

    .lh-app .lh-tabs a {
        min-width: 0 !important;
        padding: 0 10px !important;
        text-align: center;
        white-space: nowrap;
    }

    .lh-app .lh-page-head {
        width: 100%;
        min-width: 0;
    }

    .lh-app .lh-page-head .lh-btn {
        min-width: 0 !important;
    }
}

@media (max-width: 480px) {
    .lh-app .lh-wide-appointment {
        grid-template-columns:44px minmax(0, 1fr) !important;
    }

    .lh-app .lh-doctor-avatar {
        width: 44px !important;
        height: 44px !important;
    }

    .lh-app .lh-appointment-actions {
        grid-template-columns:1fr !important;
    }

    .lh-app .lh-doctor-profile-card header {
        grid-template-columns:48px minmax(0, 1fr) auto !important;
    }

    .lh-app .lh-doctor-profile-card footer {
        grid-template-columns:1fr 1fr !important;
    }

    .lh-app .lh-doctor-profile-card footer .lh-card-action {
        grid-column: 1/-1;
        width: 100%;
        justify-self: stretch;
    }

    .lh-app .lh-prescription-card {
        grid-template-columns:42px minmax(0, 1fr) !important;
        padding: 14px !important;
    }

    .lh-app .lh-prescription-title-row,
    .lh-app .lh-prescription-foot {
        display: grid !important;
        grid-template-columns:1fr !important;
        gap: 8px;
    }

    .lh-app .lh-prescription-title-row strong {
        overflow-wrap: anywhere;
    }

    .lh-app .lh-prescription-tags {
        max-width: 100%;
        overflow: hidden;
    }
}

/* Test sonuclari */
.lh-lab-command {
    display: grid;
    grid-template-columns:300px minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
    margin: 0 0 22px;
}

.lh-lab-command-copy,
.lh-lab-filter-bar {
    padding: 16px;
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .035);
}

.lh-lab-command-copy {
    display: grid;
    align-content: center;
}

.lh-lab-command-copy h2 {
    margin: 8px 0 6px;
    color: #0f172a;
    font-size: 22px;
    line-height: 1.18;
}

.lh-lab-command-copy p {
    margin: 0;
    color: #52657f;
    line-height: 1.5;
    font-weight: 600;
}

.lh-lab-filter-bar {
    display: grid;
    grid-template-columns:repeat(5, minmax(0, 1fr)) auto;
    gap: 12px;
    align-items: end;
    margin: 0;
}

.lh-lab-filter-bar label {
    display: grid;
    gap: 6px;
}

.lh-lab-filter-bar span {
    color: #334155;
    font-size: 12px;
    font-weight: 800;
}

.lh-lab-filter-bar select {
    width: 100%;
    min-height: 42px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    padding: 0 12px;
    background: #f8fbff;
    color: #0f172a;
    font-weight: 700;
    outline: none;
}

.lh-lab-filter-bar select:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}

.lh-lab-filter-bar a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 12px;
    background: #eff6ff;
    color: #2563eb;
    text-decoration: none;
    font-weight: 800;
}

.lh-lab-groups,
.lh-lab-group,
.lh-lab-grid {
    display: grid;
    gap: 16px;
}

.lh-lab-group > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.lh-lab-group h2 {
    margin: 4px 0 0;
    color: #0f172a;
    font-size: 18px;
}

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

.lh-lab-card {
    width: 100%;
    display: grid;
    grid-template-columns:52px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    min-height: 166px;
    padding: 18px 18px 16px;
    border: 1px solid #d9e5f4;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(248, 251, 255, .82), rgba(255, 255, 255, .98) 56%),
    #fff;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .045);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease, background .18s ease;
    position: relative;
    overflow: hidden;
}

.lh-lab-card:before,
.lh-lab-card:after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.lh-lab-card:before {
    inset: 0;
    background: radial-gradient(circle at 86% 18%, rgba(37, 99, 235, .08), transparent 28%),
    linear-gradient(90deg, rgba(37, 99, 235, .045), transparent 46%);
    opacity: .9;
}

.lh-lab-card:after {
    inset: auto 18px 0 86px;
    height: 1px;
    background: linear-gradient(90deg, rgba(148, 163, 184, .38), transparent);
}

.lh-lab-status-rail {
    position: absolute;
    inset: 18px auto 18px 0;
    width: 4px;
    border-radius: 0 999px 999px 0;
    background: #2563eb;
}

.lh-lab-card.is-ok .lh-lab-status-rail {
    background: #10b981
}

.lh-lab-card.is-wait .lh-lab-status-rail {
    background: #f59e0b
}

.lh-lab-card.is-danger .lh-lab-status-rail {
    background: #ef4444
}

.lh-lab-card.is-info .lh-lab-status-rail {
    background: #2563eb
}

.lh-lab-card:hover {
    border-color: #9fc2ff;
    transform: translateY(-2px);
    box-shadow: 0 20px 42px rgba(37, 99, 235, .105);
    background: linear-gradient(180deg, rgba(248, 251, 255, .98), #fff 62%),
    #fff;
}

.lh-lab-card:focus-visible {
    outline: 0;
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .14), 0 20px 42px rgba(37, 99, 235, .105);
}

.lh-lab-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    background: linear-gradient(180deg, #f8fbff, #edf5ff);
    color: #2563eb;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 10px 22px rgba(37, 99, 235, .08);
    position: relative;
    z-index: 1;
}

.lh-lab-icon.large {
    width: 52px;
    height: 52px;
}

.lh-lab-icon svg {
    width: 22px;
    height: 22px;
}

.lh-lab-body,
.lh-lab-title-row,
.lh-lab-meta,
.lh-lab-foot {
    min-width: 0;
}

.lh-lab-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    position: relative;
    z-index: 1;
}

.lh-lab-title-row > span {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.lh-lab-title-row small {
    width: max-content;
    max-width: 100%;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef4ff;
    color: #2563eb;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lh-lab-title-row strong {
    color: #0f172a;
    font-size: 16px;
    line-height: 1.28;
    overflow-wrap: anywhere;
}

.lh-lab-title-row em {
    flex: 0 0 auto;
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: #fef3c7;
    color: #b45309;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
}

.lh-lab-title-row em.is-ok {
    background: #d1fae5;
    color: #047857
}

.lh-lab-title-row em.is-danger {
    background: #fee2e2;
    color: #dc2626
}

.lh-lab-title-row em.is-info {
    background: #dbeafe;
    color: #1d4ed8
}

.lh-lab-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
    color: #52657f;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.4;
    position: relative;
    z-index: 1;
}

.lh-lab-meta i {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: rgba(248, 250, 252, .88);
    color: #475569;
    font-style: normal;
    max-width: 100%;
}

.lh-lab-meta svg {
    width: 13px;
    height: 13px;
    flex: 0 0 auto;
}

.lh-lab-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #edf2f7;
    position: relative;
    z-index: 1;
}

.lh-lab-date-block {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 14px;
    min-width: 0;
}

.lh-lab-foot small {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}

.lh-lab-foot svg {
    width: 14px;
    height: 14px;
}

.lh-lab-foot .lh-row-arrow {
    margin-left: auto;
}

.lh-lab-foot b {
    margin-left: 0;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 11px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}

.lh-lab-card:hover .lh-lab-foot b {
    border-color: #2563eb;
    background: #2563eb;
    color: #fff;
}

.lh-lab-modal {
    position: fixed;
    inset: 0;
    z-index: 95;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(6px);
}

.lh-lab-modal.is-open {
    display: flex;
}

.lh-lab-dialog {
    width: min(760px, 100%);
    max-height: min(780px, 92vh);
    display: grid;
    grid-template-rows:auto minmax(0, 1fr);
    overflow: hidden;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .24);
}

.lh-lab-modal.is-wide .lh-lab-dialog {
    width: min(1120px, 96vw);
}

.lh-lab-modal.is-compact .lh-lab-dialog {
    width: min(640px, 100%);
}

.lh-lab-modal.is-wide .lh-lab-test-row {
    grid-template-columns:42px minmax(0, 1.45fr) minmax(130px, .55fr) minmax(0, 1.05fr) auto;
}

.lh-lab-dialog-head {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 22px 24px;
    border-bottom: 1px solid #e2e8f0;
}

.lh-lab-dialog-head h2 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
}

.lh-lab-dialog-head p {
    margin: 5px 0 0;
    color: #64748b;
    font-weight: 650;
}

.lh-lab-close {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 12px;
    background: #f8fafc;
    color: #64748b;
    font-size: 24px;
    cursor: pointer;
}

.lh-lab-dialog-body {
    overflow: auto;
    padding: 22px 24px 26px;
}

.lh-lab-meta-panel {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.lh-lab-meta-panel article {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr);
    gap: 10px;
    padding: 13px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
}

.lh-lab-meta-panel svg {
    width: 18px;
    height: 18px;
    color: #7890ae;
}

.lh-lab-meta-panel small {
    display: block;
    color: #7890ae;
    font-weight: 800;
    font-size: 11px;
}

.lh-lab-meta-panel strong {
    display: block;
    margin-top: 3px;
    color: #0f172a;
    overflow-wrap: anywhere;
}

.lh-lab-status-panel {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-bottom: 18px;
    padding: 14px;
    border: 1px solid #bbf7d0;
    border-radius: 14px;
    background: #f0fdf4;
}

.lh-lab-status-panel svg {
    width: 20px;
    height: 20px;
    color: #059669;
}

.lh-lab-status-panel strong,
.lh-lab-status-panel span {
    display: block;
}

.lh-lab-status-panel strong {
    color: #047857;
}

.lh-lab-status-panel span {
    margin-top: 3px;
    color: #065f46;
    font-weight: 650;
}

.lh-lab-section-title {
    margin: 0 0 12px;
    color: #0f172a;
    font-size: 16px;
}

.lh-lab-tests,
.lh-lab-test-group {
    display: grid;
    gap: 12px;
}

.lh-lab-test-group h4 {
    margin: 4px 0 0;
    color: #2563eb;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.lh-lab-result-overview {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.lh-lab-result-overview article {
    display: grid;
    grid-template-columns:38px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 13px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #fff;
}

.lh-lab-result-overview article > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 900;
}

.lh-lab-result-overview strong,
.lh-lab-result-overview small {
    display: block;
}

.lh-lab-result-overview strong {
    color: #0f172a;
    font-size: 22px;
    line-height: 1;
}

.lh-lab-result-overview small {
    margin-top: 3px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.lh-lab-result-overview .is-high {
    border-color: #fed7aa;
    background: #fff7ed;
}

.lh-lab-result-overview .is-high > span {
    background: #ffedd5;
    color: #ea580c;
}

.lh-lab-result-overview .is-low {
    border-color: #bfdbfe;
    background: #eff6ff;
}

.lh-lab-result-overview .is-low > span {
    background: #dbeafe;
    color: #2563eb;
}

.lh-lab-result-overview .is-normal {
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.lh-lab-result-overview .is-normal > span {
    background: #dcfce7;
    color: #059669;
}

.lh-lab-test-row {
    display: grid;
    grid-template-columns:42px minmax(0, 1.3fr) minmax(118px, .55fr) minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 14px 14px 14px 12px;
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .035);
    position: relative;
    overflow: hidden;
}

.lh-lab-test-row:before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: #10b981;
}

.lh-lab-flag-icon {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #dcfce7;
    color: #059669;
    font-size: 19px;
    font-weight: 950;
    line-height: 1;
    font-family: Arial, sans-serif;
    text-align: center;
    font-variant-numeric: normal;
    transform: translateZ(0);
}

.lh-lab-flag-icon:before {
    content: "";
    display: block;
    padding: 8px;
}

.lh-lab-flag-icon.is-high:before {
    content: "↑";
}

.lh-lab-flag-icon.is-low:before {
    content: "↓";
}

.lh-lab-flag-icon.is-normal:before,
.lh-lab-flag-icon:not(.is-high):not(.is-low):before {
    content: "✓";
}

.lh-lab-test-row strong,
.lh-lab-test-row small,
.lh-lab-test-row em,
.lh-lab-test-row b,
.lh-lab-test-row span {
    display: block;
}

.lh-lab-test-row strong {
    color: #0f172a;
    font-size: 14px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.lh-lab-test-row small {
    margin-top: 4px;
    color: #64748b;
    font-weight: 650;
}

.lh-lab-result-value b {
    color: #0f172a;
    font-size: 24px;
    line-height: 1;
}

.lh-lab-result-value span {
    margin-top: 5px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.lh-lab-reference-box {
    display: grid;
    gap: 4px;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 13px;
    background: #f8fafc;
}

.lh-lab-reference-box span {
    color: #475569;
    font-size: 12px;
    font-weight: 800;
}

.lh-lab-test-row em,
.lh-lab-reference-box em {
    width: max-content;
    max-width: 100%;
    padding: 4px 8px;
    border-radius: 999px;
    background: #d1fae5;
    color: #047857;
    font-style: normal;
    font-size: 11px;
    font-weight: 850;
}

.lh-lab-reference-box em.is-high {
    background: #ffedd5;
    color: #c2410c;
}

.lh-lab-reference-box em.is-low {
    background: #dbeafe;
    color: #1d4ed8;
}

.lh-lab-reference-box em.is-normal {
    background: #d1fae5;
    color: #047857;
}

.lh-lab-test-row em.is-wait {
    background: #fef3c7;
    color: #b45309
}

.lh-lab-test-row em.is-danger {
    background: #fee2e2;
    color: #dc2626
}

.lh-lab-test-row em.is-info {
    background: #dbeafe;
    color: #1d4ed8
}

.lh-lab-test-row.is-high {
    border-color: #fed7aa;
    background: linear-gradient(90deg, rgba(255, 247, 237, .96), #fff 42%);
}

.lh-lab-test-row.is-high:before {
    background: #f97316;
}

.lh-lab-test-row.is-high .lh-lab-flag-icon {
    background: #ffedd5;
    color: #ea580c;
    font-size: 18px;
}

.lh-lab-test-row.is-high .lh-lab-result-value b {
    color: #c2410c;
}

.lh-lab-test-row.is-low {
    border-color: #bfdbfe;
    background: linear-gradient(90deg, rgba(239, 246, 255, .96), #fff 42%);
}

.lh-lab-test-row.is-low:before {
    background: #2563eb;
}

.lh-lab-test-row.is-low .lh-lab-flag-icon {
    background: #dbeafe;
    color: #2563eb;
}

.lh-lab-test-row.is-low .lh-lab-result-value b {
    color: #1d4ed8;
}

.lh-lab-test-row.is-normal {
    border-color: #dbe5f2;
}

.lh-lab-test-row.is-normal:before {
    background: #10b981;
}

.lh-lab-test-row p {
    grid-column: 1/-1;
    margin: 0;
    color: #52657f;
    font-size: 13px;
}

@media (max-width: 1100px) {
    .lh-lab-command,
    .lh-lab-filter-bar,
    .lh-lab-grid {
        grid-template-columns:1fr;
    }
}

@media (max-width: 720px) {
    .lh-lab-result-overview {
        grid-template-columns:1fr;
    }

    .lh-lab-filter-bar {
        padding: 14px;
    }

    .lh-lab-card {
        grid-template-columns:42px minmax(0, 1fr);
        padding: 14px;
    }

    .lh-lab-icon {
        width: 42px;
        height: 42px;
    }

    .lh-lab-title-row,
    .lh-lab-foot {
        display: grid;
        grid-template-columns:1fr;
    }

    .lh-lab-meta {
        display: grid;
        grid-template-columns:1fr;
    }

    .lh-lab-title-row em {
        width: max-content;
    }

    .lh-lab-foot .lh-row-arrow {
        display: none;
    }

    .lh-lab-foot b {
        margin-left: 0;
        width: 100%;
    }

    .lh-lab-modal {
        align-items: flex-end;
        padding: 0;
    }

    .lh-lab-dialog {
        max-height: 92svh;
        border-radius: 20px 20px 0 0;
    }

    .lh-lab-dialog-head,
    .lh-lab-dialog-body {
        padding: 18px;
    }

    .lh-lab-meta-panel,
    .lh-lab-test-row {
        grid-template-columns:1fr;
    }

    .lh-lab-test-row {
        padding: 14px;
    }

    .lh-lab-flag-icon {
        width: 36px;
        height: 36px;
    }

    .lh-lab-result-value {
        display: flex;
        align-items: baseline;
        gap: 8px;
    }

    .lh-lab-result-status {
        justify-self: start;
    }
}

/* Raporlarım */
.lh-report-command {
    display: grid;
    grid-template-columns:300px minmax(0, 1fr);
    gap: 18px;
    align-items: stretch;
    margin: 0 0 22px;
}

.lh-report-command-copy,
.lh-report-filter-bar {
    padding: 16px;
    border: 1px solid #dbe5f2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .035);
}

.lh-report-command-copy {
    display: grid;
    align-content: center;
}

.lh-report-command-copy h2 {
    margin: 8px 0 6px;
    color: #0f172a;
    font-size: 22px;
    line-height: 1.18;
}

.lh-report-command-copy p {
    margin: 0;
    color: #52657f;
    line-height: 1.5;
    font-weight: 600;
}

.lh-report-filter-bar {
    display: grid;
    grid-template-columns:repeat(5, minmax(0, 1fr)) auto;
    gap: 12px;
    align-items: end;
    margin: 0;
}

.lh-report-filter-bar label {
    display: grid;
    gap: 6px;
}

.lh-report-filter-bar span {
    color: #334155;
    font-size: 12px;
    font-weight: 800;
}

.lh-report-filter-bar select {
    width: 100%;
    min-height: 42px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    padding: 0 12px;
    background: #f8fbff;
    color: #0f172a;
    font-weight: 700;
}

.lh-report-filter-bar select:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
    outline: 0;
}

.lh-report-filter-bar a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-radius: 12px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none;
}

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

.lh-report-card {
    width: 100%;
    min-height: 170px;
    display: grid;
    grid-template-columns:62px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    padding: 18px;
    border: 1px solid #d9e5f4;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(248, 251, 255, .84), #fff 62%);
    color: inherit;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .045);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}


.lh-report-date {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    align-content: center;
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    background: #eff6ff;
    color: #1d4ed8;
}

.lh-report-date strong,
.lh-report-date small {
    display: block;
    line-height: 1;
}

.lh-report-date strong {
    font-size: 22px;
    font-weight: 900;
}

.lh-report-date small {
    margin-top: 5px;
    font-size: 11px;
    font-weight: 850;
}

.lh-report-body,
.lh-report-title-row,
.lh-report-meta,
.lh-report-foot {
    min-width: 0;
}

.lh-report-title-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.lh-report-title-row > span {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.lh-report-title-row small {
    width: max-content;
    max-width: 100%;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef4ff;
    color: #2563eb;
    font-size: 11px;
    font-weight: 850;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lh-report-title-row strong {
    color: #0f172a;
    font-size: 16px;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.lh-report-title-row em {
    flex: 0 0 auto;
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    padding: 0 10px;
    border-radius: 999px;
    background: #d1fae5;
    color: #047857;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
}

.lh-report-title-row em.is-wait {
    background: #fef3c7;
    color: #b45309;
}

.lh-report-title-row em.is-danger {
    background: #fee2e2;
    color: #dc2626;
}

.lh-report-title-row em.is-info {
    background: #dbeafe;
    color: #1d4ed8;
}

.lh-report-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 13px;
}

.lh-report-meta i {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: rgba(248, 250, 252, .9);
    color: #475569;
    font-size: 13px;
    font-style: normal;
    font-weight: 700;
}

.lh-report-meta svg,
.lh-report-foot svg {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
}

.lh-report-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #edf2f7;
}

.lh-report-foot > span {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.lh-report-foot small {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.lh-report-foot b {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}

.lh-report-modal {
    position: fixed;
    inset: 0;
    z-index: 95;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, .54);
    backdrop-filter: blur(8px);
}

.lh-report-modal.is-open {
    display: flex;
}

.lh-report-dialog {
    width: min(900px, 96vw);
    max-height: min(820px, 92vh);
    display: grid;
    grid-template-rows:auto minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid #dbe5f2;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .24);
}

.lh-report-dialog-head {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    padding: 22px 24px;
    border-bottom: 1px solid #e2e8f0;
}

.lh-report-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    background: #eff6ff;
    color: #2563eb;
}

.lh-report-icon svg {
    width: 22px;
    height: 22px;
}

.lh-report-dialog-head h2 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
}

.lh-report-dialog-head p {
    margin: 5px 0 0;
    color: #64748b;
    font-weight: 650;
}

.lh-report-close {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 12px;
    background: #f8fafc;
    color: #64748b;
    font-size: 24px;
    cursor: pointer;
}

.lh-report-dialog-body {
    overflow: auto;
    padding: 22px 24px 26px;
}

.lh-report-meta-panel {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.lh-report-meta-panel article {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr);
    gap: 10px;
    padding: 13px;
    border: 1px solid #dbe5f2;
    border-radius: 14px;
    background: #f8fbff;
}

.lh-report-meta-panel svg {
    width: 18px;
    height: 18px;
    color: #7890ae;
}

.lh-report-meta-panel small,
.lh-report-meta-panel strong {
    display: block;
}

.lh-report-meta-panel small {
    color: #7890ae;
    font-size: 11px;
    font-weight: 850;
}

.lh-report-meta-panel strong {
    margin-top: 3px;
    color: #0f172a;
    overflow-wrap: anywhere;
}

.lh-report-status-panel {
    display: grid;
    grid-template-columns:auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin-bottom: 18px;
    padding: 14px;
    border: 1px solid #bbf7d0;
    border-radius: 14px;
    background: #f0fdf4;
}

.lh-report-status-panel svg {
    width: 20px;
    height: 20px;
    color: #059669;
}

.lh-report-status-panel strong,
.lh-report-status-panel span {
    display: block;
}

.lh-report-status-panel strong {
    color: #047857;
}

.lh-report-status-panel span {
    margin-top: 3px;
    color: #065f46;
    font-weight: 650;
}

.lh-report-text-panel h3 {
    margin: 0 0 12px;
    color: #0f172a;
    font-size: 16px;
}

.lh-report-text {
    padding: 20px 22px;
    border: 1px solid #d7e2f0;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    color: #152033;
    box-shadow: inset 4px 0 0 #2563eb;
}

.lh-report-text p {
    margin: 0 0 13px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #152033;
    font-size: 14.5px;
    font-weight: 500;
    line-height: 1.78;
}

.lh-report-text p:first-child {
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .02em;
    color: #0f172a;
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: 1px solid #e2e8f0;
}

.lh-report-text p:last-child {
    margin-bottom: 0;
}

@media (max-width: 1100px) {
    .lh-report-command,
    .lh-report-filter-bar,
    .lh-report-grid {
        grid-template-columns:1fr;
    }
}

@media (max-width: 720px) {
    .lh-report-card {
        grid-template-columns:52px minmax(0, 1fr);
        padding: 14px;
    }

    .lh-report-date {
        width: 52px;
        height: 52px;
        border-radius: 16px;
    }

    .lh-report-title-row,
    .lh-report-foot {
        display: grid;
        grid-template-columns:1fr;
    }

    .lh-report-meta {
        display: grid;
        grid-template-columns:1fr;
    }

    .lh-report-foot b {
        width: 100%;
    }

    .lh-report-modal {
        align-items: flex-end;
        padding: 0;
    }

    .lh-report-dialog {
        width: 100%;
        max-height: 92svh;
        border-radius: 20px 20px 0 0;
    }

    .lh-report-dialog-head,
    .lh-report-dialog-body {
        padding: 18px;
    }

    .lh-report-meta-panel {
        grid-template-columns:1fr;
    }
}

/* Doktorlarım favori ve slot durumu */
.lh-heart-dot.lh-favorite-toggle {
    border: 0;
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, color .18s ease;
}

.lh-heart-dot.lh-favorite-toggle:hover {
    transform: scale(1.05);
}

.lh-heart-dot.lh-favorite-toggle.active {
    background: #ffe4e6;
    color: #e11d48;
}

.lh-heart-dot.lh-favorite-toggle.active svg {
    fill: currentColor;
}

.lh-card-action[disabled] {
    opacity: .48;
    cursor: not-allowed;
    filter: grayscale(.2);
}

.lh-list-status.muted {
    margin: 10px 0 0;
    color: #64748b;
    font-size: 12px;
}

.auth-progress-overlay {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, .62);
    backdrop-filter: blur(8px);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.auth-progress-overlay.is-open {
    display: flex;
}

.auth-progress-card {
    width: min(420px, 100%);
    background: #fff;
    border-radius: 26px;
    padding: 28px;
    text-align: center;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .28);
}

.auth-progress-spinner {
    width: 48px;
    height: 48px;
    border-radius: 999px;
    border: 4px solid #e2e8f0;
    border-top-color: #0f766e;
    margin: 0 auto 18px;
    animation: auth-spin .8s linear infinite;
}

.auth-progress-card strong {
    display: block;
    color: #0f172a;
    font-size: 20px;
    margin-bottom: 8px;
}

.auth-progress-card span {
    color: #64748b;
    font-size: 14px;
}

@keyframes auth-spin {
    to {
        transform: rotate(360deg)
    }
}

.showcase-admin-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0
}

.showcase-admin-subtitle {
    max-width: 440px;
    font-size: 18px;
    line-height: 1.55;
    color: rgba(255, 255, 255, .88);
    margin: 14px 0 0
}

.showcase-admin-button {
    display: inline-flex;
    margin-top: 18px;
    padding: 12px 18px;
    border-radius: 999px;
    background: #fff;
    color: #0f766e;
    text-decoration: none;
    font-weight: 800;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .18)
}

/* Admin controlled login showcase improvements */
.showcase-admin-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    z-index: 0;
}

.showcase-admin-overlay {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(15, 23, 42, .25), rgba(15, 23, 42, .76)),
    radial-gradient(circle at 80% 20%, rgba(37, 99, 235, .25), transparent 34%);
}

.showcase-align-center {
    text-align: center;
    align-items: center;
}

.showcase-align-right {
    text-align: right;
    align-items: flex-end;
}

.showcase-content.has-text-panel {
    width: min(680px, 100%);
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 28px;
    background: rgba(15, 23, 42, .30);
    box-shadow: 0 24px 80px rgba(2, 6, 23, .24);
    backdrop-filter: blur(12px);
}

.showcase-admin-subtitle {
    max-width: 620px;
    margin: 18px 0 0;
    color: rgba(255, 255, 255, .82);
    font-size: 18px;
    line-height: 1.65;
}

.showcase-admin-button {
    display: inline-flex;
    width: auto;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    margin-top: 24px;
    padding: 0 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: #1d4ed8;
    text-decoration: none;
    font-weight: 800;
    box-shadow: 0 14px 32px rgba(15, 23, 42, .18);
}

.showcase-side:has(.showcase-admin-media) {
    background: var(--slate-900);
}

/* Login showcase overlay modes */
.showcase-admin-embed {
    border: 0;
    background: #000;
}

.showcase-admin-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    opacity: 1 !important;
}

.showcase-admin-overlay.default-theme {
    background: linear-gradient(90deg, rgba(255, 255, 255, .58) 0%, rgba(7, 23, 48, .62) 42%, rgba(3, 22, 48, .86) 100%);
}

.showcase-admin-overlay.custom-overlay {
    background: rgba(3, 18, 38, var(--login-overlay-alpha, .45));
}

.showcase-admin-overlay.custom-gradient {
    background: linear-gradient(90deg, rgba(255, 255, 255, .12) 0%, rgba(15, 40, 75, .38) 42%, rgba(3, 22, 48, var(--login-overlay-alpha, .45)) 100%);
}

.showcase-admin-overlay.custom-blur {
    backdrop-filter: blur(2px);
}

.showcase-admin-overlay.default-theme.custom-overlay,
.showcase-admin-overlay.default-theme.custom-gradient {
    background: linear-gradient(90deg, rgba(255, 255, 255, .58) 0%, rgba(7, 23, 48, .62) 42%, rgba(3, 22, 48, .86) 100%);
}

.showcase-side .showcase-content, .showcase-side .showcase-footer {
    z-index: 2;
}

/* External login video fallback */
.showcase-video-fallback {
    position: absolute;
    right: 24px;
    bottom: 58px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .9);
    color: #0f2a4d;
    font-weight: 700;
    font-size: 12px;
    text-decoration: none;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .18);
}

.showcase-video-fallback:hover {
    background: #fff;
}

/* Radyoloji raporu profesyonel belge görünümü */
.lh-report-dialog {
    width: min(980px, 96vw);
    max-height: min(860px, 94vh);
    border-radius: 24px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
}

.lh-report-dialog-head {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    padding: 24px 28px;
}

.lh-report-dialog-head small {
    display: block;
    margin-bottom: 4px;
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
}

.lh-report-dialog-body {
    padding: 26px 28px 30px;
    background: #f1f5f9;
}

.lh-report-document {
    max-width: 860px;
    margin: 0 auto;
    padding: 34px 42px 42px;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .08);
}

.lh-report-document-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 18px;
    margin-bottom: 20px;
    border-bottom: 2px solid #0f172a;
}

.lh-report-document-head span {
    display: block;
    color: #475569;
    font-size: 13px;
    font-weight: 700;
}

.lh-report-document-head strong {
    display: block;
    margin-top: 2px;
    color: #0f172a;
    font-size: 20px;
    font-weight: 900;
}

.lh-report-document-head em {
    padding: 7px 12px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-style: normal;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

.lh-report-document-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-bottom: 24px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
}

.lh-report-document-meta article {
    min-height: 62px;
    padding: 12px 14px;
    border-right: 1px solid #e2e8f0;
    border-bottom: 1px solid #e2e8f0;
    background: #fbfdff;
}

.lh-report-document-meta article:nth-child(3n) {
    border-right: 0;
}

.lh-report-document-meta article:nth-last-child(-n+3) {
    border-bottom: 0;
}

.lh-report-document-meta small {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.lh-report-document-meta strong {
    display: block;
    margin-top: 5px;
    color: #111827;
    font-size: 14px;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.lh-report-text-panel {
    margin-top: 8px;
}

.lh-report-text-panel h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px;
    color: #0f172a;
    font-size: 17px;
    font-weight: 900;
}

.lh-report-text-panel h3::after {
    content: "";
    height: 1px;
    flex: 1;
    background: #e2e8f0;
}

.lh-report-text {
    display: block;
    padding: 0;
    color: #1f2937;
    font-family: Arial, "Helvetica Neue", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.85;
}

.lh-report-text p {
    margin: 0 0 13px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

.lh-report-text p:first-child {
    color: #0f172a;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: .01em;
    text-transform: uppercase;
}

.lh-detail-loading,
.lh-empty-state.compact {
    padding: 18px;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    background: #f8fafc;
    color: #475569;
    font-weight: 700;
}

@media print {
    .lh-report-modal {
        position: static;
        display: block;
        padding: 0;
        background: #fff;
    }

    .lh-report-dialog {
        box-shadow: none;
        border: 0;
        max-height: none;
        width: 100%;
    }

    .lh-report-dialog-head, .lh-report-close {
        display: none;
    }

    .lh-report-dialog-body {
        overflow: visible;
        padding: 0;
        background: #fff;
    }

    .lh-report-document {
        box-shadow: none;
        border: 0;
        padding: 0;
    }
}

@media (max-width: 720px) {
    .lh-report-dialog-body {
        padding: 16px;
    }

    .lh-report-document {
        padding: 22px 18px 28px;
        border-radius: 16px;
    }

    .lh-report-document-head {
        display: grid;
    }

    .lh-report-document-meta {
        grid-template-columns: 1fr;
    }

    .lh-report-document-meta article,
    .lh-report-document-meta article:nth-child(3n),
    .lh-report-document-meta article:nth-last-child(-n+3) {
        border-right: 0;
        border-bottom: 1px solid #e2e8f0;
    }

    .lh-report-document-meta article:last-child {
        border-bottom: 0;
    }
}

/* Raporlarım - Profesyonel sonuç listesi ve belge modalı */
.lh-report-workspace {
    display: grid;
    gap: 16px;
    margin: 0 0 24px;
}

.lh-report-hero-card {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 22px;
    border: 1px solid #dbe7f5;
    border-radius: 24px;
    background: radial-gradient(circle at top right, rgba(37, 99, 235, .12), transparent 34%),
    linear-gradient(135deg, #ffffff 0%, #f7fbff 100%);
    box-shadow: 0 18px 46px rgba(15, 23, 42, .06);
}

.lh-report-hero-card::after {
    content: "";
    position: absolute;
    right: -42px;
    bottom: -56px;
    width: 190px;
    height: 190px;
    border-radius: 999px;
    background: rgba(14, 165, 233, .08);
    pointer-events: none;
}

.lh-report-hero-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: #1d4ed8;
    color: #fff;
    box-shadow: 0 14px 26px rgba(29, 78, 216, .22);
}

.lh-report-hero-icon svg {
    width: 25px;
    height: 25px;
}

.lh-report-hero-copy h2 {
    margin: 7px 0 6px;
    color: #0f172a;
    font-size: 25px;
    letter-spacing: -.03em;
}

.lh-report-hero-copy p {
    max-width: 720px;
    margin: 0;
    color: #52657f;
    font-weight: 650;
    line-height: 1.55;
}

.lh-report-hero-stats {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, minmax(112px, 1fr));
    gap: 10px;
}

.lh-report-hero-stats article {
    padding: 14px 16px;
    border: 1px solid #dbe7f5;
    border-radius: 18px;
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(10px);
}

.lh-report-hero-stats small,
.lh-report-hero-stats strong {
    display: block;
}

.lh-report-hero-stats small {
    color: #64748b;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.lh-report-hero-stats strong {
    margin-top: 5px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
}

.lh-report-filter-pro {
    grid-template-columns: repeat(5, minmax(120px, 1fr)) auto;
    padding: 14px;
    border-radius: 22px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 14px 36px rgba(15, 23, 42, .045);
}

.lh-report-filter-pro select {
    border-radius: 14px;
    background: #ffffff;
}

.lh-report-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.lh-report-card {
    min-height: unset;
    grid-template-columns: 74px minmax(0, 1fr);
    align-items: stretch;
    padding: 0;
    overflow: hidden;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .045);
}

.lh-report-card::before {
    content: "";
    display: block;
    position: absolute;
}

.lh-report-date {
    width: auto;
    height: auto;
    min-height: 128px;
    border: 0;
    border-right: 1px solid #dbe7f5;
    border-radius: 0;
    background: linear-gradient(180deg, #eff6ff, #f8fbff);
}

.lh-report-body {
    padding: 18px 20px;
    display: grid;
}

.lh-report-title-row strong {
    font-size: 17px;
    letter-spacing: -.015em;
}

.lh-report-title-row small {
    border: 1px solid #dbeafe;
    background: #f8fbff;
}

.lh-report-meta i {
    border-color: #dbe7f5;
    background: #fff;
}

.lh-report-foot {
    margin-top: 14px;
    padding-top: 13px;
}

.lh-report-foot b {
    min-height: 36px;
    padding: 0 16px;
    border-radius: 12px;
}

.lh-report-dialog-pro {
    width: min(1040px, 96vw);
    max-height: min(880px, 94vh);
    border-radius: 26px;
    background: #f5f7fb;
}

.lh-report-dialog-head-pro {
    padding: 20px 24px;
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.lh-report-modal-brand {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    min-width: 0;
}

.lh-report-modal-brand small {
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .08em;
}

.lh-report-modal-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.lh-report-action-btn {
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid #bfdbfe;
    border-radius: 12px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.lh-report-dialog-body-pro {
    padding: 24px;
    background: #eef3f9;
}

.lh-report-document-pro {
    position: relative;
    max-width: 880px;
    min-height: 640px;
    margin: 0 auto;
    padding: 34px 38px 30px;
    border: 1px solid #d7e2f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .08);
}

.lh-report-watermark {
    position: absolute;
    inset: auto 34px 28px auto;
    color: rgba(15, 23, 42, .035);
    font-size: 86px;
    font-weight: 950;
    letter-spacing: -.08em;
    pointer-events: none;
}

.lh-report-document-head-pro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 20px;
    border-bottom: 2px solid #0f172a;
}

.lh-report-document-head-pro span,
.lh-report-document-head-pro strong,
.lh-report-document-head-pro small {
    display: block;
}

.lh-report-document-head-pro span {
    color: #334155;
    font-size: 13px;
    font-weight: 800;
}

.lh-report-document-head-pro strong {
    margin-top: 4px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: -.03em;
}

.lh-report-document-head-pro small {
    margin-top: 6px;
    color: #64748b;
    font-weight: 650;
}

.lh-report-document-head-pro em {
    flex: 0 0 auto;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    padding: 0 13px;
    border-radius: 999px;
    background: #dcfce7;
    color: #047857;
    font-style: normal;
    font-size: 12px;
    font-weight: 950;
}

.lh-report-document-meta-pro {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: 22px 0 24px;
    border: 1px solid #dbe7f5;
    border-radius: 16px;
    overflow: hidden;
}

.lh-report-document-meta-pro article {
    padding: 14px 16px;
    border-right: 1px solid #dbe7f5;
    border-bottom: 1px solid #dbe7f5;
    background: #fbfdff;
}

.lh-report-document-meta-pro article:nth-child(3n) {
    border-right: 0;
}

.lh-report-document-meta-pro article:nth-last-child(-n+3) {
    border-bottom: 0;
}

.lh-report-document-meta-pro small {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.lh-report-document-meta-pro strong {
    display: block;
    margin-top: 5px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.lh-report-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 12px;
}

.lh-report-section-title span {
    width: 7px;
    height: 24px;
    border-radius: 999px;
}

.lh-report-section-title h3 {
    margin: 0;
    color: #0f172a;
    font-size: 18px;
    font-weight: 950;
    letter-spacing: -.02em;
}

.lh-report-text-pro {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.lh-report-text-pro p {
    margin: 0 0 15px;
    color: #111827;
    font-size: 15px;
    font-weight: 520;
    line-height: 1.82;
}

.lh-report-text-pro p:first-child {
    display: inline-flex;
    width: auto;
    padding: 8px 12px;
    margin-bottom: 18px;
    border: 1px solid #dbeafe;
    border-radius: 10px;
    background: #eff6ff;
    color: #1e3a8a;
    font-size: 14px;
}

.lh-report-document-foot {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid #dbe7f5;
}

.lh-report-document-foot small,
.lh-report-document-foot strong {
    display: block;
}

.lh-report-document-foot small {
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.lh-report-document-foot strong {
    margin-top: 4px;
    color: #0f172a;
    font-weight: 900;
}

@media (max-width: 980px) {
    .lh-report-hero-card,
    .lh-report-filter-pro,
    .lh-report-document-meta-pro {
        grid-template-columns: 1fr;
    }

    .lh-report-document-meta-pro article,
    .lh-report-document-meta-pro article:nth-child(3n),
    .lh-report-document-meta-pro article:nth-last-child(-n+3) {
        border-right: 0;
        border-bottom: 1px solid #dbe7f5;
    }

    .lh-report-document-meta-pro article:last-child {
        border-bottom: 0;
    }

    .lh-report-hero-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lh-report-hero-card {
        padding: 18px;
    }

    .lh-report-hero-stats {
        grid-template-columns: 1fr;
    }

    .lh-report-card {
        grid-template-columns: 58px minmax(0, 1fr);
    }

    .lh-report-date {
        min-height: 132px;
    }

    .lh-report-dialog-body-pro {
        padding: 14px;
    }

    .lh-report-document-pro {
        padding: 24px 18px;
        border-radius: 16px;
    }

    .lh-report-document-head-pro {
        display: grid;
    }

    .lh-report-document-foot {
        grid-template-columns: 1fr;
    }

    .lh-report-action-btn {
        display: none;
    }
}

@media print {
    body.modal-lock * {
        visibility: hidden !important;
    }

    body.modal-lock .lh-report-modal,
    body.modal-lock .lh-report-modal * {
        visibility: visible !important;
    }

    body.modal-lock .lh-report-modal {
        position: static !important;
        display: block !important;
        padding: 0 !important;
        background: #fff !important;
        backdrop-filter: none !important;
    }

    body.modal-lock .lh-report-dialog-pro {
        width: 100% !important;
        max-height: none !important;
        box-shadow: none !important;
        border: 0 !important;
    }

    body.modal-lock .lh-report-dialog-head-pro,
    body.modal-lock .lh-report-modal-actions {
        display: none !important;
    }

    body.modal-lock .lh-report-dialog-body-pro {
        overflow: visible !important;
        padding: 0 !important;
        background: #fff !important;
    }

    body.modal-lock .lh-report-document-pro {
        max-width: none !important;
        min-height: auto !important;
        box-shadow: none !important;
        border: 0 !important;
    }
}


/* Reports requested refinements: 2-column list, no hover animation, no print/footer area */
.lh-report-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.lh-report-card {
    transform: none !important;
    transition: none !important;
}


.lh-report-action-btn,
[data-report-print],
.lh-report-document-foot {
    display: none !important;
}

.lh-report-dialog-pro {
    width: min(980px, 96vw) !important;
    background: #f6f8fb !important;
}

.lh-report-dialog-head-pro {
    background: #fff !important;
}

.lh-report-modal-brand {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.lh-report-modal-brand small {
    display: block;
    color: #2563eb;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
}

.lh-report-modal-brand h2 {
    margin-top: 4px;
}

.lh-report-dialog-body-pro {
    padding: 26px !important;
    background: linear-gradient(90deg, rgba(226, 232, 240, .58) 1px, transparent 1px),
    linear-gradient(180deg, rgba(226, 232, 240, .58) 1px, transparent 1px),
    #f6f8fb !important;
    background-size: 28px 28px;
}

.lh-report-document-pro {
    position: relative;
    max-width: 880px;
    margin: 0 auto;
    padding: 34px 42px 42px;
    border: 1px solid #d7e2f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 20px 54px rgba(15, 23, 42, .10);
    overflow: hidden;
}

.lh-report-watermark {
    position: absolute;
    right: 36px;
    top: 132px;
    color: rgba(37, 99, 235, .045);
    font-size: 112px;
    font-weight: 950;
    line-height: 1;
    pointer-events: none;
}

.lh-report-document-head-pro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 20px;
    border-bottom: 2px solid #0f172a;
}

.lh-report-document-head-pro span,
.lh-report-document-head-pro strong,
.lh-report-document-head-pro small {
    display: block;
}

.lh-report-document-head-pro span {
    color: #334155;
    font-size: 13px;
    font-weight: 800;
}

.lh-report-document-head-pro strong {
    margin-top: 4px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
}

.lh-report-document-head-pro small {
    margin-top: 6px;
    color: #64748b;
    font-weight: 650;
}

.lh-report-document-head-pro em {
    flex: 0 0 auto;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    padding: 0 13px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}

.lh-report-document-meta-pro {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 22px;
    border: 1px solid #dbe7f5;
    border-radius: 14px;
    overflow: hidden;
    background: #fbfdff;
}

.lh-report-document-meta-pro article {
    padding: 14px 16px;
    border-right: 1px solid #dbe7f5;
    border-bottom: 1px solid #dbe7f5;
}

.lh-report-document-meta-pro article:nth-child(3n) {
    border-right: 0;
}

.lh-report-document-meta-pro article:nth-last-child(-n+3) {
    border-bottom: 0;
}

.lh-report-document-meta-pro small {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.lh-report-document-meta-pro strong {
    display: block;
    margin-top: 5px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.lh-report-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 26px 0 14px;
}

.lh-report-section-title span {
    width: 5px;
    height: 22px;
    border-radius: 999px;
    background: #2563eb;
}

.lh-report-section-title h3 {
    margin: 0;
    color: #0f172a;
    font-size: 17px;
    font-weight: 950;
}

.lh-report-text-pro {
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111827;
}

.lh-report-text-pro h4 {
    margin: 0 0 16px;
    padding: 12px 14px;
    border-left: 4px solid #2563eb;
    border-radius: 0 10px 10px 0;
    background: #eff6ff;
    color: #0f172a;
    font-size: 15px;
    font-weight: 950;
    letter-spacing: .02em;
}

.lh-report-text-pro p {
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #1f2937 !important;
    font-size: 15px !important;
    font-weight: 550 !important;
    line-height: 1.78 !important;
}

.lh-report-text-pro p:last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 860px) {
    .lh-report-dialog-body-pro {
        padding: 14px !important;
    }

    .lh-report-document-pro {
        padding: 24px 18px;
        border-radius: 16px;
    }

    .lh-report-document-head-pro {
        display: grid;
    }

    .lh-report-document-meta-pro {
        grid-template-columns: 1fr;
    }

    .lh-report-document-meta-pro article,
    .lh-report-document-meta-pro article:nth-child(3n),
    .lh-report-document-meta-pro article:nth-last-child(-n+3) {
        border-right: 0;
        border-bottom: 1px solid #dbe7f5;
    }

    .lh-report-document-meta-pro article:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 860px) {
    .lh-report-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Neyim Var - professional AI triage UI v4 */
.lh-ai-page-pro {
    max-width: 1540px;
    margin: 0 auto;
    padding: 18px 22px 22px;
    color: #0f172a;
}

.lh-ai-hero-pro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 18px;
    align-items: stretch;
    margin-bottom: 18px;
    padding: 22px 24px;
    border: 1px solid #dbeafe;
    border-radius: 28px;
    background: radial-gradient(circle at top left, #eff6ff 0, #ffffff 45%, #f8fbff 100%);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.lh-ai-hero-copy-pro h1 {
    margin: 8px 0 10px;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1.02;
    letter-spacing: -.04em;
    color: #0b2f6a;
    font-weight: 950;
}

.lh-ai-hero-copy-pro p {
    max-width: 870px;
    margin: 0;
    color: #40557a;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 650;
}

.lh-ai-hero-badges-pro {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.lh-ai-hero-badges-pro span {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 13px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #fff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
}

.lh-ai-hero-card-pro {
    display: grid;
    align-content: center;
    gap: 8px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid #bfdbfe;
    background: linear-gradient(135deg, #2563eb, #0f766e);
    color: #fff;
    box-shadow: 0 18px 38px rgba(37, 99, 235, .2);
}

.lh-ai-hero-card-pro strong {
    font-size: 17px;
    font-weight: 950;
}

.lh-ai-hero-card-pro span {
    color: rgba(255, 255, 255, .9);
    font-size: 13px;
    line-height: 1.65;
    font-weight: 700;
}

.lh-ai-shell-pro {
    grid-template-columns: 330px minmax(0, 1fr) !important;
    gap: 18px !important;
}

.lh-ai-side-pro,
.lh-ai-chat-pro {
    border: 1px solid #dbeafe !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, .92) !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08) !important;
    overflow: hidden;
}

.lh-ai-side-pro {
    padding: 20px !important;
}

.lh-ai-panel-title-pro {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 18px;
}

.lh-ai-panel-title-pro > span {
    width: 38px;
    height: 38px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 38px;
    border-radius: 14px;
    background: #e0f2fe;
    color: #0369a1;
    font-weight: 950;
}

.lh-ai-panel-title-pro h2 {
    margin: 0 0 5px !important;
    font-size: 19px !important;
}

.lh-ai-panel-title-pro p {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
}

.lh-ai-side-pro label {
    margin-top: 14px !important;
}

.lh-ai-side-pro input,
.lh-ai-compose-pro textarea {
    border-color: #cfe0f5 !important;
    background: #f8fbff !important;
}

.lh-ai-side-pro input:focus,
.lh-ai-compose-pro textarea:focus {
    background: #fff !important;
    border-color: #2563eb !important;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10) !important;
}

.lh-ai-side-pro .lh-ai-location {
    height: 46px !important;
    margin-top: 16px !important;
    border-radius: 15px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 950 !important;
}

.lh-ai-safety-pro {
    margin-top: 18px !important;
    border-radius: 18px !important;
    background: #fff7ed !important;
    border-color: #fed7aa !important;
}

.lh-ai-flow-pro {
    margin-top: 16px;
    padding: 16px;
    border-radius: 18px;
    border: 1px solid #dcfce7;
    background: #f0fdf4;
}

.lh-ai-flow-pro strong {
    display: block;
    color: #166534;
    font-size: 13px;
    font-weight: 950;
    margin-bottom: 10px;
}

.lh-ai-flow-pro ol {
    margin: 0;
    padding-left: 18px;
    color: #365476;
    font-size: 12px;
    line-height: 1.8;
    font-weight: 800;
}

.lh-ai-chat-pro {
    display: grid !important;
    grid-template-rows: auto minmax(380px, 1fr) auto !important;
    min-height: calc(100vh - 235px);
}

.lh-ai-chat-top-pro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px;
    border-bottom: 1px solid #e5effb;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.lh-ai-chat-top-pro strong {
    display: block;
    color: #0f2b5b;
    font-size: 16px;
    font-weight: 950;
}

.lh-ai-chat-top-pro span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
    margin-top: 3px;
}

.lh-ai-chat-top-pro em {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-style: normal;
    color: #047857;
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 950;
}

.lh-ai-chat-top-pro em:before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 5px rgba(34, 197, 94, .12);
}

.lh-ai-chat-pro .lh-ai-thread {
    padding: 22px !important;
    background: radial-gradient(circle at 16px 16px, rgba(37, 99, 235, .05) 0 2px, transparent 2px) 0 0/28px 28px,
    linear-gradient(180deg, #f8fbff 0%, #ffffff 100%) !important;
}

.lh-ai-chat-pro .lh-ai-message > div {
    border-radius: 20px !important;
    border: 1px solid #dbeafe !important;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .06) !important;
}

.lh-ai-chat-pro .lh-ai-message.assistant > div {
    border-top-left-radius: 8px !important;
}

.lh-ai-chat-pro .lh-ai-message.patient > div {
    border-top-right-radius: 8px !important;
    background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
    color: #fff !important;
}

.lh-ai-chat-pro .lh-ai-message.patient strong,
.lh-ai-chat-pro .lh-ai-message.patient p {
    color: #fff !important;
}

.lh-ai-compose-pro {
    position: sticky;
    bottom: 0;
    padding: 14px 16px 16px !important;
    border-top: 1px solid #e5effb !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(14px);
}

.lh-ai-compose-pro .lh-ai-compose-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 122px !important;
    align-items: end !important;
    gap: 10px !important;
}

.lh-ai-compose-pro textarea {
    min-height: 48px !important;
    max-height: 104px !important;
    resize: none !important;
    border-radius: 17px !important;
    padding: 14px 15px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.lh-ai-compose-pro button {
    height: 48px !important;
    min-width: 122px !important;
    border-radius: 17px !important;
    background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
    box-shadow: 0 14px 26px rgba(37, 99, 235, .22) !important;
}

.lh-ai-answer {
    gap: 14px !important;
}

.lh-ai-answer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.lh-ai-notice {
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid #fde68a;
    background: #fffbeb;
    color: #92400e;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.5;
}

@media (max-width: 1100px) {
    .lh-ai-hero-pro,
    .lh-ai-shell-pro {
        grid-template-columns: 1fr !important;
    }

    .lh-ai-chat-pro {
        min-height: 680px;
    }
}

@media (max-width: 640px) {
    .lh-ai-page-pro {
        padding: 12px;
    }

    .lh-ai-hero-pro {
        padding: 18px;
        border-radius: 22px;
    }

    .lh-ai-compose-pro .lh-ai-compose-row {
        grid-template-columns: 1fr !important;
    }

    .lh-ai-compose-pro button {
        width: 100%;
    }

    .lh-ai-answer-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Neyim Var - guided routing cards v5 */
.lh-ai-answer-pro {
    display: grid !important;
    gap: 14px !important;
}

.lh-ai-routing-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    padding: 16px;
    border: 1px solid #bfdbfe;
    border-radius: 20px;
    background: linear-gradient(135deg, #eff6ff, #ffffff 58%, #f0fdfa);
}

.lh-ai-routing-left h3 {
    margin: 10px 0 8px;
    color: #0b2f6a;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 950;
    letter-spacing: -.02em;
}

.lh-ai-routing-left p {
    margin: 0;
    color: #334155;
    font-size: 14px;
    line-height: 1.7;
    font-weight: 700;
}

.lh-ai-status-pill {
    display: inline-flex;
    align-items: center;
    height: 30px;
    padding: 0 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    background: #eff6ff;
}

.lh-ai-status-pill.yüksek,
.lh-ai-status-pill.acil {
    color: #b91c1c;
    border-color: #fecaca;
    background: #fef2f2;
}

.lh-ai-status-pill.düşük {
    color: #047857;
    border-color: #bbf7d0;
    background: #ecfdf5;
}

.lh-ai-followup {
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid #c7d2fe;
    background: #eef2ff;
}

.lh-ai-followup strong {
    display: block;
    color: #3730a3;
    font-size: 12px;
    font-weight: 950;
    margin-bottom: 6px;
}

.lh-ai-followup p {
    margin: 0;
    color: #1e1b4b;
    line-height: 1.6;
    font-weight: 800;
}

.lh-ai-answer-grid-pro article {
    border: 1px solid #dbeafe !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .05);
}

.lh-ai-answer-grid-pro article h3 {
    color: #0f2b5b !important;
    font-size: 13px !important;
    letter-spacing: .01em;
}

.lh-ai-doctors-pro {
    display: grid;
    gap: 10px;
}

.lh-ai-doctor-card {
    padding: 12px;
    border: 1px solid #e0e7ff;
    border-radius: 15px;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.lh-ai-doctor-card strong {
    display: block;
    color: #0f2b5b;
    font-size: 13px;
    font-weight: 950;
}

.lh-ai-doctor-card span {
    display: block;
    margin-top: 3px;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
}

.lh-ai-doctor-card small {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 11px;
    font-weight: 750;
}

.lh-ai-doctor-card p {
    margin: 8px 0 0;
    color: #475569;
    font-size: 12px;
    line-height: 1.5;
    font-weight: 700;
}

/* Global Lokman AI Chatbot Popup */
.lh-ai-widget {
    position: fixed;
    right: 28px;
    bottom: 26px;
    z-index: 1200;
    font-family: inherit;
}

.lh-ai-widget-button {
    border: 0;
    min-width: 174px;
    height: 64px;
    padding: 8px 16px 8px 8px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    color: #fff;
    background: linear-gradient(135deg, #0f766e 0%, #0369a1 55%, #1e3a8a 100%);
    box-shadow: 0 22px 50px rgba(2, 44, 92, .28), inset 0 1px 0 rgba(255, 255, 255, .28);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.lh-ai-widget-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 28px 60px rgba(2, 44, 92, .34);
    filter: saturate(1.06);
}

.lh-ai-widget-logo,
.lh-ai-popup-logo {
    width: 48px;
    height: 48px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, .95), rgba(255, 255, 255, .26) 34%, rgba(255, 255, 255, .12) 72%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .35), 0 12px 26px rgba(0, 0, 0, .16);
    flex: 0 0 auto;
}

.lh-ai-widget-logo-inner,
.lh-ai-popup-logo {
    font-weight: 950;
    letter-spacing: -.04em;
    color: #0f4c81;
}

.lh-ai-widget-button-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.1;
}

.lh-ai-widget-button-text strong {
    font-size: 15px;
    font-weight: 950;
}

.lh-ai-widget-button-text small {
    font-size: 11px;
    opacity: .86;
    font-weight: 750;
}

.lh-ai-popup-panel {
    position: absolute;
    right: 0;
    bottom: 82px;
    width: min(420px, calc(100vw - 28px));
    height: min(660px, calc(100vh - 118px));
    background: rgba(255, 255, 255, .96);
    border: 1px solid rgba(15, 118, 110, .16);
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 32px 90px rgba(15, 23, 42, .28);
    backdrop-filter: blur(16px);
    display: flex;
    flex-direction: column;
    opacity: 0;
    pointer-events: none;
    transform: translateY(16px) scale(.98);
    transition: opacity .18s ease, transform .18s ease;
}

.lh-ai-widget.is-open .lh-ai-popup-panel {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.lh-ai-popup-header {
    padding: 18px;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    color: #fff;
    background: linear-gradient(135deg, #064e3b 0%, #0369a1 60%, #172554 100%);
}

.lh-ai-popup-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.lh-ai-popup-brand strong {
    display: block;
    font-size: 17px;
    font-weight: 950;
}

.lh-ai-popup-brand small {
    display: block;
    font-size: 12px;
    opacity: .86;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lh-ai-popup-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lh-ai-popup-actions button {
    border: 1px solid rgba(255, 255, 255, .24);
    background: rgba(255, 255, 255, .14);
    color: #fff;
    border-radius: 999px;
    height: 34px;
    padding: 0 10px;
    cursor: pointer;
    font-weight: 850;
}

.lh-ai-popup-actions button[data-ai-popup-close] {
    width: 34px;
    padding: 0;
    font-size: 22px;
    line-height: 1;
}

.lh-ai-popup-alert {
    margin: 14px 16px 0;
    padding: 11px 12px;
    border-radius: 16px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.45;
}

.lh-ai-popup-thread {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: linear-gradient(180deg, #f8fafc 0%, #eef7f7 100%);
}

.lh-ai-popup-msg {
    display: flex;
}

.lh-ai-popup-msg.patient {
    justify-content: flex-end;
}

.lh-ai-popup-msg > div {
    max-width: 92%;
    border-radius: 20px;
    padding: 12px 13px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
}

.lh-ai-popup-msg.patient > div {
    background: #0f766e;
    color: #fff;
    border-color: #0f766e;
}

.lh-ai-popup-msg.error > div {
    background: #fef2f2;
    color: #991b1b;
    border-color: #fecaca;
}

.lh-ai-popup-msg strong {
    display: block;
    font-size: 12px;
    font-weight: 950;
    margin-bottom: 4px;
}

.lh-ai-popup-msg p {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
}

.lh-ai-popup-answer {
    display: grid;
    gap: 10px;
}

.lh-ai-popup-route {
    padding: 13px;
    border-radius: 18px;
    background: linear-gradient(135deg, #ecfeff, #f0fdf4);
    border: 1px solid rgba(20, 184, 166, .22);
}

.lh-ai-popup-route span {
    display: inline-flex;
    padding: 4px 9px;
    border-radius: 999px;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .05em;
    margin-bottom: 7px;
}

.lh-ai-popup-route h4 {
    margin: 0 0 5px;
    font-size: 16px;
    color: #0f172a;
    font-weight: 950;
}

.lh-ai-popup-question,
.lh-ai-popup-emergency {
    padding: 11px 12px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.lh-ai-popup-emergency {
    background: #fef2f2;
    border-color: #fecaca;
    color: #991b1b;
    font-weight: 800;
}

.lh-ai-popup-answer details {
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #fff;
    padding: 10px 12px;
}

.lh-ai-popup-answer summary {
    cursor: pointer;
    font-size: 13px;
    font-weight: 950;
    color: #0f172a;
}

.lh-ai-popup-answer ul {
    margin: 9px 0 0;
    padding-left: 18px;
}

.lh-ai-popup-answer li {
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 4px;
}

.lh-ai-popup-doctors {
    display: grid;
    gap: 8px;
    margin-top: 9px;
}

.lh-ai-popup-doctors article {
    padding: 10px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.lh-ai-popup-doctors strong, .lh-ai-popup-doctors small, .lh-ai-popup-doctors em {
    display: block;
    font-style: normal;
}

.lh-ai-popup-doctors small {
    color: #0f766e;
    font-weight: 850;
}

.lh-ai-popup-doctors em {
    color: #64748b;
    font-size: 11px;
    margin-top: 2px;
}

.lh-ai-popup-answer footer {
    font-size: 11px;
    color: #64748b;
    line-height: 1.45;
}

.lh-ai-popup-compose {
    display: flex;
    gap: 9px;
    align-items: flex-end;
    padding: 14px;
    border-top: 1px solid #e2e8f0;
    background: #fff;
}

.lh-ai-popup-compose textarea {
    flex: 1;
    resize: none;
    min-height: 44px;
    max-height: 92px;
    border: 1px solid #dbe4ee;
    border-radius: 16px;
    padding: 12px 13px;
    outline: none;
    font: inherit;
    font-size: 13px;
    line-height: 1.45;
    background: #f8fafc;
}

.lh-ai-popup-compose textarea:focus {
    border-color: #14b8a6;
    box-shadow: 0 0 0 4px rgba(20, 184, 166, .12);
    background: #fff;
}

.lh-ai-popup-compose button {
    width: 44px;
    height: 44px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 15px;
    color: #fff;
    background: linear-gradient(135deg, #0f766e, #0369a1);
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(3, 105, 161, .22);
}

.lh-ai-popup-compose button:disabled {
    opacity: .6;
    cursor: wait;
}

.lh-ai-popup-full {
    display: block;
    text-align: center;
    padding: 0 14px 14px;
    color: #0369a1;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    background: #fff;
}

.lh-ai-chat-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.lh-ai-chat-actions button {
    border: 1px solid #dbeafe;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 999px;
    height: 34px;
    padding: 0 12px;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

@media (max-width: 640px) {
    .lh-ai-widget {
        right: 14px;
        bottom: 14px;
    }

    .lh-ai-widget-button {
        min-width: 58px;
        width: 58px;
        height: 58px;
        padding: 5px;
        justify-content: center;
    }

    .lh-ai-widget-button-text {
        display: none;
    }

    .lh-ai-widget-logo {
        width: 48px;
        height: 48px;
    }

    .lh-ai-popup-panel {
        right: -2px;
        bottom: 72px;
        width: calc(100vw - 24px);
        height: min(640px, calc(100vh - 96px));
        border-radius: 24px;
    }

    .lh-ai-popup-brand small {
        max-width: 170px;
    }
}

/* Neyim Var v6 - sade cevap ve randevu aksiyonları */
.lh-ai-answer-chatty .lh-ai-routing-card {
    margin-bottom: 12px
}

.lh-ai-alt-branch {
    display: inline-flex;
    margin: 4px 0 10px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #eef6ff;
    color: #075985;
    font-size: 12px;
    font-weight: 700
}

.lh-ai-answer-grid.single {
    grid-template-columns:1fr !important
}

.lh-ai-doctor-card.compact {
    gap: 6px
}

.lh-ai-appt-btn {
    margin-top: 10px;
    border: 0;
    border-radius: 12px;
    background: linear-gradient(135deg, #0f766e, #0ea5e9);
    color: #fff;
    font-weight: 800;
    padding: 9px 12px;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(14, 116, 144, .18);
    transition: .18s ease
}

.lh-ai-appt-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(14, 116, 144, .24)
}

.lh-ai-popup-doctors article .lh-ai-appt-btn {
    width: 100%;
    font-size: 12px;
    padding: 8px 10px;
    border-radius: 10px
}

.lh-ai-popup-answer.compact details + details {
    display: none
}

.lh-ai-popup-answer.compact footer {
    margin-top: 10px;
    font-size: 11px;
    opacity: .72
}

/* Lab modal v20 history drawer */
.lh-lab-modal.is-wide .lh-lab-dialog {
    width: min(1180px, 96vw);
}

.lh-lab-dialog {
    position: relative;
}

.lh-lab-dialog-head {
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 55%, #eef6ff 100%);
}

.lh-lab-dialog-body {
    background: linear-gradient(180deg, #fbfdff 0%, #fff 52%);
}

.lh-lab-history-link {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    margin-top: 8px;
    padding: 5px 8px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
    cursor: pointer;
    text-align: left;
}

.lh-lab-history-link:hover {
    background: #dbeafe;
    color: #1e40af;
}

.lh-lab-history-drawer {
    position: absolute;
    inset: 88px 18px 18px auto;
    z-index: 8;
    width: min(360px, calc(100% - 36px));
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 14px;
    padding: 16px;
    border: 1px solid #dbeafe;
    border-radius: 20px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 24px 64px rgba(15, 23, 42, .22);
    backdrop-filter: blur(10px);
}

.lh-lab-history-drawer header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
}

.lh-lab-history-drawer header small {
    display: block;
    color: #2563eb;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.lh-lab-history-drawer header strong {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-size: 15px;
    font-weight: 950;
    line-height: 1.25;
}

.lh-lab-history-drawer header button {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 12px;
    background: #f1f5f9;
    color: #475569;
    font-size: 22px;
    cursor: pointer;
}

.lh-lab-history-spark {
    height: 84px;
    display: flex;
    align-items: end;
    gap: 7px;
    padding: 12px 12px 10px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: linear-gradient(180deg, #f8fbff, #ffffff);
}

.lh-lab-history-spark i {
    flex: 1 1 0;
    min-width: 8px;
    border-radius: 999px 999px 4px 4px;
    background: linear-gradient(180deg, #60a5fa, #2563eb);
}

.lh-lab-history-drawer section {
    display: grid;
    gap: 9px;
    overflow: auto;
    padding-right: 2px;
}

.lh-lab-history-drawer article {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 10px;
    align-items: center;
    padding: 11px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #f8fafc;
}

.lh-lab-history-drawer article span {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}

.lh-lab-history-drawer article strong {
    color: #0f172a;
    font-size: 14px;
    font-weight: 950;
    text-align: right;
}

.lh-lab-history-drawer article small {
    grid-column: 1 / -1;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 750;
}

.lh-lab-history-drawer article.is-high {
    border-color: #fed7aa;
    background: #fff7ed;
}

.lh-lab-history-drawer article.is-high strong {
    color: #c2410c;
}

.lh-lab-history-drawer article.is-low {
    border-color: #bfdbfe;
    background: #eff6ff;
}

.lh-lab-history-drawer article.is-low strong {
    color: #1d4ed8;
}

.lh-lab-history-drawer article.is-normal {
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.lh-lab-history-drawer article.is-normal strong {
    color: #047857;
}

.lh-lab-foot u {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    background: #eef6ff;
    color: #2563eb;
    font-size: 11px;
    font-weight: 850;
    text-decoration: none;
}

@media (max-width: 720px) {
    .lh-lab-history-drawer {
        inset: auto 12px 12px 12px;
        width: auto;
        max-height: min(460px, 72vh);
    }

    .lh-lab-history-link {
        white-space: normal;
    }
}


/* Lab modal v21 - professional history panel and safe CSS-only icons */
.lh-lab-flag-icon::before,
.lh-lab-flag-icon::after,
.lh-lab-overview-icon::before,
.lh-lab-overview-icon::after {
    content: "" !important;
    display: block;
    box-sizing: border-box;
}

.lh-lab-flag-icon,
.lh-lab-overview-icon {
    position: relative;
    overflow: hidden;
    font-size: 0 !important;
    line-height: 0 !important;
    font-family: inherit !important;
}

.lh-lab-flag-icon.is-normal::before,
.lh-lab-flag-icon:not(.is-high):not(.is-low)::before,
.lh-lab-overview-icon.is-normal::before {
    position: absolute;
    width: 9px;
    height: 16px;
    border-right: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(45deg);
    left: 14px;
    top: 8px;
    border-radius: 1px;
}

.lh-lab-flag-icon.is-high::before,
.lh-lab-overview-icon.is-high::before,
.lh-lab-flag-icon.is-low::before,
.lh-lab-overview-icon.is-low::before {
    position: absolute;
    width: 3px;
    height: 18px;
    left: 18px;
    top: 10px;
    border-radius: 999px;
    background: currentColor;
}

.lh-lab-flag-icon.is-high::after,
.lh-lab-overview-icon.is-high::after {
    position: absolute;
    width: 11px;
    height: 11px;
    left: 14px;
    top: 8px;
    border-left: 3px solid currentColor;
    border-top: 3px solid currentColor;
    transform: rotate(45deg);
    border-radius: 2px;
}

.lh-lab-flag-icon.is-low::after,
.lh-lab-overview-icon.is-low::after {
    position: absolute;
    width: 11px;
    height: 11px;
    left: 14px;
    bottom: 8px;
    border-right: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(45deg);
    border-radius: 2px;
}

.lh-lab-overview-icon {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    display: inline-flex;
    flex: 0 0 38px;
}

.lh-lab-overview-icon.is-high {
    background: #ffedd5;
    color: #f97316;
}

.lh-lab-overview-icon.is-low {
    background: #dbeafe;
    color: #3b82f6;
}

.lh-lab-overview-icon.is-normal {
    background: #dcfce7;
    color: #10b981;
}

.lh-lab-history-link {
    gap: 7px;
    min-height: 32px;
    padding: 7px 11px;
    border-color: #cfe3ff;
    background: linear-gradient(180deg, #f8fbff 0%, #eef6ff 100%);
    box-shadow: 0 8px 20px rgba(37, 99, 235, .08);
}

.lh-history-mini-icon {
    position: relative;
    width: 14px;
    height: 14px;
    display: inline-block;
    flex: 0 0 14px;
    border: 1.8px solid #93c5fd;
    border-radius: 4px;
    background: #fff;
}

.lh-history-mini-icon::before,
.lh-history-mini-icon::after {
    content: "";
    position: absolute;
    left: 2px;
    right: 2px;
    bottom: 3px;
    height: 6px;
    border-left: 2px solid #2563eb;
    border-bottom: 2px solid #2563eb;
    transform: skew(-22deg);
    border-radius: 1px;
}

.lh-history-mini-icon::after {
    left: 6px;
    right: 2px;
    bottom: 6px;
    height: 2px;
    border-left: 0;
    transform: none;
}

.lh-lab-history-drawer {
    inset: 76px 20px 20px auto;
    width: min(380px, calc(100% - 40px));
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 13px;
    padding: 16px;
    border: 1px solid rgba(191, 219, 254, .95);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .99) 0%, rgba(248, 251, 255, .99) 100%);
    box-shadow: 0 30px 80px rgba(15, 23, 42, .24);
}

.lh-history-panel-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
}

.lh-history-panel-title {
    min-width: 0;
}

.lh-history-kicker {
    display: inline-flex;
    width: fit-content;
    padding: 5px 9px;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.lh-history-panel-title strong {
    display: block;
    margin-top: 9px;
    color: #0f172a;
    font-size: 17px;
    font-weight: 950;
    line-height: 1.22;
    word-break: break-word;
}

.lh-history-panel-title em {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 12px;
    font-style: normal;
    font-weight: 800;
}

.lh-lab-history-drawer header button {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: #f8fafc;
    color: #475569;
    border: 1px solid #e2e8f0;
    font-size: 24px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .06);
}

.lh-lab-history-drawer header button:hover {
    background: #eaf2ff;
    color: #1d4ed8;
}

.lh-lab-history-chart {
    height: 112px;
    padding: 10px 12px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(239, 246, 255, .9), rgba(255, 255, 255, .96)),
    repeating-linear-gradient(to right, transparent 0 58px, rgba(148, 163, 184, .12) 59px 60px);
    overflow: hidden;
}

.lh-lab-history-chart svg {
    width: 100%;
    height: 100%;
    display: block;
}

.lh-lab-history-chart circle {
    fill: #fff;
    stroke: #2563eb;
    stroke-width: 3;
}

.lh-lab-history-chart.is-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.lh-history-result-list {
    display: grid;
    gap: 10px;
    overflow: auto;
    padding-right: 4px;
}

.lh-history-result-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 14px;
    align-items: center;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
}

.lh-history-result-card div {
    min-width: 0;
}

.lh-history-result-card span {
    display: block;
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.lh-history-result-card small {
    display: block;
    margin-top: 7px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 800;
}

.lh-history-result-card strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 950;
    text-align: right;
    white-space: nowrap;
}

.lh-history-result-card.is-high {
    border-color: #fed7aa;
    background: linear-gradient(180deg, #fffaf5, #fff7ed);
}

.lh-history-result-card.is-high strong {
    color: #c2410c;
}

.lh-history-result-card.is-low {
    border-color: #bfdbfe;
    background: linear-gradient(180deg, #f8fbff, #eff6ff);
}

.lh-history-result-card.is-low strong {
    color: #1d4ed8;
}

.lh-history-result-card.is-normal {
    border-color: #bbf7d0;
    background: linear-gradient(180deg, #fbfffd, #f0fdf4);
}

.lh-history-result-card.is-normal strong {
    color: #047857;
}

@media (max-width: 720px) {
    .lh-lab-history-drawer {
        inset: auto 12px 12px 12px;
        width: auto;
        max-height: min(500px, 74vh);
    }

    .lh-lab-history-chart {
        height: 96px;
    }
}


/* v22 lab result icons and history drawer polish */
.lh-lab-flag-icon,
.lh-lab-overview-icon {
    position: relative !important;
    display: inline-grid !important;
    place-items: center !important;
    flex: 0 0 38px !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 14px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: visible !important;
    transform: none !important;
}

.lh-lab-overview-icon {
    flex-basis: 42px !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 16px !important;
}

.lh-lab-flag-icon::before,
.lh-lab-flag-icon::after,
.lh-lab-overview-icon::before,
.lh-lab-overview-icon::after {
    content: none !important;
    display: none !important;
}

.lh-lab-flag-icon svg,
.lh-lab-overview-icon svg {
    width: 21px !important;
    height: 21px !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.6 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.lh-lab-overview-icon svg {
    width: 22px !important;
    height: 22px !important;
}

.lh-lab-flag-icon.is-normal,
.lh-lab-overview-icon.is-normal {
    background: #dcfce7 !important;
    color: #059669 !important;
}

.lh-lab-flag-icon.is-high,
.lh-lab-overview-icon.is-high {
    background: #ffedd5 !important;
    color: #ea580c !important;
}

.lh-lab-flag-icon.is-low,
.lh-lab-overview-icon.is-low {
    background: #dbeafe !important;
    color: #2563eb !important;
}

.lh-lab-history-link {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    height: 32px !important;
    margin-top: 10px !important;
    padding: 0 12px !important;
    border: 1px solid #cfe3ff !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #f8fbff, #eef6ff) !important;
    color: #1d4ed8 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 20px rgba(37, 99, 235, .08) !important;
}

.lh-lab-history-link:hover {
    background: #eaf2ff !important;
    border-color: #93c5fd !important;
}

.lh-history-mini-icon {
    position: relative !important;
    width: 15px !important;
    height: 15px !important;
    flex: 0 0 15px !important;
    margin-right: 7px !important;
    border: 1.6px solid #93c5fd !important;
    border-radius: 5px !important;
    background: #fff !important;
}

.lh-history-mini-icon::before {
    content: "" !important;
    position: absolute !important;
    left: 3px !important;
    right: 3px !important;
    bottom: 3px !important;
    height: 6px !important;
    display: block !important;
    border-left: 2px solid #2563eb !important;
    border-bottom: 2px solid #2563eb !important;
    border-radius: 1px !important;
    transform: skew(-18deg) !important;
}

.lh-history-mini-icon::after {
    content: none !important;
    display: none !important;
}

.lh-lab-history-drawer {
    width: min(410px, calc(100% - 40px)) !important;
    border-radius: 26px !important;
    border: 1px solid #dbeafe !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    box-shadow: 0 34px 90px rgba(15, 23, 42, .25) !important;
}

.lh-history-panel-head {
    padding: 2px 2px 14px !important;
    border-bottom: 1px solid #e5effb !important;
}

.lh-history-kicker {
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    border: 1px solid #dbeafe !important;
}

.lh-lab-history-drawer header button {
    display: grid !important;
    place-items: center !important;
    font-size: 0 !important;
}

.lh-lab-history-drawer header button::before,
.lh-lab-history-drawer header button::after {
    content: "" !important;
    position: absolute !important;
    width: 14px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #64748b !important;
}

.lh-lab-history-drawer header button::before {
    transform: rotate(45deg) !important;
}

.lh-lab-history-drawer header button::after {
    transform: rotate(-45deg) !important;
}

.lh-lab-history-chart {
    height: 128px !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #f8fbff, #ffffff) !important;
    border-color: #dbeafe !important;
}

.lh-history-result-card {
    min-height: 74px !important;
    border-radius: 18px !important;
    background: #fff !important;
}

/* Professional duty pharmacy screen override */
.lh-pharmacy-hero-pro {
    grid-template-columns:minmax(0, 1fr)340px;
    margin-bottom: 18px;
}

.lh-pharmacy-hero-pro > div:first-child {
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);
}

.lh-duty-pharmacy-panel-pro {
    padding: 26px;
    border-radius: 20px;
}

.lh-duty-panel-head {
    align-items: center !important;
    padding-bottom: 18px;
    border-bottom: 1px solid #e5edf7;
}

.lh-location-btn {
    min-width: 170px;
    height: 44px;
    border-radius: 14px !important;
    box-shadow: 0 12px 24px rgba(37, 99, 235, .18);
}

.lh-pharmacy-query-pro {
    display: grid;
    gap: 16px;
    margin: 20px 0;
    padding: 18px;
    background: #f8fafc;
    border-radius: 18px;
}

.lh-pharmacy-manual-pro {
    grid-template-columns: 280px minmax(260px, 1fr) 132px;
    margin: 0;
}

.lh-pharmacy-manual-pro input,
.lh-pharmacy-manual-pro select {
    min-height: 48px;
    border-radius: 14px;
    box-shadow: 0 1px 0 rgba(15, 23, 42, .02);
}

.lh-search-btn {
    height: 48px;
    border-radius: 14px !important;
    background: #0f766e !important;
    color: #fff !important;
    font-weight: 900;
    box-shadow: 0 12px 24px rgba(15, 118, 110, .16);
}

.lh-duty-type-pro {
    grid-template-columns: repeat(2, minmax(240px, 1fr));
    padding-top: 14px !important;
}

.lh-duty-type-pro label {
    min-height: 48px;
    border-radius: 14px;
}

.lh-duty-result-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 12px 0 14px;
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #fff;
}

.lh-duty-result-toolbar strong {
    color: #0f172a;
}

.lh-duty-result-toolbar span {
    padding: 5px 10px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
}

.lh-duty-pharmacy-list-pro {
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 14px;
}

.lh-duty-pharmacy-list-pro .lh-duty-pharmacy-state {
    grid-column: 1 / -1;
}

.lh-duty-pharmacy-list-pro .lh-duty-pharmacy-item {
    height: 100%;
    grid-template-columns: 1fr;
    align-content: space-between;
    padding: 16px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
}

.lh-duty-card-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.lh-duty-card-title strong {
    font-size: 17px;
    line-height: 1.25;
}

.lh-duty-location {
    margin-top: 6px !important;
    color: #0f766e !important;
}

.lh-duty-pharmacy-main p {
    min-height: 42px;
    margin: 8px 0 0;
    color: #475569;
    line-height: 1.45;
}

.lh-duty-pharmacy-main small {
    margin-top: 9px;
    color: #0f172a !important;
    font-size: 13px;
    font-weight: 850;
}

.lh-pill.muted {
    flex: none;
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 0 8px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
}

.lh-duty-pharmacy-list-pro .lh-duty-pharmacy-item nav {
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin-top: 14px;
}

.lh-duty-pharmacy-item nav .lh-action {
    min-height: 38px;
    border-radius: 12px;
    padding: 0 13px;
}

.lh-duty-pharmacy-item nav .lh-action.call {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #047857;
}

.lh-duty-pharmacy-item nav .lh-action.route {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
}

@media (max-width: 900px) {
    .lh-pharmacy-hero-pro {
        grid-template-columns: 1fr;
    }

    .lh-pharmacy-manual-pro {
        grid-template-columns: 1fr;
    }

    .lh-duty-type-pro {
        grid-template-columns: 1fr;
    }
}

.register-open-btn {
    margin-top: 6px;
    background: #ffffff;
    color: var(--blue-dark);
    border: 1px solid #bfdbfe;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .10);
}

.register-open-btn:hover,
.register-cancel:hover {
    background: #eff6ff;
    transform: translateY(-1px);
}

.register-backdrop {
    padding: 24px;
    overflow-y: auto;
}

.register-modal {
    width: min(780px, 100%);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    border-radius: 28px;
    padding: 28px;
    background: #fff;
    box-shadow: var(--shadow-panel);
    position: relative;
}

.register-modal-head {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 16px;
    align-items: start;
    margin-bottom: 18px;
}

.register-icon {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--blue), #06b6d4);
    color: #fff;
    font-size: 30px;
    font-weight: 800;
    box-shadow: var(--shadow-blue);
}

.register-modal h2 {
    margin: 2px 0 8px;
    font-size: 26px;
}

.register-modal-head p:not(.modal-kicker) {
    margin: 0;
    color: var(--slate-600);
    line-height: 1.55;
}

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

.form-field {
    display: grid;
    gap: 7px;
}

.register-wide {
    grid-column: 1 / -1;
}

select {
    width: 100%;
    height: 48px;
    border: 1px solid var(--slate-200);
    border-radius: 8px;
    padding: 0 14px;
    color: var(--slate-900);
    background: var(--white);
    outline: none;
}

select:focus {
    border-color: var(--blue);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .12);
}

.register-actions {
    display: grid;
    grid-template-columns: 1fr 160px;
    gap: 12px;
    margin-top: 18px;
}

.register-cancel {
    background: #fff;
    color: var(--slate-700);
    border: 1px solid var(--slate-200);
    box-shadow: none;
}

.register-message {
    color: var(--red);
    min-height: 24px;
}

@media (max-width: 760px) {
    .register-modal {
        padding: 22px;
        border-radius: 22px;
    }

    .register-modal-head,
    .register-grid,
    .register-actions {
        grid-template-columns: 1fr;
    }
}

/* KVKK approval flow */
.kvkk-backdrop.is-open {
    display: flex;
}

.kvkk-modal {
    width: min(620px, calc(100vw - 28px));
    max-height: min(88vh, 820px);
    overflow: auto;
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(15, 40, 75, .12);
    border-radius: 24px;
    box-shadow: 0 26px 80px rgba(7, 24, 50, .24);
    padding: 26px;
}

.kvkk-brand-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 16px;
}

.kvkk-brand-row strong {
    color: #0789c8;
    font-size: 24px;
    letter-spacing: -.5px;
}

.kvkk-brand-row span {
    color: #c8102e;
    font-size: 24px;
    font-weight: 900;
}

.kvkk-modal h2 {
    margin: 0 0 8px;
    font-size: 28px;
    color: #334155;
    text-align: center;
}

.kvkk-actions-row {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: space-between;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 12px;
    margin: 18px 0;
}

.kvkk-actions-row span {
    color: #64748b;
    font-size: 13px;
}

.kvkk-form .register-grid {
    grid-template-columns: 1fr 1fr;
}

.kvkk-doc-list {
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    overflow: hidden;
    margin: 14px 0;
}

.kvkk-doc-list details {
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
}

.kvkk-doc-list details:last-child {
    border-bottom: 0;
}

.kvkk-doc-list summary {
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 13px 16px;
    font-weight: 700;
    color: #334155;
}

.kvkk-doc-list summary::-webkit-details-marker {
    display: none;
}

.kvkk-doc-list summary b {
    background: #0d8dcc;
    color: #fff;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 11px;
    text-transform: uppercase;
}

.kvkk-doc-list p {
    margin: 0;
    padding: 0 16px 16px;
    color: #475569;
    line-height: 1.6;
    font-size: 14px;
}

.kvkk-doc-list iframe {
    width: 100%;
    height: 360px;
    border: 0;
    border-top: 1px solid #e2e8f0;
    background: #f8fafc;
}

.kvkk-check {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: #334155;
    margin: 14px 0 16px;
}

.kvkk-check input {
    width: 18px;
    height: 18px;
    margin-top: 2px;
}

.kvkk-form > button[type="submit"] {
    width: 100%;
    border: 0;
    border-radius: 14px;
    padding: 15px 18px;
    background: #0d8dcc;
    color: #fff;
    font-size: 17px;
    font-weight: 900;
    cursor: pointer;
}

.kvkk-form > button[type="submit"]:disabled, .kvkk-actions-row button:disabled {
    opacity: .65;
    cursor: not-allowed;
}

.kvkk-consent-card {
    margin-top: 18px;
    border: 1px solid #dbeafe;
    background: linear-gradient(135deg, #f8fbff, #eef7ff);
    border-radius: 20px;
    padding: 18px;
}

.kvkk-consent-card header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 14px;
}

.kvkk-consent-card h2 {
    margin: 0;
    color: #0f172a;
}

.kvkk-consent-card p {
    margin: 4px 0 0;
    color: #64748b;
}

.kvkk-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-weight: 800;
    font-size: 13px;
}

.kvkk-status-pill.revoked {
    background: #fee2e2;
    color: #991b1b;
}

.kvkk-consent-grid {
    display: grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 12px 0;
}

.kvkk-consent-grid div {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    padding: 12px;
}

.kvkk-consent-grid small {
    display: block;
    color: #64748b;
    font-weight: 700;
    margin-bottom: 4px;
}

.kvkk-consent-grid strong {
    color: #0f172a;
}

.kvkk-revoke-btn {
    border: 1px solid #fecaca;
    background: #fff;
    color: #b91c1c;
    border-radius: 12px;
    padding: 10px 14px;
    font-weight: 800;
    cursor: pointer;
}

@media (max-width: 720px) {
    .kvkk-form .register-grid, .kvkk-consent-grid {
        grid-template-columns:1fr;
    }

    .kvkk-actions-row {
        flex-direction: column;
        align-items: stretch;
    }
}

/* 4 haneli OTP/KVKK kod alanı düzeltmesi */
.otp-modal {
    max-width: 430px;
}

.otp-inputs {
    grid-template-columns: repeat(4, minmax(54px, 68px));
    justify-content: center;
    gap: 14px;
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
}

.otp-inputs input {
    width: 100%;
    min-width: 0;
    height: 68px;
    border-radius: 18px;
    font-size: 30px;
}

.kvkk-form .register-grid {
    grid-template-columns: repeat(2, minmax(0, 180px));
    justify-content: center;
}

.kvkk-form .form-field input[maxlength="4"] {
    text-align: center;
    letter-spacing: .28em;
    font-weight: 900;
    font-size: 22px;
    padding-left: 18px;
    padding-right: 18px;
}

@media (max-width: 520px) {
    .otp-inputs {
        grid-template-columns: repeat(4, 52px);
        gap: 10px;
    }

    .otp-inputs input {
        height: 58px;
        font-size: 25px;
        border-radius: 15px;
    }
}

/* KVKK protected health data gate */
.kvkk-page-shell {
    display: flex;
    justify-content: center;
    padding: 10px 0 36px
}

.kvkk-approval-card {
    width: min(760px, 100%);
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 28px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .12);
    padding: 28px;
    position: relative;
    overflow: hidden
}

.kvkk-approval-card:before {
    content: "";
    position: absolute;
    right: -60px;
    top: -60px;
    width: 190px;
    height: 190px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(14, 165, 233, .14), rgba(14, 165, 233, .04))
}

.kvkk-secure-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 10px
}

.kvkk-secure-badge:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #10b981
}

.kvkk-warning {
    margin: 16px 0;
    padding: 14px 16px;
    border-radius: 16px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #9a3412;
    font-weight: 700
}

.kvkk-code-grid-4 {
    grid-template-columns:repeat(2, minmax(0, 180px)) !important;
    justify-content: center;
    gap: 18px
}

.kvkk-code-grid-4 input {
    text-align: center;
    font-size: 28px;
    font-weight: 900;
    letter-spacing: 10px;
    padding-left: 18px
}

.kvkk-doc-list details {
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    margin-bottom: 8px;
    padding: 12px 14px;
    background: #f8fafc
}

.kvkk-doc-list summary {
    cursor: pointer;
    font-weight: 800;
    color: #334155
}

.kvkk-doc-list p {
    color: #64748b;
    line-height: 1.55;
    margin: 10px 0 0
}

.kvkk-doc-list a {
    display: block;
    border: 1px solid #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 14px;
    padding: 12px 14px;
    font-weight: 800;
    text-decoration: none
}

.kvkk-check {
    display: flex;
    gap: 10px;
    align-items: center;
    margin: 16px 0;
    color: #334155
}

.kvkk-form #kvkkSubmit {
    width: 100%;
    border: 0;
    border-radius: 16px;
    background: linear-gradient(135deg, #0284c7, #0ea5e9);
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    padding: 16px 18px;
    cursor: pointer
}

.kvkk-form #kvkkSubmit:disabled, .kvkk-actions-row button:disabled {
    opacity: .55;
    cursor: not-allowed
}

.form-message.is-success {
    color: #047857
}

@media (max-width: 640px) {
    .kvkk-approval-card {
        padding: 20px;
        border-radius: 22px
    }

    .kvkk-code-grid-4 {
        grid-template-columns:1fr 1fr !important
    }

    .kvkk-code-grid-4 input {
        font-size: 22px;
        letter-spacing: 6px
    }

    .kvkk-actions-row {
        flex-direction: column;
        align-items: stretch !important
    }
}

/* KVKK professional approval & management v2 */
.kvkk-pro-shell {
    max-width: 980px;
    margin: 0 auto;
    padding: 8px 0 40px
}

.kvkk-pro-card {
    position: relative;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dbe6f3;
    border-radius: 30px;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .12);
    padding: 28px
}

.kvkk-pro-card:before {
    content: "";
    position: absolute;
    right: -80px;
    top: -120px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(14, 165, 233, .18), rgba(37, 99, 235, .06));
    pointer-events: none
}

.kvkk-pro-hero {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-start;
    border-bottom: 1px solid #e6edf6;
    padding-bottom: 22px
}

.kvkk-pro-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    background: #ecfdf3;
    color: #027a48;
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 900
}

.kvkk-pro-badge i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #12b76a
}

.kvkk-pro-hero h1 {
    margin: 16px 0 8px;
    font-size: 32px;
    line-height: 1.1;
    color: #101828;
    letter-spacing: -.03em
}

.kvkk-pro-hero p {
    margin: 0;
    color: #475467;
    line-height: 1.6;
    max-width: 650px
}

.kvkk-pro-mark {
    min-width: 104px;
    height: 104px;
    border-radius: 28px;
    background: linear-gradient(135deg, #0789c8, #0ea5e9);
    color: #fff;
    display: grid;
    place-items: center;
    text-align: center;
    box-shadow: 0 18px 42px rgba(14, 165, 233, .28)
}

.kvkk-pro-mark strong {
    font-size: 30px;
    line-height: 1
}

.kvkk-pro-mark span {
    display: block;
    font-size: 13px;
    font-weight: 1000;
    letter-spacing: .08em
}

.kvkk-pro-user {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 12px;
    margin: 20px 0
}

.kvkk-pro-user > div, .kvkk-detail-card .kvkk-consent-grid > div {
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    border-radius: 18px;
    padding: 14px
}

.kvkk-pro-user small, .kvkk-detail-card small {
    display: block;
    color: #667085;
    font-weight: 900;
    font-size: 12px;
    margin-bottom: 5px
}

.kvkk-pro-user strong, .kvkk-detail-card strong {
    color: #1d2939
}

.kvkk-pro-alert {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    color: #9a3412;
    border-radius: 18px;
    padding: 14px 16px;
    font-weight: 800;
    line-height: 1.5;
    margin-bottom: 16px
}

.kvkk-pro-step {
    display: grid;
    grid-template-columns:44px 1fr;
    gap: 14px;
    padding: 18px;
    border: 1px solid #e5e7eb;
    background: #fff;
    border-radius: 22px;
    margin-bottom: 14px
}

.kvkk-pro-step.active {
    background: linear-gradient(135deg, #eff6ff, #f8fbff);
    border-color: #bfdbfe
}

.step-no {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    background: #0d8dcc;
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 1000;
    box-shadow: 0 10px 24px rgba(13, 141, 204, .24)
}

.step-body h3 {
    margin: 0 0 5px;
    color: #101828
}

.step-body p {
    margin: 0 0 13px;
    color: #667085
}

.kvkk-primary-btn, .kvkk-submit-btn {
    border: 0;
    border-radius: 16px;
    background: linear-gradient(135deg, #0d8dcc, #2563eb);
    color: #fff;
    font-weight: 1000;
    padding: 14px 18px;
    cursor: pointer;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22)
}

.kvkk-primary-btn:disabled, .kvkk-submit-btn:disabled {
    opacity: .6;
    cursor: not-allowed
}

.kvkk-code-grid-4 {
    display: grid;
    grid-template-columns:repeat(2, minmax(180px, 1fr));
    gap: 16px
}

.kvkk-code-grid-4 input {
    text-align: center;
    letter-spacing: .45em;
    font-weight: 1000;
    font-size: 24px;
    color: #1d2939
}

.kvkk-pro-docs {
    border: 1px solid #dbe6f3;
    border-radius: 22px;
    overflow: hidden;
    margin: 16px 0
}

.kvkk-pro-docs details {
    background: #fff;
    border-bottom: 1px solid #e5e7eb
}

.kvkk-pro-docs summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    font-weight: 1000;
    color: #344054
}

.kvkk-pro-docs summary::-webkit-details-marker {
    display: none
}

.kvkk-pro-docs summary b {
    font-size: 11px;
    border-radius: 999px;
    background: #eef4ff;
    color: #1d4ed8;
    padding: 5px 9px
}

.kvkk-pro-docs p {
    padding: 0 18px 16px;
    margin: 0;
    color: #475467;
    line-height: 1.65
}

.kvkk-pro-docs a {
    display: block;
    padding: 16px 18px;
    text-decoration: none;
    font-weight: 1000;
    color: #155eef;
    background: #eff6ff
}

.kvkk-pro-check {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: #344054;
    font-weight: 800;
    margin: 18px 0
}

.kvkk-pro-check input {
    width: 20px;
    height: 20px;
    margin-top: 1px
}

.kvkk-submit-btn {
    width: 100%;
    font-size: 16px;
    padding: 16px
}

.form-message.is-success {
    color: #027a48
}

.kvkk-manage-head .kvkk-eyebrow {
    display: inline-flex;
    color: #155eef;
    background: #eff6ff;
    border-radius: 999px;
    padding: 7px 11px;
    font-weight: 1000;
    font-size: 12px;
    margin-bottom: 8px
}

.kvkk-manage-grid {
    display: grid;
    grid-template-columns:.9fr 1.1fr;
    gap: 18px;
    margin-bottom: 18px
}

.kvkk-status-card {
    display: flex;
    gap: 16px;
    align-items: flex-start
}

.kvkk-status-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    background: #ecfdf3;
    color: #027a48;
    display: grid;
    place-items: center;
    font-size: 28px;
    font-weight: 1000
}

.kvkk-state {
    display: inline-flex;
    border-radius: 999px;
    padding: 7px 11px;
    font-weight: 1000
}

.kvkk-state.ok {
    background: #ecfdf3;
    color: #027a48
}

.kvkk-state.warn {
    background: #fff7ed;
    color: #b54708
}

.kvkk-consent-grid {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    gap: 12px
}

.kvkk-revoke-btn {
    margin-top: 16px;
    border: 0;
    border-radius: 14px;
    background: #fee4e2;
    color: #b42318;
    font-weight: 1000;
    padding: 12px 15px;
    cursor: pointer
}

.kvkk-revoke-note {
    color: #667085;
    font-size: 13px
}

.kvkk-history-table-wrap {
    overflow: auto
}

.kvkk-history-table {
    width: 100%;
    border-collapse: collapse
}

.kvkk-history-table th, .kvkk-history-table td {
    padding: 13px;
    border-bottom: 1px solid #e5e7eb;
    text-align: left
}

.kvkk-history-table th {
    background: #f8fafc;
    color: #475467;
    font-size: 12px;
    text-transform: uppercase
}

.kvkk-admin-status {
    display: inline-flex;
    border-radius: 999px;
    padding: 6px 10px;
    font-weight: 900;
    font-size: 12px;
    background: #eff6ff;
    color: #1d4ed8
}

.kvkk-admin-status.approved {
    background: #ecfdf3;
    color: #027a48
}

.kvkk-admin-status.pending {
    background: #fff7ed;
    color: #b54708
}

.kvkk-admin-status.revoked {
    background: #fee4e2;
    color: #b42318
}

@media (max-width: 760px) {
    .kvkk-pro-card {
        padding: 18px;
        border-radius: 22px
    }

    .kvkk-pro-hero {
        display: block
    }

    .kvkk-pro-mark {
        display: none
    }

    .kvkk-pro-user, .kvkk-manage-grid, .kvkk-consent-grid, .kvkk-code-grid-4 {
        grid-template-columns:1fr
    }

    .kvkk-pro-hero h1 {
        font-size: 26px
    }
}

/* KVKK approval submit feedback */
.kvkk-approval-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, .46);
    backdrop-filter: blur(6px);
    padding: 24px
}

.kvkk-approval-overlay.is-visible {
    display: flex
}

.kvkk-approval-card {
    width: min(420px, 100%);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .28);
    padding: 32px;
    text-align: center;
    border: 1px solid #dbe6f3
}

.kvkk-approval-card h3 {
    margin: 18px 0 8px;
    color: #101828;
    font-size: 26px;
    letter-spacing: -.02em
}

.kvkk-approval-card p {
    margin: 0;
    color: #475467;
    line-height: 1.6;
    font-weight: 700
}

.kvkk-approval-spinner {
    width: 64px;
    height: 64px;
    margin: 0 auto;
    border-radius: 50%;
    border: 6px solid #dbeafe;
    border-top-color: #0d8dcc;
    animation: kvkkSpin .85s linear infinite
}

@keyframes kvkkSpin {
    to {
        transform: rotate(360deg)
    }
}

/* KVKK v8 professional consent screen */
.kvkk-v8-shell {
    max-width: 1120px;
    padding: 28px 0 56px
}

.kvkk-v8-card {
    border-radius: 18px;
    padding: 28px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    border: 1px solid #d9e4f2;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .10)
}

.kvkk-v8-card:before {
    display: none
}

.kvkk-v8-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 22px;
    border-bottom: 1px solid #e5edf7
}

.kvkk-v8-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #0986ca;
    font-size: 26px;
    font-weight: 1000;
    letter-spacing: -.02em
}

.kvkk-v8-brand img {
    height: 44px;
    width: auto
}

.kvkk-v8-titlemark {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #0f172a;
    font-size: 26px;
    font-weight: 1000
}

.kvkk-v8-titlemark span {
    color: #155eef
}

.kvkk-v8-hero-box {
    display: grid;
    grid-template-columns:92px 1fr auto;
    gap: 24px;
    align-items: center;
    margin-top: 26px;
    padding: 32px 28px;
    border: 1px solid #dbe6f3;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 36px rgba(15, 23, 42, .04)
}

.kvkk-v8-shield {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #eff6ff, #dbeafe);
    color: #0570c9;
    font-size: 42px;
    font-weight: 1000;
    box-shadow: inset 0 0 0 14px #eef6ff
}

.kvkk-v8-hero-text h1 {
    margin: 0 0 8px;
    font-size: 33px;
    letter-spacing: -.03em;
    color: #0f172a
}

.kvkk-v8-hero-text p {
    margin: 0;
    color: #52627a;
    font-size: 17px;
    line-height: 1.55;
    max-width: 680px
}

.kvkk-v8-secure {
    white-space: nowrap;
    padding: 11px 18px;
    background: #ecfdf3;
    color: #067647
}

.kvkk-v8-user {
    margin: 18px 0;
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 14px
}

.kvkk-v8-user > div {
    background: #f8fafc;
    border-color: #e2e8f0;
    border-radius: 17px;
    padding: 17px 18px
}

.kvkk-v8-alert {
    display: flex;
    gap: 18px;
    align-items: center;
    padding: 22px 26px;
    border-radius: 16px;
    background: #fff7ed;
    border-color: #fed7aa;
    color: #9a3412;
    font-size: 16px;
    margin: 24px 0
}

.kvkk-v8-alert span {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    border: 3px solid #fb923c;
    color: #ea580c;
    font-weight: 1000
}

.kvkk-v8-sms-card {
    grid-template-columns:74px 1fr;
    padding: 28px 24px;
    border-radius: 18px;
    background: #fff;
    border-color: #dbe6f3;
    box-shadow: 0 12px 40px rgba(15, 23, 42, .04)
}

.kvkk-v8-mobile-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eff6ff;
    color: #0570c9;
    font-size: 31px;
    font-weight: 1000
}

.kvkk-v8-step-head {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: center
}

.kvkk-v8-step-head h3 {
    font-size: 21px;
    margin: 0 0 8px
}

.kvkk-v8-step-head p {
    font-size: 16px;
    color: #52627a
}

.kvkk-v8-phone-pill {
    background: #f2f5fa;
    border-radius: 12px;
    padding: 14px 18px;
    color: #52627a;
    font-size: 16px;
    white-space: nowrap
}

.kvkk-v8-phone-pill b, .kvkk-v8-phone-pill strong {
    color: #0f172a
}

.kvkk-v8-send-btn {
    width: 100%;
    margin-top: 22px;
    border-radius: 9px;
    min-height: 66px;
    font-size: 18px;
    background: linear-gradient(135deg, #005bc8, #0074cf);
    box-shadow: 0 10px 22px rgba(0, 91, 200, .28)
}

.kvkk-v8-code-panel {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 88px;
    margin: 26px 0 30px;
    padding: 28px 34px;
    border: 1px solid #dbe6f3;
    border-radius: 16px;
    background: #fff
}

.kvkk-v8-code-panel label {
    display: block;
    font-weight: 900;
    color: #344054;
    margin-bottom: 14px
}

.kvkk-v8-code-panel input {
    width: 100%;
    height: 58px;
    border-radius: 9px;
    text-align: center;
    letter-spacing: .42em;
    font-size: 24px;
    font-weight: 1000;
    color: #0f172a;
    border: 1px solid #dbe6f3;
    background: #fff
}

.kvkk-v8-docs {
    border-radius: 16px;
    border-color: #dbe6f3
}

.kvkk-v8-docs details, .kvkk-v8-docs a {
    min-height: 66px
}

.kvkk-v8-docs summary, .kvkk-v8-docs a {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 24px;
    font-size: 16px
}

.kvkk-v8-docs summary b, .kvkk-v8-docs a b {
    margin-left: auto;
    background: transparent;
    color: #64748b;
    font-size: 22px
}

.doc-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    font-size: 12px;
    font-weight: 1000;
    flex: 0 0 auto
}

.doc-blue {
    background: #eff6ff;
    color: #0570c9
}

.doc-green {
    background: #ecfdf3;
    color: #039855
}

.doc-purple {
    background: #f5f3ff;
    color: #7c3aed
}

.kvkk-v8-docs p {
    font-size: 15px;
    padding: 0 24px 20px 78px
}

.kvkk-v8-docs a {
    background: #fff;
    color: #1d4ed8
}

.kvkk-v8-check {
    font-size: 17px;
    margin: 28px 0 22px
}

.kvkk-v8-check input {
    width: 25px;
    height: 25px
}

.kvkk-v8-actions {
    display: grid;
    grid-template-columns:minmax(0, 1fr) 280px;
    gap: 18px
}

.kvkk-v8-submit {
    border-radius: 9px;
    min-height: 72px;
    font-size: 18px;
    background: linear-gradient(135deg, #005bc8, #0074cf);
    box-shadow: 0 10px 22px rgba(0, 91, 200, .28)
}

.kvkk-v8-cancel {
    border: 1px solid #dbe6f3;
    border-radius: 9px;
    background: #fff;
    color: #52627a;
    font-size: 18px;
    font-weight: 1000;
    cursor: pointer
}

.kvkk-v8-info {
    margin-top: 28px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    padding: 18px 22px;
    background: #eff6ff;
    color: #1d4ed8;
    font-weight: 700
}

.kvkk-v8-card .form-message {
    margin-top: 16px;
    font-weight: 900
}

.kvkk-v8-card .form-message.is-success {
    color: #027a48
}

@media (max-width: 900px) {
    .kvkk-v8-hero-box {
        grid-template-columns:1fr
    }

    .kvkk-v8-shield {
        width: 70px;
        height: 70px
    }

    .kvkk-v8-secure {
        width: max-content
    }

    .kvkk-v8-user, .kvkk-v8-code-panel, .kvkk-v8-actions {
        grid-template-columns:1fr
    }

    .kvkk-v8-code-panel {
        gap: 18px
    }

    .kvkk-v8-step-head {
        align-items: flex-start;
        flex-direction: column
    }

    .kvkk-v8-topbar {
        align-items: flex-start;
        gap: 14px;
        flex-direction: column
    }

    .kvkk-v8-brand strong {
        font-size: 22px
    }

    .kvkk-v8-titlemark {
        font-size: 22px
    }

    .kvkk-v8-card {
        padding: 18px
    }

    .kvkk-v8-hero-text h1 {
        font-size: 28px
    }
}

/* KVKK v9 compact professional layout */
.kvkk-v8-shell {
    max-width: 980px !important;
    padding: 14px 0 28px !important
}

.kvkk-v8-card {
    padding: 20px 24px !important;
    border-radius: 18px !important;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .09) !important
}

.kvkk-v8-topbar {
    padding-bottom: 14px !important
}

.kvkk-v8-brand {
    font-size: 22px !important
}

.kvkk-v8-brand img {
    height: 36px !important
}

.kvkk-v8-titlemark {
    font-size: 22px !important
}

.kvkk-v8-hero-box {
    grid-template-columns:64px 1fr auto !important;
    gap: 16px !important;
    margin-top: 16px !important;
    padding: 18px 20px !important;
    border-radius: 16px !important
}

.kvkk-v8-shield {
    width: 58px !important;
    height: 58px !important;
    font-size: 0 !important;
    box-shadow: inset 0 0 0 10px #eef6ff !important
}

.kvkk-v8-shield svg {
    width: 36px;
    height: 36px;
    display: block
}

.kvkk-v8-hero-text h1 {
    font-size: 26px !important;
    margin-bottom: 5px !important
}

.kvkk-v8-hero-text p {
    font-size: 14px !important;
    line-height: 1.45 !important
}

.kvkk-v8-secure {
    padding: 8px 12px !important;
    font-size: 12px !important
}

.kvkk-v8-user {
    gap: 10px !important;
    margin: 12px 0 !important
}

.kvkk-v8-user > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px !important;
    border-radius: 14px !important
}

.kvkk-v8-user p {
    margin: 0
}

.kvkk-card-icon {
    width: 34px;
    height: 34px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: #eff6ff;
    color: #155eef;
    flex: 0 0 auto
}

.kvkk-card-icon svg {
    width: 19px;
    height: 19px;
    display: block
}

.kvkk-v8-user small {
    font-size: 11px !important;
    margin-bottom: 3px !important
}

.kvkk-v8-user strong {
    font-size: 13px !important
}

.kvkk-v8-alert {
    margin: 12px 0 !important;
    padding: 13px 16px !important;
    gap: 12px !important;
    font-size: 14px !important;
    border-radius: 14px !important
}

.kvkk-v8-alert span {
    width: 30px !important;
    height: 30px !important;
    border-width: 2px !important;
    font-size: 17px !important;
    flex: 0 0 auto
}

.kvkk-v9-code-first {
    display: grid;
    grid-template-columns:52px 1fr;
    gap: 14px;
    margin: 12px 0;
    padding: 16px 18px;
    border: 1px solid #bfd7ff;
    border-radius: 16px;
    background: linear-gradient(135deg, #f4f9ff, #fff);
    box-shadow: 0 10px 28px rgba(21, 94, 239, .06)
}

.kvkk-v9-step-no {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: linear-gradient(135deg, #0d8dcc, #2563eb);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 1000;
    box-shadow: 0 10px 20px rgba(37, 99, 235, .22)
}

.kvkk-v9-row-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 12px
}

.kvkk-v9-row-head h3 {
    margin: 0 0 4px;
    color: #101828;
    font-size: 18px
}

.kvkk-v9-row-head p {
    margin: 0;
    color: #52627a;
    font-size: 13px;
    line-height: 1.35
}

.kvkk-v8-phone-pill {
    padding: 9px 12px !important;
    border-radius: 10px !important;
    font-size: 13px !important
}

.kvkk-v8-code-panel {
    grid-template-columns:repeat(2, minmax(180px, 1fr)) !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important
}

.kvkk-v8-code-panel label {
    font-size: 12px !important;
    margin-bottom: 7px !important
}

.kvkk-v8-code-panel input {
    height: 48px !important;
    border-radius: 10px !important;
    font-size: 22px !important;
    letter-spacing: .35em !important;
    background: #fff !important;
    box-shadow: 0 2px 0 rgba(15, 23, 42, .02)
}

.kvkk-v8-code-panel input:focus {
    outline: 3px solid rgba(37, 99, 235, .15);
    border-color: #2563eb !important
}

.kvkk-v9-sms-mini {
    grid-template-columns:52px 1fr !important;
    padding: 14px 18px !important;
    border-radius: 16px !important;
    margin-bottom: 12px !important
}

.kvkk-v9-sms-mini .kvkk-v8-mobile-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    font-size: 0 !important;
    background: #eaf3ff !important
}

.kvkk-v9-sms-mini .kvkk-v8-mobile-icon svg {
    width: 23px;
    height: 23px;
    display: block
}

.kvkk-v9-sms-mini h3 {
    font-size: 16px !important;
    margin-bottom: 3px !important
}

.kvkk-v9-sms-mini p {
    font-size: 13px !important;
    margin-bottom: 9px !important
}

.kvkk-v9-sms-mini .kvkk-v8-send-btn {
    min-height: 42px !important;
    margin-top: 4px !important;
    border-radius: 11px !important;
    font-size: 14px !important;
    padding: 10px 14px !important
}

.kvkk-v8-docs {
    margin: 12px 0 !important
}

.kvkk-v8-docs details, .kvkk-v8-docs a {
    min-height: 48px !important
}

.kvkk-v8-docs summary, .kvkk-v8-docs a {
    padding: 11px 14px !important;
    font-size: 14px !important;
    gap: 10px !important
}

.doc-icon {
    width: 30px !important;
    height: 30px !important
}

.doc-icon svg {
    width: 18px;
    height: 18px;
    display: block
}

.kvkk-v8-docs summary b, .kvkk-v8-docs a b {
    font-size: 18px !important
}

.kvkk-v8-docs p {
    font-size: 13px !important;
    padding: 0 14px 12px 54px !important;
    line-height: 1.45 !important
}

.kvkk-v8-check {
    font-size: 14px !important;
    margin: 12px 0 !important
}

.kvkk-v8-check input {
    width: 20px !important;
    height: 20px !important
}

.kvkk-v8-actions {
    grid-template-columns:minmax(0, 1fr) 180px !important;
    gap: 12px !important
}

.kvkk-v8-submit {
    min-height: 52px !important;
    border-radius: 12px !important;
    font-size: 15px !important
}

.kvkk-v8-cancel {
    border-radius: 12px !important;
    font-size: 15px !important
}

.kvkk-v8-info {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-size: 13px !important
}

.kvkk-info-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    background: #dbeafe;
    color: #1d4ed8;
    font-weight: 1000;
    flex: 0 0 auto
}

.kvkk-svg-icon.shield-mini {
    display: inline-grid;
    width: 26px;
    height: 26px;
    border-radius: 8px;
    background: #eff6ff;
    color: #155eef;
    position: relative
}

.kvkk-svg-icon.shield-mini:before {
    content: '🔒';
    font-size: 15px;
    line-height: 26px;
    text-align: center
}

@media (max-width: 900px) {
    .kvkk-v8-shell {
        padding: 8px 0 20px !important
    }

    .kvkk-v8-card {
        padding: 16px !important
    }

    .kvkk-v8-hero-box {
        grid-template-columns:1fr !important
    }

    .kvkk-v8-shield {
        display: none !important
    }

    .kvkk-v8-secure {
        width: max-content
    }

    .kvkk-v8-user {
        grid-template-columns:1fr !important
    }

    .kvkk-v9-code-first {
        grid-template-columns:1fr !important
    }

    .kvkk-v9-step-no {
        width: 38px;
        height: 38px
    }

    .kvkk-v9-row-head {
        flex-direction: column
    }

    .kvkk-v8-code-panel {
        grid-template-columns:1fr !important
    }

    .kvkk-v8-actions {
        grid-template-columns:1fr !important
    }

    .kvkk-v9-sms-mini {
        grid-template-columns:1fr !important
    }

    .kvkk-v8-titlemark {
        display: none !important
    }
}

@media (max-height: 820px) and (min-width: 901px) {
    .kvkk-v8-topbar {
        display: none !important
    }

    .kvkk-v8-hero-box {
        margin-top: 0 !important;
        padding: 14px 18px !important
    }

    .kvkk-v8-hero-text h1 {
        font-size: 24px !important
    }

    .kvkk-v8-user > div {
        padding: 10px 12px !important
    }

    .kvkk-v8-alert {
        padding: 10px 14px !important
    }

    .kvkk-v8-docs details:nth-of-type(1) p {
        display: none
    }

    .kvkk-v8-info {
        display: none !important
    }
}

/* KVKK v10: kompakt SMS kartı ve görünür hata mesajları */
.kvkk-v9-sms-mini {
    grid-template-columns:38px 1fr !important;
    gap: 10px !important;
    padding: 10px 14px !important;
    border-radius: 12px !important;
    margin: 8px 0 10px !important;
    background: linear-gradient(135deg, #f8fbff, #ffffff) !important;
    box-shadow: none !important;
}

.kvkk-v9-sms-mini .kvkk-v8-mobile-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
    background: #eef6ff !important;
}

.kvkk-v9-sms-mini .kvkk-v8-mobile-icon svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    color: #0875d1 !important
}

.kvkk-v9-sms-mini .kvkk-v8-step-head h3 {
    font-size: 14px !important;
    margin: 0 0 2px !important;
    line-height: 1.2 !important
}

.kvkk-v9-sms-mini .kvkk-v8-step-head p {
    font-size: 12px !important;
    margin: 0 0 6px !important;
    line-height: 1.35 !important;
    color: #64748b !important
}

.kvkk-v9-sms-mini .kvkk-v8-send-btn {
    min-height: 34px !important;
    height: 34px !important;
    margin-top: 2px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    padding: 7px 12px !important;
    box-shadow: 0 6px 14px rgba(0, 91, 200, .16) !important;
}

.kvkk-inline-message {
    display: none;
    margin: 8px 0 0 !important;
    padding: 9px 12px !important;
    border-radius: 10px !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}

.kvkk-inline-message.is-success {
    display: block;
    background: #ecfdf3;
    border: 1px solid #bbf7d0;
    color: #067647 !important
}

.kvkk-inline-message.is-error {
    display: block;
    background: #fff1f2;
    border: 1px solid #fecdd3;
    color: #be123c !important
}

.kvkk-v8-card .form-message.is-error {
    color: #be123c !important;
    background: #fff1f2;
    border: 1px solid #fecdd3;
    border-radius: 10px;
    padding: 10px 12px
}

.kvkk-v8-card .form-message.is-success {
    color: #067647 !important;
    background: #ecfdf3;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    padding: 10px 12px
}

/* Doctor service image + CV detail page */
.lh-app .lh-doctor-photo {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    object-fit: cover;
    border: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 14px 30px rgba(15, 23, 42, .12);
    background: #f8fafc;
    flex: 0 0 auto;
}

.lh-app .lh-doctor-photo.large {
    width: 72px;
    height: 72px;
    border-radius: 24px;
}

.lh-app .lh-doctor-photo.hero,
.lh-app .lh-doctor-avatar.hero {
    width: 132px;
    height: 132px;
    border-radius: 34px;
    font-size: 38px;
}

.lh-app .lh-doctor-name-link {
    color: inherit;
    text-decoration: none;
}

.lh-app .lh-doctor-name-link:hover {
    color: #0f766e;
}

.lh-app .doctor-detail-head {
    align-items: flex-start;
    gap: 24px;
}

.lh-app .doctor-detail-hero {
    display: flex;
    align-items: center;
    gap: 24px;
    min-width: 0;
}

.lh-app .lh-doctor-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.lh-app .lh-doctor-badges span {
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(15, 118, 110, .08);
    color: #0f766e;
    font-weight: 800;
    font-size: 12px;
}

.lh-app .lh-detail-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.lh-app .lh-doctor-detail-layout {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.lh-app .lh-doctor-summary-card,
.lh-app .lh-cv-section {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 28px;
    box-shadow: 0 22px 55px rgba(15, 23, 42, .08);
    padding: 24px;
}

.lh-app .lh-doctor-summary-card {
    position: sticky;
    top: 92px;
}

.lh-app .lh-doctor-summary-card h2,
.lh-app .lh-cv-section h2 {
    margin: 0 0 18px;
    font-size: 20px;
    color: #0f172a;
}

.lh-app .lh-doctor-summary-card dl {
    margin: 0;
    display: grid;
    gap: 14px;
}

.lh-app .lh-doctor-summary-card dt {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.lh-app .lh-doctor-summary-card dd {
    margin: 4px 0 0;
    font-weight: 800;
    color: #0f172a;
}

.lh-mini-action .disabled {
    color: #000 !important;
}

.lh-app .lh-cv-section-list {
    display: grid;
    gap: 18px;
}

.lh-app .lh-cv-items {
    display: grid;
    gap: 12px;
}

.lh-app .lh-cv-item {
    padding: 16px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid rgba(15, 23, 42, .06);
}

.lh-app .lh-cv-item strong {
    display: block;
    color: #0f172a;
    margin-bottom: 8px;
}

.lh-app .lh-cv-item p {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: #475569;
}

.lh-app .lh-cv-item p span {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .06);
    border-radius: 999px;
    padding: 6px 10px;
}

.lh-app .lh-muted-text {
    color: #64748b;
    margin: 0;
}

.lh-app .lh-skill-groups {
    display: grid;
    gap: 12px;
}

.lh-app .lh-skill-groups > div {
    padding: 14px;
    border-radius: 18px;
    background: #f8fafc;
}

@media (max-width: 960px) {
    .lh-app .doctor-detail-hero {
        align-items: flex-start;
    }

    .lh-app .lh-doctor-detail-layout {
        grid-template-columns:1fr;
    }

    .lh-app .lh-doctor-summary-card {
        position: static;
    }
}

@media (max-width: 640px) {
    .lh-app .doctor-detail-hero {
        flex-direction: column;
    }

    .lh-app .lh-doctor-photo.hero,
    .lh-app .lh-doctor-avatar.hero {
        width: 104px;
        height: 104px;
        border-radius: 28px;
    }

    .lh-app .lh-detail-actions {
        justify-content: flex-start;
    }
}

/* Doktorlarım - hızlı/profesyonel kart düzeni */
.lh-app .lh-doctors-head-modern {
    margin-bottom: 18px;
}

.lh-app .lh-doctor-tabs-modern {
    margin-bottom: 26px;
}

.lh-app .lh-doctor-grid-modern {
    display: grid;
    grid-template-columns:repeat(3, minmax(280px, 1fr));
    gap: 18px;
}

.lh-app .lh-doctor-profile-card-modern {
    position: relative;
    overflow: hidden;
    border: 1px solid #dbe7f5;
    border-radius: 18px;
    background: linear-gradient(180deg, #fff 0%, #fbfdff 100%);
    box-shadow: 0 12px 34px rgba(15, 46, 88, .06);
    padding: 0;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.lh-app .lh-doctor-profile-card-modern:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(15, 46, 88, .10);
    border-color: #bed4f2;
}

.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-top {
    display: grid;
    grid-template-columns:86px minmax(0, 1fr) 42px;
    gap: 14px;
    align-items: center;
    padding: 18px 18px 14px;
}

.lh-app .lh-doctor-photo-wrap {
    width: 86px;
    height: 86px;
    border-radius: 22px;
    background: #eaf6ff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: inset 0 0 0 1px rgba(30, 95, 145, .08);
}

.lh-app .lh-doctor-profile-card-modern .lh-doctor-photo.large {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 22px;
    background: #eaf6ff;
    display: block;
}

.lh-app .lh-doctor-main-info {
    min-width: 0;
}

.lh-app .lh-doctor-main-info h2 {
    font-size: 17px;
    line-height: 1.25;
    margin: 8px 0 5px;
    color: #101828;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lh-app .lh-doctor-main-info p {
    margin: 0;
    color: #536783;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lh-app .lh-doctor-title-pill {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #edf5ff;
    color: #145fe8;
    font-weight: 800;
    font-size: 12px;
    padding: 5px 10px;
    line-height: 1;
}

.lh-app .lh-doctor-card-stats {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px;
    padding: 12px 18px 4px;
}

.lh-app .lh-doctor-card-stats div {
    border-radius: 14px;
    background: #f7fbff;
    border: 1px solid #e4edf8;
    padding: 10px 12px;
}

.lh-app .lh-doctor-card-stats small {
    display: block;
    color: #7b8da9;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 4px;
}

.lh-app .lh-doctor-card-stats strong {
    color: #101828;
    font-size: 14px;
}

.lh-app .lh-doctor-card-actions {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px 18px !important;
}

.lh-app .lh-doctor-card-actions .lh-card-action {
    height: 36px;
    border-radius: 12px;
}

.lh-app .lh-doctor-card-actions .lh-card-action.primary {
    min-width: 118px;
    justify-content: center;
}

.lh-app .lh-doctor-profile-card-modern .lh-heart-dot {
    position: static;
    width: 38px;
    height: 46px;
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(15, 46, 88, .10);
}

.lh-app .lh-doctor-profile-card-modern .lh-doctor-divider {
    margin: 0 18px;
    background: #edf2f7;
}

.lh-app .doctor-detail-head {
    border: 1px solid #dbe7f5;
    border-radius: 22px;
    background: linear-gradient(135deg, #ffffff 0%, #f5f9ff 100%);
    padding: 24px;
    box-shadow: 0 14px 34px rgba(15, 46, 88, .06);
}

.lh-app .doctor-detail-hero .lh-doctor-photo.hero {
    width: 132px;
    height: 132px;
    border-radius: 28px;
    object-fit: cover;
    background: #eaf6ff;
    box-shadow: 0 16px 38px rgba(15, 46, 88, .12);
}

@media (max-width: 1400px) {
    .lh-app .lh-doctor-grid-modern {
        grid-template-columns:repeat(2, minmax(280px, 1fr));
    }
}

@media (max-width: 860px) {
    .lh-app .lh-doctor-grid-modern {
        grid-template-columns:1fr;
    }

    .lh-app .lh-doctor-profile-card-modern .lh-doctor-card-top {
        grid-template-columns:76px minmax(0, 1fr) 40px;
    }

    .lh-app .lh-doctor-photo-wrap {
        width: 76px;
        height: 76px;
    }
}

/* Doctor pages: do not show an orphan status dot when there is no message. */
.lh-app .lh-doctor-profile-card .lh-list-status.muted:empty,
.lh-doctor-profile-card .lh-list-status.muted:empty {
    display: none;
}

.lh-app .lh-doctor-profile-card .lh-list-status.muted:empty::before,
.lh-doctor-profile-card .lh-list-status.muted:empty::before {
    content: none;
}

/* Doctor detail v2: CV servis alanlarını okunabilir/profesyonel gösterim */
.lh-app .lh-doctor-detail-v2 {
    margin-bottom: 24px;
}

.lh-app .lh-doctor-detail-hero-v2 {
    display: grid;
    grid-template-columns:150px minmax(0, 1fr) 300px;
    gap: 24px;
    align-items: center;
    border: 1px solid #dbe7f5;
    border-radius: 26px;
    background: linear-gradient(135deg, #fff 0%, #f4f9ff 72%, #eef6ff 100%);
    box-shadow: 0 18px 48px rgba(15, 46, 88, .08);
    padding: 26px;
}

.lh-app .lh-doctor-hero-photo-card {
    width: 138px;
    height: 138px;
    border-radius: 30px;
    background: linear-gradient(180deg, #eaf6ff, #fff);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #d8e8f7;
    box-shadow: 0 18px 38px rgba(15, 46, 88, .13);
}

.lh-app .lh-doctor-hero-photo-card .lh-doctor-photo.hero {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    object-fit: cover;
    background: #eaf6ff;
    box-shadow: none;
    border: 0;
}

.lh-app .lh-doctor-kicker {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #eaf6ff;
    color: #087a8f;
    font-size: 12px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
    padding: 8px 14px;
    margin-bottom: 10px;
}

.lh-app .lh-doctor-hero-content h1 {
    margin: 0;
    color: #071426;
    font-size: 30px;
    line-height: 1.15;
    font-weight: 900;
    letter-spacing: -.025em;
}

.lh-app .lh-doctor-hero-content p {
    margin: 9px 0 0;
    color: #536783;
    font-size: 15px;
    font-weight: 700;
}

.lh-app .lh-doctor-badges-v2 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.lh-app .lh-doctor-badges-v2 span {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #e9f8f2;
    color: #08725f;
    font-size: 12px;
    font-weight: 900;
    padding: 8px 12px;
}

.lh-app .lh-doctor-badges-v2 span.available {
    background: #e7f0ff;
    color: #145fe8;
}

.lh-app .lh-doctor-hero-actions {
    display: grid;
    gap: 12px;
    justify-items: stretch;
    align-self: stretch;
    align-content: center;
}

.lh-app .lh-soft-link {
    justify-self: end;
    color: #145fe8;
    text-decoration: none;
    font-weight: 900;
    font-size: 13px;
}

.lh-app .lh-soft-link:hover {
    text-decoration: underline;
}

.lh-app .lh-detail-appointment-btn {
    height: 48px;
    border-radius: 14px;
    font-size: 14px;
    font-weight: 900;
}

.lh-app .lh-detail-appointment-btn:disabled {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
}

.lh-app .lh-appointment-note {
    display: block;
    color: #64748b;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
}

.lh-app .lh-doctor-detail-layout-v2 {
    display: grid;
    grid-template-columns:320px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

.lh-app .lh-doctor-summary-card-v2 {
    position: sticky;
    top: 92px;
    border: 1px solid #dbe7f5;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 46, 88, .07);
    padding: 24px;
}

.lh-app .lh-doctor-summary-card-v2 h2 {
    margin: 0 0 18px;
    color: #0f172a;
    font-size: 20px;
    font-weight: 900;
}

.lh-app .lh-doctor-summary-card-v2 dl {
    margin: 0;
    display: grid;
    gap: 16px;
}

.lh-app .lh-doctor-summary-card-v2 dt {
    color: #7184a2;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.lh-app .lh-doctor-summary-card-v2 dd {
    margin: 5px 0 0;
    color: #101828;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.35;
}

.lh-app .lh-cv-section-list-v2 {
    display: grid;
    gap: 16px;
}

.lh-app .lh-cv-section-v2 {
    border: 1px solid #dbe7f5;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 46, 88, .06);
    padding: 22px;
}

.lh-app .lh-cv-section-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.lh-app .lh-cv-section-title span {
    width: 38px;
    height: 38px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eef6ff;
    font-size: 18px;
}

.lh-app .lh-cv-section-title h2 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: -.01em;
}

.lh-app .lh-cv-timeline {
    display: grid;
    gap: 12px;
}

.lh-app .lh-cv-item-v2 {
    display: grid;
    grid-template-columns:18px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

.lh-app .lh-cv-dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #145fe8;
    margin-top: 11px;
    box-shadow: 0 0 0 5px #eaf2ff;
}

.lh-app .lh-cv-item-body {
    border: 1px solid #e4edf8;
    border-radius: 18px;
    background: linear-gradient(180deg, #fbfdff, #fff);
    padding: 14px 16px;
}

.lh-app .lh-cv-item-head {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    justify-content: space-between;
}

.lh-app .lh-cv-item-head strong {
    color: #101828;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 900;
}

.lh-app .lh-cv-item-head em {
    flex: 0 0 auto;
    border-radius: 999px;
    background: #edf5ff;
    color: #145fe8;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    padding: 6px 10px;
}

.lh-app .lh-cv-item-body p {
    margin: 7px 0 0;
    color: #536783;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

.lh-app .lh-cv-item-body small {
    display: block;
    margin-top: 8px;
    color: #667085;
    font-size: 12px;
    line-height: 1.45;
}

.lh-app .lh-cv-section-v2 .lh-muted-text {
    border: 1px dashed #d9e6f5;
    border-radius: 16px;
    background: #fbfdff;
    padding: 16px;
    color: #7184a2;
    font-weight: 700;
}

@media (max-width: 1100px) {
    .lh-app .lh-doctor-detail-hero-v2 {
        grid-template-columns:120px minmax(0, 1fr);
    }

    .lh-app .lh-doctor-hero-actions {
        grid-column: 1/-1;
        grid-template-columns:1fr 1fr;
        align-items: center
    }

    .lh-app .lh-soft-link {
        justify-self: start
    }

    .lh-app .lh-doctor-hero-photo-card {
        width: 118px;
        height: 118px;
        border-radius: 26px
    }

    .lh-app .lh-doctor-detail-layout-v2 {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-summary-card-v2 {
        position: static
    }
}

@media (max-width: 640px) {
    .lh-app .lh-doctor-detail-hero-v2 {
        grid-template-columns:1fr;
        padding: 20px
    }

    .lh-app .lh-doctor-hero-actions {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-hero-content h1 {
        font-size: 24px
    }

    .lh-app .lh-cv-item-head {
        display: block
    }

    .lh-app .lh-cv-item-head em {
        display: inline-flex;
        margin-top: 8px
    }

    .lh-app .lh-doctor-hero-photo-card {
        width: 108px;
        height: 108px
    }
}

/* Doctor profile professional redesign */
.lh-app .lh-doctor-detail-pro {
    max-width: 1540px;
    margin: 0 auto;
    padding-bottom: 44px;
}

.lh-app .lh-doctor-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
    color: #526780;
    text-decoration: none;
    font-size: 13px;
    font-weight: 850;
}

.lh-app .lh-doctor-back-link:hover {
    color: #145fe8;
    text-decoration: underline;
}

.lh-app .lh-doctor-pro-hero {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns:150px minmax(0, 1fr) 310px;
    gap: 26px;
    align-items: center;
    border: 1px solid #dbe8f7;
    border-radius: 28px;
    background: linear-gradient(135deg, #ffffff 0%, #f7fbff 48%, #edf6ff 100%);
    box-shadow: 0 24px 60px rgba(15, 46, 88, .08);
    padding: 28px;
}

.lh-app .lh-doctor-pro-hero:before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 82% 6%, rgba(20, 95, 232, .12), transparent 34%), radial-gradient(circle at 55% 120%, rgba(8, 122, 143, .08), transparent 36%);
    pointer-events: none;
}

.lh-app .lh-doctor-pro-hero > * {
    position: relative;
    z-index: 1;
}

.lh-app .lh-doctor-pro-photo-wrap {
    width: 142px;
    height: 142px;
    border-radius: 30px;
    overflow: hidden;
    background: #eaf6ff;
    border: 1px solid #d8e8f7;
    box-shadow: 0 18px 40px rgba(15, 46, 88, .14);
}

.lh-app .lh-doctor-pro-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.lh-app .lh-doctor-pro-kicker {
    display: inline-flex;
    align-items: center;
    height: 30px;
    border-radius: 999px;
    background: #eaf6ff;
    color: #087a8f;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .17em;
    text-transform: uppercase;
    padding: 0 15px;
    margin-bottom: 12px;
}

.lh-app .lh-doctor-pro-main h1 {
    margin: 0;
    color: #071426;
    font-size: 32px;
    line-height: 1.12;
    font-weight: 950;
    letter-spacing: -.035em;
}

.lh-app .lh-doctor-pro-main p {
    margin: 11px 0 0;
    color: #536783;
    font-size: 15px;
    font-weight: 800;
}

.lh-app .lh-doctor-pro-main p span {
    color: #9aabc0;
    margin: 0 3px;
}

.lh-app .lh-doctor-pro-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 18px;
}

.lh-app .lh-doctor-pro-badges span {
    display: inline-flex;
    align-items: center;
    height: 30px;
    border-radius: 999px;
    background: #eef5ff;
    color: #145fe8;
    font-size: 12px;
    font-weight: 900;
    padding: 0 13px;
}

.lh-app .lh-doctor-pro-badges span.success {
    background: #e9f8f2;
    color: #08725f;
}

.lh-app .lh-doctor-pro-badges span.slot {
    background: #e9f8f2;
    color: #08725f;
}

.lh-app .lh-doctor-pro-badges span.muted {
    background: #f3f6fa;
    color: #64748b;
}

.lh-app .lh-doctor-pro-actionbox {
    display: grid;
    gap: 10px;
    align-content: center;
}

.lh-app .lh-doctor-pro-appt, .lh-app .lh-doctor-pro-secondary {
    height: 48px;
    border-radius: 14px;
    border: 0;
    font-size: 14px;
    font-weight: 950;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
}

.lh-app .lh-doctor-pro-appt {
    color: #fff;
    background: linear-gradient(135deg, #145fe8, #4c7cf4);
    box-shadow: 0 18px 34px rgba(20, 95, 232, .25);
    cursor: pointer;
}

.lh-app .lh-doctor-pro-appt svg {
    width: 17px;
    height: 17px;
    fill: currentColor;
}

.lh-app .lh-doctor-pro-appt:disabled {
    opacity: .55;
    cursor: not-allowed;
    box-shadow: none;
}

.lh-app .lh-doctor-pro-secondary {
    background: #fff;
    color: #536783;
    border: 1px solid #dbe8f7;
    box-shadow: 0 10px 26px rgba(15, 46, 88, .06);
}

.lh-app .lh-doctor-pro-actionbox small {
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
    text-align: center;
    line-height: 1.45;
}

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

.lh-app .lh-doctor-pro-sidebar {
    display: grid;
    gap: 18px;
    position: sticky;
    top: 92px;
}

.lh-app .lh-doctor-pro-card {
    border: 1px solid #dbe8f7;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 22px 50px rgba(15, 46, 88, .07);
    padding: 22px;
}

.lh-app .lh-doctor-pro-card.compact {
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.lh-app .lh-card-title-icon {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
}

.lh-app .lh-card-title-icon span {
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: #eef5ff;
    color: #145fe8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.lh-app .lh-card-title-icon h2 {
    margin: 0;
    color: #0f172a;
    font-size: 18px;
    font-weight: 950;
    letter-spacing: -.015em;
}

.lh-app .lh-doctor-pro-dl {
    margin: 0;
    display: grid;
    gap: 0;
}

.lh-app .lh-doctor-pro-dl div {
    padding: 15px 0;
    border-top: 1px solid #edf2f8;
}

.lh-app .lh-doctor-pro-dl div:first-child {
    border-top: 0;
    padding-top: 0;
}

.lh-app .lh-doctor-pro-dl dt {
    margin: 0 0 7px;
    color: #7184a2;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .11em;
}

.lh-app .lh-doctor-pro-dl dd {
    margin: 0;
    color: #101828;
    font-size: 16px;
    font-weight: 950;
    line-height: 1.35;
}

.lh-app .lh-doctor-pro-note {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.6;
}

.lh-app .lh-doctor-pro-content {
    min-width: 0;
    display: grid;
    gap: 18px;
}

.lh-app .lh-doctor-cv-tabs {
    position: sticky;
    top: 68px;
    z-index: 2;
    display: flex;
    gap: 6px;
    overflow: auto;
    border: 1px solid #dbe8f7;
    border-radius: 18px;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(10px);
    box-shadow: 0 14px 36px rgba(15, 46, 88, .06);
    padding: 8px;
}

.lh-app .lh-doctor-cv-tabs a, .lh-app .lh-doctor-cv-tabs button {
    flex: 0 0 auto;
    text-decoration: none;
    border-radius: 13px;
    color: #536783;
    font-size: 12px;
    font-weight: 700;
    padding: 10px 14px;
}

.lh-app .lh-doctor-cv-tabs a:hover, .lh-app .lh-doctor-cv-tabs a.active, .lh-app .lh-doctor-cv-tabs button:hover, .lh-app .lh-doctor-cv-tabs button.active {
    background: #eef5ff;
    color: #145fe8;
}

.lh-app .lh-doctor-cv-card {
    border: 1px solid #dbe8f7;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 48px rgba(15, 46, 88, .065);
    padding: 22px;
    scroll-margin-top: 128px;
}

.lh-app .lh-doctor-cv-card.featured {
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.lh-app .lh-doctor-cv-head {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 18px;
}

.lh-app .lh-doctor-cv-head > span {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    background: #eef5ff;
    color: #145fe8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.lh-app .lh-doctor-cv-head h2 {
    margin: 0;
    color: #0f172a;
    font-size: 20px;
    font-weight: 950;
    letter-spacing: -.02em;
}

.lh-app .lh-doctor-cv-head p {
    margin: 4px 0 0;
    color: #7184a2;
    font-size: 12px;
    font-weight: 800;
}

.lh-app .lh-doctor-cv-list {
    display: grid;
    gap: 10px;
}

.lh-app .lh-doctor-cv-row {
    display: grid;
    grid-template-columns:112px minmax(0, 1fr);
    gap: 14px;
    align-items: stretch;
}

.lh-app .lh-doctor-cv-row time {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
    border-radius: 16px;
    background: #eef5ff;
    color: #145fe8;
    font-size: 12px;
    font-weight: 950;
    text-align: center;
    padding: 8px;
}

.lh-app .lh-doctor-cv-row-body {
    position: relative;
    border: 1px solid #e1ebf6;
    border-radius: 18px;
    background: linear-gradient(180deg, #fbfdff, #fff);
    padding: 15px 16px;
}

.lh-app .lh-doctor-cv-row-body:before {
    content: "";
    position: absolute;
    left: -22px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #145fe8;
    box-shadow: 0 0 0 5px #eaf2ff;
    transform: translateY(-50%);
}

.lh-app .lh-doctor-cv-row-body strong {
    display: block;
    color: #101828;
    font-size: 15px;
    font-weight: 950;
    line-height: 1.4;
}

.lh-app .lh-doctor-cv-row-body p {
    margin: 7px 0 0;
    color: #536783;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.45;
}

.lh-app .lh-doctor-cv-row-body small {
    display: block;
    margin-top: 8px;
    color: #667085;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
}

.lh-app .lh-doctor-pro-empty {
    margin: 0;
    border: 1px dashed #d9e6f5;
    border-radius: 18px;
    background: #fbfdff;
    color: #7184a2;
    font-size: 13px;
    font-weight: 800;
    padding: 18px;
}

@media (max-width: 1200px) {
    .lh-app .lh-doctor-pro-hero {
        grid-template-columns:130px minmax(0, 1fr)
    }

    .lh-app .lh-doctor-pro-actionbox {
        grid-column: 1/-1;
        grid-template-columns:1fr 1fr
    }

    .lh-app .lh-doctor-pro-grid {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-pro-sidebar {
        position: static;
        grid-template-columns:1fr 1fr
    }

    .lh-app .lh-doctor-cv-tabs {
        top: 60px
    }
}

@media (max-width: 760px) {
    .lh-app .lh-doctor-detail-pro {
        padding: 0 4px 32px
    }

    .lh-app .lh-doctor-pro-hero {
        grid-template-columns:1fr;
        padding: 22px
    }

    .lh-app .lh-doctor-pro-photo-wrap {
        width: 118px;
        height: 118px
    }

    .lh-app .lh-doctor-pro-main h1 {
        font-size: 25px
    }

    .lh-app .lh-doctor-pro-actionbox {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-pro-sidebar {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-cv-row {
        grid-template-columns:1fr
    }

    .lh-app .lh-doctor-cv-row time {
        justify-content: flex-start;
        min-height: 0
    }

    .lh-app .lh-doctor-cv-row-body:before {
        display: none
    }
}


/* Doctor detail fix12: lighter typography + working tab panels */
.lh-app .lh-doctor-detail-pro {
    font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

.lh-app .lh-doctor-back-link {
    font-weight: 650;
    color: #536783;
}

.lh-app .lh-doctor-pro-hero {
    border-radius: 26px;
    box-shadow: 0 18px 45px rgba(15, 46, 88, .07);
    padding: 30px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 58%, #edf6ff 100%);
}

.lh-app .lh-doctor-pro-kicker {
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .14em;
    height: 28px;
    color: #087a8f;
    background: #eaf8fb;
}

.lh-app .lh-doctor-pro-main h1 {
    font-size: 30px;
    font-weight: 760;
    letter-spacing: -.025em;
    color: #101828;
}

.lh-app .lh-doctor-pro-main p {
    font-size: 14px;
    font-weight: 560;
    color: #536783;
}

.lh-app .lh-doctor-pro-badges span {
    height: 28px;
    font-size: 12px;
    font-weight: 650;
}

.lh-app .lh-doctor-pro-appt, .lh-app .lh-doctor-pro-secondary {
    font-weight: 700;
    border-radius: 14px;
}

.lh-app .lh-doctor-pro-card {
    border-radius: 22px;
    box-shadow: 0 16px 36px rgba(15, 46, 88, .055);
}

.lh-app .lh-card-title-icon h2 {
    font-size: 17px;
    font-weight: 760;
    color: #101828;
}

.lh-app .lh-doctor-pro-dl dt {
    font-weight: 700;
    letter-spacing: .08em;
    color: #7184a2;
}

.lh-app .lh-doctor-pro-dl dd {
    font-size: 15px;
    font-weight: 650;
    color: #101828;
}

.lh-app .lh-doctor-pro-note {
    font-weight: 500;
}

.lh-app .lh-doctor-cv-tabs {
    gap: 8px;
    border-radius: 18px;
    padding: 8px;
    box-shadow: 0 12px 30px rgba(15, 46, 88, .05);
    position: sticky;
    top: 68px;
}

.lh-app .lh-doctor-cv-tabs button {
    appearance: none;
    border: 0;
    cursor: pointer;
    flex: 0 0 auto;
    text-decoration: none;
    border-radius: 13px;
    background: transparent;
    color: #536783;
    font-size: 12px;
    font-weight: 650;
    padding: 11px 15px;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}

.lh-app .lh-doctor-cv-tabs button:hover {
    background: #f4f8ff;
    color: #145fe8;
}

.lh-app .lh-doctor-cv-tabs button.active {
    background: #eaf2ff;
    color: #145fe8;
    box-shadow: inset 0 -2px 0 #145fe8;
}

.lh-app .lh-doctor-cv-card[hidden] {
    display: none !important;
}

.lh-app .lh-doctor-cv-card {
    border-radius: 24px;
    box-shadow: 0 16px 38px rgba(15, 46, 88, .055);
    animation: lhCvFade .18s ease both;
}

@keyframes lhCvFade {
    from {
        opacity: 0;
        transform: translateY(6px)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.lh-app .lh-doctor-cv-head h2 {
    font-size: 20px;
    font-weight: 760;
    color: #101828;
}

.lh-app .lh-doctor-cv-head p {
    font-weight: 550;
    color: #7184a2;
}

.lh-app .lh-doctor-cv-row time {
    font-weight: 700;
    border-radius: 14px;
    background: #eef5ff;
}

.lh-app .lh-doctor-cv-row-body strong {
    font-size: 15px;
    font-weight: 650;
    color: #101828;
}

.lh-app .lh-doctor-cv-row-body p {
    font-weight: 520;
    color: #475467;
}

.lh-app .lh-doctor-cv-row-body small {
    font-weight: 500;
    color: #667085;
}

/* Doctor appointment notes in slot selection */
.appointment-modal .doctor-appointment-notes {
    display: grid;
    gap: 12px;
    padding: 16px 18px;
    border: 1px solid #bfdbfe;
    border-radius: 20px;
    background: linear-gradient(135deg, #eff6ff 0%, #ffffff 55%, #f8fafc 100%);
    box-shadow: 0 14px 34px rgba(37, 99, 235, .10);
}

.appointment-modal .doctor-appointment-notes-head {
    display: flex;
    align-items: center;
    gap: 12px;
}

.appointment-modal .doctor-appointment-notes-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #1d4ed8;
    font-weight: 700;
    background: #dbeafe;
}

.appointment-modal .doctor-appointment-notes strong,
.appointment-modal .doctor-appointment-notes small {
    display: block;
}

.appointment-modal .doctor-appointment-notes strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 700;
}

.appointment-modal .doctor-appointment-notes small {
    margin-top: 2px;
    color: #64748b;
    font-size: 12px;
    font-weight: 500;
}

.appointment-modal .doctor-appointment-notes ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.appointment-modal .doctor-appointment-notes li {
    position: relative;
    padding: 10px 12px 10px 34px;
    border: 1px solid #dbeafe;
    border-radius: 14px;
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.45;
    background: rgba(255, 255, 255, .82);
}

.appointment-modal .doctor-appointment-notes li::before {
    content: "";
    position: absolute;
    left: 14px;
    top: 17px;
    width: 7px;
    height: 7px;
    border-radius: 99px;
    background: #2563eb;
    box-shadow: 0 0 0 4px #dbeafe;
}

/* Randevularım - süresi dolan değerlendirme butonu görünüm düzeltmesi */
.lh-app .lh-survey-expired {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 210px;
    max-width: 250px;
    padding: 9px 13px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #f8fafc;
    color: #475569;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
    white-space: nowrap;
}

.lh-app .lh-survey-expired-icon {
    width: 26px;
    height: 26px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 26px;
    border-radius: 999px;
    background: #eef2f7;
    color: #64748b;
    font-size: 13px;
}

.lh-app .lh-survey-expired-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    line-height: 1.1;
    text-align: left;
}

.lh-app .lh-survey-expired-copy strong {
    color: #334155;
    font-size: 12px;
    font-weight: 850;
}

.lh-app .lh-survey-expired-copy small {
    margin-top: 3px;
    color: #64748b;
    font-size: 10px;
    font-weight: 700;
}

@media (max-width: 720px) {
    .lh-app .lh-survey-expired {
        grid-column: 1 / -1 !important;
        width: 100%;
        min-width: 0;
        max-width: none;
        justify-content: center;
        margin-top: 4px;
    }
}

/* Online görüşme modalı */
.lh-top-cta[type="button"] {
    font-family: inherit;
    cursor: pointer
}

.online-consultation-dialog {
    max-width: 1180px;
    width: min(1180px, calc(100vw - 32px))
}

.online-consultation-body {
    display: grid;
    grid-template-columns:minmax(0, 1.1fr) minmax(360px, .9fr);
    gap: 18px;
    align-items: start
}

.online-consultation-body > .appointment-step-panel {
    display: block;
    opacity: 1;
    transform: none;
    position: static;
    visibility: visible
}

.online-consultation-layout {
    display: grid;
    grid-template-columns:280px minmax(0, 1fr);
    gap: 16px;
    min-height: 430px
}

.online-branch-panel, .online-doctor-panel, .online-slot-panel {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    padding: 14px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75)
}

.online-branch-list {
    display: grid;
    gap: 10px;
    margin-top: 12px;
    max-height: 420px;
    overflow: auto;
    padding-right: 4px
}

.online-branch-card {
    width: 100%;
    border: 1px solid #e2e8f0;
    background: #fff;
    border-radius: 16px;
    padding: 13px 14px;
    text-align: left;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    cursor: pointer;
    transition: .18s ease;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04)
}

.online-branch-card strong {
    font-size: 13px;
    color: #0f172a;
    font-weight: 800;
    line-height: 1.25
}

.online-branch-card small {
    font-size: 11px;
    color: #64748b;
    white-space: nowrap;
    background: #f1f5f9;
    border-radius: 999px;
    padding: 5px 8px
}

.online-branch-card:hover, .online-branch-card.selected {
    border-color: #2563eb;
    background: #eff6ff;
    box-shadow: 0 12px 28px rgba(37, 99, 235, .12)
}

.online-branch-card.selected strong {
    color: #1d4ed8
}

.online-slot-panel {
    min-height: 520px
}

#onlineDoctorList {
    max-height: 510px;
    overflow: auto;
    padding-right: 4px
}

#onlineSlotGroups {
    max-height: 565px;
    overflow: auto;
    padding-right: 4px
}

@media (max-width: 1100px) {
    .online-consultation-body {
        grid-template-columns:1fr
    }

    .online-consultation-layout {
        grid-template-columns:1fr
    }

    .online-branch-list {
        max-height: 230px
    }

    .online-slot-panel {
        min-height: auto
    }
}


/* Online görüşme modal ve topbar görsel iyileştirme */
.lh-top-cta.green[data-online-consultation-open] {
    min-width: 174px;
    min-height: 42px;
    border: 1px solid rgba(16, 185, 129, .45);
    border-radius: 14px;
    color: #047857;
    background: linear-gradient(135deg, #ecfdf5 0%, #ffffff 52%, #d1fae5 100%);
    font-weight: 900;
    box-shadow: 0 14px 30px rgba(16, 185, 129, .14), inset 0 1px 0 rgba(255, 255, 255, .9);
    position: relative;
    overflow: hidden;
}

.lh-top-cta.green[data-online-consultation-open]:before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    box-shadow: 0 0 0 6px rgba(16, 185, 129, .12);
}

.lh-top-cta.green[data-online-consultation-open]:hover {
    transform: translateY(-1px);
    border-color: #10b981;
    box-shadow: 0 18px 34px rgba(16, 185, 129, .22), inset 0 1px 0 rgba(255, 255, 255, .95);
}

.online-consultation-dialog .appointment-head {
    background: linear-gradient(135deg, #f0f9ff, #ffffff 45%, #ecfdf5);
    border-bottom: 1px solid #e2e8f0;
}

.online-consultation-dialog .appointment-head p {
    color: #059669;
    font-weight: 900;
}

.online-doctor-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 3px
}

.online-doctor-topline em {
    margin: 0 !important
}

.online-doctor-topline b {
    font-size: 10px;
    font-weight: 900;
    color: #047857;
    background: #dcfce7;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    padding: 4px 7px;
    line-height: 1
}

#onlineDoctorList .doctor-card {
    border-radius: 18px;
    align-items: center;
    background: linear-gradient(180deg, #fff, #f8fbff);
    border-color: #dbe7f5;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .06)
}

#onlineDoctorList .doctor-card:hover, #onlineDoctorList .doctor-card.selected {
    border-color: #0ea5e9;
    background: linear-gradient(180deg, #eff6ff, #fff);
    box-shadow: 0 18px 38px rgba(14, 165, 233, .16)
}

#onlineDoctorList .doctor-card-avatar {
    box-shadow: 0 12px 24px rgba(37, 99, 235, .16)
}

#onlineDoctorList .doctor-card-action {
    border-radius: 14px;
    background: #eef6ff;
    color: #1d4ed8;
    font-weight: 900;
    padding: 9px 11px;
    white-space: normal;
    text-align: center;
    line-height: 1.2
}

#onlineDoctorList .doctor-card.selected .doctor-card-action {
    background: #1d4ed8;
    color: #fff
}

/* Online görüşme modalı - response doctorid sonrası anlaşılır kompakt tasarım */
.online-consultation-dialog {
    max-width: 1260px !important;
    width: min(1260px, calc(100vw - 40px)) !important;
    border-radius: 24px !important;
    overflow: hidden;
}

.online-modal-head {
    padding: 24px 28px !important
}

.online-modal-head h2 {
    font-size: 28px !important;
    margin: 4px 0 4px !important
}

.online-modal-head span {
    display: block;
    color: #64748b;
    font-size: 14px;
    font-weight: 600
}

.online-consultation-body {
    grid-template-columns:minmax(620px, 1fr) 500px !important;
    gap: 20px !important;
    padding: 20px 24px 24px !important;
}

.online-picker-panel, .online-slot-panel {
    border-radius: 22px !important;
    border: 1px solid #dbe7f5 !important;
    background: #fff !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, .06) !important;
}

.online-panel-title {
    margin-bottom: 16px !important
}

.online-panel-title h3 {
    font-size: 20px !important
}

.online-panel-title p {
    font-size: 13px !important;
    max-width: 520px
}

.online-consultation-layout {
    grid-template-columns:260px minmax(0, 1fr) !important;
    gap: 14px !important;
    min-height: 470px !important;
}

.online-branch-panel, .online-doctor-panel, .online-slot-panel {
    background: linear-gradient(180deg, #f8fbff, #fff) !important;
    border: 1px solid #dbe7f5 !important;
    border-radius: 20px !important;
    padding: 14px !important;
    box-shadow: none !important;
}

.online-column-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin: 2px 0 12px
}

.online-column-head strong {
    display: block;
    color: #0f172a;
    font-size: 15px;
    font-weight: 900
}

.online-column-head small {
    display: block;
    color: #64748b;
    font-size: 11px;
    font-weight: 700;
    text-align: right;
    line-height: 1.25
}

.online-branch-list {
    max-height: 395px !important
}

.online-branch-card {
    min-height: 66px !important;
    padding: 12px !important;
    border-radius: 15px !important
}

.online-branch-card span {
    min-width: 0;
    display: grid;
    gap: 4px
}

.online-branch-card em {
    color: #64748b;
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2
}

.online-branch-card.selected {
    background: linear-gradient(135deg, #eff6ff, #fff) !important;
    border-color: #2563eb !important
}

#onlineDoctorList {
    display: grid !important;
    grid-template-columns:1fr !important;
    gap: 10px !important;
    max-height: 395px !important;
    overflow: auto !important;
    padding: 0 4px 0 0 !important;
}

#onlineDoctorList .doctor-card {
    min-height: 118px !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns:58px minmax(0, 1fr) 118px !important;
    grid-template-rows:auto !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 14px !important;
    border-radius: 18px !important;
    overflow: visible !important;
    background: #fff !important;
    border: 1px solid #dbe7f5 !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, .05) !important;
}

#onlineDoctorList .doctor-card:hover,
#onlineDoctorList .doctor-card.selected {
    transform: none !important;
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10), 0 14px 30px rgba(37, 99, 235, .12) !important;
    background: linear-gradient(135deg, #eff6ff, #fff) !important;
}

.online-doctor-avatar {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #fff;
    background: linear-gradient(135deg, #2563eb, #0ea5e9);
    font-size: 18px;
    font-weight: 950;
    box-shadow: 0 12px 24px rgba(37, 99, 235, .20);
}

#onlineDoctorList .doctor-card-content {
    display: grid !important;
    gap: 6px !important;
    padding: 0 !important;
    min-width: 0 !important
}

#onlineDoctorList .doctor-card-content strong {
    font-size: 17px !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    white-space: normal !important
}

#onlineDoctorList .doctor-card-content small {
    font-size: 13px !important;
    color: #475569 !important;
    font-weight: 750 !important
}

#onlineDoctorList .doctor-card-tags {
    gap: 6px !important;
    margin-top: 0 !important
}

#onlineDoctorList .doctor-card-tags i {
    font-size: 11px !important;
    padding: 5px 8px !important;
    background: #f8fafc !important;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

#onlineDoctorList .doctor-card-action {
    grid-column: auto !important;
    min-height: 42px !important;
    border-top: 0 !important;
    border-radius: 14px !important;
    padding: 0 12px !important;
    justify-content: center !important;
    gap: 8px !important;
    background: #eef6ff !important;
    color: #1d4ed8 !important;
    font-size: 12px !important;
    text-align: center !important;
}

#onlineDoctorList .doctor-card.selected .doctor-card-action {
    background: #2563eb !important;
    color: #fff !important
}

#onlineDoctorList .doctor-card-check {
    width: 22px !important;
    height: 22px !important;
    font-size: 12px !important;
    opacity: .35 !important;
    transform: none !important
}

#onlineDoctorList .doctor-card.selected .doctor-card-check {
    opacity: 1 !important;
    background: #fff !important;
    color: #2563eb !important
}

.online-slot-panel {
    min-height: 560px !important
}

#onlineSelectedDoctor:empty {
    display: none
}

#onlineSelectedDoctor {
    margin: 4px 0 14px !important;
}

.online-selected-initials {
    display: grid !important;
    place-items: center !important;
    background: linear-gradient(135deg, #2563eb, #0ea5e9) !important;
    color: #fff !important;
    font-weight: 950 !important;
    font-size: 16px !important
}

#onlineSelectedDoctor small {
    display: block;
    color: #2563eb;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .03em;
    margin-bottom: 3px
}

#onlineSlotGroups {
    max-height: 440px !important
}

.slot-summary {
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 10px !important
}

.slot-day {
    border-radius: 18px !important
}

.slot-times {
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important
}

.lh-top-cta.green[data-online-consultation-open] {
    min-width: 170px !important;
    border-radius: 16px !important;
    color: #065f46 !important;
    background: linear-gradient(135deg, #ecfdf5, #fff 45%, #d1fae5) !important;
    border-color: #86efac !important;
}

@media (max-width: 1180px) {
    .online-consultation-body {
        grid-template-columns:1fr !important
    }

    .online-consultation-layout {
        grid-template-columns:1fr !important
    }

    #onlineDoctorList, .online-branch-list, #onlineSlotGroups {
        max-height: 300px !important
    }
}

@media (max-width: 720px) {
    .online-consultation-dialog {
        width: calc(100vw - 18px) !important
    }

    .online-consultation-body {
        padding: 14px !important
    }

    #onlineDoctorList .doctor-card {
        grid-template-columns:52px minmax(0, 1fr) !important
    }

    #onlineDoctorList .doctor-card-action {
        grid-column: 1 / -1 !important;
        width: 100% !important
    }

    .slot-times {
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important
    }
}

/* Online görüşme modalı - flat profesyonel tasarım */
.online-consult-flat {
    width: min(1120px, calc(100vw - 40px)) !important;
    max-width: 1120px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .28) !important;
}

.online-consult-flat .online-modal-head {
    padding: 24px 28px !important;
    background: #fff !important;
    border-bottom: 1px solid #e5eaf2 !important;
}

.online-consult-flat .online-modal-head p {
    margin: 0 0 8px !important;
    color: #047857 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
    text-transform: none !important;
}

.online-consult-flat .online-modal-head h2 {
    margin: 0 0 6px !important;
    color: #07112a !important;
    font-size: 26px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}

.online-consult-flat .online-modal-head span {
    color: #52637a !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.online-consult-flat .appointment-close {
    width: 40px !important;
    height: 40px !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    border: 1px solid #edf2f7 !important;
    color: #334155 !important;
}

.online-consult-flat-body {
    display: grid !important;
    grid-template-columns:1fr 1.08fr !important;
    gap: 0 !important;
    padding: 0 !important;
    min-height: 600px !important;
}

.online-doctor-select-pane, .online-slot-select-pane {
    min-width: 0 !important;
    background: #fff !important;
    padding: 24px 28px !important;
    border: 0 !important;
    box-shadow: none !important;
}

.online-doctor-select-pane {
    border-right: 1px solid #e5eaf2 !important;
}

.online-pane-title {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 5px !important;
}

.online-pane-title h3 {
    margin: 0 0 4px !important;
    color: #07112a !important;
    font-size: 17px !important;
    font-weight: 900 !important;
}

.online-pane-title p {
    margin: 0 !important;
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

.online-refresh-flat {
    height: 38px !important;
    border-radius: 10px !important;
    border: 1px solid #dbe4f0 !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    padding: 0 14px !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.online-refresh-flat:hover {
    background: #f8fafc !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

.online-search-row {
    height: 42px !important;
    border: 1px solid #d8e2ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 14px !important;
    margin-bottom: 14px !important;
}

.online-search-row svg {
    width: 18px !important;
    height: 18px !important;
    color: #8aa0bd !important;
}

.online-search-row input {
    width: 100% !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #0f172a !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.online-search-row input::placeholder {
    color: #94a3b8 !important;
}

.online-doctor-list-flat {
    display: grid !important;
    gap: 12px !important;
    max-height: 420px !important;
    overflow: auto !important;
    padding-right: 4px !important;
}

.online-doctor-card-flat {
    width: 100% !important;
    min-height: 102px !important;
    border: 1px solid #dbe4f0 !important;
    background: #fff !important;
    border-radius: 14px !important;
    padding: 14px !important;
    display: grid !important;
    grid-template-columns:74px 1fr 24px !important;
    gap: 14px !important;
    align-items: center !important;
    text-align: left !important;
    cursor: pointer !important;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease !important;
    box-shadow: none !important;
}

.online-doctor-card-flat:hover {
    border-color: #93c5fd !important;
    background: #fbfdff !important;
}

.online-doctor-card-flat.selected {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 1px #2563eb inset !important;
    background: #fff !important;
}

.online-doctor-photo-wrap {
    width: 64px !important;
    height: 64px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: #edf4ff !important;
    display: block !important;
}

.online-doctor-photo, .online-selected-photo {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.online-doctor-info-flat {
    display: grid !important;
    gap: 3px !important;
    min-width: 0 !important;
}

.online-doctor-info-flat strong {
    font-size: 15px !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.online-doctor-info-flat small, .online-doctor-info-flat em, .online-doctor-info-flat i {
    font-style: normal !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    color: #64748b !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.online-doctor-info-flat i {
    color: #2563eb !important;
    font-weight: 800 !important;
}

.online-radio-dot {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    border: 2px solid #94a3b8 !important;
    display: block !important;
    position: relative !important;
}

.online-doctor-card-flat.selected .online-radio-dot {
    border-color: #2563eb !important;
    background: #2563eb !important;
    box-shadow: inset 0 0 0 4px #fff !important;
}

.online-slot-select-pane {
    background: #fff !important;
}

.online-selected-doctor-flat {
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.online-selected-card-flat {
    display: grid !important;
    grid-template-columns:76px 1fr !important;
    gap: 16px !important;
    align-items: center !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 14px !important;
    background: #fff !important;
    padding: 16px !important;
    min-height: 104px !important;
    width: 100%;
}

.online-selected-photo {
    width: 68px !important;
    height: 68px !important;
    border-radius: 14px !important;
    background: #edf4ff !important;
}

.online-selected-card-flat strong {
    display: block !important;
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    margin-bottom: 5px !important;
}

.online-selected-card-flat span {
    display: block !important;
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 3px !important;
}

.online-selected-card-flat small {
    display: block !important;
    color: #2563eb !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.online-empty-state {
    border: 1px dashed #cbd5e1 !important;
    border-radius: 14px !important;
    padding: 28px !important;
    color: #64748b !important;
    background: #f8fafc !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.online-slot-headline {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 18px 0 12px !important;
}

.online-slot-headline strong {
    display: block !important;
    color: #07112a !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    margin-bottom: 4px !important;
}

.online-slot-headline span {
    display: block !important;
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 650 !important;
}

.online-slot-groups-flat {
    max-height: 300px !important;
    overflow: auto !important;
    padding-right: 4px !important;
}

.online-slot-groups-flat .slot-summary {
    display: none !important;
}

.online-slot-day-flat {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 0 14px !important;
    box-shadow: none !important;
}

.online-slot-day-flat header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.online-slot-day-flat header strong {
    color: #0f172a !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}

.online-slot-day-flat header small {
    display: block !important;
    color: #64748b !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    margin-top: 3px !important;
}

.online-slot-day-flat header span {
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #2563eb !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    padding: 6px 10px !important;
}

.online-slot-times-flat {
    display: grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.online-slot-time-flat {
    height: 40px !important;
    border-radius: 9px !important;
    border: 1px solid #dbe4f0 !important;
    background: #fff !important;
    color: #26354d !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    box-shadow: none !important;
    transition: .15s ease !important;
}

.online-slot-time-flat:hover {
    border-color: #93c5fd !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
}

.online-slot-time-flat.selected {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #fff !important;
    box-shadow: 0 8px 18px rgba(37, 99, 235, .22) !important;
}

.online-info-box {
    display: grid !important;
    grid-template-columns:32px 1fr !important;
    gap: 12px !important;
    align-items: center !important;
    background: #eff6ff !important;
    border: 1px solid #dbeafe !important;
    border-radius: 12px !important;
    padding: 14px !important;
    margin-top: 12px !important;
}

.online-info-box span {
    width: 32px !important;
    height: 32px !important;
    border-radius: 10px !important;
    background: #dbeafe !important;
    color: #2563eb !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 900 !important;
}

.online-info-box p {
    margin: 0 !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.4 !important;
}

.online-info-box b {
    color: #0f172a !important;
}

.online-modal-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    border-top: 1px solid #eef2f7 !important;
    margin: 18px -28px -24px !important;
    padding: 16px 28px !important;
    background: #fff !important;
}

.online-btn {
    height: 42px !important;
    border-radius: 10px !important;
    padding: 0 22px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

.online-btn.secondary {
    background: #fff !important;
    border: 1px solid #dbe4f0 !important;
    color: #334155 !important;
}

.online-btn.primary {
    background: #2563eb !important;
    border: 1px solid #2563eb !important;
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(37, 99, 235, .24) !important;
}

.online-btn.primary:hover {
    background: #1d4ed8 !important;
}

.online-consult-flat .hospital-empty {
    border: 1px dashed #cbd5e1 !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

.online-consult-flat .doctor-appointment-notes {
    border-radius: 12px !important;
    margin-bottom: 14px !important;
}

@media (max-width: 1050px) {
    .online-consult-flat-body {
        grid-template-columns:1fr !important
    }

    .online-doctor-select-pane {
        border-right: 0 !important;
        border-bottom: 1px solid #e5eaf2 !important
    }

    .online-doctor-list-flat {
        max-height: 300px !important
    }

    .online-slot-groups-flat {
        max-height: 330px !important
    }
}

@media (max-width: 640px) {
    .online-consult-flat {
        width: calc(100vw - 18px) !important
    }

    .online-doctor-select-pane, .online-slot-select-pane {
        padding: 18px !important
    }

    .online-slot-times-flat {
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important
    }

    .online-doctor-card-flat {
        grid-template-columns:62px 1fr 22px !important;
        padding: 12px !important
    }

    .online-doctor-photo-wrap {
        width: 56px !important;
        height: 56px !important
    }

    .online-modal-actions {
        margin: 16px -18px -18px !important;
        padding: 14px 18px !important
    }

    .online-btn {
        flex: 1 !important
    }
}

.online-modal-actions {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 20 !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-shadow: 0 -8px 24px rgba(15, 23, 42, .06) !important;
}

.online-footer-info {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    max-width: 70% !important;
}

.online-footer-info span {
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
    background: #dbeafe !important;
    color: #2563eb !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 900 !important;
    flex-shrink: 0 !important;
}

.online-footer-info p {
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    color: #475569 !important;
    line-height: 1.4 !important;
}

.online-footer-info b {
    color: #0f172a !important;
}

@media (max-width: 640px) {
    .online-modal-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .online-footer-info {
        max-width: 100% !important;
    }
}

/* Online görüşme modalı - profesyonel final düzenleme */
#onlineConsultationModal.appointment-modal {
    background: rgba(15, 23, 42, .62) !important;
    backdrop-filter: blur(10px) !important;
}

.online-consult-flat {
    width: min(1160px, calc(100vw - 44px)) !important;
    max-height: calc(100vh - 42px) !important;
    display: flex !important;
    flex-direction: column !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    border-radius: 24px !important;
    background: #f8fafc !important;
    box-shadow: 0 34px 110px rgba(2, 6, 23, .36) !important;
}

.online-modal-head-pro {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 22px !important;
    padding: 22px 28px !important;
    background: linear-gradient(135deg, #ffffff 0%, #f8fbff 56%, #eef6ff 100%) !important;
    border-bottom: 1px solid #dbe5f1 !important;
}

.online-modal-title-wrap {
    min-width: 0 !important;
}

.online-modal-kicker {
    display: inline-flex !important;
    align-items: center !important;
    height: 26px !important;
    padding: 0 10px !important;
    margin: 0 0 9px !important;
    border-radius: 999px !important;
    background: #ecfdf5 !important;
    border: 1px solid #bbf7d0 !important;
    color: #047857 !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    letter-spacing: .035em !important;
    text-transform: uppercase !important;
}

.online-modal-head-pro h2 {
    margin: 0 0 7px !important;
    color: #07112a !important;
    font-size: 25px !important;
    font-weight: 950 !important;
    letter-spacing: -.025em !important;
}

.online-modal-head-pro p {
    max-width: 660px !important;
    margin: 0 !important;
    color: #53657c !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 650 !important;
}

.online-modal-head-meta {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-left: auto !important;
    padding: 10px 12px !important;
    border: 1px solid #dbeafe !important;
    background: rgba(255, 255, 255, .82) !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 30px rgba(37, 99, 235, .08) !important;
    white-space: nowrap !important;
}

.online-modal-head-meta span {
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    display: grid !important;
    place-items: center !important;
    background: #2563eb !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}

.online-modal-head-meta em {
    font-style: normal !important;
    color: #334155 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
}

.online-modal-head-meta b {
    width: 20px !important;
    height: 1px !important;
    background: #bfdbfe !important;
    display: block !important;
}

.online-consult-flat .appointment-close {
    flex: 0 0 auto !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 14px !important;
    background: #fff !important;
    border: 1px solid #dbe4f0 !important;
    color: #334155 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    box-shadow: 0 10px 22px rgba(15, 23, 42, .06) !important;
}

.online-consult-flat-body {
    flex: 1 !important;
    min-height: 0 !important;
    background: #f8fafc !important;
}

.online-doctor-select-pane, .online-slot-select-pane {
    padding: 22px 24px !important;
    background: #f8fafc !important;
}

.online-doctor-select-pane {
    border-right: 1px solid #dbe5f1 !important;
}

.online-pane-title h3 {
    font-size: 16px !important;
    letter-spacing: -.01em !important;
}

.online-pane-title p {
    font-size: 12px !important;
    color: #64748b !important;
}

.online-refresh-flat {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    height: 36px !important;
    border-radius: 12px !important;
    background: #fff !important;
    border-color: #dbe4f0 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .04) !important;
}

.online-refresh-flat span {
    font-size: 15px !important;
    line-height: 1 !important;
}

.online-search-row {
    height: 44px !important;
    border-radius: 14px !important;
    border-color: #dbe4f0 !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .035) !important;
}

.online-doctor-list-flat {
    max-height: 430px !important;
    gap: 10px !important;
    padding: 2px 5px 8px 0 !important;
}

.online-doctor-card-flat {
    min-height: 94px !important;
    grid-template-columns:66px minmax(0, 1fr) 22px !important;
    border-radius: 18px !important;
    border-color: #e0e8f3 !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .045) !important;
}

.online-doctor-card-flat:hover {
    transform: translateY(-1px) !important;
    border-color: #bfdbfe !important;
    box-shadow: 0 16px 32px rgba(37, 99, 235, .10) !important;
}

.online-doctor-card-flat.selected {
    background: linear-gradient(135deg, #ffffff, #eff6ff) !important;
    border-color: #2563eb !important;
    box-shadow: 0 0 0 1px #2563eb inset, 0 16px 34px rgba(37, 99, 235, .16) !important;
}

.online-doctor-photo-wrap, .online-doctor-photo, .online-selected-photo {
    border-radius: 16px !important;
}

.online-doctor-photo-wrap {
    width: 60px !important;
    height: 60px !important;
    border: 1px solid #e2e8f0 !important;
    background: #eef6ff !important;
}

.online-doctor-info-flat strong {
    font-size: 14px !important;
}

.online-doctor-info-flat small, .online-doctor-info-flat em, .online-doctor-info-flat i {
    font-size: 11px !important;
}

.online-doctor-info-flat i {
    display: none !important;
}

.online-selected-card-flat {
    border-radius: 18px !important;
    border-color: #bfdbfe !important;
    background: linear-gradient(135deg, #fff, #f0f7ff) !important;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .09) !important;
}

.online-selected-card-flat strong {
    font-size: 15px !important;
}

.online-selected-card-flat span, .online-selected-card-flat small {
    font-size: 12px !important;
}

.online-empty-state, .online-consult-flat .hospital-empty {
    border-radius: 18px !important;
    background: #fff !important;
    border-color: #cbd5e1 !important;
    color: #64748b !important;
}

.online-slot-headline {
    padding: 0 2px !important;
    margin: 16px 0 10px !important;
}

.online-slot-headline strong {
    font-size: 16px !important;
}

.online-slot-groups-flat {
    max-height: 318px !important;
    padding: 2px 5px 10px 0 !important;
}

.online-slot-day-flat {
    padding: 14px !important;
    margin-bottom: 12px !important;
    border: 1px solid #e0e8f3 !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04) !important;
}

.online-slot-day-flat header span {
    background: #f1f5f9 !important;
    color: #334155 !important;
}

.online-slot-times-flat {
    gap: 8px !important;
}

.online-slot-time-flat {
    height: 38px !important;
    border-radius: 12px !important;
    background: #f8fafc !important;
    border-color: #dbe4f0 !important;
    color: #26354d !important;
    box-shadow: none !important;
}

.online-slot-time-flat:hover {
    background: #eff6ff !important;
}

.online-slot-time-flat.selected {
    background: #0f766e !important;
    border-color: #0f766e !important;
    box-shadow: 0 10px 22px rgba(15, 118, 110, .20) !important;
}

.online-consult-flat .doctor-appointment-notes {
    border: 1px solid #fde68a !important;
    background: #fffbeb !important;
    border-radius: 16px !important;
    box-shadow: none !important;
}

.online-modal-footer-pro {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 30 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin: 18px -24px -22px !important;
    padding: 16px 24px !important;
    background: rgba(255, 255, 255, .96) !important;
    border-top: 1px solid #dbe5f1 !important;
    box-shadow: 0 -14px 34px rgba(15, 23, 42, .08) !important;
    backdrop-filter: blur(10px) !important;
}

.online-footer-info {
    max-width: none !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
}

.online-footer-info span {
    width: 34px !important;
    height: 34px !important;
    border-radius: 12px !important;
    background: #eef6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #2563eb !important;
    font-family: Georgia, serif !important;
    font-size: 15px !important;
}

.online-footer-info p {
    font-size: 12px !important;
    color: #475569 !important;
    line-height: 1.4 !important;
}

.online-footer-buttons {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-shrink: 0 !important;
}

.online-btn {
    min-width: 112px !important;
    height: 42px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    letter-spacing: .005em !important;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease !important;
}

.online-btn:hover {
    transform: translateY(-1px) !important;
}

.online-btn.secondary {
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    color: #334155 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05) !important;
}

.online-btn.primary {
    min-width: 132px !important;
    background: linear-gradient(135deg, #0f766e, #2563eb) !important;
    border: 0 !important;
    color: #fff !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

.online-btn.primary span {
    margin-left: 5px !important;
}

@media (max-width: 1050px) {
    .online-modal-head-meta {
        display: none !important;
    }

    .online-consult-flat-body {
        overflow: auto !important;
    }

    .online-doctor-select-pane {
        border-right: 0 !important;
        border-bottom: 1px solid #dbe5f1 !important;
    }

    .online-doctor-list-flat, .online-slot-groups-flat {
        max-height: 320px !important;
    }
}

@media (max-width: 640px) {
    .online-consult-flat {
        width: calc(100vw - 16px) !important;
        max-height: calc(100vh - 18px) !important;
        border-radius: 20px !important;
    }

    .online-modal-head-pro {
        padding: 18px !important;
        align-items: flex-start !important;
    }

    .online-modal-head-pro h2 {
        font-size: 21px !important;
    }

    .online-doctor-select-pane, .online-slot-select-pane {
        padding: 16px !important;
    }

    .online-pane-title {
        flex-direction: column !important;
        gap: 10px !important;
    }

    .online-refresh-flat {
        width: 100% !important;
        justify-content: center !important;
    }

    .online-doctor-card-flat {
        grid-template-columns:58px minmax(0, 1fr) 20px !important;
        gap: 11px !important;
    }

    .online-doctor-photo-wrap {
        width: 54px !important;
        height: 54px !important;
    }

    .online-slot-times-flat {
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }

    .online-modal-footer-pro {
        margin: 16px -16px -16px !important;
        padding: 14px 16px !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .online-footer-buttons {
        width: 100% !important;
    }

    .online-footer-buttons .online-btn {
        flex: 1 !important;
        min-width: 0 !important;
    }
}

/* Online görüşme modalı - footer tam genişlik ve sadece saat listesi scroll */
.online-consult-flat {
    overflow: hidden !important;
}

.online-consult-flat-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.online-doctor-select-pane,
.online-slot-select-pane {
    min-height: 0 !important;
    overflow: hidden !important;
}

.online-doctor-select-pane {
    display: flex !important;
    flex-direction: column !important;
}

.online-slot-select-pane {
    display: flex !important;
    flex-direction: column !important;
}

.online-doctor-list-flat {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: auto !important;
}

.online-slot-groups-flat {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 2px 6px 12px 0 !important;
    scrollbar-gutter: stable !important;
}

.online-modal-footer-full {
    position: relative !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 18px 28px !important;
    border-top: 1px solid #dbe5f1 !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), #fff) !important;
    box-shadow: 0 -12px 28px rgba(15, 23, 42, .07) !important;
    border-radius: 0 !important;
}

.online-modal-footer-full .online-footer-info {
    max-width: 620px !important;
}

.online-modal-footer-full .online-footer-buttons {
    margin-left: auto !important;
}

@media (max-width: 1050px) {
    .online-consult-flat-body {
        overflow: hidden !important;
    }

    .online-doctor-list-flat {
        max-height: 220px !important;
    }

    .online-slot-groups-flat {
        max-height: none !important;
    }
}

@media (max-width: 640px) {
    .online-modal-footer-full {
        padding: 14px 16px !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .online-modal-footer-full .online-footer-info {
        max-width: 100% !important;
    }

    .online-modal-footer-full .online-footer-buttons {
        width: 100% !important;
        margin-left: 0 !important;
    }
}


/* Online görüşme modalı - temiz modern görünüm / ince font / ID kaldırma */
#onlineConsultationModal,
#onlineConsultationModal * {
    font-weight: 500 !important;
}

#onlineConsultationModal strong,
#onlineConsultationModal h2,
#onlineConsultationModal h3,
#onlineConsultationModal .online-btn,
#onlineConsultationModal .online-modal-head-meta em,
#onlineConsultationModal .online-modal-head-meta span {
    font-weight: 600 !important;
}

#onlineConsultationModal b {
    font-weight: 700 !important;
}

#onlineConsultationModal.appointment-modal {
    background: rgba(15, 23, 42, .58) !important;
    backdrop-filter: blur(9px) !important;
}

.online-consult-flat {
    width: min(1180px, calc(100vw - 42px)) !important;
    height: min(830px, calc(100vh - 34px)) !important;
    max-height: calc(100vh - 34px) !important;
    border-radius: 24px !important;
    background: #fff !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    box-shadow: 0 32px 90px rgba(15, 23, 42, .34) !important;
    overflow: hidden !important;
}

.online-modal-head-pro {
    min-height: 150px !important;
    padding: 24px 32px !important;
    background: linear-gradient(135deg, #ffffff 0%, #fbfdff 58%, #f6fbff 100%) !important;
    border-bottom: 1px solid #dbe5f1 !important;
}

.online-modal-kicker {
    height: 28px !important;
    padding: 0 14px !important;
    gap: 8px !important;
    background: #dcfce7 !important;
    border: 1px solid #bbf7d0 !important;
    color: #047857 !important;
    font-size: 12px !important;
    letter-spacing: .02em !important;
    text-transform: uppercase !important;
}

.online-modal-kicker:before {
    content: '■';
    display: inline-block !important;
    color: #059669 !important;
    font-size: 10px !important;
    transform: scaleX(1.35) !important;
}

.online-modal-head-pro h2 {
    color: #172554 !important;
    font-size: 27px !important;
    line-height: 1.15 !important;
    letter-spacing: -.02em !important;
    margin: 0 0 10px !important;
}

.online-modal-head-pro p {
    max-width: 660px !important;
    color: #475569 !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.online-modal-head-pro p b,
.online-modal-head-pro p strong,
.online-modal-head-pro p a {
    color: #047857 !important;
}

.online-modal-head-meta {
    padding: 12px 16px !important;
    border-radius: 18px !important;
    border: 1px solid #dbe5f1 !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06) !important;
}

.online-modal-head-meta span {
    width: 28px !important;
    height: 28px !important;
    background: #e2e8f0 !important;
    color: #334155 !important;
}

.online-modal-head-meta span:first-child {
    background: linear-gradient(135deg, #0f766e, #10b981) !important;
    color: #fff !important;
}

.online-modal-head-meta b {
    width: 34px !important;
    background: #cbd5e1 !important;
}

.online-consult-flat .appointment-close {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    font-size: 30px !important;
    color: #1e3a5f !important;
    background: #fff !important;
    border: 1px solid #dbe5f1 !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .08) !important;
}

.online-consult-flat-body {
    display: grid !important;
    grid-template-columns:1fr 1.25fr !important;
    padding: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
}

.online-doctor-select-pane,
.online-slot-select-pane {
    padding: 24px 28px !important;
    background: #fff !important;
    overflow: hidden !important;
}

.online-doctor-select-pane {
    border-right: 1px solid #dbe5f1 !important;
}

.online-pane-title h3,
.online-slot-headline strong {
    color: #172554 !important;
    font-size: 18px !important;
    letter-spacing: -.01em !important;
}

.online-pane-title p,
.online-slot-headline span {
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.online-refresh-flat {
    height: 40px !important;
    padding: 0 16px !important;
    border-radius: 13px !important;
    color: #1e3a5f !important;
    background: #fff !important;
    border: 1px solid #dbe5f1 !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .05) !important;
}

.online-search-row {
    height: 48px !important;
    border-radius: 15px !important;
    background: #fff !important;
    border: 1px solid #dbe5f1 !important;
    box-shadow: none !important;
}

.online-search-row input,
.online-search-row input::placeholder {
    font-weight: 500 !important;
    color: #64748b !important;
}

.online-doctor-list-flat {
    overflow: hidden !important;
    max-height: none !important;
    padding: 4px 0 0 !important;
}

.online-doctor-card-flat {
    min-height: 112px !important;
    padding: 16px !important;
    grid-template-columns:74px minmax(0, 1fr) 24px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #fff, #fbfdff) !important;
    border: 1px solid #dbe5f1 !important;
    box-shadow: 0 12px 24px rgba(15, 23, 42, .05) !important;
}

.online-doctor-card-flat.selected {
    background: linear-gradient(135deg, #fff, #f7fffb) !important;
    border-color: #10b981 !important;
    box-shadow: 0 14px 28px rgba(16, 185, 129, .12) !important;
}

.online-doctor-photo-wrap {
    width: 66px !important;
    height: 66px !important;
    border-radius: 50% !important;
    border: 1px solid #dbe5f1 !important;
    background: #eff6ff !important;
}

.online-doctor-photo,
.online-selected-photo {
    border-radius: 50% !important;
}

.online-doctor-info-flat strong {
    color: #172554 !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
}

.online-doctor-info-flat small {
    color: #475569 !important;
    font-size: 13px !important;
    margin-top: 6px !important;
}

.online-doctor-info-flat em {
    color: #64748b !important;
    font-size: 13px !important;
    margin-top: 4px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.online-doctor-info-flat i {
    display: none !important;
}

.online-radio-dot {
    width: 22px !important;
    height: 22px !important;
    border: 3px solid #10b981 !important;
    background: #fff !important;
}

.online-doctor-card-flat.selected .online-radio-dot:after {
    width: 10px !important;
    height: 10px !important;
    background: #10b981 !important;
}

.online-selected-doctor-flat {
    margin-top: 16px !important;
}

.online-selected-card-flat {
    min-height: 124px !important;
    padding: 18px !important;
    display: grid !important;
    grid-template-columns:82px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: center !important;
    border-radius: 20px !important;
    border: 1px solid #a7f3d0 !important;
    background: linear-gradient(135deg, #ffffff 0%, #f7fffb 100%) !important;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .06) !important;
}

.online-selected-photo {
    width: 74px !important;
    height: 74px !important;
    border: 1px solid #dbe5f1 !important;
    background: #eff6ff !important;
}

.online-selected-card-flat strong {
    display: block !important;
    color: #172554 !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    margin-bottom: 7px !important;
}

.online-selected-card-flat span {
    display: block !important;
    color: #475569 !important;
    font-size: 14px !important;
    margin-bottom: 7px !important;
}

.online-selected-card-flat small {
    display: block !important;
    color: #047857 !important;
    font-size: 14px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.online-slot-headline {
    margin: 0px 0 12px !important;
}

.online-slot-groups-flat {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 0 10px 12px 0 !important;
    scrollbar-gutter: stable !important;
}

.online-slot-day-flat {
    padding: 16px !important;
    border-radius: 18px !important;
    border: 1px solid #dbe5f1 !important;
    background: #fff !important;
    box-shadow: none !important;
}

.online-slot-day-flat header strong {
    color: #172554 !important;
    font-size: 15px !important;
}

.online-slot-day-flat header small {
    color: #64748b !important;
    font-size: 12px !important;
}

.online-slot-day-flat header span {
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #172554 !important;
    font-size: 12px !important;
    padding: 8px 12px !important;
}

.online-slot-times-flat {
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.online-slot-time-flat {
    height: 46px !important;
    border-radius: 11px !important;
    background: #fff !important;
    border: 1px solid #dbe5f1 !important;
    color: #1e293b !important;
    font-size: 14px !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, .03) !important;
}

.online-slot-time-flat.selected {
    color: #fff !important;
    background: linear-gradient(135deg, #0f766e, #059669) !important;
    border-color: #0f766e !important;
    box-shadow: 0 12px 24px rgba(15, 118, 110, .22) !important;
}

.online-modal-footer-full {
    min-height: 104px !important;
    padding: 22px 32px !important;
    background: #fff !important;
    border-top: 1px solid #dbe5f1 !important;
    box-shadow: 0 -10px 26px rgba(15, 23, 42, .05) !important;
}

.online-footer-info {
    gap: 16px !important;
}

.online-footer-info span {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: #d1fae5 !important;
    border: 0 !important;
    color: #047857 !important;
    font-family: inherit !important;
    font-size: 20px !important;
}

.online-footer-info p {
    max-width: 560px !important;
    color: #334155 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.online-footer-info p b {
    color: #172554 !important;
    font-weight: 700 !important;
}

.online-footer-buttons {
    gap: 14px !important;
}

.online-btn {
    height: 56px !important;
    min-width: 138px !important;
    border-radius: 12px !important;
    font-size: 15px !important;
}

.online-btn.secondary {
    background: #fff !important;
    color: #334155 !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: none !important;
}

.online-btn.primary {
    min-width: 204px !important;
    background: linear-gradient(135deg, #059669, #0f766e) !important;
    border: 0 !important;
    box-shadow: 0 14px 28px rgba(5, 150, 105, .20) !important;
}

@media (max-width: 1050px) {
    .online-consult-flat {
        height: calc(100vh - 18px) !important;
        width: calc(100vw - 18px) !important;
    }

    .online-consult-flat-body {
        grid-template-columns:1fr !important;
        overflow: hidden !important;
    }

    .online-doctor-select-pane {
        border-right: 0 !important;
        border-bottom: 1px solid #dbe5f1 !important;
        flex: 0 0 auto !important;
    }

    .online-slot-select-pane {
        min-height: 0 !important;
    }

    .online-doctor-list-flat {
        max-height: 150px !important;
    }

    .online-selected-card-flat {
        min-height: 104px !important;
    }
}

@media (max-width: 640px) {
    .online-modal-head-pro {
        min-height: auto !important;
        padding: 18px !important;
    }

    .online-modal-head-pro h2 {
        font-size: 23px !important;
    }

    .online-modal-head-pro p {
        font-size: 13px !important;
    }

    .online-doctor-select-pane, .online-slot-select-pane {
        padding: 16px !important;
    }

    .online-slot-times-flat {
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }

    .online-selected-card-flat {
        grid-template-columns:64px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 14px !important;
    }

    .online-selected-photo {
        width: 58px !important;
        height: 58px !important;
    }

    .online-modal-footer-full {
        min-height: auto !important;
        padding: 16px !important;
    }

    .online-footer-buttons {
        width: 100% !important;
    }

    .online-btn {
        min-width: 0 !important;
        flex: 1 !important;
        height: 50px !important;
    }
}

/* Online görüşme ödeme adımı - mevcut stilleri bozmadan izole tasarım */
.online-payment-step {
    flex: 1 !important;
    min-height: 0 !important;
    padding: 26px 32px 28px !important;
    overflow-y: auto !important;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
}

.online-consult-flat.is-payment-mode {
    width: min(1120px, calc(100vw - 44px)) !important;
}

.online-consult-flat.is-payment-mode .online-modal-head-meta span {
    background: #e2e8f0 !important;
    color: #334155 !important;
}

.online-consult-flat.is-payment-mode .online-modal-head-meta span:nth-of-type(1),
.online-consult-flat.is-payment-mode .online-modal-head-meta span:nth-of-type(2),
.online-consult-flat.is-payment-mode .online-modal-head-meta span:nth-of-type(3) {
    background: linear-gradient(135deg, #0f766e, #10b981) !important;
    color: #fff !important;
}

.online-payment-hero {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin-bottom: 22px !important;
    padding: 22px 24px !important;
    border-radius: 22px !important;
    border: 1px solid #dbeafe !important;
    background: radial-gradient(circle at top right, rgba(16, 185, 129, .14), transparent 28%), linear-gradient(135deg, #ffffff, #f0f7ff) !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .06) !important;
}

.online-payment-hero span {
    display: inline-flex !important;
    align-items: center !important;
    height: 28px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #dcfce7 !important;
    color: #047857 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.online-payment-hero h3 {
    margin: 12px 0 8px !important;
    color: #0f172a !important;
    font-size: 25px !important;
    font-weight: 800 !important;
    letter-spacing: -.02em !important;
}

.online-payment-hero p {
    max-width: 690px !important;
    margin: 0 !important;
    color: #52657f !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
}

.online-payment-back {
    order: 2 !important;
    flex: 0 0 auto !important;
    height: 40px !important;
    padding: 0 14px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

.online-payment-layout {
    display: grid !important;
    grid-template-columns: .95fr 1.25fr !important;
    gap: 22px !important;
    align-items: stretch !important;
}

.online-payment-summary-card,
.online-payment-card-form {
    border: 1px solid #dbe5f1 !important;
    border-radius: 24px !important;
    background: #fff !important;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .07) !important;
}

.online-payment-summary-card {
    padding: 22px !important;
}

.online-pay-summary-head,
.online-payment-form-head,
.online-pay-doctor,
.online-payment-secure-note {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.online-pay-icon {
    width: 42px !important;
    height: 42px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 14px !important;
    background: #d1fae5 !important;
    color: #047857 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

.online-pay-summary-head strong,
.online-payment-form-head strong {
    display: block !important;
    color: #172554 !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

.online-pay-summary-head small,
.online-payment-form-head span {
    display: block !important;
    margin-top: 4px !important;
    color: #64748b !important;
    font-size: 13px !important;
}

.online-pay-doctor {
    margin: 22px 0 !important;
    padding: 16px !important;
    border-radius: 18px !important;
    border: 1px solid #dbeafe !important;
    background: #f8fbff !important;
}

.online-pay-doctor-photo {
    width: 66px !important;
    height: 66px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 1px solid #dbe5f1 !important;
    background: #eff6ff !important;
}

.online-pay-doctor strong {
    display: block !important;
    color: #172554 !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.online-pay-doctor span,
.online-pay-doctor small {
    display: block !important;
    margin-top: 5px !important;
    color: #64748b !important;
    font-size: 13px !important;
}

.online-pay-doctor small {
    color: #047857 !important;
}

.online-pay-summary-list {
    display: grid !important;
    gap: 10px !important;
}

.online-pay-summary-list div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 13px 0 !important;
    border-bottom: 1px solid #edf2f7 !important;
}

.online-pay-summary-list span,
.online-pay-total span {
    color: #64748b !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.online-pay-summary-list strong {
    color: #0f172a !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-align: right !important;
}

.online-pay-total {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-top: 20px !important;
    padding: 18px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #0f766e, #059669) !important;
    color: #fff !important;
}

.online-pay-total span,
.online-pay-total small,
.online-pay-total strong {
    color: #fff !important;
}

.online-pay-total small {
    display: block !important;
    max-width: 260px !important;
    margin-top: 5px !important;
    opacity: .82 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.online-pay-total strong {
    font-size: 26px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.online-payment-card-form {
    padding: 24px !important;
}

.online-payment-form-head {
    justify-content: space-between !important;
    margin-bottom: 18px !important;
}

.online-payment-form-head em {
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #2563eb !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 800 !important;
}

.online-card-preview {
    min-height: 158px !important;
    padding: 22px !important;
    margin-bottom: 22px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    border-radius: 22px !important;
    background: radial-gradient(circle at 88% 12%, rgba(255, 255, 255, .24), transparent 23%), linear-gradient(135deg, #172554, #0f766e) !important;
    color: #fff !important;
    box-shadow: 0 18px 38px rgba(15, 23, 42, .20) !important;
}

.online-card-preview span,
.online-card-preview small,
.online-card-preview strong {
    color: #fff !important;
}

.online-card-preview span {
    font-size: 13px !important;
    font-weight: 700 !important;
    opacity: .88 !important;
}

.online-card-preview strong {
    font-size: 25px !important;
    letter-spacing: .08em !important;
    font-weight: 800 !important;
}

.online-card-preview div {
    display: flex !important;
    justify-content: space-between !important;
    gap: 16px !important;
}

.online-card-preview small {
    font-size: 12px !important;
    opacity: .78 !important;
}

.online-payment-fields {
    display: grid !important;
    gap: 14px !important;
}

.online-payment-fields label {
    display: grid !important;
    gap: 8px !important;
    color: #334155 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.online-payment-fields input {
    width: 100% !important;
    height: 50px !important;
    padding: 0 14px !important;
    border: 1px solid #dbe5f1 !important;
    border-radius: 14px !important;
    background: #fff !important;
    color: #0f172a !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    outline: none !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
}

.online-payment-fields input:focus {
    border-color: #10b981 !important;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, .14) !important;
}

.online-payment-field-row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
}

.online-payment-secure-note {
    margin-top: 18px !important;
    padding: 14px !important;
    align-items: flex-start !important;
    border-radius: 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
}

.online-payment-secure-note span {
    flex: 0 0 auto !important;
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    background: #d1fae5 !important;
    color: #047857 !important;
    font-weight: 900 !important;
}

.online-payment-secure-note p {
    margin: 0 !important;
    color: #475569 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

.online-consult-flat.is-payment-mode .online-modal-footer-full {
    margin: 0 !important;
}

.online-consult-flat.is-payment-mode .online-btn.primary {
    min-width: 210px !important;
}

@media (max-width: 920px) {
    .online-payment-step {
        padding: 18px !important;
    }

    .online-payment-hero,
    .online-payment-layout {
        grid-template-columns: 1fr !important;
    }

    .online-payment-layout {
        display: grid !important;
    }

    .online-payment-hero {
        display: grid !important;
    }

    .online-payment-back {
        order: -1 !important;
        width: max-content !important;
    }
}

@media (max-width: 640px) {
    .online-payment-step {
        padding: 14px !important;
    }

    .online-payment-hero,
    .online-payment-summary-card,
    .online-payment-card-form {
        border-radius: 18px !important;
        padding: 16px !important;
    }

    .online-payment-field-row {
        grid-template-columns: 1fr !important;
    }

    .online-pay-total {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .online-card-preview strong {
        font-size: 19px !important;
    }
}


/* Online görüşme adım geçiş düzeltmesi - mevcut CSS'leri ezmeden sadece modal içinde izole */
#onlineConsultationModal [hidden],
#onlineConsultationModal .online-consult-flat-body[hidden],
#onlineConsultationModal .online-payment-step[hidden] {
    display: none !important;
}

#onlineConsultationModal .online-consultation-dialog {
    overflow: hidden !important;
}

#onlineConsultationModal .online-consult-flat-body,
#onlineConsultationModal .online-payment-step {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#onlineConsultationModal .online-consult-flat-body {
    overflow-x: hidden !important;
}

#onlineConsultationModal .online-slot-select-pane,
#onlineConsultationModal .online-doctor-select-pane {
    min-width: 0 !important;
}

#onlineConsultationModal .online-slot-groups-flat {
    overflow-x: hidden !important;
}

#onlineConsultationModal .online-slot-times-flat {
    min-width: 0 !important;
}

#onlineConsultationModal .online-payment-layout,
#onlineConsultationModal .online-payment-card-form,
#onlineConsultationModal .online-payment-summary-card {
    min-width: 0 !important;
}

/* Online ödeme ekranı son düzeltme: kayma/yatay scroll engelleme */
#onlineConsultationModal .online-consultation-dialog.online-consult-flat {
    display: flex !important;
    flex-direction: column !important;
    width: min(1120px, calc(100vw - 48px)) !important;
    height: min(830px, calc(100vh - 48px)) !important;
    max-width: calc(100vw - 48px) !important;
    max-height: calc(100vh - 48px) !important;
    overflow: hidden !important;
}

#onlineConsultationModal .online-consultation-dialog.online-consult-flat,
#onlineConsultationModal .online-consultation-dialog.online-consult-flat * {
    box-sizing: border-box !important;
}

#onlineConsultationModal .online-payment-step {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 26px 32px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

#onlineConsultationModal .online-payment-hero {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "text back" !important;
    align-items: start !important;
    gap: 18px !important;
    margin: 0 0 22px !important;
    padding: 24px !important;
    overflow: hidden !important;
}

#onlineConsultationModal .online-payment-hero > div {
    grid-area: text !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: 100% !important;
}

#onlineConsultationModal .online-payment-back {
    grid-area: back !important;
    order: initial !important;
    flex: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 220px !important;
    align-self: start !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#onlineConsultationModal .online-payment-hero h3 {
    max-width: 520px !important;
    margin: 12px 0 8px !important;
    line-height: 1.25 !important;
}

#onlineConsultationModal .online-payment-hero p {
    max-width: 650px !important;
}

#onlineConsultationModal .online-payment-layout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(300px, .9fr) minmax(420px, 1.25fr) !important;
    gap: 22px !important;
    overflow: visible !important;
}

#onlineConsultationModal .online-payment-summary-card,
#onlineConsultationModal .online-payment-card-form,
#onlineConsultationModal .online-card-preview,
#onlineConsultationModal .online-payment-fields,
#onlineConsultationModal .online-payment-field-row,
#onlineConsultationModal .online-pay-total,
#onlineConsultationModal .online-pay-doctor {
    min-width: 0 !important;
    max-width: 100% !important;
}

#onlineConsultationModal .online-payment-fields input {
    max-width: 100% !important;
}

#onlineConsultationModal .online-modal-footer-full {
    flex: 0 0 auto !important;
    width: 100% !important;
}

#onlineConsultationModal .online-consult-flat-body {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
}

#onlineConsultationModal .online-slot-groups-flat {
    max-height: 100% !important;
}

@media (max-width: 1050px) {
    #onlineConsultationModal .online-payment-layout {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 760px) {
    #onlineConsultationModal .online-consultation-dialog.online-consult-flat {
        width: calc(100vw - 18px) !important;
        height: calc(100vh - 18px) !important;
        max-width: calc(100vw - 18px) !important;
        max-height: calc(100vh - 18px) !important;
    }

    #onlineConsultationModal .online-payment-step {
        padding: 16px !important;
    }

    #onlineConsultationModal .online-payment-hero {
        grid-template-columns: 1fr !important;
        grid-template-areas: "back" "text" !important;
        padding: 18px !important;
    }

    #onlineConsultationModal .online-payment-back {
        max-width: none !important;
        width: max-content !important;
    }

    #onlineConsultationModal .online-payment-layout {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

/* Online Parampos ödeme ve ödemeler sayfası - mevcut stilleri ezmeden ek alanlar */
.online-parampos-hosted .online-payment-secure-note.parampos-note {
    margin-top: 18px;
}

.online-parampos-checks {
    margin: 18px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}

.online-parampos-checks li {
    position: relative;
    padding: 12px 14px 12px 38px;
    border: 1px solid rgba(15, 118, 110, .12);
    border-radius: 14px;
    background: rgba(240, 253, 250, .72);
    color: #334155;
    font-size: 13px;
    line-height: 1.45;
}

.online-parampos-checks li:before {
    content: "✓";
    position: absolute;
    left: 14px;
    top: 12px;
    width: 18px;
    height: 18px;
    border-radius: 999px;
    background: #d1fae5;
    color: #047857;
    display: grid;
    place-items: center;
    font-size: 11px;
    font-weight: 800;
}

.payments-hero {
    margin-bottom: 18px;
}

.payments-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.payments-stats article {
    background: #fff;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 14px 40px rgba(15, 23, 42, .06);
}

.payments-stats span {
    display: block;
    color: #64748b;
    font-size: 13px;
    margin-bottom: 8px;
}

.payments-stats strong {
    color: #0f172a;
    font-size: 26px;
}

.payments-list {
    display: grid;
    gap: 12px;
}

.payment-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px;
    border: 1px solid rgba(148, 163, 184, .22);
    border-radius: 18px;
    background: linear-gradient(135deg, #fff, #f8fafc);
}

.payment-main h3 {
    margin: 8px 0 4px;
    font-size: 17px;
    color: #0f172a;
}

.payment-main p {
    margin: 0 0 6px;
    color: #475569;
    font-size: 13px;
}

.payment-main small {
    color: #64748b;
}

.payment-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #e2e8f0;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
}

.status-paid .payment-badge {
    background: #d1fae5;
    color: #047857;
}

.status-failed .payment-badge {
    background: #fee2e2;
    color: #b91c1c;
}

.status-redirected .payment-badge, .status-created .payment-badge, .status-pending_3d .payment-badge {
    background: #dbeafe;
    color: #1d4ed8;
}

.payment-side {
    text-align: right;
    display: grid;
    gap: 5px;
    color: #64748b;
    font-size: 12px;
}

.payment-side strong {
    color: #0f766e;
    font-size: 20px;
}

.payment-side em {
    font-style: normal;
    color: #475569;
}

@media (max-width: 900px) {
    .payments-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .payment-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .payment-side {
        text-align: left;
    }
}

@media (max-width: 520px) {
    .payments-stats {
        grid-template-columns: 1fr;
    }
}

/* Parampos 3D kart formu - mevcut online modal tasarımını izole biçimde tamamlar */
#onlineConsultationModal .online-payment-fields small {
    font-size: 11px;
    color: #64748b;
    font-weight: 600
}

#onlineConsultationModal .online-parampos-frame-wrap {
    margin-top: 16px;
    border: 1px solid #dbe7f5;
    border-radius: 18px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 18px 46px rgba(15, 23, 42, .08)
}

#onlineConsultationModal .online-parampos-frame-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: #f7fbff;
    border-bottom: 1px solid #e6eef7;
    color: #12204a
}

#onlineConsultationModal .online-parampos-frame-head strong {
    font-size: 14px;
    font-weight: 700
}

#onlineConsultationModal .online-parampos-frame-head span {
    font-size: 12px;
    color: #64748b;
    font-weight: 600
}

#onlineConsultationModal #onlineParamposFrame {
    display: block;
    width: 100%;
    min-height: 520px;
    border: 0;
    background: #fff
}

#onlineConsultationModal .online-parampos-frame-wrap[hidden] {
    display: none !important
}

/* Online ödeme 3D modal düzenlemesi - mevcut stilleri bozmadan izole edildi */
#onlineConsultationModal .online-payment-gsm-info {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 13px 14px;
    border: 1px solid #dce8f6;
    border-radius: 14px;
    background: #f8fbff;
    color: #17233f
}

#onlineConsultationModal .online-payment-gsm-info span {
    font-size: 12px;
    font-weight: 700;
    color: #5b6b84
}

#onlineConsultationModal .online-payment-gsm-info strong {
    font-size: 14px;
    font-weight: 800;
    color: #10204a
}

#onlineConsultationModal .online-payment-gsm-info small {
    font-size: 12px;
    color: #65748c;
    line-height: 1.35
}

#onlineConsultationModal .online-3d-overlay {
    position: absolute;
    inset: 0;
    z-index: 80;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    background: rgba(7, 18, 38, .48);
    backdrop-filter: blur(8px);
    border-radius: inherit
}

#onlineConsultationModal .online-3d-overlay[hidden] {
    display: none !important
}

#onlineConsultationModal .online-3d-dialog {
    width: min(760px, 96%);
    height: min(720px, 90%);
    background: #fff;
    border-radius: 22px;
    box-shadow: 0 28px 80px rgba(7, 18, 38, .28);
    overflow: hidden;
    border: 1px solid rgba(210, 225, 244, .95);
    display: flex;
    flex-direction: column
}

#onlineConsultationModal .online-3d-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-bottom: 1px solid #e6eef8;
    background: linear-gradient(135deg, #f8fbff 0%, #eefbf6 100%)
}

#onlineConsultationModal .online-3d-head div {
    display: flex;
    flex-direction: column;
    gap: 3px
}

#onlineConsultationModal .online-3d-head span {
    width: max-content;
    padding: 5px 10px;
    border-radius: 999px;
    background: #dcfce7;
    color: #047857;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .02em
}

#onlineConsultationModal .online-3d-head strong {
    font-size: 18px;
    color: #10204a;
    font-weight: 800
}

#onlineConsultationModal .online-3d-head small {
    font-size: 12px;
    color: #607089;
    font-weight: 600
}

#onlineConsultationModal .online-3d-close {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid #d6e3f3;
    background: #fff;
    color: #0f2147;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(16, 32, 74, .08)
}

#onlineConsultationModal .online-3d-close:hover {
    background: #f8fbff;
    border-color: #bcd0ea
}

#onlineConsultationModal .online-3d-dialog iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #fff;
    flex: 1
}

@media (max-width: 768px) {
    #onlineConsultationModal .online-3d-overlay {
        padding: 10px
    }

    #onlineConsultationModal .online-3d-dialog {
        width: 100%;
        height: 94%;
        border-radius: 18px
    }

    #onlineConsultationModal .online-3d-head {
        padding: 14px 15px
    }

    #onlineConsultationModal .online-3d-head strong {
        font-size: 16px
    }
}

/* Parampos 3D local-network safe popup status */
#onlineConsultationModal .online-3d-status {
    min-height: 520px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 34px;
    text-align: center;
    background: linear-gradient(135deg, #f8fffd, #eef6ff);
    color: #12204a;
}

#onlineConsultationModal .online-3d-status::before {
    content: "";
    width: 46px;
    height: 46px;
    border-radius: 999px;
    border: 4px solid #d8f7ea;
    border-top-color: #0f8f73;
    animation: online3dSpin .9s linear infinite;
}

#onlineConsultationModal .online-3d-status strong {
    font-size: 20px;
    font-weight: 800;
    color: #10204a
}

#onlineConsultationModal .online-3d-status span {
    max-width: 520px;
    font-size: 14px;
    line-height: 1.65;
    color: #516179
}

#onlineConsultationModal .online-3d-status button {
    border: 0;
    border-radius: 14px;
    background: #0f8f73;
    color: #fff;
    padding: 12px 18px;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(15, 143, 115, .22)
}

#onlineConsultationModal .online-3d-status button[hidden] {
    display: none !important
}

@keyframes online3dSpin {
    to {
        transform: rotate(360deg)
    }
}

/* Parampos same-tab payment error */
#onlineConsultationModal .online-payment-inline-error {
    margin: 0 0 14px;
    padding: 14px 16px;
    border: 1px solid #fecaca;
    background: #fff5f5;
    color: #991b1b;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    box-shadow: 0 10px 24px rgba(153, 27, 27, .07);
}

#onlineConsultationModal .online-payment-inline-error strong {
    font-size: 14px;
    font-weight: 900;
    color: #991b1b
}

#onlineConsultationModal .online-payment-inline-error span {
    font-size: 13px;
    line-height: 1.55;
    color: #7f1d1d
}

/* Ödemeler dekont kart görünümü - mevcut stilleri bozmadan izole edildi */
.payment-receipt-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-items: start
}

.payment-receipt-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, .28);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .08)
}

.payment-receipt-card:before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 8px;
    background: linear-gradient(90deg, #0f766e, #14b8a6, #d1fae5)
}

.payment-receipt-card.status-failed:before {
    background: linear-gradient(90deg, #b91c1c, #ef4444, #fee2e2)
}

.payment-receipt-card.status-created:before, .payment-receipt-card.status-redirected:before, .payment-receipt-card.status-pending_3d:before {
    background: linear-gradient(90deg, #1d4ed8, #60a5fa, #dbeafe)
}

.receipt-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 24px 24px 16px
}

.receipt-eyebrow {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase
}

.status-failed .receipt-eyebrow {
    background: #fee2e2;
    color: #b91c1c
}

.status-created .receipt-eyebrow, .status-redirected .receipt-eyebrow, .status-pending_3d .receipt-eyebrow {
    background: #dbeafe;
    color: #1d4ed8
}

.receipt-top h3 {
    margin: 12px 0 0;
    color: #0f172a;
    font-size: 22px;
    font-weight: 850;
    letter-spacing: -.02em
}

.receipt-status-dot {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #10b981;
    box-shadow: 0 0 0 8px #d1fae5;
    margin-top: 8px;
    flex: 0 0 auto
}

.status-failed .receipt-status-dot {
    background: #ef4444;
    box-shadow: 0 0 0 8px #fee2e2
}

.status-created .receipt-status-dot, .status-redirected .receipt-status-dot, .status-pending_3d .receipt-status-dot {
    background: #3b82f6;
    box-shadow: 0 0 0 8px #dbeafe
}

.receipt-amount-box {
    margin: 0 24px 18px;
    padding: 18px 20px;
    border-radius: 20px;
    background: linear-gradient(135deg, #0f766e, #059669);
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap
}

.status-failed .receipt-amount-box {
    background: linear-gradient(135deg, #991b1b, #dc2626)
}

.status-created .receipt-amount-box, .status-redirected .receipt-amount-box, .status-pending_3d .receipt-amount-box {
    background: linear-gradient(135deg, #1e3a8a, #2563eb)
}

.receipt-amount-box span {
    font-size: 12px;
    font-weight: 700;
    opacity: .9;
    width: 100%
}

.receipt-amount-box strong {
    font-size: 32px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: -.03em
}

.receipt-amount-box small {
    font-size: 12px;
    font-weight: 700;
    opacity: .9;
    margin-bottom: 3px
}

.receipt-doctor {
    display: flex;
    gap: 14px;
    align-items: center;
    margin: 0 24px 18px;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc
}

.receipt-avatar {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    background: #e0f2fe;
    color: #075985;
    display: grid;
    place-items: center;
    font-weight: 900;
    font-size: 13px;
    overflow: hidden;
    text-transform: uppercase
}

.receipt-doctor strong {
    display: block;
    color: #0f172a;
    font-size: 15px;
    margin-bottom: 4px
}

.receipt-doctor span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.35
}

.receipt-lines {
    margin: 0 24px 18px;
    border-top: 1px dashed #cbd5e1;
    border-bottom: 1px dashed #cbd5e1;
    padding: 8px 0;
    display: grid;
    gap: 0
}

.receipt-lines div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 0;
    border-bottom: 1px solid #f1f5f9
}

.receipt-lines div:last-child {
    border-bottom: 0
}

.receipt-lines dt {
    color: #64748b;
    font-size: 12px;
    font-weight: 750
}

.receipt-lines dd {
    margin: 0;
    color: #0f172a;
    font-size: 12px;
    font-weight: 800;
    text-align: right;
    word-break: break-word;
    max-width: 62%
}

.receipt-result {
    margin: 0 24px 18px;
    padding: 14px 16px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0
}

.status-paid .receipt-result {
    background: #ecfdf5;
    border-color: #bbf7d0
}

.status-failed .receipt-result {
    background: #fff1f2;
    border-color: #fecdd3
}

.receipt-result span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 6px
}

.receipt-result p {
    margin: 0;
    color: #172033;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.45
}

.receipt-footer-note {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 24px;
    background: #f8fafc;
    border-top: 1px solid #eef2f7
}

.receipt-footer-note span {
    color: #0f766e;
    font-size: 12px;
    font-weight: 900
}

.receipt-footer-note small {
    color: #64748b;
    font-size: 11px;
    font-weight: 700;
    text-align: right
}

@media (max-width: 1100px) {
    .payment-receipt-grid {
        grid-template-columns:1fr
    }
}

@media (max-width: 560px) {
    .receipt-top, .receipt-footer-note {
        padding-left: 18px;
        padding-right: 18px
    }

    .receipt-amount-box, .receipt-doctor, .receipt-lines, .receipt-result {
        margin-left: 18px;
        margin-right: 18px
    }

    .receipt-lines div {
        flex-direction: column;
        gap: 4px
    }

    .receipt-lines dd {
        text-align: left;
        max-width: 100%
    }

    .receipt-amount-box strong {
        font-size: 28px
    }
}

/* Ödemeler listesi + detay dekont modalı */
.payment-detail-open {
    overflow: hidden
}

.payments-list-wrap {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.payment-list-card {
    display: grid;
    grid-template-columns:minmax(220px, 1.4fr) minmax(150px, .7fr) minmax(180px, 1fr) minmax(100px, .45fr) auto;
    gap: 14px;
    align-items: center;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .05)
}

.payment-list-main, .payment-list-date, .payment-list-order, .payment-list-amount {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0
}

.payment-list-card span {
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em
}

.payment-list-card strong {
    color: #0f172a;
    font-size: 14px;
    font-weight: 850;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.payment-list-card small {
    color: #64748b;
    font-size: 12px;
    font-weight: 650;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.payment-list-status {
    width: max-content;
    padding: 5px 9px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857 !important
}

.payment-list-card.status-failed .payment-list-status {
    background: #fee2e2;
    color: #b91c1c !important
}

.payment-list-card.status-created .payment-list-status, .payment-list-card.status-redirected .payment-list-status, .payment-list-card.status-pending_3d .payment-list-status {
    background: #dbeafe;
    color: #1d4ed8 !important
}

.payment-list-amount strong {
    font-size: 18px
}

.payment-detail-btn {
    border: 0;
    border-radius: 14px;
    padding: 11px 16px;
    background: #0f8f73;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(15, 143, 115, .18)
}

.payment-detail-btn:hover {
    filter: brightness(.96);
    transform: translateY(-1px)
}

.payment-receipt-modal {
    position: fixed;
    inset: 0;
    display: none;
    z-index: 9999;
    padding: 24px;
    align-items: center;
    justify-content: center
}

.payment-receipt-modal.is-open {
    display: flex
}

.payment-receipt-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .54);
    backdrop-filter: blur(8px)
}

.payment-receipt-dialog {
    position: relative;
    width: min(680px, 100%);
    max-height: 92vh;
    overflow: auto;
    border-radius: 28px;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .28)
}

.payment-receipt-dialog .payment-receipt-card {
    box-shadow: none
}

.payment-receipt-close {
    position: absolute;
    right: 14px;
    top: 14px;
    z-index: 2;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 14px;
    background: #f1f5f9;
    color: #0f172a;
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer
}

.payment-receipt-close:hover {
    background: #e2e8f0
}

@media (max-width: 980px) {
    .payment-list-card {
        grid-template-columns:1fr 1fr
    }

    .payment-detail-btn {
        grid-column: 1/-1;
        width: 100%
    }
}

@media (max-width: 560px) {
    .payment-list-card {
        grid-template-columns:1fr
    }

    .payment-receipt-modal {
        padding: 12px
    }

    .payment-receipt-dialog {
        max-height: 94vh;
        border-radius: 22px
    }
}

/* Home announcement rail */
.lh-welcome.has-announcements{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.25fr) auto;align-items:stretch;gap:18px;padding:18px 20px}.lh-welcome-copy{align-self:center;min-width:0}.lh-welcome.has-announcements .lh-title-line h1{font-size:clamp(24px,2.3vw,31px)}.lh-welcome.has-announcements .lh-actions{align-self:center}.lh-home-announcements{min-width:0;border:1px solid #dce7f3;border-radius:14px;background:linear-gradient(135deg,#f8fbff 0%,#fff 72%);padding:12px 14px;position:relative;overflow:hidden}.lh-home-ann-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.lh-home-ann-label{display:inline-flex;align-items:center;gap:6px;color:#1463a5;font-size:11px;font-weight:600;letter-spacing:.02em}.lh-home-ann-label svg{width:14px;height:14px}.lh-home-ann-count{font-size:10px;color:#94a3b8;font-weight:500}.lh-home-ann-count b{color:#475569;font-weight:600}.lh-home-ann-track{position:relative;min-height:58px}.lh-home-ann-slide{display:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;animation:lhHomeAnnIn .25s ease}.lh-home-ann-slide.is-active{display:grid}.lh-home-ann-copy{min-width:0}.lh-home-ann-copy h3{margin:0 0 4px;color:#172033;font-size:13px;line-height:1.3;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-home-ann-copy p{margin:0!important;color:#718096!important;font-size:11.5px!important;line-height:1.45!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lh-home-ann-detail{border:0;background:#edf5ff;color:#1463a5;border-radius:9px;padding:7px 9px;font:inherit;font-size:11px;font-weight:550;display:inline-flex;align-items:center;gap:4px;cursor:pointer;white-space:nowrap}.lh-home-ann-detail:hover{background:#e1efff}.lh-home-ann-detail svg{width:11px;height:11px}.lh-home-ann-nav{position:absolute;right:12px;top:9px;display:flex;align-items:center;gap:5px;transform:translateX(-34px)}.lh-home-ann-nav>button{width:19px;height:19px;border:0;border-radius:6px;background:transparent;color:#94a3b8;font-size:16px;line-height:1;cursor:pointer}.lh-home-ann-nav>button:hover{background:#edf2f7;color:#334155}.lh-home-ann-dots{display:flex;gap:3px}.lh-home-ann-dots button{width:4px;height:4px;padding:0;border:0;border-radius:99px;background:#cbd5e1;cursor:pointer;transition:.2s}.lh-home-ann-dots button.is-active{width:12px;background:#2b6de9}@keyframes lhHomeAnnIn{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}@media(max-width:1180px){.lh-welcome.has-announcements{grid-template-columns:1fr 1.2fr}.lh-welcome.has-announcements .lh-actions{display:none}}@media(max-width:820px){.lh-welcome.has-announcements{grid-template-columns:1fr}.lh-home-announcements{margin-top:4px}.lh-welcome.has-announcements .lh-actions{display:flex}.lh-home-ann-track{min-height:54px}}


/* Home hero: welcome and announcements are sibling columns. */
.lh-home-hero-row{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:30px;align-items:stretch}
.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}
.lh-home-hero-row .lh-welcome{margin:0;min-width:0;height:100%}
.lh-home-welcome-card{display:flex;align-items:center;justify-content:space-between;gap:24px}
.lh-home-hero-row .lh-home-announcements{margin:0;min-width:0;height:100%;box-sizing:border-box;border-radius:16px;padding:16px 18px;background:#fff;border:1px solid #dce5ef;box-shadow:0 1px 2px rgba(15,23,42,.03);display:flex;flex-direction:column;justify-content:center}
.lh-home-hero-row .lh-home-ann-head{margin-bottom:9px}
.lh-home-hero-row .lh-home-ann-track{min-height:56px}
.lh-home-hero-row .lh-home-ann-nav{top:12px;right:14px}
@media(max-width:1100px){.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,3fr) minmax(290px,2fr)}}
@media(max-width:820px){.lh-home-hero-row.has-announcements{grid-template-columns:1fr}.lh-home-hero-row{gap:12px;margin-bottom:22px}.lh-home-welcome-card{min-height:130px}.lh-home-hero-row .lh-home-announcements{min-height:130px}}

/* Professional home announcement panel */
.lh-home-hero-row{gap:18px;align-items:stretch}
.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,2fr) minmax(340px,1fr)}
.lh-home-hero-row .lh-home-announcement-card{position:relative!important;justify-content:flex-start!important;min-height:0!important;padding:18px 20px 15px!important;border:1px solid #dbe5f0!important;border-radius:16px!important;background:linear-gradient(145deg,#ffffff 0%,#fbfdff 100%)!important;box-shadow:0 5px 18px rgba(15,23,42,.045)!important;overflow:hidden!important}
.lh-home-ann-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#2563eb 0%,#60a5fa 100%)}
.lh-home-ann-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px!important;padding:0 0 11px;border-bottom:1px solid #edf2f7}
.lh-home-ann-heading{display:flex;align-items:center;gap:10px;min-width:0}
.lh-home-ann-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;border-radius:9px;background:#eef5ff;color:#2563eb}
.lh-home-ann-icon svg{width:14px;height:14px;stroke-width:1.7}
.lh-home-ann-heading>div{display:flex;flex-direction:column;gap:1px;min-width:0}
.lh-home-ann-label{font-size:12.5px!important;line-height:1.25;color:#172033!important;font-weight:600!important;letter-spacing:0!important}
.lh-home-ann-heading small{font-size:10.5px;color:#8a98aa;line-height:1.25;font-weight:400}
.lh-home-ann-count{display:inline-flex;align-items:center;gap:3px;height:25px;padding:0 8px;border-radius:8px;background:#f5f8fc;border:1px solid #e7edf5;color:#8795a8!important;font-size:10.5px!important;font-weight:500!important;font-style:normal}
.lh-home-ann-count b{font-size:11px;color:#2563eb!important;font-weight:600!important}.lh-home-ann-count i{font-style:normal;color:#c0cad6}
.lh-home-ann-track{min-height:74px!important;display:flex;align-items:center}
.lh-home-ann-slide{width:100%;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:14px!important}
.lh-home-ann-copy{padding-right:2px}.lh-home-ann-kicker{display:block;margin:0 0 4px;font-size:9.5px;line-height:1.2;font-weight:600;letter-spacing:.055em;text-transform:uppercase;color:#5f78a0}
.lh-home-ann-copy h3{margin:0 0 5px!important;color:#111827!important;font-size:14px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lh-home-ann-copy p{margin:0!important;color:#6b7a90!important;font-size:11.25px!important;line-height:1.45!important;font-weight:400!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lh-home-ann-detail{height:32px!important;padding:0 10px!important;border:1px solid #dbe8fb!important;border-radius:9px!important;background:#f4f8ff!important;color:#1d5fbf!important;font-size:10.75px!important;font-weight:500!important;gap:5px!important;box-shadow:none!important;transition:background .18s ease,border-color .18s ease,transform .18s ease!important}
.lh-home-ann-detail:hover{background:#eaf3ff!important;border-color:#c9dcf7!important;transform:translateY(-1px)}.lh-home-ann-detail svg{width:10px!important;height:10px!important}
.lh-home-ann-nav{position:static!important;transform:none!important;margin-top:11px;padding-top:10px;border-top:1px solid #f0f3f7;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important}
.lh-home-ann-nav>button{width:24px!important;height:24px!important;border:1px solid #e3eaf2!important;border-radius:7px!important;background:#fff!important;color:#64748b!important;font-size:15px!important;font-weight:400!important;display:flex;align-items:center;justify-content:center;padding:0!important}.lh-home-ann-nav>button:hover{background:#f5f8fc!important;color:#2563eb!important;border-color:#d7e3f2!important}
.lh-home-ann-dots{display:flex;align-items:center;gap:4px}.lh-home-ann-dots button{width:5px!important;height:5px!important;background:#d4dce6!important;transition:width .2s ease,background .2s ease!important}.lh-home-ann-dots button.is-active{width:15px!important;background:#3b82f6!important}
@media(max-width:1180px){.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,5fr) minmax(330px,3fr)}}
@media(max-width:900px){.lh-home-hero-row.has-announcements{grid-template-columns:1fr}.lh-home-hero-row .lh-home-announcement-card{min-height:145px!important}}
@media(max-width:560px){.lh-home-hero-row{gap:12px}.lh-home-hero-row .lh-home-announcement-card{padding:15px 16px 13px!important}.lh-home-ann-heading small{display:none}.lh-home-ann-copy p{-webkit-line-clamp:1}.lh-home-ann-track{min-height:64px!important}}

/* 2026-08-26 - Home announcements: compact corporate card */
.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,1.9fr) minmax(360px,.95fr);gap:18px}
.lh-home-hero-row .lh-home-announcement-card{padding:0!important;border:1px solid #dfe7f1!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.055)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:stretch!important}
.lh-home-announcement-card .lh-home-ann-accent{left:0;top:0;bottom:auto;width:100%;height:3px;background:linear-gradient(90deg,#2563eb 0%,#3b82f6 48%,#93c5fd 100%)}
.lh-home-announcement-card .lh-home-ann-head{min-height:58px;margin:0!important;padding:12px 15px!important;border-bottom:1px solid #edf1f6!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.lh-home-announcement-card .lh-home-ann-heading{gap:10px}
.lh-home-announcement-card .lh-home-ann-icon{width:34px;height:34px;flex-basis:34px;border-radius:10px;background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}
.lh-home-announcement-card .lh-home-ann-icon svg{width:15px;height:15px;stroke-width:1.8}
.lh-home-announcement-card .lh-home-ann-label{font-size:12.5px!important;font-weight:700!important;color:#172033!important}
.lh-home-announcement-card .lh-home-ann-heading small{margin-top:1px;font-size:10px;color:#8a98aa}
.lh-home-announcement-card .lh-home-ann-count{height:24px;min-width:42px;justify-content:center;padding:0 8px;border:1px solid #e3eaf3;border-radius:8px;background:#f8fafc;font-size:10px!important}
.lh-home-announcement-card .lh-home-ann-track{flex:1;min-height:88px!important;padding:14px 15px 12px;display:flex;align-items:stretch;background:#fff}
.lh-home-announcement-card .lh-home-ann-slide{position:relative;width:100%;min-height:76px;padding:0 0 0 12px;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important}
.lh-home-announcement-card .lh-home-ann-slide:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;border-radius:999px;background:#dbeafe}
.lh-home-announcement-card .lh-home-ann-copy{padding:0;min-width:0}
.lh-home-announcement-card .lh-home-ann-kicker{display:inline-flex;align-items:center;height:20px;margin:0 0 5px;padding:0 7px;border-radius:6px;background:#eff6ff;color:#2563eb;font-size:8.5px;font-weight:800;letter-spacing:.055em}
.lh-home-announcement-card .lh-home-ann-copy h3{margin:0 0 5px!important;font-size:13.5px!important;line-height:1.25!important;font-weight:700!important;color:#172033!important}
.lh-home-announcement-card .lh-home-ann-copy p{max-width:100%;font-size:10.75px!important;line-height:1.45!important;color:#718096!important;-webkit-line-clamp:2}
.lh-home-announcement-card .lh-home-ann-detail{height:34px!important;padding:0 11px!important;border:1px solid #dbe7f7!important;border-radius:9px!important;background:#f7faff!important;color:#2563eb!important;font-size:10.5px!important;font-weight:650!important;box-shadow:none!important}
.lh-home-announcement-card .lh-home-ann-detail:hover{background:#eef5ff!important;border-color:#c9daf4!important;transform:none!important}
.lh-home-announcement-card .lh-home-ann-nav{min-height:44px;margin:0!important;padding:9px 14px!important;border-top:1px solid #edf1f6!important;background:#fbfcfe;justify-content:space-between!important}
.lh-home-announcement-card .lh-home-ann-dots{order:1;gap:5px}
.lh-home-announcement-card .lh-home-ann-nav>button:first-child{order:2;margin-left:auto}
.lh-home-announcement-card .lh-home-ann-nav>button:last-child{order:3}
.lh-home-announcement-card .lh-home-ann-nav>button{width:27px!important;height:27px!important;border-radius:8px!important;border:1px solid #e0e8f2!important;background:#fff!important;color:#64748b!important;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.lh-home-announcement-card .lh-home-ann-nav>button:hover{border-color:#cbdcf2!important;background:#f3f7fc!important;color:#2563eb!important}
.lh-home-announcement-card .lh-home-ann-dots button{width:5px!important;height:5px!important;background:#cbd5e1!important}
.lh-home-announcement-card .lh-home-ann-dots button.is-active{width:18px!important;background:#3b82f6!important}
@media(max-width:1180px){.lh-home-hero-row.has-announcements{grid-template-columns:minmax(0,1.55fr) minmax(330px,1fr)}}
@media(max-width:900px){.lh-home-hero-row.has-announcements{grid-template-columns:1fr}.lh-home-hero-row .lh-home-announcement-card{min-height:170px!important}}
@media(max-width:560px){.lh-home-announcement-card .lh-home-ann-track{padding:12px}.lh-home-announcement-card .lh-home-ann-slide{padding-left:10px}.lh-home-announcement-card .lh-home-ann-detail span{display:none}.lh-home-announcement-card .lh-home-ann-detail{width:34px!important;padding:0!important;justify-content:center}.lh-home-announcement-card .lh-home-ann-copy p{-webkit-line-clamp:1}}

/* 2026-08-26 - Home announcements premium compact card v6 */
.lh-home-hero-row .lh-home-announcement-card{position:relative!important;min-height:224px!important;padding:0!important;border:1px solid #dce5f0!important;border-radius:18px!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;box-shadow:0 10px 30px rgba(15,23,42,.055)!important;overflow:hidden!important}
.lh-home-announcement-card .lh-home-ann-accent{position:absolute!important;left:0!important;top:18px!important;bottom:18px!important;width:3px!important;height:auto!important;border-radius:0 4px 4px 0!important;background:linear-gradient(180deg,#2563eb,#60a5fa)!important}
.lh-home-announcement-card .lh-home-ann-head{min-height:60px!important;margin:0 18px!important;padding:13px 0 11px!important;border-bottom:1px solid #e8eef5!important;background:transparent!important}
.lh-home-announcement-card .lh-home-ann-heading{gap:10px!important}.lh-home-announcement-card .lh-home-ann-icon{width:32px!important;height:32px!important;flex:0 0 32px!important;border:0!important;border-radius:10px!important;background:#eff6ff!important;color:#2563eb!important}.lh-home-announcement-card .lh-home-ann-icon svg{width:15px!important;height:15px!important}
.lh-home-announcement-card .lh-home-ann-label{font-size:12.5px!important;line-height:1.15!important;font-weight:750!important;color:#172033!important}.lh-home-announcement-card .lh-home-ann-heading small{display:block!important;margin-top:2px!important;font-size:9.5px!important;line-height:1.2!important;color:#8b99aa!important}
.lh-home-announcement-card .lh-home-ann-count{height:24px!important;min-width:40px!important;padding:0 8px!important;justify-content:center!important;border:1px solid #e4ebf4!important;border-radius:8px!important;background:#f7f9fc!important;color:#94a3b8!important;font-size:9.5px!important}.lh-home-announcement-card .lh-home-ann-count b{font-size:10.5px!important;color:#2563eb!important}
.lh-home-announcement-card .lh-home-ann-track{flex:1!important;min-height:105px!important;padding:13px 18px 10px!important;background:transparent!important;display:flex!important;align-items:stretch!important}
.lh-home-announcement-card .lh-home-ann-slide{position:relative!important;width:100%!important;min-height:82px!important;padding:13px 13px 12px 64px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;border:1px solid #e6edf6!important;border-radius:13px!important;background:#fff!important;box-shadow:0 3px 10px rgba(15,23,42,.025)!important}
.lh-home-announcement-card .lh-home-ann-slide:before{content:""!important;position:absolute!important;left:13px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;width:39px!important;height:39px!important;border-radius:11px!important;background:#edf5ff!important}
.lh-home-announcement-card .lh-home-ann-slide:after{content:""!important;position:absolute!important;left:24px!important;top:50%!important;width:17px!important;height:17px!important;transform:translateY(-50%)!important;background:no-repeat center/17px 17px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563eb' stroke-width='1.8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M10.34 6.75H5.25A2.25 2.25 0 0 0 3 9v2.25a2.25 2.25 0 0 0 2.25 2.25h.83l1.42 4.25h2.25l-1.42-4.25h2.01l6.91 3.75V3l-6.91 3.75ZM17.25 8.25a3 3 0 0 1 0 4.5'/%3E%3C/svg%3E")!important}
.lh-home-announcement-card .lh-home-ann-copy{min-width:0!important;padding:0!important}.lh-home-announcement-card .lh-home-ann-kicker{display:inline-flex!important;align-items:center!important;height:18px!important;margin:0 0 4px!important;padding:0 6px!important;border-radius:5px!important;background:#eff6ff!important;color:#2563eb!important;font-size:8px!important;line-height:1!important;font-weight:800!important;letter-spacing:.05em!important}
.lh-home-announcement-card .lh-home-ann-copy h3{margin:0 0 4px!important;font-size:13px!important;line-height:1.25!important;font-weight:700!important;color:#162033!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.lh-home-announcement-card .lh-home-ann-copy p{margin:0!important;font-size:10.5px!important;line-height:1.4!important;color:#748297!important;-webkit-line-clamp:1!important}
.lh-home-announcement-card .lh-home-ann-detail{height:32px!important;padding:0 10px!important;border:1px solid #dbe7f7!important;border-radius:9px!important;background:#f7faff!important;color:#2563eb!important;font-size:10px!important;font-weight:650!important;box-shadow:none!important}.lh-home-announcement-card .lh-home-ann-detail:hover{background:#eef5ff!important;border-color:#c7daf5!important;transform:translateY(-1px)!important}
.lh-home-announcement-card .lh-home-ann-nav{min-height:45px!important;margin:0 18px!important;padding:9px 0 11px!important;border-top:1px solid #e8eef5!important;background:transparent!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important}.lh-home-announcement-card .lh-home-ann-dots{order:1!important;margin-right:auto!important;gap:5px!important}.lh-home-announcement-card .lh-home-ann-nav>button:first-child{order:2!important;margin-left:0!important}.lh-home-announcement-card .lh-home-ann-nav>button:last-child{order:3!important}.lh-home-announcement-card .lh-home-ann-nav>button{width:28px!important;height:28px!important;border:1px solid #e1e8f1!important;border-radius:8px!important;background:#fff!important;color:#64748b!important;font-size:14px!important;box-shadow:0 1px 3px rgba(15,23,42,.03)!important}.lh-home-announcement-card .lh-home-ann-dots button{width:6px!important;height:6px!important;border-radius:99px!important;background:#d6dee9!important}.lh-home-announcement-card .lh-home-ann-dots button.is-active{width:20px!important;background:#3b82f6!important}
@media(max-width:560px){.lh-home-hero-row .lh-home-announcement-card{min-height:210px!important}.lh-home-announcement-card .lh-home-ann-head,.lh-home-announcement-card .lh-home-ann-nav{margin-left:14px!important;margin-right:14px!important}.lh-home-announcement-card .lh-home-ann-track{padding-left:14px!important;padding-right:14px!important}.lh-home-announcement-card .lh-home-ann-slide{padding-left:57px!important}.lh-home-announcement-card .lh-home-ann-slide:before{left:11px!important;width:36px!important;height:36px!important}.lh-home-announcement-card .lh-home-ann-slide:after{left:21px!important}.lh-home-announcement-card .lh-home-ann-detail span{display:none!important}.lh-home-announcement-card .lh-home-ann-detail{width:32px!important;padding:0!important;justify-content:center!important}}

/* Topbar announcements v7 */
.lh-top-ann-wrap{position:relative;display:inline-flex;align-items:center}.lh-top-ann-popover[hidden]{display:none!important}.lh-top-ann-popover{position:absolute;z-index:1200;top:calc(100% + 12px);right:-8px;width:min(390px,calc(100vw - 24px));background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 50px rgba(15,23,42,.16);overflow:hidden;animation:lhTopAnnIn .16s ease}.lh-top-ann-popover:before{content:"";position:absolute;right:20px;top:-6px;width:11px;height:11px;background:#fff;border-left:1px solid #e2e8f0;border-top:1px solid #e2e8f0;transform:rotate(45deg)}.lh-top-ann-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px 12px;border-bottom:1px solid #eef2f6}.lh-top-ann-head>div{display:flex;flex-direction:column;gap:1px}.lh-top-ann-head strong{font-size:13px;color:#111827}.lh-top-ann-head small{font-size:10px;color:#94a3b8}.lh-top-ann-head>span{min-width:24px;height:22px;padding:0 7px;border-radius:7px;background:#eff6ff;color:#2563eb;font-size:10px;font-weight:700;display:grid;place-items:center}.lh-top-ann-list{max-height:330px;overflow:auto;padding:6px}.lh-top-ann-item{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) 14px;align-items:center;gap:10px;padding:10px;border:0;border-radius:11px;background:#fff;text-align:left;cursor:pointer;font:inherit;transition:background .15s ease}.lh-top-ann-item:hover{background:#f7faff}.lh-top-ann-item+.lh-top-ann-item{border-top:1px solid #f1f5f9;border-radius:0}.lh-top-ann-item-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#eff6ff;color:#2563eb}.lh-top-ann-item-icon svg{width:16px;height:16px}.lh-top-ann-item-copy{min-width:0;display:block}.lh-top-ann-item-copy small{display:block;margin-bottom:2px;color:#2563eb;font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.lh-top-ann-item-copy strong{display:block;color:#172033;font-size:12px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-top-ann-item-copy em{display:block;margin-top:3px;color:#7b8794;font-size:10px;line-height:1.3;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-top-ann-chevron{width:12px;height:12px;color:#94a3b8}.lh-top-ann-empty{padding:26px 18px;text-align:center;color:#94a3b8}.lh-top-ann-empty svg{width:24px;height:24px;margin-bottom:7px}.lh-top-ann-empty strong,.lh-top-ann-empty span{display:block}.lh-top-ann-empty strong{font-size:12px;color:#475569}.lh-top-ann-empty span{margin-top:3px;font-size:10px}.lh-top-ann-reminders{height:42px;padding:0 15px;border-top:1px solid #eef2f6;display:flex;align-items:center;gap:8px;color:#475569;text-decoration:none;font-size:11px;font-weight:650;background:#fbfcfe}.lh-top-ann-reminders:hover{background:#f8fafc;color:#2563eb}.lh-top-ann-reminders b{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#eff6ff;color:#2563eb;font-size:9px;display:grid;place-items:center}.lh-top-ann-reminders svg{width:11px;height:11px;margin-left:auto}.lh-top-ann-reminders b+svg{margin-left:0}@keyframes lhTopAnnIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@media(max-width:640px){.lh-top-ann-popover{position:fixed;top:62px;right:10px;left:10px;width:auto}.lh-top-ann-popover:before{display:none}.lh-top-ann-list{max-height:min(52vh,330px)}}
/* v8: compact topbar announcements + profile menu */
.lh-top-ann-popover{width:min(420px,calc(100vw - 24px));border-radius:18px;box-shadow:0 18px 45px rgba(15,23,42,.14)}
.lh-top-ann-head{padding:14px 16px}.lh-top-ann-head strong{font-size:14px}.lh-top-ann-head small{font-size:10px;margin-top:2px}
.lh-top-ann-list{padding:4px 10px;max-height:300px}.lh-top-ann-item{grid-template-columns:38px minmax(0,1fr) 14px;gap:11px;padding:11px 6px;border-radius:0}.lh-top-ann-item+.lh-top-ann-item{border-top:1px solid #edf1f6}.lh-top-ann-item:hover{background:#f8fbff;border-radius:10px}.lh-top-ann-item-icon{width:38px;height:38px;border-radius:11px}.lh-top-ann-item-copy small{font-size:8px}.lh-top-ann-item-copy strong{font-size:12px}.lh-top-ann-item-copy em{font-size:10px}.lh-top-ann-reminders{height:44px;padding:0 16px;background:#fff}
.lh-profile-menu-wrap{position:relative;display:inline-flex}.lh-profile-menu-wrap .lh-user-chip{border:1px solid #e2e8f0;background:#fff;cursor:pointer;font:inherit;padding-right:10px}.lh-profile-menu-caret{width:12px;height:12px;margin-left:2px;color:#64748b;transform:rotate(90deg)}
.lh-profile-popover[hidden]{display:none!important}.lh-profile-popover{position:absolute;z-index:1200;right:0;top:calc(100% + 12px);width:310px;background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 20px 50px rgba(15,23,42,.16);overflow:hidden;animation:lhTopAnnIn .16s ease}.lh-profile-popover:before{content:"";position:absolute;right:28px;top:-6px;width:11px;height:11px;background:#fff;border-left:1px solid #e2e8f0;border-top:1px solid #e2e8f0;transform:rotate(45deg)}
.lh-profile-popover-head{display:flex;align-items:center;gap:12px;padding:18px 16px 15px;border-bottom:1px solid #eef2f6}.lh-profile-popover-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ff7468,#f43f5e);color:#fff;font-weight:800;border:3px solid #fff;box-shadow:0 2px 10px rgba(244,63,94,.22)}.lh-profile-popover-head>div{min-width:0}.lh-profile-popover-head strong{display:block;color:#0f172a;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lh-profile-popover-head>div>div{display:flex;align-items:center;gap:6px;margin-top:7px}.lh-profile-popover-head span:not(.lh-profile-popover-avatar),.lh-profile-popover-head b{padding:3px 8px;border-radius:999px;background:#fff4d6;color:#a16207;font-size:9px;font-weight:750}.lh-profile-popover-head b{background:#fff0c2;color:#b45309}
.lh-profile-popover-nav{padding:7px}.lh-profile-popover-nav a{display:grid;grid-template-columns:22px 1fr 12px;align-items:center;gap:10px;min-height:44px;padding:0 10px;border-radius:10px;color:#334155;text-decoration:none;font-size:12px;font-weight:600}.lh-profile-popover-nav a:hover{background:#f8fafc;color:#2563eb}.lh-profile-popover-nav svg{width:18px;height:18px;color:#64748b}.lh-profile-popover-nav .arrow{width:11px;height:11px;color:#94a3b8}.lh-profile-popover-logout{display:flex;align-items:center;gap:10px;height:48px;padding:0 17px;border-top:1px solid #eef2f6;color:#dc2626;text-decoration:none;font-size:12px;font-weight:650}.lh-profile-popover-logout:hover{background:#fff7f7}.lh-profile-popover-logout svg{width:18px;height:18px}
@media(max-width:640px){.lh-profile-popover{position:fixed;top:62px;right:10px;width:min(310px,calc(100vw - 20px))}.lh-profile-popover:before{display:none}}


/* v10 - compact topbar menus matching the existing portal design */
.lh-top-ann-popover{right:-8px;width:min(380px,calc(100vw - 24px));top:calc(100% + 10px);border-radius:14px;border-color:#e3eaf3;box-shadow:0 14px 34px rgba(31,55,86,.12);overflow:hidden}
.lh-top-ann-popover:before{right:19px}
.lh-top-ann-head{min-height:58px;padding:11px 14px;border-bottom:1px solid #edf1f6;background:#fff}
.lh-top-ann-head strong{font-size:13px;font-weight:700;color:#172033}.lh-top-ann-head small{font-size:9px;margin-top:2px;color:#91a0b5}
.lh-top-ann-head-actions{display:flex;align-items:center;gap:8px}.lh-top-ann-head-actions>span{font-size:10px;font-weight:650;color:#2563eb}.lh-top-ann-head-actions>b{min-width:23px;height:23px;padding:0 7px;border-radius:7px;background:#eff6ff;color:#2563eb;display:grid;place-items:center;font-size:9px}
.lh-top-ann-list{padding:5px 8px;max-height:260px;background:#fff}.lh-top-ann-item{grid-template-columns:36px minmax(0,1fr) 14px;gap:9px;min-height:66px;padding:8px 7px;border-radius:9px;background:#fff}.lh-top-ann-item+.lh-top-ann-item{border-top:1px solid #f0f3f7}.lh-top-ann-item:hover{background:#f7faff;border-radius:9px}
.lh-top-ann-item-icon{width:36px;height:36px;border-radius:10px;background:#eff6ff;color:#2563eb}.lh-top-ann-item-icon svg{width:16px;height:16px}
.lh-top-ann-item-copy small{margin:0 0 2px;font-size:7px;line-height:1.1;font-weight:800;letter-spacing:.045em}.lh-top-ann-item-copy strong{font-size:11px;line-height:1.25;font-weight:700}.lh-top-ann-item-copy em{margin-top:2px;font-size:9px;line-height:1.25}.lh-top-ann-item-copy time{display:none}
.lh-top-ann-item-side{height:auto;display:flex;align-items:center;justify-content:center;padding:0}.lh-top-ann-item-side i{display:none}.lh-top-ann-chevron{width:11px;height:11px;color:#8da0b8}
.lh-top-ann-reminders{height:40px;padding:0 14px;background:#fbfcfe;border-top:1px solid #edf1f6;font-size:10px;font-weight:650}.lh-top-ann-reminders:before{display:none}.lh-top-ann-reminders svg{width:10px;height:10px}
/* keep profile menu compact and consistent with the existing header */
.lh-profile-menu-wrap .lh-user-chip{min-height:44px;border-radius:24px;box-shadow:none}.lh-profile-popover{top:calc(100% + 10px);width:300px;border-radius:14px;box-shadow:0 14px 34px rgba(31,55,86,.12)}
.lh-profile-popover-head{padding:14px 15px 12px;gap:11px}.lh-profile-popover-avatar{width:44px;height:44px;flex-basis:44px}.lh-profile-popover-head strong{font-size:13px}.lh-profile-popover-head>div>small{font-size:10px}.lh-profile-popover-head>div>div{margin-top:6px}.lh-profile-popover-nav{padding:6px}.lh-profile-popover-nav a{min-height:40px;font-size:11px}.lh-profile-popover-logout{height:44px;font-size:11px}
@media(max-width:640px){.lh-top-ann-popover{position:fixed;top:60px;right:8px;left:8px;width:auto}.lh-top-ann-head-actions>span{display:none}.lh-top-ann-list{max-height:45vh}.lh-profile-popover{position:fixed;top:60px;right:8px;width:min(300px,calc(100vw - 16px))}.lh-top-ann-popover:before,.lh-profile-popover:before{display:none}}

/* ==========================================================
   TOPBAR DUYURULAR - flat / clean notification list (V11)
   Sadece duyuru popover tasarimini etkiler.
   ========================================================== */
.lh-top-ann-popover{
  right:-8px;
  top:calc(100% + 10px);
  width:min(390px,calc(100vw - 24px));
  background:#fff;
  border:1px solid #e3eaf3;
  border-radius:14px;
  box-shadow:0 14px 34px rgba(31,55,86,.12);
  overflow:hidden;
}
.lh-top-ann-popover:before{right:19px;background:#fff;border-color:#e3eaf3}
.lh-top-ann-head{
  min-height:68px;
  padding:14px 16px;
  background:#fff;
  border-bottom:1px solid #e9eef5;
}
.lh-top-ann-head>div:first-child{gap:2px}
.lh-top-ann-head strong{font-size:14px;line-height:1.25;font-weight:700;color:#172033}
.lh-top-ann-head small{font-size:10px;line-height:1.3;color:#8797ad}
.lh-top-ann-head-actions{display:flex;align-items:center;gap:10px}
.lh-top-ann-head-actions>span{font-size:10px;font-weight:700;color:#2563eb;white-space:nowrap}
.lh-top-ann-head-actions>span:after{content:' ›';font-size:15px;line-height:0;vertical-align:-1px}
.lh-top-ann-head-actions>b{
  min-width:26px;height:26px;padding:0 7px;border-radius:8px;
  background:#f2f6ff;color:#2563eb;font-size:10px;font-weight:700;
  display:grid;place-items:center
}
.lh-top-ann-list{
  padding:0 16px;
  max-height:360px;
  overflow:auto;
  background:#fff;
}
.lh-top-ann-item{
  width:100%;
  min-height:116px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 18px;
  align-items:center;
  gap:14px;
  padding:17px 0;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  text-align:left;
  cursor:pointer;
  font:inherit;
  transition:none;
}
.lh-top-ann-item:hover,.lh-top-ann-item:focus,.lh-top-ann-item:active{
  background:transparent;
  border-radius:0;
  box-shadow:none;
  transform:none;
  outline:none;
}
.lh-top-ann-item+.lh-top-ann-item{border-top:1px solid #e9eef5;border-radius:0}
.lh-top-ann-item-icon{
  width:44px;height:44px;border-radius:12px;
  display:grid;place-items:center;
  background:#f0f5ff;color:#2563eb;
  flex:none
}
.lh-top-ann-item-icon svg{width:19px;height:19px}
.lh-top-ann-item-copy{min-width:0;display:block}
.lh-top-ann-item-copy small{
  display:block;margin:0 0 5px;
  color:#1263e8;font-size:8px;line-height:1.15;
  font-weight:800;letter-spacing:.045em;text-transform:uppercase
}
.lh-top-ann-item-copy strong{
  display:block;color:#172033;font-size:12px;line-height:1.25;font-weight:700;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.lh-top-ann-item-copy em{
  display:block;margin-top:5px;color:#718198;font-size:10px;line-height:1.25;
  font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.lh-top-ann-item-copy time{
  display:block;margin-top:9px;color:#718198;font-size:9px;line-height:1.2;font-style:normal
}
.lh-top-ann-item-side{
  height:100%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;
  padding:2px 0 3px
}
.lh-top-ann-item-side i{
  display:block;width:7px;height:7px;border-radius:50%;background:#2875f5;
  box-shadow:0 0 0 3px #eef5ff
}
.lh-top-ann-chevron{width:12px;height:12px;color:#6f829a}
.lh-top-ann-reminders{
  min-height:48px;height:48px;padding:0 16px;
  display:flex;align-items:center;gap:10px;
  background:#fff;border-top:1px solid #e9eef5;
  color:#44546a;text-decoration:none;font-size:11px;font-weight:650;
  transition:none
}
.lh-top-ann-reminders:before{
  content:'';display:block;width:16px;height:16px;flex:0 0 16px;
  border:1.6px solid #75879d;border-radius:3px;
  box-sizing:border-box
}
.lh-top-ann-reminders:hover,.lh-top-ann-reminders:focus{background:#fff;color:#44546a;text-decoration:none}
.lh-top-ann-reminders b{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#eff6ff;color:#2563eb;font-size:9px;display:grid;place-items:center}
.lh-top-ann-reminders svg{width:11px;height:11px;margin-left:auto;color:#6f829a}
.lh-top-ann-reminders b+svg{margin-left:0}
@media(max-width:640px){
  .lh-top-ann-popover{position:fixed;top:60px;right:8px;left:8px;width:auto}
  .lh-top-ann-list{max-height:55vh;padding:0 14px}
  .lh-top-ann-item{min-height:104px;grid-template-columns:40px minmax(0,1fr) 16px;gap:11px;padding:14px 0}
  .lh-top-ann-item-icon{width:40px;height:40px;border-radius:11px}
  .lh-top-ann-head-actions>span{display:block}
}

/* ==========================================================
   V13 - TOPBAR PROFIL / kurumsal sade tasarim
   ========================================================== */
.lh-profile-menu-wrap .lh-user-chip{
  min-height:46px!important;
  padding:4px 8px 4px 5px!important;
  gap:8px!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  box-shadow:none!important;
  transition:background .15s ease!important;
}
.lh-profile-menu-wrap .lh-user-chip:hover,
.lh-profile-menu-wrap .lh-user-chip[aria-expanded="true"]{
  background:#f6f9fc!important;
}
.lh-profile-menu-wrap .lh-avatar{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 1px #e7edf5!important;
}
.lh-profile-menu-wrap .lh-user-text{gap:1px!important;min-width:0!important}
.lh-profile-menu-wrap .lh-user-text strong{font-size:12px!important;line-height:1.25!important;font-weight:700!important;color:#172033!important}
.lh-profile-menu-wrap .lh-user-text small{font-size:9px!important;line-height:1.2!important;font-weight:700!important;color:#a16207!important;background:#fff3cf!important;padding:2px 7px!important;border-radius:999px!important;width:max-content!important}
.lh-profile-menu-wrap .lh-member-points{height:25px!important;min-width:48px!important;padding:0 9px!important;border:0!important;border-radius:999px!important;background:#f59e0b!important;color:#fff!important;font-size:9px!important;font-weight:800!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important}
.lh-profile-menu-caret{width:11px!important;height:11px!important;margin-left:0!important;color:#718096!important}

.lh-profile-popover{
  top:calc(100% + 9px)!important;
  right:0!important;
  width:286px!important;
  padding:8px!important;
  border:0!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 18px 48px rgba(31,55,86,.16)!important;
  overflow:visible!important;
}
.lh-profile-popover:before{
  right:22px!important;
  top:-5px!important;
  width:10px!important;
  height:10px!important;
  border:0!important;
  background:#fff!important;
  box-shadow:-2px -2px 5px rgba(31,55,86,.025)!important;
}
.lh-profile-popover-head{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  padding:10px 10px 12px!important;
  border:0!important;
  background:transparent!important;
}
.lh-profile-popover-avatar{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 1px #e8edf4!important;
}
.lh-profile-popover-head>div{min-width:0!important;flex:1!important}
.lh-profile-popover-head strong{font-size:13px!important;line-height:1.25!important;font-weight:750!important;color:#172033!important}
.lh-profile-popover-head>div>small{display:block!important;margin-top:2px!important;font-size:9.5px!important;line-height:1.3!important;color:#8492a6!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.lh-profile-popover-head>div>div{display:flex!important;align-items:center!important;gap:5px!important;margin-top:6px!important}
.lh-profile-popover-head span:not(.lh-profile-popover-avatar),
.lh-profile-popover-head b{padding:3px 7px!important;border:0!important;border-radius:999px!important;font-size:8.5px!important;line-height:1.2!important;font-weight:750!important;box-shadow:none!important}
.lh-profile-popover-head span:not(.lh-profile-popover-avatar){background:#fff3cf!important;color:#a16207!important}
.lh-profile-popover-head b{background:#fff7e6!important;color:#d97706!important}

.lh-profile-popover-nav{padding:3px 2px 5px!important;border:0!important}
.lh-profile-popover-nav a{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 12px!important;
  align-items:center!important;
  gap:9px!important;
  min-height:46px!important;
  padding:5px 9px!important;
  border:0!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#334155!important;
  font-size:11px!important;
  font-weight:650!important;
  box-shadow:none!important;
}
.lh-profile-popover-nav a:hover{background:#f6f9fc!important;color:#172033!important}
.lh-profile-popover-nav a>svg:first-child{
  width:34px!important;
  height:34px!important;
  padding:8px!important;
  border-radius:10px!important;
  background:#f1f6ff!important;
  color:#2563eb!important;
}
.lh-profile-popover-nav .arrow{width:10px!important;height:10px!important;color:#9aa8ba!important}
.lh-profile-popover-logout{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  align-items:center!important;
  gap:9px!important;
  min-height:46px!important;
  margin-top:2px!important;
  padding:5px 11px!important;
  border:0!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#dc2626!important;
  font-size:11px!important;
  font-weight:650!important;
}
.lh-profile-popover-logout:hover{background:#fff5f5!important}
.lh-profile-popover-logout svg{width:34px!important;height:34px!important;padding:8px!important;border-radius:10px!important;background:#fff1f2!important;color:#dc2626!important}
@media(max-width:640px){
  .lh-profile-popover{position:fixed!important;top:60px!important;right:8px!important;width:min(286px,calc(100vw - 16px))!important}
  .lh-profile-popover:before{display:none!important}
}

/* ==========================================================
   V14 - TOPBAR PROFIL / compact identity + refined dropdown
   ========================================================== */
.lh-profile-menu-wrap .lh-user-chip{
  min-height:48px!important;
  padding:4px 7px 4px 4px!important;
  gap:8px!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
  background:transparent!important;
  box-shadow:none!important;
  position:relative!important;
}
.lh-profile-menu-wrap .lh-user-chip:hover,
.lh-profile-menu-wrap .lh-user-chip[aria-expanded="true"]{
  background:#f8fafc!important;
  border-color:#edf2f7!important;
}
.lh-profile-menu-wrap .lh-avatar{
  width:39px!important;height:39px!important;flex:0 0 39px!important;
  border:2px solid #fff!important;
  box-shadow:0 2px 8px rgba(30,55,90,.10),0 0 0 1px #e6edf5!important;
}
.lh-profile-menu-wrap .lh-user-text{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:center!important;gap:3px!important;min-width:88px!important;
}
.lh-profile-menu-wrap .lh-user-text strong{
  max-width:132px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  font-size:12px!important;line-height:1.15!important;font-weight:750!important;color:#172033!important;
}
.lh-profile-menu-wrap .lh-user-text small{
  padding:2px 7px!important;border:0!important;border-radius:999px!important;
  background:#fff4d6!important;color:#9a6700!important;font-size:8.5px!important;line-height:1.15!important;font-weight:750!important;
}
.lh-profile-menu-wrap .lh-member-points{
  height:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;color:#d88700!important;font-size:9.5px!important;font-weight:800!important;white-space:nowrap!important;
}
.lh-profile-menu-wrap .lh-member-points:before{content:'•';margin-right:6px;color:#d7dee8;font-weight:500}
.lh-profile-menu-caret{width:10px!important;height:10px!important;margin-left:1px!important;color:#8b9aaf!important}

.lh-profile-popover{
  top:calc(100% + 10px)!important;right:0!important;width:292px!important;padding:10px!important;
  border:1px solid #e8eef5!important;border-radius:17px!important;background:#fff!important;
  box-shadow:0 18px 45px rgba(31,55,86,.14)!important;overflow:visible!important;
}
.lh-profile-popover:before{
  content:''!important;position:absolute!important;right:24px!important;top:-6px!important;width:11px!important;height:11px!important;
  background:#fff!important;border-left:1px solid #e8eef5!important;border-top:1px solid #e8eef5!important;
  transform:rotate(45deg)!important;box-shadow:none!important;
}
.lh-profile-popover-head{
  display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;
  padding:10px!important;border:0!important;border-radius:13px!important;background:#f8fafc!important;
}
.lh-profile-popover-avatar{
  width:48px!important;height:48px!important;flex:0 0 48px!important;border:2px solid #fff!important;
  box-shadow:0 3px 10px rgba(30,55,90,.11),0 0 0 1px #e4ebf3!important;
}
.lh-profile-popover-head>div{min-width:0!important}
.lh-profile-popover-head strong{display:block!important;font-size:13px!important;line-height:1.2!important;font-weight:750!important;color:#172033!important}
.lh-profile-popover-head>div>small{
  display:block!important;margin-top:3px!important;font-size:9.5px!important;line-height:1.25!important;color:#7d8ca1!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
.lh-profile-popover-head>div>div{display:flex!important;align-items:center!important;gap:7px!important;margin-top:7px!important}
.lh-profile-popover-head span:not(.lh-profile-popover-avatar){
  padding:3px 7px!important;border:0!important;border-radius:999px!important;background:#fff1c7!important;color:#966100!important;
  font-size:8.5px!important;line-height:1.15!important;font-weight:750!important;
}
.lh-profile-popover-head b{
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#d88700!important;
  font-size:9px!important;line-height:1.15!important;font-weight:800!important;
}
.lh-profile-popover-head b:before{content:'•';margin-right:7px;color:#cbd5e1;font-weight:500}

.lh-profile-popover-nav{padding:8px 0 4px!important;border:0!important}
.lh-profile-popover-nav a{
  display:grid!important;grid-template-columns:32px minmax(0,1fr) 11px!important;align-items:center!important;gap:10px!important;
  min-height:48px!important;padding:6px 8px!important;border:0!important;border-radius:11px!important;background:transparent!important;
  color:#334155!important;font-size:11px!important;font-weight:650!important;text-decoration:none!important;
}
.lh-profile-popover-nav a:hover{background:#f7f9fc!important;color:#172033!important}
.lh-profile-popover-nav a>svg:first-child{
  width:32px!important;height:32px!important;padding:7px!important;border-radius:9px!important;background:#eef5ff!important;color:#2563eb!important;
}
.lh-profile-popover-nav .arrow{width:10px!important;height:10px!important;color:#a1aec0!important}
.lh-profile-popover-logout{
  display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;
  min-height:46px!important;margin-top:2px!important;padding:6px 8px!important;border:0!important;border-radius:11px!important;
  background:transparent!important;color:#c92a2a!important;font-size:11px!important;font-weight:650!important;text-decoration:none!important;
}
.lh-profile-popover-logout:hover{background:#fff7f7!important;color:#b42318!important}
.lh-profile-popover-logout svg{
  width:32px!important;height:32px!important;padding:7px!important;border-radius:9px!important;background:#fff1f2!important;color:#dc2626!important;
}
@media(max-width:640px){
  .lh-profile-menu-wrap .lh-user-text{min-width:0!important}
  .lh-profile-menu-wrap .lh-member-points{display:none!important}
  .lh-profile-popover{position:fixed!important;top:60px!important;right:8px!important;width:min(292px,calc(100vw - 16px))!important}
  .lh-profile-popover:before{display:none!important}
}

/* ==========================================================
   V15 - PREMIUM KIMLIK (Option 3)
   Scoped only to topbar profile identity + its dropdown.
   ========================================================== */
.lh-profile-menu-wrap .lh-user-chip{
  min-height:46px!important;padding:3px 7px 3px 3px!important;gap:8px!important;
  border:0!important;background:transparent!important;border-radius:14px!important;box-shadow:none!important;
}
.lh-profile-menu-wrap .lh-user-chip:hover,
.lh-profile-menu-wrap .lh-user-chip[aria-expanded="true"]{background:#f7f9fc!important;border:0!important;box-shadow:none!important}
.lh-premium-avatar-wrap{position:relative!important;display:inline-flex!important;flex:0 0 auto!important}
.lh-profile-menu-wrap .lh-avatar{
  width:38px!important;height:38px!important;flex:0 0 38px!important;border:2px solid #fff!important;
  box-shadow:0 0 0 1px #dfe7f1,0 3px 9px rgba(28,49,78,.10)!important;
}
.lh-premium-crown{
  position:absolute!important;right:-3px!important;bottom:-2px!important;width:15px!important;height:15px!important;
  display:grid!important;place-items:center!important;border:2px solid #fff!important;border-radius:50%!important;
  background:#d89a18!important;color:#fff!important;box-shadow:0 2px 5px rgba(128,86,0,.18)!important;
}
.lh-premium-crown svg{width:9px!important;height:9px!important;display:block!important}
.lh-profile-menu-wrap .lh-user-text{min-width:92px!important;gap:3px!important;align-items:flex-start!important}
.lh-profile-menu-wrap .lh-user-text strong{font-size:12px!important;font-weight:750!important;color:#152238!important;line-height:1.12!important}
.lh-profile-menu-wrap .lh-user-text .lh-premium-top-points{
  padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;
  color:#697b93!important;font-size:9px!important;font-weight:650!important;line-height:1.1!important;
}
.lh-profile-menu-wrap .lh-member-points{display:none!important}
.lh-profile-menu-caret{width:10px!important;height:10px!important;margin-left:2px!important;color:#7f90a7!important}

.lh-profile-popover{width:286px!important;padding:0!important;border:1px solid #e5ebf3!important;border-radius:15px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 16px 38px rgba(30,48,74,.13)!important}
.lh-profile-popover:before{right:25px!important;background:#fff!important}
.lh-profile-popover-head{display:grid!important;grid-template-columns:50px minmax(0,1fr)!important;gap:12px!important;padding:15px!important;background:#fff!important;border:0!important;border-radius:0!important}
.lh-profile-popover-avatar{width:50px!important;height:50px!important;border:2px solid #fff!important;box-shadow:0 0 0 1px #e1e8f0,0 3px 10px rgba(29,48,76,.10)!important}
.lh-profile-popover-head strong{font-size:13px!important;font-weight:760!important;color:#142036!important}
.lh-profile-popover-head>div>small{margin-top:3px!important;color:#8290a3!important;font-size:9px!important}
.lh-profile-popover-head .lh-premium-meta{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;margin-top:7px!important}
.lh-profile-popover-head .lh-premium-badge{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:0!important;background:transparent!important;color:#9b6b08!important;font-size:9px!important;font-weight:750!important}
.lh-profile-popover-head .lh-premium-badge svg{width:12px!important;height:12px!important;flex:0 0 12px!important}
.lh-profile-popover-head .lh-premium-meta b{padding:0!important;background:transparent!important;color:#667892!important;font-size:9.5px!important;font-weight:700!important}
.lh-profile-popover-head .lh-premium-meta b:before{display:none!important}
.lh-profile-popover-nav{padding:5px 8px!important;border-top:1px solid #eef2f6!important;border-bottom:1px solid #eef2f6!important}
.lh-profile-popover-nav a{min-height:44px!important;padding:0 8px!important;border-radius:10px!important;background:transparent!important;color:#25344a!important;font-size:11px!important;font-weight:650!important}
.lh-profile-popover-nav a:hover{background:#f7f9fc!important}
.lh-profile-popover-nav a>svg:not(.arrow){width:18px!important;height:18px!important;padding:0!important;background:transparent!important;color:#60748f!important}
.lh-profile-popover-nav a .arrow{width:10px!important;height:10px!important;color:#94a3b8!important}
.lh-profile-popover-logout{min-height:46px!important;margin:5px 8px 8px!important;padding:0 8px!important;border-radius:10px!important;background:transparent!important;color:#dc2626!important;font-size:11px!important;font-weight:650!important}
.lh-profile-popover-logout:hover{background:#fff6f6!important}
.lh-profile-popover-logout svg{width:18px!important;height:18px!important;padding:0!important;background:transparent!important;color:#dc2626!important}
@media(max-width:640px){.lh-profile-menu-wrap .lh-user-text{display:none!important}.lh-profile-menu-caret{display:none!important}.lh-profile-menu-wrap .lh-user-chip{padding:3px!important}}
/* V15.2 - Profile dropdown compact spacing + guaranteed logout action */
.lh-profile-popover{width:272px!important}
.lh-profile-popover-head{grid-template-columns:42px minmax(0,1fr)!important;gap:10px!important;padding:12px 13px 10px!important}
.lh-profile-popover-avatar{width:42px!important;height:42px!important}
.lh-profile-popover-head>div>small{display:none!important}
.lh-profile-popover-head .lh-premium-meta{flex-direction:row!important;flex-wrap:wrap!important;gap:5px 9px!important;margin-top:5px!important}
.lh-profile-popover-nav{padding:4px 7px!important}
.lh-profile-popover-nav a{min-height:38px!important;padding:0 7px!important}
.lh-profile-popover-logout{display:flex!important;align-items:center!important;gap:9px!important;min-height:40px!important;height:40px!important;margin:0!important;padding:0 14px!important;border-radius:0!important;border-top:1px solid #eef2f6!important;background:#fff!important;color:#dc2626!important;text-decoration:none!important;font-size:11px!important;font-weight:700!important}
.lh-profile-popover-logout:hover{background:#fff7f7!important;color:#b91c1c!important}
.lh-profile-popover-logout svg{display:block!important;width:17px!important;height:17px!important;flex:0 0 17px!important;padding:0!important;background:transparent!important;color:currentColor!important}
@media(max-width:640px){.lh-profile-popover{width:min(272px,calc(100vw - 16px))!important}}

/* V16 - e-hizmetler Word feedback visual fixes */
.lh-app h1,.lh-app h2,.lh-app h3,.lh-app h4,.lh-app strong,.lh-app b,.lh-app button,.lh-app label,.lh-app .lh-eyebrow,.lh-app .lh-section-kicker,.lh-app .lh-card-action,.lh-app .lh-status,.lh-app .lh-pill,.lh-app .lh-list-status{font-weight:550!important;letter-spacing:0!important}
.lh-app p,.lh-app span,.lh-app small,.lh-app em,.lh-app input,.lh-app select{letter-spacing:0!important}
.lh-top-cta,.lh-btn,.lh-action,.lh-card-action,.lh-emergency-action,.online-btn,.appointment-next,.appointment-back,.refpro-actions a,.refpro-copy-top{border-radius:9px!important;font-weight:550!important}
.lh-language-select{min-width:82px!important;height:38px!important;display:inline-flex!important;align-items:center!important;gap:7px!important;border:1px solid #dbe5f0!important;border-radius:9px!important;padding:0 10px!important;background:#fff!important}
.lh-language-select span{color:#61738b!important;font-size:12px!important;font-weight:500!important}
.lh-language-select select{min-width:46px!important;height:30px!important;border:0!important;padding:0 20px 0 0!important;background:transparent!important;color:#14243b!important;font-size:12px!important;font-weight:550!important;line-height:1!important}
.lh-notification-bell,.lh-notification-bell:hover,.lh-notification-bell:focus-visible{border-radius:50%!important}
.lh-notification-bell:hover,.lh-notification-bell:focus-visible{border-color:#d8e3ef!important;background:#f4f8fc!important}
.lh-top-ann-item-icon,.lh-ann-detail-icon{background:#eef6ff!important;color:#1463a5!important}
.lh-ann-detail-icon img{width:24px!important;height:24px!important;object-fit:contain!important}
.lh-ann-detail-close{right:-4px!important;top:-4px!important;border-radius:50%!important}
.lh-ann-detail-close:hover{border-radius:50%!important}
.lh-pwa-prompt{border-color:#dbe7f1!important;border-radius:14px!important}
.lh-pwa-prompt-copy strong,.lh-pwa-prompt-copy span{font-size:13px!important}
.lh-pwa-prompt-actions .primary,.lh-pwa-prompt button.primary{background:#1768e5!important;border-color:#1768e5!important;color:#fff!important}
.lh-pwa-prompt-close{border-radius:50%!important}
.lh-premium-crown{display:none!important}
.lh-premium-badge svg{width:14px!important;height:14px!important}
.lh-profile-menu-wrap .lh-user-text strong,.lh-profile-popover-head strong{font-weight:550!important}
.lh-profile-popover-head .lh-premium-badge{color:#1768e5!important}
.lh-doctor-grid-modern{gap:18px!important}
.lh-doctor-profile-card-modern{padding:18px!important;background:#fff url("https://lokmanhekim.com.tr/wp-content/uploads/2026/06/doktor-arkaplani.webp") right bottom/180px auto no-repeat!important}
.lh-doctor-photo-wrap{width:64px!important;height:84px!important;flex:0 0 64px!important;border-radius:13px!important;overflow:hidden!important;background:#eef4fb!important}
.lh-doctor-photo.large{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center top!important}
.lh-doctor-profile-card-modern h2,.lh-doctor-profile-card-modern .lh-doctor-name-link{font-size:15px!important;font-weight:550!important}
.doctor-card{grid-template-columns:96px minmax(0,1fr)!important;min-height:144px!important}
.doctor-card-avatar,.selected-doctor-avatar{width:96px!important;min-height:144px!important;height:100%!important;border-radius:0!important;background:#eef6ff!important}
.doctor-card-content strong{font-size:16px!important;font-weight:550!important}
.online-modal-head-pro{min-height:92px!important}
.online-modal-head-pro #onlineConsultationTitle{font-size:25px!important;font-weight:500!important}
.online-modal-head-pro p{max-width:620px!important;font-size:12px!important}
.online-modal-head-meta span,.online-modal-head-meta em{font-weight:500!important}
.online-btn{min-height:40px!important;padding:0 14px!important;white-space:nowrap!important}
.online-btn.primary#onlineContinueBtn{min-width:184px!important}
.online-btn.primary#onlineContinueBtn span{flex:0 0 auto!important}
.lh-emergency-hero{align-items:center!important}
.lh-emergency-callout{align-content:center!important}
.lh-emergency-callout a,.lh-emergency-contact-grid a[href="tel:112"]{min-height:40px!important;border-radius:10px!important}
.lh-emergency-callout a:before{content:"";width:18px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='2'%3E%3Cpath d='M3 12h4l2-5 4 10 2-5h6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.lh-emergency-card-head{align-items:center!important}
.lh-emergency-assessment.is-empty .lh-emergency-meter i{width:0!important}
.lh-emergency-assessment.is-empty footer strong{color:#64748b!important;font-size:18px!important}
.lh-live-card .lh-emergency-action{min-height:40px!important;padding:0 14px!important}
.lh-report-filter-pro,.lh-lab-filter-bar{grid-template-columns:repeat(5,minmax(160px,1fr)) auto!important;align-items:end!important}
.lh-report-filter-pro label,.lh-lab-filter-bar label{min-width:0!important}
.lh-report-filter-pro select,.lh-lab-filter-bar select{min-height:42px!important;padding-right:32px!important;white-space:normal!important}
.lh-report-filter-pro a,.lh-lab-filter-bar a{min-height:42px!important;white-space:nowrap!important}
.lh-report-card em,.lh-lab-card em{color:#0f4c81!important;background:#eaf4ff!important;border:1px solid #c9e1ff!important}
.lh-report-card em.is-pending,.lh-lab-card em.is-pending{color:#8a4f00!important;background:#fff6df!important;border-color:#f4d58a!important}
.lh-report-dialog-head-pro .lh-report-modal-brand{min-width:0!important}
.lh-duty-panel-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important}
.lh-location-btn{width:auto!important;min-width:132px!important;min-height:40px!important;justify-self:end!important}
.lh-pharmacy-manual-pro{grid-template-columns:repeat(2,minmax(180px,1fr)) auto!important}
.lh-search-btn{min-width:104px!important;min-height:40px!important}
.lh-duty-pharmacy-list-pro.is-ready{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.lh-duty-pharmacy-item{border-radius:13px!important;padding:15px!important}
.lh-duty-card-title strong,.lh-duty-result-toolbar strong{font-size:14px!important;font-weight:550!important}
.lh-duty-pharmacy-main p{font-size:12.5px!important;line-height:1.55!important}
.lh-duty-pharmacy-item nav{gap:8px!important}
.lh-diagnosis-layout-clean{grid-template-columns:minmax(0,1fr) minmax(320px,380px)!important}
.lh-clinical-map-card{overflow:hidden!important}
.lh-enabiz-workspace-pro{min-height:560px!important;overflow:hidden!important}
.lh-enabiz-stage{min-width:0!important;max-width:100%!important}
.lh-human-anatomy-svg{max-width:min(100%,420px)!important;height:auto!important}
.lh-bluetooth-panel{grid-template-columns:minmax(0,1fr) minmax(320px,auto)!important;align-items:center!important}
.lh-bluetooth-actions{display:grid!important;grid-template-columns:minmax(180px,1fr) auto!important;gap:10px!important}
.lh-bluetooth-actions .lh-btn{min-width:132px!important;min-height:40px!important}
.lh-health-card-copy small{min-height:auto!important}
.refpro-link-wrap{align-items:start!important}
.refpro-copy-top{width:max-content!important;min-height:36px!important;margin:2px 0 0!important;border:1px solid #1768e5!important;padding:0 13px!important;background:#1768e5!important;color:#fff!important;font:inherit!important;font-size:12px!important;cursor:pointer!important}
.refpro-copy-top.is-copied,.refpro-iconbtn.is-copied{border-color:#0f766e!important;background:#0f766e!important;color:#fff!important}
.refpro-actions{grid-template-columns:1fr!important}
@media(max-width:1180px){.lh-report-filter-pro,.lh-lab-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important}.lh-report-filter-pro a,.lh-lab-filter-bar a{width:100%!important}.lh-bluetooth-panel,.lh-duty-panel-head{grid-template-columns:1fr!important}.lh-location-btn{justify-self:start!important}}
@media(max-width:760px){.lh-pharmacy-manual-pro,.lh-duty-pharmacy-list-pro.is-ready,.lh-bluetooth-actions{grid-template-columns:1fr!important}.lh-location-btn,.lh-search-btn,.lh-bluetooth-actions .lh-btn{width:100%!important}.lh-doctor-profile-card-modern{background-size:140px auto!important}}

/* V17 - real SVG icon sizing */
.appointment-close,.lh-ann-detail-close,.lh-pwa-prompt-close,.online-3d-close,.toast-close,.cmp-pay-close,[data-ai-popup-close]{display:grid!important;place-items:center!important}
.appointment-close svg,.lh-ann-detail-close svg,.lh-pwa-prompt-close svg,.online-3d-close svg,.toast-close svg,.cmp-pay-close svg,[data-ai-popup-close] svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;display:block!important}
.toast-icon svg,.hospital-card-check svg,.branch-card-check svg,.doctor-card-check svg,.lh-action-icon svg,.online-pay-icon svg,.online-footer-info svg,.cmp-pay-head-icon svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;display:block!important}
.online-refresh-flat svg,.online-btn svg,.refpro-iconbtn svg,.lh-emergency-callout a svg{width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;display:block!important;flex:0 0 16px!important}
.online-btn.primary#onlineContinueBtn svg{flex:0 0 16px!important}
.lh-emergency-callout a{display:inline-flex!important;align-items:center!important;gap:8px!important}
.lh-emergency-callout a:before{display:none!important;content:none!important}
.cmp-pay-head-icon svg{width:20px!important;height:20px!important}

/* V18 - doctor card photo clarity */
.appointment-modal .doctor-card{grid-template-columns:132px minmax(0,1fr)!important;min-height:196px!important;align-items:stretch!important}
.appointment-modal .doctor-card-avatar{grid-row:1/3!important;width:132px!important;min-width:132px!important;min-height:196px!important;height:100%!important;border-radius:16px 0 0 16px!important;overflow:hidden!important;background:#eef6ff!important}
.appointment-modal .doctor-card-avatar img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center top!important}
.appointment-modal .doctor-card-content{padding:20px 20px 12px!important;align-content:center!important}
.appointment-modal .doctor-card-action{grid-column:2!important}
@media(max-width:560px){.appointment-modal .doctor-card{grid-template-columns:112px minmax(0,1fr)!important;min-height:178px!important}.appointment-modal .doctor-card-avatar{width:112px!important;min-width:112px!important;min-height:178px!important}.appointment-modal .doctor-card-content{padding:16px 14px 10px!important}}

/* V19 - doctors page card cleanup */
.lh-app .lh-doctor-profile-card-modern{padding:0!important;background:#fff!important;isolation:isolate!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-top{grid-template-columns:92px minmax(0,1fr) 44px!important;gap:16px!important;align-items:center!important;padding:36px 36px 14px!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-photo-wrap{width:92px!important;height:104px!important;flex:0 0 92px!important;border-radius:14px!important;background:#eef6ff!important;box-shadow:inset 0 0 0 1px rgba(30,95,145,.12)!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-photo.large{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;border-radius:14px!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-divider{margin:0!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-stats{position:relative!important;z-index:1!important;padding:14px 36px 10px!important;background:#fff!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-stats div{background:#f8fbff!important}
.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-actions{position:relative!important;z-index:1!important;padding:14px 36px 22px!important;background:#fff!important}
.lh-app .lh-doctor-profile-card-modern .lh-list-status{position:relative!important;z-index:1!important;margin:0!important;padding:0 36px 22px!important;background:#fff!important}
@media(max-width:1400px){.lh-app .lh-doctor-grid-modern{grid-template-columns:repeat(2,minmax(320px,1fr))!important}}
@media(max-width:760px){.lh-app .lh-doctor-grid-modern{grid-template-columns:1fr!important}.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-top{grid-template-columns:82px minmax(0,1fr) 42px!important;padding:22px 18px 12px!important}.lh-app .lh-doctor-profile-card-modern .lh-doctor-photo-wrap{width:82px!important;height:96px!important}.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-stats,.lh-app .lh-doctor-profile-card-modern .lh-doctor-card-actions,.lh-app .lh-doctor-profile-card-modern .lh-list-status{padding-left:18px!important;padding-right:18px!important}}
