/* ═══════════════════════════════════════════════════════════
   Chalk · estilos das páginas legais e utilitárias
   Usado por /privacidade, /termos, /exclusao-dados, /callback
   Tokens espelham o bloco :root de index.html (Chalk DS v2.0)
   ═══════════════════════════════════════════════════════════ */

:root {
  --chalk-amber:#F5A623; --chalk-ember:#FFB259; --chalk-spark:#FFD37A; --chalk-flame:#FF7A1A;
  --chalk-cream:#FFF1DA; --ink-bg:#0A0805; --ink-soot:#110D08; --ink-charcoal:#1A140D;
  --ash-90:rgba(255,241,218,0.92); --ash-60:rgba(255,241,218,0.60); --ash-40:rgba(255,241,218,0.40);
  --ash-20:rgba(255,241,218,0.20); --ash-10:rgba(255,241,218,0.10); --ash-05:rgba(255,241,218,0.05);
}

* { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }

html, body {
  background-color:var(--ink-bg); color:var(--chalk-cream);
  font-family:'Hanken Grotesk',system-ui,sans-serif;
  font-feature-settings:'ss01','ss02','cv11'; overflow-x:hidden;
}

::selection { background:rgba(245,166,35,0.35); color:var(--chalk-cream); }
::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:var(--ink-bg); }
::-webkit-scrollbar-thumb { background:rgba(245,166,35,0.18); border-radius:999px; }

.font-display { font-family:'Montserrat',sans-serif; letter-spacing:-0.025em; }
.text-balance { text-wrap:balance; }

.gradient-amber {
  background:linear-gradient(180deg,var(--chalk-spark) 0%,var(--chalk-amber) 55%,var(--chalk-flame) 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

.glass {
  background:rgba(255,241,218,0.025);
  backdrop-filter:blur(18px) saturate(150%); -webkit-backdrop-filter:blur(18px) saturate(150%);
  border-top:1px solid rgba(255,241,218,0.12); border-left:1px solid rgba(255,241,218,0.05);
  border-right:1px solid rgba(255,241,218,0.05); border-bottom:1px solid rgba(255,241,218,0.03);
  box-shadow:0 8px 32px 0 rgba(0,0,0,0.4); position:relative; overflow:hidden;
}

.btn-chalk {
  cursor:pointer; position:relative; display:inline-flex; align-items:center; justify-content:center; gap:8px;
  overflow:hidden; transition:transform 0.25s ease, box-shadow 0.25s ease;
  background:linear-gradient(180deg,var(--chalk-ember) 0%,var(--chalk-amber) 100%);
  border-radius:9999px; border:none; padding:12px 22px;
  color:#2A1505; font-weight:700; font-size:14px; letter-spacing:0.01em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.35), 0 8px 24px -6px rgba(245,166,35,0.5);
}
.btn-chalk:hover { transform:translateY(-1px); box-shadow:inset 0 1px 0 rgba(255,255,255,0.4), 0 12px 32px -6px rgba(245,166,35,0.7); }

.tape {
  font-family:'JetBrains Mono',monospace; font-size:10px; letter-spacing:0.15em; color:var(--ash-40);
  text-transform:uppercase; border:1px solid var(--ash-10); background:rgba(255,241,218,0.02);
  padding:4px 10px; border-radius:4px; display:inline-flex; align-items:center; gap:8px;
}

/* ATMOSFERA */
.heat-bg { position:fixed; inset:0; z-index:0; pointer-events:none; }
.heat-bg::before {
  content:''; position:absolute; border-radius:50%; filter:blur(120px);
  top:-18%; left:50%; transform:translateX(-50%); width:1100px; height:620px;
  background:radial-gradient(ellipse at center,rgba(245,166,35,0.18) 0%,rgba(255,122,26,0.06) 40%,transparent 70%);
}
.chalk-grid {
  background-image:linear-gradient(to right,rgba(255,241,218,0.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,241,218,0.025) 1px,transparent 1px);
  background-size:56px 56px;
}
.grain {
  position:fixed; inset:0; pointer-events:none; z-index:60; opacity:0.05; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");
}

/* DOCUMENTO */
.doc { max-width:74ch; }
.doc h2 {
  font-family:'Montserrat',sans-serif; font-weight:800; letter-spacing:-0.02em;
  font-size:1.375rem; line-height:1.25; margin-top:3rem; margin-bottom:0.875rem;
  color:var(--chalk-cream); scroll-margin-top:96px;
}
.doc h2:first-child { margin-top:0; }
.doc h2 .num {
  font-family:'JetBrains Mono',monospace; font-size:0.75rem; font-weight:500; color:var(--chalk-amber);
  display:block; margin-bottom:0.35rem; letter-spacing:0.12em;
}
.doc h3 { font-family:'Montserrat',sans-serif; font-weight:700; font-size:1rem; margin-top:1.75rem; margin-bottom:0.5rem; color:var(--chalk-spark); }
.doc p, .doc li { color:rgba(255,241,218,0.72); line-height:1.75; font-size:1rem; }
.doc p { margin-bottom:1rem; }
.doc ul, .doc ol { list-style:none; margin:0 0 1.25rem; padding:0; counter-reset:step; }
.doc ul li { position:relative; padding-left:1.5rem; margin-bottom:0.6rem; }
.doc ul li::before { content:''; position:absolute; left:0; top:0.7em; width:6px; height:6px; border-radius:50%; background:var(--chalk-amber); opacity:0.7; }
.doc ol li { position:relative; padding-left:2rem; margin-bottom:0.75rem; counter-increment:step; }
.doc ol li::before {
  content:counter(step); position:absolute; left:0; top:0.05em;
  font-family:'JetBrains Mono',monospace; font-size:0.7rem; color:var(--chalk-amber);
  width:1.25rem; height:1.25rem; border:1px solid rgba(245,166,35,0.35); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.doc strong { color:var(--chalk-cream); font-weight:600; }
.doc a { color:var(--chalk-amber); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.doc a:hover { color:var(--chalk-spark); }
/* link que é botão não herda a cor de link: ficaria âmbar sobre âmbar */
.doc a.btn-chalk, .doc a.btn-chalk:hover { color:#2A1505; text-decoration:none; }
.doc code {
  font-family:'JetBrains Mono',monospace; font-size:0.85em; color:var(--chalk-spark);
  background:rgba(245,166,35,0.08); border:1px solid rgba(245,166,35,0.15);
  padding:0.12em 0.4em; border-radius:4px;
}
.doc table { width:100%; border-collapse:collapse; margin:0.5rem 0 1.5rem; font-size:0.9rem; }
.doc th, .doc td { text-align:left; padding:0.7rem 0.9rem; border-bottom:1px solid var(--ash-10); vertical-align:top; color:rgba(255,241,218,0.72); }
.doc th { font-family:'JetBrains Mono',monospace; font-size:0.68rem; text-transform:uppercase; letter-spacing:0.1em; color:var(--ash-40); font-weight:500; }
.doc .callout { border-left:2px solid var(--chalk-amber); background:rgba(245,166,35,0.06); padding:1rem 1.25rem; border-radius:0 10px 10px 0; margin:1.25rem 0; }
.doc .callout p:last-child { margin-bottom:0; }

.table-wrap { overflow-x:auto; }

/* ÍNDICE LATERAL */
.toc a { color:rgba(255,241,218,0.6); text-decoration:none; font-size:0.875rem; line-height:1.6; display:block; padding:0.2rem 0; transition:color .2s ease; }
.toc a:hover { color:var(--chalk-amber); }
