/* Extrait de confidentialite.html — sorti du HTML pour etre mis en cache
   independamment de la page, et pour permettre une CSP sans
   'unsafe-inline'. Charge a la meme position : cascade inchangee. */

:root{
  --cream:#E3E3C4; --cream-50:rgba(227,227,196,.5); --c20:rgba(227,227,196,.2);
  --c12:rgba(227,227,196,.12); --ink:#050B14;
  --safe-t:env(safe-area-inset-top,0px); --safe-b:env(safe-area-inset-bottom,0px);
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:'Afacad',system-ui,sans-serif;color:var(--cream);
  background:linear-gradient(180deg,#000 0%,#0A1931 100%);
  background-attachment:fixed;min-height:100vh;
  padding:calc(28px + var(--safe-t)) 20px calc(60px + var(--safe-b));
  -webkit-font-smoothing:antialiased;
}
.wrap{width:min(720px,100%);margin:0 auto}
.back{
  display:inline-flex;align-items:center;gap:8px;margin-bottom:34px;
  font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--cream);opacity:.6;text-decoration:none;
}
.back:hover{opacity:1}
.logo{width:min(132px,34vw);display:block;margin-bottom:30px}
.logo img{width:100%;display:block}
h1{font-size:clamp(28px,6vw,38px);font-weight:700;line-height:1.12;letter-spacing:-.01em}
.upd{margin-top:10px;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  font-weight:700;color:var(--cream-50)}
.lead{margin-top:22px;font-size:17.5px;line-height:1.6;opacity:.88}
.rule{display:flex;align-items:center;gap:6px;margin:32px 0}
.rule .ln{flex:1 1 auto;height:1px;background:var(--c20)}
.rule .d5{width:5px;height:5px;border-radius:50%;background:var(--cream);opacity:.55;flex:none}
.rule .r7{width:7px;height:7px;border-radius:50%;border:1px solid var(--cream);opacity:.55;flex:none}
nav.toc{border:1px solid var(--c20);border-radius:12px;padding:16px 18px;margin-bottom:36px}
nav.toc p{font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  opacity:.4;margin-bottom:10px}
nav.toc ol{list-style:none;counter-reset:t;display:flex;flex-direction:column;gap:6px}
nav.toc li{counter-increment:t;font-size:14.5px;line-height:1.4}
nav.toc a{color:var(--cream);opacity:.78;text-decoration:none}
nav.toc a::before{content:counter(t) ". ";opacity:.45}
nav.toc a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
h2{margin:42px 0 14px;font-size:21px;font-weight:700;line-height:1.25;scroll-margin-top:24px}
h3{margin:26px 0 8px;font-size:16px;font-weight:700;line-height:1.3}
p,li{font-size:16px;line-height:1.68}
p{margin-bottom:14px;opacity:.88}
ul,ol.body{margin:0 0 16px 20px}
ul li,ol.body li{margin-bottom:8px;opacity:.88}
strong{font-weight:700;opacity:1}
a{color:var(--cream);text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:var(--c20)}
a:hover{text-decoration-color:var(--cream)}
.box{border:1px solid var(--c20);border-radius:12px;padding:16px 18px;margin:20px 0;
  background:rgba(227,227,196,.035)}
.box p:last-child{margin-bottom:0}
.box .t{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  opacity:.55;margin-bottom:8px}
.tbl{width:100%;border-collapse:collapse;margin:16px 0 22px;font-size:14.5px}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:11px 12px;
  border-bottom:1px solid var(--c12);line-height:1.5}
.tbl th{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  opacity:.45;border-bottom-color:var(--c20)}
.tbl td{opacity:.88}
.tbl tr:last-child td{border-bottom:0}
.wrapscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
footer{margin-top:52px;padding-top:26px;border-top:1px solid var(--c20);
  display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center}
footer a{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  opacity:.7;text-decoration:none}
footer a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
footer .sp{flex:1}
footer small{font-size:12px;opacity:.35;letter-spacing:.04em}
@media (max-width:520px){
  p,li{font-size:15.5px}
  .lead{font-size:16.5px}
  h2{font-size:19px;margin-top:36px}
}
