/* =====================================================================
   Planox Panel — Premium Dark Theme (2026)
   html.px-dark altında kapsanmıştır. Marka-rengi BAĞIMSIZDIR:
   aksan rengi her panelin kendi --brand-primary değerinden gelir
   (super-admin: tema coral'ı; admin: firmanın white-label rengi).
   Yalnızca yüzey/zemin/metin/kenarlık + saf Bootstrap bileşenleri koyulaşır.
   ===================================================================== */

html.px-dark {
    /* --- Zeminler & yüzeyler --- */
    --bg-primary:   #0f1521;   /* sidebar, topbar, yüzey tabanı */
    --bg-secondary: #0a0e16;   /* sayfa zemini */
    --bg-elevated:  #141a28;
    --bg-subtle:    #131a28;   /* tablo başlığı, hover */
    --bg-muted:     #1a2233;
    --bg-surface:   #121826;   /* kartlar */

    /* --- Metin --- */
    --text-primary:   #eef1f6;
    --text-secondary: #aab3c2;
    --text-tertiary:  #7e8aa0;
    --text-muted:     #7e8aa0;
    --text-disabled:  #5a6678;
    --text-inverse:   #0a0e16;

    /* --- Kenarlıklar --- */
    --border-color:  rgba(255,255,255,0.09);
    --border-light:  rgba(255,255,255,0.06);
    --border-medium: rgba(255,255,255,0.10);
    --border-dark:   rgba(255,255,255,0.16);

    /* --- Etkileşim --- */
    --hover-bg:  rgba(255,255,255,0.05);
    --active-bg: rgba(255,255,255,0.08);

    /* --- Semantik (koyu uyumlu) --- */
    --success-bg: rgba(16,185,129,0.14); --success-light: rgba(16,185,129,0.14); --success-text:#6ee7b7; --success-border: rgba(16,185,129,0.32);
    --error-bg:   rgba(239,68,68,0.15);  --error-light:   rgba(239,68,68,0.15);  --error-text:#fca5a5;   --error-border:   rgba(239,68,68,0.32);
    --warning-bg: rgba(245,158,11,0.15); --warning-light: rgba(245,158,11,0.15); --warning-text:#fcd34d; --warning-border: rgba(245,158,11,0.32);
    --info-bg:    rgba(59,130,246,0.15); --info-light:    rgba(59,130,246,0.15); --info-text:#93c5fd;    --info-border:    rgba(59,130,246,0.32);

    /* --- Girdi --- */
    --input-bg: #0d121d; --input-border: rgba(255,255,255,0.10); --input-placeholder:#6c768a;

    /* --- Gölgeler (koyu zemine uygun) --- */
    --shadow-xs: 0 1px 2px rgba(0,0,0,0.4);
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.45);
    --shadow-md: 0 10px 28px rgba(0,0,0,0.5);
    --shadow-lg: 0 18px 44px rgba(0,0,0,0.55);
    --shadow-xl: 0 26px 60px rgba(0,0,0,0.6);
    --shadow-2xl: 0 34px 80px rgba(0,0,0,0.65);

    --navbar-bg: rgba(15,21,33,0.85);
    --sidebar-bg: #0f1521;
    --overlay-dark: rgba(0,0,0,0.65);

    color-scheme: dark;
    background: var(--bg-secondary);
}

/* color-scheme tüm tarayıcı UI'larını (scrollbar, autofill) koyuya çeker */
html.px-dark body { background: var(--bg-secondary); color: var(--text-primary); }

/* ====================== Saf Bootstrap bileşenleri ====================== */

