/*
 * orbit.css — InteviQ.Orbit özel CSS geçersiz kılmaları
 * cshtml dosyalarında inline style="" kullanmak yerine bu dosyadaki sınıflar tercih edilmelidir.
 */

/* ─────────────────────────────────────────────────────────
   Settings sayfası düzeni
   ───────────────────────────────────────────────────────── */
.orbit-settings-body {
    min-height: calc(100vh - 200px);
}

.orbit-settings-nav {
    width: 255px;
    flex-shrink: 0;
}

/* ─────────────────────────────────────────────────────────
   Filtre formları — select/input genişlik ayarı
   ───────────────────────────────────────────────────────── */
.orbit-filter-input {
    width: 170px;
    min-width: 0;
    flex-shrink: 0;
}

.orbit-filter-select {
    width: 130px;
    min-width: 0;
    flex-shrink: 0;
}

/* card-header içindeki filtre satırı — yatay hizalama */
.orbit-filter-bar { flex-wrap: wrap; }

.orbit-filter-bar .form-select-sm          { width: 130px;  min-width: 0; flex-shrink: 0; }
.orbit-filter-bar input[type="text"].form-control-sm,
.orbit-filter-bar input[type="search"].form-control-sm  { width: 165px; min-width: 0; flex-shrink: 0; }
.orbit-filter-bar input[type="date"].form-control-sm    { width: 118px; min-width: 0; flex-shrink: 0; }
.orbit-filter-bar .search-box              { width: 190px;  min-width: 0; flex-shrink: 0; }
.orbit-filter-bar .search-box .form-control-sm          { width: 100%; }

/* ─────────────────────────────────────────────────────────
   Tablo sütun genişlikleri — Order/Index fulfillment modal
   ───────────────────────────────────────────────────────── */
.orbit-th-icon  { width: 42px; }
.orbit-th-action { width: 60px; }
.orbit-th-stock  { width: 120px; }
.orbit-th-qty    { width: 80px; }

/* ─────────────────────────────────────────────────────────
   Tablo hücresi — çok satırlı içerik (compact line-height)
   ───────────────────────────────────────────────────────── */
.orbit-td-compact {
    line-height: 1;
}

/* ─────────────────────────────────────────────────────────
   Dropdown menü minimum genişlik
   ───────────────────────────────────────────────────────── */
.orbit-dropdown-actions {
    min-width: 190px;
}

/* ─────────────────────────────────────────────────────────
   Küçük metin yardımcıları
   ───────────────────────────────────────────────────────── */
.orbit-text-xs  { font-size: 0.72rem; }
.orbit-text-xxs { font-size: 0.55rem; }

/* ─────────────────────────────────────────────────────────
   Kaydırılabilir panel / liste kutuları
   ───────────────────────────────────────────────────────── */
.orbit-scroll-list {
    max-height: 380px;
    overflow-y: auto;
}

.orbit-scroll-table {
    max-height: 340px;
    overflow-y: auto;
}

/* ─────────────────────────────────────────────────────────
   Campaign/Save — ürün kapsam paneli sütunları
   ───────────────────────────────────────────────────────── */
.orbit-scope-th-check { width: 36px; }

/* ─────────────────────────────────────────────────────────
   Inventory sayfası — yatay filtre dropdown genişlik
   ───────────────────────────────────────────────────────── */
.orbit-inv-filter-btn  { min-width: 200px; }
.orbit-inv-filter-menu { min-width: 230px; }

/* ─────────────────────────────────────────────────────────
   Fulfillment Dispatch — modal içi atama satırı inputları
   ───────────────────────────────────────────────────────── */
.orbit-ff-center-sel { min-width: 180px; }
.orbit-ff-qty-input  { width: 80px; }

/* ─────────────────────────────────────────────────────────
   Tablo başlığı — dar numaralama sütunları
   ───────────────────────────────────────────────────────── */
.orbit-th-xs { width: 32px; }
.orbit-th-sm { width: 40px; }

/* ─────────────────────────────────────────────────────────
   Metin taşması — URL / long text hücreleri
   ───────────────────────────────────────────────────────── */
.orbit-word-break-all { word-break: break-all; }

/* ─────────────────────────────────────────────────────────
   Toast / Bildirim konteyneri — sabit z-index
   ───────────────────────────────────────────────────────── */
.orbit-toast-fixed { z-index: 9999; }

/* ─────────────────────────────────────────────────────────
   Campaign/Save & Reviews — form/tablo genişlikleri
   ───────────────────────────────────────────────────────── */
