/* MOMO Courier standalone login page */
* { box-sizing: border-box; }
html, body { min-height:100%; margin:0; }
body { color:#17372a; font-family:"Poppins","Hind Siliguri",sans-serif; background:#123e2d; }
.momo-login-page {
    min-height:100vh; width:100%; padding:34px 20px;
    display:flex; align-items:center; justify-content:center;
    background:
      linear-gradient(125deg,rgba(8,48,32,.80),rgba(24,94,63,.52)),
      url("/public/assets/auth/background.jpg") center/cover no-repeat fixed;
}
.momo-login-card {
    width:min(1080px,100%); min-height:620px; display:grid;
    grid-template-columns:minmax(390px,470px) minmax(0,1fr);
    overflow:hidden; border:1px solid rgba(255,255,255,.45); border-radius:25px;
    background:rgba(255,255,255,.91); box-shadow:0 28px 85px rgba(0,25,14,.30);
    -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px);
}
.momo-login-form-panel { padding:42px 42px 27px; background:rgba(255,255,255,.94); }
.momo-login-logo { display:flex; justify-content:center; margin:0 auto 25px; }
.momo-login-logo img { display:block; width:auto; max-width:230px; max-height:72px; object-fit:contain; }
.momo-login-heading { text-align:center; margin-bottom:27px; }
.momo-login-eyebrow { color:#39815e; font-size:10px; font-weight:700; letter-spacing:.16em; }
.momo-login-heading h1 { margin:8px 0 6px; color:#164b34; font-size:25px; line-height:1.35; font-weight:700; }
.momo-login-heading p { margin:0; color:#78877f; font-size:12px; line-height:1.7; }
.momo-login-form { display:flex; flex-direction:column; gap:17px; }
.momo-login-field { display:flex; flex-direction:column; gap:7px; }
.momo-login-field label { color:#345744; font-size:12px; font-weight:600; }
.momo-login-field input {
    width:100%; min-height:49px; padding:12px 15px; border:1px solid rgba(24,94,63,.22);
    border-radius:12px; background:rgba(255,255,255,.88); color:#17372a;
    font:inherit; font-size:13px; outline:none; transition:.2s;
}
.momo-login-field input::placeholder { color:#93a49a; }
.momo-login-field input:focus { border-color:#185e3f; box-shadow:0 0 0 4px rgba(24,94,63,.11); background:#fff; }
.momo-login-field input.is-invalid { border-color:#c43d45; }
.momo-login-error { color:#b4232d; font-size:11px; }
.momo-login-options { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; font-size:11px; }
.momo-login-options a, .momo-login-footer a { color:#185e3f; font-weight:700; text-decoration:none; }
.momo-login-options a:hover, .momo-login-footer a:hover { text-decoration:underline; }
.momo-login-remember { display:flex; align-items:center; gap:7px; color:#617268; cursor:pointer; }
.momo-login-remember input { width:15px; height:15px; accent-color:#185e3f; }
.momo-login-submit {
    width:100%; min-height:49px; border:0; border-radius:12px;
    background:linear-gradient(135deg,#185e3f,#2d805b); color:#fff;
    font:inherit; font-size:14px; font-weight:700; cursor:pointer;
    box-shadow:0 9px 20px rgba(24,94,63,.22); transition:.2s;
}
.momo-login-submit:hover { transform:translateY(-1px); box-shadow:0 12px 24px rgba(24,94,63,.28); }
.momo-login-divider { display:flex; align-items:center; gap:12px; margin:20px 0 13px; color:#87958c; font-size:10px; letter-spacing:.1em; }
.momo-login-divider:before, .momo-login-divider:after { content:""; height:1px; flex:1; background:rgba(24,94,63,.17); }
.momo-login-social, .momo-login-demo { display:flex; gap:9px; flex-wrap:wrap; }
.momo-login-social-button {
    flex:1; min-width:90px; min-height:39px; padding:9px 12px; display:inline-flex;
    justify-content:center; align-items:center; border:1px solid rgba(24,94,63,.2);
    border-radius:10px; background:#fff; color:#185e3f; font:inherit;
    font-size:11px; font-weight:600; text-decoration:none; cursor:pointer;
}
.momo-login-social-button:hover { border-color:#185e3f; background:#f4faf6; color:#10452e; }
.momo-login-footer { display:flex; justify-content:center; gap:5px; flex-wrap:wrap; margin-top:24px; color:#7a8980; font-size:11px; }
.momo-login-caption { margin-top:17px; text-align:center; color:#a0aca5; font-size:9px; letter-spacing:.05em; }
.momo-login-caption span { color:#39815e; padding:0 4px; }
.momo-login-alert { margin:0 0 15px; padding:10px 12px; border-radius:10px; font-size:11px; }
.momo-login-alert.success { color:#185e3f; background:#edf7f0; border:1px solid #cce5d4; }
.momo-login-alert.error { color:#a3212a; background:#fff2f2; border:1px solid #f0c5c8; }
.momo-login-visual {
    min-width:0; padding:58px 42px 36px; display:flex; flex-direction:column;
    justify-content:space-between; color:#fff;
    background:linear-gradient(145deg,rgba(13,73,48,.96),rgba(24,94,63,.88));
}
.momo-login-visual-copy > span { color:#b8dfc8; font-size:9px; font-weight:700; letter-spacing:.15em; }
.momo-login-visual h2 { margin:17px 0 13px; color:#fff; font-size:32px; line-height:1.35; font-weight:700; }
.momo-login-visual p { max-width:340px; color:rgba(255,255,255,.78); font-size:12px; line-height:1.8; }
.momo-login-visual img { display:block; width:100%; max-height:290px; margin:24px auto 0; object-fit:contain; }
@media(max-width:850px) {
    .momo-login-page { padding:20px 12px; background-attachment:scroll; }
    .momo-login-card { width:min(480px,100%); min-height:0; display:block; }
    .momo-login-form-panel { padding:34px 30px 25px; }
    .momo-login-visual { display:none; }
}
@media(max-width:480px) {
    .momo-login-page { padding:10px 7px; }
    .momo-login-form-panel { padding:27px 19px 22px; }
    .momo-login-heading h1 { font-size:22px; }
    .momo-login-logo img { max-width:190px; max-height:65px; }
}
