@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/space-grotesk-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/space-grotesk-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/inter-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/inter-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/jetbrains-mono-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:100 900;font-display:swap;
  src:url(/assets/fonts/jetbrains-mono-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

  :root{--void:#0B0B0E;--ink:#ECECEE;--soft:#C9C9CF;--muted:#83838E;--faint:#54545E;--line:#26262F;--accent:#EE8E1E;--mono:'JetBrains Mono',ui-monospace,monospace}
  *{box-sizing:border-box;margin:0;padding:0}
  body{background:var(--void);color:var(--ink);font-family:'Inter',system-ui,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;padding:clamp(28px,5vw,72px) clamp(16px,4vw,48px)}
  .wrap{max-width:760px;margin:0 auto}
  a{color:var(--accent)}
  .back{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--muted)}
  h1{font-family:'Space Grotesk',system-ui,sans-serif;font-weight:800;font-size:clamp(28px,4vw,40px);line-height:1.05;letter-spacing:-.015em;margin:24px 0 8px}
  h2{font-family:'Space Grotesk',system-ui,sans-serif;font-weight:800;font-size:22px;letter-spacing:-.01em;margin:44px 0 12px;scroll-margin-top:24px}
  h3{font-size:16px;font-weight:700;margin:22px 0 6px}
  p,li{color:var(--soft);font-size:15px}
  p{margin-bottom:12px}
  ul,ol{padding-left:22px;margin-bottom:12px}
  li{margin-bottom:6px}
  .meta{font-family:var(--mono);font-size:11.5px;color:var(--faint);letter-spacing:.03em}
  .warn{border-left:2px solid var(--accent);border-radius:0 6px 6px 0;padding:12px 16px;background:rgba(238,142,30,.06);font-size:13.5px;color:var(--soft);margin:20px 0 32px}
  table{width:100%;border-collapse:collapse;font-size:13.5px;margin:12px 0 20px}
  th,td{text-align:left;padding:10px 12px;border-top:1px solid var(--line);vertical-align:top;color:var(--soft)}
  th{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:400;border-top:none}
  .tbl{overflow-x:auto}
  code{font-family:var(--mono);font-size:12.5px}
  button.link{background:none;border:0;color:var(--accent);font:inherit;text-decoration:underline;cursor:pointer;padding:0}

  /* confianca / termo-operador */
  .lede{font-size:17px;color:var(--soft);max-width:60ch;margin:8px 0 28px}
  .toc{font-family:var(--mono);font-size:12px;letter-spacing:.02em;display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 8px}
  .toc a{color:var(--muted);text-decoration:none;border-bottom:1px dotted var(--faint)}
  .toc a:hover{color:var(--accent)}
  .sev{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:2px;white-space:nowrap}
  .sev.rej{background:#2a1416;color:#f0a19a}
  .sev.cred{background:#1f1a0c;color:#e6b866}
  .note{border-left:3px solid var(--line);padding:8px 14px;color:var(--muted);font-size:13.5px;margin:16px 0}
  .log{border-top:1px solid var(--line);padding:14px 0}
  .log .v{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.06em}
  .campo{border-bottom:1px solid var(--faint);display:inline-block;min-width:220px;padding:0 4px;color:var(--ink)}
  .assin{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:40px}
  .assin div{border-top:1px solid var(--soft);padding-top:8px;font-size:13px;color:var(--muted)}
  .print{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:none;border:1px solid var(--accent);padding:8px 14px;border-radius:2px;cursor:pointer;margin:0 0 24px}
  ol.cl>li{margin-bottom:14px}
  ol.cl>li>strong{color:var(--ink)}
  .quem-photo{float:right;width:132px;height:132px;border-radius:8px;object-fit:cover;object-position:center 28%;border:1px solid var(--line);margin:0 0 12px 24px}
  .foot{margin-top:40px;clear:both}
  @media (max-width:600px){.quem-photo{float:none;display:block;width:112px;height:112px;margin:0 0 14px}}
  @media (max-width:600px){.assin{grid-template-columns:1fr}}
  @media print{
    body{background:#fff;color:#111;padding:0}
    :root{--ink:#111;--soft:#222;--muted:#444;--faint:#888;--line:#ccc;--accent:#111}
    .back,.print,.lede,.toc{display:none}
    h1{font-size:22px} h2{font-size:15px;margin:18px 0 6px} p,li{font-size:11.5px}
    .assin{page-break-inside:avoid}
  }
  /* tabela que vira cartões no celular (prospeccao/subprocessadores) */
  @media (max-width:600px){
    table.cards thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
    table.cards,table.cards tbody,table.cards tr,table.cards td{display:block;width:100%}
    table.cards tr{border-top:1px solid var(--line);padding:14px 0 8px}
    table.cards td{border-top:none;padding:3px 0 8px}
    table.cards td:first-child{font-size:15px;color:var(--ink)}
    table.cards td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
  }

/* Hash SHA-256 do termo assinado. */
code.hash{font-size:.8em;word-break:break-all}

/* Termo v0.3: numeração manual (inclui 2-A) */
ol.cl-manual{list-style:none;padding-left:0}
