/*
 * VUTAS panel görünüm yoğunluğu (kompakt).
 *
 * Filament'in varlık mekanizmasıyla (FilamentAsset, `php artisan filament:assets`) yalnızca panele yüklenir;
 * Vite/Tailwind derlemesi gerekmez. Filament'in kendi ölçü sistemi (rem tabanlı tipografi ve `--spacing`
 * değişkeni) üzerinden çalışır; kuruma özel hiçbir değer içermez, kurum fontu (font-family) etkilenmez.
 * Sürüm yükseltmelerinde kırılmaması için yalnızca az sayıda yerleşim sınıfına dokunulur.
 */

/* 1) Taban yazı boyutu bir kademe küçük (16px → 15px). Tüm rem ölçüleri (yazı, dolgu, ikon) orantılı küçülür;
      en küçük metin (text-xs) 11,25px, tablo/form metni (text-sm) ~13px kalır. */
html {
    font-size: 15px;
}

/* Yoğunluk turu 6 (sabit alan): tablonun ÜSTÜNDEKİ ve altındaki sabit şeritler bir kademe iner — sayfa başlık
   bloğunun dolgusu, başlık düğmelerinin ölü üst boşluğu, başlık ile tablo arasındaki boşluk, araç çubuğu, etkin
   süzgeç rozetleri şeridi ve sayfalama şeridi. Satır yüksekliğine DOKUNULMAZ (turu 4'te okunabilirlik sınırına
   gelindi); kazanç yalnızca sabit alandan gelir. Değişiklikler aşağıdaki masaüstü bloğunun içindedir.

   2) Sayfa ve bölüm dikey boşlukları bir kademe küçük (8 → 6, 6 → 4-5, 4 → 3 birim). Yoğunluk turu 2'de
      masaüstünde bir kademe daha azalır (aşağıdaki "Yoğunluk turu 2" bloğu); telefon/tablet bu değerlerde kalır. */
.fi-page-content {
    row-gap: calc(var(--spacing) * 6);
}

.fi-page-header-main-ctn {
    row-gap: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 6);
}

.fi-section-header {
    padding-block: calc(var(--spacing) * 3);
}

.fi-section:not(.fi-section-not-contained):not(.fi-divided) > .fi-section-content-ctn > .fi-section-content,
.fi-section:not(.fi-section-not-contained).fi-divided > .fi-section-content-ctn > .fi-section-content > * {
    padding: calc(var(--spacing) * 4) calc(var(--spacing) * 5);
}

/* 3) Form alanları arası boşluk bir kademe küçük (6 → 4 birim). */
.fi-sc-form,
.fi-sc.fi-sc-has-gap {
    gap: calc(var(--spacing) * 4);
}

/* 3b) YOĞUNLUK TURU 2 — yalnızca masaüstünde (≥ 1024px): yazı boyutlarına ve tıklama hedeflerine DOKUNULMADAN
      dikey/yatay boşluklar bir kademe daha azaltılır; amaç aynı ekranda daha çok satır göstermektir.
      Telefon/tablet Filament'in kendi rahat ölçülerinde kalır (bu blok orada işlemez), koyu mod etkilenmez
      (yalnızca ölçü değişir, renk değişmez) ve bileşen şablonları ezilmez — hepsi Filament'in `--spacing`
      değişkeni üzerinden yazılmıştır. */
