/**
 * Veteriner Detay - Randevu, Kupon, Çalışma Saatleri, Mesaj Widget'ları
 */

.randevu-bolum {
    margin-bottom: 6px;

    border-bottom: 1px dashed var(--neutral-150);
}

.randevu-bolum:last-of-type {
    border-bottom: none;
}

.bolum-etiket {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.bolum-etiket i {
    font-size: 14px;
}

.form-grup-icon {
    display: flex;
    align-items: stretch;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    overflow: hidden;
}

.form-grup-icon .form-icon {
    width: 44px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-500);
    font-size: 16px;
    background: var(--neutral-100);
    border-right: 1px solid var(--neutral-200);
}

.form-grup.form-grup-icon select,
.form-grup.form-grup-icon input,
.form-grup.form-grup-icon textarea {
    flex: 1;
    min-width: 0;
    padding: 12px 15px;
    padding-left: 15px;
    border: none;
    border-radius: 0;
}

/* Tarih input - metin ve placeholder her zaman görünür */
#randevuTarihi,
.form-grup.form-grup-icon input#randevuTarihi {
    color: var(--neutral-900) !important;
    -webkit-text-fill-color: var(--neutral-900) !important;
}
#randevuTarihi::placeholder {
    color: var(--neutral-500) !important;
    -webkit-text-fill-color: var(--neutral-500) !important;
    opacity: 1;
}

.form-grup.form-grup-icon select {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
}

.form-grup-textarea .form-icon {
    align-self: flex-start;
    height: 80px;
}

.tarih-saat-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.randevu-saat-bilgi {
    font-size: 12px;
    color: var(--neutral-600);
    margin: 8px 0 0 0;
}

.randevu-widget,
.kupon-widget,
.calisma-saatleri,
.odeme-yontemleri,
.mesaj-widget,
.veteriner-hekim-widget {
    background: var(--neutral-100);
    border-radius: var(--radius);
    padding: 24px;
    margin-bottom: 20px;
}

.widget-baslik,
.saatler-baslik {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 2px solid var(--primary-500);
}

.widget-baslik i,
.saatler-baslik i {
    color: var(--primary-500);
    font-size: 20px;
}

.widget-baslik h3,
.saatler-baslik h3 {
    font-size: 1.1rem;
    color: var(--neutral-900);
    margin: 0;
}

.form-grup {
    margin-bottom: 16px;
}

.form-grup label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--neutral-700);
    margin-bottom: 6px;
}

.form-grup select,
.form-grup input,
.form-grup textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    font-family: inherit;
    font-size: 14px;
    color: var(--neutral-900);
}

.form-grup select:focus,
.form-grup input:focus,
.form-grup textarea:focus {
    outline: none;
    border-color: var(--primary-500);
}

.form-grup-icon:focus-within {
    border-color: var(--primary-500);
}

.form-grup textarea {
    resize: vertical;
    min-height: 80px;
}

.btn-randevu,
.btn-mesaj {
    width: 100%;
    padding: 14px;
    background: var(--primary-500);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: var(--transition);
}

.btn-randevu:hover,
.btn-mesaj:hover {
    background: var(--primary-600);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(243, 18, 61, 0.3);
}

.btn-mesaj:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.mesaj-readonly {
    background: #f3f4f6 !important;
    color: var(--neutral-500) !important;
    cursor: not-allowed;
}

.mesaj-giris-gerekli {
    text-align: center;
    padding: 10px 0;
}

.mesaj-giris-gerekli p {
    font-size: 14px;
    color: var(--neutral-500);
    margin-bottom: 16px;
}

.mesaj-form-bilgi {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 12px;
    min-height: 20px;
}

.mesaj-form-bilgi.mesaj-basarili {
    color: #059669;
}

.mesaj-form-bilgi.mesaj-hata {
    color: #dc2626;
}

.randevu-form-message {
    padding: 12px;
    border-radius: 8px;
    font-size: 14px;
    margin-bottom: 16px;
}

