/* Pages légales Byll : mêmes couleurs que le site, lecture confortable */
:root{
  --paper:#FFFFFF; --mist:#E6EAF4; --ink:#0A1230; --soft:#3A4466; --line:#D5DBEA; --link:#2346B8; --mark:#FFF1A8; --mark-ink:#3A2E00;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0B0912; --mist:#17131F; --ink:#F4F1FF; --soft:#C9C2E6; --line:#2C2640; --link:#B9AEFF; --mark:#4A3A00; --mark-ink:#FFE88A;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#0B0912; --mist:#17131F; --ink:#F4F1FF; --soft:#C9C2E6; --line:#2C2640; --link:#B9AEFF; --mark:#4A3A00; --mark-ink:#FFE88A;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Poppins",system-ui,sans-serif;font-weight:500;font-size:17px;line-height:1.65;background:var(--paper);color:var(--ink)}
:focus-visible{outline:3px solid var(--link);outline-offset:3px}
.skip{position:absolute;left:12px;top:-60px;background:var(--paper);color:var(--ink);padding:10px 16px;border-radius:10px;font-weight:600}
.skip:focus{top:12px}
header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px clamp(16px,4vw,40px);border-bottom:1px solid var(--line)}
header a{color:var(--ink);font-weight:800;font-size:22px;text-decoration:none;letter-spacing:-.03em}
header nav a{font-size:15px;font-weight:600;color:var(--link);letter-spacing:0}
main{max-width:760px;margin:0 auto;padding:48px 16px 80px}
h1{font-size:clamp(34px,6vw,56px);line-height:1.05;letter-spacing:-.035em;font-weight:800;margin-bottom:10px}
.upd{color:var(--soft);font-size:15px;margin-bottom:36px}
h2{font-size:24px;line-height:1.2;letter-spacing:-.02em;font-weight:800;margin:40px 0 12px}
h3{font-size:18px;font-weight:700;margin:24px 0 8px}
p,ul,dl,table{margin-bottom:14px}
ul{padding-left:22px}
li{margin-bottom:6px}
a{color:var(--link);text-underline-offset:3px}
dl{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:8px 18px}
dt{font-weight:700}
dd{color:var(--ink)}
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{text-align:left;vertical-align:top;padding:10px 8px;border-bottom:1px solid var(--line)}
th{font-weight:700}
.box{background:var(--mist);border-radius:14px;padding:18px 20px;margin:20px 0}
mark{background:var(--mark);color:var(--mark-ink);padding:0 4px;border-radius:4px;font-weight:600}
footer{border-top:1px solid var(--line);padding:24px 16px;text-align:center;font-size:15px;color:var(--soft)}
footer a{margin:0 9px}
@media (max-width:560px){dl{grid-template-columns:1fr}dt{margin-top:8px}}