@media (min-width: 64rem) {
    /* Sayfa kenar boşlukları ve başlık bloğu: içerik üstten daha erken başlar. */
    .fi-main {
        padding-inline: calc(var(--spacing) * 4);
    }

    .fi-page-content {
        row-gap: calc(var(--spacing) * 3);
    }

    .fi-page-header-main-ctn {
        row-gap: calc(var(--spacing) * 3);
        padding-block: calc(var(--spacing) * 2);
    }

    .fi-header {
        gap: calc(var(--spacing) * 2);
    }

    /* Başlık düğmeleri: Filament bu genişlikte başlığı ve düğmeleri zaten TEK SATIRA alır
       (`.fi-header { flex-direction: row }`), ama düğme kabının üst boşluğu satırı düğme yüksekliği + boşluk
       kadar yükseltir (33,75px yazı satırı yerine 45px). Masaüstünde üst boşluk kaldırılır: düğme boyutu ve
       tıklama alanı aynı kalır, satır başlık yazısının yüksekliğine iner. Dar ekranda Filament'in dikey
       yerleşimi ve kendi boşluğu sürer (bu blok orada işlemez). */
    .fi-header-actions-ctn {
        margin-top: 0;
        gap: calc(var(--spacing) * 2);
    }

    /* Kart/section iç dolgusu ve kartlar arası boşluk (Ana Panel, Dashboard, formlar). */
    .fi-section-header {
        padding-block: calc(var(--spacing) * 2);
    }

    .fi-section:not(.fi-section-not-contained):not(.fi-divided) > .fi-section-content-ctn > .fi-section-content,
    .fi-section:not(.fi-section-not-contained).fi-divided > .fi-section-content-ctn > .fi-section-content > * {
        padding: calc(var(--spacing) * 3) calc(var(--spacing) * 4);
    }

    .fi-wi {
        gap: calc(var(--spacing) * 4);
    }

    /* Form alanları arası boşluk ve sekme şeridi altındaki boşluk. */
    .fi-sc-form,
    .fi-sc.fi-sc-has-gap {
        gap: calc(var(--spacing) * 3);
    }

    .fi-sc-tabs.fi-contained .fi-sc-tabs-tab.fi-active {
        padding: calc(var(--spacing) * 4);
    }

    /* Tablo: satır yüksekliği hücre dolgusundan gelir (yazı boyutu ve satır kaydırma aynı kalır). Yatay dolgu
       1,5 birim (KARAR, 03.10.2026 — Senaryo 12: 2,5 → 1,5; hücre başına ~7,5px yatay kazanç, listelerde yatay
       kaydırma olmasın). */
    .fi-ta-table .fi-ta-text {
        padding-inline: calc(var(--spacing) * 1.5);
        padding-block: calc(var(--spacing) * 2.5);
    }

    .fi-ta-table .fi-ta-cell:has(.fi-ta-actions),
    .fi-ta-table .fi-ta-cell:has(.fi-ta-record-checkbox),
    .fi-ta-table .fi-ta-cell.fi-ta-selection-cell {
        padding-block: calc(var(--spacing) * 2.5);
    }

    .fi-ta-table .fi-ta-header-cell {
        padding-inline: calc(var(--spacing) * 1.5);
        padding-block: calc(var(--spacing) * 2);
    }

    /* Satır eylem ikonları: düğmenin kendisi (tıklama alanı) küçülmez, yalnızca aralarındaki boşluk azalır. */
    .fi-ta-actions {
        gap: calc(var(--spacing) * 1.5);
    }

    /* Filtre/arama şeridi ve tablo başlığı. */
    .fi-ta-header-toolbar {
        padding-inline: calc(var(--spacing) * 4);
        padding-block: calc(var(--spacing) * 1.5);
    }

    .fi-ta-header {
        gap: calc(var(--spacing) * 2);
        padding-inline: calc(var(--spacing) * 4);
        padding-block: calc(var(--spacing) * 3);
    }

    /* Sayfalama şeridi (tablo altı). */
    .fi-ta-ctn .fi-pagination {
        padding-inline: calc(var(--spacing) * 4);
        padding-block: calc(var(--spacing) * 1.5);
    }

    /* Etkin süzgeç rozetlerinin şeridi (tablo üstü): rozetin kendisi küçülmez, yalnızca dolgusu bir kademe iner. */
    .fi-ta-filter-indicators {
        padding-block: calc(var(--spacing) * 1);
    }

    /* ---- Yoğunluk turu 3: bileşen yükseklikleri (bu alt bölüm tek başına geri alınabilir) ----
       Boşluklar değil, bileşenlerin KENDİ yükseklikleri bir kademe küçülür. Yazı boyutu ve satır yüksekliği
       (line-height) değişmez; küçülen yalnızca iç dolgu ve düğme kutusudur. Erişilebilirlik tabanı: metinli
       düğme 30px, ikon düğmesinin tıklama alanı 30px (alt sınır 28px) — 1 birim = 0,25rem = 3,75px. */

    /* (1) Düğmeler: başlık düğmeleri, form altı düğmeleri, modal düğmeleri. 33,75px → 30px. */
    .fi-btn {
        padding-inline: calc(var(--spacing) * 2.5);
        padding-block: calc(var(--spacing) * 1.5);
    }

    /* (5) İkon düğmeleri (satır eylemleri, filtre düğmesi, üst şerit): kutu 33,75px → 30px; ikonun kendisi
          (fi-icon, 1,25rem) ve Filament'in negatif kenar boşluğu düzeni aynı kalır. */
    .fi-icon-btn {
        width: calc(var(--spacing) * 8);
        height: calc(var(--spacing) * 8);
    }

    /* (2) Arama kutusu ve filtre düğmesinin durduğu şerit: satır yüksekliği 33,75px → 30px. */
    .fi-ta-header-toolbar > * {
        min-height: calc(var(--spacing) * 8);
    }

    /* (3) Form giriş alanları (metin, seçim, tarih; arama kutusu da aynı bileşendir): 33,75px → 30px.
          `line-height` Filament'in verdiği değerde kalır, yalnızca dikey dolgu azalır. */
    .fi-input {
        padding-inline: calc(var(--spacing) * 2.5);
        padding-block: calc(var(--spacing) * 1);
    }

    /* (4) Sekme düğmeleri (liste sekmeleri ve form sekmeleri): 33,75px → 30px. */
    .fi-tabs-item {
        padding-inline: calc(var(--spacing) * 2.5);
        padding-block: calc(var(--spacing) * 1.5);
    }

    /* ---- Yoğunluk turu 4: tablo hücre dolgusu (bu alt bölüm tek başına geri alınabilir) ----
       Satır yüksekliğini hücre dolgusu belirler: 2,5 → 2 birim (9,4px → 7,5px), ardından (KARAR, 03.10.2026 —
       Senaryo 12) 2 → 1 birim (3,75px). Tek satırlık metin satırı 27,25px, iki satırlık satır 42,25px olur; metin kırpılmaz (kırpma sütun tanımındadır,
       dolguyla ilgisi yoktur) ve satır yüksekliği (line-height) değişmediği için satırlar birbirine yapışmaz —
       satırlar arasında Filament'in 1px ayıracı durur. Eylem hücresi aynı dolguyu alır ki ikonlar metinle
       hizalı kalsın; ikon düğmesinin tıklama alanı (30px) dolgudan bağımsızdır, negatif kenar boşluğuyla
       yerleşir, dolayısıyla 28px tabanı korunur. */
    .fi-ta-table .fi-ta-text {
        padding-block: calc(var(--spacing) * 1);
    }

    .fi-ta-table .fi-ta-cell:has(.fi-ta-actions),
    .fi-ta-table .fi-ta-cell:has(.fi-ta-record-checkbox),
    .fi-ta-table .fi-ta-cell.fi-ta-selection-cell {
        padding-block: calc(var(--spacing) * 1);
    }

    /* Başlık satırı da iner (2 → 1,5 birim, ardından KARAR 03.10.2026: 1 birim): başlığı gövdeden ayıran şey dolgu değil, gri zemin
       ve alt çizgidir; sıralama düğmesi hücre dolgusunun İÇİNDE durduğundan tıklama alanı bu değişiklikten
       etkilenmez. Başlığı sarılan sütunlarda (wrapHeader) iki satır yine sığar. */
    .fi-ta-table .fi-ta-header-cell {
        padding-block: calc(var(--spacing) * 1);
    }

    /* ---- Yoğunluk turu 5: üst şerit (bu alt bölüm tek başına geri alınabilir) ----
       Şeridin yüksekliği Filament'in `--topbar-height` değişkeniyle verilir (4rem = 60px). İçindeki hiçbir öğe
       küçülmez: logo 2,5rem (37,5px), sistem adı, global arama kutusu ve ikon düğmeleri aynı kalır; öğeler
       `align-items: center` ile dikeyde ortalı durmaya devam eder.

       SINIR — logo şeridin tabanını belirler: en yüksek öğe logodur (37,5px). Şerit 3,25rem = 48,75px yapılır;
       logonun altında ve üstünde 5,6px boşluk kalır. Daha aşağısı (3rem = 45px) logoyu kırpma sınırına getirir,
       bu yüzden kademe burada durur — logo küçültülmez (kurum kimliği ölçüsüdür, panelden yönetilir).
       Değişken `.fi-body` üzerinde tanımlıdır; sabit menü/başlık hesapları (`top: calc(var(--topbar-height) …)`)
       aynı değişkeni okuduğundan kendiliğinden uyumlu kalır. Telefon/tabletde 4rem sürer (bu blok orada işlemez). */
    .fi-body {
        --topbar-height: 3.25rem;
    }
}

