/* Focused sign-in page, using the existing NAZAFA palette. */
.nazafa-brand.nazafa-login.minimal-login { min-height: 100vh; min-height: 100dvh; padding: 32px 20px; background: radial-gradient(ellipse at 50% 15%, #ffffff 0%, #f5f7f9 55%, #edf1f4 100%); }
.minimal-login .login-wrapper { max-width: 440px; gap: 0; }
.nazafa-brand.nazafa-login.minimal-login .login-container { max-width: none; border: 1px solid #dfe6eb; border-radius: 22px; box-shadow: 0 2px 6px #20313f04, 0 16px 48px #20313f0c, 0 40px 90px #20313f08; animation: none; }
.nazafa-brand.nazafa-login.minimal-login .login-header { padding: 40px 36px 0; background: white; color: #20313f; text-align: left; }
.minimal-login .login-header::before { display: none; }
.nazafa-brand.nazafa-login.minimal-login .login-header .login-brand-logo { width: 168px; margin: 0 0 26px; padding: 0; border-radius: 0; }
.minimal-login .login-header h1 { font-size: 25px; font-weight: 650; letter-spacing: -.5px; margin-bottom: 6px; }
.minimal-login .login-header p { font-size: 14px; color: #607080; }
.minimal-login .login-form { padding: 30px 36px 32px; }
.minimal-login .login-form .form-group { margin-bottom: 20px; }
.minimal-login .login-form .form-group label { font-size: 13px; font-weight: 600; margin-bottom: 8px; }
.minimal-login .login-form .form-group input { min-height: 48px; padding: 12px 14px; background: #fafbfc; border: 1px solid #d7dfe6; border-radius: 10px; font-size: 14px; box-shadow: inset 0 1px 2px #20313f03; transition: border-color .18s ease, box-shadow .18s ease, background .18s ease; }
.minimal-login .login-form #password { padding-right: 48px; }
.minimal-login .login-btn { min-height: 48px; text-transform: none; letter-spacing: 0; font-size: 14px; border-radius: 8px; }
.minimal-login .footer-text { margin-top: 24px; padding-top: 20px; border-top: 1px solid #e5eaf0; text-align: center; font-size: 12px; }
.minimal-login .footer-text a { color: #607080; text-decoration: none; }
.minimal-login .footer-text a:hover { color: #981d29; text-decoration: underline; }
@media (max-width: 480px) {
    .nazafa-brand.nazafa-login.minimal-login { padding: 20px 16px; }
    .nazafa-brand.nazafa-login.minimal-login .login-header { padding: 28px 24px 0; }
    .minimal-login .login-form { padding: 24px; }
}

/* Restrained depth and interaction polish. */
.nazafa-brand.nazafa-login.minimal-login .login-container { position: relative; }
.minimal-login .login-container::before { content: ""; position: absolute; inset: 0 24% auto; height: 2px; background: linear-gradient(90deg, transparent, #dc293d, transparent); opacity: .65; }
.minimal-login .login-header .logo-icon { display: block; }
.minimal-login .login-form .form-group input:hover { border-color: #b6c4cd; }
.minimal-login .login-form .form-group input:focus { background: white; border-color: #dc293d; box-shadow: 0 0 0 3px #dc293d0d, 0 3px 10px #20313f05; outline: none; }
.nazafa-brand.nazafa-login.minimal-login .login-btn { background: linear-gradient(180deg, #e02c40, #cf2035); border: 1px solid #c52033; box-shadow: 0 2px 4px #981d2914, 0 6px 16px #981d2918, inset 0 1px 0 #ffffff25; transition: background .18s ease, box-shadow .18s ease, transform .18s ease; }
.nazafa-brand.nazafa-login.minimal-login .login-btn:hover { background: linear-gradient(180deg, #d22538, #b91d2e); box-shadow: 0 4px 12px #981d2920; transform: translateY(-1px); }
.nazafa-brand.nazafa-login.minimal-login .login-btn:active { transform: translateY(0); box-shadow: 0 2px 4px #981d2910; }
.minimal-login .login-btn svg { width: 17px; height: 17px; margin-left: 6px; }
.minimal-login .toggle-password { border: 0; background: none; padding: 6px; border-radius: 6px; color: #607080; }
.minimal-login .toggle-password:hover { background: #edf1f4; }
.minimal-login .toggle-password svg { opacity: .7 !important; }
.minimal-login .toggle-password:focus-visible { outline: 2px solid #dc293d; outline-offset: 2px; }
.minimal-login .error-message { border-radius: 10px; font-size: 13px; }
@media (prefers-reduced-motion: reduce) {
    .minimal-login .login-btn, .minimal-login .login-form .form-group input { transition: none; }
    .nazafa-brand.nazafa-login.minimal-login .login-btn:hover { transform: none; }
}
/* Subtle texture and brand tint inside the sign-in card. */
.nazafa-brand.nazafa-login.minimal-login .login-container {
    background-color: #fff;
    background-image:
        radial-gradient(ellipse at 100% 0%, #dc293d09, transparent 58%),
        radial-gradient(ellipse at 0% 100%, #20313f08, transparent 58%),
        radial-gradient(#20313f0a .65px, transparent .65px);
    background-size: auto, auto, 16px 16px;
}
.nazafa-brand.nazafa-login.minimal-login .login-header { background: transparent; }
.minimal-login .login-form { background: transparent; }
.minimal-login .login-header .login-brand-logo { mix-blend-mode: multiply; }
.minimal-login .login-form .form-group input { background: #ffffffd9; }
/* Architectural brand shapes fill the surrounding canvas without adding text. */
.nazafa-brand.nazafa-login.minimal-login {
    isolation: isolate;
    background:
        radial-gradient(ellipse at 17% 22%, #dc293d14, transparent 42%),
        radial-gradient(ellipse at 85% 78%, #20313f20, transparent 48%),
        linear-gradient(135deg, #f9fafb, #edf1f4);
}
.nazafa-brand.nazafa-login.minimal-login::before,
.nazafa-brand.nazafa-login.minimal-login::after {
    content: ""; position: fixed; z-index: -1; pointer-events: none;
    width: clamp(260px, 38vw, 700px); height: clamp(420px, 70vh, 860px);
    transform: skewY(-38deg); border-radius: 28px;
}
.nazafa-brand.nazafa-login.minimal-login::before {
    left: -15vw; top: -24vh;
    background: linear-gradient(145deg, #20313f26, #20313f0c);
    border: 1px solid #20313f16;
    box-shadow: 80px 110px 0 -22px #20313f0c;
}
.nazafa-brand.nazafa-login.minimal-login::after {
    right: -16vw; bottom: -25vh;
    background: linear-gradient(145deg, #dc293d1a, #981d292c);
    border: 1px solid #dc293d20;
    box-shadow: -70px -100px 0 -20px #dc293d0c;
}
.minimal-login .login-wrapper { position: relative; z-index: 1; }
@media (max-width: 600px) {
    .nazafa-brand.nazafa-login.minimal-login::before { left: -220px; top: -240px; opacity: .8; }
    .nazafa-brand.nazafa-login.minimal-login::after { right: -230px; bottom: -240px; opacity: .8; }
}
/* Center the brand and welcome as one balanced header. */
.nazafa-brand.nazafa-login.minimal-login .login-header { text-align: center; }
.nazafa-brand.nazafa-login.minimal-login .login-header .login-brand-logo { margin: 0 auto 24px; }
.minimal-login .login-header h1 { margin-bottom: 8px; }
.minimal-login .login-header p { margin: 0; }