/* =========================================================
   Páginas internas (privacidade, 404): a mesma rede azul ao fundo,
   o conteúdo dentro de uma janela creme da "pequena internet"
   ========================================================= */
body.page{overflow:auto;min-height:100dvh;background:var(--cobalt)}
.page .net{position:fixed;inset:0;pointer-events:none;display:block;z-index:0}
.page::after{ /* vinheta, como no canvas */
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(120% 90% at 50% 30%,transparent 55%,rgb(3 20 90 / .38));
}
.page-wrap{position:relative;z-index:1}
.page .topbar{position:sticky;top:0;pointer-events:auto;background:linear-gradient(var(--cobalt) 60%,transparent)}
.back-pill .ic:first-child{transition:transform var(--t-fast) var(--ease-out)}
.back-pill:hover .ic:first-child{transform:translateX(-3px)}
::selection{background:var(--yellow);color:var(--ink)}

/* ---------- cabeçalho da página ---------- */
.doc-head{max-width:1180px;margin:0 auto;padding:clamp(28px,6vw,72px) clamp(16px,4vw,40px) clamp(28px,4vw,44px)}
.doc-title{
  margin:0;font-weight:900;font-size:clamp(56px,11vw,150px);line-height:.84;letter-spacing:-.058em;color:var(--yellow);
}
.doc-lede{margin:22px 0 0;max-width:56ch;font-size:clamp(17px,1.6vw,20px);line-height:1.5;color:var(--cream)}
.doc-meta{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}
.doc-meta li{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;font-size:13.5px;font-weight:600;
  background:rgb(6 34 122 / .5);color:var(--cream);box-shadow:inset 0 0 0 1px rgb(246 239 224 / .18)}

/* ---------- a janela-documento ---------- */
.doc-win{
  max-width:1180px;margin:0 auto clamp(40px,6vw,80px);border-radius:18px;overflow:hidden;background:var(--cream);color:var(--ink);
  box-shadow:0 2px 4px rgb(4 16 70 / .18),0 30px 70px -20px rgb(4 16 70 / .6);
}
@media (min-width:1220px){ .doc-win{margin-left:auto;margin-right:auto} }
@media (max-width:1219px){ .doc-win{margin-left:clamp(12px,3vw,40px);margin-right:clamp(12px,3vw,40px)} }
.doc-bar{height:46px;display:flex;align-items:center;gap:12px;padding:0 16px;background:var(--cream-2);border-bottom:1px solid rgb(13 21 48 / .1)}
.doc-addr{flex:1;min-width:0;height:28px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:8px;background:rgb(255 255 255 / .55);
  font-family:var(--mono);font-size:12.5px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.doc-addr b{color:var(--ink);font-weight:600}

.doc-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,4vw,64px);padding:clamp(24px,4vw,56px)}
@media (max-width:900px){ .doc-grid{grid-template-columns:1fr;padding:22px 18px 32px} }

