/* Valores visuais vêm de app/tokens.css, copiado somente durante a montagem. */
* { box-sizing: border-box; }
body { margin: 0; background: var(--papel); color: var(--tinta); font-family: var(--fonte-interface); font-size: var(--t-3); line-height: var(--lh-3); }
a { color: var(--acao); text-underline-offset: .2em; overflow-wrap: anywhere; }
a:hover { color: var(--acao-press); }
:focus-visible { outline: var(--foco-largura) solid var(--acao); outline-offset: var(--foco-respiro); }
.pular { position: absolute; top: var(--e-2); left: var(--e-3); z-index: var(--z-barra); transform: translateY(-200%); background: var(--papel-alto); padding: var(--e-3); }
.pular:focus { transform: none; }
.pagina { width: min(var(--medida), calc(100% - var(--e-4) * 2)); margin: auto; }
.cabecalho { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--e-3); padding-block: var(--e-4); }
.marca { color: var(--tinta); text-decoration: none; font-size: var(--t-4); font-weight: var(--peso-forte); min-height: var(--alvo); display: inline-flex; align-items: center; }
.marca svg, .assinatura svg { display: block; width: var(--lateral); max-width: 100%; height: auto; }
.marca .lockup-contorno, .assinatura .lockup-contorno { fill: var(--papel); stroke: var(--fio); }
.assinatura { max-width: 100%; }
.rodape .assinatura p { margin: var(--e-2) 0 0; color: var(--tinta-fraca); }
nav { display: flex; flex-wrap: wrap; gap: var(--e-1) var(--e-3); }
nav a { display: inline-flex; align-items: center; min-height: var(--alvo); text-decoration: none; }
nav a[aria-current] { text-decoration: underline; font-weight: var(--peso-forte); }
.caderno { display: grid; grid-template-columns: var(--e1-lateral-caderno) minmax(0, 1fr); gap: var(--e-4); padding-block: var(--e-4) var(--e-6); }
.margem { padding-block: var(--e-4); }
.margem p { margin: 0 0 var(--e-3); }
.margem small { color: var(--tinta-fraca); font-size: var(--t-2); }
main { min-width: 0; background: var(--papel-alto); border: var(--fio-largura) solid var(--fio); border-radius: var(--raio-2); padding: var(--e-5); }
.etiqueta { color: var(--tinta-fraca); font-size: var(--t-2); margin: 0 0 var(--e-3); }
h1 { margin: 0 0 var(--e-4); font-size: var(--t-6); line-height: 1.12; letter-spacing: var(--tr-6); font-weight: var(--peso-medio); text-wrap: balance; }
.resumo { font-size: var(--t-4); line-height: var(--lh-3); }
p { margin: 0 0 var(--e-3); }
.aviso { margin-block: var(--e-4) var(--e-5); padding: var(--e-3) var(--e-4); background: var(--papel); border-radius: var(--raio-2); }
.aviso strong { font-weight: var(--peso-forte); }
.aviso p { margin: var(--e-1) 0 0; color: var(--tinta-fraca); }
section { margin-top: var(--e-5); }
section + section { border-top: var(--fio-largura) solid var(--fio); padding-top: var(--e-4); }
h2 { margin: 0 0 var(--e-3); font-size: var(--t-4); line-height: var(--lh-4); font-weight: var(--peso-forte); text-wrap: balance; }
code { font-family: var(--fonte-dado); font-size: .9em; overflow-wrap: anywhere; }
.acoes { display: flex; flex-wrap: wrap; gap: var(--e-3); align-items: center; }
.acoes a { min-height: var(--alvo); display: inline-flex; gap: var(--e-2); align-items: center; }
.acoes a:not(.acao) { display: inline-block; padding-block: var(--e-2); }
.acao { padding: var(--e-2) var(--e-3); background: var(--acao); color: var(--papel-alto); border-radius: var(--raio-1); text-decoration: none; }
.acao:hover { background: var(--acao-press); color: var(--papel-alto); }
.rodape { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--e-4); padding-block: var(--e-4) var(--e-5); border-top: var(--fio-largura) solid var(--fio); font-size: var(--t-2); }
.rodape p { margin: 0; }
.rodape span { display: block; color: var(--tinta-fraca); margin-top: var(--e-1); }
@media (max-width: 50rem) { .caderno { grid-template-columns: 1fr; gap: var(--e-3); padding-top: 0; } .margem { display: flex; flex-wrap: wrap; gap: var(--e-2); padding: 0; } .margem p { margin: 0; } main { padding: var(--e-4); } h1 { font-size: var(--t-5); } .resumo { font-size: var(--t-3); } }
@media print { .cabecalho, .margem, .pular { display: none; } .pagina { width: 100%; } .caderno { display: block; padding: 0; } main { border: 0; padding: 0; } }
