:root { --sumurca-primary: #c51b20; --sumurca-primary-dark: #a31318; --sumurca-navy: #071d3b; --sumurca-soft: #edf2f8; }
body { color: var(--sumurca-navy); background: #f5f7fa; }
.auth-page-wrapper.auth-bg-cover { flex-direction: column; padding: 40px 16px !important; background: radial-gradient(ellipse at top left, #dce5f1, transparent 65%), #f5f7fa; }
.auth-page-wrapper > .bg-overlay, .auth-one-bg > .bg-overlay { display: none; }
.auth-page-content { width: 100%; max-width: 1100px; padding: 0 !important; }
.auth-page-content .container { width: 100%; max-width: none; }
.auth-page-content .card { border: 1px solid #dce3ec; border-radius: 24px; box-shadow: 0 24px 70px #071d3b14; margin-bottom: 0; }
.auth-one-bg { background: linear-gradient(145deg, #071d3b, #103663); }
.brand-logo-box { display: inline-flex; padding: 0; background: none; border: 0; }
.brand-logo-box img { display: block; width: 150px; height: 150px; object-fit: contain; }
.auth-one-bg .text-white-50 { color: #c6d2e2 !important; }
.auth-one-bg .badge { font-weight: 500; padding: 8px 10px; }
.auth-page-content h1, .auth-page-content h4, .text-sumurca, .text-primary { color: var(--sumurca-navy) !important; }
.bg-sumurca-soft { background: var(--sumurca-soft); }
.btn-sumurca { --bs-btn-color: #fff; --bs-btn-bg: #c51b20; --bs-btn-border-color: #c51b20; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #a31318; --bs-btn-hover-border-color: #a31318; --bs-btn-active-color: #fff; --bs-btn-active-bg: #a31318; --bs-btn-active-border-color: #a31318; padding: 12px 18px; }
.form-control { min-height: 46px; border-color: #cbd5e1; border-radius: 8px; }
.btn-sumurca { color: #fff; background: #c51b20; border-color: #c51b20; }
.btn-sumurca:hover, .btn-sumurca:focus, .btn-sumurca:active { color: #fff; background: #a31318; border-color: #a31318; }
.form-control:focus { border-color: #103663; box-shadow: 0 0 0 3px #1036631a; }
.form-check-input:checked { background-color: #103663; border-color: #103663; }
.auth-page-content a:not(.brand-logo-box) { color: #103663; }
a:focus-visible, button:focus-visible { outline: 3px solid #c51b20; outline-offset: 3px; }
.password-addon, #togglePassword { z-index: 5; min-height: 46px; min-width: 44px; }
.alert { border-radius: 10px; line-height: 1.6; }
.alert-success { color: #175239; background: #edf8f2; border: 1px solid #bddcca !important; }
.alert-danger { color: #8e181d; background: #fff1f2; border: 1px solid #ecc8cb !important; }
.auth-page-wrapper .footer { position: static; width: 100%; height: auto; padding: 24px 0 0; background: transparent; }
.auth-page-wrapper .footer .text-white-50 { color: #667085 !important; }
@media (max-width: 991.98px) {
    .auth-page-wrapper.auth-bg-cover { padding: 20px 0 !important; }
    .brand-logo-box img { width: 96px; height: 96px; }
    .auth-one-bg .mt-auto { display: none; }
    .auth-one-bg .mb-4 { margin-bottom: 0 !important; }
    .auth-one-bg { text-align: center; }
    .auth-page-content .card { border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
