/* ===== Ateliê do Aprendizado — tokens da marca ===== */
:root{
  --paper:#FCF3E4; --paper2:#F7E9D0; --card:#FFFFFF; --ink:#1E1E24; --ink2:#3C3F48;
  --muted:#94897A; --line:#EFE2CC; --line2:#E2D2B6;
  --terra:#E0392B; --terra-soft:#F9DAD5; --ochre:#F49B3E; --ochre-soft:#FCE7CE;
  --forest:#2FA24C; --forest-soft:#D8EFD8; --sky:#2E3A8C; --sky-soft:#DCDFF0;
  --plum:#159C9C; --plum-soft:#D4EEEE; --ok:#2FA24C; --warn:#E08A1E; --gold:#F4C430;
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Nunito Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Baloo 2',system-ui,sans-serif;font-weight:800;margin:0;}
a{color:var(--terra);text-decoration:none;}
a:hover{color:var(--ochre);}

/* barra colorida da marca */
.rainbow{height:6px;background:linear-gradient(90deg,var(--gold) 0 14%,var(--terra) 14% 40%,var(--forest) 40% 62%,var(--plum) 62% 84%,var(--sky) 84% 100%);}

/* ===== Auth (login / recuperação) ===== */
.auth-wrap{min-height:calc(100vh - 6px);display:flex;align-items:center;justify-content:center;padding:24px;
  background:radial-gradient(1200px 600px at 70% -10%, var(--ochre-soft), transparent 60%),
             radial-gradient(900px 500px at -10% 110%, var(--forest-soft), transparent 55%), var(--paper);}
.auth-card{width:100%;max-width:960px;display:grid;grid-template-columns:1.1fr 0.9fr;background:var(--card);
  border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 30px 80px -40px rgba(30,30,36,.4);}
.auth-form{padding:56px 52px;}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:40px;}
.brand-mark{width:44px;height:44px;border-radius:12px;background:var(--terra);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.brand-name{font-family:'Baloo 2',system-ui,sans-serif;font-weight:800;font-size:19px;line-height:1;}
.brand-sub{font-size:12px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:4px;}
.auth-form h1{font-size:32px;line-height:1.15;}
.auth-lead{color:var(--muted);margin:12px 0 34px;font-size:15px;max-width:40ch;}
label.fld{display:block;font-size:13px;font-weight:800;color:var(--ink2);margin-bottom:7px;}
input.fld{width:100%;padding:13px 14px;border:1px solid var(--line2);border-radius:12px;font:inherit;background:var(--paper);outline:none;margin-bottom:18px;}
input.fld:focus{border-color:var(--terra);}
.row-between{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;}
.check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);}
.btn{width:100%;padding:14px;background:var(--terra);color:#fff;border:none;border-radius:12px;font:inherit;font-weight:800;font-size:15px;cursor:pointer;}
.btn:hover{background:var(--ochre);}
.btn-ghost{background:var(--paper2);color:var(--ink2);}
.btn-ghost:hover{background:var(--line);}
.auth-foot{text-align:center;color:var(--muted);font-size:13px;margin-top:20px;}
.auth-aside{background:linear-gradient(160deg,var(--forest),#1f6f36);padding:52px 44px;color:#EAF1EC;display:flex;flex-direction:column;justify-content:space-between;}
.auth-quote{font-family:'Baloo 2',system-ui,sans-serif;font-weight:700;font-size:22px;line-height:1.4;}
.auth-stats{display:flex;gap:22px;flex-wrap:wrap;}
.auth-stats b{font-family:'Baloo 2',system-ui,sans-serif;font-size:24px;color:#fff;display:block;}
.auth-stats span{font-size:12px;opacity:.8;}
.divider{height:1px;background:rgba(255,255,255,.2);margin:28px 0 20px;}
@media(max-width:780px){.auth-card{grid-template-columns:1fr;}.auth-aside{display:none;}.auth-form{padding:40px 28px;}}
