:root{
  --bg:#f4efe4; --surface:#fff; --sand:#f1e2c2; --ink:#14233b; --muted:#5d6676;
  --accent:#f08a1c; --sea:#1f5f8b; --line:#e6dcc8; --navy:#1b2a4a;
  --ok:#1e6b38; --ok-bg:#e3f1e6; --danger:#b3261e; --danger-bg:#fde7e5;
  --display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --body:"Inter","Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root{
  --bg:#0c1420; --surface:#172234; --sand:#22304a; --ink:#f3ecdd; --muted:#a3acbb;
  --accent:#ffa13d; --sea:#6fb3e0; --line:#2a3850; --navy:#0f1a2c;
  --ok:#8fe0ab; --ok-bg:#173a26; --danger:#ff8a80; --danger-bg:#3d1916; color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 var(--body)}
h1,h2,h3{font-family:var(--display);line-height:1.1;margin:0;text-wrap:balance}
a{color:var(--sea)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.btn{display:inline-block;border:0;border-radius:10px;padding:11px 16px;font:inherit;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;background:var(--sand);color:var(--ink)}
.btn.main{background:var(--accent);color:#14233b}
.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
.erro{background:var(--danger-bg);color:var(--danger);border-radius:8px;padding:8px 12px;margin:0}
.ok{background:var(--ok-bg);color:var(--ok);border-radius:8px;padding:8px 12px;margin:0}
label{display:grid;gap:4px;font-size:.85rem;font-weight:500;color:var(--muted)}
input,select,textarea{font:inherit;padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink)}
.simples{max-width:520px;margin:10vh auto;padding:0 max(16px,env(safe-area-inset-left));display:grid;gap:14px;justify-items:start}
.logo-sm{width:72px;height:72px;border-radius:50%;background:#fff;padding:4px;object-fit:contain}
