/* Pharmacy App login / auth shell. Loaded last so it wins over minimal.css. */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap");

body.login-page.auth-shell{
    min-height:100vh !important;
    margin:0;
    font-family:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
    background:
        radial-gradient(1200px 700px at -8% -10%, rgba(45,212,191,.28), transparent 55%),
        radial-gradient(900px 520px at 110% 8%, rgba(15,118,110,.22), transparent 50%),
        linear-gradient(160deg,#f3faf8 0%,#e7f4f1 42%,#f7fbfa 100%) !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    color:#14201e;
}

.auth-shell-inner{
    width:100%;
    max-width:480px;
    margin:0 auto;
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px 16px 56px;
}

.auth-panel{
    display:flex;
    justify-content:center;
    width:100%;
}

body.login-page.auth-shell .login-container{
    width:100%;
    max-width:440px !important;
    padding:0 !important;
    margin:0 auto;
}

body.login-page.auth-shell .login-card{
    background:#fff !important;
    border:1px solid #d5e3e0 !important;
    border-radius:18px !important;
    padding:28px 26px 24px !important;
    box-shadow:0 18px 40px rgba(15,61,56,.08);
}

body.login-page.auth-shell .login-header{
    text-align:left;
    margin-bottom:8px;
}

body.login-page.auth-shell .login-header .logo{
    width:48px !important;
    height:48px !important;
    margin:0 0 14px !important;
    border-radius:14px !important;
    background:linear-gradient(160deg,#0f766e,#14b8a6) !important;
    color:#fff !important;
    font-size:1.15rem !important;
}

body.login-page.auth-shell .login-header h1,
body.login-page.auth-shell .login-header h2,
body.login-page.auth-shell .login-header h3{
    margin:0 0 4px !important;
    font-size:1.28rem !important;
    font-weight:750 !important;
    color:#14201e !important;
}

body.login-page.auth-shell .login-header p{
    margin:0 0 16px !important;
    color:#5d6f6b !important;
    font-size:.86rem !important;
}

body.login-page.auth-shell .login-form .form-group{
    margin-bottom:14px !important;
}

body.login-page.auth-shell .login-form label,
body.login-page.auth-shell .login-form .form-label{
    display:block;
    font-size:.78rem;
    font-weight:700;
    color:#3d524e;
    margin-bottom:6px;
}

body.login-page.auth-shell .login-form .input-group-text{
    background:#f4faf8 !important;
    border-color:#c9d8d4 !important;
    color:#0f766e !important;
    min-width:44px;
    justify-content:center;
}

body.login-page.auth-shell .login-form .form-control{
    border-color:#c9d8d4 !important;
    min-height:44px;
    font-size:.92rem;
    box-shadow:none !important;
}

body.login-page.auth-shell .login-form .form-control:focus{
    border-color:#0f766e !important;
    box-shadow:0 0 0 .2rem rgba(15,118,110,.16) !important;
}

body.login-page.auth-shell #togglePassword{
    border-color:#c9d8d4 !important;
    color:#5d6f6b;
    background:#fff;
}

body.login-page.auth-shell .form-check-input:checked{
    background-color:#0f766e;
    border-color:#0f766e;
}

body.login-page.auth-shell .btn-login,
body.login-page.auth-shell .btn-primary.btn-login{
    background:#0f766e !important;
    border:0 !important;
    min-height:46px;
    border-radius:10px;
    font-weight:700;
    letter-spacing:.01em;
    margin-top:8px !important;
}

body.login-page.auth-shell .btn-login:hover{
    background:#115e59 !important;
}

body.login-page.auth-shell #loginAlert.alert-danger{
    background:#fef2f2 !important;
    border:1px solid #fecaca !important;
    color:#b42318 !important;
    border-radius:10px;
    font-size:.84rem;
}

body.login-page.auth-shell a{
    color:#0f766e !important;
}

body.login-page.auth-shell .developer-footer{
    left:0 !important;
    background:rgba(255,255,255,.94);
    border-top-color:#d7e5e2;
}

@media (max-width:575.98px){
    body.login-page.auth-shell .login-card{
        padding:22px 16px 18px !important;
        border-radius:14px !important;
    }
}
