/* Feuille de style partagée des pages légales PerfMgr. */
:root{ --bg:#070b14; --panel:#0d1424; --text:#f4f5fa; --muted:#aeb4c4; --line:rgba(139,111,224,.25); --accent:#b9a9ef; --accent-strong:#6d4fc4; }
*{ box-sizing:border-box }
html{ scroll-behavior:smooth }
body{
  margin:0; background:radial-gradient(ellipse at 50% -10%,rgba(109,79,196,.28),transparent 55%),var(--bg);
  color:var(--text); font-family:'Manrope',system-ui,sans-serif; -webkit-font-smoothing:antialiased;
  line-height:1.7; min-height:100vh; display:flex; flex-direction:column;
}
a{ color:var(--accent); text-decoration:none }
a:hover{ color:#e0d8ff; text-decoration:underline }
::selection{ background:var(--accent-strong); color:#fff }

.legal-nav{
  position:sticky; top:0; z-index:10; display:flex; align-items:center; justify-content:space-between;
  padding:16px 40px; background:rgba(9,13,22,.72); backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.legal-nav .brand{ display:flex; align-items:center; gap:11px; color:#fff }
.legal-nav .brand img{ width:34px; height:34px }
.legal-nav .brand span{ font-family:'Baloo 2',sans-serif; font-weight:800; font-size:20px; letter-spacing:-.5px }
.legal-nav .home{ font-size:14px; font-weight:700; padding:9px 18px; border:1px solid var(--line); border-radius:980px; color:#cfd3e0 }
.legal-nav .home:hover{ background:rgba(109,79,196,.18); text-decoration:none }

main{ flex:1; width:100%; max-width:860px; margin:0 auto; padding:6vh 40px 8vh }
.eyebrow{ font-family:'Anton',sans-serif; letter-spacing:2px; font-size:13px; color:var(--accent); margin:0 0 10px }
h1{ font-family:'Anton',sans-serif; font-size:clamp(30px,5vw,52px); letter-spacing:.5px; margin:0 0 8px; line-height:1.05 }
.updated{ color:#7c869c; font-size:13.5px; margin:0 0 40px }
h2{ font-family:'Baloo 2',sans-serif; font-weight:800; font-size:22px; margin:44px 0 14px; color:#fff }
h3{ font-size:17px; margin:26px 0 8px; color:#e7e9f2 }
p,li{ color:var(--muted); font-size:15.5px }
ul{ padding-left:22px }
li{ margin:6px 0 }
strong{ color:#e7e9f2 }
.card{ background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:22px 26px; margin:18px 0 }
.card p{ margin:6px 0 }
table.meta{ width:100%; border-collapse:collapse; margin:10px 0 }
table.meta td{ padding:9px 12px; border-bottom:1px solid rgba(255,255,255,.07); vertical-align:top; font-size:15px }
table.meta td:first-child{ color:#e7e9f2; font-weight:700; width:42%; white-space:nowrap }
.toc{ display:flex; flex-wrap:wrap; gap:8px 14px; margin:0 0 30px; font-size:13.5px; font-weight:600 }

footer.legal-foot{ background:#e9eaef; color:#111827; padding:34px 40px }
footer.legal-foot .inner{ max-width:860px; margin:0 auto }
footer.legal-foot nav{ display:flex; flex-wrap:wrap; gap:10px 22px; font-size:13px; font-weight:600; margin-bottom:14px }
footer.legal-foot a{ color:#3f2f8a }
footer.legal-foot .copy{ color:#6b7284; font-size:13.5px }

@media (max-width:600px){
  .legal-nav{ padding:14px 20px }
  main{ padding:5vh 22px 7vh }
  footer.legal-foot{ padding:28px 22px }
}