.orbit-input-sm   { max-width: 140px; }
.orbit-input-md   { max-width: 190px; }
.orbit-input-lg   { max-width: 200px; }
.orbit-input-xl   { max-width: 320px; }
.orbit-td-review  { max-width: 260px; }

/* ─────────────────────────────────────────────────────────
   Campaign/Save — checklist satır label
   ───────────────────────────────────────────────────────── */
.orbit-checklist-label { cursor: pointer; margin: 0; }

/* ─────────────────────────────────────────────────────────
   Campaign/Index — tarih sütunu minimum genişlik
   ───────────────────────────────────────────────────────── */
.orbit-campaign-td { min-width: 160px; }

/* ─────────────────────────────────────────────────────────
   Campaign/Index — ilerleme çubuğu yüksekliği
   ───────────────────────────────────────────────────────── */
.orbit-progress-xs { height: 5px; }

/* ─────────────────────────────────────────────────────────
   Campaign/Index — küçük tarih / çalışma zamanı metni
   ───────────────────────────────────────────────────────── */
.orbit-text-micro { font-size: 0.65rem; }
.orbit-text-tiny  { font-size: 0.70rem; }

/* ─────────────────────────────────────────────────────────
   Order/InvoiceInfo — fatura özet tablosu
   ───────────────────────────────────────────────────────── */
.orbit-invoice-summary-table { width: 280px; }

/* ─────────────────────────────────────────────────────────
   Order/InvoiceInfo — şirket logosu önizleme
   ───────────────────────────────────────────────────────── */
.orbit-company-logo { max-height: 44px; max-width: 180px; object-fit: contain; }

/* ─────────────────────────────────────────────────────────
   Order/InvoiceForm — fatura kalemi sütunları
   ───────────────────────────────────────────────────────── */
.orbit-th-inv-qty   { width: 80px; }
.orbit-th-inv-price { width: 120px; }
.orbit-th-inv-vat   { width: 90px; }
.orbit-th-inv-del   { width: 46px; }

/* ─────────────────────────────────────────────────────────
   Connection — sticky yan panel
   ───────────────────────────────────────────────────────── */
.orbit-sticky-80 { position: sticky; top: 80px; }

/* ─────────────────────────────────────────────────────────
   Connection/Detail — sekme çubuğu
   ───────────────────────────────────────────────────────── */
.orbit-conn-tabs     { flex-wrap: nowrap; }
.orbit-conn-tab-link { font-size: 0.82rem; }

/* ─────────────────────────────────────────────────────────
   Connection — piksel cinsinden küçük yazı boyutları
   ───────────────────────────────────────────────────────── */
.orbit-fs-9      { font-size: 9px; }
.orbit-fs-10     { font-size: 10px; }
.orbit-fs-11     { font-size: 11px; }
.orbit-fs-22     { font-size: 22px; }
.orbit-node-desc { font-size: 11.5px; line-height: 1.4; }

/* ─────────────────────────────────────────────────────────
   Connection/Index — durum nokta ikonu (badge içi)
   ───────────────────────────────────────────────────────── */
.orbit-status-dot { font-size: 6px; vertical-align: middle; }

/* ─────────────────────────────────────────────────────────
   SmartSales — ürün küçük resmi
   ───────────────────────────────────────────────────────── */
.orbit-thumbnail-sm {
    width: 36px;
    height: 36px;
    object-fit: cover;
}

.orbit-thumbnail-placeholder {
    width: 36px;
    height: 36px;
}

/* ─────────────────────────────────────────────────────────
   SmartSales/CriticalStock — stok düzenleme input
   ───────────────────────────────────────────────────────── */
.orbit-input-stock { width: 70px; }

/* ─────────────────────────────────────────────────────────
   Order/Index — pazaryeri emoji/bayrak inline span
   ───────────────────────────────────────────────────────── */
.orbit-emoji-inline { font-size: 15px; margin-right: 4px; }

/* ─────────────────────────────────────────────────────────
   Workflow/Index — sparkline yükleniyor alanı yüksekliği
   ───────────────────────────────────────────────────────── */
.orbit-spark-loading { height: 65px; }

/* ─────────────────────────────────────────────────────────
   Order/Customer — arama kutusu genişliği
   ───────────────────────────────────────────────────────── */
.orbit-search-md { width: 220px; }

