/* ════════════════════════════════════════════════════════════════
   DepartmentBudgetTab — TreeGrid iç içerik (Syncfusion + RenderTreeBuilder ile
   üretilen hücreler) için GLOBAL (scope'suz) CSS.
   Neden ayrı dosya: Bu projenin Blazor CSS isolation build hattında ::deep()
   kombinatörü .razor.css içinde doğru derlenmiyor — çıktı geçersiz CSS
   üretiyor ("(selector)" literal parantezli), tarayıcı kuralın tamamını
   görmezden geliyor. Bu 84 kural (TreeGrid satır/hücre renkleri, donmuş
   sütun arka planları, satır etiketi/rozet stilleri vb.) bu yüzden HİÇ
   uygulanmıyordu. Global stylesheet scoping pipeline'ını atlar, aynı
   seçiciler düz CSS olarak çalışır.
   ════════════════════════════════════════════════════════════════ */

.de-selection-bar  .dept-filter-bar {
    margin: 0;
    padding: .62rem .75rem;
    gap: .65rem;
    border-color: #d7e0ec;
    border-radius: 8px;
    background: #fff;
}

.data-entry-shell  .e-treegrid .e-row.de-row-search-match .e-rowcell {
    background: #fffbe6 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-search-dim .e-rowcell {
    opacity: .38;
}

.data-entry-shell  .e-treegrid {
    border: 0 !important;
    background: #ffffff !important;
}

.data-entry-shell  .e-treegrid .e-gridheader {
    background: #f1f5f9 !important;
    border-top: 1px solid #e2e8f0 !important;
    border-bottom: 2px solid #94a3b8 !important;
}

.data-entry-shell  .e-treegrid .e-headercell {
    height: 34px !important;
    padding: .36rem .5rem !important;
    border-right: 1px solid #d8e0ea !important;
    background: #f1f5f9 !important;
    color: #1e293b !important;
    font-size: .58rem !important;
    font-weight: 850 !important;
    letter-spacing: .02em !important;
    text-transform: uppercase !important;
}

.data-entry-shell  .e-treegrid .e-rowcell {
    height: 32px !important;
    padding: .12rem .48rem !important;
    border-bottom: 1px solid #e7edf4 !important;
    border-right: 1px solid #edf1f6 !important;
    background: #ffffff !important;
    color: #0f172a !important;
    font-size: .68rem !important;
    font-variant-numeric: tabular-nums;
}

/* ÖNEMLİ: Bu kural (Syncfusion'ın e-altrow zebra çizgisi) tüm .de-row-* satır-tipi
   kurallarından ÖNCE gelmeli. Aksi halde, eşit specificity'de kaynak-sırası tie-break'i
   kazanıp, tesadüfen "alt satır" (tek/çift zebra) pozisyonuna denk gelen HERHANGİ bir
   grup/subtotal/formula/total satırının dondurulmamış (ay) sütunlarını beyaza çeviriyordu
   — donmuş sütunlar ayrı override'la korunduğu için sadece "Yıllık Plan'a kadar" renk
   varmış gibi görünüyordu. Sıra ÖNEMLİ: sonraki .de-row-* kuralları bunu ezmeli. */
