/* Makro Seans Paneli — yalnızca Tabler/Tabulator'ın karşılamadığı küçük ayarlar. */

/* ---------------------------------------------------------------- düzen */
.view { display: flex; flex-direction: column; gap: 1rem; }
.view > :empty { display: none; }
.page-header { margin-bottom: .25rem; }
.chart { width: 100%; min-height: 40px; position: relative; }
.kpi-spark { height: 40px; }
.is-refreshing { opacity: .55; pointer-events: none; transition: opacity .15s; }
.series-list { max-height: calc(100vh - 12rem); overflow-y: auto; }
.evds-scroll { max-height: 480px; overflow: auto; }
.bar-w { width: 48px; }
.bar-w-lg { width: 120px; }
.csv-drop { cursor: pointer; border: 1px dashed var(--tblr-border-color); }
.csv-drop:hover, .csv-drop.drag { border-color: var(--tblr-primary); background: var(--tblr-primary-lt) !important; }
.csv-drop:focus-within { outline: 2px solid var(--tblr-primary); }
.savebar-card { max-width: 760px; }
@media (min-width: 992px) { .savebar { left: 15rem; } }
@media (max-width: 575.98px) { .kpi-span { display: none; } }

/* ---------------------------------------------------------------- küçük bileşenler */
.msg:not(:empty) { margin: .5rem 0; font-size: .875rem; }
.msg .ok { color: var(--tblr-green); font-weight: 500; }
.msg .err { color: var(--tblr-red); font-weight: 500; }
.err-more { margin-top: .375rem; font-size: .75rem; color: var(--tblr-secondary); }
.err-more summary { cursor: pointer; }
.err-more code { display: block; margin-top: .25rem; white-space: pre-wrap; word-break: break-word; }
.who { display: inline-flex; align-items: center; gap: .5rem; }
/* kaynak rengi işareti (tablo/lejant) */
.key { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--c); flex: none; vertical-align: middle; margin-right: .375rem; }
.key.diamond { border-radius: 2px; transform: rotate(45deg); width: 9px; height: 9px; }
.key.bar { width: 3px; height: 14px; border-radius: 2px; }
.key.line { width: 14px; height: 3px; border-radius: 2px; }
.key.band { width: 14px; height: 10px; border-radius: 3px; background: color-mix(in srgb, var(--c) 30%, transparent); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--c) 60%, transparent); }
.key.ring { background: transparent; box-shadow: inset 0 0 0 2px var(--c); }
.legend-row .key { margin-right: .375rem; }
/* tahmin girişi */
.fc-ref { font-variant-numeric: tabular-nums; min-width: 0; }
.fc-ref small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (min-width: 992px) { .fc-ref { text-align: right; } .fc-ref small { text-align: right; } }
.fc-input input { font-size: 1rem; font-variant-numeric: tabular-nums; }
.tl { padding-left: 1rem; border-left: 2px solid var(--tblr-border-color); }
.tl li { position: relative; padding: 0 0 .75rem .5rem; font-size: .875rem; }
.tl li::before { content: ""; position: absolute; left: -1.4rem; top: .35rem; width: 10px; height: 10px; border-radius: 50%; background: var(--tblr-bg-surface); border: 2px solid var(--tblr-border-color); }
.tl li.now::before { border-color: var(--tblr-primary); background: var(--tblr-primary); }

