/* ════════════════════════════════════════════════════════════════════════════
 * vet.css — Bovisio Veteriner uygulamasının renkleri ve parçaları (portal.css'in ÜSTÜNE yüklenir)
 *
 * Yapı ve bileşenler Portal ile aynıdır (tema: THM/assets + portal.css). Bu dosya paleti KLİNİK MAVİSİNE çevirir:
 *      vurgu  #1F5FA8 (beyaz yazıyla karşıtlık 6,4:1)   · ana renk  #16324F (lacivert; koyu düğme)
 *      yan menü #17304A (lacivert)   · menüdeki vurgu #7DB7F2 (zeminde 6,1:1)
 *      bilgi  #17908A (camgöbeği; tekniker rozeti hekim mavisinden ayrışsın diye)   · grafik #2F7FD1
 * ve veteriner uygulamasına özel parçaları tanımlar (sınıflar "vet-" ile başlar).
 * KÖŞELER: uygulamada köşe yuvarlaması en çok 3 pikseldir (düğme, kart, alan, rozet, pencere); hap ve daire biçim yoktur.
 * Bileşen kuralları yeniden yazılmaz; değişkenler değiştirilir.
 * ════════════════════════════════════════════════════════════════════════════ */

:root, [data-bs-theme=light] {
    --pt-accent: #1F5FA8;
    --pt-accent-rgb: 31, 95, 168;

    --vz-primary: #16324F;
    --vz-primary-rgb: 22, 50, 79;
    --vz-primary-text-emphasis: #0F2438;
    --vz-primary-bg-subtle: #E6ECF2;
    --vz-primary-border-subtle: #B9C7D6;

    --vz-secondary: #1F5FA8;
    --vz-secondary-rgb: 31, 95, 168;
    --vz-secondary-text-emphasis: #184B85;
    --vz-secondary-bg-subtle: #E3EDF8;
    --vz-secondary-border-subtle: #A9C6E8;

    --vz-info: #17908A;
    --vz-info-rgb: 23, 144, 138;
    --vz-info-text-emphasis: #0F6C68;
    --vz-info-bg-subtle: #DDF2F0;
    --vz-info-border-subtle: #A3D9D5;

    --vz-link-color: #1B579C;
    --vz-link-color-rgb: 27, 87, 156;
    --vz-link-hover-color: #123F78;
    --vz-link-hover-color-rgb: 18, 63, 120;
}

[data-bs-theme=dark] {
    --pt-accent: #6FA8E8;
    --pt-accent-rgb: 111, 168, 232;
    --vz-primary: #5C7A99;
    --vz-primary-rgb: 92, 122, 153;
    --vz-primary-text-emphasis: #B7C9DB;
    --vz-primary-bg-subtle: rgba(92, 122, 153, .18);
    --vz-primary-border-subtle: rgba(92, 122, 153, .35);
    --vz-secondary: #3F7FCB;
    --vz-secondary-rgb: 63, 127, 203;
    --vz-secondary-text-emphasis: #9CC3F0;
    --vz-secondary-bg-subtle: rgba(111, 168, 232, .16);
    --vz-secondary-border-subtle: rgba(111, 168, 232, .32);
    --vz-info-bg-subtle: rgba(23, 144, 138, .18);
    --vz-info-text-emphasis: #6FD0CA;
    --vz-link-color: #8DBBEF;
    --vz-link-color-rgb: 141, 187, 239;
    --vz-link-hover-color: #B7D5F7;
    --vz-link-hover-color-rgb: 183, 213, 247;
}

/* ── Köşeler: en çok 3 piksel ─────────────────────────────────────────────── */
body.vet {
    --vz-border-radius: 3px;
    --vz-border-radius-sm: 2px;
    --vz-border-radius-lg: 3px;
    --vz-border-radius-xl: 3px;
    --vz-border-radius-xxl: 3px;
    --vz-border-radius-2xl: 3px;
    --vz-border-radius-pill: 3px;
}
.vet .btn, .vet .card, .vet .card-header:first-child, .vet .form-control, .vet .form-select, .vet .input-group-text, .vet .badge, .vet .dropdown-menu, .vet .dropdown-item,
.vet .modal-content, .vet .alert, .vet .pt-hero-ico, .vet .pt-result, .vet .pt-initials, .vet .pt-steps li, .vet .pt-auth-points li i, .vet .pt-code input,
.vet .rounded, .vet .rounded-circle, .vet .rounded-pill, .vet .form-check-input[type=checkbox], .vet .topbar-badge { border-radius: 3px !important; }
.vet .input-group > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
.vet .input-group > :not(:first-child):not(.dropdown-menu) { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; }
.vet .form-switch .form-check-input { border-radius: 3px !important; background-size: auto 86%; }
.vet .swal2-popup, .vet .swal2-styled, .vet .toastify { border-radius: 3px !important; }

/* ── Yan menü: lacivert. Bölüm başlıkları soluk, menü yazıları açık, üzerine gelinen ve açık sayfa tam beyaz. Açık sayfanın
      zemini hafifçe aydınlanır, solunda ve simgesinde açık mavi vurgu vardır. Koyu görünümde menü bir ton koyulaşır.
      Seçicideki [data-theme] temanın kendi kuralını geçmek içindir. ── */
