:root{
    --mv-brand:#172554;
    --mv-brand-2:#1d4ed8;
    --mv-bg:#f4f7fb;
    --mv-surface:#ffffff;
    --mv-soft:#f8fafc;
    --mv-line:#e5eaf2;
    --mv-text:#172033;
    --mv-muted:#64748b;
}

[data-bs-theme="dark"]{
    --mv-brand:#080b12;
    --mv-brand-2:#3b82f6;
    --mv-bg:#07090d;
    --mv-surface:#0d1117;
    --mv-soft:#151a21;
    --mv-line:#2a3038;
    --mv-text:#e6edf3;
    --mv-muted:#8b949e;
    --bs-body-bg:var(--mv-bg);
    --bs-body-color:var(--mv-text);
    --bs-border-color:var(--mv-line);
    --bs-secondary-bg:var(--mv-soft);
    --bs-tertiary-bg:var(--mv-soft);
    --bs-secondary-color:var(--mv-muted);
}

html,body{min-height:100%;}
body{
    margin:0;
    background:var(--mv-bg);
    color:var(--mv-text);
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    overflow-x:hidden;
}

.app-shell{min-height:100vh;display:flex;background:var(--mv-bg);}
.sidebar{
    position:fixed;
    inset:0 auto 0 0;
    width:270px;
    height:100vh;
    overflow-y:auto;
    background:linear-gradient(180deg,var(--mv-brand),#0f172a);
    padding:18px 14px 28px;
    z-index:1040;
}
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 8px 16px;}
.sidebar-brand-mark{width:42px;height:42px;border-radius:13px;background:#fff;color:#1d4ed8;display:grid;place-items:center;font-weight:800;font-size:1.05rem;}
.sidebar-brand small{font-size:.72rem;}
.sidebar .nav-section{font-size:.67rem;letter-spacing:.12em;color:#94a3b8;margin:20px 9px 7px;text-transform:uppercase;font-weight:700;}
.sidebar .nav-link{color:#cbd5e1;border-radius:10px;padding:9px 11px;margin:2px 0;transition:.15s ease;display:flex;align-items:center;gap:9px;}
.sidebar .nav-link:hover,.sidebar .nav-link.active{background:rgba(255,255,255,.12);color:#fff;transform:none;}
.sidebar .nav-link.active{box-shadow:inset 3px 0 #60a5fa;}
.sidebar .nav-link i{margin:0;width:19px;text-align:center;}

.main-content{margin-left:270px;min-height:100vh;width:calc(100% - 270px);background:var(--mv-bg);}
.topbar{position:sticky;top:0;z-index:1030;background:var(--mv-surface);border-bottom:1px solid var(--mv-line);}
.page-container{background:var(--mv-bg);min-height:calc(100vh - 70px);}
.page-heading{font-weight:750;}

.card,.filter-card,.surface-card{background:var(--mv-surface);border-color:var(--mv-line)!important;color:var(--mv-text);}
.card-soft{background:var(--mv-surface);border:1px solid var(--mv-line);border-radius:17px;box-shadow:0 8px 28px rgba(15,23,42,.05);}
.filter-card{border:1px solid var(--mv-line);border-radius:16px;}
.metric{font-size:1.85rem;font-weight:760;line-height:1.1;}
.text-muted{color:var(--mv-muted)!important;}
.table{--bs-table-bg:transparent;--bs-table-color:var(--mv-text);--bs-table-border-color:var(--mv-line);}
.table thead th{font-size:.76rem;text-transform:uppercase;letter-spacing:.035em;color:var(--mv-muted);background:var(--mv-soft);white-space:nowrap;}
.table-hover>tbody>tr:hover>*{--bs-table-bg-state:rgba(100,116,139,.07);}
.badge.text-bg-light{color:var(--mv-text)!important;background:var(--mv-soft)!important;}
.form-control,.form-select,.input-group-text{background-color:var(--mv-surface);color:var(--mv-text);border-color:var(--mv-line);}
.form-control:focus,.form-select:focus{background-color:var(--mv-surface);color:var(--mv-text);}
.form-control::placeholder{color:var(--mv-muted);opacity:.75;}
.card-header,.card-footer{border-color:var(--mv-line);}
.nav-tabs{border-color:var(--mv-line);}
.nav-tabs .nav-link{color:var(--mv-muted);}
.nav-tabs .nav-link.active{color:var(--mv-text);background:var(--mv-surface);border-color:var(--mv-line) var(--mv-line) var(--mv-surface);}
.pagination{--bs-pagination-bg:var(--mv-surface);--bs-pagination-border-color:var(--mv-line);}
.theme-toggle{min-width:84px;}
.font-monospace{letter-spacing:.01em;}

[data-bs-theme="dark"] body,
[data-bs-theme="dark"] .app-shell,
[data-bs-theme="dark"] .main-content,
[data-bs-theme="dark"] .page-container,
[data-bs-theme="dark"] .container,
[data-bs-theme="dark"] .container-fluid{background-color:var(--mv-bg)!important;color:var(--mv-text);}
[data-bs-theme="dark"] .topbar,
[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .card-body,
[data-bs-theme="dark"] .card-header,
[data-bs-theme="dark"] .card-footer,
[data-bs-theme="dark"] .filter-card,
[data-bs-theme="dark"] .surface-card,
[data-bs-theme="dark"] .modal-content,
[data-bs-theme="dark"] .dropdown-menu,
[data-bs-theme="dark"] .list-group-item,
[data-bs-theme="dark"] .accordion-item,
[data-bs-theme="dark"] .accordion-button,
[data-bs-theme="dark"] .bg-white,
[data-bs-theme="dark"] .bg-light{
    background-color:var(--mv-surface)!important;
    color:var(--mv-text)!important;
    border-color:var(--mv-line)!important;
}
[data-bs-theme="dark"] .table-light{--bs-table-bg:var(--mv-soft);--bs-table-color:var(--mv-text);--bs-table-border-color:var(--mv-line);}
[data-bs-theme="dark"] .alert-light{background:var(--mv-soft);color:var(--mv-text);border-color:var(--mv-line);}
[data-bs-theme="dark"] .btn-outline-secondary{--bs-btn-color:#c9d1d9;--bs-btn-border-color:#484f58;--bs-btn-hover-bg:#21262d;--bs-btn-hover-border-color:#8b949e;}
[data-bs-theme="dark"] .card-soft{box-shadow:0 8px 30px rgba(0,0,0,.2);}
[data-bs-theme="dark"] code{color:#f0abfc;}

.mobile-nav-toggle{display:none;}
@media(max-width:991.98px){
    .sidebar{transform:translateX(-100%);transition:transform .2s ease;width:270px;box-shadow:12px 0 40px rgba(0,0,0,.25);}
    body.sidebar-open .sidebar{transform:translateX(0);}
    .main-content{margin-left:0;width:100%;}
    .mobile-nav-toggle{display:inline-flex;}
}