/* ---------------------------------------------------------------- Tabulator → Tabler uyumu (açık/koyu) */
html[data-bs-theme] .tabulator { font-size: .875rem; background: var(--tblr-bg-surface); color: var(--tblr-body-color); border: 1px solid var(--tblr-border-color); border-radius: var(--tblr-border-radius); }
html[data-bs-theme] .tabulator .tabulator-header { background: var(--tblr-bg-surface-secondary); color: var(--tblr-secondary); border-bottom: 1px solid var(--tblr-border-color); font-weight: 600; font-size: .75rem; }
html[data-bs-theme] .tabulator .tabulator-header .tabulator-col { background: transparent; border-right: 0; }
html[data-bs-theme] .tabulator .tabulator-header .tabulator-col .tabulator-col-content { padding: .5rem .75rem; }
html[data-bs-theme] .tabulator .tabulator-header .tabulator-col .tabulator-header-filter input { background: var(--tblr-bg-forms); color: var(--tblr-body-color); border: 1px solid var(--tblr-border-color); border-radius: var(--tblr-border-radius); padding: .125rem .5rem; font-weight: 400; font-size: .8125rem; }
html[data-bs-theme] .tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover { background: var(--tblr-bg-surface-tertiary); }
html[data-bs-theme] .tabulator .tabulator-tableholder .tabulator-table { background: transparent; color: inherit; }
html[data-bs-theme] .tabulator-row { background: var(--tblr-bg-surface); border-bottom: 1px solid var(--tblr-border-color); min-height: 0; }
html[data-bs-theme] .tabulator-row.tabulator-row-even { background: var(--tblr-bg-surface); }
html[data-bs-theme] .tabulator-row.tabulator-selectable:hover, html[data-bs-theme] .tabulator-row:hover { background: var(--tblr-bg-surface-secondary); }
html[data-bs-theme] .tabulator-row .tabulator-cell { padding: .5rem .75rem; border-right: 0; font-variant-numeric: tabular-nums; }
html[data-bs-theme] .tabulator-row.tabulator-group, html[data-bs-theme] .tabulator-row.tabulator-calcs { background: var(--tblr-bg-surface-secondary); }
html[data-bs-theme] .tabulator .tabulator-row.tabulator-group { border-bottom: 1px solid var(--tblr-border-color); color: var(--tblr-body-color); padding: .5rem .75rem; }
html[data-bs-theme] .tabulator .tabulator-row.tabulator-group span { color: inherit; }
html[data-bs-theme] .tabulator .tabulator-footer { background: var(--tblr-bg-surface-secondary); border-top: 1px solid var(--tblr-border-color); }
html[data-bs-theme] .tabulator .tabulator-placeholder span { color: var(--tblr-secondary); font-weight: 400; font-size: .875rem; }
.tabulator .tabulator-cell.num { text-align: right; }
.tabulator .tabulator-cell .badge { vertical-align: middle; }
/* satır türleri (Tabulator ve Tabler tablolarında ortak) */
.row-bench, .row-bench > td { background: var(--tblr-bg-surface-secondary) !important; }
.row-strong { font-weight: 600; }
.is-thin, .is-thin .progress-bar { color: var(--tblr-secondary); opacity: .75; }
.row-err > td { background: var(--tblr-red-lt) !important; }
html[data-bs-theme] .tabulator-row.row-survey, .row-survey { background: var(--tblr-bg-surface-secondary); }
html[data-bs-theme] .tabulator-row.row-better { background: var(--tblr-green-lt); }
.tabulator-cell.mx-focus, .tabulator-col.mx-focus { background: var(--tblr-primary-lt) !important; }
.table td.wrap { white-space: normal; min-width: 180px; }
/* sprite simgeleri: çizgi simge, dolgu yok */
svg.icon { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.icon-sm { width: 1rem; height: 1rem; }
.icon-lg { width: 1.75rem; height: 1.75rem; }
html[data-bs-theme] .tabulator, html[data-bs-theme] .tabulator .tabulator-header, html[data-bs-theme] .tabulator .tabulator-row, html[data-bs-theme] .tabulator .tabulator-cell,
html[data-bs-theme] .tabulator .tabulator-col, html[data-bs-theme] .tabulator .tabulator-frozen, html[data-bs-theme] .tabulator .tabulator-footer { border-color: var(--tblr-border-color) !important; }
html[data-bs-theme] .tabulator .tabulator-header, html[data-bs-theme] .tabulator .tabulator-header .tabulator-col { color: var(--tblr-secondary); }
.form-select, .form-control { max-width: 100%; }
.form-select { min-width: 0; }
.navbar .navbar-nav .nav-link .badge { position: static; transform: none; }

/* Kenar çubuğunda "Açık" rozeti kesilmesin */
.navbar-vertical .nav-link-title { overflow: visible; white-space: nowrap; display: inline-flex; align-items: center; }

/* ---------------------------------------------------------------- Gündem */
.hf-tile .h2 { font-variant-numeric: tabular-nums; }
.hf-tile .hf-k { font-size: .6875rem; text-transform: uppercase; letter-spacing: .02em; }
.hf-chg { border-top: 1px solid var(--tblr-border-color); padding-top: .5rem; font-variant-numeric: tabular-nums; }
.cal-day { padding-left: .75rem; border-left: 3px solid var(--tblr-border-color); }
.cal-day.is-today { border-left-color: var(--tblr-primary); background: color-mix(in srgb, var(--tblr-primary) 6%, transparent); border-radius: 0 var(--tblr-border-radius) var(--tblr-border-radius) 0; padding-top: .5rem; padding-bottom: .5rem; }
.cal-day.is-pastday h4 { color: var(--tblr-secondary); }
.cal-item .cal-time { width: 3rem; flex: none; padding-top: .125rem; font-variant-numeric: tabular-nums; }
.cal-item.is-past, .cal-item.is-done { opacity: .6; }
.cal-item.is-imp .fw-medium { font-weight: 600 !important; }
.min-w-0 { min-width: 0; }

/* ---------------------------------------------------------------- canlı tur */
.live-editing svg { animation: live-pulse 1.4s ease-in-out infinite; }
@keyframes live-pulse { 50% { opacity: .35; } }
@media (prefers-reduced-motion: reduce) { .live-editing svg, .status-dot-animated::before { animation: none !important; } }
.fc-team:empty, .fc-live:empty { display: none !important; }
.inst-row .input-group-text { min-width: 2.25rem; justify-content: center; }

/* Canlı çubuktaki baş harf rozetleri: iki harf sığsın, üst üste binmesin */
.live-avs .avatar { flex: none; width: auto; min-width: 1.6rem; padding: 0 .25rem; font-size: .65rem; }
