/* Páginas de documento (Termos de Uso, Privacidade) e a 404: só o conteúdo, na identidade do site da SHK. */
:root {
  --bg: #06050e;
  --painel: #0d0c22;
  --linha: rgba(148, 126, 255, 0.14);
  --linha-forte: rgba(148, 126, 255, 0.34);
  --tinta: #f2effa;
  --tinta-2: #ada7c9;
  --tinta-3: #8a84ad;
  --roxo: #7c3cf5;
  --azul-claro: #4fa3ff;
  --vermelho: #ff6188;
  --grad: linear-gradient(125deg, #5a1fd0 0%, #1c69ff 58%, #7c3cf5 100%);
  --fonte-titulo: 'Space Grotesk', 'Helvetica Neue', sans-serif;
  --fonte: 'IBM Plex Sans', 'Helvetica Neue', sans-serif;
  color-scheme: dark;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--tinta); font: 16px/1.7 var(--fonte); -webkit-font-smoothing: antialiased; }
a { color: var(--azul-claro); }
:focus-visible { outline: 2px solid var(--azul-claro); outline-offset: 3px; border-radius: 4px; }
::selection { background: var(--roxo); color: #fff; }

/* cabeçalho de papel timbrado: só a marca */
.doc-cabeca { padding: 22px clamp(20px, 5vw, 56px); border-bottom: 1px solid var(--linha); }
.doc-marca { display: inline-flex; align-items: center; gap: 12px; color: var(--tinta); text-decoration: none; font-family: var(--fonte-titulo); }
.doc-marca b { font-weight: 700; }
.doc-logo {
  display: block; height: 22px; aspect-ratio: 1.87 / 1; background: var(--tinta);
  -webkit-mask: url('/assets/logo-shk.png') center / contain no-repeat; mask: url('/assets/logo-shk.png') center / contain no-repeat;
}

/* o documento */
.documento { max-width: 760px; margin: 0 auto; padding: clamp(40px, 7vw, 72px) clamp(20px, 5vw, 32px) 96px; }
.documento h1 { font: 600 clamp(2.2rem, 6vw, 3.2rem)/1.05 var(--fonte-titulo); letter-spacing: -0.02em; margin: 0 0 10px; }
.doc-versao { color: var(--tinta-3); margin: 0 0 32px; }
.documento h2 { font: 500 1.3rem/1.3 var(--fonte-titulo); margin: 44px 0 12px; scroll-margin-top: 24px; }
.documento p, .documento li { color: var(--tinta-2); }
.documento li { margin: 8px 0; }
.documento b { color: var(--tinta); font-weight: 600; }
.doc-indice { display: flex; flex-wrap: wrap; gap: 6px 18px; padding: 16px 18px; border: 1px solid var(--linha); border-radius: 14px; background: var(--painel); font-size: 0.92rem; }
.doc-indice a { text-decoration: none; }
.doc-indice a:hover { text-decoration: underline; }
.doc-destaque { margin-top: 44px; padding: 4px 22px 14px; border-radius: 16px; border: 1px solid rgba(255, 97, 136, 0.5); background: rgba(255, 97, 136, 0.07); }
.doc-destaque h2 { color: var(--vermelho); }
.doc-resumo { padding: 16px 22px; border-radius: 16px; background: var(--painel); border: 1px solid var(--linha-forte); }
.doc-resumo ul { margin: 8px 0 0; padding-left: 20px; }
.doc-tabela { width: 100%; border-collapse: collapse; font-size: 0.93rem; display: block; overflow-x: auto; }
.doc-tabela th, .doc-tabela td { text-align: left; vertical-align: top; padding: 11px 12px; border-bottom: 1px solid var(--linha); color: var(--tinta-2); }
.doc-tabela th { color: var(--tinta-3); font-weight: 600; }

/* 404 */
.erro { min-height: calc(100vh - 70px); display: grid; place-content: center; justify-items: start; gap: 18px; padding: 32px clamp(20px, 6vw, 64px); }
.erro h1 { margin: 0; font: 600 clamp(5rem, 22vw, 11rem)/0.85 var(--fonte-titulo); letter-spacing: -0.04em; }
.erro p { margin: 0; color: var(--tinta-2); font-size: 1.1rem; }
.erro a { display: inline-flex; padding: 13px 26px; border-radius: 999px; background: var(--grad); color: #fff; font-weight: 600; text-decoration: none; }
