/* ============================================================
   LOGIN — uma folha só, centrada, com a marca do revendedor.
   Mesmo vocabulário do resto do sistema (design.css + conta.css):
   os campos são os mesmos .ct-campo, o botão é o mesmo .ct-btn.
   ============================================================ */
.lg-corpo{background:var(--v2-fundo);min-height:100vh}
.lg-palco{max-width:1140px;margin:0 auto;padding:72px 24px 48px;box-sizing:border-box;
  display:flex;justify-content:center}

.lg-card{width:420px;flex:0 0 auto;box-sizing:border-box;
  background:var(--v2-papel);border:1px solid var(--v2-hair);border-radius:16px;
  box-shadow:0 1px 2px rgba(0,0,0,.05),0 24px 48px -28px rgba(0,0,0,.35);
  padding:34px 38px 26px}

/* marca do produto no topo do card */
.lg-marca{height:30px;display:flex;align-items:center;margin-bottom:24px}
.lg-marca img{height:26px;width:auto;display:block}

.lg-card h1{margin:0 0 24px;font:700 21px 'Public Sans',sans-serif;letter-spacing:-.02em;
  color:var(--v2-ink)}
.lg-card h1:has(+ .lg-sub){margin-bottom:0}     /* volta o espaço para a linha de apoio */
.lg-sub{margin:6px 0 22px;font:400 13.5px/1.55 'Public Sans',sans-serif;color:var(--v2-ink2)}

.lg-card .ct-campo{margin-bottom:14px}

.lg-linha{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 20px}
.lg-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  font:400 13px 'Public Sans',sans-serif;color:var(--v2-ink2)}
.lg-check input{width:15px;height:15px;accent-color:var(--v2-acc);cursor:pointer}
.lg-link{border:none;background:none;padding:0;cursor:pointer;
  font:600 13px 'Public Sans',sans-serif;color:var(--v2-acc);text-decoration:none}
.lg-link:hover{text-decoration:underline}
.lg-link:focus-visible{outline:2px solid var(--v2-acc);outline-offset:2px;border-radius:4px}

.lg-btn{width:100%;min-width:0}
.lg-btn[data-carregando]{cursor:progress;opacity:.75}

.lg-aviso{margin:12px 0 0;min-height:18px;
  font:500 12.5px/1.5 'Public Sans',sans-serif;color:var(--v2-ink2)}
.lg-aviso.ruim{color:var(--v2-neg)}
.lg-aviso.ok{color:var(--v2-acc)}

.lg-rodape{margin-top:24px;padding-top:15px;border-top:1px solid var(--v2-hair);
  font:400 11.5px 'Public Sans',sans-serif;color:var(--v2-ink3)}
