﻿/* Adas Asistan — Fiona teması (fiona.css) üzerine proje paleti ve küçük eklemeler.
   Palet: kurumsal lacivert (Fiona lacivert ailesi); RMM'nin mavisinden ve Adas kırmızısından ayrışır.
   Yalnızca marka/vurgu belirteçleri ezilir; anlamsal renkler (olumsuz, kritik, olumlu, bilgi) Fiona'da kalır. */
:root, [data-bs-theme=light] {
    --fiona-marka: #1d4f91;            /* dolu düğme, seçili bileşen; beyaz yazıyla 4,7 */
    --fiona-vurgu: #1a4796;            /* bağlantı, düğme yazısı, seçili menü; beyazda 6,1 */
    --fiona-odak: #002a86;
    --fiona-liste-secili: #eaf0f8;
    --fiona-dugme-secili: #edf2fa;
    --bs-primary-rgb: 29, 79, 145;
    --bs-primary-active: var(--fiona-vurgu);
    --bs-primary-light-rgb: 237, 242, 250;
    --bs-primary-clarity: rgba(29, 79, 145, .2);
    --bs-primary-bg-subtle: #e3ebf6;
    --bs-primary-border-subtle: #a9bfdf;
    --bs-link-color-rgb: 26, 71, 150;
}
[data-bs-theme=dark] {
    --fiona-marka: #1d4f91;
    --fiona-vurgu: #8fb8f0;
    --fiona-odak: #bcd5fa;
    --fiona-liste-secili: #16263d;
    --fiona-dugme-secili: #1b2f4d;
    --bs-primary-rgb: 29, 79, 145;
    --bs-primary-active: #1a4796;
    --bs-primary-light-rgb: 27, 47, 77;
    --bs-primary-clarity: rgba(143, 184, 240, .2);
    --bs-primary-bg-subtle: #1b2f4d;
    --bs-primary-border-subtle: #3b6299;
    --bs-link-color-rgb: 143, 184, 240;
}
.btn.btn-primary:hover:not(.btn-active), .btn.btn-primary:focus:not(.btn-active), .btn.btn-primary:active:not(.btn-active), .btn.btn-primary.active {
    background-color: #1a4796 !important; border-color: #1a4796 !important;
}

.validation-summary-valid { display: none !important; }
.validation-summary-errors ul { margin: 0; padding-left: 1rem; }

