/* Querubim v1.0.3 — tela principal e exibição sem recorte da capa. */
.qer-welcome-body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 18% 20%,#126dbe 0,#0b3268 37%,#061830 75%);color:#fff}
.qer-welcome-layout{max-width:1280px;min-height:100vh;margin:auto;padding:34px 40px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,475px);align-items:center;gap:7%;}
.qer-welcome-left{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.qer-welcome-brand{width:min(400px,85%);height:auto;display:block;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(4,13,39,.25));}
.qer-welcome-left h1{font-size:clamp(30px,3.4vw,53px);line-height:1.12;letter-spacing:-.035em;margin:18px 0 12px;max-width:590px;color:white}
.qer-welcome-left p{font-size:clamp(15px,1.5vw,20px);line-height:1.5;color:#d2eeff;max-width:565px;margin:0 0 20px}
.qer-welcome-verse{font-size:14px;font-weight:700;color:#f5d47a}
.qer-welcome-form-card{padding:27px;background:linear-gradient(150deg,rgba(13,53,99,.96),rgba(7,27,56,.97));border:1px solid rgba(107,215,255,.5);border-radius:22px;box-shadow:0 20px 70px rgba(0,0,0,.28)}
.qer-welcome-form-card>h2{font-size:25px;letter-spacing:-.02em;margin:0 0 5px;color:white}
.qer-welcome-form-card>p{font-size:14px;color:#c4e7fd;margin:0 0 18px}
.qer-welcome-switch{display:flex;gap:8px;margin-bottom:15px}
.qer-welcome-switch .qer-access-tab{flex:1;min-width:0;font-size:13px;white-space:nowrap}
.qer-welcome-gate{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;max-width:none!important;min-height:0!important}
.qer-welcome-gate .qer-access-card{border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}
.qer-welcome-gate .qer-form{display:grid;gap:9px}
.qer-welcome-gate .qer-form>label:not(.qer-remember){font-size:12px;font-weight:800;color:#e6f7ff;margin-top:3px}
.qer-welcome-gate .qer-form input:not([type=checkbox]){min-height:48px;background:#09223b;border:1px solid rgba(135,207,241,.4);color:white;font-size:15px;border-radius:12px;padding:12px 14px}
.qer-welcome-gate .qer-password-wrap{position:relative}
.qer-welcome-gate .qer-password-wrap input{padding-right:52px!important;width:100%}
.qer-welcome-gate .qer-password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:43px;min-height:40px;border:0;background:transparent;cursor:pointer;color:white}
.qer-welcome-gate .qer-login-utils{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:5px 0}
.qer-welcome-gate .qer-remember{font-size:12px;color:#e0f4ff;display:flex;align-items:center;gap:7px}
.qer-welcome-gate .qer-remember input{width:17px;height:17px}
.qer-welcome-gate .qer-forgot-link{font-size:12px}
.qer-welcome-gate .qer-primary-btn{display:block;width:100%;margin:6px 0 0;padding:13px 16px;min-height:48px;cursor:pointer;border-radius:12px;border:0;background:linear-gradient(110deg,#08bce5,#3bd8f5);color:#062942;font-weight:900;font-size:16px}
.qer-welcome-gate .qer-form-msg{font-size:12px;min-height:0;color:#bdeaff}
.qer-welcome-communities{display:block;text-align:center;margin:17px 0 0;color:#b9eaff;text-decoration:none;font-size:12px;font-weight:700}
.qer-welcome-communities:hover{text-decoration:underline}
.qer-welcome-action{display:block;text-align:center;text-decoration:none;margin-top:16px}
/* Capa original em proporção natural: sem crop, sem deformação, sem alterar perfil. */
body.qer-body .qer-app > .qer-school-cover{height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;overflow:hidden!important;line-height:0!important}
body.qer-body .qer-app > .qer-school-cover.qer-school-cover-has-image>.qer-school-cover-image{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;margin:0!important;vertical-align:top!important}
body.qer-body .qer-app > .qer-school-cover .qer-cover-pattern{line-height:normal}
@media(max-width:780px){
 .qer-welcome-layout{min-height:100svh;max-width:520px;display:block;padding:18px 16px 30px}
 .qer-welcome-left{align-items:center;text-align:center;gap:4px}
 .qer-welcome-brand{width:118px;max-height:118px;object-fit:contain}
 .qer-welcome-left h1{font-size:23px;line-height:1.2;margin:4px 0;max-width:360px}
 .qer-welcome-left p{font-size:12px;line-height:1.35;margin:0 auto 10px;max-width:360px}
 .qer-welcome-verse{display:none}
 .qer-welcome-form-card{padding:18px 16px;border-radius:16px}
 .qer-welcome-form-card>h2{font-size:20px;margin:0 0 4px}
 .qer-welcome-form-card>p{font-size:12px;margin:0 0 12px}
 .qer-welcome-switch{margin-bottom:12px}
 .qer-welcome-gate .qer-form{gap:7px}
 .qer-welcome-gate .qer-form input:not([type=checkbox]){min-height:44px;padding:9px 12px}
 .qer-welcome-gate .qer-primary-btn{min-height:45px;padding:10px}
 .qer-welcome-communities{margin:12px 0 0}
}
@media(max-width:370px){.qer-welcome-layout{padding:12px 10px 22px}.qer-welcome-brand{width:95px}.qer-welcome-left h1{font-size:21px}.qer-welcome-form-card{padding:12px}}
