/* Shared sign-in presentation. Authentication actions and conditional fields remain server controlled. */
body.lms-login { margin:0;background:#f5f7fb!important;background-image:none!important;color:#25354e;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;text-align:start; }
body.lms-login * { box-sizing:border-box; }
body.lms-login a { color:var(--lms-login-link,#2448ab); }
body.lms-login .lms-login-masthead { display:flex;align-items:center;gap:12px;max-width:1200px;margin:auto;padding:28px 30px;color:#16233f; }
body.lms-login .lms-login-platform-mark { width:38px;height:38px;display:grid;place-items:center;background:#16233f;color:#fff;border-radius:8px;font-size:20px;font-weight:700; }
body.lms-login .lms-login-platform-name { display:block;font-size:16px;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere; }
body.lms-login .lms-login-platform-note { display:block;font-size:12px;color:#68758d; }
body.lms-login .top-content { padding:10px 30px 45px;background:none!important; }
body.lms-login .inner-bg { padding:0;background:none!important;min-height:0; }
body.lms-login .container-fluid { width:100%;max-width:1140px;padding:0;margin:auto; }
body.lms-login .container-fluid>.row { margin:0; }
body.lms-login .bgoffsetbg,body.lms-login .bgoffsetbgno { background:#fff!important;background-image:none!important; }
body.lms-login .bgoffsetbg { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:stretch;border:1px solid #dce3ee;border-radius:16px;overflow:hidden;box-shadow:none; }
body.lms-login .bgoffsetbg>.col-lg-4 { grid-column:2;grid-row:1;float:none;width:auto;padding:0!important;min-width:0; }
body.lms-login .bgoffsetbg>.col-lg-8 { grid-column:1;grid-row:1;float:none;width:auto;padding:0!important;min-width:0;background:#edf2f9!important; }
body.lms-login .loginbg { background:#fff!important;background-image:none!important;padding:36px 42px;color:#25354e;min-height:100%;max-width:none;margin:0;border-radius:0;box-shadow:none; }
body.lms-login .form-top { background:#fff!important;background-image:none!important;border:0;border-radius:0;padding:0;margin:0 0 20px;text-align:start;overflow:visible; }
body.lms-login .form-top-left.logowidth { float:none;width:auto;max-width:230px;display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;background:#16233f;border-radius:8px; }
body.lms-login .form-top-left.logowidth img { display:block;width:auto;height:auto;max-width:100%;max-height:58px;object-fit:contain;margin:0; }
body.lms-login .form-bottom { border:0;border-radius:0;background:#fff!important;background-image:none!important;padding:0;color:#25354e;text-align:start; }
body.lms-login .lms-login-institution { margin-bottom:20px; }
body.lms-login .lms-login-institution span { display:block;text-transform:uppercase;font-size:11px;letter-spacing:.1em;font-weight:600;color:#67758d; }
body.lms-login .lms-login-institution strong { display:block;font-size:14px;font-weight:600;color:#33445f;overflow-wrap:anywhere; }
body.lms-login .form-bottom>h3 { color:#192945!important;font-weight:700;font-size:27px;line-height:1.25;margin:0 0 8px; }
body.lms-login .lms-login-form-note { color:#67758d;font-size:14px;line-height:1.5;margin:0 0 25px; }
body.lms-login .form-bottom .font-white { color:#33445f!important; }
body.lms-login .form-bottom form { margin:0; }
body.lms-login .form-group { margin-bottom:18px; }
body.lms-login .lms-login-field-label { display:block;color:#33445f;font-size:14px;font-weight:600;margin:0 0 7px; }
body.lms-login input[type="text"],body.lms-login input[type="password"] { width:100%;height:48px;padding:11px 42px 11px 13px;border:1px solid #cbd5e3;border-radius:7px;background:#fff!important;background-image:none!important;color:#23304a!important;font:400 16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;box-shadow:none!important; }
body.lms-login input::placeholder { color:#7e8a9d!important;opacity:1; }
body.lms-login input:focus { border-color:#4265cb!important;outline:2px solid #c5d3ff!important;outline-offset:1px; }
body.lms-login .form-group.has-feedback>.form-control-feedback { color:#78869c;top:34px;height:48px;line-height:48px;pointer-events:none; }
body.lms-login .form-group.has-feedback.row { margin-left:-5px;margin-right:-5px;display:flex;align-items:center;flex-wrap:wrap;row-gap:10px; }
body.lms-login .form-group.has-feedback.row>div { padding-left:5px;padding-right:5px;min-width:0; }
body.lms-login .form-group.has-feedback.row input { padding-right:12px; }
body.lms-login #captcha_image { display:inline-block;max-width:100%;vertical-align:middle; }
body.lms-login #captcha_image img { max-width:100%;height:auto; }
body.lms-login .catpcha { color:#2e50b9;padding:12px 8px;cursor:pointer; }
body.lms-login .form-bottom button[type="submit"] { width:100%;min-height:48px;height:auto;padding:12px 18px;background:var(--lms-login-accent,#2563eb)!important;background-image:none!important;color:var(--lms-login-accent-text,#fff)!important;font-size:16px;font-weight:600;line-height:1.5;border:1px solid var(--lms-login-accent,#2563eb)!important;border-radius:7px;box-shadow:none;text-shadow:none; }
body.lms-login .form-bottom button[type="submit"]:hover { text-decoration:underline; }
body.lms-login .forgot { display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--lms-login-link,#2448ab)!important;margin-top:16px;text-decoration:none; }
body.lms-login .forgot:hover { text-decoration:underline; }
body.lms-login .form-bottom>p { margin:0; }
body.lms-login .login-switcher { margin-top:24px!important;padding-top:20px!important;border-top:1px solid #e0e6ef!important; }
body.lms-login .login-switcher>p { font-size:12px;color:#617089!important; }
body.lms-login .login-switcher .btn-group { display:flex;width:100%;gap:8px;margin:0 0 8px!important; }
body.lms-login .login-switcher .btn { flex:1;display:flex;align-items:center;justify-content:center;gap:6px;white-space:normal;min-height:42px;border-radius:7px!important;border:1px solid #d4ddeb!important;background:#fff!important;background-image:none!important;color:#4b5f7a!important;font-size:12px;line-height:1.4;padding:10px 8px;font-weight:500;box-shadow:none!important;text-shadow:none; }
body.lms-login .login-switcher .btn.active { border-color:#aebee9!important;background:#edf2ff!important;color:#2448ab!important; }
body.lms-login .alert { font-size:14px;line-height:1.5;padding:12px 14px;border-radius:7px;margin:15px 0;border:1px solid #efb9b5; }
body.lms-login .alert-danger { background:#fff0ef;color:#8e2622; }
body.lms-login .alert-success { border-color:#b6d8c6;background:#eef8f1;color:#1c603a; }
body.lms-login .text-danger { display:block;color:#a32d2d;font-size:13px;line-height:1.4;margin-top:4px; }
body.lms-login .nopadding-2>.d-flex { background:#edf2f9!important;background-image:none!important;height:auto;min-height:100%;display:block!important;padding:45px 42px; }
body.lms-login .bg-shadow-remove { background:none!important;background-image:none!important;padding:0;width:100%; }
body.lms-login .text-wrap::after,body.lms-login .bg-shadow-remove::after,body.lms-login a.forgot::after,body.lms-login button.btn::after { content:none!important;background:none!important;background-image:none!important; }
body.lms-login .lms-login-eyebrow { color:#5f7192;font-size:11px;letter-spacing:.12em;font-weight:700; }
body.lms-login .lms-login-intro h1 { color:#16233f;font-size:38px;line-height:1.12;letter-spacing:-.04em;font-weight:700;margin:16px 0 18px;max-width:360px;overflow-wrap:anywhere; }
body.lms-login .lms-login-intro>p { color:#5d6f8b;font-size:15px;line-height:1.65;max-width:390px;overflow-wrap:anywhere; }
body.lms-login .lms-login-feature-list { padding:0;margin:30px 0 24px;list-style:none; }
body.lms-login .lms-login-feature-list li { display:flex;gap:13px;margin-bottom:20px; }
body.lms-login .lms-login-feature-list li>span { flex:0 0 30px;display:flex;align-items:center;justify-content:center;align-self:flex-start;height:30px;background:#dce5f4;color:#3e5680;font-size:11px;font-weight:700;border-radius:6px; }
body.lms-login .lms-login-feature-list strong { color:#2b4163;font-size:14px;font-weight:600; }
body.lms-login .lms-login-feature-list p { font-size:13px;color:#627490;line-height:1.5;margin:3px 0 0; }
body.lms-login .lms-login-intro .lms-login-feature-note { color:#6c7e99;font-size:12px;margin:0 0 24px; }
body.lms-login .nopadding-2 .h3 { border-top:1px solid #d4deed;color:#2b4163;font-size:17px;line-height:1.4;margin:8px 0 15px;padding-top:22px;font-weight:600; }
body.lms-login .loginright { height:auto;max-height:250px;overflow:auto;padding:0;margin:0;background:none;box-shadow:none;border-radius:0; }
body.lms-login .messages h4 { color:#2d4568;font-size:14px;line-height:1.5;font-weight:600;margin:0 0 7px; }
body.lms-login .messages p { color:#5d6f8b;font-size:13px;line-height:1.6;margin:0;word-break:normal;overflow-wrap:anywhere; }
body.lms-login .logdivider { border-color:#d4deed;margin:15px 0; }
body.lms-login .more { color:var(--lms-login-link,#2448ab)!important;font-size:13px; }
body.lms-login .backstretch { display:none!important; }
body.lms-login :is(a,button):focus-visible { outline:3px solid #93b0ff;outline-offset:3px; }
@media(max-width:900px) { body.lms-login .bgoffsetbg { grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); }body.lms-login .loginbg { padding:30px 28px; }body.lms-login .nopadding-2>.d-flex { padding:36px 28px; }body.lms-login .lms-login-intro h1 { font-size:32px; } }
@media(max-width:700px) { body.lms-login .lms-login-masthead { padding:20px; }body.lms-login .top-content { padding:0 18px 28px; }body.lms-login .bgoffsetbg { display:flex;flex-direction:column; }body.lms-login .bgoffsetbg>.col-lg-4 { order:0; }body.lms-login .bgoffsetbg>.col-lg-8 { order:1; }body.lms-login .loginbg { padding:26px 24px; }body.lms-login .nopadding-2>.d-flex { padding:28px 24px; }body.lms-login .lms-login-intro h1 { font-size:28px;max-width:none; }body.lms-login .lms-login-feature-list { display:none; }body.lms-login .lms-login-intro .lms-login-feature-note { margin-bottom:0; } }
@media(prefers-reduced-motion:reduce) { body.lms-login *,body.lms-login *::before,body.lms-login *::after { animation:none!important;transition:none!important; } }
