/* HRMS website/card presentation, scoped to the VMS authentication pages. */
body.vms-auth { margin:0; color:#282a2e; background:#f5f1eb; font:14px/1.5 Arial,sans-serif; }
.vms-auth * { box-sizing:border-box; }
.vms-auth-layout { display:grid; grid-template-columns:minmax(0,13fr) minmax(0,7fr); height:100vh; height:100dvh; }
.vms-auth-website { display:flex; flex-direction:column; min-width:0; min-height:0; background:#faf9f6; }
.vms-auth-website iframe { display:block; flex:1; min-height:0; width:100%; border:0; }
.vms-auth-website p { flex:none; padding:10px 14px; margin:0; background:#fff; border-top:1px solid #e7dfd4; color:#6e675d; text-align:center; font-size:11px; }
.vms-auth a { color:#975b2c; }
.vms-auth-access { min-width:0; overflow-y:auto; padding:16px clamp(16px,1.8vw,30px); border-left:1px solid #e7dfd4; background:radial-gradient(ellipse at 100% 0,#f6dfc4 0,transparent 58%),radial-gradient(ellipse at 0 100%,#ece4d8 0,transparent 60%),#f5f1eb; }
.vms-auth-card { width:100%; max-width:420px; margin:0 auto; padding:16px clamp(20px,2vw,28px) 14px; background:#fff; border:1px solid #e7dfd4; border-top:2px solid #d17b38; border-radius:20px; box-shadow:0 18px 50px -24px #49351f38,0 2px 8px #49351f05; }
.vms-auth-brand { display:flex; justify-content:center; margin-bottom:12px; }
.vms-auth-brand img { width:76px; height:auto; object-fit:contain; filter:drop-shadow(0 0 8px #e1913d3d); }
.vms-auth-intro { display:grid; grid-template-columns:48px minmax(0,1fr); gap:14px; align-items:start; margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid #f4f0eb; }
.vms-auth-product { display:flex; flex-direction:column; align-items:center; gap:8px; color:#935b30; letter-spacing:1.2px; font-size:10px; font-weight:700; }
.vms-auth-icon { display:grid; place-items:center; width:46px; height:46px; margin-top:2px; border:1px solid #f0dcc5; border-radius:13px; background:#fcf1e3; color:#ad672e; }
.vms-auth-icon svg { width:25px; height:25px; }
.vms-auth h1 { margin:0 0 6px; font:700 24px/1.2 Arial,sans-serif; letter-spacing:-.8px; }
.vms-auth-intro p { margin:0; color:#706b64; font-size:12px; line-height:1.55; }
.vms-auth-card label { display:block; width:100%; color:#45403b; font-size:12px; font-weight:600; margin:0 0 6px; }
.vms-auth-card .form-group { margin:0 0 14px; }
.vms-auth-card .row,.vms-auth-card .form-row { margin-left:0; margin-right:0; }
.vms-auth-card .form-control { width:100%; min-width:0; height:auto; min-height:46px; padding:10px 14px; background:#faf9f7; border:1px solid #e3ded7; border-radius:10px; color:#292b30; font:16px/1.5 Arial,sans-serif; }
.vms-auth-card .form-control::placeholder { color:#858078; font-size:13px; }
.vms-auth-card .form-control:focus { background:#fff; border-color:#bc773e; box-shadow:0 0 0 3px #d7924d18; }
.vms-auth-card .btn-primary { min-height:46px; padding:10px 20px; border:1px solid #b76629; border-radius:10px; background:linear-gradient(180deg,#c27836,#ae5e23)!important; color:#fff; font-weight:700; box-shadow:0 5px 12px #ad622b24; }
.vms-auth-card button[type=submit] { width:100%; margin:0!important; }
.vms-auth-card .btn-primary:hover { background:linear-gradient(180deg,#b66b2c,#9b501c)!important; }
.vms-auth-card .btn-primary:disabled { opacity:.7; cursor:wait; }
.vms-auth-card .btn-link { color:#a65e2b; font-size:12px; font-weight:600; }
.vms-auth-card #tokenField > * + * { margin-top:10px; }
.vms-auth-card #otpMessage { color:#875317; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.vms-auth-card .alert { font-size:13px; overflow-wrap:anywhere; }
.vms-auth-footnote { margin:14px 0 0; padding-top:10px; border-top:1px solid #f0ebe5; color:#827a70; text-align:center; font-size:11px; line-height:1.6; }
.vms-auth :focus-visible { outline:2px solid #a7632d; outline-offset:3px; }
.vms-auth-skip { position:absolute; top:-100px; left:20px; z-index:10; padding:12px 20px; background:#fff; }
.vms-auth-skip:focus { top:12px; }
@media(max-width:767px) {
 .vms-auth-layout { display:flex; flex-direction:column; height:auto; min-height:100vh; min-height:100dvh; }
 .vms-auth-access { order:-1; overflow:visible; padding:16px; border-left:0; }
 .vms-auth-website { height:100vh; height:100dvh; }
}
