/* === Tema (light) === */
:root{
    color-scheme: light dark;
    --bg:#f5f6f8; --surface:#ffffff; --surface-2:#fafafa;
    --text:#1d2430; --muted:#6a7381;
    --primary:#2f4a5c; --primary-rgb:47,74,92; --border:#e6e8ec;
    --shadow:0 6px 16px rgba(0,0,0,.05); --radius:10px;

    /* Bootstrap uyumu */
    --bs-primary: var(--primary);
    --bs-primary-rgb: var(--primary-rgb);
    --bs-link-color: var(--primary);
    --bs-link-hover-color: var(--primary);
    --bs-focus-ring-color: rgba(var(--primary-rgb), .25);
    --bs-body-bg: var(--bg);
    --bs-body-color: var(--text);
    --bs-border-color: var(--border);
    --bs-list-group-border-color: var(--border);
    --bs-card-border-color: var(--border);
    --bs-heading-color: var(--text);
}

/* === Tema (dark) === */
:root[data-theme="dark"]{
    --bg:#121212; --surface:#1e1e1e; --surface-2:#191919;
    --text:#f1f1f1; --muted:#a4acb7;
    --primary:#4a90e2; --primary-rgb:74,144,226; --border:#2d2d2d;
    --shadow:0 8px 20px rgba(0,0,0,.35);

    --bs-primary: var(--primary);
    --bs-primary-rgb: var(--primary-rgb);
    --bs-link-color: var(--primary);
    --bs-link-hover-color: var(--primary);
    --bs-focus-ring-color: rgba(var(--primary-rgb), .28);
    --bs-body-bg: var(--bg);
    --bs-body-color: var(--text);
    --bs-border-color: var(--border);
    --bs-list-group-border-color: var(--border);
    --bs-card-border-color: var(--border);
    --bs-heading-color: var(--text);
}

/* ===== Global ===== */
html,body{height:100%}
body{
    background:var(--bg) !important; color:var(--text) !important; margin:0;
    display:flex; flex-direction:column;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    letter-spacing:.1px;
}

/* Navbar */
.navbar{ background:var(--surface); border-bottom:1px solid var(--border); padding:.8rem 0; }
.brand{ display:flex; align-items:center; gap:.6rem; font-weight:600; color:var(--text); text-decoration:none; }
.brand-badge{ width:30px;height:30px;border-radius:8px;border:1px solid var(--border);display:grid;place-items:center;font-size:1rem;color:var(--primary);background:transparent; }
.top-actions .btn{ border-radius:8px }

/* Sayfa / kartlar */
.page{ flex:1; padding:24px 0 }
.welcome-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:28px }
.welcome-card h1{ font-weight:600; font-size:clamp(1.5rem,1.1rem + 1vw,2rem); margin:0 }
.welcome-subtitle{ color:var(--muted); margin-top:.35rem; font-size:.95rem }
.actions{ margin-top:18px; display:flex; flex-wrap:wrap; gap:8px }
.btn-pill{ border-radius:8px; padding:.6rem 1rem; font-weight:600; display:inline-flex; align-items:center; gap:.5rem }

.kpi-card{ background:var(--surface); border:1px solid var(--border); border-radius:8px; padding:14px }
.kpi-label{ color:var(--muted); font-size:.88rem; font-weight:500 }
.kpi-value{ font-size:1.45rem; font-weight:700; letter-spacing:.2px }
.divider{ height:1px; background:var(--border); margin:22px 0 }
.meta{ color:var(--muted); font-size:.92rem }

/* Kart/Surface nötrleştirme (tüm sayfalar) */
.card, .list-group-item, .modal-content, .dropdown-menu, .offcanvas,
.toast, .popover, .table, .accordion-item{
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
    box-shadow: var(--shadow);
}
.accordion-button{
    background-color: var(--surface-2) !important;
    color: var(--text) !important;
    border-bottom:1px solid var(--border) !important;
}

/* Formlar */
.form-control, .form-select, .input-group-text, .form-check-input{
    background-color: var(--surface-2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.form-control::placeholder{ color: var(--muted); }
.form-check-input:checked{
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}

/* Butonlar */
.btn-primary{ background:var(--primary)!important; border-color:var(--primary)!important; }
.btn-primary:hover{ filter:brightness(1.06) }
.btn-outline-primary{ color:var(--primary)!important; border-color:var(--primary)!important; background:transparent!important; }
.btn-outline-primary:hover{ background:rgba(var(--primary-rgb),.06)!important; color:var(--primary)!important; }
.btn-outline-danger{ color:#ef4444; border-color:#ef4444; }
.btn-outline-danger:hover{ background:rgba(239,68,68,.12)!important; }

/* Tooltip */
.tooltip .tooltip-inner{ background:var(--surface-2); color:var(--text); border:1px solid var(--border); }
.tooltip .tooltip-arrow::before{ border-top-color:var(--surface-2) !important; }

/* === Bootstrap sınıf çakışmalarını temaya uyumlu hale getir === */
.bg-white, .bg-light, .table > :not(caption) > * > *{
    background-color: var(--surface) !important;
}
.text-dark, .text-body{ color: var(--text) !important; }
.border, .border-top, .border-end, .border-bottom, .border-start{
    border-color: var(--border) !important;
}

/* Küçük ekranlar */
@media (max-width:576px){ .btn-pill{ width:100%; justify-content:center } }

/* Muted bloklarda outline buton görünürlüğü */
.text-muted .btn-outline-primary{ color:var(--primary)!important; border-color:var(--primary)!important; }
.text-muted .btn-outline-primary:hover{ background:rgba(var(--primary-rgb),.06)!important; color:var(--primary)!important; }
/* === Kart içi tipografi görünürlük düzeltmeleri === */

/* Bootstrap'in ikincil metin rengi değişkenini temaya bağla */
:root{
    --bs-secondary-color: var(--muted);
    --bs-secondary-color-rgb: 154,163,178; /* var(--muted) için yaklaşık */
}
:root[data-theme="dark"]{
    --bs-secondary-color: var(--muted);
    --bs-secondary-color-rgb: 154,163,178;
}

/* Kartlardaki ana metin daima okunaklı olsun */
.card .card-body,
.card .card-title,
.card .card-text,
.list-group-item {
    color: var(--text) !important;
}

/* İkincil metinleri kontrollü soluk yap (ama görünür kalsın) */
.card .text-muted,
.card .card-subtitle,
.text-body-secondary,
.text-secondary,
.small,
.form-text {
    color: var(--muted) !important;
    opacity: 1 !important; /* Bootstrap bazı yerlerde opaklık düşürüyor */
}

/* Kart içinde istemeden koyu tema bozan utility’leri nötrleştir */
.card .text-dark,
.card .text-body {
    color: var(--text) !important;
}