/* 6) Daraltılmış menü grup paneli (bu alt bölüm tek başına geri alınabilir — SINIRDA ÇÖZÜM, bkz. CLAUDE.md > Bölüm 5).
   Daraltılmış menüde grup öğeleri Filament'in açılır menüsünde (dropdown) listelenir; dropdown bileşeninin
   `maxHeight` / `size` seçenekleri vardır ama menü grubu şablonu bunları geçirmez, panel düzeyinde ayar yoktur.
   Kalabalık grupta panel ekranı aşıp yukarı taşıyor, üst öğeler görünmüyordu. Panel ekran yüksekliğiyle sınırlanır
   ve sığmazsa kendi içinde kayar. Menü daraltma yalnızca masaüstünde vardır. Filament grup panelini kendisi
   sınırlarsa bu bölüm kaldırılır (PanelYogunluguTest sınıf adlarını vendor şablonlarında denetler). */
@media (min-width: 64rem) {
    .fi-sidebar-group .fi-dropdown-panel {
        max-height: calc(100vh - 1rem);
        overflow-y: auto;
    }

    /* Açılır pencere menünün katmanında (z 20) çizilir; altta yer kalmayınca yukarı açılan uzun liste (Ortak
       Tanımlar) üst çubuğun (z 30) altında kalıyordu. Menü üst çubuğun altından başladığı için (üst çubuklu düzende
       `top: var(--topbar-height)`) katmanı yükseltmek yalnız taşan pencereyi etkiler. (KARAR, 03.10.2026.) */
    .fi-body-has-topbar .fi-sidebar {
        z-index: 31;
    }
}

