#g88CloudGate{position:fixed;inset:0;z-index:999999;background:#edf3f8;display:flex;align-items:center;justify-content:center;padding:20px;font-family:Inter,'Segoe UI',Arial,sans-serif;color:#132b40}
#g88CloudGate[hidden]{display:none!important}
.g88-auth-card{width:min(100%,450px);background:white;border:1px solid #d9e5ee;border-radius:17px;padding:30px;box-shadow:0 20px 60px #122d4022}
.g88-auth-card h2{font-size:25px;margin:0 0 5px}.g88-auth-card p{color:#60758a;font-size:14px;line-height:1.5}
.g88-auth-card label{display:block;font-size:13px;font-weight:700;margin:14px 0 6px}
.g88-auth-card input{display:block;width:100%;border:1px solid #cbd9e5;border-radius:8px;padding:12px;font-size:15px}
.g88-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}
.g88-auth-card button,.g88-cloud-modal button{border:1px solid #bcd4ed;background:#f2f7ff;color:#0752a7;border-radius:8px;padding:11px;font-weight:700;cursor:pointer}
.g88-auth-card button.primary,.g88-cloud-modal button.primary{background:#0869d6;border-color:#0869d6;color:white}
.g88-auth-card button:disabled,.g88-cloud-modal button:disabled{opacity:.6;cursor:wait}
.g88-cloud-note{font-size:12px;color:#5b7184;margin-top:15px}
.g88-cloud-error{font-size:13px!important;color:#b42332!important;min-height:20px;white-space:pre-wrap}
#g88CloudStatus{position:fixed;bottom:14px;right:14px;z-index:20000;max-width:310px;background:#fff;border:1px solid #c6d9e8;box-shadow:0 6px 24px #17344a25;border-radius:10px;padding:10px 12px;font:12px Inter,'Segoe UI',Arial,sans-serif;color:#19344a}
#g88CloudStatus[hidden]{display:none!important}#g88CloudStatus button{border:0;background:#eaf3ff;color:#0864be;padding:6px 10px;border-radius:6px;cursor:pointer;margin-left:6px}
#g88CloudManage{position:fixed;inset:0;z-index:999998;background:#1226389c;display:flex;align-items:center;justify-content:center;padding:16px}
#g88CloudManage[hidden]{display:none!important}.g88-cloud-modal{width:min(100%,510px);background:#fff;border-radius:14px;padding:24px;box-shadow:0 18px 60px #102b3b4d;font-family:Inter,'Segoe UI',Arial,sans-serif;color:#152f45}
.g88-cloud-modal h2{margin:0;font-size:21px}.g88-cloud-modal p{line-height:1.5;font-size:14px;color:#556c80}.g88-cloud-modal .buttons{display:flex;flex-wrap:wrap;gap:8px}.g88-cloud-modal .buttons button{flex:1;min-width:170px}.g88-cloud-modal .muted{font-size:12px;color:#60758a}

/* V8.125 — gerenciamento acessível sem reduzir o zoom. */
#g88CloudManage{overflow:hidden;align-items:center;justify-content:center;padding:16px}
#g88CloudManage .g88-cloud-modal{box-sizing:border-box;width:min(100%,560px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-behavior:auto}
.g88-cloud-modal-header{position:sticky;top:-24px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;padding:13px 0;margin:-13px 0 14px;border-bottom:1px solid #e0e8f0}
.g88-cloud-modal .g88-cloud-close{flex:none;min-width:auto;background:#f1f6fc;padding:9px 12px}
.g88-cloud-modal .buttons button{min-width:min(170px,100%);white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){#g88CloudManage{padding:8px}#g88CloudManage .g88-cloud-modal{width:100%;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding:16px}.g88-cloud-modal-header{top:-16px;margin:-8px 0 12px;padding:10px 0}.g88-cloud-modal .buttons{display:grid;grid-template-columns:minmax(0,1fr)}.g88-cloud-modal .buttons button{width:100%;min-width:0}.g88-cloud-modal h2{font-size:19px}}

/* O acesso à nuvem fica no menu lateral, sem sobrepor as telas de trabalho. */
#g88CloudStatus{display:none!important}


/* Recuperação de senha desktop — usa o mesmo card de autenticação, sem tocar nos módulos. */
#g88CloudGate .g88-auth-card[hidden],#g88CloudGate form[hidden]{display:none!important}
#g88CloudGate .g88-auth-card{max-height:calc(100vh - 40px);overflow-y:auto}
#g88CloudGate .g88-auth-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
#g88CloudGate .g88-auth-link{display:block;margin:13px auto 0;border:0;padding:7px;background:none;color:#0969d3;font-weight:750;text-align:center;cursor:pointer}
#g88CloudGate .g88-auth-link:hover{text-decoration:underline}
#g88CloudGate .g88-cloud-feedback{font-size:13px;line-height:1.5;white-space:pre-wrap;color:#17643e}
#g88CloudRecoveryForm input:focus,#g88CloudRequestForm input:focus{outline:2px solid #0969d3;outline-offset:1px}
@media(max-width:460px){#g88CloudGate .g88-auth-actions{grid-template-columns:1fr}}

/* GARAGEM88 — entrada multiempresa. Apenas apresentação: autenticação e dados inalterados. */
#g88CloudGate{
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,380px) minmax(0,470px);
  align-content:safe center;
  align-items:stretch;
  justify-content:center;
  gap:0;
  padding:22px 16px;
  overflow-y:auto;
  overscroll-behavior:contain;
  background:radial-gradient(ellipse at 16% 7%,#dceaf7 0,transparent 48%),linear-gradient(135deg,#f5f9fd,#e7f0f8);
}
#g88CloudGate .g88-auth-brand{
  box-sizing:border-box;
  display:flex;
  min-width:0;
  min-height:568px;
  flex-direction:column;
  justify-content:space-between;
  padding:41px 34px 35px;
  color:#fff;
  background:linear-gradient(150deg,#0a2a4c 0%,#0b3868 66%,#0b4d94 100%);
  border-radius:22px 0 0 22px;
  box-shadow:0 22px 55px #153b5720;
}
#g88CloudGate .g88-brand-mark{font-size:26px;font-weight:800;letter-spacing:-.8px;line-height:1.2;color:#fff}
#g88CloudGate .g88-brand-mark span,#g88CloudGate .g88-auth-mobile-brand span{color:#67b3ff}
#g88CloudGate .g88-brand-mark small{display:block;margin-top:8px;font-size:10px;font-weight:750;letter-spacing:2.1px;color:#c0dbf5}
#g88CloudGate .g88-brand-kicker{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#8bceff;line-height:1.5}
#g88CloudGate .g88-brand-main h1{margin:14px 0 13px;font-size:35px;letter-spacing:-1.25px;font-weight:800;line-height:1.14;color:#fff}
#g88CloudGate .g88-brand-main p{margin:0;font-size:15px;line-height:1.7;color:#d2e5f8}
#g88CloudGate .g88-brand-bottom{display:flex;gap:12px;align-items:center;padding-top:20px;border-top:1px solid #ffffff30;font-size:12px;line-height:1.6;color:#dfedfb}
#g88CloudGate .g88-brand-tick{display:grid;place-items:center;width:31px;height:31px;flex:none;border-radius:50%;background:#ffffff20;color:#a8dcff;font-size:16px;font-weight:800}
#g88CloudGate .g88-auth-card{
  box-sizing:border-box;
  display:flex;
  width:100%;
  max-width:none;
  min-height:568px;
  max-height:none;
  flex-direction:column;
  justify-content:center;
  padding:38px 43px;
  overflow:visible;
  border:1px solid #e0e9f1;
  border-left:0;
  border-radius:0 22px 22px 0;
  box-shadow:0 22px 55px #153b5720;
  background:#fff;
}
#g88CloudGate .g88-auth-card[hidden]{display:none!important}
#g88CloudGate .g88-auth-mobile-brand{display:none}
#g88CloudGate .g88-auth-eyebrow{margin-bottom:10px;color:#0869d6;font-size:10px;font-weight:800;letter-spacing:1.65px}
#g88CloudGate .g88-auth-card h2{margin:0 0 8px;font-size:27px;line-height:1.23;letter-spacing:-.75px;font-weight:800;color:#102a44}
#g88CloudGate .g88-auth-card p{margin:0 0 13px;font-size:13px;line-height:1.6;color:#63798d}
#g88CloudGate .g88-auth-card form{width:100%;margin-top:8px}
#g88CloudGate .g88-auth-card label{margin:13px 0 7px;font-size:12px;color:#233d55;font-weight:700}
#g88CloudGate .g88-auth-card input{
  box-sizing:border-box;
  width:100%;
  min-height:46px;
  padding:11px 13px;
  background:#fbfdff;
  border:1px solid #d0dfeb;
  border-radius:9px;
  outline:none;
  font-family:Inter,'Segoe UI',Arial,sans-serif;
  font-size:14px;
  color:#122c46;
  transition:border-color .15s,box-shadow .15s;
}
#g88CloudGate .g88-auth-card input::placeholder{color:#9aabba}
#g88CloudGate .g88-auth-card input:focus{outline:none;border-color:#0869d6;box-shadow:0 0 0 3px #0869d61b}
#g88CloudGate .g88-auth-actions{margin-top:20px;gap:10px}
#g88CloudGate #g88CloudLogin .g88-auth-actions{grid-template-columns:minmax(0,1fr)}
#g88CloudGate .g88-auth-card button{min-height:44px;font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:13px}
#g88CloudGate .g88-auth-card button.primary{
  color:#fff;
  border:1px solid #0869d6;
  border-radius:9px;
  background:#0869d6;
  box-shadow:0 5px 13px #0869d61a;
  transition:background .15s,box-shadow .15s;
}
#g88CloudGate .g88-auth-card button.primary:hover{background:#0759b7;box-shadow:0 7px 15px #0869d632}
#g88CloudGate .g88-auth-card button:focus-visible{outline:3px solid #90c7ff;outline-offset:2px}
#g88CloudGate .g88-auth-card .g88-auth-link{margin:9px auto 0;min-height:34px;padding:6px 10px;background:none;border:0;color:#0869d6;font-size:12px}
#g88CloudGate .g88-cloud-error{min-height:17px;margin:9px 0 0!important}
#g88CloudGate .g88-cloud-note{margin:13px 0 0;text-align:center;font-size:11px;line-height:1.5;color:#7990a4}
#g88CloudGate .g88-auth-switch{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin-top:24px;padding-top:19px;border-top:1px solid #edf1f6;color:#657b8f;font-size:12px;text-align:center}
#g88CloudGate .g88-auth-create{padding:7px 9px;min-height:35px;border:0;border-radius:7px;background:#eaf3ff;color:#0864ca;font-size:12px;font-weight:800;cursor:pointer}
#g88CloudGate .g88-auth-create:hover{background:#dcecff}
#g88CloudGate .g88-cloud-feedback{margin:12px 0 0;line-height:1.5;color:#17643e}
#g88CloudGate #g88CloudSignupCard{
  display:block;
  height:max-content;
  min-height:568px;
  align-self:start;
  padding:27px 43px 26px;
  overflow:visible;
  overflow-wrap:anywhere;
}
#g88CloudGate #g88CloudSignupCard > p{margin:12px 0 0;line-height:1.5}
#g88CloudGate #g88SignupStatus:empty{display:none}
#g88CloudGate #g88SignupStatus:not(:empty) ~ .g88-cloud-note{display:none}
#g88CloudGate #g88SignupStatus:not(:empty){padding:12px 13px;border:1px solid #d5e5f4;border-radius:9px;background:#f3f8ff;color:#214f76}
#g88CloudGate #g88CloudSignupCard .g88-auth-actions{margin-top:17px}
#g88CloudGate #g88CloudSignupCard .g88-auth-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:850px){
 #g88CloudGate{display:flex;align-items:safe center;padding:16px}
 #g88CloudGate .g88-auth-brand{display:none!important}
 #g88CloudGate .g88-auth-card{flex:none;width:min(100%,480px);min-height:0;max-height:none;overflow:visible;border:1px solid #e0e9f1;border-radius:20px;padding:30px 28px;box-shadow:0 18px 42px #153b571d}
 #g88CloudGate #g88CloudSignupCard{min-height:0;padding:25px 27px}
 #g88CloudGate .g88-auth-mobile-brand{display:block;margin-bottom:24px;font-size:22px;font-weight:800;letter-spacing:-.65px;color:#102d4d}
 #g88CloudGate .g88-auth-card h2{font-size:25px}
}
@media(max-width:460px){
 #g88CloudGate{padding:10px}
 #g88CloudGate .g88-auth-card{max-height:none;padding:25px 21px;border-radius:17px}
 #g88CloudGate #g88CloudSignupCard{padding:23px 21px}
 #g88CloudGate .g88-auth-mobile-brand{margin-bottom:20px}
 #g88CloudGate #g88CloudSignupCard .g88-auth-actions{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
 #g88CloudGate .g88-auth-card input,#g88CloudGate .g88-auth-card button.primary{transition:none}
}

/* Autenticação: só o painel externo rola, nunca o formulário nem a página atrás. */
html:has(#g88CloudGate:not([hidden])),
body:has(> #g88CloudGate:not([hidden])) {
  overflow:hidden!important;
}

/* Evita corte de conteúdo quando o painel de cadastro cresce após exibir mensagens. */
#g88CloudGate{overflow-anchor:none}
#g88CloudGate #g88CloudSignupCard .g88-auth-eyebrow{margin:0 0 8px}
#g88CloudGate #g88CloudSignupCard label{margin:10px 0 5px}
#g88CloudGate #g88CloudSignupCard input{min-height:43px}
#g88CloudGate #g88CloudSignupCard form{margin-top:5px}
#g88CloudGate #g88CloudSignupCard .g88-cloud-feedback{white-space:normal}

/* Resultado de cadastro: orientação igual para e-mail novo ou existente. */
#g88CloudGate #g88CloudSignupResultCard{align-items:stretch;gap:0;text-align:left}
#g88CloudGate .g88-signup-result-icon{
  width:48px;height:48px;display:grid;place-items:center;
  background:#eaf3ff;border:1px solid #d8e9fb;border-radius:13px;
  font-size:25px;line-height:1;color:#0869d6;margin:7px 0 20px
}
#g88CloudGate #g88CloudSignupResultCard h2{margin-bottom:15px}
#g88CloudGate #g88CloudSignupResultCard p{font-size:14px;line-height:1.6;margin:0 0 15px}
#g88CloudGate .g88-signup-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:19px 0 9px}
#g88CloudGate .g88-signup-next button{min-height:47px;padding:9px 10px;border-radius:9px}
#g88CloudGate #g88SignupUseAnotherEmail{margin:7px auto 0}
@media(max-width:460px){
 #g88CloudGate .g88-signup-next{grid-template-columns:minmax(0,1fr)}
 #g88CloudGate #g88CloudSignupResultCard{padding-top:27px;padding-bottom:27px}
}
