/* Tela de entrada — BRIDA Vendas e Aprendizagem
   Tela cheia: painel institucional (60%) + painel de login (40%).
   Abaixo de 900px: uma coluna (faixa da marca no topo, formulário embaixo). */

/* Base própria: o login NÃO carrega portal.css (o tema da área interna não o afeta).
   Estas regras reproduzem exatamente o que o login herdava antes. */
body.lg{--display:'Archivo',system-ui,sans-serif;--body:'IBM Plex Sans',system-ui,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace;font:14px/1.5 var(--body)}
@media (prefers-color-scheme:dark){:root{color-scheme:dark}}
:where(.lg) [hidden]{display:none!important}
:where(.lg) :where(h1,h2,h3){font-family:var(--display);margin:0;text-wrap:balance}
:where(.lg) :where(h1){font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.01em}
:where(.lg) :where(h2){font-size:17px;font-weight:700}
:where(.lg) :where(main){padding-inline:28px;padding-block:22px 48px;min-width:0;display:flex;flex-direction:column;gap:18px;max-width:1680px;width:100%;margin-inline:auto}

body.lg{margin:0;background:#fff;font-family:var(--body);color:#151a33}
.lg *,.lg *::before,.lg *::after{box-sizing:border-box}
.lg-tela{
  width:100%;
  min-height:100vh;               /* fallback */
  min-height:100dvh;              /* navegadores compatíveis */
  display:grid;
  grid-template-columns:minmax(0,3fr) minmax(0,2fr);   /* ~60% / ~40% (sem a arte) */
}
/* Com a arte (logo, frase e selo desenhados na imagem): a coluna da imagem
   acompanha a ALTURA da tela na proporção da arte (965×992), para nunca cortar
   o topo nem o rodapé da imagem em monitores largos; limitada a 62% da largura.
   O formulário ocupa o restante. */
.lg-tela.tem-arte{grid-template-columns:min(calc(100vh * 0.9728), 62%) minmax(0,1fr)}
@supports (height:100dvh){.lg-tela.tem-arte{grid-template-columns:min(calc(100dvh * 0.9728), 62%) minmax(0,1fr)}}

/* ------------------------------------------------ painel institucional */
.lg-marca{position:relative;overflow:hidden;color:#fff;padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;min-width:0;
  background:
    radial-gradient(1200px 520px at 85% 110%,rgba(236,106,51,.18),transparent 60%),
    radial-gradient(900px 600px at -10% 20%,rgba(64,78,170,.55),transparent 60%),
    linear-gradient(160deg,#1b2050 0%,#22285c 48%,#151a42 100%)}
.lg-marca.com-foto{background:
    linear-gradient(90deg,rgba(21,26,66,.94) 0%,rgba(27,32,80,.78) 45%,rgba(27,32,80,.35) 100%),
    var(--foto) center/cover no-repeat,#22285c}
/* arte completa enviada: logo, frase e selo já estão desenhados na imagem,
   então os textos em HTML ficam só para leitores de tela (sem duplicar) */
.lg-marca.com-arte{padding:0;background:#1b2050 var(--arte) no-repeat;background-size:cover;background-position:left center}
.lg-marca.com-arte>*{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;margin:0!important;padding:0!important;border:0!important}

.lg-curva{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lg-curva circle{fill:#fff;stroke:#ec6a33;stroke-width:4}
.lg-topo{display:flex;align-items:center;gap:18px;position:relative}
.lg-topo img{height:44px;display:block}
.lg-sep{width:1px;height:32px;background:rgba(255,255,255,.35)}
.lg-sub{font:600 12px var(--body);letter-spacing:.28em;text-transform:uppercase;color:#e3e6f7}
.lg-mensagem{position:relative;margin-top:clamp(28px,7vh,80px);max-width:640px}
.lg-mensagem h1{font:700 clamp(30px,3.4vw,54px)/1.14 var(--display);letter-spacing:-.02em;margin:0;color:#fff}
.lg-linha{display:block}
.lg-destaque{font-weight:800;position:relative;white-space:nowrap}
.lg-destaque::after{content:"";position:absolute;left:2px;right:2px;bottom:-.02em;height:.09em;border-radius:99px;background:#ec6a33}
.lg-ponto{color:#ec6a33}
.lg-mensagem p{font-size:clamp(15px,1.3vw,19px);line-height:1.5;color:#dfe2f4;margin:18px 0 0}
.lg-selo{position:relative;margin-top:auto;display:flex;align-items:center;gap:14px;max-width:480px;padding:14px 18px;border-radius:12px;
  background:rgba(13,16,44,.62);border:1px solid rgba(255,255,255,.14)}
.lg-selo svg{width:30px;height:30px;color:#ec6a33;flex:none;padding-right:14px;border-right:1px solid rgba(255,255,255,.25);box-sizing:content-box}
.lg-selo b{display:block;font:700 15px var(--body);color:#fff}
.lg-selo span{font-size:13px;color:#d3d7ee}

/* ------------------------------------------------ painel de login */
.lg-form-lado{display:flex;flex-direction:column;gap:0;max-width:none;margin:0;background:#fff;min-width:0;padding:clamp(24px,4vh,48px) clamp(20px,3vw,48px) 20px}
.lg-form-caixa{width:100%;max-width:380px;margin:auto}          /* centraliza na horizontal e na vertical */
.lg-logo-cel{display:none}
.lg-olho{font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:#e0611d;margin:0 0 8px}
.lg-form-caixa h2{font:800 clamp(26px,2.2vw,32px)/1.15 var(--display);color:#1b2050;margin:0;letter-spacing:-.015em}
.lg-intro{color:#555b74;font-size:14px;line-height:1.5;margin:8px 0 28px}
.lg-rotulo{display:block;font:600 12px var(--body);letter-spacing:.02em;color:#1b2050;margin:0 0 6px}
.lg-campo{display:flex;align-items:center;gap:12px;border:1px solid #d3d6e2;border-radius:10px;padding:0 14px;height:50px;margin-bottom:18px;background:#fff;transition:border-color .15s,box-shadow .15s}
.lg-campo:focus-within{border-color:#22285c;box-shadow:0 0 0 3px rgba(34,40,92,.16)}
.lg-campo>svg{width:19px;height:19px;color:#4d5370;flex:none}
.lg-campo input{all:unset;flex:1;min-width:0;height:100%;font:16px var(--body);color:#151a33}
.lg-campo input::placeholder{color:#8a8fa6}
.lg-campo input:-webkit-autofill,.lg-campo input:-webkit-autofill:hover,.lg-campo input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 40px #fff inset;-webkit-text-fill-color:#151a33;caret-color:#151a33;transition:background-color 9999s}
.lg-olhinho{background:none;border:0;padding:6px;margin-right:-6px;cursor:pointer;color:#4d5370;border-radius:6px;display:grid;place-items:center}
.lg-olhinho svg{width:19px;height:19px}
.lg-olhinho .ver-icone{display:none}
.lg-olhinho[aria-pressed="true"] .ver-icone{display:block}
.lg-olhinho[aria-pressed="true"] .esconder{display:none}
.lg-esqueci{margin:-8px 0 20px;text-align:right}
.lg-esqueci summary{display:inline;cursor:pointer;color:#1b2050;font-size:13px;text-decoration:underline;text-underline-offset:3px;list-style:none}
.lg-esqueci summary::-webkit-details-marker{display:none}
.lg-esqueci-caixa{text-align:left;background:#f3f4f8;border-radius:10px;padding:12px;margin:8px 0 0}
.lg-esqueci-caixa p{font-size:13px;line-height:1.5;color:#4d5370;margin:0 0 10px}
.lg-pedir{width:100%;min-height:44px;border:1px solid #22285c;background:#fff;color:#1b2050;border-radius:9px;font:600 14px var(--body);cursor:pointer}
.lg-pedir:hover{background:#e9ebf6}
.lg-pedir:disabled{opacity:.6;cursor:wait}
.lg-pedido:empty{display:none}
.lg-pedido{margin-top:10px;font-size:13px;line-height:1.5;border-radius:8px;padding:9px 11px}
.lg-pedido span{display:block;color:#4d5370;margin-top:4px;overflow-wrap:anywhere}
.lg-pedido.ok{background:#e8f5ee;color:#16683c;border:1px solid #bfe3cf}
.lg-pedido.erro{background:#fdecec;color:#a42a2a;border:1px solid #f3c2c2}
.lg-pedir-link{display:inline-block;margin-top:6px;color:#1b2050;font-weight:600}
.lg-erro{background:#fdecec;color:#a42a2a;border:1px solid #f3c2c2;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45;margin:0 0 14px}
.lg-entrar{width:100%;height:50px;border:0;border-radius:10px;background:#f26a1b;color:#fff;font:600 15px var(--body);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 6px 14px rgba(242,106,27,.22)}
.lg-entrar:hover{background:#e05f14}
.lg-entrar svg{width:19px;height:19px}
.lg a:focus-visible,.lg button:focus-visible,.lg summary:focus-visible{outline:3px solid #ec6a33;outline-offset:3px}
.lg-form-caixa hr{border:0;border-top:1px solid #e3e5ec;margin:24px 0 16px}
.lg-ajuda{text-align:center;color:#4d5370;font-size:13px;line-height:1.5;margin:0}
.lg-ajuda a{color:#1b2050;font-weight:600;text-underline-offset:3px}
.lg-rodape{margin:24px 0 0;font-size:12px;color:#8a8fa6;text-align:right}

/* ------------------------------------------------ tablet e celular: uma coluna */
@media (max-width:899px){
  .lg-tela,.lg-tela.tem-arte{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  /* faixa institucional compacta: só a parte de cima da arte (marca + frase) */
  .lg-marca{padding:24px 20px}
  .lg-marca.com-arte{width:100%;height:auto;aspect-ratio:965/440;max-height:340px;background-size:100% auto;background-position:left top}
  .lg-curva,.lg-selo{display:none}
  .lg-topo img{height:34px}.lg-sep{height:26px}
  .lg-mensagem{margin-top:18px}
  .lg-mensagem h1{font-size:clamp(26px,6.4vw,36px)}
  .lg-linha{display:inline}
  .lg-mensagem p{font-size:15px;margin-top:10px}
  .lg-form-lado{padding:28px 22px 20px}
  .lg-form-caixa{margin:0 auto}
  .lg-rodape{text-align:center;margin-top:28px}
}
@media (max-width:899px) and (min-width:600px){
  /* tablet: faixa limitada para não empurrar o formulário */
  .lg-marca.com-arte{background-size:cover;background-position:left top}
}
@media (max-width:420px){.lg-sub,.lg-sep{display:none}}
@media (prefers-reduced-motion:reduce){.lg *{transition:none!important}}

/* mensagens de senha errada / bloqueio com contador */
.lg-erro{display:flex;flex-direction:column;gap:6px}
.lg-tentativas{display:flex;align-items:center;gap:5px}
.lg-tentativas i{width:22px;height:6px;border-radius:99px;background:#f3c2c2}
.lg-tentativas i.usada{background:#c43a3a}
.lg-tentativas small{margin-left:6px;font-size:12px;color:#8a2f2f}
.lg-erro.bloqueado{background:#fff4ec;border-color:#f6c9a6;color:#8a3a08}
.lg-contador{font-size:13px}
.lg-contador b{font:700 20px var(--display);letter-spacing:.02em;margin-left:4px;font-variant-numeric:tabular-nums}
.lg-erro-dica{font-size:12px;color:#8a5a3a}
.lg-entrar:disabled{background:#c9ccd8;box-shadow:none;cursor:not-allowed}