/* 7) Sekme şeridi panel genelinde TEK TİP: liste sekmeleri (tablonun araç çubuğunda, SekmelerAracCubugunda) ve form
      sekmeleri (FormSekmeleri) aynı düğme grubu görünümündedir; seçili sekme kurum ana rengiyle vurgulanır. */
.fi-tabs-item.fi-active {
    background-color: var(--primary-50);
}

.dark .fi-tabs-item.fi-active {
    background-color: color-mix(in oklab, var(--primary-400) 15%, transparent);
}

/* Liste sekmeleri tablonun araç çubuğunda: araç çubuğu zaten kart içinde olduğundan kutu (çerçeve, gölge, dolgu) yok. */
.fi-ta-header-toolbar .fi-tabs:not(.fi-contained) {
    margin: 0;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
}

/* Form sekmeleri: üstte şerit, altta tek pencere; dar ekranda sekmeler açılır menüye taşınmaz, alt satıra sarar. */
.fi-sc-tabs.fi-contained > .fi-tabs {
    flex-wrap: wrap;
    row-gap: calc(var(--spacing) * 1);
    overflow-x: visible;
}

/* 8) Evrak inceleme sayfasındaki yazı metni (fi-prose): editörde oluşturulan tablolar PDF'teki gibi ince çizgili. */
.vutas-yazi-metni table {
    width: 100%;
    border-collapse: collapse;
}

.vutas-yazi-metni th,
.vutas-yazi-metni td {
    border: 1px solid var(--gray-300);
    padding: calc(var(--spacing) * 1) calc(var(--spacing) * 2);
    vertical-align: top;
}

.dark .vutas-yazi-metni th,
.dark .vutas-yazi-metni td {
    border-color: var(--gray-700);
}

/* Taranmış PDF ana belgenin gömülü önizlemesi: kolon genişliğinde, ekran yüksekliğine göre. */
.vutas-pdf-cercevesi {
    display: block;
    width: 100%;
    height: 75vh;
    min-height: 28rem;
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-lg);
    background-color: var(--gray-50);
}

.dark .vutas-pdf-cercevesi {
    border-color: var(--gray-700);
    background-color: var(--gray-900);
}

