/* Tema das ferramentas = identidade do site (General Sans + Space Mono, marfim/tinta, dourado discreto).
   Carregado depois do <style> de cada ferramenta: só sobrescreve variáveis e acabamentos. */
:root{
  --bg:#FBFAF7;--bg-alt:#F1EFEA;--surface:#FFFFFF;--ink:#14161A;--muted:#6C6F76;
  --gold:#B58B45;--gold-2:#C9A264;--dark:#23262C;--on-dark:#FBFAF7;--ok:#2E7D4F;--err:#A23B2A;
  --line:#E7E3DB;--chip:#FBFAF7;
  --display:"General Sans",system-ui,-apple-system,sans-serif;--body:"General Sans",system-ui,-apple-system,sans-serif;
  --mono:"Space Mono",ui-monospace,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#14161A;--bg-alt:#1F2227;--surface:#23262C;--ink:#FBFAF7;--muted:#9A9CA1;--dark:#0F1114;
  --line:rgba(255,255,255,.14);--chip:#1F2227;--ok:#6FCB94;--err:#E88B7A}}
:root[data-theme="dark"]{
  --bg:#14161A;--bg-alt:#1F2227;--surface:#23262C;--ink:#FBFAF7;--muted:#9A9CA1;--dark:#0F1114;
  --line:rgba(255,255,255,.14);--chip:#1F2227;--ok:#6FCB94;--err:#E88B7A}

body{font-weight:400;-webkit-font-smoothing:antialiased}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px max(16px,env(safe-area-inset-left,0px));background:var(--bg);border-bottom:1px solid var(--line)}
.topbar img{height:22px;width:auto;display:block}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .topbar img{filter:brightness(0) invert(1)}}
:root[data-theme="dark"] .topbar img{filter:brightness(0) invert(1)}
.topbar__back{font-size:14px;color:var(--muted);text-decoration:none;white-space:nowrap}
.topbar__back:hover{color:var(--ink)}
header{background:var(--dark);color:var(--on-dark);padding:40px 16px 36px}
header small{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;color:rgba(255,255,255,.6)}
header h1{font-family:var(--display);font-weight:400;letter-spacing:-.02em;line-height:1.08;font-size:clamp(1.7rem,4.5vw,2.6rem);margin:10px 0 8px}
header p{opacity:.72}
.card{border-radius:0;padding:26px}
.card h2{font-family:var(--display);font-weight:400;letter-spacing:-.02em;font-size:1.3rem}
.opt,input[type=number],input[type=text],select,textarea{border-radius:0}
.opt:has(input:checked){border-color:var(--ink);background:var(--surface)}
.opt input{accent-color:var(--ink)}
input:focus,select:focus{border-color:var(--ink)}
.btn{border-radius:999px;background:var(--ink);color:var(--bg);font:400 16px var(--body);letter-spacing:-.01em;padding:17px 28px;transition:transform .5s cubic-bezier(.16,1,.3,1),background .4s}
.btn:hover{background:#000;transform:translateY(-2px)}
:root[data-theme="dark"] .btn:hover{background:#fff}
.res{border-radius:0;padding:28px}
.res h2{font-family:var(--display);font-weight:400;letter-spacing:-.02em;color:var(--on-dark)}
.kpi small{font-family:var(--mono);letter-spacing:.12em}
.kpi b{font-family:var(--display);font-weight:400;letter-spacing:-.03em;color:#fff}
.kpi.main b{color:var(--gold-2)}
.note,.alert{border-radius:0}
.alert{border-left-color:var(--gold)}
.wa{border-radius:999px;font-weight:400}
.disc{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;line-height:1.6}

/* Dentro de uma página de assunto (iframe), a barra do topo não é necessária. */
.embedded .topbar{display:none}