.randevu-form-message:empty {
    display: none;
}

.randevu-form-message.basarili {
    background: var(--surface-green);
    color: #166534;
}

.randevu-form-message.hata {
    background: #fef2f2;
    color: #b91c1c;
}

.kupon-icerik {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.kupon-kart {
    display: flex;
    background: linear-gradient(135deg, #fff 0%, #fff8f9 100%);
    border: 2px dashed var(--primary-500);
    border-radius: 12px;
    overflow: hidden;
    position: relative;
}
.kupon-kart::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 4px,
        var(--neutral-100) 4px,
        var(--neutral-100) 8px
    );
}
.kupon-kart-sol {
    flex: 0 0 auto;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 140px;
    border-right: 2px dashed var(--primary-300);
    background: rgba(243, 18, 61, 0.03);
}
.kupon-etiket {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--primary-500);
    text-transform: uppercase;
}
.kupon-kart .kupon-kod {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-600);
    letter-spacing: 2px;
    font-family: 'Courier New', monospace;
}
.kupon-kart .kopyala-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary-500);
    background: rgba(243, 18, 61, 0.08);
    border: 1px solid var(--primary-300);
    border-radius: 6px;
    cursor: pointer;
    transition: var(--transition);
}
.kupon-kart .kopyala-btn:hover {
    background: var(--primary-500);
    color: #fff;
    border-color: var(--primary-500);
}
.kupon-kart-sag {
    flex: 1;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    justify-content: center;
}
.kupon-indirim-badge {
    display: inline-block;
    font-size: 15px;
    font-weight: 700;
    color: #166534;
    background: var(--surface-green);
    padding: 4px 12px;
    border-radius: 20px;
    width: fit-content;
}
.kupon-kart .kupon-bilgi {
    color: var(--neutral-600);
    font-size: 13px;
    margin: 0;
    line-height: 1.4;
}
.kupon-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 4px;
}
.kupon-tarih,
.kupon-kalan {
    font-size: 12px;
    color: var(--neutral-500);
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.kupon-tarih i,
.kupon-kalan i {
    font-size: 11px;
    opacity: 0.8;
}

.kupon-widget {
    border: 1px solid rgba(243, 18, 61, 0.15);
    background: linear-gradient(180deg, #fffbfc 0%, var(--neutral-50) 100%);
}

/* Randevu formu kupon alanı */
.randevu-kupon-alani {
    margin-bottom: 16px;
    padding: 14px;
    background: var(--neutral-50);
    border-radius: 8px;
    border: 1px dashed var(--neutral-200);
}
.odenecek-tutar-satir {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background: #fff;
    border-radius: 6px;
    border: 1px solid var(--neutral-200);
    margin-bottom: 12px;
}
.odenecek-etiket {
    font-size: 14px;
    font-weight: 600;
    color: var(--neutral-700);
}
.odenecek-tutar-deger {
    font-size: 18px;
    font-weight: 700;
    color: var(--primary-500);
}
.kupon-giris-satir {
    display: flex;
    gap: 10px;
    align-items: stretch;
}
.kupon-input {
    flex: 1;
    min-width: 0;
    padding: 10px 14px;
    border: 1px solid var(--neutral-200);
    border-radius: 6px;
    font-size: 14px;
    text-transform: uppercase;
}
.kupon-input:focus {
    outline: none;
    border-color: var(--primary-500);
}
.btn-kupon-uygula {
    padding: 10px 18px;
    background: var(--primary-500);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    white-space: nowrap;
    transition: var(--transition);
}
.btn-kupon-uygula:hover {
    background: var(--primary-600);
}
.kupon-sonuc {
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 13px;
}
.kupon-sonuc.basarili {
    background: var(--surface-green);
    color: #166534;
}
.kupon-sonuc.hata {
    background: #fef2f2;
    color: #b91c1c;
}

.saatler-listesi {
    list-style: none;
    padding: 0;
    margin: 0;
}

.saatler-listesi li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px dashed var(--neutral-150);
}

.saatler-listesi li:last-child {
    border-bottom: none;
}

.saatler-listesi .gun {
    color: var(--neutral-900);
    font-weight: 500;
    font-size: 14px;
}

.saatler-listesi .saat {
    color: var(--neutral-600);
    font-size: 14px;
}

.saatler-listesi li.kapali .saat {
    color: #f3123d;
    font-style: italic;
}

.saatler-listesi li.bugun {
    background: #fff1f4;
    margin: 0 -12px;
    padding-left: 12px;
    padding-right: 12px;
    border-radius: 8px;
    border-bottom-color: transparent;
}

.saatler-listesi li.bugun .gun {
    color: #f3123d;
    font-weight: 700;
}

.saatler-listesi li.bugun .saat {
    color: #c01038;
    font-weight: 600;
}

.bugun-etiket {
    display: inline-block;
    margin-left: 6px;
    background: #f3123d;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    padding: 3px 7px;
    border-radius: 999px;
    vertical-align: middle;
}

.odeme-listesi {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.odeme-listesi .odeme-kart {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 15px;
    background: #fff;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    transition: var(--transition);
}
.odeme-listesi .odeme-kart:hover {
    border-color: var(--neutral-300);
    border: 1px solid #f3123d;
    box-shadow: 0 2px 8px #f3123b31;
}
.odeme-kart-icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--primary-500);
    font-size: 24px;
}
.odeme-kart-metin {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0px;
}
.odeme-kart-baslik {
    font-weight: 700;
    font-size: 15px;
    color: var(--neutral-900);
}
.odeme-kart-aciklama {
    font-size: 13px;
    color: var(--neutral-600);
    font-weight: 400;
}
.odeme-listesi li.odeme-yok {
    color: var(--neutral-500);
    font-style: italic;
    padding: 12px 0;
    font-size: 14px;
}