html[data-sidebar=dark], html[data-theme][data-sidebar=dark] {
    --vet-menu-accent: #7DB7F2;
    --vz-vertical-menu-bg: #17304A;
    --vz-vertical-menu-border: #17304A;
    --vz-vertical-menu-item-color: #D5DEE8;
    --vz-vertical-menu-item-bg: rgba(255, 255, 255, .07);
    --vz-vertical-menu-item-hover-color: #FFF;
    --vz-vertical-menu-item-active-color: #FFF;
    --vz-vertical-menu-item-active-bg: rgba(255, 255, 255, .1);
    --vz-vertical-menu-sub-item-color: #BFCBD9;
    --vz-vertical-menu-sub-item-hover-color: #FFF;
    --vz-vertical-menu-sub-item-active-color: #FFF;
    --vz-vertical-menu-title-color: #9FB1C5;
    --vz-twocolumn-menu-iconview-bg: #12273D;
}
html[data-bs-theme=dark][data-sidebar=dark], html[data-theme][data-bs-theme=dark][data-sidebar=dark] {
    --vz-vertical-menu-bg: #10202F;
    --vz-vertical-menu-border: #10202F;
    --vz-twocolumn-menu-iconview-bg: #0C1926;
}
.vet .navbar-menu { background: var(--vz-vertical-menu-bg); }
.vet .navbar-menu .navbar-brand-box { margin-top: 10px; height: 70px; }
.vet .navbar-menu .navbar-brand-box .logo-lg img { height: auto; max-height: 60px; max-width: 100%; }
.vet .navbar-menu .navbar-nav .nav-link { position: relative; border-radius: 3px; transition: background-color .12s, color .12s; }
.vet .navbar-menu .navbar-nav .nav-link.menu-link { margin: 1px 10px; padding-left: 14px; padding-right: 14px; font-weight: 500; }
.vet .navbar-menu .navbar-nav .nav-link.menu-link:hover,
.vet .navbar-menu .navbar-nav .nav-sm .nav-link:hover { background: var(--vz-vertical-menu-item-bg); color: #FFF; }
.vet .navbar-menu .navbar-nav .nav-link.menu-link.active { background: var(--vz-vertical-menu-item-active-bg); font-weight: 600; }
.vet .navbar-menu .navbar-nav .nav-link.menu-link.active > i { color: var(--vet-menu-accent); }
.vet .navbar-menu .navbar-nav .nav-link.menu-link.active::before { content: ""; position: absolute; left: -10px; top: 7px; bottom: 7px; width: 4px; background: var(--vet-menu-accent); }
.vet .navbar-menu .navbar-nav .nav-sm .nav-link { margin: 1px 10px 1px 0; }
.vet .navbar-menu .navbar-nav .nav-sm .nav-link.active { font-weight: 600; }
.vet .navbar-menu .navbar-nav .nav-sm .nav-link::before { background-color: #BFCBD9 !important; opacity: .6 !important; border-radius: 0 !important; }
.vet .navbar-menu .navbar-nav .nav-sm .nav-link.active::before { background-color: var(--vet-menu-accent) !important; opacity: 1 !important; }
/* Henüz yazılmamış sayfa: yazı bir ton soluk (tıklanır; "hazırlanıyor" sayfası açılır) */
.vet .navbar-menu .navbar-nav .nav-link[data-ready="0"]:not(.active) { opacity: .78; }
.vet .navbar-menu .menu-title { margin-top: 6px; }
.vet .navbar-menu .menu-title span { font-size: 10.5px; font-weight: 700; letter-spacing: 1.1px; }
.vet .navbar-menu .navbar-nav .nav-link:focus-visible { outline: 2px solid var(--vet-menu-accent); outline-offset: -2px; }
[data-sidebar-size=sm] .vet .navbar-menu .navbar-nav .nav-link.menu-link { margin: 1px 0; }
[data-sidebar-size=sm] .vet .navbar-menu .navbar-nav .nav-link.menu-link.active::before { display: none; }
[data-sidebar-size=sm] .vet .navbar-menu .navbar-brand-box { margin-top: 0; }
/* Menüdeki sayı (bekleyen çağrı, günü gelen iş, açık uyarı): açık mavi zemin, koyu yazı; acil çağrı varsa kırmızı */
.vet-menu-live { margin-left: auto; display: inline-flex; }
[data-sidebar-size=sm] .vet .navbar-menu .vet-menu-live { display: block !important; }
.vet-menu-count { margin-left: auto; min-width: 20px; padding: 1px 6px; border-radius: 3px; background: var(--vet-menu-accent, #7DB7F2); color: #0E2338; font-size: 11px; font-weight: 700; line-height: 1.5; text-align: center; }
.vet-menu-count.vet-menu-count-urgent { background: #F0606E; color: #FFF; }
/* Daraltılmış menüde tema yazıları gizler; sayı simgenin sağ üstünde görünmeye devam eder */
[data-sidebar-size=sm] .vet .navbar-menu .vet-menu-count:not([hidden]) { display: block !important; position: absolute; top: 6px; right: 8px; margin: 0; min-width: 16px; padding: 0 4px; font-size: 10px; }

/* ── Üst çubuk ── */
.vet #page-topbar .topbar-badge { min-width: 18px; padding: 3px 5px; }
.vet #page-topbar .dropdown-header span { font-size: 12px; color: var(--vz-secondary-color); }

/* ── Giriş sayfalarının marka paneli ── */
.vet .pt-auth-side { background: linear-gradient(155deg, #1F5FA8 0%, #17467F 52%, #0E2A4D 100%); }
.vet .pt-auth-side::before { background: radial-gradient(circle, rgba(125, 183, 242, .42) 0%, rgba(125, 183, 242, 0) 68%); }
.vet .pt-auth-side::after { background: radial-gradient(circle, rgba(43, 191, 182, .24) 0%, rgba(43, 191, 182, 0) 68%); }
.vet .pt-auth-card.pt-wide { max-width: 720px; }
.vet .pt-auth-card h6.vet-section { margin-bottom: 14px; }

/* Ürün etiketi: logonun yanında "Veteriner" */
.vet-tag { display: inline-block; margin-left: 10px; padding: 2px 9px; border-radius: 3px; font-size: 11px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; vertical-align: middle;
    background: rgba(255, 255, 255, .16); color: #FFF; }
.pt-auth-logo-sm .vet-tag { background: rgba(var(--pt-accent-rgb), .12); color: var(--pt-accent); }
.vet .pt-auth-logo, .vet .pt-auth-logo-sm { display: inline-flex; align-items: center; text-decoration: none; }

/* Dar ekran (vet-auth-narrow): üst satır (logo + ürün etiketi + dil) ve 6 haneli kod kutuları taşmaz */
.vet .pt-code { gap: 6px; }
.vet .pt-code input { flex: 1 1 0; min-width: 0; max-width: 48px; }
@media (max-width: 419.98px) {
    .vet .pt-auth-top { padding: 14px 16px; gap: 8px; }
    .vet .pt-auth-top .pt-auth-logo-sm { min-width: 0; }
    .vet .pt-auth-top .pt-auth-logo-sm img { height: 24px; }
    .vet .pt-auth-logo-sm .vet-tag { margin-left: 6px; padding: 2px 6px; font-size: 10px; letter-spacing: .2px; }
}

/* Başvuru alındı: adımlar */
.vet-steps { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 10px; font-size: 14px; }
.vet-steps li { display: flex; gap: 10px; align-items: flex-start; }
.vet-steps li i { font-size: 19px; line-height: 1.15; }

/* ── Kart başlıkları ve bölüm başlıkları ── */
.vet .card-header .card-title { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; }
.vet .card-header .card-title > i { font-size: 18px; color: var(--pt-accent); }
.vet-section { display: flex; align-items: center; gap: 6px; margin: 0 0 12px; font-size: 12px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-section > i { font-size: 16px; color: var(--pt-accent); }
.vet-section:not(:first-child) { margin-top: 22px; padding-top: 18px; border-top: 1px dashed var(--vz-border-color); }
.vet-sub-title { margin: 16px 0 10px; padding-top: 14px; border-top: 1px solid var(--vz-border-color); font-size: 12px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: var(--vz-secondary-color); }

/* ── Telefonda sayfa başlığı: başlık ve işlem düğmeleri tek satırda (düğmeler yalnızca simge), kutu yükselmez ── */
@media (max-width: 767.98px) {
    .vet .page-title-box { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
    .vet .page-title-box > div:first-child { min-width: 0; }
    .vet .page-title-box h4, .vet .page-title-box .pt-crumb { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .vet .page-title-box .pt-actions { flex-wrap: nowrap; flex-shrink: 0; margin-top: 0 !important; gap: .35rem; }
    .vet .page-title-box .pt-actions .btn { padding-left: .6rem; padding-right: .6rem; }
}

/* ── Seçenek kutuları (rol seçimi): simge + ad + açıklama; seçili olanın solunda vurgu çizgisi ── */
.vet-choices { display: grid; gap: 0; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-choice { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 10px 12px; border-top: 1px solid var(--vz-border-color); cursor: pointer; transition: background-color .15s; }
.vet-choice:first-child { border-top: 0; }
.vet-choice:hover { background: var(--vz-light); }
.vet-choice input { flex: 0 0 auto; margin-top: 4px; accent-color: var(--pt-accent); }
.vet-choice > i { flex: 0 0 auto; font-size: 19px; line-height: 1.2; color: var(--vz-secondary-color); }
.vet-choice span { min-width: 0; }
.vet-choice b { display: block; font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); }
.vet-choice small { display: block; font-size: 12.5px; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-choice:has(input:checked) { background: rgba(var(--pt-accent-rgb), .06); box-shadow: inset 3px 0 0 var(--pt-accent); }
.vet-choice:has(input:checked) > i { color: var(--pt-accent); }
.vet-choice:has(input:focus-visible) { outline: 2px solid rgba(var(--pt-accent-rgb), .5); outline-offset: -2px; }
.vet-choices-compact .vet-choice { align-items: center; padding: 8px 12px; }
.vet-choices-compact .vet-choice input { margin-top: 0; }
@media (min-width: 768px) {
    .vet-choices-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .vet-choices-row .vet-choice { border-top: 0; border-left: 1px solid var(--vz-border-color); }
    .vet-choices-row .vet-choice:first-child { border-left: 0; }
    .vet-choices-row .vet-choice:has(input:checked) { box-shadow: inset 0 -3px 0 var(--pt-accent); }
}

/* ── Durum şeridi: düz, tek şerit; kutular ince çizgiyle ayrılır, dar ekranda yatay kayar ── */
.vet-states { display: flex; margin: 0 0 14px; overflow-x: auto; scrollbar-width: thin; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-state { flex: 1 0 auto; min-width: 112px; display: grid; grid-template-columns: auto 1fr; column-gap: 6px; row-gap: 2px; align-items: center; padding: 10px 16px;
    border-left: 1px solid var(--vz-border-color); color: var(--vz-body-color); }
.vet-state:first-child { border-left: 0; }
.vet-state i { grid-row: 1; grid-column: 1; font-size: 15px; line-height: 1; color: var(--vz-secondary-color); opacity: .75; }
.vet-state span { grid-row: 1; grid-column: 2; font-size: 12px; line-height: 1.3; color: var(--vz-secondary-color); white-space: nowrap; }
.vet-state b { grid-row: 2; grid-column: 1 / 3; font-size: 18px; font-weight: 600; line-height: 1.25; color: var(--vz-heading-color); white-space: nowrap; }

/* ── Bilgi kutusu (ör. tek kişilik klinikte ekip açıklaması) ── */
.vet-note { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 14px; padding: 12px 14px; border: 1px solid var(--vz-border-color); border-left: 3px solid var(--pt-accent); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-note > i { flex: 0 0 auto; font-size: 22px; line-height: 1.1; color: var(--pt-accent); }
.vet-note b { display: block; font-weight: 600; color: var(--vz-heading-color); }
.vet-note span { display: block; margin-top: 2px; font-size: 13px; line-height: 1.45; color: var(--vz-secondary-color); }

/* ── Liste hücreleri, kişi resmi ── */
.vet-cell-main { min-width: 200px; max-width: 420px; }
/* Tabloda saran hücreler (ad + unvan, rol rozetleri): masaüstünde tablo yatay kaymasın */
.pt-table > tbody td.vet-cell-main, .pt-table > tbody td.vet-cell-wrap { white-space: normal; }
.vet-cell-role { min-width: 160px; }
.vet-cell-role .badge { margin: 1px 0; }
.vet-cell-mail a { display: block; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
.vet-avatar { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 3px; background: var(--vz-primary); color: #FFF;
    font-size: 12px; font-weight: 700; letter-spacing: .3px; object-fit: cover; }
[data-bs-theme=dark] .vet-avatar { background: var(--vz-secondary); }
.vet-avatar-lg { width: 40px; height: 40px; font-size: 14px; }
.vet-avatar-xl { width: 64px; height: 64px; font-size: 22px; }

/* İş yükü (ekip listesi): simge + sayı üçlüsü — sorumlu çiftlik · açık iş · açık ziyaret */
.vet-load { display: inline-flex; gap: 12px; white-space: nowrap; }
.vet-load > span { position: relative; display: inline-flex; align-items: center; gap: 4px; cursor: help; }
/* Kaydırılan tablodaki gizli (ekran okuyucu) metinler tablonun içinde kalsın: sayfayı yatay taşırmasın */
.vet .table-responsive { position: relative; }
.vet-load i { font-size: 16px; color: var(--vz-secondary-color); }
.vet-load b { font-weight: 600; color: var(--vz-heading-color); }

/* Yetki simgeleri (ekip listesi): üzerine gelince yetkinin adı */
.vet-perms { display: flex; flex-wrap: wrap; gap: 3px; margin-top: 6px; }
.vet-perms > i { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg);
    font-size: 15px; color: var(--pt-accent); cursor: help; }

/* Yetki seçimi (üye penceresi): iki sütun; kilitli (yönetici) satır soluk ve tıklanmaz görünür */
.vet-perm-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-perm-item { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 9px 12px; border-bottom: 1px solid var(--vz-border-color); cursor: pointer; transition: background-color .15s; }
.vet-perm-item[hidden] { display: none; }
.vet-perm-item:hover { background: var(--vz-light); }
.vet-perm-item .form-check-input { flex: 0 0 auto; margin: 3px 0 0; float: none; }
.vet-perm-item > i { flex: 0 0 auto; font-size: 18px; line-height: 1.2; color: var(--vz-secondary-color); }
.vet-perm-item:has(input:checked) > i { color: var(--pt-accent); }
.vet-perm-item span { min-width: 0; }
.vet-perm-item b { display: block; font-size: 13px; font-weight: 600; color: var(--vz-heading-color); }
.vet-perm-item small { display: block; font-size: 12px; line-height: 1.35; color: var(--vz-secondary-color); }
.vet-perm-item.vet-locked { cursor: default; }
/* Sıkışık yetki kutuları (üye penceresi): yalnızca ad; açıklama ipucundadır */
.vet-perm-compact .vet-perm-item { align-items: center; padding: 8px 10px; }
.vet-perm-compact .vet-perm-item .form-check-input { margin-top: 0; }
@media (min-width: 1200px) { .vet-perm-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.vet-perm-item b { overflow-wrap: anywhere; }
.vet-perm-item.vet-locked .form-check-input { opacity: .55; }
.vet-perm-item.vet-locked:hover { background: transparent; }

/* Üye penceresinin sağ sütunu (rol ve yetkiler): geniş ekranda solunda ayırıcı çizgi; bölüm başlıkları aynı hizada */
.vet-modal-side > .vet-section:first-child, .modal-body .col-lg-5 > .vet-section:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
@media (min-width: 992px) { .vet-modal-side { border-left: 1px solid var(--vz-border-color); } }
@media (max-width: 991.98px) { .vet-modal-side > .vet-section:first-child { margin-top: 4px; padding-top: 18px; border-top: 1px dashed var(--vz-border-color); } }

/* Yetki listesi (profil: bilgi) ve rol rehberi (ekip sayfası) */
.vet-perm-view { list-style: none; margin: 0 0 12px; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; }
.vet-perm-view li { display: flex; gap: 8px; align-items: flex-start; }
.vet-perm-view li > i { flex: 0 0 auto; font-size: 17px; line-height: 1.25; }
.vet-perm-view li.on > i { color: var(--vz-success); }
.vet-perm-view li.off > i { color: var(--vz-secondary-color); opacity: .6; }
.vet-perm-view li.off b { color: var(--vz-secondary-color); font-weight: 500; }
.vet-perm-view b { display: block; font-size: 13px; font-weight: 600; color: var(--vz-heading-color); }
.vet-perm-view small { display: block; font-size: 12px; line-height: 1.35; color: var(--vz-secondary-color); }
.vet-perm-legend { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 14px; }
.vet-perm-legend li > i { color: var(--pt-accent); }
@media (max-width: 991.98px) { .vet-perm-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .vet-perm-legend { grid-template-columns: minmax(0, 1fr); } }
.vet-role-card { height: 100%; padding: 12px 14px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-role-card h6 { display: flex; align-items: center; gap: 6px; margin: 0 0 4px; font-size: 14px; font-weight: 600; }
.vet-role-card h6 i { font-size: 18px; color: var(--pt-accent); }
.vet-role-card p { margin: 0 0 10px; font-size: 12.5px; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-role-card ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; font-size: 13px; }
.vet-role-card li { display: flex; gap: 6px; align-items: center; }
.vet-role-card li i { font-size: 15px; }
.vet-role-card li.on i { color: var(--vz-success); }
.vet-role-card li.opt i { color: var(--pt-accent); }
.vet-role-card li.off { color: var(--vz-secondary-color); }
.vet-role-card li.off i { opacity: .55; }
.vet-role-card li.off span { text-decoration: line-through; text-decoration-color: rgba(var(--vz-body-color-rgb), .3); }

/* ── Klinik, ekip, profil ── */
.vet-phone > .form-control:first-child { flex: 0 0 76px; text-align: center; }
/* Klinik logosu: önizleme kutusu (logo belgede beyaz kâğıda basılır; kutu da hep beyazdır) */
.vet-logo-box { display: flex; align-items: center; justify-content: center; width: 160px; height: 160px; margin: 0 auto 10px; padding: 12px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: #fff; }
.vet-logo-box img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; }
.vet-logo-box span { display: flex; flex-direction: column; align-items: center; gap: 4px; font-size: 12.5px; color: #878A99; }
.vet-logo-box span i { font-size: 28px; line-height: 1; }
/* Resim kırpma: kare sahne; logoda dama zemin saydam alanı gösterir, fotoğrafta zemin beyazdır */
.vet-crop { width: 100%; max-width: 320px; aspect-ratio: 1; margin: 0 auto 12px; border: 1px solid var(--vz-border-color);
    background-color: #fff; background-image: conic-gradient(#E3E7EC 25%, transparent 0 50%, #E3E7EC 0 75%, transparent 0); background-size: 20px 20px; }
.vet-crop.vet-crop-photo { background-image: none; }
.vet-crop canvas { display: block; width: 100%; height: 100%; cursor: grab; touch-action: none; }
.vet-crop canvas:active { cursor: grabbing; }
.vet-crop canvas:focus-visible { outline: 2px solid rgba(var(--pt-accent-rgb), .6); outline-offset: 2px; }
.vet-crop-zoom { display: flex; align-items: center; gap: 10px; max-width: 320px; margin: 0 auto 10px; font-size: 18px; color: var(--vz-secondary-color); }
.vet-crop-zoom .form-range { flex: 1 1 auto; }
/* Ayar satırı: solda ad + açıklama, sağda denetim */
.vet-setting { display: flex; gap: 16px; align-items: center; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--vz-border-color); }
.vet-setting:first-child { padding-top: 0; }
.vet-setting:last-child { padding-bottom: 0; border-bottom: 0; }
.vet-setting > div:first-child { min-width: 0; flex: 1 1 auto; }
.vet-setting b { display: block; font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); }
.vet-setting b label { cursor: pointer; }
.vet-setting span { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.45; color: var(--vz-secondary-color); }
.vet-setting .form-switch { flex: 0 0 auto; margin: 0; padding-left: 0; }
.vet-setting .form-switch .form-check-input { margin-left: 0; float: none; cursor: pointer; }
.vet-setting-number { flex: 0 0 132px; width: 132px; }
.vet-setting-select { flex: 0 0 190px; width: 190px; }
.vet-setting-block { flex-direction: column; align-items: stretch; gap: 8px; }
.vet-setting-box { padding: 10px 12px !important; border: 1px solid var(--vz-border-color) !important; border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-facts { display: grid; grid-template-columns: auto 1fr; gap: 10px 16px; margin: 0; font-size: 13px; }
.vet-facts dt { font-weight: 500; color: var(--vz-secondary-color); white-space: nowrap; }
.vet-facts dd { margin: 0; text-align: right; color: var(--vz-body-color); min-width: 0; }
.vet-facts dd .pt-sub { display: block; }
.vet-profile-head { display: flex; gap: 14px; align-items: center; margin-bottom: 18px; padding-bottom: 16px; border-bottom: 1px solid var(--vz-border-color); }
.vet-profile-tools { display: flex; gap: 6px; flex: 0 0 auto; }

/* ── Bildirim (telefon / tarayıcı) ── */
.vet-push { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; justify-content: space-between; margin-bottom: 14px; padding: 12px 14px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-light); }
.vet-push-state { display: flex; gap: 10px; align-items: center; min-width: 0; flex: 1 1 220px; font-size: 13px; line-height: 1.45; color: var(--vz-body-color); }
.vet-push-state i { flex: 0 0 auto; width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border-radius: 3px; background: var(--vz-secondary-bg); font-size: 19px; color: var(--vz-secondary-color); }
.vet-push-state[data-state=on] i { background: var(--vz-success-bg-subtle); color: var(--vz-success); }
.vet-push-state[data-state=on] span { font-weight: 600; }
.vet-push-state[data-state=denied] i, .vet-push-state[data-state=failed] i, .vet-push-state[data-state=setup] i { background: var(--vz-danger-bg-subtle); color: var(--vz-danger); }
.vet-push-state[data-state=install] i { background: var(--vz-warning-bg-subtle); color: var(--vz-warning); }
.vet-push-tools { display: flex; flex-wrap: wrap; gap: 6px; }
.vet-devices { list-style: none; margin: 0; padding: 0; }
.vet-devices li { display: flex; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--vz-border-color); }
.vet-devices li:last-child { border-bottom: 0; padding-bottom: 0; }
.vet-devices li > i { flex: 0 0 auto; font-size: 20px; color: var(--vz-secondary-color); }
.vet-devices li > span { flex: 1 1 auto; min-width: 0; font-size: 13px; }
.vet-devices b { font-weight: 600; }

@media (max-width: 575.98px) {
    .vet-state { min-width: 100px; padding: 9px 12px; }
    .vet-state b { font-size: 16px; }
    .vet-setting { flex-wrap: wrap; gap: 8px 16px; }
    .vet-setting > div:first-child { flex: 1 1 100%; }
    .vet-setting-select { flex: 1 1 100%; width: 100%; }
    .vet-push-tools { width: 100%; }
    .vet-push-tools .btn { flex: 1 1 auto; }
    .vet-perm-list, .vet-perm-view { grid-template-columns: minmax(0, 1fr); }
    .vet-profile-head { flex-wrap: wrap; }
    .vet-profile-tools { width: 100%; }
}

/* Yazdırma: yalnızca sayfanın içeriği (menü, üst çubuk, başlık ve düğmeler temanın ve portal.css'in yazdırma kurallarıyla gizlenir) */
@media print {
    .vet .main-content { margin: 0 !important; transition: none !important; }
    .vet, .vet .card { background: #fff !important; }
}

/* ═══ Faz 1–2: çiftlikler, hayvanlar, ilaç ve stok ═══ */
/* Adım listesi (kart içinde): başlık + açıklama */
.card-body > .vet-steps { margin-top: 0; }
.vet-steps li > div { min-width: 0; }
.vet-steps li b { display: block; font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); }
.vet-steps li span { display: block; margin-top: 1px; font-size: 13px; line-height: 1.45; color: var(--vz-secondary-color); }
.vet-steps li > i { flex: 0 0 auto; color: var(--pt-accent); }

/* Kart sayfaları: iki sütunlu kutu ızgarası (aralığı satır verir, kutunun alt boşluğu kalkar) */
.vet-card-grid > [class*="col-"] > .card { margin-bottom: 0; }
.vet-card-grid { margin-bottom: 1.5rem; }
.vet .pt-row { text-decoration: none; }
.vet .pt-open a, .vet .btn-close, .modal .btn-close { border-radius: 3px; }

/* Durum şeridi (hayvan kartı): sığmayan kutular alt satıra iner; ayraç çizgileri gölgeyle çizilir, taşan kenarı kap keser */
.vet-states.vet-states-wrap { flex-wrap: wrap; overflow: hidden; }
.vet-states-wrap .vet-state { flex: 1 1 128px; border-left: 0; box-shadow: -1px 0 0 var(--vz-border-color), 0 -1px 0 var(--vz-border-color); }
.vet .pt-rows .pt-empty, .vet .card > .pt-empty { padding: 22px 12px; }

/* Kliniğin özel notu / hayvan notu */
.vet-private-note { display: flex; gap: 8px; margin-top: 12px; padding: 10px 12px; border: 1px dashed var(--vz-border-color); border-radius: 3px; background: var(--vz-light); font-size: 13px; line-height: 1.45; white-space: pre-line; overflow-wrap: anywhere; }
.vet-private-note > i { flex: 0 0 auto; font-size: 16px; line-height: 1.2; color: var(--vz-secondary-color); }

/* Çiftlik / konum seçim çubuğu (hayvanlar, sayım) */
.vet-farm-bar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 14px; padding: 10px 14px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-farm-bar > label { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; letter-spacing: .3px; text-transform: uppercase; color: var(--vz-secondary-color); white-space: nowrap; }
.vet-farm-bar > label > i { font-size: 17px; color: var(--pt-accent); }
.vet-farm-bar > .form-select { flex: 1 1 220px; max-width: 380px; min-width: 0; }
.vet-farm-bar-note { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; color: var(--vz-secondary-color); }

/* Bağlantı istekleri */
.vet-request-row { align-items: center; }
.vet-request-row .pt-row-date { align-self: flex-start; }
.vet-scopes { display: flex !important; flex-wrap: wrap; gap: 4px; margin-top: 6px !important; }
.vet-scopes .badge { font-weight: 500; }
.vet-quote { font-style: italic; overflow-wrap: anywhere; }

/* Toplu yükleme */
.vet-mono { font-family: var(--vz-font-monospace, monospace); font-size: 13px; }
.vet-columns { display: flex; flex-wrap: wrap; gap: 5px; }
.vet-columns .badge { font-weight: 500; font-size: 11.5px; }
.vet-scroll-table { max-height: 70vh; overflow-y: auto; }
.vet-scroll-table thead th { position: sticky; top: 0; z-index: 1; background: var(--vz-light); }
.vet-grid-total td { font-weight: 600; border-top: 2px solid var(--vz-border-color); }

/* Olay akışı: sağlık olayı */
.pt-timeline > li.pt-tl-health::before { background: var(--vz-danger); }

/* Stok kartı penceresi */
.vet-checks { display: flex; flex-wrap: wrap; gap: 6px 22px; }
.vet-catalog .pt-suggest-list { max-height: 260px; overflow-y: auto; border-radius: 3px; }
.vet-catalog .pt-suggest-list button { border-radius: 3px; }

/* Belge satırları (alış, aktarma, protokol adımları): başlık satırı + hizalı sütunlar; dar ekranda yatay kayar */
.vet-lines { overflow-x: auto; padding-bottom: 2px; }
.vet-lines-head, .vet-lines .vet-line { display: grid; gap: 8px; align-items: start; }
.vet-lines-head { margin-bottom: 6px; font-size: 11px; font-weight: 600; letter-spacing: .3px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-lines-head > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vet-lines .vet-line > * { min-width: 0; }
.vet-lines .vet-line .btn { padding: 5px 8px; }
.vet-lines-purchase .vet-lines-head, .vet-lines-purchase .vet-line { grid-template-columns: 26px minmax(170px, 2.2fr) minmax(90px, 1fr) 140px minmax(120px, 1.1fr) minmax(90px, 1fr) minmax(76px, .8fr) 36px; min-width: 860px; }
.vet-lines-transfer .vet-lines-head, .vet-lines-transfer .vet-line { grid-template-columns: 26px minmax(220px, 3fr) minmax(90px, 1fr) minmax(100px, 1fr) 36px; min-width: 560px; }
.vet-lines-protocol .vet-lines-head, .vet-lines-protocol .vet-line { grid-template-columns: 58px minmax(150px, 1.6fr) minmax(120px, 1.3fr) 76px 72px minmax(110px, 1fr) 56px 56px 36px; min-width: 900px; }
.vet-line-total, .vet-line-avail { padding-top: 8px; font-size: 13px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.vet-line-total { text-align: right; font-weight: 600; }
.vet-line-avail { color: var(--vz-secondary-color); }
.vet-lines-total { font-size: 13.5px; }
.vet-lines-total b { font-size: 15px; font-variant-numeric: tabular-nums; }

/* Sayım tablosu */
.vet-count-input { width: 150px; }
.vet-count-input .form-control { min-width: 96px; }
#vetCountTable tr.pt-picked > td { background: rgba(var(--pt-accent-rgb), .05); }

@media (max-width: 575.98px) {
    .vet-farm-bar > .form-select { flex-basis: 100%; max-width: none; }
    .vet-farm-bar > .btn.ms-auto { margin-left: 0 !important; }
    .vet-request-row { flex-wrap: wrap; }
    .vet-request-row .pt-row-body { flex-basis: calc(100% - 94px); }
}

/* ═══ Faz 3–4: saha, klinik kayıt, reçete, fatura ═══ */
/* ── İşlem giriş penceresi (Areas/RecordManagement/Views/Action/_New.cshtml; js/vet/record.js) ── */

/* İlaç / malzeme satırları: # · ilaç · kaynak · doz · birim · yol · günde · gün · toplam miktar · sil */
.vet-lines-record .vet-lines-head, .vet-lines-record .vet-line { grid-template-columns: 26px minmax(190px, 2fr) minmax(132px, 1.2fr) 74px 66px minmax(126px, 1.2fr) 58px 58px minmax(108px, .9fr) 36px; min-width: 990px; }
.vet-lines-record .vet-line .input-group { flex-wrap: nowrap; }
.vet-lines-record .vet-line .input-group-text { padding-left: 8px; padding-right: 8px; font-size: 12px; }
.vet-lines-record .vet-line .input-group-text:empty { display: none; }
.vet-lines-record .vet-line .form-control:disabled, .vet-lines-record .vet-line .form-select:disabled { opacity: .45; }

/* Satırın altındaki bilgi: eldeki miktar ve arınma süresi */
.vet-record-hint { display: flex; flex-wrap: wrap; gap: 0 10px; margin-top: 3px; font-size: 11.5px; line-height: 1.35; color: var(--vz-secondary-color); }
.vet-record-hint > span:empty { display: none; }

/* İsteğe bağlı bölümün başlığı: tıklanınca bölüm açılır / kapanır (başlık düğmedir) */
.vet-record-fold { width: 100%; border: 0; background: transparent; padding-left: 0; padding-right: 0; padding-bottom: 0; text-align: left; cursor: pointer; }
.vet-record-fold:first-child { padding-top: 0; }
.vet-record-fold:hover { color: var(--pt-accent); }
.vet-record-fold:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: 2px; border-radius: 3px; }
.vet-record-fold.collapsed { margin-bottom: 0; }
.vet-record-fold .vet-record-chevron { margin-left: auto; font-size: 18px; transition: transform .15s ease; }
.vet-record-fold[aria-expanded="true"] .vet-record-chevron { transform: rotate(180deg); }
.vet-record-optional { padding: 1px 6px; border: 1px solid var(--vz-border-color); border-radius: 3px; font-size: 10.5px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--vz-secondary-color); }

/* Hayvan seçimi bekleyen kısa form: öneri listesi pencerenin kaydırılan gövdesinde kesilmesin */
.vet-record-staged { min-height: 430px; }

/* Toplu aşıda seçilen hayvanlar: uzun listede pencere uzamasın */
#vetActionIds { max-height: 132px; overflow-y: auto; }
#vetActionIds:empty { display: none; }

/* Dar ekranda alt çubuk: düğmeler sarılır, "Kaydet" tam genişlikte kalmaz */
@media (max-width: 575.98px) {
    #vetActionForm .modal-footer { justify-content: flex-end; gap: 6px; }
    #vetActionForm .modal-footer > .btn { margin: 0; }
}

/* ═══ Faz 3 — C3: ziyaret çalışma sayfası (Work/Index) ve ziyaret özeti (Work/Summary, Work/Pdf → _Sheet) ═══
   vet.css'in sonuna eklenir. İki bölüm:
   1) "vet-work-…"  çalışma sayfası: temanın değişkenlerini kullanır (açık / koyu görünüm).
   2) "vet-sum-…"   ziyaret özeti belgesi: EKRANDA ve PDF'TE aynı kurallar. PDF'e vet.css'in metni gömülür
      (WorkController.Sheet → WebText("css/vet.css")); bu yüzden belge kuralları temaya (Bootstrap, simge yazı tipi, tema
      değişkenleri) BAĞLI DEĞİLDİR: renkler sabittir, kâğıt her zaman beyazdır (koyu görünümde de). Köşe yuvarlaması yoktur. */

/* ── 1) Çalışma sayfası ─────────────────────────────────────────────────── */

/* Muayene listesi: bilgi satırı (çiftliğin izin vermediği alanlar, okunamayan liste) */
.vet-work-info { display: flex; align-items: flex-start; gap: 8px; padding: 8px 14px; border-bottom: 1px solid var(--vz-border-color); background: var(--vz-light); font-size: 12.5px; line-height: 1.45; color: var(--vz-secondary-color); }
.vet-work-info > i { flex: 0 0 auto; font-size: 15px; line-height: 1.25; }

/* Neden kısayolları: gruba atlar */
.vet-work-chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 14px; }
.vet-work-chips .badge { padding: 5px 8px; border: 1px solid var(--vz-border-color); font-size: 12px; font-weight: 500; text-decoration: none; }
.vet-work-chips .badge:hover, .vet-work-chips .badge:focus-visible { border-color: var(--pt-accent); color: var(--pt-accent) !important; }
.vet-work-chips .badge b { margin-left: 4px; font-weight: 700; color: var(--pt-accent); }

/* Grup başlığı (neden + ilerleme) */
.vet-work-group { display: flex; align-items: center; gap: 8px; padding: 8px 14px; border-top: 1px solid var(--vz-border-color); border-bottom: 1px solid var(--vz-border-color); background: var(--vz-light); scroll-margin-top: 84px; }
.vet-work-group h6 { flex: 1 1 auto; display: flex; align-items: center; gap: 6px; min-width: 0; margin: 0; font-size: 12px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-work-group h6 > i { flex: 0 0 auto; font-size: 16px; color: var(--pt-accent); }
.vet-work-group .badge { flex: 0 0 auto; font-size: 11.5px; }
.vet-work-rows { border-top: 0; }

/* Satır: işaret · hayvan + ayrıntı · zamanı · düğmeler (dar ekranda düğmeler alt satıra iner) */
.vet-work-row { flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.vet-work-row .pt-row-body { flex: 1 1 170px; }
.vet-work-row .pt-row-body b a { color: inherit; }
.vet-work-row .pt-row-body b a:hover { color: var(--pt-accent); }
.vet-work-row .pt-row-body b > i { margin-left: 4px; font-size: 14px; }
.vet-work-row > .badge { margin-top: 0; }
.vet-work-tick { flex: 0 0 auto; font-size: 20px; line-height: 1; color: var(--vz-secondary-color); opacity: .45; }
.vet-work-done .vet-work-tick { color: var(--vz-success); opacity: 1; }
.vet-work-done .pt-row-body b, .vet-work-done .pt-row-body b a { font-weight: 500; color: var(--vz-secondary-color); }
.vet-work-late { box-shadow: inset 3px 0 0 var(--vz-danger); }
.vet-work-tag { margin-left: 6px; font-size: 11.5px; font-weight: 500; color: var(--vz-secondary-color); font-variant-numeric: tabular-nums; }
.vet-work-tools { flex: 0 0 auto; display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 4px; margin-left: auto; }
.vet-work-tools:empty { display: none; }
.vet-work-tools .btn { white-space: nowrap; border-radius: 3px; }

/* Bu ziyarette yapılanlar: hücreye tıklayınca işlem ayrıntısı açılır */
.vet-work-click { cursor: pointer; }
.vet-work-table td .badge { font-weight: 500; }
.vet-work-table .pt-row-actions > i { margin-right: 2px; font-size: 17px; vertical-align: middle; }

/* Yan kutular: amaç, özet, çağrı */
.vet-work-text { margin: 0 0 12px; font-size: 13px; line-height: 1.5; white-space: pre-line; overflow-wrap: anywhere; }
.vet-work-label { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 600; letter-spacing: .4px; line-height: 1.5; text-transform: uppercase; white-space: normal; color: var(--vz-secondary-color); }
.vet-work-label > i { margin-right: 4px; font-size: 14px; color: var(--pt-accent); }
.vet-work-call { margin: 0 0 12px; padding: 10px 12px; border: 1px solid var(--vz-border-color); border-left: 3px solid var(--pt-accent); border-radius: 3px; background: var(--vz-light); }
.vet-work-call p { margin: 2px 0 0; font-size: 13px; line-height: 1.45; white-space: pre-line; overflow-wrap: anywhere; }
.vet-work-call small { display: block; margin-top: 4px; font-size: 12px; color: var(--vz-secondary-color); }
.vet-work-call small > span:not(:empty) + a { margin-left: 6px; }

@media (max-width: 575.98px) {
    /* Telefonda düğmeler satırın altında, parmakla basılacak büyüklükte */
    .vet-work-tools { flex: 1 1 100%; justify-content: flex-start; margin-left: 32px; }
    .vet-work-tools .btn-sm { padding: 6px 12px; font-size: 13px; }
}

/* ── 2) Ziyaret özeti belgesi (ekran + PDF; temadan bağımsız) ─────────────── */
.vet-sum {
    --vs-ink: #1D2733;
    --vs-soft: #667085;
    --vs-line: #D9DEE5;
    --vs-fill: #F5F7FA;
    --vs-accent: #1F5FA8;
    --vs-accent-ink: #184B85;
    --vs-accent-soft: #E3EDF8;
    box-sizing: border-box; max-width: 860px; margin: 0 auto 24px; padding: 44px 48px 26px;
    background: #fff; color: var(--vs-ink); border: 1px solid var(--vs-line);
    font: 400 13px/1.55 "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif; text-align: left;
}
.vet-sum *, .vet-sum *::before, .vet-sum *::after { box-sizing: border-box; }
.vet-sum h1, .vet-sum h2, .vet-sum p, .vet-sum dl, .vet-sum dt, .vet-sum dd, .vet-sum ol, .vet-sum ul, .vet-sum li, .vet-sum table, .vet-sum th, .vet-sum td { margin: 0; padding: 0; color: inherit; font-family: inherit; }
.vet-sum b { font-weight: 600; }
.vet-sum-label { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vs-soft); }

/* Başlık: solda klinik (logo, ad, iletişim), sağda belge adı, tarih, numara */
.vet-sum-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding-bottom: 18px; border-bottom: 2px solid var(--vs-ink); }
.vet-sum-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
.vet-sum-logo { flex: 0 0 auto; display: block; width: 72px; height: 72px; object-fit: contain; }
.vet-sum-clinic { min-width: 0; }
.vet-sum-clinic b { display: block; font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }
.vet-sum-clinic span { display: block; font-size: 11.5px; line-height: 1.45; color: var(--vs-soft); overflow-wrap: anywhere; }
.vet-sum-brand-text .vet-sum-clinic b { font-size: 21px; line-height: 1.25; }
.vet-sum-doc { flex: 0 0 auto; text-align: right; }
.vet-sum-kicker { display: block; font-size: 11px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; color: var(--vs-accent-ink); }
.vet-sum-doc b { display: block; font-size: 18px; line-height: 1.35; }
.vet-sum-doc small { display: block; font-size: 12px; color: var(--vs-soft); }

/* Açık ziyaretin önizlemesi */
.vet-sum-draft { margin-top: 14px !important; padding: 6px 12px !important; border: 1px dashed #B54708; color: #B54708 !important; font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; text-align: center; }

/* Çiftlik ve ziyaret bilgisi */
.vet-sum-farm { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; padding: 22px 0 4px; }
.vet-sum-farm-name { flex: 1 1 auto; min-width: 0; }
.vet-sum-farm h1 { margin-top: 2px; font-size: 24px; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.vet-sum-farm-name p { margin-top: 4px; color: var(--vs-soft); overflow-wrap: anywhere; }
.vet-sum-meta { flex: 0 0 48%; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; }
.vet-sum-meta dt { font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vs-soft); }
.vet-sum-meta dd { font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
.vet-sum-meta dd small { display: block; font-size: 12px; font-weight: 400; color: var(--vs-soft); }

/* Bölümler */
.vet-sum-sec { margin-top: 22px; }
.vet-sum-sec h2 { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 12px; font-weight: 700; letter-spacing: 1px; line-height: 1.4; text-transform: uppercase; break-after: avoid; }
.vet-sum-sec h2 i { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; background: var(--vs-ink); color: #fff; font-size: 11px; font-style: normal; font-weight: 600; letter-spacing: 0; }
.vet-sum-sec h2::after { content: ""; flex: 1 1 auto; height: 1px; background: var(--vs-line); }
.vet-sum-text { white-space: pre-line; overflow-wrap: anywhere; }
.vet-sum-text + .vet-sum-text { margin-top: 6px; }
.vet-sum-note { margin-top: 8px !important; font-size: 11.5px; color: var(--vs-soft) !important; }
.vet-sum-keep { break-inside: avoid; }

.vet-sum-table-wrap { overflow-x: auto; }
.vet-sum-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.vet-sum-table th { padding: 7px 10px; border-bottom: 1px solid var(--vs-ink); font-size: 10.5px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; text-align: left; color: var(--vs-soft); white-space: nowrap; }
.vet-sum-table td { padding: 7px 10px; border-bottom: 1px solid var(--vs-line); vertical-align: top; overflow-wrap: anywhere; }
.vet-sum-table tr { break-inside: avoid; }
.vet-sum-table td small { display: block; font-size: 11px; color: var(--vs-soft); }
.vet-sum-table .vet-sum-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-sum-table .vet-sum-strong { font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-sum-table .vet-sum-group td { padding-top: 12px; border-bottom: 1px solid var(--vs-ink); font-size: 10.5px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; color: var(--vs-accent-ink); break-after: avoid; }

/* Arınma: vurgulu kutu */
.vet-sum-box { padding: 6px 14px 8px; background: var(--vs-fill); border-left: 3px solid var(--vs-accent); }
.vet-sum-box .vet-sum-table tbody tr:last-child td { border-bottom: 0; }

/* Takip işleri: işaret kutulu liste; sonraki ziyaret */
.vet-sum-list { list-style: none; }
.vet-sum-list li { position: relative; padding: 6px 0 6px 26px; border-bottom: 1px solid var(--vs-line); overflow-wrap: anywhere; break-inside: avoid; }
.vet-sum-list li:last-child { border-bottom: 0; }
.vet-sum-list li::before { content: ""; position: absolute; left: 0; top: 9px; width: 12px; height: 12px; border: 1.5px solid var(--vs-ink); background: #fff; }
.vet-sum-list li.vet-sum-checked::before { background: var(--vs-ink); box-shadow: inset 0 0 0 2px #fff; }
.vet-sum-list li small { display: block; font-size: 11.5px; color: var(--vs-soft); }
.vet-sum-next { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; margin-top: 12px; padding: 10px 16px; border: 1px solid var(--vs-line); break-inside: avoid; }
.vet-sum-next b { font-size: 14px; }

/* Tutarlar */
.vet-sum-totals { width: 46%; min-width: 250px; margin-left: auto !important; }
.vet-sum-totals > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 6px 0; border-bottom: 1px solid var(--vs-line); }
.vet-sum-totals dt { font-weight: 400; color: var(--vs-soft); }
.vet-sum-totals dd { font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-sum-totals .vet-sum-total { border-top: 1px solid var(--vs-ink); border-bottom: 0; }
.vet-sum-totals .vet-sum-total dt { font-weight: 700; color: var(--vs-ink); }
.vet-sum-totals .vet-sum-total dd { font-size: 15px; font-weight: 700; }
.vet-sum-totals + .vet-sum-note { text-align: right; }

/* İmza ve belge notu */
.vet-sum-sign { display: flex; gap: 48px; margin-top: 34px; break-inside: avoid; }
.vet-sum-sign > div { flex: 1 1 0; min-width: 0; padding-top: 10px; border-top: 1px solid var(--vs-ink); }
.vet-sum-sign b { display: block; margin-top: 4px; font-size: 14px; overflow-wrap: anywhere; }
.vet-sum-sign span:not(.vet-sum-label) { display: block; font-size: 12px; color: var(--vs-soft); overflow-wrap: anywhere; }
.vet-sum-sign-space { height: 54px; }
.vet-sum-docnote { margin-top: 22px !important; padding-top: 10px !important; border-top: 1px solid var(--vs-line); font-size: 11.5px; color: var(--vs-soft) !important; white-space: pre-line; overflow-wrap: anywhere; break-inside: avoid; }

/* Alt bilgi (yalnızca ekranda; PDF'te her sayfanın altlığındadır) */
.vet-sum-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 30px; padding-top: 14px; border-top: 1px solid var(--vs-line); font-size: 11.5px; color: var(--vs-soft); }
.vet-sum-foot-brand { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
.vet-sum-foot-brand img { display: block; width: auto; height: 18px; }
.vet-sum-foot-text { min-width: 0; text-align: right; overflow-wrap: anywhere; }

/* PDF belgesi: kenar boşluklarını sayfa verir */
.vet-sum-body { margin: 0; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.vet-sum.vet-sum-pdf { max-width: none; margin: 0; padding: 0; border: 0; }

/* Özet sayfasının yan sütunu */
.vet-sum-side .card-body > p:last-child { margin-bottom: 0; }

/* Dar ekran (yalnızca ekranda: A4'ün yazdırma genişliği de bu sınırın altındadır, çıktı etkilenmemeli) */
@media screen and (max-width: 767.98px) {
    .vet-sum { padding: 22px 18px 18px; }
    .vet-sum-head { flex-direction: column; align-items: flex-start; gap: 12px; }
    .vet-sum-doc { text-align: left; }
    .vet-sum-farm { flex-direction: column; gap: 14px; }
    .vet-sum-farm h1 { font-size: 21px; }
    .vet-sum-meta { flex: 1 1 auto; width: 100%; }
    .vet-sum-table { min-width: 520px; }
    .vet-sum-totals { width: 100%; }
    .vet-sum-sign { flex-direction: column; gap: 22px; }
    .vet-sum-foot { flex-direction: column; align-items: flex-start; gap: 8px; }
    .vet-sum-foot-text { text-align: left; }
}

/* Tarayıcıdan yazdırma: yalnızca belge */
@media print {
    .vet-sum { max-width: none; margin: 0; padding: 0; border: 0; }
    .vet-sum-side { display: none !important; }
}

/* ── V2 · Ziyaretler ve Takvim (Areas/VisitManagement/Views/Visit, Views/Calendar) ──
   Takvimin ızgara ve ajanda sınıfları (pt-cal*, pt-chip*) ortak portal.css'te tanımlıdır (Vet kopyasında da var: 236-241, 733-765).
   Danışman uygulamasının takvim için advisor.css'te tanımladıkları (adv-cal-task, adv-cal-task-done) buradaki vet- adlarıyla
   karşılanır; "tamamla" dairesi (adv-check-btn) Veteriner takviminde yoktur (iş, iş penceresinden tamamlanır). */

/* Ay değişirken takvim soluklaşır (calendar.js #ptCalendar'a pt-loading ekler) */
.vet-cal.pt-loading { opacity: .5; pointer-events: none; transition: opacity .12s; }

/* Ajandada biten iş ve iptal edilen ziyaret: başlığın üstü çizili, soluk */
.vet-cal-done .pt-cal-text b { text-decoration: line-through; color: var(--vz-secondary-color); }

/* ═══ Reçeteler (Areas/RecordManagement/Views/Prescription) — vet.css'e eklenecek ═══
   ÖNEMLİ: reçetenin PDF'i (PrescriptionController.Pdf) biçemini wwwroot/css/vet.css dosyasının METNİNDEN alır (belgeye
   gömülür). Bu yüzden aşağıdaki "vet-rx" kuralları vet.css'in içinde olmalıdır; ayrı bir dosyaya konursa PDF biçemsiz çıkar. */

/* Reçete formunun ilaç satırları: sıra no · alanlar · sil. Alanlar Bootstrap ızgarasıyla dizilir (geniş pencerede iki
   sıra, dar pencerede alta sarar); her alanın küçük etiketi üstündedir, bu yüzden ortak başlık satırı (vet-lines-head) yoktur. */
.vet-lines.vet-lines-prescription { overflow: visible; padding-bottom: 0; }
.vet-lines-prescription .vet-line { grid-template-columns: 26px minmax(0, 1fr) 36px; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px dashed var(--vz-border-color); }
.vet-lines-prescription .vet-line:last-child { margin-bottom: 0; }
.vet-lines-prescription .vet-line > .pt-repeat-no { margin-top: 24px; }
.vet-lines-prescription .vet-line > .btn { margin-top: 19px; }
.vet-lines-prescription .form-label { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 600; letter-spacing: .3px; text-transform: uppercase; color: var(--vz-secondary-color); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vet-rx-animal { margin-top: 4px; font-size: 12px; color: var(--vz-secondary-color); }
.vet-rx-animal:empty { display: none; }

/* Reçete belgesi (Prescription/_Sheet): EKRANDA ve PDF'TE aynı biçem. Temaya (Bootstrap, simge yazı tipi, tema
   değişkenleri) bağlı değildir: renkler sabittir, kâğıt her zaman beyazdır (koyu görünümde de). Köşe yuvarlaması yoktur. */
.vet-rx {
    --vet-rx-ink: #1F2A36;
    --vet-rx-soft: #5F6B78;
    --vet-rx-line: #D5DBE2;
    --vet-rx-fill: #F4F6F9;
    --vet-rx-accent: #1F5FA8;
    box-sizing: border-box; max-width: 860px; margin: 0 auto 24px; padding: 44px 48px 26px;
    background: #fff; color: var(--vet-rx-ink); border: 1px solid var(--vet-rx-line);
    font: 400 13px/1.55 "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif; text-align: left;
}
.vet-rx *, .vet-rx *::before, .vet-rx *::after { box-sizing: border-box; }
.vet-rx h1, .vet-rx h2, .vet-rx p, .vet-rx dl, .vet-rx dt, .vet-rx dd, .vet-rx table, .vet-rx th, .vet-rx td { margin: 0; padding: 0; color: inherit; font-family: inherit; }
.vet-rx b { font-weight: 600; }
.vet-rx-label { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vet-rx-soft); }

/* Başlık: solda klinik (logo ya da ad, adres, ruhsat no), sağda belge adı, reçete numarası, tarih */
.vet-rx-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding-bottom: 18px; border-bottom: 2px solid var(--vet-rx-ink); }
.vet-rx-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
.vet-rx-logo { flex: 0 0 auto; display: block; width: 72px; height: 72px; object-fit: contain; }
.vet-rx-clinic { min-width: 0; }
.vet-rx-clinic b { display: block; font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }
.vet-rx-clinic span { display: block; font-size: 12px; color: var(--vet-rx-soft); overflow-wrap: anywhere; }
.vet-rx-brand-text .vet-rx-clinic b { font-size: 21px; line-height: 1.25; }
.vet-rx-doc { flex: 0 0 auto; text-align: right; }
.vet-rx-kicker { display: block; font-size: 11px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; color: var(--vet-rx-accent); }
.vet-rx-doc b { display: block; font-size: 20px; line-height: 1.35; font-variant-numeric: tabular-nums; white-space: nowrap; }
.vet-rx-doc small { display: block; font-size: 12px; color: var(--vet-rx-soft); }

/* Taslak / iptal şeridi (her zaman metinle birlikte) */
.vet-rx-stamp { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; margin-top: 14px; padding: 8px 14px; border: 1px solid currentColor; font-size: 12px; break-inside: avoid; }
.vet-rx-stamp b { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.vet-rx-stamp span { overflow-wrap: anywhere; }
.vet-rx-stamp-draft { color: #8A5A00; background: #FFF6E0; }
.vet-rx-stamp-cancel { color: #B42318; background: #FDECEA; }

/* Çiftlik ve hekim */
.vet-rx-parties { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; padding: 22px 0 18px; }
.vet-rx-farm { flex: 1 1 auto; min-width: 0; }
.vet-rx-farm h1 { margin: 2px 0 4px; font-size: 23px; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.vet-rx-farm p { font-size: 12.5px; color: var(--vet-rx-soft); overflow-wrap: anywhere; }
.vet-rx-meta { flex: 0 0 48%; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; }
.vet-rx-meta dt { font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vet-rx-soft); }
.vet-rx-meta dd { font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
.vet-rx-meta dd small { display: block; font-size: 12px; font-weight: 400; color: var(--vet-rx-soft); }

/* Hayvanlar ve tanı */
.vet-rx-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; border-top: 1px solid var(--vet-rx-line); border-bottom: 1px solid var(--vet-rx-line); break-inside: avoid; }
.vet-rx-facts > div { min-width: 0; padding: 10px 0; }
.vet-rx-text { white-space: pre-line; overflow-wrap: anywhere; }

/* Bölümler ve ilaç tablosu */
.vet-rx-sec { margin-top: 22px; }
.vet-rx-sec h2 { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; break-after: avoid; }
.vet-rx-sec h2::after { content: ""; flex: 1 1 auto; height: 1px; background: var(--vet-rx-line); }
.vet-rx .vet-rx-empty { padding: 14px 0; color: var(--vet-rx-soft); }
.vet-rx-table-wrap { overflow-x: auto; }
.vet-rx-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.vet-rx-table th { padding: 7px 10px; border-bottom: 1px solid var(--vet-rx-ink); font-size: 10.5px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; text-align: left; color: var(--vet-rx-soft); white-space: nowrap; }
.vet-rx-table td { padding: 8px 10px; border-bottom: 1px solid var(--vet-rx-line); vertical-align: top; overflow-wrap: anywhere; }
.vet-rx-table tr { break-inside: avoid; }
.vet-rx-table td b { font-size: 13.5px; }
.vet-rx-table td small { display: block; font-size: 11.5px; color: var(--vet-rx-soft); }
.vet-rx-table .vet-rx-n { width: 30px; padding-left: 0; color: var(--vet-rx-soft); font-variant-numeric: tabular-nums; }
.vet-rx-table .vet-rx-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-rx-wd { display: block; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-rx-tag { display: inline-block; margin-left: 6px; padding: 0 6px; border: 1px solid currentColor; font-size: 10.5px; font-weight: 600; line-height: 1.5; white-space: nowrap; vertical-align: 1px; color: #B42318; }
.vet-rx .vet-rx-warn { margin-top: 10px; padding: 8px 12px; background: var(--vet-rx-fill); border-left: 3px solid var(--vet-rx-accent); font-size: 12px; break-inside: avoid; }

/* Kliniğin belge notu */
.vet-rx-box { margin-top: 22px; padding: 12px 16px; border: 1px solid var(--vet-rx-line); font-size: 12px; color: var(--vet-rx-soft); break-inside: avoid; }

/* İmza */
.vet-rx-sign { display: flex; gap: 48px; margin-top: 32px; break-inside: avoid; }
.vet-rx-sign > div { flex: 1 1 0; min-width: 0; padding-top: 10px; border-top: 1px solid var(--vet-rx-ink); }
.vet-rx-sign b { display: block; margin-top: 4px; font-size: 14px; overflow-wrap: anywhere; }
.vet-rx-sign span:not(.vet-rx-label) { display: block; font-size: 12px; color: var(--vet-rx-soft); overflow-wrap: anywhere; }
.vet-rx-sign-space { height: 52px; }
.vet-rx-sign-tall { height: 92px; }

/* Alt bilgi (ekran ve tarayıcıdan yazdırma): SOLDA Bovisio logosu. PDF'te alt bilgi her sayfanın altlığındadır */
.vet-rx-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 32px; padding-top: 14px; border-top: 1px solid var(--vet-rx-line); font-size: 11.5px; color: var(--vet-rx-soft); break-inside: avoid; }
.vet-rx-foot-brand { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
.vet-rx-foot-brand img { display: block; width: auto; height: 18px; }
.vet-rx-foot-text { min-width: 0; text-align: right; overflow-wrap: anywhere; }

/* PDF belgesi: kenar boşluklarını sayfa verir */
.vet-rx-body { margin: 0; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.vet-rx.vet-rx-pdf { max-width: none; margin: 0; padding: 0; border: 0; }

/* Dar ekran (yalnızca ekranda: A4 kâğıdın yazdırma genişliği de bu sınırın altındadır, çıktı etkilenmemeli) */
@media screen and (max-width: 767.98px) {
    .vet-rx { padding: 22px 18px 18px; }
    .vet-rx-head { flex-direction: column; align-items: flex-start; gap: 12px; }
    .vet-rx-doc { text-align: left; }
    .vet-rx-parties { flex-direction: column; gap: 14px; }
    .vet-rx-farm h1 { font-size: 20px; }
    .vet-rx-meta { flex: 1 1 auto; width: 100%; }
    .vet-rx-facts { grid-template-columns: 1fr; }
    .vet-rx-facts > div + div { border-top: 1px solid var(--vet-rx-line); }
    .vet-rx-table { min-width: 560px; }
    .vet-rx-sign { flex-direction: column; gap: 22px; }
    .vet-rx-foot { flex-direction: column; align-items: flex-start; gap: 8px; }
    .vet-rx-foot-text { text-align: left; }
}

/* Tarayıcıdan yazdırma: yalnızca belge (yan sütun d-print-none ile gizlenir) */
@media print {
    .vet-rx { max-width: none; margin: 0; padding: 0; border: 0; }
}

/* ════════════════════════════════════════════════════════════════════════════
 * FATURALAR (Areas/FinanceManagement/Views/Invoice) — vet.css'in SONUNA eklenir.
 * ÖNEMLİ: fatura PDF'i biçemi "css/vet.css" dosyasından okuyup belgeye gömer (InvoiceController.Sheet → WebText). Bu
 * kurallar başka bir dosyaya konursa o satırdaki dosya adı da değiştirilmelidir.
 * 1) Yeni fatura formu: serbest satır ızgarası, faturalanmamış kalemler tablosu, toplam kutusu (tema değişkenleriyle).
 * 2) Fatura belgesi (_Sheet; ekranda ve PDF'te aynı): temaya, Bootstrap'e ve simge yazı tipine BAĞLI DEĞİLDİR — renkler
 *    sabittir, kâğıt her zaman beyazdır (koyu görünümde de), köşe yuvarlaması yoktur.
 * ════════════════════════════════════════════════════════════════════════════ */

/* ── 1) Form ── */
/* Serbest satırlar: sıra · tür · açıklama · miktar · birim · birim fiyat · indirim % · KDV % · tutar · sil */
.vet-lines-invoice .vet-lines-head, .vet-lines-invoice .vet-line { grid-template-columns: 26px 132px minmax(200px, 3fr) 84px 80px minmax(100px, 1fr) 72px 72px minmax(84px, .9fr) 36px; min-width: 960px; }

/* Faturalanmamış kalemler: işlem başlığı satırı + kalem satırları; uzun listede tablo kendi içinde kayar */
.vet-inv-charges { max-height: 46vh; overflow-y: auto; border: 1px solid var(--vz-border-color); border-radius: 3px; }
.vet-inv-charges thead th { position: sticky; top: 0; z-index: 1; }
.vet-inv-charges tr.vet-inv-group > td { padding-top: 6px; padding-bottom: 6px; background: var(--vz-light); font-size: 12.5px; color: var(--vz-secondary-color); white-space: normal; }
.vet-inv-charges tr.vet-inv-group b { font-weight: 600; color: var(--vz-heading-color); }
.vet-inv-charges label { cursor: pointer; }
.vet-inv-charges tbody tr:last-child > td { border-bottom: 0; }

/* Toplam kutusu (yeni fatura formu, taslağın satırlar kartı): sağa yaslı, son satır genel toplam */
.vet-inv-sum { max-width: 380px; margin-left: auto; }
.vet-section ~ .vet-inv-sum { margin-top: 16px; }
.vet-inv-sum .pt-kv { border-top: 0; }
.vet-inv-sum .pt-kv dd { font-variant-numeric: tabular-nums; white-space: nowrap; }
.vet-inv-sum .pt-kv > div.vet-inv-sum-total { border-top: 2px solid var(--vz-border-color); border-bottom: 0; padding-top: 10px; }
.vet-inv-sum .pt-kv > div.vet-inv-sum-total dt { font-size: 13px; font-weight: 600; color: var(--vz-heading-color); }
.vet-inv-sum .pt-kv > div.vet-inv-sum-total dd { font-size: 17px; font-weight: 700; }

/* Satır penceresi: yazdıkça satır tutarı */
.vet-inv-preview { padding-bottom: 8px; font-size: 13px; color: var(--vz-secondary-color); }
.vet-inv-preview b { margin-left: 4px; font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--vz-heading-color); }

/* ── 2) Fatura belgesi ── */
.vet-inv-wrap { margin-bottom: 1.5rem; overflow-x: auto; }
.vet-inv-wrap .vet-inv { min-width: 620px; margin-bottom: 0; }
.vet-inv-body { margin: 0; padding: 0; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }

.vet-inv {
    --vet-inv-ink: #1F2A37;
    --vet-inv-soft: #5F6B7A;
    --vet-inv-line: #D8DEE6;
    --vet-inv-fill: #F4F7FA;
    --vet-inv-accent: #1F5FA8;
    --vet-inv-bad: #B3261E;
    box-sizing: border-box; max-width: 860px; margin: 0 auto 24px; padding: 40px 44px 28px;
    background: #fff; color: var(--vet-inv-ink); border: 1px solid var(--vet-inv-line);
    font: 400 13px/1.55 "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif; text-align: left;
}
.vet-inv *, .vet-inv *::before, .vet-inv *::after { box-sizing: border-box; }
.vet-inv h1, .vet-inv p, .vet-inv dl, .vet-inv dt, .vet-inv dd, .vet-inv table, .vet-inv th, .vet-inv td { margin: 0; padding: 0; color: inherit; font-family: inherit; }
.vet-inv b { font-weight: 600; }
.vet-inv-label { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vet-inv-soft); }
.vet-inv.vet-inv-pdf { max-width: none; margin: 0; padding: 0; border: 0; }

/* Başlık: solda klinik (logo, ad, adres, vergi), sağda belge adı, numara, tarih */
.vet-inv-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding-bottom: 18px; border-bottom: 2px solid var(--vet-inv-ink); }
.vet-inv-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
.vet-inv-logo { flex: 0 0 auto; display: block; width: 72px; height: 72px; object-fit: contain; }
.vet-inv-firm { min-width: 0; }
.vet-inv-firm b { display: block; font-size: 16px; line-height: 1.3; overflow-wrap: anywhere; }
.vet-inv-firm span { display: block; font-size: 11.5px; line-height: 1.45; color: var(--vet-inv-soft); overflow-wrap: anywhere; }
.vet-inv-doc { flex: 0 0 auto; text-align: right; }
.vet-inv-kicker { display: block; font-size: 11px; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; color: var(--vet-inv-accent); }
.vet-inv-doc b { display: block; font-size: 20px; line-height: 1.3; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-inv-doc small { display: block; font-size: 12px; color: var(--vet-inv-soft); }
.vet-inv-stamp { display: inline-block; margin-top: 6px; padding: 1px 10px; border: 2px solid var(--vet-inv-soft); font-size: 11.5px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: var(--vet-inv-soft); }
.vet-inv-stamp-bad { border-color: var(--vet-inv-bad); color: var(--vet-inv-bad); }

/* Alıcı çiftlik ve belge bilgisi */
.vet-inv-parties { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; padding: 20px 0 18px; }
.vet-inv-to { flex: 1 1 auto; min-width: 0; }
.vet-inv-to h1 { margin-top: 2px; font-size: 21px; font-weight: 600; line-height: 1.25; overflow-wrap: anywhere; }
.vet-inv-to p { margin-top: 2px; font-size: 12.5px; color: var(--vet-inv-soft); overflow-wrap: anywhere; }
.vet-inv-meta { flex: 0 0 40%; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; }
.vet-inv-meta dt { font-size: 10.5px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; color: var(--vet-inv-soft); }
.vet-inv-meta dd { font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }

/* Satırlar */
.vet-inv-table { width: 100%; border-collapse: collapse; }
.vet-inv-table th { padding: 8px 10px; border-top: 1px solid var(--vet-inv-line); border-bottom: 1px solid var(--vet-inv-line); background: var(--vet-inv-fill);
    font-size: 10.5px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; text-align: left; white-space: nowrap; color: var(--vet-inv-soft); }
.vet-inv-table td { padding: 8px 10px; border-bottom: 1px solid var(--vet-inv-line); vertical-align: top; font-size: 13px; overflow-wrap: anywhere; }
.vet-inv-table td small { display: block; margin-top: 1px; font-size: 11.5px; color: var(--vet-inv-soft); }
.vet-inv-table tr { break-inside: avoid; }
.vet-inv-table th.vet-inv-num, .vet-inv-table td.vet-inv-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-inv-table .vet-inv-no { width: 34px; color: var(--vet-inv-soft); }
.vet-inv-table td.vet-inv-none { padding: 18px 10px; text-align: center; color: var(--vet-inv-soft); }
.vet-inv-strong, .vet-inv-strong dt, .vet-inv-strong dd { font-weight: 600; }

/* Not ve toplamlar */
.vet-inv-bottom { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; padding-top: 16px; break-inside: avoid; }
.vet-inv-notes { flex: 1 1 auto; min-width: 0; }
.vet-inv-notes p { margin-top: 3px; font-size: 12.5px; white-space: pre-line; overflow-wrap: anywhere; }
.vet-inv-notes p.vet-inv-fixed { margin-top: 10px; padding: 9px 12px; border-left: 3px solid var(--vet-inv-accent); background: var(--vet-inv-fill); }
.vet-inv-notes p.vet-inv-fixed:first-child { margin-top: 0; }
.vet-inv-totals { flex: 0 0 300px; }
.vet-inv-totals > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 5px 0; border-bottom: 1px solid var(--vet-inv-line); }
.vet-inv-totals dt { font-size: 12.5px; color: var(--vet-inv-soft); }
.vet-inv-totals dt small { display: block; font-size: 11px; }
.vet-inv-totals dd { font-size: 13px; font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.vet-inv-totals > div.vet-inv-grand { margin-top: 4px; padding: 8px 0; border-top: 2px solid var(--vet-inv-ink); border-bottom: 2px solid var(--vet-inv-ink); }
.vet-inv-totals > div.vet-inv-grand dt { font-size: 12px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--vet-inv-ink); }
.vet-inv-totals > div.vet-inv-grand dd { font-size: 18px; font-weight: 700; }
.vet-inv-totals > div.vet-inv-strong dt { color: var(--vet-inv-ink); }

/* Kutular: iptal nedeni, çiftlik onayı */
.vet-inv-box { margin-top: 16px; padding: 10px 12px; border: 1px solid var(--vet-inv-line); background: var(--vet-inv-fill); break-inside: avoid; }
.vet-inv-box p { margin-top: 2px; font-size: 12.5px; white-space: pre-line; overflow-wrap: anywhere; }
.vet-inv-box-bad { border-color: var(--vet-inv-bad); background: #FDF2F1; }
.vet-inv-box-bad .vet-inv-label { color: var(--vet-inv-bad); }

/* İmza alanı */
.vet-inv-sign { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 28px; break-inside: avoid; }
.vet-inv-sign b { display: block; margin-top: 2px; font-size: 13.5px; }
.vet-inv-sign span:not(.vet-inv-label) { display: block; font-size: 12px; color: var(--vet-inv-soft); }
.vet-inv-sign-space { height: 46px; margin-bottom: 4px; border-bottom: 1px solid var(--vet-inv-ink); }

/* Dar ekran (yalnızca ekranda; PDF yazdırma ortamıdır) */
@media screen and (max-width: 767.98px) {
    .vet-inv { padding: 22px 18px 18px; }
    .vet-inv-meta { flex-basis: 46%; }
    .vet-inv-totals { flex-basis: 250px; }
}

/* Takvim (ortak betik ve sınıflar): köşeler 3px */
.vet .pt-cal-day, .vet .pt-cal-item, .vet .pt-cal-grid, .vet .pt-cal-agenda > * { border-radius: 3px; }

/* Hızlı işlemler çubuğu (çiftlik kartı): sığmayan düğmeler alt satıra iner */
.vet-quick { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 1.5rem; }
.vet-quick .btn { white-space: nowrap; }
@media (max-width: 575.98px) {
  .vet-quick .btn { flex: 1 1 calc(50% - 4px); min-width: 0; overflow: hidden; text-overflow: ellipsis; padding-left: 8px; padding-right: 8px; }
}

/* Ortak seçim kutuları (hayvan, tırnak): köşeler 3px */
.vet .pt-picked-animal, .modal .pt-picked-animal, .vet .pt-picked-icon, .modal .pt-picked-icon, .vet .pt-hoof-leg, .modal .pt-hoof-leg { border-radius: 3px; }

/* Aşı programı ekleme satırı (işlem penceresi, harici çiftlik) */
.vet-programs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.vet-programs-title { display: inline-flex; align-items: center; gap: 4px; margin-right: 4px; font-size: 12px; font-weight: 600; letter-spacing: .3px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-programs-title > i { font-size: 16px; color: var(--pt-accent); }
.vet-programs + .pt-hint { margin-top: 6px; }

/* ═══ Faz 5: izleme, uyarılar, ana ekran ═══ */
/* ── İzleme sayfaları (karne, üreme, meme sağlığı, klinik performansı, ilaç kullanımı) ── */
/* Sekmeler: izleme sayfaları arasında tek tıkla geçiş; dar ekranda yatay kayar */
.vet-insight-tabs { display: flex; gap: 6px; margin: 0 0 14px; overflow-x: auto; scrollbar-width: thin; padding-bottom: 2px; }
.vet-insight-tabs a { display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; padding: 7px 14px; border-radius: 3px; border: 1px solid var(--vz-border-color);
    background: var(--vz-secondary-bg); color: var(--vz-body-color); font-size: 13.5px; font-weight: 500; white-space: nowrap; text-decoration: none; transition: border-color .15s, color .15s, background-color .15s; }
.vet-insight-tabs a i { font-size: 16px; color: var(--vz-secondary-color); }
.vet-insight-tabs a:hover { border-color: var(--pt-accent); color: var(--pt-accent); }
.vet-insight-tabs a:hover i { color: var(--pt-accent); }
.vet-insight-tabs a.active { background: var(--pt-accent); border-color: var(--pt-accent); color: #FFF; font-weight: 600; }
.vet-insight-tabs a.active i { color: #FFF; }
.vet-insight-tabs a:focus-visible { outline: 2px solid rgba(var(--pt-accent-rgb), .5); outline-offset: 2px; }

.vet-insight-filter { margin-bottom: 14px; }
.vet-insight-filter .card-body { padding: 12px 16px; }
.pt-filter-line .vet-ff-wide { flex: 1 1 260px; max-width: 420px; min-width: 0; }
.pt-filter-line .vet-ff-period { flex: 0 0 auto; min-width: 0; }
.vet-ff-period .form-label { display: block; }
.vet-ff-period .pt-seg { flex-wrap: nowrap; }
.vet-ff-period .pt-seg .btn { padding: 6px 12px; font-size: 13px; white-space: nowrap; border-radius: 3px; }

.vet-insight-source { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 0 2px 14px; font-size: 13px; }
.vet-insight-source .vet-insight-farm { font-size: 15px; color: var(--vz-heading-color); }
.vet-insight-kpis .pt-widget-value { font-size: 19px; }
.vet-insight-kpis .pt-widget-note { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.35; }

/* Karne puanı: genel puan + bölüm çubukları */
.vet-score-grid { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 18px 28px; align-items: center; margin-bottom: 12px; }
.vet-score-total { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 14px 10px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-light); text-align: center; }
.vet-score-total b { font-size: 40px; font-weight: 600; line-height: 1; }
.vet-score-total > span:not(.badge) { font-size: 12px; color: var(--vz-secondary-color); }
.vet-score-sections { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px 24px; }
.vet-score-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 4px; font-size: 13px; }
.vet-score-head span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vet-score-head b { font-variant-numeric: tabular-nums; }
.vet-score .progress { border-radius: 3px; } .vet-score .progress-bar { border-radius: 3px; }
.vet-w-0 { width: 0; } .vet-w-5 { width: 5%; } .vet-w-10 { width: 10%; } .vet-w-15 { width: 15%; } .vet-w-20 { width: 20%; } .vet-w-25 { width: 25%; } .vet-w-30 { width: 30%; }
.vet-w-35 { width: 35%; } .vet-w-40 { width: 40%; } .vet-w-45 { width: 45%; } .vet-w-50 { width: 50%; } .vet-w-55 { width: 55%; } .vet-w-60 { width: 60%; } .vet-w-65 { width: 65%; }
.vet-w-70 { width: 70%; } .vet-w-75 { width: 75%; } .vet-w-80 { width: 80%; } .vet-w-85 { width: 85%; } .vet-w-90 { width: 90%; } .vet-w-95 { width: 95%; } .vet-w-100 { width: 100%; }

/* Öne çıkanlar: düzey simgesi + metin (renk tek başına anlam taşımaz) */
.vet-finding-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.vet-finding { display: flex; gap: 10px; align-items: flex-start; padding: 9px 12px; border-radius: 3px; font-size: 13.5px; line-height: 1.45; background: var(--vz-light); border-left: 3px solid var(--vz-border-color); }
.vet-finding i { font-size: 18px; line-height: 1.2; flex: 0 0 auto; }
.vet-finding-good { border-left-color: var(--vz-success); } .vet-finding-good i { color: var(--vz-success); }
.vet-finding-warn { border-left-color: var(--vz-warning); } .vet-finding-warn i { color: var(--vz-warning); }
.vet-finding-bad { border-left-color: var(--vz-danger); } .vet-finding-bad i { color: var(--vz-danger); }
.vet-finding-info i { color: var(--vz-secondary-color); }

.vet-chart-card { height: calc(100% - 1.5rem); }
.vet-chart-card .card-header, .vet-insight-table .card-header { padding-bottom: 10px; }
.vet-chart-hint { margin: 3px 0 0; font-size: 12.5px; color: var(--vz-secondary-color); line-height: 1.35; }
.vet-chart-card .card-body { padding-top: 8px; }
.vet-chart-empty { padding: 44px 12px; }
.vet-insight-table .pt-table td, .vet-insight-table .pt-table th { white-space: nowrap; }
.vet-insight-table .pt-table td:first-child { white-space: normal; min-width: 130px; }
.vet-section-row th { background: var(--vz-light); font-size: 12px; letter-spacing: .4px; text-transform: uppercase; color: var(--vz-secondary-color); padding-top: 10px; padding-bottom: 6px; }
.vet-strong-row td { font-weight: 600; background: var(--vz-light); }

@media (max-width: 575.98px) {
    .vet-ff-period { flex: 1 1 100%; }
    .vet-ff-period .pt-seg .btn { flex: 1 1 0; padding: 6px 4px; }
    .vet-insight-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .vet-score-grid { grid-template-columns: minmax(0, 1fr); }
}
@media print {
    .vet-insight-table .pt-table td, .vet-insight-table .pt-table th { white-space: normal; }
    .vet-chart-card, .vet-insight-table, .vet-findings, .vet-score, .vet-insight-kpis .pt-widget { break-inside: avoid; box-shadow: none !important; }
}

/* İzleme belgesi (PDF): ziyaret özetinin belge kurallarını (vet-sum) kullanır; burada yalnızca göstergeler ve durum işaretleri */
.vet-ins .vet-ins-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.vet-ins .vet-ins-kpi { padding: 8px 10px; border: 1px solid #D9DEE5; border-left-width: 3px; border-radius: 3px; break-inside: avoid; }
.vet-ins .vet-ins-kpi b { display: block; margin: 2px 0; font-size: 15px; font-weight: 600; color: #1F2937; }
.vet-ins .vet-ins-kpi b small { font-size: 10px; font-weight: 400; color: #6B7280; }
.vet-ins .vet-ins-kpi > span:not(.vet-sum-label) { display: block; font-size: 9.5px; line-height: 1.35; color: #6B7280; }
.vet-ins .vet-ins-kpi em { display: block; margin-top: 3px; font-size: 9.5px; font-style: normal; font-weight: 600; }
.vet-ins .vet-ins-kpi.vet-ins-good { border-left-color: #0C8A0C; } .vet-ins .vet-ins-kpi.vet-ins-good em { color: #0C8A0C; }
.vet-ins .vet-ins-kpi.vet-ins-warn { border-left-color: #B77900; } .vet-ins .vet-ins-kpi.vet-ins-warn em { color: #B77900; }
.vet-ins .vet-ins-kpi.vet-ins-bad { border-left-color: #C22F2F; } .vet-ins .vet-ins-kpi.vet-ins-bad em { color: #C22F2F; }
.vet-ins td.vet-ins-good { color: #0C8A0C; } .vet-ins td.vet-ins-warn { color: #B77900; } .vet-ins td.vet-ins-bad { color: #C22F2F; }
.vet-ins .vet-sum-list li.vet-ins-bad { font-weight: 600; }

/* Grafik ipucu ve menüsü (ApexCharts): köşeler 3px */
.vet .apexcharts-tooltip, .vet .apexcharts-xaxistooltip, .vet .apexcharts-yaxistooltip, .vet .apexcharts-menu, .vet .apexcharts-toolbar-custom-icon { border-radius: 3px !important; }

/* ── Uyarılar sayfası (Views/Alert/Index.cshtml, _Rows.cshtml) ── */
/* Düzey kutuları: sayı kutusu görünümünde süzgeç düğmeleri; seçili kutu vurgulanır. Dar ekranda iki sütun. */
.vet-alert-tiles { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0 1rem; }
.vet-alert-tiles .pt-widget { margin-bottom: 1rem; }
.vet-alert-tile { color: inherit; text-decoration: none; border: 1px solid transparent; border-radius: 3px; }
.vet-alert-tile:hover { color: inherit; border-color: var(--pt-accent); }
.vet-alert-tile.active { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .06); }
.vet-alert-tile.active .pt-widget-label { color: var(--pt-accent); }
.vet-alert-tile:focus-visible { outline: 2px solid rgba(var(--pt-accent-rgb), .5); outline-offset: 2px; }
.vet-alert-tile .pt-widget-note { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3; }

/* Uyarı satırı: düzey simgesi · başlık + açıklama + künye · "Aç" düğmesi */
.vet-alert-rows { border-top: 0; }
.vet-alert-row { align-items: center; gap: 12px; }
.vet-alert-row.vet-alert-bad { box-shadow: inset 3px 0 0 var(--vz-danger); }
.vet-alert-row.vet-alert-warn { box-shadow: inset 3px 0 0 var(--vz-warning); }
.vet-alert-ico { flex: 0 0 36px; align-self: flex-start; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 3px; font-size: 19px; line-height: 1; }
.vet-alert-row .pt-row-body b, .vet-alert-row .pt-row-body > span { overflow-wrap: anywhere; }
.vet-alert-meta { display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin-top: 6px !important; font-size: 12px; }
.vet-alert-meta i { margin-right: 3px; font-size: 13px; }
.vet-alert-meta .badge { font-weight: 500; font-size: 11.5px; }
.vet-alert-meta a { color: var(--vz-secondary-color); text-decoration: none; }
.vet-alert-meta a:hover { color: var(--pt-accent); text-decoration: underline; }
.vet-alert-open { flex: 0 0 auto; white-space: nowrap; }
.vet-alert-note { margin: 0 2px 1rem; }
#vetAlertEmpty b { font-size: 14px; color: var(--vz-heading-color); margin-bottom: 2px; }

@media (max-width: 575.98px) {
    .vet-alert-tiles { gap: 0 .75rem; }
    .vet-alert-tiles .pt-widget .card-body { padding: .7rem .75rem; }
    .vet-alert-tiles .pt-widget .avatar-sm { width: 2.1rem; height: 2.1rem; }
    .vet-alert-tiles .pt-widget .ms-3 { margin-left: .6rem !important; }
    /* Düğme metnin altına iner (simge sütunu kadar içeriden) */
    .vet-alert-row { flex-wrap: wrap; gap: 8px 12px; }
    .vet-alert-row .pt-row-body { flex: 1 1 calc(100% - 48px); }
    .vet-alert-open { margin-left: 48px; }
}

/* ── Ana ekran (Views/Home/Index.cshtml) ── */
/* Ortak liste simgesi (pt-list) veteriner uygulamasında ilk kez kullanılıyor: köşeler en çok 3px */
.vet .pt-list .pt-list-ico { border-radius: 3px; }

/* Liste satırındaki işlem düğmeleri (başlat, üstlen, başla, tamamla): simge okunaklı, satır yüksekliği sabit */
.vet-home-list > li > .btn { line-height: 1.25; white-space: nowrap; }
.vet-home-list > li > .btn > i { font-size: 15px; vertical-align: -1px; }

/* Uyarı açıklaması en çok iki satır (başlık tek satırdır) */
.vet-home-alerts .pt-list-body span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* Başlangıç adımları: tamamlanan adımın başlığı soluk */
.vet-home-steps li[data-done="1"] b { font-weight: 500; color: var(--vz-secondary-color); }

/* Telefon: sayı kutuları iki sütun (simgesiz, not satırı kırılabilir); tek kalan son kutu satırı doldurur */
@media (max-width: 575.98px) {
    .vet-home-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; }
    .vet-home-stats .pt-widget { margin-bottom: 12px; }
    .vet-home-stats .avatar-sm { display: none; }
    .vet-home-stats .avatar-sm + div { margin-left: 0 !important; }
    .vet-home-stats .pt-widget-note { white-space: normal; }
    .vet-home-stats > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}

/* ═══ Düzenleme 1: işlem giriş sayfası, ana ekran, aşı programları ═══ */
/* ═══ Düzenleme 1 — İşlem giriş SAYFASI (Areas/RecordManagement/Views/Action/New.cshtml → _New, _Animals, _Farm, _Denied;
       js/vet/record.js). Üç sütun: seçimler (çiftlik + hayvan listesi) · işlem (tür kartları + bölüm kartları) · özet, ücret,
       kaydet. Sınıflar "vet-act-" ile başlar; renkler temanın değişkenleridir; köşeler en çok 3 pikseldir.
       Eski pencereden kalan ve artık kullanılmayan kurallar (vet.css "İşlem giriş penceresi" bloğu): .vet-lines-record …,
       .vet-record-fold, .vet-record-chevron, .vet-record-staged, "#vetActionForm .modal-footer". Hâlâ kullanılanlar:
       .vet-record-hint, .vet-record-optional, #vetActionIds, .vet-programs. ═══ */

/* ── Çalışma alanı ve sütunlar ── */
.vet-act-work { transition: opacity .15s; }
.vet-act-work.vet-act-loading { opacity: .55; pointer-events: none; }
.vet-act-col { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.vet-act .vet-act-card { margin-bottom: 0; }
.vet-act .vet-act-card > .pt-empty { padding: 22px 12px; }
#vetActAnimalsCard, #vetActKinds, #vetActAnimalCard, #vetActionForm { scroll-margin-top: 86px; }

/* Sol sütun: masaüstünde ve tablette yapışık; hayvan listesi kartın içinde kayar ve ekranın kalanını doldurur */
@media (min-width: 768px) {
    .vet-act-left > .vet-act-sticky { position: sticky; top: 86px; max-height: calc(100vh - 102px); }
    .vet-act-left .vet-act-fill { flex: 1 1 auto; min-height: 0; }
    .vet-act-left .vet-act-fill > .vet-act-list { flex: 1 1 auto; min-height: 168px; overflow-y: auto; }
}
@media (max-width: 767.98px) {
    .vet-act-left .vet-act-list { max-height: 45vh; overflow-y: auto; }
    /* Alttaki sabit "Kaydet" çubuğu sayfanın sonunu örtmesin */
    .vet-act { padding-bottom: 64px; }
}
.vet-act-list { position: relative; scrollbar-width: thin; overscroll-behavior: contain; }
.vet-act-list.vet-act-busy { opacity: .55; }

/* Sağ sütun: geniş ekranda yapışık tek sıra; daha dar ekranda kartlar yan yana (sayfanın sonunda) */
.vet-act-side { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); align-items: start; min-width: 0; }
@media (min-width: 1200px) {
    .vet-act-side { display: flex; flex-direction: column; align-items: stretch; }
    .vet-act-right > .vet-act-sticky { position: sticky; top: 86px; max-height: calc(100vh - 102px); overflow-y: auto; scrollbar-width: thin; }
}

/* ── Ortak parçalar: simge karesi, sessiz bağlantı, kart altı ── */
.vet-act-ico { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 3px; font-size: 20px; line-height: 1; background: var(--vz-light); color: var(--vz-secondary-color); }
.vet-act-ico-lg { width: 44px; height: 44px; font-size: 24px; }
.vet-act-quiet { flex: 0 0 auto; font-size: 12px; white-space: nowrap; color: var(--vz-secondary-color); }
.vet-act-quiet:hover, .vet-act-quiet:focus-visible { color: var(--pt-accent); }
.vet-act-tools { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; border-bottom: 1px solid var(--vz-border-color); }
.vet-act-foot { padding: 10px 14px; border-top: 1px solid var(--vz-border-color); }
.vet-act-foot .pt-hint { font-size: 12.5px; }
.vet-act-empty { padding: 26px 12px 18px; }
.pt-empty i.vet-act-inline { display: inline; margin: 0; font-size: inherit; opacity: 1; }

/* ── Çiftlik: seçili çiftlik ve seçim listesi ── */
.vet-act-farm { display: flex; align-items: center; gap: 12px; }
.vet-act-farm-main { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.vet-act-farm-main b { font-size: 14.5px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-act-farm-main b a { color: inherit; }
.vet-act-farm-main b a:hover { color: var(--pt-accent); }
.vet-act-farm-main > span { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.vet-act-farm-visit { font-size: 12px; color: var(--vz-secondary-color); }
.vet-act-farm-row { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--vz-border-color); color: inherit; }
.vet-act-farm-row:hover { background: rgba(var(--pt-accent-rgb), .06); color: inherit; }
.vet-act-farm-row:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: -2px; }
.vet-act-farm-row .vet-act-ico { width: 30px; height: 30px; font-size: 17px; }
.vet-act-farm-name { flex: 1 1 auto; min-width: 0; font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-act-go-ico { flex: 0 0 auto; font-size: 18px; color: var(--vz-secondary-color); opacity: .6; }

/* ── Hayvan listesi: arama, süzgeç, sayılar ── */
.vet-act-filter { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 8px; }
.vet-act-switch { display: inline-flex; gap: 2px; padding: 2px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-light); }
.vet-act-switch .btn { padding: 3px 10px; border: 0; font-size: 12.5px; font-weight: 500; line-height: 1.4; color: var(--vz-secondary-color); background: transparent; }
.vet-act-switch .btn:hover { color: var(--pt-accent); }
.vet-act-switch .btn[aria-pressed="true"] { background: var(--vz-secondary-bg); color: var(--pt-accent); font-weight: 600; box-shadow: 0 0 0 1px var(--vz-border-color); }
.vet-act-switch .btn:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: 1px; }
.vet-act-counts { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-variant-numeric: tabular-nums; }
.vet-act-count { display: inline-flex; align-items: center; gap: 3px; color: var(--vz-secondary-color); }
.vet-act-count i { font-size: 14px; line-height: 1; }
.vet-act-count b { font-weight: 600; color: var(--vz-heading-color); }
.vet-act-count-ok i, .vet-act-level-ok i, .vet-act-fittext-ok i { color: var(--vz-success); }
.vet-act-count-warn i, .vet-act-level-warn i { color: var(--vz-warning); }
.vet-act-count-no i, .vet-act-level-no i { color: var(--vz-danger); opacity: .75; }
.vet-act-multi-note { display: flex; align-items: flex-start; gap: 6px; margin: 0; font-size: 12px; line-height: 1.4; color: var(--pt-accent); }
.vet-act-multi-note i { font-size: 15px; line-height: 1.2; }

/* Düzey başlığı: "Uygun · 12" (liste kayarken üstte kalır) */
.vet-act-level { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; gap: 6px; padding: 5px 14px; border-bottom: 1px solid var(--vz-border-color); background: var(--vz-light);
    font-size: 11px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-act-level i { font-size: 14px; line-height: 1; }
.vet-act-level b { margin-left: auto; font-variant-numeric: tabular-nums; }

/* Hayvan satırı (düğme): solda düzey çubuğu, ortada numara · ad, küpe, durum ve uygunluk nedeni, sağda durum simgeleri */
.vet-act-animal { display: flex; align-items: flex-start; gap: 8px; width: 100%; margin: 0; padding: 9px 12px 9px 14px; border: 0; border-bottom: 1px solid var(--vz-border-color); border-radius: 0;
    background: transparent; box-shadow: inset 3px 0 0 transparent; font: inherit; text-align: left; color: inherit; cursor: pointer; transition: background-color .12s; }
.vet-act-animal:hover { background: rgba(var(--pt-accent-rgb), .05); }
.vet-act-animal:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: -2px; }
.vet-act-animal[aria-pressed="true"] { background: rgba(var(--pt-accent-rgb), .09); }
.vet-act-fit-ok { box-shadow: inset 3px 0 0 var(--vz-success); }
.vet-act-fit-warn { box-shadow: inset 3px 0 0 var(--vz-warning); }
.vet-act-fit-no { box-shadow: inset 3px 0 0 rgba(var(--vz-danger-rgb), .4); }
.vet-act-animal-main { flex: 1 1 auto; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.vet-act-animal-top { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 6px; }
.vet-act-animal-top b { font-size: 13.5px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-act-animal-top small { font-size: 11.5px; color: var(--vz-secondary-color); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.vet-act-animal-status { font-size: 12px; line-height: 1.35; color: var(--vz-secondary-color); }
.vet-act-animal-fit { display: flex; align-items: flex-start; gap: 4px; font-size: 12px; line-height: 1.35; }
.vet-act-animal-fit i { flex: 0 0 auto; font-size: 13px; line-height: 1.25; }
.vet-act-fittext-ok { color: var(--vz-secondary-color); }
.vet-act-fittext-warn { color: var(--vz-warning-text-emphasis, #8A5A00); }
.vet-act-fittext-no { color: var(--vz-danger-text-emphasis, #9C3541); }
/* Uygun olmayan hayvan daha sessizdir (seçilebilir kalır) */
.vet-act-fit-no:not([aria-pressed="true"]) .vet-act-animal-top b { font-weight: 500; color: var(--vz-body-color); }
.vet-act-fit-no:not([aria-pressed="true"]) .vet-act-marks { opacity: .7; }
.vet-act-tag { padding: 0 5px; border: 1px solid var(--vz-border-color); border-radius: 3px; font-size: 10.5px; font-weight: 600; line-height: 1.5; white-space: nowrap; color: var(--vz-secondary-color); }
.vet-act-tag-no { border-color: rgba(var(--vz-danger-rgb), .35); background: rgba(var(--vz-danger-rgb), .06); color: var(--vz-danger-text-emphasis, #9C3541); }
.vet-act-tag-on { border-color: var(--pt-accent); color: var(--pt-accent); }
.vet-act-more { display: block; width: calc(100% - 28px); margin: 10px 14px; }

/* Durum simgeleri (gebe, tohumlandı, açık vaka, arınmada …): küçük renkli kare; anlamı title / aria-label'dadır */
.vet-act-marks { flex: 0 0 auto; display: inline-flex; flex-wrap: wrap; justify-content: flex-end; gap: 3px; max-width: 66px; }
.vet-act-mark { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 3px; font-size: 14px; line-height: 1; background: var(--vz-light); color: var(--vz-secondary-color); }
.vet-act-mark-success { background: rgba(var(--vz-success-rgb), .14); color: var(--vz-success); }
.vet-act-mark-warning { background: rgba(var(--vz-warning-rgb), .18); color: var(--vz-warning-text-emphasis, #8A5A00); }
.vet-act-mark-danger { background: rgba(var(--vz-danger-rgb), .12); color: var(--vz-danger); }
.vet-act-mark-info { background: rgba(var(--vz-info-rgb), .14); color: var(--vz-info); }
.vet-act-mark-primary { background: rgba(var(--pt-accent-rgb), .12); color: var(--pt-accent); }

/* Çoklu seçim (toplu aşı: "seçtiğim hayvanlar"): satırın başında işaret kutusu */
.vet-act-check { flex: 0 0 auto; display: none; align-items: center; justify-content: center; width: 18px; height: 18px; margin-top: 1px; border: 1px solid var(--vz-border-color); border-radius: 3px;
    background: var(--vz-secondary-bg); font-size: 14px; line-height: 1; color: transparent; }
.vet-act-list[data-mode="multi"] .vet-act-check { display: inline-flex; }
.vet-act-list[data-mode="multi"] .vet-act-animal[aria-pressed="true"] .vet-act-check { border-color: var(--pt-accent); background: var(--pt-accent); color: #FFF; }
.vet-act-list[data-mode="multi"] .vet-act-tag-on { display: none; }

/* ── İşlem türü: alan kartları (sağlık / üreme / aşı) ve tür kartları ── */
.vet-act-kindcard > .card-body { container-type: inline-size; }
.vet-act-areas { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 10px; margin-bottom: 14px; }
.vet-act-area { display: flex; align-items: center; gap: 10px; min-width: 0; margin: 0; padding: 12px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg);
    font: inherit; text-align: left; color: inherit; cursor: pointer; transition: border-color .12s, background-color .12s; }
.vet-act-area:hover { border-color: var(--pt-accent); color: inherit; }
.vet-act-area:focus-visible, .vet-act-kind:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: 2px; }
.vet-act-area[aria-pressed="true"], .vet-act-area[aria-current="true"] { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .06); box-shadow: inset 0 -3px 0 var(--pt-accent); }
.vet-act-area .vet-act-ico { width: 44px; height: 44px; font-size: 24px; }
.vet-act-area-text { display: flex; flex-direction: column; min-width: 0; }
.vet-act-area-text b { font-size: 14.5px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: break-word; hyphens: auto; }
.vet-act-area-text small { font-size: 12px; line-height: 1.3; color: var(--vz-secondary-color); }
.vet-act-kindgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.vet-act-kindgrid[hidden] { display: none; }
.vet-act-kind { display: flex; align-items: flex-start; gap: 10px; min-width: 0; padding: 10px 12px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); color: inherit;
    transition: border-color .12s, background-color .12s; }
.vet-act-kind:hover { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .04); color: inherit; }
.vet-act-kind .vet-act-ico { background: rgba(var(--pt-accent-rgb), .1); color: var(--pt-accent); }
.vet-act-kind-text { min-width: 0; }
.vet-act-kind-text b { display: block; font-size: 13.5px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: break-word; hyphens: auto; }
.vet-act-kind-text small { display: block; margin-top: 2px; font-size: 12px; line-height: 1.35; color: var(--vz-secondary-color); }
.vet-act-kind.is-on { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .08); box-shadow: inset 3px 0 0 var(--pt-accent); }
.vet-act-kind.is-on .vet-act-ico { background: var(--pt-accent); color: #FFF; }
.vet-act-kind.is-on .vet-act-kind-text b { color: var(--pt-accent); }
.vet-act-kindcard .pt-hint:first-child { margin-top: 0; }
/* Tür seçildikten sonra TÜR kartları küçülür (açıklamasız); seçili tür vurguludur, başka türe geçmek tek tıktır.
   Alan sekmeleri küçülmez: sekmeye basınca (ör. aşı) ölçüsü ve kenarlığı değişmesin. */
.vet-act-kindcard.is-compact .vet-act-kindgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.vet-act-kindcard.is-compact .vet-act-kind { align-items: center; gap: 6px; padding: 6px; }
.vet-act-kindcard.is-compact .vet-act-kind .vet-act-ico { width: 24px; height: 24px; font-size: 15px; }
.vet-act-kindcard.is-compact .vet-act-kind-text b { font-size: 12.5px; }
.vet-act-kindcard.is-compact .vet-act-kind-text small { display: none; }
@container (min-width: 560px) {
    .vet-act-kindgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .vet-act-kindcard.is-compact .vet-act-kindgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@container (max-width: 400px) {
    .vet-act-area { flex-direction: column; align-items: flex-start; gap: 6px; padding: 10px; }
    /* Telefonda tür kartı: simge üstte, metin altta (yan yana sığmayınca sözcük ortadan bölünüyordu) */
    .vet-act-kindgrid { gap: 8px; }
    .vet-act-kind { flex-direction: column; gap: 6px; padding: 10px; }
    .vet-act-kindcard.is-compact .vet-act-kind { flex-direction: row; }
    .vet-act-kindcard.is-compact .vet-act-kindgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── Hayvan kartı: aşıda hedef seçimi, seçili hayvan, uygunluk notu, seçim bekleyen durum ── */
.vet-act-targets { display: grid; grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); gap: 8px; margin-bottom: 14px; }
.vet-act-target { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; padding: 8px 10px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg);
    font-size: 13px; font-weight: 500; line-height: 1.25; cursor: pointer; transition: border-color .12s, background-color .12s; }
.vet-act-target:hover { border-color: var(--pt-accent); }
.vet-act-target i { flex: 0 0 auto; font-size: 18px; line-height: 1; color: var(--vz-secondary-color); }
.btn-check:checked + .vet-act-target { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .08); font-weight: 600; color: var(--pt-accent); }
.btn-check:checked + .vet-act-target i { color: var(--pt-accent); }
.btn-check:focus-visible + .vet-act-target { outline: 2px solid var(--pt-accent); outline-offset: 1px; }
.vet-act-picked { display: flex; align-items: flex-start; gap: 12px; }
.vet-act-picked-main { flex: 1 1 auto; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.vet-act-picked-name { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.vet-act-picked-name b { font-size: 16px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-act-picked-name small { font-size: 12.5px; color: var(--vz-secondary-color); font-variant-numeric: tabular-nums; }
.vet-act-picked-status { font-size: 12.5px; color: var(--vz-secondary-color); }
.vet-act-picked-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.vet-act-picked-badges:empty { display: none; }
.vet-act-picked-badges .vet-act-marks { max-width: none; margin-left: 4px; }
.vet-act-picked-tools { flex: 0 0 auto; display: flex; align-items: center; gap: 2px; }
.vet-act-fitnote { display: flex; align-items: flex-start; gap: 8px; margin-top: 12px; padding: 8px 12px; border: 1px solid var(--vz-border-color); border-left-width: 3px; border-radius: 3px; font-size: 13px; line-height: 1.45; }
.vet-act-fitnote i { flex: 0 0 auto; font-size: 17px; line-height: 1.15; }
.vet-act-fitnote-warn { border-color: rgba(var(--vz-warning-rgb), .5); background: rgba(var(--vz-warning-rgb), .09); color: var(--vz-warning-text-emphasis, #8A5A00); }
.vet-act-fitnote-no { border-color: rgba(var(--vz-danger-rgb), .4); background: rgba(var(--vz-danger-rgb), .06); color: var(--vz-danger-text-emphasis, #9C3541); }
.vet-act-prompt { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; padding: 14px; border: 1px dashed var(--vz-border-color); border-radius: 3px; background: var(--vz-light); }
.vet-act-prompt > i { flex: 0 0 auto; font-size: 28px; line-height: 1; color: var(--vz-secondary-color); opacity: .6; }
.vet-act-prompt > div { flex: 1 1 180px; min-width: 0; }
.vet-act-prompt b { display: block; font-weight: 600; color: var(--vz-heading-color); }
.vet-act-prompt span { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.45; color: var(--vz-secondary-color); }
.vet-act .vet-act-chips span { border-radius: 3px; }
@media (max-width: 575.98px) {
    .vet-act-picked { flex-wrap: wrap; }
    .vet-act-picked-main { flex-basis: calc(100% - 56px); }
    .vet-act-picked-tools { flex-basis: 100%; justify-content: flex-end; }
}

/* ── Bölüm kartları ── */
/* İsteğe bağlı bölümün başlığı düğmedir: tıklanınca bölüm açılır / kapanır */
.vet-act-fold { display: flex; align-items: center; gap: 8px; width: 100%; border-top: 0; border-left: 0; border-right: 0; font: inherit; text-align: left; color: inherit; cursor: pointer; }
.vet-act-fold.collapsed { border-bottom-color: transparent; }
.vet-act-fold:hover .card-title { color: var(--pt-accent); }
.vet-act-fold:focus-visible { outline: 2px solid var(--pt-accent); outline-offset: -2px; }
.vet-act-chevron { margin-left: auto; font-size: 18px; line-height: 1; color: var(--vz-secondary-color); transition: transform .15s ease; }
.vet-act-fold[aria-expanded="true"] .vet-act-chevron { transform: rotate(180deg); }
.vet-act .pt-hoof-legs { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.vet-act .pt-hoof-leg { border-radius: 3px; }
.vet-act .vet-note:last-child { margin-bottom: 0; }

/* İlaç / malzeme satırları: tablo satırı yerine küçük ızgara. 1. sıra: no · ilaç · kaynak · sil; 2. sıra: doz · birim · yol ·
   günde · gün · toplam. Kart darsa (tablet, telefon) kaynak ayrı sıraya iner ve doz alanları üçerli iki sıra olur. */
.vet-act-lines { container-type: inline-size; }
.vet-act-lines .pt-repeat-row.vet-act-line { display: grid; grid-template-columns: 26px minmax(0, 1fr) 32px; grid-template-areas: "no pick del" "source source source" "dose dose dose"; gap: 8px; align-items: start;
    margin: 0; padding: 12px 0; border-bottom: 1px dashed var(--vz-border-color); }
.vet-act-lines .vet-act-line:first-child { padding-top: 0; }
.vet-act-lines .vet-act-line:last-child { padding-bottom: 2px; border-bottom: 0; }
.vet-act-line > .pt-repeat-no { grid-area: no; margin-top: 24px; border-radius: 3px; }
.vet-act-f { min-width: 0; }
.vet-act-f-pick { grid-area: pick; }
.vet-act-f-source { grid-area: source; }
/* Listede olmayan ilaç (reçete): ad · antibiyotik · süt (saat) · et (gün) — ilaç seçiminin altında */
.vet-act-manual { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr); gap: 8px; margin-top: 8px; }
.vet-act-manual > :first-child { grid-column: 1 / -1; }
.vet-act-manual[hidden] { display: none; }
.vet-record-hint [data-vet-record-rx]:not(:empty) { display: block; color: var(--vz-info-text-emphasis, #2A6A8A); }
.vet-act-line-del { grid-area: del; margin-top: 19px; padding: 5px 6px; }
.vet-act-line-dose { grid-area: dose; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; min-width: 0; }
.vet-act-lbl { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 600; letter-spacing: .3px; line-height: 1.5; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--vz-secondary-color); }
.vet-act-line .form-control { padding-left: 8px; padding-right: 8px; }
.vet-act-line .form-select { padding-left: 8px; padding-right: 26px; background-position: right 6px center; text-overflow: ellipsis; }
.vet-act-line .input-group { flex-wrap: nowrap; }
.vet-act-line .input-group-text { padding-left: 6px; padding-right: 6px; font-size: 12px; }
.vet-act-line .input-group-text:empty { display: none; }
.vet-act-line .form-control:disabled, .vet-act-line .form-select:disabled { opacity: .45; }
@container (min-width: 400px) {
    .vet-act-lines .pt-repeat-row.vet-act-line { grid-template-columns: 26px minmax(0, 1fr) minmax(0, 132px) 32px; grid-template-areas: "no pick source del" "dose dose dose dose"; }
    .vet-act-line-dose { grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1.5fr) minmax(0, .7fr) minmax(0, .7fr) minmax(0, 1.6fr); }
}

/* ── Özet, ücret, kaydet ── */
.vet-act-sum dd { max-width: 68%; }
/* Tahmini tutarlar dar sütunda: uzun başlık alta kırılır, tutar tek satırda kalır */
.vet-act [data-vet-record-sum] > div { align-items: flex-start; }
.vet-act [data-vet-record-sum] dt { flex: 1 1 auto; min-width: 0; }
.vet-act [data-vet-record-sum] dd { flex: 0 0 auto; white-space: nowrap; overflow-wrap: normal; }
.vet-act-savecard > .card-body { display: flex; flex-direction: column; gap: 8px; }
.vet-act-wait { display: flex; align-items: flex-start; gap: 6px; margin: 0 0 2px; font-size: 12.5px; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-act-wait i { flex: 0 0 auto; font-size: 15px; line-height: 1.25; color: var(--vz-info); }
.vet-act-shortcut { margin: 2px 0 0; font-size: 11.5px; text-align: center; color: var(--vz-secondary-color); }
.vet-act [data-vet-act-submit]:disabled { opacity: .45; }

/* Telefon: alta sabit ince çubuk — tür, tahmini toplam ve "Kaydet" */
.vet-act-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1001; display: flex; align-items: center; gap: 12px; padding: 8px 16px calc(8px + env(safe-area-inset-bottom, 0px));
    border-top: 1px solid var(--vz-border-color); background: var(--vz-secondary-bg); box-shadow: 0 -2px 8px rgba(0, 0, 0, .06); }
.vet-act-bar-info { flex: 1 1 auto; display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.vet-act-bar-info span { font-size: 12px; color: var(--vz-secondary-color); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vet-act-bar-info b { font-size: 15px; font-weight: 700; color: var(--pt-accent); font-variant-numeric: tabular-nums; }
.vet-act-bar .btn { flex: 0 0 auto; }

/* ── Başlangıç (çiftlik seçilmedi): üç adım ── */
.vet-act-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; counter-reset: vet-act-step; }
.vet-act-steps li { counter-increment: vet-act-step; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 12px 8px; border: 1px solid var(--vz-border-color); border-radius: 3px;
    font-size: 12.5px; line-height: 1.35; text-align: center; color: var(--vz-secondary-color); }
.vet-act-steps li i { font-size: 22px; line-height: 1; color: var(--pt-accent); }
.vet-act-steps li span::before { content: counter(vet-act-step) ". "; font-weight: 600; color: var(--vz-heading-color); }
@media (max-width: 575.98px) { .vet-act-steps { grid-template-columns: 1fr; } .vet-act-steps li { flex-direction: row; text-align: left; } }

/* ── Ana ekran (Views/Home/Index.cshtml) ────────────────────────────────────────────────────────────
   Düzen temadaki "dashboard-crypto" sayfasının düzenidir ve Bootstrap ızgarasıyla kurulur (row / col-*): üst satırda
   solda hızlı işlemler, sağda sayı kartları ve çalışma grafiği; altında üçer kartlık bilgi ve liste satırları.
   Yan yana kartlar eşit boydadır (card-height-100). Köşeler en çok 3px; gölge, geçişli renk yok; üzerine gelince
   yalnızca kenarlık / zemin değişir. Renkler temanın değişkenlerindendir (koyu görünümde de geçerli). */
.vet-home > .vet-note { margin-bottom: 1.5rem; }

/* Kutu başlığı (bütün kutularda aynı): simge + ad + sayı · sağda bağlantı. Uzun ad kırılır, bağlantı alt satıra iner. */
.vet-home .vet-home-head { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; padding: 12px 16px; }
.vet-home .vet-home-head .card-title { flex: 1 1 auto; min-width: 0; line-height: 1.3; }
.vet-home .vet-home-head .card-title > span:first-of-type { min-width: 0; overflow-wrap: anywhere; }
.vet-home .vet-home-head .card-title > .badge { flex: 0 0 auto; font-size: 11.5px; font-weight: 600; }
.vet-home-more { flex: 0 0 auto; margin-left: auto; font-size: 12px; white-space: nowrap; }
.vet-home-rest { margin: 10px 0 0; font-size: 12px; color: var(--vz-secondary-color); }
.card-footer.vet-home-rest { margin: 0; padding: 8px 16px; border-top: 1px solid var(--vz-border-color); }

/* ── Başlangıç adımları: ilerleme çubuğu ve adım kutuları (tamamlanan adım soluk zeminli) ── */
.vet-home-progress { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 10px; font-size: 12px; color: var(--vz-secondary-color); white-space: nowrap; }
.vet-home-progress progress { width: 110px; height: 6px; border: 0; border-radius: 3px; overflow: hidden; background: var(--vz-light); -webkit-appearance: none; appearance: none; }
.vet-home-progress progress::-webkit-progress-bar { border-radius: 3px; background: var(--vz-light); }
.vet-home-progress progress::-webkit-progress-value { border-radius: 3px; background: var(--vz-success); }
.vet-home-progress progress::-moz-progress-bar { border-radius: 3px; background: var(--vz-success); }
.vet-home-setup-text { max-width: 86ch; margin: 0 0 14px; color: var(--vz-secondary-color); }
.vet-home-steps { grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: 12px; }
.vet-home-steps > li { padding: 12px 14px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); }
.vet-home-steps > li[data-done="1"] { border-color: transparent; background: var(--vz-light); }

/* ── Hızlı işlemler: simge kutuları. İlk kutu (işlem gir) ana işlemdir: satırı kaplar, vurgu renginde ── */
.vet-home-quick > .card-body { padding: 12px; }
.vet-home-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
@media (max-width: 359.98px) { .vet-home-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 576px) { .vet-home-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 768px) { .vet-home-tiles { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .vet-home-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.vet-home-tile { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-width: 0; width: 100%; margin: 0; padding: 10px 8px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); color: var(--vz-body-color); font: inherit; text-align: left; text-decoration: none; cursor: pointer; -webkit-appearance: none; appearance: none; transition: border-color .12s, background-color .12s; }
.vet-home-tile:hover, .vet-home-tile:focus-visible { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .05); color: var(--vz-body-color); }
.vet-home-tile:focus-visible, .vet-home-kpi:focus-visible, .vet-home-agenda-item:focus-visible { outline: 2px solid rgba(var(--pt-accent-rgb), .5); outline-offset: 1px; }
.vet-home-tile:active { background: rgba(var(--pt-accent-rgb), .1); }
.vet-home-tile-ico { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 3px; font-size: 20px; line-height: 1; }
.vet-home-tile-text { display: block; min-width: 0; max-width: 100%; }
.vet-home-tile-text > b { display: block; font-size: 12.5px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); overflow-wrap: anywhere; -webkit-hyphens: auto; hyphens: auto; }
.vet-home-tile-text > small { display: block; margin-top: 2px; font-size: 12px; line-height: 1.35; color: var(--vz-secondary-color); overflow-wrap: anywhere; }
.vet-home-tile-main { grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 12px; padding: 12px; border-color: rgba(var(--pt-accent-rgb), .35); background: rgba(var(--pt-accent-rgb), .06); }
.vet-home-tile-main:hover, .vet-home-tile-main:focus-visible { background: rgba(var(--pt-accent-rgb), .12); }
.vet-home-tile-main .vet-home-tile-ico { width: 44px; height: 44px; background: var(--pt-accent); color: #fff; font-size: 24px; }
.vet-home-tile-main .vet-home-tile-text { flex: 1 1 auto; }
.vet-home-tile-main .vet-home-tile-text > b { font-size: 14px; }
.vet-home-tile-go { flex: 0 0 auto; font-size: 20px; line-height: 1; color: var(--pt-accent); }

/* ── Başlığın sağı: bugünün tarihi ── */
.vet-home-date { display: inline-flex; align-items: center; gap: 6px; margin-right: 12px; font-size: 13px; color: var(--vz-secondary-color); white-space: nowrap; vertical-align: middle; }
.vet-home-date > i { font-size: 17px; line-height: 1; color: var(--pt-accent); }

/* ── Sayı kartları (şablondaki sayı kartı): solda simge, yanında küçük başlık ve büyük sayı, altında not ── */
a.vet-home-kpi.card { display: block; margin-bottom: var(--vz-grid-gutter-width, 1.5rem); height: calc(100% - var(--vz-grid-gutter-width, 1.5rem)); border: 1px solid transparent; color: inherit; text-decoration: none; transition: border-color .12s; }
a.vet-home-kpi.card:hover, a.vet-home-kpi.card:focus-visible { border-color: var(--pt-accent); color: inherit; }
.vet-home-kpi-ico { border-radius: 3px; }
.vet-home-kpi-label { overflow-wrap: anywhere; }
.vet-home-kpi-value { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.vet-home-kpi-note { min-height: 1.4em; color: var(--vz-secondary-color); overflow-wrap: anywhere; }
.vet-home-kpi[data-alert="1"] .vet-home-kpi-note { font-weight: 600; color: var(--vz-danger); }
/* Özet şeridi (grafik kartının başlığının altında): klinik geneli kalemler; sığmayan alt satıra iner */
.vet-home-sums { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px 36px; padding: 12px 16px; background: var(--vz-light); }
.vet-home-sums > .vet-home-sum { display: flex; flex-direction: column; min-width: 120px; height: auto; margin: 0; color: inherit; text-decoration: none; }
.vet-home-sum .vet-home-kpi-label { font-size: 12px; color: var(--vz-secondary-color); }
.vet-home-sum .vet-home-kpi-value { margin-top: 2px; font-size: 16px; font-weight: 600; line-height: 1.3; color: var(--vz-heading-color); }
.vet-home-sum .vet-home-kpi-note { min-height: 0; font-size: 11.5px; line-height: 1.35; }
.vet-home-sum:hover .vet-home-kpi-value, .vet-home-sum:focus-visible .vet-home-kpi-value { color: var(--pt-accent); }
.vet-home-chart.card-height-100 { display: flex; flex-direction: column; }
.vet-home-chart.card-height-100 > .card-body:last-child { flex: 1 1 auto; }

/* Günün kutuları: ziyaretler, açık çağrılar, işlerim, bekleyen dozlar */
.vet-home-card > .card-body { padding: 12px 16px; }
.vet-home-card, .vet-home-quiet { scroll-margin-top: 86px; }
.vet-home-card:target, .vet-home-quiet:target { outline: 2px solid rgba(var(--pt-accent-rgb), .45); outline-offset: 2px; }
/* Ziyaret satırının sol sütunu: saat (önceki günden kalanda gün); sığmayan saat ("10:30 AM") iki satıra iner, kesilmez */
.vet-home-time { flex: 0 0 58px; width: 58px; font-size: 12px; font-weight: 600; line-height: 1.25; color: var(--vz-heading-color); font-variant-numeric: tabular-nums; }
/* Kaydı olmayan kart: öteki kartlarla aynı başlık, içinde sakin bir satır */
.vet-home-quiet > .card-body { display: flex; align-items: center; justify-content: center; }
.vet-home-quiet .pt-empty { padding: 14px 8px; }

/* ── Önümüzdeki günler: gün gün, solda zaman çizgisi ── */
.vet-home-agenda > .card-body { padding: 14px 16px; }
.vet-home-days { display: grid; gap: 14px; }
.vet-home-day-group { min-width: 0; margin-left: 4px; padding-left: 16px; border-left: 2px solid var(--vz-border-color); }
.vet-home-day-group > h6 { position: relative; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; margin: 0 0 4px; font-size: 12px; font-weight: 600; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-home-day-group > h6::before { content: ""; position: absolute; left: -22px; top: 3px; box-sizing: border-box; width: 10px; height: 10px; border: 2px solid var(--pt-accent); border-radius: 2px; background: var(--vz-secondary-bg); }
.vet-home-day-group > h6 > b { font-weight: 700; color: var(--vz-heading-color); }
.vet-home-agenda-item { display: flex; align-items: flex-start; gap: 10px; margin: 0 -8px; padding: 6px 8px; border-radius: 3px; color: inherit; text-decoration: none; transition: background-color .12s; }
.vet-home-agenda-item:hover, .vet-home-agenda-item:focus-visible { background: rgba(var(--pt-accent-rgb), .06); color: inherit; }
.vet-home-agenda-ico { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 3px; font-size: 15px; line-height: 1; }
.vet-home-agenda-body { flex: 1 1 auto; min-width: 0; line-height: 1.3; }
.vet-home-agenda-body > b { display: block; font-size: 13px; font-weight: 600; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-home-agenda-body > span { display: block; margin-top: 1px; font-size: 12px; color: var(--vz-secondary-color); overflow-wrap: anywhere; }

/* ── Sağ sütun: uyarı ve çiftlik satırları (düzey solda renkli çizgiyle de okunur), grafikler ── */
.vet-home-rows .pt-row { align-items: flex-start; gap: 12px; padding: 10px 16px; }
.vet-home-rows .pt-row[data-level="bad"] { box-shadow: inset 3px 0 0 var(--vz-danger); }
.vet-home-rows .pt-row[data-level="warn"] { box-shadow: inset 3px 0 0 var(--vz-warning); }
.vet-home-row-ico { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 3px; font-size: 16px; line-height: 1; }
.vet-home-rows .pt-row-body > b { font-size: 13px; overflow-wrap: anywhere; }
.vet-home-rows .pt-row-body > span { font-size: 12px; overflow-wrap: anywhere; }
/* Uyarı açıklaması en çok iki satır */
.vet-home-alerts .pt-row-body > span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.vet-home-chart > .card-body { padding: 10px 12px 8px; }
.vet-home-chart-note { margin: 0 4px 2px; font-size: 12px; color: var(--vz-secondary-color); }

/* ── Telefon ── */
@media (max-width: 575.98px) {
    .vet-home-progress progress { width: 72px; }
    .vet-home-time { flex-basis: 50px; width: 50px; font-size: 11.5px; }
    .vet-home-date { margin: 0 0 6px; }
}

@media (prefers-reduced-motion: reduce) {
    .vet-home-tile, .vet-home-kpi, .vet-home-agenda-item { transition: none; }
}

/* ── Aşı programları (Düzenleme 1 · m4): Aşı programları sayfası, program penceresi ve çiftlik kartındaki "aşı programı" bölümü.
      Sınıflar "vet-prog-" ile başlar; köşeler en çok 3 piksel; renkler temanın değişkenlerinden gelir. ── */

/* Sayfa — seçilen çiftliğin şeridi (satır parçasının başında; tablo ile aynı kartın içinde) */
.vet-prog-farm { padding: 12px 16px; border-bottom: 1px solid var(--vz-border-color); background: var(--vz-light); }
.vet-prog-farm-head { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 10px; }
.vet-prog-farm-name { display: inline-flex; align-items: center; gap: 6px; min-width: 0; font-size: 14.5px; color: var(--vz-heading-color); }
.vet-prog-farm-name > i { flex: 0 0 auto; font-size: 18px; line-height: 1; color: var(--pt-accent); }
.vet-prog-farm-name > b { font-weight: 600; overflow-wrap: anywhere; }
.vet-prog-farm-tools { display: flex; flex-wrap: wrap; gap: 6px; margin-left: auto; }
.vet-prog-farm-note { display: flex; align-items: flex-start; gap: 6px; margin: 8px 0 0; font-size: 13px; line-height: 1.45; color: var(--vz-secondary-color); }
.vet-prog-farm-note > i { flex: 0 0 auto; font-size: 16px; line-height: 1.2; color: var(--pt-accent); }
.vet-prog-farm > .vet-programs { margin-top: 10px; }

/* Sayfa — programı olmayan harici çiftlik uyarısı (çiftlik seçili değilken) */
.vet-prog-alert { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 12px; padding: 10px 16px; border-bottom: 1px solid var(--vz-warning-border-subtle); border-left: 3px solid var(--vz-warning); background: var(--vz-warning-bg-subtle); }
.vet-prog-alert > i { flex: 0 0 auto; font-size: 22px; line-height: 1; color: var(--vz-warning-text-emphasis); }
.vet-prog-alert-body { flex: 1 1 260px; min-width: 0; }
.vet-prog-alert-body b { display: block; font-weight: 600; color: var(--vz-heading-color); }
.vet-prog-alert-body span { display: block; margin-top: 1px; font-size: 13px; line-height: 1.45; color: var(--vz-body-color); overflow-wrap: anywhere; }

/* Sayfa — harici çiftliğin hiç programı yokken: açıklama + hazır programlar */
.vet-prog-empty { padding: 22px 20px 24px; }
.vet-prog-empty-head { display: flex; align-items: flex-start; gap: 14px; max-width: 780px; }
.vet-prog-empty-head > i { flex: 0 0 auto; display: grid; place-items: center; width: 44px; height: 44px; font-size: 24px; border-radius: 3px; background: var(--vz-warning-bg-subtle); color: var(--vz-warning-text-emphasis); }
.vet-prog-empty-head h5 { margin: 0 0 4px; font-size: 16px; font-weight: 600; color: var(--vz-heading-color); }
.vet-prog-empty-head p { margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--vz-secondary-color); }
.vet-prog-empty-title { display: flex; align-items: center; gap: 6px; margin: 20px 0 10px; font-size: 12px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--vz-secondary-color); }
.vet-prog-empty-title > i { font-size: 16px; color: var(--pt-accent); }
.vet-prog-offers { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 10px; }
.vet-prog-offer { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 10px 12px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-secondary-bg); transition: border-color .12s, background-color .12s; }
.vet-prog-offer:hover { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .04); }
.vet-prog-offer-body { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.vet-prog-offer-body b { font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-prog-offer-body span { font-size: 12.5px; color: var(--vz-body-color); overflow-wrap: anywhere; }
.vet-prog-offer-body small { margin-top: 2px; font-size: 12px; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-prog-offer > .btn { flex: 0 0 auto; white-space: nowrap; }
.vet-prog-empty-foot { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; margin-top: 18px; padding-top: 14px; border-top: 1px dashed var(--vz-border-color); font-size: 13px; color: var(--vz-secondary-color); }

/* Program penceresi — yeni programda hazır programlar */
.vet-prog-quick { margin: 0 0 18px; padding: 12px 14px; border: 1px solid var(--vz-border-color); border-radius: 3px; background: var(--vz-light); }
.vet-prog-quick .pt-hint { margin-top: 8px; }

/* Çiftlik kartı — harici çiftliğin aşı programı yok: gözden kaçmayacak çağrı (yumuşak uyarı tonu) */
.vet-prog-cta { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 16px; margin: 0 0 1.5rem; padding: 14px 16px; border: 1px solid var(--vz-warning-border-subtle); border-left: 4px solid var(--vz-warning); border-radius: 3px; background: var(--vz-warning-bg-subtle); }
.vet-prog-cta > i { flex: 0 0 auto; font-size: 30px; line-height: 1; color: var(--vz-warning-text-emphasis); }
.vet-prog-cta-body { flex: 1 1 320px; min-width: 0; }
.vet-prog-cta-body b { display: block; font-size: 15px; font-weight: 600; color: var(--vz-heading-color); }
.vet-prog-cta-body span { display: block; margin-top: 2px; font-size: 13.5px; line-height: 1.5; color: var(--vz-body-color); }
.vet-prog-cta-tools { display: flex; flex-wrap: wrap; gap: 8px; }

/* Çiftlik kartı — "aşı programı" kutusu: programlar ızgarada (ad · tekrar · hedef · zamanı gelen) */
.vet-prog-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 8px; padding: 12px 14px; }
.vet-prog-item { display: flex; align-items: flex-start; gap: 6px; min-width: 0; padding: 9px 11px; border: 1px solid var(--vz-border-color); border-radius: 3px; color: inherit; transition: border-color .12s, background-color .12s; }
a.vet-prog-item:hover, a.vet-prog-item:focus-visible { border-color: var(--pt-accent); background: rgba(var(--pt-accent-rgb), .05); color: inherit; }
.vet-prog-item-body { flex: 1; min-width: 0; }
.vet-prog-item-body b { display: block; font-size: 13.5px; font-weight: 600; color: var(--vz-heading-color); overflow-wrap: anywhere; }
.vet-prog-item-body > span { display: block; margin-top: 1px; font-size: 12.5px; line-height: 1.4; color: var(--vz-secondary-color); }
.vet-prog-item > .badge { flex: 0 0 auto; font-variant-numeric: tabular-nums; }
.vet-prog-foot { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 10px 14px; border-top: 1px solid var(--vz-border-color); }
.vet-prog-foot > .vet-farm-bar-note { margin-right: auto; }

@media (max-width: 575.98px) {
    .vet-prog-farm-tools { margin-left: 0; width: 100%; }
    .vet-prog-farm-tools > .btn { flex: 1 1 auto; }
    .vet-prog-empty { padding: 18px 14px 20px; }
    .vet-prog-empty-head { gap: 10px; }
    .vet-prog-cta-tools { width: 100%; }
    .vet-prog-cta-tools > .btn { flex: 1 1 auto; }
    .vet-prog-foot > .btn { flex: 1 1 auto; }
}

/* İşlem sayfası — hayvan satırı sıkı düzen: durum tek satır, simgeler metnin altında (dar sütunda satır yüksekliği azalır) */
.vet-act-animal { flex-wrap: wrap; row-gap: 4px; padding-top: 8px; padding-bottom: 8px; }
.vet-act-animal-main { flex: 1 1 0; }
.vet-act-animal-status { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vet-act-animal-fit > span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.vet-act-animal > .vet-act-marks { flex: 1 1 100%; max-width: none; justify-content: flex-start; }
.vet-act-list[data-mode="multi"] .vet-act-animal > .vet-act-marks { padding-left: 26px; }

/* Logo: ürün adı logonun içinde (Bovisio Vet) — giriş sayfalarında ölçüler */
.vet .pt-auth-side .pt-auth-logo img { height: 64px; }
.vet .pt-auth-top .pt-auth-logo-sm img { height: 44px; }
@media (max-width: 575.98px) { .vet .pt-auth-top .pt-auth-logo-sm img { height: 36px; } }

/* E-postayla gönder penceresi: önceki gönderimler */
.vet-mail-history li { display: flex; align-items: flex-start; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--vz-border-color); }
.vet-mail-history li:last-child { border-bottom: 0; }
.vet-mail-history li > i { font-size: 16px; line-height: 1.3; }
.vet-mail-history li span { min-width: 0; overflow-wrap: anywhere; }
.vet-mail-history li b { display: block; font-size: 13px; font-weight: 500; }
.vet-mail-history li small { display: block; font-size: 11px; color: var(--vz-secondary-color); }