/* índice lateral */
.toc{position:sticky;top:96px;align-self:start;font-size:14px}
.toc h2{margin:0 0 12px;font-size:13px;font-family:var(--mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.toc ol{margin:0;padding:0;list-style:none;display:grid;gap:2px;counter-reset:toc}
.toc a{display:flex;gap:10px;padding:7px 10px;border-radius:8px;color:var(--ink);text-decoration:none;line-height:1.3;transition:background-color var(--t-fast)}
.toc a::before{counter-increment:toc;content:counter(toc,decimal-leading-zero);font-family:var(--mono);font-size:12px;color:var(--ink-soft);padding-top:1px}
.toc a:hover{background:var(--cream-2)}
.toc a[aria-current="true"]{background:var(--ink);color:var(--cream)}
.toc a[aria-current="true"]::before{color:var(--yellow)}
@media (max-width:900px){
  .toc{position:static;padding:14px;border-radius:12px;background:var(--cream-2)}
  .toc ol{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){ .toc ol{grid-template-columns:1fr} }

/* resumo: três afirmações, uma por linha */
.summary{margin:0 0 clamp(32px,4vw,48px);padding:0;list-style:none;border-top:2px solid var(--ink)}
.summary li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px 14px;padding:16px 0;border-bottom:1px solid rgb(13 21 48 / .14)}
.summary li::before{content:"";grid-column:1;grid-row:1 / span 2;width:12px;height:12px;margin:7px 0 0 6px;background:var(--orange);transform:rotate(45deg);border-radius:2px}
.summary strong{grid-column:2;font-size:19px;letter-spacing:-.02em;font-weight:800;color:var(--ink)}
.summary span{grid-column:2;color:var(--ink-soft);line-height:1.5;max-width:62ch}

/* sem dock nas páginas internas: o aviso fica à direita, longe do conteúdo principal */
@media (min-width:901px){ .page .ck{left:auto;right:clamp(16px,2.2vw,32px);transform-origin:100% 100%} }

/* texto */
.prose{max-width:70ch;font-size:16.5px;line-height:1.65;color:var(--ink)}
.prose section{scroll-margin-top:96px;padding-top:8px}
.prose section + section{margin-top:clamp(34px,4vw,48px)}
.prose h2{display:flex;align-items:baseline;gap:12px;margin:0 0 14px;font-size:clamp(25px,2.6vw,32px);line-height:1.05;letter-spacing:-.035em;font-weight:900;color:var(--cobalt);text-wrap:balance}
.prose h2 .n{font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:0;color:#b13c0b}
.prose h3{margin:22px 0 6px;font-size:17px;letter-spacing:-.01em;font-weight:800}
.prose p{margin:0 0 12px}
.prose ul{margin:0 0 12px;padding:0;list-style:none;display:grid;gap:8px}
.prose li{position:relative;padding-left:20px}
.prose li::before{content:"";position:absolute;left:3px;top:.62em;width:7px;height:7px;border-radius:1px;background:var(--orange);transform:rotate(45deg)}
.prose strong{font-weight:700}
.prose a{color:var(--cobalt);font-weight:600;text-decoration:underline;text-decoration-color:rgb(11 63 224 / .35);text-underline-offset:3px}
.prose a:hover{text-decoration-color:var(--cobalt)}
.prose .inline-btn{font:inherit;color:var(--cobalt);font-weight:600;text-decoration:underline;text-decoration-color:rgb(11 63 224 / .35);text-underline-offset:3px;border-radius:4px}
.prose .inline-btn:hover{text-decoration-color:var(--cobalt)}
.page-foot [aria-current="page"]{text-decoration-color:var(--yellow);color:var(--yellow)}
.prose code{font-family:var(--mono);font-size:.86em;padding:2px 6px;border-radius:6px;background:var(--cream-2);white-space:nowrap}

/* tabelas: no celular viram blocos */
.table{width:100%;margin:6px 0 14px;border-collapse:collapse;font-size:15px}
.table th{text-align:left;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);padding:0 12px 10px 0;border-bottom:2px solid var(--ink)}
.table td{vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid rgb(13 21 48 / .14);line-height:1.45}
.table td:first-child{font-weight:700}
@media (max-width:640px){
  .table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .table,.table tbody,.table tr,.table td{display:block;width:100%}
  .table tr{padding:12px 0;border-bottom:1px solid rgb(13 21 48 / .14)}
  .table td{border:0;padding:2px 0}
  .table td::before{content:attr(data-label);display:block;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-top:6px}
}

/* sua escolha atual */
.choice{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:16px 0 8px;padding:14px 16px;border-radius:14px;background:var(--ink);color:var(--cream)}
.choice-state{display:flex;align-items:center;gap:10px;font-weight:600}
.choice-state i{width:10px;height:10px;border-radius:50%;background:var(--yellow);flex:none}
.choice-state[data-state="yes"] i{background:var(--orange)}
.choice-state[data-state="none"] i{background:rgb(246 239 224 / .45)}
.choice .ck-btn{margin-left:auto;border-color:rgb(246 239 224 / .4);color:var(--cream);height:40px;padding:0 16px}
.choice .ck-btn:hover{border-color:var(--cream)}
.choice :focus-visible{box-shadow:0 0 0 3px var(--ink),0 0 0 6px var(--yellow)}

/* rodapé */
.page-foot{max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 40px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;font-size:14px;color:var(--cream)}
.page-foot nav{display:flex;flex-wrap:wrap;gap:6px 18px}
.page-foot a,.page-foot button{color:var(--cream);text-decoration:underline;text-decoration-color:rgb(246 239 224 / .35);text-underline-offset:3px;font-size:14px}
.page-foot a:hover,.page-foot button:hover{text-decoration-color:var(--yellow)}