.hekim-icerik {
    margin-top: 0;
}

.hekim-profil {
    display: flex;
    align-items: center;
    gap: 15px;
}

.hekim-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #fff;
    box-shadow: 0 2px 10px rgba(243, 18, 61, 0.15);
}

.hekim-avatar-placeholder {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--surface-pink);
    color: var(--primary-500);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    font-weight: 700;
}

.hekim-bilgi h4 {
    font-size: 18px;
    color: var(--neutral-900);
    margin: 0 0 4px;
}

.hekim-unvan {
    font-size: 14px;
    color: var(--neutral-600);
}

.hekim-bilgi {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.hekim-deneyim-pill {
    display: inline-block;
    margin-top: 4px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    color: var(--primary-600);
    background: rgba(243, 18, 61, 0.08);
    border-radius: 20px;
}

.hekim-bolum {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid var(--neutral-200);
}

.hekim-bolum:first-of-type {
    margin-top: 18px;
}

.hekim-bolum-baslik {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--neutral-500);
    margin-bottom: 8px;
}

.hekim-bolum-metin {
    font-size: 13px;
    line-height: 1.55;
    color: var(--neutral-700);
    margin: 0;
}

.hekim-uzmanlik-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.hekim-uzmanlik-widget .hekim-uzmanlik-tags {
    max-height: 7.5rem;
    overflow-y: auto;
    padding-right: 4px;
    scrollbar-width: thin;
}

.hekim-uzmanlik-etiket {
    display: inline-block;
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 600;
    color: var(--neutral-700);
    background: #fff;
    border: 1px solid var(--neutral-200);
    border-radius: 6px;
}

.btn-hekim-detay {
    width: 100%;
    margin-top: 14px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    font-family: inherit;
    color: var(--primary-600);
    background: #fff;
    border: 1px solid var(--primary-500);
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, transform 0.15s;
}

.btn-hekim-detay:hover {
    background: var(--primary-500);
    color: #fff;
    transform: translateY(-1px);
}