/* 9) Sırası anlamlı tekrarlayıcılar (SiraliTekrarlayici): taşıma düğmeleri aralıklı, tıklama alanı büyük ve
      çerçeveli; sürükleme tutamacı belirgin (imza sırası kritik, yanlış tıklama riski azaltılır). */
.vutas-sirali-tekrarlayici .fi-fo-repeater-item-header-start-actions,
.vutas-sirali-tekrarlayici .fi-fo-repeater-item-header-end-actions {
    gap: calc(var(--spacing) * 3);
}

/* Sürükleme tutamacı yukarı/aşağı düğmelerinden ayrıca uzak durur. */
.vutas-sirali-tekrarlayici .fi-fo-repeater-item-header-start-actions > li:has([x-sortable-handle]) {
    margin-inline-end: calc(var(--spacing) * 3);
}

.vutas-sirali-tekrarlayici .fi-fo-repeater-item-header .fi-icon-btn {
    /* Filament simge düğmelerinin hizalama için negatif kenar boşluğu aralığı yer; sıfırlanır. */
    margin: 0;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-md);
}

.vutas-sirali-tekrarlayici [x-sortable-handle] {
    cursor: grab;
    background-color: var(--gray-100);
}

.vutas-sirali-tekrarlayici [x-sortable-handle]:active {
    cursor: grabbing;
}

.dark .vutas-sirali-tekrarlayici .fi-fo-repeater-item-header .fi-icon-btn {
    border-color: var(--gray-700);
}

.dark .vutas-sirali-tekrarlayici [x-sortable-handle] {
    background-color: var(--gray-800);
}

/* 4) Sol menü öğeleri arası dikey boşluk bir kademe küçük. */
.fi-sidebar-nav {
    row-gap: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 6);
}

/* 10) Kurum Arşivi (Arşiv Gezgini): kart, rozet, ikon ve seçim alanı Filament bileşenleridir; burada yalnızca
   yerleşim (geniş ekranda solda 16rem sabit kart + sağ liste, dar ekranda tek sütun), ağacın kendi içinde kaydırılması,
   düğüm satırı ve girinti. Renkler Filament değişkenlerinden (seçili düğüm kurum ana rengi), koyu mod dahil. */
.vutas-kurum-arsivi {
    display: grid;
    grid-template-columns: 16rem minmax(0, 1fr);
    gap: calc(var(--spacing) * 6);
    align-items: start;
}