/* ─────────────────────────────────────────────────────────
   Order/CustomerInfo — müşteri sipariş ilerleme çubuğu
   ───────────────────────────────────────────────────────── */
.orbit-progress-customer { height: 6px; }

/* ─────────────────────────────────────────────────────────
   Typeahead / autocomplete — açılır liste kutusu
   ───────────────────────────────────────────────────────── */
.orbit-typeahead-dropdown {
    z-index: 1070;
    max-height: 240px;
    overflow-y: auto;
    top: calc(100% + 4px);
}

/* ─────────────────────────────────────────────────────────
   Input group — arama kutusu max genişlik
   ───────────────────────────────────────────────────────── */
.orbit-input-group-search { max-width: 400px; }

/* ─────────────────────────────────────────────────────────
   Form switch — büyük boyut (toggle)
   ───────────────────────────────────────────────────────── */
.orbit-switch-lg { width: 2.5em; height: 1.3em; }

/* ─────────────────────────────────────────────────────────
   Tıklanabilir element
   ───────────────────────────────────────────────────────── */
.orbit-clickable { cursor: pointer; }

/* ─────────────────────────────────────────────────────────
   Form switch — orta boyut (toggle)
   ───────────────────────────────────────────────────────── */
.orbit-switch-md { width: 2.2em; height: 1.15em; }

/* ─────────────────────────────────────────────────────────
   İkon kare avatar — 40×40
   ───────────────────────────────────────────────────────── */
.orbit-icon-box-sm { width: 40px; height: 40px; flex-shrink: 0; }

/* ─────────────────────────────────────────────────────────
   Tablo hücresi — max-width kısıtlamaları
   ───────────────────────────────────────────────────────── */
.orbit-td-sm  { max-width: 180px; }
.orbit-td-md  { max-width: 220px; }
.orbit-td-lg  { max-width: 280px; }

/* ─────────────────────────────────────────────────────────
   Workflow — log panel sütun genişlikleri
   ───────────────────────────────────────────────────────── */
.orbit-log-level-sel  { width: 130px; }
.orbit-th-log-level   { width: 90px; }
.orbit-th-log-ts      { width: 130px; }

/* ─────────────────────────────────────────────────────────
   Swiper navigation — app.min.css remixicon ikonlarını
   kullanır; swiper-bundle.min.css geç yüklendiğinde
   font-family'yi swiper-icons'a döndürür ve ikon kare
   görünür. !important ile remixicon'u sabitleriz.
   ───────────────────────────────────────────────────────── */
.swiper-button-next::after,
.swiper-button-prev::after {
    font-family: remixicon !important;
}

.border-bottom-dashed {
    border-bottom-width: thin;
}

/* ─── Node Activity Modal ──────────────────────────────────────────────────── */
.copy-cell .copy-btn {
    opacity: 0;
    transition: opacity .15s;
}

.copy-cell:hover .copy-btn {
    opacity: 1;
}

.copy-btn.copied i {
    color: #198754;
}

select option, .form-select {
    background-color: var(--vz-modal-bg) !important;
    color: var(--vz-body-color) !important;
}
:root {
    --vz-modal-bg: var(--vz-secondary-bg);
}

/* ─────────────────────────────────────────────────────────
   Sayfa gövdesi — footer payı
   .footer position:absolute + 60px yüksekliğinde. .page-content
   alt dolgusu da tam 60px olduğu için son satır (özellikle
   h-100 kartlar, kendi margin-bottom'ını kaybettiğinden)
   footer'a sıfır boşlukla yapışıyordu. 1.5rem nefes payı ekler.
   ───────────────────────────────────────────────────────── */
.page-content {
    padding-bottom: calc(60px + 1.5rem);
}

/* ─────────────────────────────────────────────────────────
   Boş durum bloğu — Views/Shared/Sections/_EmptyState.cshtml
   Veri olmayan rapor kartlarında grafiğin yerini alır; yüksekliği
   grafikle eşleştiği için kart, satırdaki dolu kartla hizada kalır.
   ───────────────────────────────────────────────────────── */
.orbit-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1rem;
}

.orbit-empty-state-text {
    max-width: 320px;
}

.orbit-empty-h-sm { min-height: 230px; }
.orbit-empty-h-md { min-height: 360px; }
.orbit-empty-h-lg { min-height: 430px; }

/* ─────────────────────────────────────────────────────────
   Home/Index — Platform Dağılımı listesindeki pay rozeti
   ───────────────────────────────────────────────────────── */
.orbit-plat-share { min-width: 48px; }
