/* ============================================================================
   ENERJİ, SU VE ATIK (en-*) — modüle özgü parçalar
   ----------------------------------------------------------------------------
   Sayfa kabuğu, kart, KPI ve düğmeler rapor kitinden (rk-*); modül gezinmesi ve başlık
   nakit akış kitinden (cfn-*, cfr-head); tablo, kapsam şeridi, form çekmecesi, durum etiketi
   ve ileti yatırım kitinden (cpx-*) ortak kullanılır. Burada yalnız enerji ekranlarına özgü
   parçalar var. Senaryo renkleri --sc-* standardından okunur.
   ============================================================================ */

.en-page { --en-gap: 12px; }

/* Görünüm seçici (Ay / Yılbaşından) */
.en-seg { display: inline-flex; height: 34px; border: 1px solid var(--rk-line); border-radius: 8px; overflow: hidden; background: #fff; }
.en-seg button { border: 0; background: transparent; padding: 0 12px; font-size: .78rem; font-weight: 650; color: var(--rk-muted); cursor: pointer; }
.en-seg button + button { border-left: 1px solid var(--rk-line); }
.en-seg button.on { background: #eff6ff; color: var(--rk-accent); }
.en-seg button:disabled { cursor: not-allowed; opacity: .6; }

/* Kaynak adı + kategori rengi */
.en-res { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.en-res-dot { width: 26px; height: 26px; flex: none; display: grid; place-items: center; border-radius: 8px; font-size: .72rem;
    background: color-mix(in srgb, var(--c, #64748b) 14%, #fff); color: var(--c, #64748b); }
.en-res b { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.en-res small { display: block; color: var(--rk-muted); font-size: .66rem; }

/* Plan çalışma sayfası */
.en-grid td.en-cell { position: relative; }
.en-grid td.en-cell input.cpx-cell { width: 90px; }
.en-grid td.en-pin::after { content: ""; position: absolute; top: 4px; right: 4px; width: 6px; height: 6px; border-radius: 50%; background: #f59e0b; }
.en-grid td.en-actual { background: var(--sc-actual-tint) !important; color: var(--sc-actual-text); }
.en-grid tr.en-layer td { color: var(--rk-muted); font-size: .72rem; height: 26px; }
.en-grid tr.en-layer td.cpx-sticky { padding-left: 46px; }
.en-grid tr.en-row-head td { border-top: 1px solid var(--rk-line); }
.en-grid .en-sub { font-size: .68rem; color: var(--rk-muted); }
.en-legend { display: inline-flex; align-items: center; gap: 14px; font-size: .7rem; color: var(--rk-muted); }
.en-legend i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 5px; vertical-align: -1px; }
.en-legend i.pin { background: #f59e0b; }
.en-legend i.act { background: var(--sc-actual); border-radius: 2px; }

/* Profil kartı (çalışma sayfası yan paneli) */
.en-profile { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px 12px; }
.en-profile label { display: flex; flex-direction: column; gap: 3px; font-size: .68rem; font-weight: 700; color: var(--rk-ink-2); }
.en-profile input, .en-profile select { height: 32px; padding: 0 8px; border: 1px solid var(--rk-line); border-radius: 7px; font-size: .8rem; }
.en-profile input { text-align: right; font-variant-numeric: tabular-nums; }

/* Ay şeridi (kapanış durumu) */
.en-months { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 6px; }
.en-month { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 8px 4px; border: 1px solid var(--rk-line);
    border-radius: 9px; background: #fff; color: var(--rk-ink-2); font-size: .72rem; cursor: pointer; }
.en-month b { font-size: .78rem; color: var(--rk-ink); }
.en-month.active { border-color: var(--rk-accent); box-shadow: 0 0 0 2px #dbeafe; }
.en-month.done { background: #f0fdf4; border-color: #bbf7d0; }
.en-month.part { background: #fffbeb; border-color: #fde68a; }
.en-month.none { background: #fef2f2; border-color: #fecaca; }
.en-month.future { opacity: .45; cursor: default; }
.en-month i.fa-lock { color: var(--rk-muted); font-size: .64rem; }
@media (max-width: 900px) { .en-months { grid-template-columns: repeat(6, minmax(0, 1fr)); } }

/* Pay çubuğu (alan dağılımı, bedel kırılımı) */
.en-share { display: flex; align-items: center; gap: 8px; }
.en-share-bar { flex: 1; min-width: 60px; height: 7px; border-radius: 999px; background: #e2e8f0; overflow: hidden; }
.en-share-bar i { display: block; height: 100%; background: var(--c, var(--rk-accent)); }
.en-stack { display: flex; width: 100%; height: 10px; border-radius: 999px; overflow: hidden; background: #e2e8f0; }
.en-stack i { display: block; height: 100%; }

/* Sapma köprüsü şelalesi (yatay) */
.en-bridge { display: flex; flex-direction: column; gap: 6px; padding: 12px 16px; }
.en-bridge-row { display: grid; grid-template-columns: 170px 1fr 120px; align-items: center; gap: 10px; font-size: .8rem; }
.en-bridge-track { position: relative; height: 18px; background: #f8fafc; border-radius: 4px; }
.en-bridge-track i { position: absolute; top: 2px; bottom: 2px; border-radius: 3px; }
.en-bridge-track i.up { background: color-mix(in srgb, var(--rk-unfav) 78%, #fff); }
.en-bridge-track i.down { background: color-mix(in srgb, var(--rk-fav) 78%, #fff); }
.en-bridge-track i.base { background: var(--sc-budget); }
.en-bridge-track i.end { background: var(--sc-actual); }
.en-bridge-row .num { text-align: right; font-variant-numeric: tabular-nums; }
.en-bridge-row.total { font-weight: 800; }

/* Okuma turu */
.en-round input.cpx-cell { width: 120px; }
.en-round td.en-delta { color: var(--rk-muted); }
.en-round td.en-warn { color: #b45309; font-weight: 700; }

/* Kutucuklu ızgara (tesis profili hava tablosu) */
.en-weather input.cpx-cell { width: 76px; }

/* Çizelge bölüm başlığı ve ara toplam */
.en-page .cpx-table tr.cpx-group td { background: #f8fafc; color: var(--rk-ink); font-size: .74rem; text-transform: uppercase; letter-spacing: .02em; }
.en-page .cpx-table tr.cpx-subtotal td { font-weight: 750; border-top: 1px solid #cbd5e1; }
.en-page .cpx-table td.num a { color: inherit; text-decoration: underline dotted; text-underline-offset: 3px; }

/* Veri kalitesi sayaç şeridi */
.en-counts { display: flex; flex-wrap: wrap; gap: 18px; padding: 10px 14px; border: 1px solid var(--rk-line); border-radius: 10px; background: #fff; font-size: .8rem; }
.en-counts span { display: inline-flex; align-items: center; gap: 6px; color: var(--rk-ink-2); }

/* Küçük katlar (yoğunluk seyri) */
.en-multiples { display: grid; grid-template-columns: repeat(auto-fill, minmax(380px, 1fr)); gap: 12px; }
@media (max-width: 640px) { .en-multiples { grid-template-columns: 1fr; } }

@media print {
    .en-seg, .en-profile { display: none !important; }
}
