/* Estilo das páginas públicas (login, termos, privacidade) — mesmas cores e fontes do app */
:root{
  --bg:#EDF1EC; --surface:#FBFCFA; --ink:#15231C; --muted:#5A6B61; --line:#C9D3CB;
  --pitch:#1E6A47; --pitch-soft:#DCEBE1; --signal:#C9861A; --signal-soft:#F6E8CC; --danger:#B4452F;
  --display:"Young Serif", Georgia, "Times New Roman", serif;
  --body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0F1814; --surface:#16221C; --ink:#E6EEE8; --muted:#94A69B; --line:#2A3A31;
  --pitch:#5DBB8A; --pitch-soft:#1D3328; --signal:#E8A83E; --signal-soft:#382B14; --danger:#E57A62; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0F1814; --surface:#16221C; --ink:#E6EEE8; --muted:#94A69B; --line:#2A3A31;
  --pitch:#5DBB8A; --pitch-soft:#1D3328; --signal:#E8A83E; --signal-soft:#382B14; --danger:#E57A62; color-scheme:dark}

*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--body);
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap{max-width:560px;margin:0 auto;padding-block:20px 60px;display:flex;flex-direction:column;gap:24px}
h1,h2{font-family:var(--display);font-weight:400;text-wrap:balance;margin:0;line-height:1.2}
h1{font-size:clamp(2rem,7vw,2.6rem)}
h2{font-size:1.3rem;margin-top:8px}
p,ul{margin:0}
ul{padding-left:20px}
a{color:var(--pitch)}
.mast{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:2px solid var(--ink);font-family:var(--display);font-size:1.25rem;color:inherit;text-decoration:none}
.mast svg{width:30px;height:30px}
.eyebrow{font:600 .72rem/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.muted{color:var(--muted)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px}
label{display:flex;flex-direction:column;gap:6px;font-weight:600}
input{font:inherit;font-weight:400;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px;width:100%}
button{font:inherit;cursor:pointer}
.btn{border:1px solid var(--ink);background:var(--ink);color:var(--bg);border-radius:10px;padding:12px 16px;font-weight:600}
.btn:disabled{opacity:.6;cursor:default}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--signal);outline-offset:2px}
.msg{border-left:3px solid var(--signal);background:var(--signal-soft);padding:12px 14px;border-radius:0 10px 10px 0}
.msg.ok{border-color:var(--pitch);background:var(--pitch-soft)}
.legal{display:flex;flex-direction:column;gap:14px}
footer{font-size:.85rem;color:var(--muted);display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px}
