/**
 * legal-shared.css — páginas públicas legais do Thrust OS
 * ------------------------------------------------
 * /privacidade, /termos e /exclusao-de-dados compartilham este arquivo.
 *
 * PÚBLICAS DE VERDADE: nenhuma delas carrega gate.js, shell.js ou
 * qualquer script que dependa de sessão. O Meta (e qualquer revisor)
 * precisa abri-las deslogado, e um redirect pro login reprovaria a
 * revisão do app. Por isso também não há link pro dashboard aqui --
 * só volta pra landing pública.
 *
 * Usa os tokens do design system (identidade Thrust OS), mas sem o
 * Shell: estas telas não pertencem ao produto logado.
 */

*{box-sizing:border-box;margin:0;padding:0;}

body{
  background:var(--atlas-canvas);
  color:var(--atlas-text);
  font-family:var(--atlas-font-body);
  -webkit-font-smoothing:antialiased;
  line-height:1.7;
  min-height:100vh;
}

.legal-topo{
  border-bottom:var(--atlas-hairline);
  background:color-mix(in srgb,var(--atlas-surface) 70%,transparent);
}
.legal-topo .env{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;}
.legal-marca{
  display:flex;align-items:center;gap:9px;text-decoration:none;white-space:nowrap;
  font-family:var(--atlas-font-display);font-weight:700;font-size:16px;letter-spacing:0.01em;color:var(--atlas-text);
}
.legal-marca img{width:22px;height:22px;display:block;}
.legal-marca .accent{color:var(--atlas-route);}
.legal-voltar{font-size:13.5px;color:var(--atlas-text-soft);text-decoration:none;}
.legal-voltar:hover{color:var(--atlas-text);}

.env{max-width:780px;margin:0 auto;padding:0 24px;}

main.legal{padding:56px 0 96px;}

.legal-eyebrow{
  display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:var(--atlas-radius-full);
  background:color-mix(in srgb,var(--atlas-gold) 8%,transparent);
  border:0.8px solid color-mix(in srgb,var(--atlas-gold) 30%,transparent);
  color:var(--atlas-gold-deep);font-size:12px;font-weight:500;letter-spacing:0.03em;text-transform:uppercase;
}
.legal-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--atlas-gold);flex-shrink:0;}

h1{
  font-family:var(--atlas-font-display);font-weight:700;letter-spacing:-0.02em;
  font-size:clamp(28px,4.4vw,40px);line-height:1.12;margin:18px 0 10px;text-wrap:balance;
}
.legal-atualizado{font-size:13.5px;color:var(--atlas-text-faint);margin-bottom:40px;}

h2{
  font-family:var(--atlas-font-display);font-weight:700;letter-spacing:-0.015em;
  font-size:21px;line-height:1.25;margin:40px 0 12px;text-wrap:balance;
}
h3{font-family:var(--atlas-font-display);font-weight:700;font-size:16px;margin:26px 0 8px;}

p{font-size:15.5px;color:var(--atlas-text-soft);margin-bottom:14px;}
p strong,li strong{color:var(--atlas-text);font-weight:600;}
a{color:var(--atlas-gold-deep);}

ul,ol{margin:0 0 16px 20px;}
li{font-size:15.5px;color:var(--atlas-text-soft);margin-bottom:9px;}

/* Tabela de dados tratados -- rola sozinha em tela estreita, o corpo
   da página nunca rola na horizontal. */
.legal-tabela-wrap{overflow-x:auto;margin:0 0 20px;}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:14.5px;}
th,td{text-align:left;padding:11px 14px 11px 0;border-bottom:var(--atlas-hairline);vertical-align:top;}
th{font-size:11.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--atlas-text-faint);font-weight:500;}
td{color:var(--atlas-text-soft);}
td:first-child{color:var(--atlas-text);font-weight:500;white-space:nowrap;}

/* Bloco de aviso: usado para o que DEPENDE de você preencher. Âmbar,
   que nesta paleta é a cor de atenção. */
.legal-aviso{
  background:var(--atlas-ocre-soft);border:1px solid var(--atlas-ocre);
  border-radius:var(--atlas-radius-card);padding:18px 20px;margin:22px 0;
}
.legal-aviso p{color:var(--atlas-text);margin-bottom:0;font-size:14.5px;}
.legal-aviso p + p{margin-top:10px;}

.legal-card{
  background:var(--atlas-superficie-card);border:var(--atlas-hairline);
  border-radius:var(--atlas-radius-card);padding:22px 24px;margin:22px 0;
}
.legal-card p:last-child{margin-bottom:0;}

footer.legal{border-top:var(--atlas-hairline);padding:28px 0;}
footer.legal p{font-size:13px;color:var(--atlas-text-faint);margin:0;}

@media (max-width:640px){
  main.legal{padding:36px 0 64px;}
  h2{font-size:19px;}
}
