/* Общий стиль юридических страниц. Тема переключается тем же классом
   .light на <html>, что и на главной, и берётся из того же localStorage. */
:root{
  --bg:#03060d;
  --surface:#0b1120;
  --surface-2:#111a2e;
  --line:#1a2436;
  --line-soft:#141d2e;
  --text:#f2f6fc;
  --text-dim:#93a2bd;
  --text-mute:#5f6d86;
  --accent:#38bdf8;
  --accent-ink:#04121f;
}
html.light{
  --bg:#f7f8fa;
  --surface:#ffffff;
  --surface-2:#f2f4f7;
  --line:#e2e6ec;
  --line-soft:#eceff3;
  --text:#0a0e17;
  --text-dim:#5a6577;
  --text-mute:#8b95a6;
  --accent:#0284c7;
  --accent-ink:#ffffff;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:'Unbounded',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  font-weight:300;line-height:1.75;letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased;
  transition:background .35s ease,color .35s ease;
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

.shell{max-width:800px;margin:0 auto;padding:0 24px}

header{
  position:sticky;top:0;z-index:20;
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  background:color-mix(in srgb,var(--bg) 78%,transparent);
  border-bottom:1px solid var(--line-soft);
}
.bar{display:flex;align-items:center;gap:16px;height:70px}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:1.1rem;
  letter-spacing:-.05em;color:var(--text);text-decoration:none}
.brand:hover{text-decoration:none}
.brand img{width:30px;height:30px;border-radius:50%;object-fit:cover;display:block}
.bar .spacer{flex:1}
.back-link{font-size:.78rem;color:var(--text-dim);text-decoration:none}
.back-link:hover{color:var(--accent);text-decoration:none}

.theme-btn{
  width:36px;height:36px;flex:none;display:grid;place-items:center;cursor:pointer;
  border:1px solid var(--line);border-radius:10px;background:var(--surface);
  color:var(--text-dim);transition:color .2s,border-color .2s;
}
.theme-btn:hover{color:var(--text);border-color:var(--accent)}
.theme-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round}
.theme-btn .moon{display:none}
html.light .theme-btn .moon{display:block}
html.light .theme-btn .sun{display:none}

main{padding:56px 0 90px}
h1{margin:0 0 10px;font-size:clamp(1.5rem,6vw,2.5rem);font-weight:800;
  letter-spacing:-.055em;line-height:1.12}

/* Длинные русские слова («конфиденциальности») на узком экране не влезают
   в строку и растягивают всю страницу — разрешаем перенос внутри слова */
h1,h2,p,li,td,th,summary{overflow-wrap:break-word;word-break:break-word}
.updated{margin:0 0 14px;font-size:.74rem;color:var(--text-mute)}
.intro{
  margin:0 0 40px;padding:20px 22px;border-radius:16px;
  background:var(--surface);border:1px solid var(--line);
  font-size:.85rem;line-height:1.7;color:var(--text-dim);
}
h2{
  margin:44px 0 14px;font-size:1.08rem;font-weight:700;letter-spacing:-.035em;
  line-height:1.35;color:var(--text);
}
h2 .num{color:var(--accent);margin-right:10px;font-weight:800}
p{margin:0 0 14px;font-size:.87rem;color:var(--text-dim)}
ul{margin:0 0 16px;padding-left:0;list-style:none}
li{position:relative;padding:0 0 11px 24px;font-size:.87rem;color:var(--text-dim)}
li::before{
  content:"";position:absolute;left:4px;top:.72em;width:5px;height:5px;
  border-radius:50%;background:var(--accent);
}
strong,b{font-weight:600;color:var(--text)}
.note{
  margin:36px 0 0;padding:18px 20px;border-radius:14px;
  background:var(--surface-2);border:1px solid var(--line);
  font-size:.8rem;line-height:1.68;color:var(--text-dim);
}
table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:.82rem}
th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);
  color:var(--text-dim);vertical-align:top}
th{color:var(--text);font-weight:600;font-size:.78rem}
.tw{overflow-x:auto}

footer{border-top:1px solid var(--line-soft);padding:36px 0 48px}
.foot{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.foot-links{display:flex;flex-wrap:wrap;gap:22px;font-size:.76rem}
.foot-links a{color:var(--text-dim)}
.foot-links a:hover{color:var(--accent);text-decoration:none}
.copy{font-size:.76rem;color:var(--text-mute)}

@media (max-width:560px){
  .shell{padding:0 18px}
  main{padding:40px 0 70px}
}