/* Kartlar / yüzeyler */
html.px-dark .card,
html.px-dark .modal-content,
html.px-dark .offcanvas,
html.px-dark .list-group-item,
html.px-dark .accordion-item,
html.px-dark .accordion-button {
    background-color: #121826 !important;
    color: var(--text-primary);
    border-color: rgba(255,255,255,0.08) !important;
}
html.px-dark .accordion-button:not(.collapsed) { background-color:#161d2c !important; color:#fff !important; }
html.px-dark .accordion-button::after { filter: invert(0.8); }
html.px-dark .card-header,
html.px-dark .card-footer,
html.px-dark .modal-header,
html.px-dark .modal-footer { background-color:#121826 !important; border-color: rgba(255,255,255,0.08) !important; }

/* Genel açık-zemin yardımcıları */
html.px-dark .bg-white,
html.px-dark .bg-light { background-color:#121826 !important; }
html.px-dark .text-dark { color:#eef1f6 !important; }
html.px-dark .text-muted,
html.px-dark .text-secondary { color:#8893a4 !important; }
html.px-dark .text-black,
html.px-dark .text-body { color:#eef1f6 !important; }
html.px-dark .border { border-color: rgba(255,255,255,0.08) !important; }
html.px-dark .border-top,
html.px-dark .border-bottom,
html.px-dark .border-start,
html.px-dark .border-end { border-color: rgba(255,255,255,0.08) !important; }
html.px-dark hr { border-color: rgba(255,255,255,0.10); opacity:1; }

/* Tablolar */
html.px-dark .table {
    --bs-table-bg: transparent;
    --bs-table-color: #dfe4ec;
    --bs-table-border-color: rgba(255,255,255,0.08);
    --bs-table-striped-bg: rgba(255,255,255,0.022);
    --bs-table-striped-color: #eef1f6;
    --bs-table-hover-bg: rgba(255,255,255,0.045);
    --bs-table-hover-color: #ffffff;
    color: #dfe4ec;
    border-color: rgba(255,255,255,0.08);
}
html.px-dark .table > :not(caption) > * > * { border-color: rgba(255,255,255,0.07); }
html.px-dark .table thead th { color:#9aa4b4; border-color: rgba(255,255,255,0.10); }
html.px-dark .table-light {
    --bs-table-bg:#161d2c; --bs-table-color:#cdd4df; --bs-table-border-color:rgba(255,255,255,0.08);
    background-color:#161d2c !important; color:#cdd4df !important;
}
/* thead.table-light içindeki hücreler torun olduğu için descendant selektör şart */
html.px-dark .table-light th,
html.px-dark .table-light td,
html.px-dark .table > thead.table-light th { background-color:#161d2c !important; color:#cdd4df !important; }

/* Bağlamsal tablo satırları (table-danger/warning/success/info) — koyu zemine uyarlı, okunur metin
   Bootstrap bunları satırdaki CSS değişkenleriyle uygular; değişkenleri koyulaştırıyoruz. */
html.px-dark .table-danger {
    --bs-table-bg: rgba(239,68,68,0.15); --bs-table-color: #ffb4b4;
    --bs-table-border-color: rgba(239,68,68,0.28);
    --bs-table-hover-bg: rgba(239,68,68,0.26); --bs-table-hover-color: #ffffff;
    --bs-table-striped-bg: rgba(239,68,68,0.21); --bs-table-striped-color: #ffffff;
    color: #ffb4b4;
}
html.px-dark .table-warning {
    --bs-table-bg: rgba(245,158,11,0.15); --bs-table-color: #ffd98a;
    --bs-table-border-color: rgba(245,158,11,0.28);
    --bs-table-hover-bg: rgba(245,158,11,0.26); --bs-table-hover-color: #ffffff;
    --bs-table-striped-bg: rgba(245,158,11,0.21); --bs-table-striped-color: #ffffff;
    color: #ffd98a;
}
html.px-dark .table-success {
    --bs-table-bg: rgba(16,185,129,0.15); --bs-table-color: #8ff0c0;
    --bs-table-border-color: rgba(16,185,129,0.28);
    --bs-table-hover-bg: rgba(16,185,129,0.26); --bs-table-hover-color: #ffffff;
    --bs-table-striped-bg: rgba(16,185,129,0.21); --bs-table-striped-color: #ffffff;
    color: #8ff0c0;
}
html.px-dark .table-info {
    --bs-table-bg: rgba(59,130,246,0.15); --bs-table-color: #a9ccff;
    --bs-table-border-color: rgba(59,130,246,0.28);
    --bs-table-hover-bg: rgba(59,130,246,0.26); --bs-table-hover-color: #ffffff;
    --bs-table-striped-bg: rgba(59,130,246,0.21); --bs-table-striped-color: #ffffff;
    color: #a9ccff;
}
/* Bağlamsal satırlardaki hücre/strong metni de net olsun */
html.px-dark .table-danger > *, html.px-dark .table-warning > *,
html.px-dark .table-success > *, html.px-dark .table-info > * { color: inherit; }

/* AÇIK zeminli rozetlerde metin koyu kalsın (genel .text-dark override'ını rozetlerde geri al) */
html.px-dark .badge.text-dark,
html.px-dark .badge.bg-warning,
html.px-dark .badge.bg-light,
html.px-dark .badge.bg-info { color: #1f2430 !important; }

/* Formlar */
html.px-dark .form-control,
html.px-dark .form-select,
html.px-dark .input-group-text {
    background-color:#0d121d !important;
    border-color: rgba(255,255,255,0.10) !important;
    color:#f3f5f8 !important;
}
html.px-dark .input-group-text { background-color:#111726 !important; color:#aab3c2 !important; }
html.px-dark .form-control::placeholder { color:#6c768a !important; opacity:1; }
html.px-dark .form-control:focus,
html.px-dark .form-select:focus {
    background-color:#0f1521 !important;
    border-color: var(--brand-primary) !important;
    box-shadow: 0 0 0 4px var(--focus-ring) !important;
    color:#fff !important;
}
html.px-dark .form-select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab3c2' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat:no-repeat !important; background-position:right 0.85rem center !important; background-size:14px 11px !important;
}
html.px-dark .form-check-input { background-color:#0d121d; border-color: rgba(255,255,255,0.22); }
html.px-dark .form-check-input:checked { background-color: var(--brand-primary); border-color: var(--brand-primary); }
html.px-dark .form-control[readonly],
html.px-dark .form-control:disabled { background-color:#0b0f18 !important; color:#8893a4 !important; }

/* Dropdownlar */
html.px-dark .dropdown-menu {
    background-color:#141a28 !important;
    border-color: rgba(255,255,255,0.09) !important;
    box-shadow: var(--shadow-lg);
}
html.px-dark .dropdown-item { color:#dfe4ec; }
html.px-dark .dropdown-item:hover,
html.px-dark .dropdown-item:focus { background-color: rgba(255,255,255,0.06); color:#fff; }
html.px-dark .dropdown-divider { border-color: rgba(255,255,255,0.10); }

/* Modallar */
html.px-dark .modal-backdrop.show { opacity:0.72; }
html.px-dark .btn-close { filter: invert(1) grayscale(1) brightness(1.8); opacity:0.85; }

/* Sekmeler */
html.px-dark .nav-tabs { border-bottom-color: rgba(255,255,255,0.10); }
html.px-dark .nav-tabs .nav-link { color:#aab3c2; border:none; }
html.px-dark .nav-tabs .nav-link.active {
    color:#fff; background:transparent;
    border-bottom:2px solid var(--brand-primary);
}
html.px-dark .nav-pills .nav-link { color:#aab3c2; }
html.px-dark .nav-pills .nav-link.active { background: var(--brand-primary); color:#fff; }

/* Sayfalama */
html.px-dark .page-link { background:#121826; border-color: rgba(255,255,255,0.08); color:#dfe4ec; }
html.px-dark .page-link:hover { background: rgba(255,255,255,0.06); color:#fff; }
html.px-dark .page-item.active .page-link { background: var(--brand-primary); border-color: var(--brand-primary); color:#fff; }
html.px-dark .page-item.disabled .page-link { background:#0e1320; color:#5a6678; }

/* Bootstrap alert'leri (panellerde kullanılıyorsa) */
html.px-dark .alert-success { background: var(--success-bg) !important; color: var(--success-text) !important; border:1px solid var(--success-border) !important; }
html.px-dark .alert-danger  { background: var(--error-bg) !important;   color: var(--error-text) !important;   border:1px solid var(--error-border) !important; }
html.px-dark .alert-warning { background: var(--warning-bg) !important; color: var(--warning-text) !important; border:1px solid var(--warning-border) !important; }
html.px-dark .alert-info    { background: var(--info-bg) !important;    color: var(--info-text) !important;    border:1px solid var(--info-border) !important; }

/* Soft badge'ler (Bootstrap bg-*-subtle) */
html.px-dark .bg-success-subtle { background-color: var(--success-bg) !important; color: var(--success-text) !important; }
html.px-dark .bg-danger-subtle  { background-color: var(--error-bg) !important;   color: var(--error-text) !important; }
html.px-dark .bg-warning-subtle { background-color: var(--warning-bg) !important; color: var(--warning-text) !important; }
html.px-dark .bg-info-subtle    { background-color: var(--info-bg) !important;    color: var(--info-text) !important; }
html.px-dark .bg-secondary-subtle,
html.px-dark .bg-light-subtle   { background-color: rgba(255,255,255,0.06) !important; color:#cdd4df !important; }

/* Outline butonlar koyu zeminde okunur kalsın */
html.px-dark .btn-outline-secondary { color:#c3cad6; border-color: rgba(255,255,255,0.22); }
html.px-dark .btn-outline-secondary:hover { background: rgba(255,255,255,0.08); color:#fff; }
html.px-dark .btn-outline-dark { color:#dfe4ec; border-color: rgba(255,255,255,0.22); }
html.px-dark .btn-outline-dark:hover { background: rgba(255,255,255,0.08); color:#fff; border-color: rgba(255,255,255,0.3); }
html.px-dark .btn-light { background:#1a2233; border-color: rgba(255,255,255,0.1); color:#e6eaf1; }
html.px-dark .btn-light:hover { background:#222c40; color:#fff; }

/* Progress / spinner */
html.px-dark .progress { background-color: rgba(255,255,255,0.08); }

/* İnce scrollbar (webkit) */
html.px-dark ::-webkit-scrollbar { width:11px; height:11px; }
html.px-dark ::-webkit-scrollbar-track { background:#0a0e16; }
html.px-dark ::-webkit-scrollbar-thumb { background:#222c3d; border-radius:8px; border:2px solid #0a0e16; }
html.px-dark ::-webkit-scrollbar-thumb:hover { background:#2c3852; }

/* Form metin yardımcıları */
html.px-dark .form-text { color:#8893a4 !important; }
html.px-dark label { color:#cdd4df; }
