/* St. Stephen's College branding on top of Kaiadmin */
:root {
    --brand: #b5121b;        /* red from the college crest */
    --brand-dark: #8c0e15;
    --brand-navy: #1c2541;
}

.text-primary-brand { color: var(--brand-navy) !important; }
.bg-brand { background-color: var(--brand) !important; color: #fff !important; }

/* Logo in the white sidebar header */
.logo-header .brand-logo { max-height: 50px; width: auto; }
.logo-header { border-bottom: 1px solid #ebedf2; }
.sidebar[data-background-color="white"] .nav > .nav-item.active > a,
.sidebar[data-background-color="white"] .nav > .nav-item.active > a:hover { background: var(--brand) !important; }
.sidebar[data-background-color="white"] .nav.nav-secondary > .nav-item.active > a i,
.sidebar[data-background-color="white"] .nav.nav-secondary > .nav-item.active > a p,
.sidebar[data-background-color="white"] .nav.nav-secondary > .nav-item.active > a .caret { color: #fff !important; }
.sidebar .nav.nav-secondary > .nav-item.active > a:before { background: var(--brand-navy) !important; }
.sidebar .nav-collapse li.active a .sub-item { color: var(--brand); font-weight: 600; }
.menu-disabled { opacity: .45; cursor: not-allowed; }

.btn-brand { background: var(--brand); border-color: var(--brand); color: #fff; }
.btn-brand:hover, .btn-brand:focus { background: var(--brand-dark); border-color: var(--brand-dark); color: #fff; }

/* Auth pages (login, forgot / reset password) */
body.auth-page {
    min-height: 100vh;
    background: linear-gradient(135deg, var(--brand-navy) 0%, #3a506b 60%, var(--brand-dark) 100%);
}
.auth-wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}
.auth-card { width: 100%; max-width: 440px; border: 0; border-radius: 12px; box-shadow: 0 20px 50px rgba(0, 0, 0, .25); }
.auth-logo { max-width: 260px; width: 100%; height: auto; }
.auth-footer { color: rgba(255, 255, 255, .75); margin-top: 1rem; font-size: .85rem; }
.captcha-img { border: 1px solid #ebedf2; border-radius: 6px; height: 46px; }

/* Dashboard stat cards */
.card-stats .icon-big { font-size: 1.6rem; }

tr.row-link { cursor: pointer; }
