/*
 * Operativa Superadmin - custom.css
 * Marka paleti: koyu lacivert (#1E2A3A) + turuncu (#F39C12)
 */

:root {
    --op-primary:   #1E2A3A;
    --op-secondary: #F39C12;
    --op-accent:    #F39C12;
    --op-dark:      #16202C;
    --op-light:     #F4F6F9;
    --op-text:      #333333;
    --op-sidebar-w: 250px;
    --op-topbar-h:  58px;
}

* { box-sizing: border-box; }

body {
    background: var(--op-light);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: var(--op-text);
}

/* ---------- Marka yardımcı sınıfları ---------- */
.text-brand { color: var(--op-secondary) !important; }

.btn-brand {
    background-color: var(--op-secondary);
    border-color: var(--op-secondary);
    color: #fff;
}
.btn-brand:hover,
.btn-brand:focus {
    background-color: #e08e0b;
    border-color: #e08e0b;
    color: #fff;
}
.btn-brand:active { background-color: #c87f0a !important; border-color: #c87f0a !important; }

.bg-brand-subtle { background-color: rgba(243, 156, 18, 0.13) !important; }

/* ---------- Giriş ekranı ---------- */
.login-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--op-primary) 0%, var(--op-dark) 100%);
    padding: 1rem;
}
.login-card {
    width: 100%;
    max-width: 410px;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
    padding: 2.25rem 2rem;
}
.login-logo { max-height: 64px; margin-bottom: .5rem; }

/* ---------- Yerleşim ---------- */
.app-wrapper { min-height: 100vh; display: flex; flex-direction: column; }
.topbar {
    height: var(--op-topbar-h);
    background: var(--op-primary);
    color: #fff;
    position: sticky;
    top: 0;
    z-index: 1030;
}
.topbar-logo { max-height: 34px; }

.avatar {
    width: 34px; height: 34px;
    border-radius: 50%;
    background: var(--op-secondary);
    color: #fff;
    display: inline-flex; align-items: center; justify-content: center;
    font-weight: 700; font-size: .95rem;
}

.app-body { flex: 1; display: flex; align-items: stretch; }

/* ---------- Kenar çubuğu ---------- */
.sidebar {
    width: var(--op-sidebar-w);
    background: #fff;
    border-right: 1px solid #e5e9ef;
    flex-shrink: 0;
    display: flex; flex-direction: column;
    padding: .75rem 0;
}
.sidebar .nav-link {
    color: #43566b;
    border-radius: 8px;
    margin: 2px .6rem;
    padding: .55rem .85rem;
    font-weight: 500;
    display: flex; align-items: center;
    transition: background .15s, color .15s;
}
.sidebar .nav-link:hover { background: var(--op-light); color: var(--op-primary); }
.sidebar .nav-link.active { background: var(--op-secondary); color: #fff; }
.sidebar .nav-link.active .nav-icon { color: #fff; }
.nav-icon { width: 22px; text-align: center; margin-right: .55rem; color: var(--op-secondary); }
.sidebar-footer { margin-top: auto; }

/* ---------- İçerik ---------- */
.content { flex: 1; padding: 1.5rem; min-width: 0; }

/* ---------- İstatistik kartları ---------- */
.stat-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(30, 42, 58, 0.06);
    height: 100%;
}
.stat-icon {
    width: 52px; height: 52px;
    border-radius: 12px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 1.35rem;
    flex-shrink: 0;
}
.stat-value { font-size: 1.6rem; font-weight: 700; line-height: 1.1; color: var(--op-primary); }
.stat-label { font-size: .82rem; color: #7a8aa0; text-transform: uppercase; letter-spacing: .03em; }

/* ---------- Tablolar / kartlar ---------- */
.card { border-radius: 12px; }
.table > :not(caption) > * > * { padding: .7rem .9rem; }
code { color: var(--op-primary); }

a { color: var(--op-secondary); }
a:hover { color: #c87f0a; }

.form-check-input:checked { background-color: var(--op-secondary); border-color: var(--op-secondary); }
.form-control:focus, .form-select:focus {
    border-color: var(--op-secondary);
    box-shadow: 0 0 0 .2rem rgba(243, 156, 18, 0.22);
}

/* Bootstrap brand-subtle yardımcılarını turuncuya uydur (dashboard kartı) */
.bg-brand-subtle.text-brand i { color: var(--op-secondary); }

/* ---------- Mobil ---------- */
@media (max-width: 991.98px) {
    .sidebar {
        position: fixed;
        top: var(--op-topbar-h);
        left: 0; bottom: 0;
        z-index: 1040;
        transform: translateX(-100%);
        transition: transform .25s ease;
        box-shadow: 0 0 30px rgba(0, 0, 0, .15);
    }
    .sidebar.open { transform: translateX(0); }
}
