/* Golden login — mesma paleta do painel (golden-theme.css), sem Bootstrap. */
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-sans);min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;background:radial-gradient(900px 500px at 80% -10%,var(--glow-teal),transparent 60%),linear-gradient(160deg,var(--login-bg-a),var(--login-bg-b));color:var(--login-text);padding:20px}
.box{width:100%;max-width:410px;background:var(--login-surface);color:var(--login-text);border:1px solid var(--login-line);border-radius:20px;padding:38px 34px;box-shadow:0 30px 70px -30px rgba(0,0,0,.7);transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}
.brand{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:8px}
.brand img{width:48px;height:48px;border-radius:11px}
.brand b{font-family:var(--font-head);font-size:1.3rem;letter-spacing:.02em}
.brand small{display:block;font-size:.6rem;letter-spacing:.22em;color:var(--t-gold-fg);text-transform:uppercase}
h1{font-family:var(--font-head);font-size:1.15rem;text-align:center;margin:6px 0 4px}
.sub{text-align:center;color:var(--login-muted);font-size:.9rem;margin-bottom:26px}
label{display:block;font-weight:600;font-size:.85rem;margin-bottom:7px}
.field{margin-bottom:16px}
input[type=email],input[type=password],input[type=text],input[type=tel]{width:100%;padding:13px 15px;border:1.5px solid var(--login-line);border-radius:var(--radius-md);background:var(--login-field-bg);color:var(--login-text);font:inherit}
input:focus{outline:none;border-color:var(--brand-gold);box-shadow:0 0 0 4px var(--t-gold-bg)}
.row{display:flex;justify-content:space-between;align-items:center;margin:4px 0 20px;font-size:.86rem}
.row a{color:var(--t-gold-fg);text-decoration:none}
.remember{display:flex;gap:7px;align-items:center;margin:0;font-weight:500}
input[type=checkbox]{accent-color:var(--brand-gold)}
button{width:100%;padding:14px;border:0;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-gold),var(--brand-gold-2));color:var(--brand-gold-ink);font-weight:700;font-size:1rem;cursor:pointer;font-family:var(--font-head)}
button:hover{filter:brightness(1.06)}
.back{text-align:center;margin-top:20px;font-size:.85rem;color:var(--login-muted)}
.back a{color:var(--login-muted)}
.demo{margin-top:16px;font-size:.78rem;color:var(--login-muted);background:var(--t-neutral-bg);border:1px dashed var(--login-line);border-radius:var(--radius-md);padding:10px 12px;text-align:center}

/* Portal do cliente: as mesmas telas de acesso do painel, com o argumento ao lado do
   formulário. Nenhuma cor nasce aqui — só tokens de golden-theme.css. */
.box-largo{max-width:880px;padding:30px 26px;display:grid;grid-template-columns:minmax(0,1fr);gap:30px}
.box-largo .brand,.box-largo .back{grid-column:1/-1}
/* ordem 3: o "voltar ao site" fecha a caixa, senão o order:0 dele subiria acima do formulário. */
.box-largo .back{order:3}
.box-largo .brand{justify-content:flex-start}
.apresenta{order:2}
.form{order:1}
.box-largo h1{font-size:1.5rem;text-align:left;margin:0 0 8px;line-height:1.2}
.box-largo .sub{text-align:left;margin:0 0 20px;line-height:1.55}
.form h2{font-family:var(--font-head);font-size:1.15rem;margin:0 0 18px}
.lista{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.lista li{display:flex;gap:11px;align-items:flex-start;font-size:.92rem;color:var(--login-muted)}
.lista i{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--t-gold-bg);color:var(--t-gold-fg);font-size:.95rem}
.dica{font-size:.78rem;color:var(--login-muted);margin:6px 0 0}
.dica a{color:var(--t-gold-fg);text-decoration:none;font-weight:600}
.erro{display:block;font-size:.78rem;color:var(--t-red-fg);margin-top:6px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consent{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.82rem;color:var(--login-muted);margin:2px 0 20px;line-height:1.5}
.consent input{width:auto;flex:none;margin:3px 0 0}
.consent a{color:var(--t-gold-fg)}
.alternar{text-align:center;font-size:.86rem;color:var(--login-muted);margin:16px 0 0}
.alternar a{color:var(--t-gold-fg);text-decoration:none;font-weight:600}
.troca-tema{position:fixed;top:16px;right:16px;width:40px;height:40px;padding:0;border:1px solid var(--login-line);border-radius:50%;background:var(--login-surface);color:var(--login-muted);display:grid;place-items:center;cursor:pointer;font-size:.95rem}
.troca-tema:hover{color:var(--t-gold-fg);border-color:var(--brand-gold)}
@media (min-width:760px){
  .box-largo{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:42px;padding:42px 44px}
  .apresenta{order:1;padding-right:14px;border-right:1px solid var(--login-line)}
  .form{order:2}
  .box-largo h1{font-size:1.75rem}
}