/* Giriş tanıtım paneli: proje lacivertinin koyu tonları üzerinde beyaz logo. */
.adaschatbot-giris-arka {
    background-color: #1A4796;
    background-image:
        radial-gradient(circle at 10% 110%, rgba(255, 255, 255, .12) 0, transparent 45%),
        radial-gradient(circle at 95% -10%, rgba(0, 0, 0, .18) 0, transparent 45%),
        linear-gradient(135deg, #0F2B55 0%, #1A4796 55%, #2E6DB4 100%);
}

.app-sidebar .min-w-0,
.min-w-0 { min-width: 0; }

.app-sidebar-footer form button.menu-link {
    border: 0;
    background: transparent;
}

.table .font-monospace.fs-8 { line-height: 1.4; }

/* Asistan (sohbet) ekranı */
.sohbet-karti { height: calc(100vh - 210px); min-height: 480px; }
.sohbet-karti .card-body { min-height: 0; }
.sohbet-mesajlari { overflow-y: auto; min-height: 0; }
.sohbet-listesi { max-height: calc(100vh - 290px); overflow-y: auto; }
/* Yan menü satırı: başlık tam genişlik; "⋯" menüsü üzerine gelince başlığın üstünde belirir (yer kaplamaz) */
.sohbet-ogesi { position: relative; }
.sohbet-menu { position: absolute; right: .25rem; top: 0; bottom: 0; display: flex; align-items: center; opacity: 0; transition: opacity .12s; } /* transform YOK: açılan menüyü kendi katmanına hapsederdi */
.sohbet-ogesi:has(.sohbet-menu .show) { z-index: 5; }
.sohbet-ogesi:hover .sohbet-menu, .sohbet-ogesi:focus-within .sohbet-menu, .sohbet-menu:has(.show) { opacity: 1; }
.sohbet-ogesi:hover > a, .sohbet-ogesi:focus-within > a, .sohbet-ogesi:has(.sohbet-menu .show) > a { padding-right: 1.75rem; }
.sohbet-menu-dugme { width: 26px !important; height: 26px !important; color: var(--bs-gray-600); background: transparent; }
.sohbet-menu-dugme:hover, .sohbet-menu-dugme[aria-expanded="true"] { color: var(--bs-gray-900); background: var(--bs-gray-200); }
/* Menü (Claude benzeri): ikonsuz sade yazılar, yuvarlak kart, ince kenar, yumuşak gölge */
.sohbet-menu-liste { min-width: 12.5rem; padding: .35rem; border: 1px solid var(--bs-gray-200); border-radius: .75rem; box-shadow: 0 8px 24px rgba(15, 23, 42, .10); font-size: .95rem; }
.sohbet-menu-liste .dropdown-item { padding: .5rem .75rem; border-radius: .5rem; color: var(--bs-gray-800); font-weight: 400; }
.sohbet-menu-liste .dropdown-item:hover, .sohbet-menu-liste .dropdown-item:focus { background: var(--bs-gray-100); color: var(--bs-gray-900); }
.sohbet-menu-liste .dropdown-item.text-danger:hover, .sohbet-menu-liste .dropdown-item.text-danger:focus { background: var(--bs-light-danger); color: var(--bs-danger) !important; }
.sohbet-menu-liste .dropdown-divider { margin: .3rem .25rem; border-color: var(--bs-gray-200); }
.sohbet-menu-liste form { margin: 0; }
.sohbet-ad-girdi { height: 26px; padding: 0 .4rem; font-size: .925rem; }
/* Masaüstünde yan boşluklar sık: içerik kartı kenarlara 16px (tema 30px) */
@media (min-width: 992px) {
    #kt_app_content_container, #kt_app_toolbar_container, #kt_app_header_container { padding-left: 16px !important; padding-right: 16px !important; }
}
/* Sol menü genişliği: sağ kenardaki tutamaç sürüklenir (yalnız masaüstü; adaschatbot.js) */
.yan-menu-tutamac { display: none; }
@media (min-width: 992px) {
    .yan-menu-tutamac { display: block; position: absolute; top: 0; right: -4px; width: 8px; height: 100%; cursor: col-resize; z-index: 110; }
    .yan-menu-tutamac::after { content: ""; position: absolute; top: 0; bottom: 0; left: 3px; width: 2px; background: transparent; transition: background .15s; }
    .yan-menu-tutamac:hover::after, .yan-menu-tutamac:focus-visible::after, body.yan-menu-boyutlaniyor .yan-menu-tutamac::after { background: var(--bs-primary); }
    body.yan-menu-boyutlaniyor { cursor: col-resize; user-select: none; }
    body.yan-menu-boyutlaniyor .app-sidebar, body.yan-menu-boyutlaniyor .app-wrapper, body.yan-menu-boyutlaniyor .app-header { transition: none !important; }
}
.sohbet-balon { max-width: min(900px, 92%); min-width: 0; }
.sohbet-balon-asistan { width: 92%; }
.sohbet-metin p:last-child, .sohbet-metin ul:last-child, .sohbet-metin ol:last-child { margin-bottom: 0 !important; }
.sohbet-metin code { background: var(--bs-gray-200); padding: .1rem .3rem; border-radius: .3rem; font-size: .9em; }
.sohbet-metin-asistan { line-height: 1.65; }
.sohbet-metin-asistan strong { color: var(--bs-gray-900); }
.sohbet-yaziyor > :last-child::after { content: "▍"; color: var(--bs-primary); animation: sohbet-imlec 1s steps(2) infinite; }
@keyframes sohbet-imlec { 50% { opacity: 0; } }
.sohbet-girdi { resize: none; min-height: 45px; max-height: 200px; }
.sorgu-tablosu { max-height: 420px; overflow: auto; }
.sorgu-tablosu thead th { position: sticky; top: 0; z-index: 1; }
@media (max-width: 991.98px) {
    .sohbet-karti { height: calc(100vh - 160px); }
    .sohbet-listesi { max-height: 180px; }
}

/* Yazdırma: yalnızca içerik basılır */
@media print {
    #kt_app_sidebar, #kt_app_header, #kt_app_toolbar, #kt_app_footer, #kt_scrolltop, .toastr { display: none !important; }
    .app-wrapper, .app-main, .app-content, .app-container { margin: 0 !important; padding: 0 !important; }
    [data-kt-app-sidebar-fixed=true] .app-wrapper { margin-left: 0 !important; }
    .card { box-shadow: none !important; border: 0 !important; }
    .col-xl-9 { width: 100% !important; }
}

/* select2 — Metronic solid görünüm ile uyum */
.select2-container--bootstrap5 .select2-selection { min-height: calc(1.5em + 1.55rem + 2px); }


.dataTables_wrapper .no-sort::after,
.dataTables_wrapper .no-sort::before { display: none !important; }

/* Fiona "primary" tonlarını bilgi mavisinden ayırıp proje lacivertina bağlar (bilgi/info anlamsal mavi kalır). */
.bg-light-primary { background-color: var(--fiona-dugme-secili) !important; }
.badge.badge-light-primary { background-color: var(--fiona-dugme-secili); color: var(--fiona-vurgu); border-color: var(--bs-primary-border-subtle); }
.badge.badge-primary { background-color: var(--fiona-marka); }
.alert-primary, .alert.bg-light-primary { background-color: var(--fiona-dugme-secili); border-color: var(--bs-primary-border-subtle); }
.progress-bar.bg-primary { background-color: var(--fiona-marka) !important; }

/* Tanıtım sayfası: geniş oluklu satırlar (g-10) dar ekranda kapsayıcıdan taşmasın */
@media (max-width: 991.98px) {
    .tanitim .row { --bs-gutter-x: 1.5rem; }
}

/* Tanıtım (açılış) sayfası — /tanitim */
.tanitim { background-color: var(--bs-body-bg); }
.tanitim-ust { position: sticky; top: 0; z-index: 10; background-color: var(--bs-body-bg); }
.tanitim-hero { background: linear-gradient(180deg, var(--bs-primary-light) 0%, var(--bs-body-bg) 100%); }
.tanitim-baslik { font-size: calc(1.6rem + 2vw); line-height: 1.15; letter-spacing: -.02em; }
@media (min-width: 1200px) { .tanitim-baslik { font-size: 3.4rem; } }
.tanitim-bolum { scroll-margin-top: 70px; }
.tanitim-sohbet { border-radius: 1rem; }
.tanitim-balon { max-width: 90%; padding: .9rem 1.1rem; border-radius: 1rem; font-size: 1rem; line-height: 1.6; }
.tanitim-balon-kullanici { border-bottom-right-radius: .3rem; }
.tanitim-balon-asistan { border-bottom-left-radius: .3rem; }
.tanitim-grafik { display: flex; align-items: flex-end; gap: .5rem; height: 80px; border-bottom: 2px solid var(--bs-gray-300); }
.tanitim-grafik span { flex: 1; border-radius: .3rem .3rem 0 0; background-color: var(--bs-primary-light); }
.tanitim-grafik span.vurgu { background-color: var(--bs-primary); }
.tanitim-adim-no {
    width: 40px; height: 40px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    background-color: var(--bs-primary); color: var(--bs-primary-inverse, #fff); font-weight: 700;
}

/* Telefon ve ana ekrana kurulu uygulama (PWA). Alt gezinme çubuğu Fiona'dadır (fiona.css "alt-gezinme"). */
@media (max-width: 991.98px) {
    /* Sohbet kartı ekranı doldurur, giriş kutusu alt çubuğun hemen üstünde kalır (dvh: tarayıcı adres çubuğu açılıp kapansa da) */
    /* üst başlık 70px + araç çubuğu 72px + içerik üst boşluğu + alt çubuk 63px + aralık ≈ 17.5rem */
    body.alt-gezinme-var .sohbet-karti { height: calc(100dvh - 10.7rem - env(safe-area-inset-bottom)); min-height: 20rem; } /* üst çubuk + üst boşluk + alt gezinme; sohbette başlık şeridi gizli */
    body.alt-gezinme-var #kt_app_footer { display: none !important; }
    body.alt-gezinme-var #kt_app_content { padding-bottom: calc(4.75rem + env(safe-area-inset-bottom)); }
}
/* Telefonda kenar çubuğu (çekmece) ekranın %90'ını kaplar: sohbet başlıkları kesilmeden 2 satıra kadar okunur.
   Sola sürüklerken (adaschatbot.js) çekmece parmağı izler; Metronic'in geçişi o sırada kapatılır. */
@media (max-width: 991.98px) {
    #kt_app_sidebar .sohbet-ogesi > a {
        font-size: 1rem; line-height: 1.35; white-space: normal; text-overflow: clip;
        display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    }
    #kt_app_sidebar .sohbet-ogesi { padding-top: .6rem !important; padding-bottom: .6rem !important; }
    #kt_app_sidebar.surukleniyor { transition: none !important; }
}
/* Alt gezinmede seçili sekme: Fiona bilgi mavisi yerine proje laciverti */
.alt-gezinme-oge.secili .alt-gezinme-gosterge, .alt-gezinme-oge.secili { --fiona-bilgi-zemin: var(--fiona-dugme-secili); }
/* Dokunmatik ekranda üzerine gelme yok: sohbet silme/arşiv düğmeleri hep görünür, dokunma alanı büyür */
@media (hover: none) {
    .sohbet-menu { opacity: 1; }
    .sohbet-ogesi > a { padding-right: 2.5rem; }
    .sohbet-menu-dugme { width: 2.25rem !important; height: 2.25rem !important; }
}
/* iOS odaklanınca sayfayı yakınlaştırmasın: giriş alanları en az 16px */
@media (max-width: 767.98px) and (pointer: coarse) {
    input.form-control, select.form-select, textarea.form-control { font-size: 16px !important; }
}

/* Telefonda liste sayfaları (Kaynaklar, Firmalar, Kullanıcılar...): sabit genişlikli arama/seçim kutuları tam satır olur,
   DataTables tabloları (ve DataTables kullanmayan .mobil-kart tablolar) yana kaymak yerine satır kartlarına dönüşür (başlık satırı gizlenir, hücreler alt alta/yan yana akar). */
@media (max-width: 767.98px) {
    .card-header .card-title, .card-header .card-toolbar { flex: 1 1 100%; flex-wrap: wrap; margin-left: 0; }
    .card-header .card-title > div, .card-header .card-title > form, .card-header .card-toolbar > form { flex: 1 1 100%; min-width: 0; }
    .card-header .form-control[class*="w-2"], .card-header .form-select[class*="w-2"] { width: 100% !important; flex: 1 1 auto; min-width: 0; }
    table:is(.adaschatbot-tablo, .mobil-kart) thead { display: none; }
    table:is(.adaschatbot-tablo, .mobil-kart), table:is(.adaschatbot-tablo, .mobil-kart) tbody { display: block; width: 100% !important; }
    /* Kartın iç boşluğu kadar negatif kenar: metin sayfadaki diğer öğelerle (arama, "Toplam", sayfalama) aynı hizada kalır. */
    table:is(.adaschatbot-tablo, .mobil-kart) tbody tr { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .75rem; padding: .9rem .5rem !important; margin: 0 -.5rem; border-bottom: 1px dashed var(--bs-border-color); border-radius: .5rem; }
    /* Satır kart olunca üzerine gelme rengi hücre hücre (parça parça gri kutular) değil, bütün karta verilir. */
    table:is(.adaschatbot-tablo, .mobil-kart) > tbody > tr > * { box-shadow: none !important; background-color: transparent !important; }
    table:is(.adaschatbot-tablo, .mobil-kart) > tbody > tr:hover { background-color: var(--fiona-liste-uzerinde); }
    table:is(.adaschatbot-tablo, .mobil-kart) tbody td { display: block; padding: 0 !important; border: 0 !important; text-align: left !important; min-width: 0 !important; }
    table:is(.adaschatbot-tablo, .mobil-kart) tbody td:last-child:not(:first-child) { margin-left: auto; }
    table:is(.adaschatbot-tablo, .mobil-kart) tbody td.mobil-satir { flex-basis: 100%; }
    table:is(.adaschatbot-tablo, .mobil-kart) tbody td[data-etiket]::before { content: attr(data-etiket) " "; color: var(--bs-gray-500); font-size: .85em; }
    .table-responsive:has(> table:is(.adaschatbot-tablo, .mobil-kart)) { overflow-x: visible; }
}

/* Metronic kenarlıksız tablolarda ilk ve son hücrenin yan boşluğunu sıfırlar; satırın üzerine gelinince metin rengin kenarına
   yapışıyordu. İlk/son hücreye küçük bir iç boşluk verilir (telefondaki kart düzeni kendi boşluğunu kullanır). */
.table:not(.table-bordered) tr > :is(td, th):first-child { padding-left: .75rem; }
.table:not(.table-bordered) tr > :is(td, th):last-child { padding-right: .75rem; }

/* Sohbet: kayıt işi öneri kartı — her ekranda aynı sade (telefon) düzen; onay düğmesi yalnız yetkiliye */
.sohbet-oneri { max-width: 30rem; border: 1px solid var(--bs-gray-300); border-left: 3px solid var(--bs-warning); border-radius: .75rem; padding: .9rem 1rem; background: var(--bs-body-bg); }
.sohbet-oneri-onaylandi, .sohbet-oneri-uygulandi, .sohbet-oneri-aktarildi { border-left-color: var(--bs-success); }
.sohbet-oneri-iptaledildi, .sohbet-oneri-suresidoldu, .sohbet-oneri-reddedildi, .sohbet-oneri-erpreddetti, .sohbet-oneri-aktarimhatasi { border-left-color: var(--bs-gray-400); }
.sohbet-oneri-satir { border-top: 1px dashed var(--bs-gray-300); margin-top: .6rem; padding-top: .6rem; }
.sohbet-oneri-ust { font-size: .8rem; color: var(--bs-gray-600); }
.sohbet-oneri-degisim { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; margin-top: .2rem; font-size: 1rem; }
.sohbet-oneri-degisim .eski { color: var(--bs-gray-500); text-decoration: line-through; }
.sohbet-oneri-degisim .yeni { color: var(--bs-primary); font-weight: 700; }
.sohbet-oneri-degisim .fi { color: var(--bs-gray-500); font-size: .9rem; }
.sohbet-oneri-denetim { margin: .6rem 0 0; padding: .45rem .7rem .45rem 1.6rem; border-radius: .5rem; font-size: .8rem; }
.sohbet-oneri-uyari { background: var(--bs-warning-light, #fff8dd); color: var(--bs-gray-800); }
.sohbet-oneri-engel { background: var(--bs-danger-light, #fff5f8); color: var(--bs-danger); }
.sohbet-oneri-dugmeler { display: flex; gap: .5rem; }
/* Sohbet: seçenekli sorular (sihirbaz) — her ekranda aynı sade düzen, büyük dokunma alanları */
.sohbet-sihirbaz { max-width: 30rem; border: 1px solid var(--bs-gray-300); border-left: 3px solid var(--bs-primary); border-radius: .75rem; padding: .9rem 1rem; background: var(--bs-body-bg); }
.sohbet-sihirbaz-bitti { border-left-color: var(--bs-gray-400); padding: .5rem .9rem; }
.sohbet-sihirbaz-ust { display: flex; align-items: center; gap: .5rem; margin-bottom: .5rem; }
.sohbet-sihirbaz-soru { font-weight: 600; color: var(--bs-gray-900); margin-bottom: .6rem; }
.sohbet-sihirbaz-secenekler { display: flex; flex-direction: column; gap: .4rem; }
.sohbet-secenek { display: flex; flex-direction: column; align-items: flex-start; text-align: left; width: 100%; min-height: 2.75rem; padding: .55rem .75rem;
    border: 1px solid var(--bs-gray-300); border-radius: .6rem; background: var(--bs-body-bg); color: var(--bs-gray-900); font-size: .9rem; }
.sohbet-secenek:hover { border-color: var(--bs-primary); }
.sohbet-secenek.secili { border-color: var(--bs-primary); background: var(--bs-primary-light); }
.sohbet-secenek .aciklama { font-size: .78rem; color: var(--bs-gray-600); margin-top: .1rem; }
.sohbet-secenek-diger input { min-height: 2.5rem; }
.sohbet-sihirbaz-alt { display: flex; gap: .5rem; margin-top: .75rem; }
.sohbet-sihirbaz-ozet { display: flex; flex-direction: column; gap: .3rem; }
.sohbet-ozet-satir { display: flex; flex-direction: column; align-items: flex-start; text-align: left; width: 100%; padding: .45rem .65rem; border: 1px dashed var(--bs-gray-300);
    border-radius: .5rem; background: transparent; font-size: .85rem; }
.sohbet-ozet-satir:hover { border-color: var(--bs-primary); }
.sohbet-oneri-secenek { display: flex; flex-direction: column; gap: .1rem; margin-top: .4rem; font-size: .8rem; color: var(--bs-gray-800); }
.sohbet-oneri-dugmeler .btn { flex: 1 1 0; min-height: 2.75rem; }
/* Toplu öneri kartı: özet, sözleşme gruplu işaretli satırlar, dışarıda kalanlar */
.sohbet-toplu-ozet { display: flex; flex-wrap: wrap; gap: .25rem .9rem; margin-top: .45rem; font-size: .85rem; color: var(--bs-gray-700); }
.sohbet-toplu-ozet b { color: var(--bs-gray-900); }
.sohbet-toplu-liste { margin-top: .6rem; border-top: 1px dashed var(--bs-gray-300); padding-top: .5rem; }
.sohbet-toplu-liste > summary { cursor: pointer; font-size: .85rem; font-weight: 600; color: var(--bs-gray-800); min-height: 1.75rem; display: list-item; }
.sohbet-toplu-gruplar { max-height: 20rem; overflow-y: auto; margin-top: .35rem; padding-right: .25rem; }
.sohbet-toplu-grup { padding: .35rem 0; border-bottom: 1px solid var(--bs-gray-200); }
.sohbet-toplu-grup:last-child { border-bottom: 0; }
.sohbet-toplu-grup-baslik, .sohbet-toplu-satir, .sohbet-toplu-tumu { display: flex; align-items: center; gap: .5rem; margin: 0; cursor: pointer; }
.sohbet-toplu-grup-baslik { font-size: .82rem; font-weight: 600; color: var(--bs-gray-900); min-height: 1.9rem; }
.sohbet-toplu-satir { font-size: .78rem; color: var(--bs-gray-700); padding-left: 1.6rem; min-height: 1.75rem; }
.sohbet-toplu-tumu { font-size: .8rem; color: var(--bs-gray-700); min-height: 1.9rem; }
.sohbet-toplu-liste .form-check-input { width: 1.05rem; height: 1.05rem; margin: 0; flex-shrink: 0; }
.sohbet-toplu-disarida ul { margin: .35rem 0 0; padding-left: 1.1rem; font-size: .78rem; color: var(--bs-gray-700); max-height: 12rem; overflow-y: auto; }


/* Öğrenme döngüsü: bilgi bankası kartı ve sohbetteki doğru / yanlış düğmeleri */
.bilgi-sql { background: #1d2d3e; color: #e6edf3; white-space: pre-wrap; word-break: break-word; max-height: 18rem; overflow: auto; }
.sohbet-geri-bildirim .btn.active { background: var(--bs-gray-100); }
.sohbet-arac-dugme { padding: .15rem .55rem !important; font-size: .75rem !important; line-height: 1.2; min-height: 0; }
.sohbet-arac-dugme .sohbet-arac-rozet { width: 1.1rem; height: 1.1rem; font-size: .65rem; }
.bilgi-sekmeler { scrollbar-width: none; }
.bilgi-sekmeler::-webkit-scrollbar { display: none; }
.sohbet-arac-ikon { width: 1.6rem !important; height: 1.6rem !important; }


/* Test seti (yönetim): özet kartları, doğruluk rozeti, soru işaretleri */
.test-ozet .card-body { padding: 1.5rem 1.75rem; }
.test-oran { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 3.25rem; height: 3.25rem; border-radius: 50%; font-weight: 700; font-size: .9rem; }
.test-oran-buyuk { width: 5rem; height: 5rem; font-size: 1.5rem; }
.test-oran-iyi { background: var(--bs-success-light, #e8fff3); color: var(--bs-success); }
.test-oran-orta { background: var(--bs-warning-light, #fff8dd); color: var(--bs-warning); }
.test-oran-kotu { background: var(--bs-danger-light, #fff5f8); color: var(--bs-danger); }
.test-oran-bos { background: var(--bs-gray-100); color: var(--bs-gray-600); }
.test-kosu { transition: background-color .15s; }
.test-isaret { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 1.6rem; height: 1.6rem; border-radius: 50%; }
.test-isaret-gecti { background: var(--bs-success-light, #e8fff3); color: var(--bs-success); }
.test-isaret-kaldi { background: var(--bs-danger-light, #fff5f8); color: var(--bs-danger); }
.test-yanit { white-space: pre-wrap; word-break: break-word; max-height: 20rem; overflow: auto; }

/* Yönetim genel bakış göstergeleri */
.yonetim-gosterge .card-body { padding: 1.35rem 1.5rem; }
.yonetim-gosterge-ad { color: var(--bs-gray-500); font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; margin-bottom: .5rem; }
.yonetim-gosterge-deger { font-size: 1.75rem; font-weight: 700; line-height: 1.1; color: var(--bs-gray-900); }
.yonetim-gosterge-alt { color: var(--bs-gray-500); font-size: .75rem; margin-top: .4rem; }

/* KRİTİK GÖSTERGELER: KÜÇÜK VE BÜYÜK EĞRİ */
.gosterge-egri { display: inline-flex; align-items: center; color: var(--bs-primary); }
.oge.oge-olumsuz .gosterge-egri { color: var(--bs-danger); }
.oge.oge-uyari .gosterge-egri { color: var(--bs-warning); }
.egri .egri-esik { stroke: var(--bs-gray-500); stroke-width: 1; stroke-dasharray: 4 3; }
.gosterge-buyuk-egri svg { display: block; width: 100%; height: 120px; }

/* BUGÜN EKRANI: SAYAÇ KARTLARI */
.bugun-sayac { display: flex; flex-direction: column; gap: .15rem; text-decoration: none; transition: box-shadow .15s; }
.bugun-sayac:hover { box-shadow: var(--bs-box-shadow-sm); }
.bugun-sayac-olumsuz { box-shadow: inset .1875rem 0 0 var(--bs-danger); }
.bugun-sayac-dikkat { box-shadow: inset .1875rem 0 0 var(--bs-warning); }

/* BİLDİRİM ZİLİ */
.zil-menu { width: min(22rem, calc(100vw - 2rem)); }
.zil-liste { max-height: 22rem; overflow-y: auto; }
.zil-liste .dropdown-item { white-space: normal; }
.zil-rozet { min-width: 1.15rem; height: 1.15rem; padding: 0 .25rem; }
.sohbet-adimlar > div { line-height: 1.6; }

/* YAN MENÜ: YANITI SÜREN SOHBET (YANIP SÖNEN) VE BİTMİŞ AMA BAKILMAMIŞ SOHBET (TURUNCU KUTUCUK) */
.sohbet-ogesi .sohbet-durum { display: none; flex-shrink: 0; width: .55rem; height: .55rem; margin-left: .4rem; border-radius: 50%; }
.sohbet-ogesi.sohbet-calisiyor .sohbet-durum { display: block; background: #2fb344; animation: sohbet-nabiz 1.4s ease-out infinite; }
.sohbet-ogesi.sohbet-okunmadi .sohbet-durum { display: block; background: #f08c00; border-radius: .15rem; }
.sohbet-ogesi.sohbet-okunmadi > a { color: var(--bs-gray-900) !important; font-weight: 700 !important; }
/* onay bekleyen öneri: mor "Onay" etiketi */
.sohbet-ogesi.sohbet-onay .sohbet-durum { display: block; width: auto; height: auto; padding: .05rem .4rem; border-radius: 1rem; background: #7239ea; color: #fff; font-size: .65rem; font-weight: 600; line-height: 1.4; }
.sohbet-ogesi.sohbet-onay .sohbet-durum::after { content: "Onay"; }
.sohbet-ogesi.sohbet-onay > a { color: var(--bs-gray-900) !important; font-weight: 700 !important; }
@keyframes sohbet-nabiz { 0% { box-shadow: 0 0 0 0 rgba(47, 179, 68, .6); } 70% { box-shadow: 0 0 0 .4rem rgba(47, 179, 68, 0); } 100% { box-shadow: 0 0 0 0 rgba(47, 179, 68, 0); } }
@media (prefers-reduced-motion: reduce) { .sohbet-ogesi.sohbet-calisiyor .sohbet-durum { animation: sohbet-solma 2s ease-in-out infinite; } }
@keyframes sohbet-solma { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
/* ⋯ menüsü görününce işaret yer açar */
@media (hover: hover) { .sohbet-ogesi:hover .sohbet-durum, .sohbet-ogesi:focus-within .sohbet-durum { visibility: hidden; } }
@media (hover: none) { .sohbet-ogesi .sohbet-durum { margin-right: 1.75rem; } }

/* Yetkiler sayfası: seçili kişi satırı ve konu/iş kartlarındaki kişi rozetleri */
tr.yetki-kisi { cursor: pointer; }
#duzenle { scroll-margin-top: 90px; } /* SABİT ÜST BAŞLIĞIN ALTINDA KALMASIN */
tr.yetki-kisi.secili > td { background: var(--bs-primary-light); }
.yetki-rozet { display: inline-flex; align-items: center; gap: .35rem; padding: .25rem .6rem; border-radius: 1rem; background: var(--bs-gray-100); font-size: .8rem; margin: 0 .35rem .35rem 0; }
.yetki-rozet.tumu { opacity: .55; }
.yetki-rozet button { border: 0; background: none; padding: 0; line-height: 1; color: var(--bs-gray-600); }
.yetki-rozet button:hover { color: var(--bs-danger); }
.yetki-ekle-menu { min-width: 240px; max-height: 320px; overflow-y: auto; }
.ust-ayrac { width: 1px; height: 1.75rem; background: var(--bs-gray-300); margin: 0 .25rem; }

/* Telefon üst çubuğu: zil ve kılavuz logonun sağında; başlık bandı tek satır, içerikle arası dar */
.ust-mobil-yan { width: 5.5rem; }
#ust_mobil_alan { width: auto; min-width: 2rem; }
body.alt-gezinme-var #kt_app_header .ust-mobil-yan:first-child { display: none; } /* MENÜ DÜĞMESİ GİZLİ (ALT GEZİNME): LOGO SOLA */
#ust_mobil_alan #kullanim_rozeti { padding: .55rem .65rem !important; }
@media (max-width: 991.98px) {
    #kt_app_toolbar.mobilde-gizli { display: none !important; }
    #kt_app_toolbar { padding-top: .6rem !important; padding-bottom: .6rem !important; margin-bottom: 0 !important; }
    #kt_app_toolbar .breadcrumb { display: none !important; }
    #kt_app_content { padding-top: .6rem !important; }
}
.belge-logo-onizleme { height: 110px; background: var(--bs-gray-100); }
.belge-logo-onizleme img { max-width: 100%; max-height: 80px; object-fit: contain; }