@media (max-width: 64rem) {
    .vutas-kurum-arsivi {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (min-width: 64rem) {
    .vutas-arsiv-agaci {
        position: sticky;
        top: calc(var(--topbar-height, 4rem) + var(--spacing) * 4);
    }

    .vutas-arsiv-agaci nav {
        max-height: calc(100vh - 20rem);
        overflow-y: auto;
    }
}

.vutas-arsiv-agaci nav {
    margin-block: calc(var(--spacing) * 3);
}

.vutas-arsiv-liste {
    list-style: none;
    margin: 0;
    padding: 0;
}

.vutas-arsiv-liste .vutas-arsiv-liste {
    margin-inline-start: calc(var(--spacing) * 3.5);
    padding-inline-start: calc(var(--spacing) * 2);
    border-inline-start: 1px solid var(--gray-200);
}

.vutas-arsiv-satir {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 1.5);
    padding: calc(var(--spacing) * 1) calc(var(--spacing) * 1.5);
    border-radius: var(--radius-lg);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    color: var(--gray-700);
}

.vutas-arsiv-satir:hover {
    background-color: var(--gray-50);
}

.vutas-arsiv-satir.secili {
    background-color: var(--primary-50);
    color: var(--primary-600);
    font-weight: 600;
}

/* Dar kartta uzun birim / dosya planı adları kesilmez, alt satıra geçer. */
.vutas-arsiv-etiket {
    flex: 1 1 auto;
    min-width: 0;
    overflow-wrap: anywhere;
    text-align: start;
    cursor: pointer;
}

.vutas-arsiv-ok,
.vutas-arsiv-ok-bosluk {
    flex: none;
    width: 1rem;
    height: 1rem;
    color: var(--gray-400);
}

.vutas-arsiv-ok .fi-icon {
    width: 1rem;
    height: 1rem;
    transition: transform .15s;
}

.vutas-arsiv-ok.acik .fi-icon {
    transform: rotate(90deg);
}

.vutas-arsiv-not {
    font-size: var(--text-xs);
    color: var(--gray-500);
}

.dark .vutas-arsiv-liste .vutas-arsiv-liste {
    border-color: var(--gray-700);
}

.dark .vutas-arsiv-satir {
    color: var(--gray-300);
}

.dark .vutas-arsiv-satir:hover {
    background-color: color-mix(in oklab, var(--gray-800) 60%, transparent);
}

.dark .vutas-arsiv-satir.secili {
    background-color: var(--gray-800);
    color: var(--primary-400);
}

/* Alan etiketleri yarı kalın (görüntüleme sayfaları, düzenleme ve ekleme formları; her ekran genişliğinde):
   etiket ile değer aynı boyda ve aynı ağırlıkta olunca alt alta dizilen alanlar birbirine karışıyordu.
   Ağırlık Filament'in kendi ölçeğinden gelir (`--font-weight-semibold`, 600) — bölüm başlığıyla aynı ağırlık
   ama küçük punto, yani hiyerarşi korunur; 700 kullanılsaydı etiket başlıktan ağır görünürdü. Boyut ve renk
   değişmez, bileşen şablonu ezilmez. */
.fi-in-entry-label,
.fi-fo-field-label-content {
    font-weight: var(--font-weight-semibold);
}


/* Metin ve ikon tonları — YALNIZCA AÇIK MOD: Filament'in soluk gri tonları paletin metin eksenine çekilir.
   Menü grup başlıkları, ikincil satırlar (tarih, açıklama), yer tutucular, menü ikonları ve form yardım
   metinleri `--gray-400` / `--gray-500` / `--gray-600` tonundaydı; beyaza yakın zemine karşı 3,0:1 ve 4,8:1 ile
   okunurluk sınırındaydı. Değerler
   PALETTEN türer (`var(--gray-600)`), sabit yazılmaz: gri palet kurumun ikincil renginden üretildiği için
   kurum rengini değiştirince bu tonlar da kendiliğinden uyar. Gövde metni ve sütun başlıkları `--gray-950`,
   menü öğeleri `--gray-700`'dür; onlara dokunulmaz, hiyerarşi korunur.
   Kural `html:not(.dark)` ile açık moda sınırlıdır: KOYU MODDA aynı tonlar koyu zemine karşı METİN rengidir
   (menü grup başlığı ve tablo ikincil metni `--gray-400`'tür), koyulaştırmak okunurluğu bozar. */
html:not(.dark) {
    /* İkon ve yer tutucu: metin ekseni ile kenarlık tonu arasında, koyu tarafa yakın (yer tutucu, dolu alanla
       karışmayacak kadar açık kalır). `--gray-700` aynı kapsamda yeniden tanımlanmadığı için referans güvenlidir. */
    --gray-400: color-mix(in oklab, var(--gray-700) 75%, var(--gray-300));
    /* İkincil satırlar, menü grup başlıkları, Kurum Arşivi ağaç açıklaması. */
    --gray-500: var(--gray-700);
    /* Form yardım metinleri (helperText → Filament `Text` bileşeni): kullanıcıya yol gösteren asıl içeriktir. */
    --gray-600: var(--gray-700);
}

/* Arayüz standardı — masaüstünde (≥ 1024px) listelerde yatay kaydırma yok. Dar ekranda (tablet/telefon)
   Filament'in kendi kaydırma ve sütun gizleme davranışı aynen kalır; aşağıdaki kurallar yalnızca masaüstünde işler.
   Metin hücreleri satır kaydırır (tek satırda uzayıp tabloyu genişletmez); rozetler ve tek satırda kalması
   gereken kısa değerler (TabloSutunu::TEK_SATIR) kırılmaz.

   EYLEM SÜTUNU SAĞA SABİTLENMEZ (KARAR): `position: sticky` + `z-index` her eylem hücresinde ayrı bir katman
   bağlamı açıyordu; açılan "Diğer işlemler" menüsü kendi hücresinin bağlamında kaldığı için ALTTAKİ satırların
   eylem ikonları menünün üstünde çiziliyordu (kardeş bağlamlar arasında DOM sırası kazanır). Sabitlemenin
   kazancı — tablo kayarsa ikonların görünür kalması — menünün kullanılamaz hâle gelmesine değmez; kaydırma
   zaten yalnızca kullanıcı sütun seçiciden çok sayıda sütun açtığında çıkar. Filament'in kendi davranışına
   dönüldü, özel CSS kaldırıldı.

   Uzun metin kırpma + ipucu ve çok değerli hücrelerde alt alta rozet: App\Vutas\Filament\Bilesenler\TabloSutunu. */
@media (min-width: 64rem) {
    .fi-ta-table .fi-ta-text:not(.fi-ta-text-has-badges.fi-ta-text-has-line-breaks) {
        white-space: normal;
    }

    .fi-ta-table .fi-ta-text .fi-badge {
        white-space: nowrap;
    }

    /* Bölünmemesi gereken kısa değerler (numara, kod): satır kaydırma kuralının istisnası.
       Sütun `TabloSutunu::TEK_SATIR` sınıfını hücreye ekler (Filament'in extraCellAttributes'ı).
       Seçici, yukarıdaki genel kuralın :not()'unu AYNEN taşır: `:not(a.b)` iki sınıf değerinde olduğu için
       genel kural (0,4,0) özgüllüğündedir; bu olmadan istisna (0,3,1) ile altta kalır ve hiç işlemezdi. */
    .fi-ta-table td.vutas-tek-satir .fi-ta-text:not(.fi-ta-text-has-badges.fi-ta-text-has-line-breaks) {
        white-space: nowrap;
    }

    /* HER SATIR TEK SATIR (KARAR, 03.10.2026; EBTS listeleri): açıklama satırı sarılmaz, sütunun genişliğine göre
       "…" ile kesilir — ana metindeki Filament lineClamp(1) ile aynı teknik. Tamamı açılan kutuda.
       Sınıf TabloSutunu::TEK_SATIR_ACIKLAMA (Filament'in extraCellAttributes'ı). */
    .fi-ta-table td.vutas-tek-satir-aciklama .fi-ta-text > .fi-ta-text-description {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
    }

}

/* Üst şeritte logonun yanındaki sistem adı ("{kısa ad} - {sistem tam adı}"). Kaynak Kurum kaydıdır; burada
   yalnızca yerleşim vardır. Dar ekranda tam ad gizlenir, kısa ad kalır. */
.vutas-sistem-adi {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 0.375rem;
    align-items: baseline;
    min-width: 0;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 600;
    color: var(--gray-700);
    white-space: nowrap;
    /* Ortada durur ama altındaki araç çubuğu öğelerinin tıklanmasını engellemez. */
    pointer-events: none;
}

.vutas-sistem-adi-tam {
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--gray-500);
}