.btn-hekim-detay i {
    font-size: 15px;
}

/* Veteriner Hekim detay modal */
.hekim-detay-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s, visibility 0.25s;
}

.hekim-detay-modal.acik {
    opacity: 1;
    visibility: visible;
}

.hekim-detay-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    cursor: pointer;
}

.hekim-detay-icerik {
    position: relative;
    background: #fff;
    border-radius: 12px;
    max-width: 520px;
    width: 100%;
    max-height: min(85vh, 640px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.22);
}

.hekim-detay-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    background: linear-gradient(135deg, var(--primary-500) 0%, #c40e32 100%);
    color: #fff;
    flex-shrink: 0;
}

.hekim-detay-header h3 {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1.3;
}

.hekim-detay-kapat {
    background: rgba(255,255,255,0.15);
    border: none;
    color: #fff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    padding: 4px 10px;
    border-radius: 8px;
    flex-shrink: 0;
}

.hekim-detay-kapat:hover {
    background: rgba(255,255,255,0.28);
}

.hekim-detay-body {
    padding: 18px 20px 22px;
    overflow-y: auto;
    flex: 1;
    min-height: 0;
}

.hekim-bolum-modal {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.hekim-bolum-modal + .hekim-bolum-modal {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--neutral-200);
}

@media (max-width: 480px) {
    .tarih-saat-grid {
        grid-template-columns: 1fr;
    }
}

/* Randevu Onay Modal */
.randevu-onay-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.28s ease, visibility 0.28s ease;
}
.randevu-onay-modal.acik {
    opacity: 1;
    visibility: visible;
}
.randevu-onay-overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 18, 30, 0.55);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.randevu-onay-icerik {
    position: relative;
    background: #fff;
    border-radius: 18px;
    max-width: 460px;
    width: 100%;
    max-height: 90vh;
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(15, 18, 30, 0.28);
    transform: translateY(14px) scale(0.97);
    opacity: 0;
    transition: transform 0.32s cubic-bezier(0.2, 0.8, 0.25, 1), opacity 0.32s ease;
}
.randevu-onay-modal.acik .randevu-onay-icerik {
    transform: none;
    opacity: 1;
}

