/* Shivshree login: scoped visual corrections only. Loaded LAST to override prior CSS. */
/* Correct the unwanted red version badge/backdrop and prevent the wordmark from overlapping. */
.intro .product { display:flex !important; flex-wrap:nowrap !important; align-items:baseline !important; gap:0 !important; white-space:nowrap !important; letter-spacing:-2px !important; }
.intro .product .version-red { display:inline-block !important; flex:none !important; margin-left:10px !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#ff5066 !important; font-size:clamp(21px,2vw,30px) !important; line-height:1 !important; letter-spacing:0 !important; text-shadow:0 2px 9px rgba(0,0,0,.3) !important; }
/* Readable, tightly spaced company details, with centered original ATS logo. */
.login-box .version.ats-branding { display:flex !important; flex-direction:column !important; align-items:center !important; gap:1px !important; text-align:center !important; line-height:1.12 !important; margin-top:5px !important; padding-top:5px !important; }
.login-box .ats-branding .edition { margin:0 0 2px !important; font-size:clamp(11px,.83vw,13px) !important; }
.login-box .ats-company-logo { display:block !important; width:44px !important; height:44px !important; object-fit:contain !important; margin:0 auto 1px !important; }
.login-box .ats-developed { font-size:clamp(12px,.92vw,15px) !important; line-height:1.1 !important; }
.login-box .ats-company-name { font-size:clamp(14px,1.03vw,18px) !important; font-weight:900 !important; line-height:1.12 !important; color:#07326c !important; margin:0 !important; letter-spacing:0 !important; }
.login-box .ats-contact { display:flex !important; flex-direction:column !important; align-items:center !important; gap:0 !important; margin-top:1px !important; }
.login-box .ats-contact a { font-size:clamp(11px,.83vw,14px) !important; line-height:1.15 !important; color:#14518c !important; text-decoration:none !important; }
/* Desktop browser viewport: distribute header, main, modules and footer in one screen. */
@media (min-width:901px) {
 html,body { height:100% !important; overflow:hidden !important; }
 .page { height:100vh !important; height:100dvh !important; min-height:0 !important; max-height:100dvh !important; overflow:hidden !important; display:grid !important; grid-template-rows:auto minmax(0,1fr) auto auto !important; }
 .main { min-height:0 !important; padding-top:0 !important; padding-bottom:2px !important; align-items:center !important; }
 .top { padding-top:5px !important; padding-bottom:2px !important; }
 .brand img { width:48px !important; height:48px !important; }
 .login-box { top:0 !important; max-height:calc(100dvh - 142px) !important; padding:9px 17px !important; }
 .login-box .logo { width:40px !important; height:40px !important; margin-bottom:1px !important; }
 .login-box .hospital-title { font-size:clamp(20px,1.5vw,24px) !important; }
 .login-box .sub-title { margin:2px 0 4px !important; }
 .login-box .divider { margin-bottom:4px !important; }
 .login-box .login-clock { margin:3px auto 5px !important; padding:5px 10px !important; }
 .login-box .photo-wrap { width:48px !important; height:48px !important; margin-bottom:2px !important; }
 .login-box .welcome { margin:2px 0 !important; font-size:17px !important; }
 .login-box .selected-user-name { margin:1px 0 5px !important; }
 .login-box form { gap:5px !important; }
 .login-box .form-select,.login-box .form-control { height:38px !important; }
 .login-box .btn-login { height:40px !important; }
 .bottom { padding-top:0 !important; padding-bottom:3px !important; }
 .bottom .module { min-height:53px !important; padding:3px !important; }
 .bottom .module-art { width:25px !important; height:25px !important; }
 .footer { padding-top:4px !important; padding-bottom:4px !important; }
}
@media (min-width:901px) and (max-height:730px) {
 .intro .product { font-size:clamp(38px,4.1vw,62px) !important; }
 .intro .description { margin-bottom:8px !important; }
 .benefits { gap:4px !important; margin-top:7px !important; }
 .benefit-icon { width:28px !important; height:28px !important; }
 .login-box { padding:5px 14px !important; max-height:calc(100dvh - 120px) !important; }
 .login-box .logo { width:31px !important; height:31px !important; }
 .login-box .photo-wrap { width:37px !important; height:37px !important; }
 .login-box .login-clock { margin:2px auto 3px !important; }
 .login-box .form-select,.login-box .form-control { height:33px !important; }
 .login-box .btn-login { height:35px !important; }
 .login-box .ats-company-logo { width:34px !important; height:34px !important; }
 .bottom .module { min-height:46px !important; }
}
/* Narrow layouts must remain readable; don't hide overflow or clip the form. */
@media (max-width:900px) { .page { height:auto !important; min-height:100dvh !important; overflow:visible !important; } .intro .product { justify-content:center !important; } }
