/* Документация Pulsar Ads — тот же «белый космос», что у сайта: засечки в заголовках, Onest в тексте,
   меню разделов слева, колонка текста ~70 знаков. Шкалы: кегли 13·15·17·19·24·32·48, отступы шагом 8. */
:root{color-scheme:light;--bg:#FAF9FD;--ink:#15121F;--ink-2:#5D596E;--ink-3:#8A86A0;--line:#E6E0F5;--vio:#7A3CFF;
  --serif:'Noto Serif Display',Georgia,serif;--sans:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;
  --gut:clamp(16px,5vw,80px)}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;overflow-x:hidden;color:var(--ink);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;
  background:radial-gradient(90% 60% at 85% 0%,rgba(185,138,255,.22),transparent 60%),radial-gradient(70% 50% at 0% 30%,rgba(142,168,255,.16),transparent 60%),var(--bg)}
a{color:var(--vio);text-decoration:none}
a:hover{text-decoration:underline}
.top{position:sticky;top:0;z-index:20;height:72px;display:flex;align-items:center;gap:32px;padding:0 var(--gut);
  background:rgba(250,249,253,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line)}
.logo{display:flex;align-items:center;gap:10px;font:600 19px/1 'Montserrat',sans-serif;color:var(--ink)}
.logo:hover{text-decoration:none}
.logo svg{width:26px;height:26px}
.logo i{font-style:normal;background:linear-gradient(100deg,#C77DFF,#B98AFF 50%,#8EA8FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.menu{display:flex;gap:28px;margin:0 auto;font:500 15px/1 var(--sans)}
.menu a{color:var(--ink-2)}
.go{height:40px;padding:0 18px;display:inline-flex;align-items:center;border-radius:999px;font:500 15px/1 var(--sans);background:var(--ink);color:#fff}
.go:hover{text-decoration:none}
.wrap{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding:48px var(--gut) 96px;max-width:1240px;margin:0 auto}
.side{position:sticky;top:104px;align-self:start;display:flex;flex-direction:column;gap:2px;font-size:15px}
.side b{font:600 13px/1 var(--sans);letter-spacing:.06em;color:var(--ink-3);margin:16px 0 8px}
.side a{color:var(--ink-2);padding:7px 12px;border-radius:10px}
.side a:hover{background:rgba(122,60,255,.06);text-decoration:none}
.side a[aria-current="page"]{color:var(--ink);background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-weight:500}
article{max-width:72ch}
article h1{margin:0 0 8px;font:500 clamp(36px,4vw,56px)/1.05 var(--serif);letter-spacing:-.02em}
article .meta{margin:0 0 40px;color:var(--ink-3);font-size:15px}
article h2{margin:48px 0 12px;font:600 24px/1.25 var(--sans);letter-spacing:-.01em}
article h3{margin:32px 0 8px;font:600 19px/1.3 var(--sans)}
article p,article li{color:#2B2838}
article ul,article ol{padding-left:22px}
article li+li{margin-top:6px}
article code{font:500 .9em var(--mono);background:rgba(122,60,255,.08);padding:2px 6px;border-radius:6px}
article pre{margin:16px 0;padding:20px 24px;border-radius:20px;background:#14111F;color:#DCD8EC;overflow-x:auto;font:400 14px/1.7 var(--mono)}
article pre code{background:none;padding:0;color:inherit}
article table{width:100%;border-collapse:collapse;margin:16px 0;font-size:15.5px}
article th,article td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
article th{font-weight:600;color:var(--ink-2)}
.note{margin:24px 0;padding:16px 20px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2)}
.hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px;margin-top:32px}
.hub a{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-radius:20px;background:rgba(255,255,255,.8);box-shadow:0 20px 40px -30px rgba(80,50,170,.4),inset 0 0 0 1px #fff;color:var(--ink)}
.hub a:hover{text-decoration:none;transform:translateY(-2px)}
.hub a span{color:var(--ink-2);font-size:15px}
.hub a strong{font-weight:600}
footer{padding:40px var(--gut);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;color:var(--ink-2);font-size:15px}
footer nav{display:flex;flex-wrap:wrap;gap:16px 28px}
footer a{color:var(--ink-2)}
@media (max-width:900px){
  .menu{display:none}.go{margin-left:auto}
  .wrap{grid-template-columns:1fr;gap:24px;padding-top:24px}
  .side{position:relative;top:auto;flex-direction:row;flex-wrap:wrap;gap:6px}
  .side b{width:100%;margin:8px 0 2px}
  .side a{background:rgba(255,255,255,.7);box-shadow:inset 0 0 0 1px var(--line)}
  article table{display:block;overflow-x:auto;white-space:normal}   /* таблица листается сама, страница вбок не едет */
  article th,article td{min-width:120px}
}
