:root {
    --sp-navy: #1a2b4a; --sp-navy-dark: #111d33;
    --sp-gold: #c9a84c; --sp-gold-light: #e2c472;
    --sp-light-bg: #f0f4fa;
}
body {
    font-family: 'Inter', sans-serif;
    background: linear-gradient(135deg, var(--sp-navy-dark) 0%, var(--sp-navy) 50%, #243561 100%);
    min-height: 100vh; display: flex; align-items: center; justify-content: center;
    padding: 1rem;
}
.login-wrapper { width: 100%; max-width: 420px; }

.login-emblem {
    text-align: center; margin-bottom: 2rem;
}
.emblem-circle {
    width: 80px; height: 80px;
    background: rgba(201,168,76,.15);
    border: 2px solid var(--sp-gold);
    border-radius: 50%;
    margin: 0 auto .75rem;
    display: flex; align-items: center; justify-content: center;
    font-size: 2rem; color: var(--sp-gold);
}
.login-title { color: #fff; font-size: 1.3rem; font-weight: 700; margin: 0; }
.login-sub   { color: rgba(255,255,255,.55); font-size: .8rem; }
.gold-line   { width: 50px; height: 2px; background: var(--sp-gold); margin: .6rem auto; border-radius: 2px; }

.login-card {
    background: #fff;
    border-radius: 16px;
    padding: 2rem 2rem 1.5rem;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
}
.login-card .card-title { font-weight: 700; color: var(--sp-navy); font-size: 1.05rem; }
.form-label { font-weight: 500; font-size: .82rem; color: #374151; }
.form-control {
    font-size: .875rem; border-radius: 8px;
    border: 1px solid #d1d5db; padding: .55rem .85rem;
}
.form-control:focus {
    border-color: var(--sp-navy);
    box-shadow: 0 0 0 .2rem rgba(26,43,74,.15);
}
.input-group-text { background: var(--sp-light-bg); border-color: #d1d5db; color: var(--sp-navy); }
.btn-login {
    background: var(--sp-navy); color: #fff; border: none;
    border-radius: 8px; font-weight: 600; padding: .6rem;
    width: 100%; transition: background .2s;
}
.btn-login:hover { background: #243561; color: #fff; }
.alert { border-radius: 8px; font-size: .82rem; }
.login-footer { text-align: center; color: rgba(255,255,255,.4); font-size: .72rem; margin-top: 1.25rem; }
