:root{
  --principal:#F5C542; --secundaria:#C4122F; --destaque:#FFE9A6; --fundo:#0B0507;
  --texto:#F8EFE6; --painel:#160C0E; --linha:#35191E; --suave:#B9A59E;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  --gutter:16px;
}
/* Formulário de entrada. As cores (:root) vêm do site/estilo.css na montagem: aqui só o desenho do formulário. */
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--texto);background:var(--fundo);line-height:1.5;overflow-x:hidden;
  background-image:radial-gradient(700px 420px at 90% -8%,color-mix(in srgb,var(--secundaria) 30%,transparent),transparent 70%);
  background-repeat:no-repeat}
[hidden]{display:none!important}
a{color:var(--principal)}
.folha{max-width:720px;margin:0 auto;padding:0 var(--gutter) 40px}
.topo{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--linha)}
.selo{font-family:var(--serif);font-weight:700;letter-spacing:.04em;color:var(--principal)}
.aviso-ensaio{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--fundo);background:var(--principal);padding:3px 8px;border-radius:4px}

.abre{padding:28px 0 8px}
.chamada{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--suave)}
h1{font-family:var(--serif);color:var(--principal);font-size:clamp(34px,9vw,52px);line-height:1.05;margin:8px 0 12px}
.abre p{color:var(--texto);max-width:36em}
.nunca{margin-top:14px;padding:12px 14px;border:1px solid var(--linha);border-left:3px solid var(--principal);background:var(--painel);border-radius:8px;font-size:15px}

.parte{border:1px solid var(--linha);background:var(--painel);border-radius:14px;padding:18px 16px 8px;margin-top:22px;min-width:0}
.parte legend{display:flex;align-items:baseline;gap:10px;padding:0 6px;font-family:var(--serif);font-weight:700;font-size:21px}
.parte legend .n{font-family:var(--sans);font-size:12px;letter-spacing:.14em;color:var(--principal)}
.explica{color:var(--suave);font-size:14px;margin:-2px 0 10px}
.do-produto h3{font-family:var(--serif);color:var(--principal);font-size:17px;margin:10px 0 2px}

.campo{padding:10px 0 12px}
.rotulo{display:block;font-weight:600;font-size:15px}
.obr{color:var(--principal)}
.ajuda{color:var(--suave);font-size:13px;margin-top:2px}
input[type=text],input[type=email],input[type=tel],textarea{width:100%;margin-top:8px;padding:12px;font:inherit;font-size:16px;
  color:var(--texto);background:var(--fundo);border:1px solid var(--linha);border-radius:10px}
textarea{resize:vertical}
input:focus-visible,textarea:focus-visible,button:focus-visible,.opcao input:focus-visible+span{outline:2px solid var(--principal);outline-offset:2px}
input[type=file]{margin-top:8px;max-width:100%;color:var(--suave);font-size:14px}
input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--fundo);background:var(--principal);border:0;border-radius:8px;padding:9px 14px;margin-right:10px;cursor:pointer}

.opcoes{display:grid;gap:8px;margin-top:8px}
.opcao{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--linha);border-radius:10px;background:var(--fundo);cursor:pointer}
.opcao input{margin-top:3px;width:18px;height:18px;accent-color:var(--principal);flex:none}
.opcao:has(input:checked){border-color:var(--principal)}
.produtos{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.tipo-caixa .opcao{background:transparent}

.linha{margin-top:8px;padding:12px;background:var(--fundo);border:1px dashed var(--linha);border-radius:10px;
  font:13px/1.45 Consolas,Menlo,monospace;color:var(--destaque);white-space:pre-wrap;word-break:break-all}
.copiar{margin-top:8px;font:inherit;font-size:14px;font-weight:600;color:var(--principal);background:transparent;border:1px solid var(--principal);border-radius:8px;padding:8px 12px;cursor:pointer}

.tipo-aviso{margin:6px 0;padding:10px 12px;border:1px dashed var(--linha);border-radius:10px}
.termos{list-style:none;display:grid;gap:6px;margin:4px 0 6px}
.termos a{font-size:15px}
.erro{color:#ff8a8a;font-size:14px;margin-top:6px}
.erro:empty{display:none}
.erro-geral{margin-top:18px;padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--secundaria) 22%,var(--painel));font-size:15px}
.enviar{display:block;width:100%;margin-top:22px;padding:16px;font:inherit;font-size:17px;font-weight:700;color:var(--fundo);
  background:var(--principal);border:0;border-radius:12px;cursor:pointer}
.enviar:disabled{opacity:.6;cursor:wait}
.pronto{padding:40px 0}
.protocolo{margin-top:12px;color:var(--suave)}
.rodape{margin-top:36px;padding-top:14px;border-top:1px solid var(--linha);font-size:12px;color:var(--suave)}

/* As páginas dos termos */
.termo main{padding-top:24px}
.termo h1{font-size:clamp(28px,7vw,40px)}
.termo h2{font-family:var(--serif);color:var(--principal);font-size:20px;margin:22px 0 6px}
.termo p,.termo li{margin:6px 0;max-width:42em}
.termo ul{padding-left:20px}
.termo table{border-collapse:collapse;margin:10px 0;font-size:14px}
.termo th,.termo td{border:1px solid var(--linha);padding:6px 10px;text-align:left}
code{font-family:Consolas,Menlo,monospace;font-size:.92em}