.data-entry-shell  .e-treegrid .e-row.e-altrow .e-rowcell {
    background: #ffffff !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-root .e-rowcell {
    height: 34px !important;
    border-top: 2px solid #94a3b8 !important;
    border-bottom-color: #c5d2e0 !important;
    background: #eaf1f8 !important;
    color: #102a43 !important;
    font-weight: 850 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-group .e-rowcell {
    background: #edf4f9 !important;
    color: #243b53 !important;
    font-weight: 780 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-rowcell {
    background: #f8fafc !important;
    color: #334155 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-rowcell {
    border-top: 1px solid #aebdcb !important;
    background: #f5f8fb !important;
    font-weight: 750 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-total .e-rowcell {
    border-top: 2px solid #64748b !important;
    border-bottom: 1px solid #aebdcb !important;
    background: #e8f0f8 !important;
    color: #102a43 !important;
    font-weight: 850 !important;
}


.data-entry-shell  .e-treegrid .e-row.de-row-top .e-rowcell {
    border-top: 1px solid #94a3b8 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-bottom .e-rowcell {
    border-bottom: 1px solid #94a3b8 !important;
}

.data-entry-shell  .e-treegrid .e-rowcell.e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-headercell.e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-frozen-left,
.data-entry-shell  .e-treegrid .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-rowcell[aria-colindex="2"],
.data-entry-shell  .e-treegrid .e-headercell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-headercell[aria-colindex="2"] {
    position: sticky !important;
    z-index: 4 !important;
    background: #ffffff !important;
    border-right: 1px solid #cbd5e1 !important;
    box-shadow: 4px 0 10px -10px rgba(15, 23, 42, .55);
}

.data-entry-shell  .e-treegrid .e-headercell.e-leftfreeze,
.data-entry-shell  .e-treegrid .e-headercell.e-frozen-left,
.data-entry-shell  .e-treegrid .e-headercell.e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-headercell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-headercell[aria-colindex="2"] {
    z-index: 8 !important;
    background: #f1f5f9 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-root .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-root .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-root .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-root .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-root .e-rowcell[aria-colindex="2"] {
    background: #eaf1f8 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-group .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-group .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-group .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-group .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-group .e-rowcell[aria-colindex="2"] {
    /* Donmuş (frozen) Hesap/P&L Kalemi sütunu, gruba ait aylık sütunlarla (#edf4f9)
       AYNI tonda olmalı — önceden neredeyse beyaz (#fbfdff) idi, bu yüzden tam da
       kullanıcının baktığı sütunda grup arka planı "gelmiyor" gibi görünüyordu. */
    background: #edf4f9 !important;
}

/* Sıra genel (frozen olmayan) .e-rowcell kurallarıyla AYNI olmalı: formula < subtotal < total.
   Her formula satırı ayrıca subtotal VEYA total class'ını da taşıyor (bkz. OnRowDataBound);
   eşit specificity'de kaynak-sırası kazandığı için sıra ters olursa donmuş/donmamış
   sütunlar farklı renk gösterir (aynı satırda tutarsız arka plan). */
.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-formula .e-rowcell[aria-colindex="2"] {
    background: #f8fafc !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-subtotal .e-rowcell[aria-colindex="2"] {
    background: #f5f8fb !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-total .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-total .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-total .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-total .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-total .e-rowcell[aria-colindex="2"] {
    background: #e8f0f8 !important;
}

.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-rowcell,
.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-leftfreeze,
.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-frozen-left,
.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-freezeleftborder,
.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-rowcell[aria-colindex="1"],
.data-entry-shell  .e-treegrid .e-row.de-row-template-color .e-rowcell[aria-colindex="2"] {
    background: var(--de-template-row-bg) !important;
}

.data-entry-shell  .e-treegrid .de-annual-column {
    border-left: 2px solid #94a3b8 !important;
    border-right: 2px solid #94a3b8 !important;
    background: #eef4fb !important;
}

.data-entry-shell  .e-treegrid .de-quarter-start {
    border-left: 2px solid #b8c5d3 !important;
}

.data-entry-shell  .e-treegrid .de-current-month {
    background: #eff6ff !important;
    box-shadow: inset 0 3px 0 #2563eb;
}

.data-entry-shell  .e-treegrid .e-rowcell.de-current-month {
    box-shadow: inset 1px 0 0 #bfdbfe, inset -1px 0 0 #bfdbfe;
}

.data-entry-shell  .e-treegrid .e-row[aria-selected="true"] .e-rowcell,
.data-entry-shell  .e-treegrid .e-row .dept-tree-row.is-selected {
    background: #eff6ff !important;
}

.data-entry-shell  .dept-tree-row.is-selected {
    color: #1d4ed8 !important;
    font-weight: 850 !important;
}

.data-entry-shell  .dept-tree-row {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 25px;
    gap: .32rem;
    cursor: pointer;
}

/* Kod artık satırda görünmez (bkz. RenderNameCell) — tek sütunluk basit blok yeterli;
   hesap kodu isim üzerindeki native title tooltip'inde saklı. */
.data-entry-shell  .de-account-main {
    display: flex;
    align-items: baseline;
    min-width: 0;
}

.data-entry-shell  .de-input-enabled-badge {
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    margin-left: auto;
    border-radius: 999px;
    background: #2563eb;
    box-shadow: 0 0 0 2px #dbeafe;
}

.data-entry-shell  .de-account-name {
    overflow: hidden;
    min-width: 0;
    color: inherit;
    font-size: .69rem;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.data-entry-shell  .de-formula-badge {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    margin-left: .1rem;
    color: #7c3aed;
    font-size: .65rem;
}

.month-edit-cell  .e-numerictextbox,
.month-edit-cell  .e-input,
.month-edit-cell  input.e-numerictextbox {
    text-align: right !important;
    font-variant-numeric: tabular-nums;
    font-size: .68rem;
    font-weight: 650;
    color: #1e293b;
    letter-spacing: 0;
}

.data-entry-shell  .de-input.e-numerictextbox,
.data-entry-shell  .de-input.e-input-group {
    width: 100% !important;
    height: 32px !important;
    min-width: 78px;
    border-radius: 0 !important;
    border: none !important;
    background: transparent !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.data-entry-shell  .de-input.e-input-group:hover {
    background: #f8fbff !important;
}

.data-entry-shell  .de-input.e-input-group:focus-within {
    background: #ffffff !important;
}

.data-entry-shell  .de-input.e-input-group .e-input {
    text-align: right !important;
    font-variant-numeric: tabular-nums;
    font-size: .68rem;
    font-weight: 650;
    color: #1d4ed8;
    padding: 0 .36rem 0 .25rem !important;
    margin: 0 !important;
    height: 100% !important;
    border: none !important;
    background: transparent !important;
    letter-spacing: 0;
}

.month-static-cell.is-negative,
.data-entry-total-cell.is-negative,
.month-edit-cell.is-negative  .e-input {
    color: #b42318 !important;
}

.month-static-cell.is-zero,
.data-entry-total-cell.is-zero,
.month-edit-cell.is-zero  .e-input {
    color: #94a3b8 !important;
}

.data-entry-shell  .dept-lineage-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-left: 0.45rem;
    padding: 0.1rem 0.35rem;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 0.64rem;
    font-weight: 800;
    line-height: 1.1;
    vertical-align: middle;
    overflow: hidden;
    max-width: 150px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.data-entry-shell  .dept-lineage-badge.is-source { border-color: #dbe3ec; background: #f8fafc; color: #526579; }

.data-entry-shell  .dept-lineage-badge.is-overridden { border-color: #fed7aa; background: #fff7ed; color: #9a4d0b; }

.data-entry-shell  .dept-lineage-badge.is-driver-output { border-color: #bfdbfe; background: #eff6ff; color: #1d4ed8; }

.data-entry-shell  .dept-lineage-badge.is-stale-driver-output { border-color: #fde68a; background: #fffbeb; color: #92400e; }

.data-entry-shell  .dept-active-driver-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
    margin-left: 0.38rem;
    padding: 0.1rem 0.38rem;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    background: #f0fdf4;
    color: #15803d;
    font-size: 0.62rem;
    font-weight: 850;
    line-height: 1.1;
    vertical-align: middle;
}

.month-edit-cell.cell-dirty  .de-input.e-input-group {
    border-color: #f59e0b !important;
    background: #fffbeb;
    box-shadow: inset 2px 0 0 #f59e0b;
}