.dark .vutas-sistem-adi {
    color: var(--gray-200);
}

.dark .vutas-sistem-adi-tam {
    color: var(--gray-400);
}

@media (max-width: 63.99rem) {
    .vutas-sistem-adi-tam {
        display: none;
    }
}

@media (max-width: 30rem) {
    .vutas-sistem-adi {
        display: none;
    }
}

/* Ana Panel modül vitrini (KARAR, 29.09.2026 / 02.10.2026 — tipografi ve renk Filament'indir): kartlar Filament
   `section`'ıdır; burada YALNIZ ızgara vardır (dar ekranda alt alta). Sütun en az 20rem: modül adı başlıkta tek
   satıra sığar (15rem'de "Elektronik Belge Takip Sistemi" kırılıyordu). Yazı boyutu, ağırlığı ve renk tanımlanmaz. */
.vutas-modul-vitrini {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
    gap: 0.75rem;
}

/* Giriş ekranı (ve Filament'in diğer yalın sayfaları: parola sıfırlama vb.) zemini: kurum kimliğinin VURGU rengiyle
   dikey gradyan (KARAR, 08.10.2026 — önceki: sabit lacivert, ürün rengi). Tonlar Filament'in kurumsal renk
   değişkenlerinden (`--kurumsal-*`, KurumKimligiService::VURGU_RENGI); vurgu rengi girilmemişse gri paletin koyu
   tonları. Koda renk değeri girmez. Giriş görseli yüklüyse zemin form tarafında görünür; koyu modda da aynı zemin. */
