/* SMART-HR responsive portal layer: login-first on phones, split corporate layout on large screens. */
html{ -webkit-text-size-adjust:100%; text-size-adjust:100%; scroll-behavior:smooth }
body{ overflow-x:hidden }
.portal-shell{min-height:100svh;min-height:100dvh;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr)}
.identity-panel{position:relative;overflow:hidden}
.identity-panel:after{position:absolute;right:-15%;bottom:-20%;width:55%;height:55%;border:1px solid rgba(242,182,66,.18);border-radius:50%;box-shadow:0 0 0 26px rgba(242,182,66,.04),0 0 0 52px rgba(242,182,66,.025);content:"";pointer-events:none}
.identity-panel>*{position:relative;z-index:1}
.login-card h2{font-size:clamp(25px,2.5vw,30px);letter-spacing:-.03em}
.google-sign-in{min-height:48px}
.login-card footer a{transition:color .15s ease}.login-card footer a:hover{color:#fff}
.registration-button{width:100%;min-height:48px;margin-top:8px}
.registration-button:focus-visible,.google-sign-in:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
@media(max-width:1100px) and (min-width:761px){.identity-panel,.login-panel{padding:44px}.identity-panel h1{font-size:clamp(42px,5.2vw,60px)}.lead{font-size:17px}.login-card{padding:28px}}
@media(max-width:760px){
  .portal-shell{display:flex;flex-direction:column;min-height:100svh}
  .login-panel{order:1;justify-content:flex-start;padding:28px 20px calc(28px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#081721,#07131d)}
  .login-card{width:100%;padding:24px;border-radius:16px}.login-card h2{font-size:clamp(24px,7vw,30px)}
  .identity-panel{order:2;justify-content:flex-start;min-height:auto;padding:34px 20px calc(42px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#0a2232,#07131d)}
  .identity-panel h1{max-width:560px;margin:20px 0 14px;font-size:clamp(32px,9vw,46px);line-height:1.06}.identity-panel .lead{font-size:clamp(15px,4.1vw,18px);line-height:1.55}
  .identity-panel .brand{font-size:clamp(38px,10vw,54px)}.identity-panel .kicker{font-size:10px}
  .access-grid{grid-template-columns:1fr;gap:10px;width:100%;margin-top:26px}.access-grid article{padding:14px;border-radius:11px}.access-grid span{font-size:13px}
  .google-sign-in{display:flex;justify-content:center;width:100%;margin:22px 0 18px}.login-card footer{margin-top:20px;gap:14px;font-size:12px}
}
@media(max-width:380px){.login-panel,.identity-panel{padding-right:16px;padding-left:16px}.login-card{padding:20px}.identity-panel h1{font-size:clamp(30px,8.8vw,36px)}.identity-panel .lead{font-size:15px}.access-grid article{padding:13px}}
@media(min-width:761px){.identity-panel,.login-panel{min-height:calc(100svh - 56px)}}
.auth-tab:disabled{cursor:not-allowed;color:var(--text-faint);opacity:.7}.auth-tab small{display:block;margin-top:2px;font-size:9px;font-weight:500;letter-spacing:0}
