body.hrms-auth-page { margin: 0; background: #fff; color: #252631; color-scheme: light; }
.hrms-auth-page * { letter-spacing: 0; }
.auth-layout { display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; min-height: 100svh; }
.auth-form-panel { display: flex; flex-direction: column; min-width: 0; padding: 44px 64px 28px; }
.auth-brand { display: inline-flex; align-self: flex-start; }
.auth-brand img { width: 150px; height: 46px; object-fit: contain; }
.auth-form-content { width: 100%; max-width: 390px; margin: auto; padding: 64px 0; }
.auth-eyebrow { display: block; color: #747583; font-size: 11px; font-weight: 600; margin-bottom: 16px; }
.auth-form-content h1 { color: #252631; font-size: 32px; font-weight: 600; line-height: 1.2; margin: 0 0 12px; }
.auth-description { color: #71727f; font-size: 15px; line-height: 1.65; margin-bottom: 32px; }
.hrms-auth-page .form-group { margin-bottom: 22px; }
.hrms-auth-page label { color: #383944; font-size: 13px; font-weight: 500; margin-bottom: 9px; }
.auth-input { position: relative; }
.auth-input > .la { position: absolute; left: 15px; top: 16px; color: #878895; font-size: 19px; pointer-events: none; }
.hrms-auth-page .form-control { height: 50px; width: 100%; background: #fff; border: 1px solid #dedee6; border-radius: 6px; color: #252631; padding: 12px 15px 12px 44px; font-size: 14px; box-shadow: none; }
.hrms-auth-page .form-control::placeholder { color: #9798a2; opacity: 1; }
.hrms-auth-page .form-control:focus { border-color: #6256c8; box-shadow: 0 0 0 3px #efecff; }
.hrms-auth-page .auth-password-input { padding-right: 48px; }
.auth-password-toggle { position: absolute; top: 3px; right: 4px; width: 44px; height: 44px; border: 0; border-radius: 4px; background: transparent; color: #787986; font-size: 20px; display: grid; place-items: center; }
.auth-password-toggle:hover { background: #f4f3fa; color: #584cc0; }
.auth-options { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 2px 0 28px; font-size: 13px; }
.hrms-auth-page .auth-remember { display: inline-flex; align-items: center; gap: 9px; margin: 0; cursor: pointer; font-weight: 400; }
.auth-remember input { width: 16px; height: 16px; accent-color: #6256c8; }
.hrms-auth-page a { color: #5c50bd; text-decoration: none; }
.hrms-auth-page a:hover { color: #43349b; text-decoration: underline; }
.hrms-auth-page .auth-submit { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 50px; border: 1px solid #6256c8; border-radius: 6px; background: #6256c8; color: #fff; font-size: 14px; font-weight: 500; padding: 12px 16px; box-shadow: none; }
.hrms-auth-page .auth-submit:hover { background: #5144b6; border-color: #5144b6; }
.hrms-auth-page .auth-submit:disabled { opacity: .6; cursor: wait; }
.auth-secondary { margin: 24px 0 0; text-align: center; color: #7a7b87; font-size: 13px; line-height: 1.6; }
.auth-secondary a { font-weight: 500; }
.auth-helper { display: block; color: #7a7b87; margin: 8px 0 0; font-size: 12px; line-height: 1.5; }
.auth-footer { display: flex; justify-content: space-between; gap: 16px; font-size: 12px; color: #92939d; }
.auth-footer a { color: #71727f; }
.auth-footer .la { transform: rotate(45deg); }
.auth-quote-panel { background: #e6e1f6; color: #3f375c; display: flex; flex-direction: column; justify-content: space-between; padding: 52px 64px 40px; min-width: 0; }
.auth-quote-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 11px; font-weight: 500; }
.auth-quote-top .la { font-size: 40px; color: #75639b; }
.auth-quote-content { max-width: 510px; padding: 72px 0; }
.auth-quote-mark { display: block; font-size: 52px; color: #8975b5; margin-bottom: 24px; }
.auth-quote-content blockquote { margin: 0; font-size: 40px; font-weight: 500; line-height: 1.3; overflow-wrap: break-word; }
.auth-quote-content p { color: #807391; font-size: 14px; margin: 26px 0 0; }
.auth-quote-bottom { border-top: 1px solid #cfc6e4; padding-top: 28px; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; color: #706383; font-size: 16px; line-height: 1.5; }
.auth-quote-bottom strong { font-weight: 500; color: #4d405f; }
.auth-quote-index { font-size: 12px; }
.hrms-auth-page [role="status"] { font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.hrms-auth-page :is(a, button, input):focus-visible { outline: 2px solid #6256c8; outline-offset: 4px; }
@media (max-width: 1199px) { .auth-form-panel, .auth-quote-panel { padding-left: 40px; padding-right: 40px; } .auth-quote-content blockquote { font-size: 34px; } }
@media (max-width: 767px) {
    .auth-layout { grid-template-columns: 1fr; }
    .auth-form-panel { padding: 28px 24px 24px; min-height: 100svh; }
    .auth-form-content { padding: 48px 0; }
    .auth-form-content h1 { font-size: 28px; }
    .auth-quote-panel { padding: 32px 24px; }
    .auth-quote-content { max-width: 480px; padding: 40px 0; }
    .auth-quote-content blockquote { font-size: 28px; }
    .auth-quote-mark { font-size: 40px; margin-bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) { .hrms-auth-page * { transition: none !important; } }