.fi-simple-layout {
    background: linear-gradient(180deg, var(--kurumsal-900) 0%, var(--kurumsal-800) 55%, var(--kurumsal-700) 100%);
    background-attachment: fixed;
}

/* Koyu zeminde ürün imzası açık tonla okunur kalır. */
.fi-simple-layout .vutas-imza {
    color: rgb(255 255 255 / 0.85);
}

/* 8) Menü blok ayırıcısı (bu alt bölüm tek başına geri alınabilir). Sol menü dört bloktur: Ana Panel · Modüller ·
      Tanımlar · Sistem Ayarları (MenuBlogu). Bloğun ilk grubu `vutas-blok-basi` sınıfını taşır (NavigationGroup::
      extraSidebarAttributes — Filament'in belgeli API'si; grup <li>'sine basılır, daraltılmış menüde de). İnce çizgi
      ikincil renkten türeyen gri paletten, bir ton koyu (29.09.2026: 200 → 300; koyu modda 700 → 600); dekoratif
      olduğu için kontrast şartı yoktur. */
.vutas-blok-basi {
    border-top: 1px solid var(--gray-300);
    margin-top: calc(var(--spacing) * 2);
    padding-top: calc(var(--spacing) * 2);
}

.dark .vutas-blok-basi {
    border-top-color: var(--gray-600);
}

/* 11) Menü başlıkları ve bölüm ayırıcıları (bu alt bölüm tek başına geri alınabilir). Filament'te başlık ağırlığı
      için seçenek yoktur. Grup başlıkları kalın (açık menüde ve daraltılmış menünün açılır panelinde aynı). Menüde
      iç içe alt başlık YOKTUR (KARAR, 03.10.2026 — modül başına tek başlık; kümeler blok ayırıcısının sınıfıyla
      çizgiyle ayrılır, bkz. 8); eski üst öğe ağacının girinti kuralları kaldırıldı. Panelin bölüm ayırıcıları
      (Filament'in sıfır özgüllüklü `divide` kuralı) blok ayırıcısıyla aynı tonda. Paneldeki öğe adı kesilmez, alt
      satıra sarar: panel genişliği Filament'te zorunlu işaretli (important) sabittir, ona dokunulmaz. */
.fi-sidebar-group-label,
.fi-sidebar-group .fi-dropdown-header span {
    font-weight: var(--font-weight-bold);
}

.fi-sidebar-group .fi-dropdown-panel > * {
    border-color: var(--gray-300);
}

.dark .fi-sidebar-group .fi-dropdown-panel > * {
    border-color: var(--gray-600);
}

.fi-sidebar-group .fi-dropdown-list-item-label {
    white-space: normal;
}

/* 12) Tablo grup başlıkları kalın (bu alt bölüm tek başına geri alınabilir). Filament'in gruplu tablosunda grup
      başlığının ağırlık seçeneği yoktur (`.fi-ta-group-heading` orta ağırlık); gruplar satırlardan ayrılsın diye
      Filament'in kendi ölçeğinde kalın. Bugün tek gruplu tablo Yetki Matrisi'dir. */
.fi-ta-group-heading {
    font-weight: var(--font-weight-bold);
}

/* 13) Pano kartı — sayısı 0 olan kartta SAYININ KENDİSİ soluk (bu alt bölüm tek başına geri alınabilir; KARAR, 07.10.2026).
      Filament'in `Stat::color` yalnız açıklama satırını ve ikonu boyar, sayı her zaman gövde metni rengindedir; kart
      sınıfı `PanoKartlari`'nda Filament'in belgeli `extraAttributes`'ıyla eklenir. Ton paletten türer (kurum rengi koda
      girmez); büyük metin (text-3xl) için 3:1 kontrast tabanı korunur. */
html:not(.dark) .vutas-pano-kart-bos .fi-wi-stats-overview-stat-value {
    color: color-mix(in oklab, var(--gray-700) 45%, var(--gray-300));
}
html.dark .vutas-pano-kart-bos .fi-wi-stats-overview-stat-value {
    color: var(--gray-500);
}