/* Header */
.randevu-onay-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 20px 22px;
    border-bottom: 1px solid var(--neutral-150, #ececec);
}
.randevu-onay-header-sol {
    display: flex;
    align-items: center;
    gap: 14px;
}
.randevu-onay-ikon {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--primary-500);
    background: var(--surface-pink, #fff3f5);
}
.randevu-onay-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: var(--neutral-900);
}
.randevu-onay-altbaslik {
    font-size: 13px;
    color: var(--neutral-600);
}
.randevu-onay-kapat {
    background: var(--neutral-100, #f6f6f6);
    border: none;
    color: var(--neutral-700);
    width: 34px;
    height: 34px;
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
}
.randevu-onay-kapat:hover {
    background: var(--neutral-200, #dcdcdc);
    color: var(--neutral-900);
}

/* Body */
.randevu-onay-body {
    padding: 18px 22px 22px;
    overflow-y: auto;
    max-height: 56vh;
}
.randevu-onay-aciklama {
    color: var(--neutral-600);
    font-size: 14px;
    margin: 0 0 14px;
}
.randevu-onay-liste {
    display: flex;
    flex-direction: column;
    margin: 0;
}
.randevu-onay-liste dt {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    color: var(--neutral-600);
    font-size: 13px;
    padding: 11px 0 3px;
}
.randevu-onay-liste dt i {
    color: var(--primary-500);
    font-size: 13px;
    width: 16px;
    text-align: center;
}
.randevu-onay-liste dd {
    margin: 0 0 0 24px;
    padding-bottom: 11px;
    border-bottom: 1px solid var(--neutral-150, #ececec);
    color: var(--neutral-900);
    font-size: 15px;
    font-weight: 600;
}

/* Vurgulu ödenecek tutar kutusu */
.randevu-onay-toplam {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--surface-pink, #fff3f5), #ffffff);
    border: 1px solid rgba(243, 18, 61, 0.18);
}
.randevu-onay-toplam-etiket {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--neutral-700);
}
.randevu-onay-toplam-etiket i {
    color: var(--primary-500);
}
.randevu-onay-toplam .popup-odenecek {
    font-size: 22px;
    font-weight: 800;
    color: var(--primary-500);
}

/* Footer */
.randevu-onay-footer {
    display: flex;
    gap: 12px;
    padding: 16px 22px 20px;
}
.randevu-onay-footer button {
    flex: 1;
    padding: 13px 16px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 15px;
    cursor: pointer;
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.btn-randevu-iptal {
    flex: 0 0 auto;
    min-width: 96px;
    background: var(--neutral-100, #f6f6f6);
    border: 1px solid var(--neutral-200, #dcdcdc);
    color: var(--neutral-700);
}
.btn-randevu-iptal:hover {
    background: var(--neutral-200, #dcdcdc);
}
.btn-randevu-onayla {
    background: var(--primary-500);
    border: none;
    color: #fff;
    box-shadow: 0 8px 20px rgba(243, 18, 61, 0.28);
}
.btn-randevu-onayla:hover {
    background: var(--primary-600);
    transform: translateY(-1px);
}

/* Başarı ekranı */
.randevu-onay-basari {
    padding: 36px 26px 30px;
    text-align: center;
}
.randevu-basari-ikon {
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    color: #fff;
    background: #16a34a;
    box-shadow: 0 10px 26px rgba(22, 163, 74, 0.35);
    animation: randevuBasariPop 0.4s cubic-bezier(0.2, 0.9, 0.3, 1.3) both;
}
@keyframes randevuBasariPop {
    0% { transform: scale(0.4); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}
.randevu-basari-baslik {
    margin: 0 0 8px;
    font-size: 21px;
    font-weight: 800;
    color: var(--neutral-900);
}
.randevu-basari-mesaj {
    margin: 0 auto 24px;
    max-width: 340px;
    font-size: 14px;
    line-height: 1.55;
    color: var(--neutral-600);
}
.randevu-basari-aksiyon {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}
.btn-basari-randevularim,
.btn-basari-kapat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 12px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    text-decoration: none;
    transition: var(--transition);
}
.btn-basari-randevularim {
    background: var(--primary-500);
    color: #fff;
    border: none;
    box-shadow: 0 8px 20px rgba(243, 18, 61, 0.28);
}
.btn-basari-randevularim:hover {
    background: var(--primary-600);
    transform: translateY(-1px);
}
.btn-basari-kapat {
    background: var(--neutral-100, #f6f6f6);
    border: 1px solid var(--neutral-200, #dcdcdc);
    color: var(--neutral-700);
}
.btn-basari-kapat:hover {
    background: var(--neutral-200, #dcdcdc);
}

/* ===== Sağ panel reklam alanı (Veteriner Detay Sayfası) ===== */
.vet-reklam-alan {
    position: relative;
    width: 100%;
    height: 200px;
    margin-top: 20px;
    border-radius: 8px;
    overflow: hidden;
    background: #f1f5f9;
    border: solid 1px #f1f5f9;
    margin-bottom: 20px;
}
.vet-reklam-slide {
    position: absolute;
    inset: 0;
}
.vet-reklam-alan--coklu .vet-reklam-slide {
    opacity: 0;
    transition: opacity 0.6s ease;
    pointer-events: none;
}
.vet-reklam-alan--coklu .vet-reklam-slide.is-active {
    opacity: 1;
    pointer-events: auto;
}
.vet-reklam-slide a,
.vet-reklam-slide img {
    display: block;
    width: 100%;
    height: 100%;
}
.vet-reklam-slide img {
    object-fit: cover;
    object-position: center;
}
