/* Secretaria Fiel V1.4.22 — refinamento visual de login, sem mudar autenticação. */
.sf-theme .sf-login{background:radial-gradient(circle at 3% 0%,#e4efff,transparent 44%),linear-gradient(145deg,#f8fbff,#f6f3ee);}
.sf-theme .sf-login .auth-layout{max-width:1210px;align-items:center;gap:clamp(24px,3.5vw,60px);padding-top:34px;padding-bottom:58px;}
.sf-theme .sf-login .auth-aside .eyebrow{color:#285bac;}
.sf-theme .sf-login .auth-aside h1{font-size:clamp(34px,3.4vw,51px);line-height:1.12;max-width:570px;letter-spacing:-.045em;color:#102b5b;}
.sf-theme .sf-login .auth-aside p{font-size:15px;line-height:1.65;color:#516584;max-width:540px;}
.sf-theme .sf-login .sf-login-message{
  background:linear-gradient(125deg,#ebf2ff,#fff8e8);border:1px solid #cbdcf8;
  box-shadow:0 12px 28px #1d40701a;
}
.sf-theme .sf-login .sf-login-message strong{color:#0c315d;}
.sf-theme .sf-login .sf-login-message small{color:#4a6487;}
.sf-theme .sf-login .auth-card{
  border:1px solid #dfe5f3;box-shadow:0 20px 54px rgba(17,38,87,.12);
  border-radius:24px;background:#fff;padding:clamp(24px,3vw,38px);
}
.sf-theme .sf-login .auth-card h2{color:#0b2754;font-size:clamp(27px,2.3vw,34px);line-height:1.14;}
.sf-theme .sf-login .auth-card label{font-weight:750;color:#1b3b6d;}
.sf-theme .sf-login .auth-card input{min-height:49px;border-radius:12px;border-color:#d2deef;background:#fbfcff;}
.sf-theme .sf-login .auth-card input:focus{border-color:#6b9fe7;box-shadow:0 0 0 3px #3278db1f;}
.sf-theme .sf-login .sf-forgot-link a{color:#175abb;}
.sf-theme .sf-login .auth-card .btn-primary{min-height:50px;border-radius:12px;background:linear-gradient(110deg,#1667dc,#0b3d96);border:0;box-shadow:0 9px 19px #124a9b36;}
.sf-theme .sf-login .auth-card .btn-primary:hover{background:linear-gradient(110deg,#0e56c3,#082f7d);}
.sf-theme .sf-login .auth-foot a{color:#155dbb;font-weight:800;}
.sf-theme .sf-login :is(a,button,input):focus-visible{outline:3px solid #e6ae3f;outline-offset:3px;}
/* O aviso de sessão continua visível e acessível, mas acompanha a largura do conteúdo. */
.sf-theme > .flash.sf-feedback{box-sizing:border-box;max-width:1210px;width:calc(100% - 32px);margin:12px auto 0;border-radius:15px;}
@media(max-width:780px){
  .sf-theme .sf-login .auth-layout{display:flex;flex-direction:column;gap:17px;align-items:stretch;padding:21px 0 48px;}
  .sf-theme .sf-login .auth-aside{padding:0;}
  .sf-theme .sf-login .auth-aside h1{font-size:clamp(25px,6.5vw,33px);line-height:1.12;margin:7px 0 10px;}
  .sf-theme .sf-login .auth-aside p{font-size:13px;line-height:1.55;margin:0;}
  /* Mensagem publicitária redundante ocupa a primeira dobra no celular. */
  .sf-theme .sf-login .sf-login-message{display:none;}
  .sf-theme .sf-login .auth-card{padding:22px 20px;border-radius:21px;box-shadow:0 12px 30px #1c3b7518;}
  .sf-theme .sf-login .auth-card h2{font-size:27px;}
  .sf-theme .sf-login .auth-card .form-stack{gap:14px;}
  .sf-theme .sf-login .auth-card input{min-height:48px;}
  .sf-theme .sf-login .auth-card .btn-primary{min-height:48px;}
}
@media(max-width:360px){
  .sf-theme .sf-login .auth-layout{gap:14px;}
  .sf-theme .sf-login .auth-aside h1{font-size:24px;}
  .sf-theme .sf-login .auth-card{padding:19px 16px;}
  .sf-theme .sf-login .auth-card h2{font-size:25px;}
}
