/* Блог академии v2 — стилистика главной (hr-*): чернильный фон, Manrope, неоновый розовый. Подключается после academy-blog-v1.css. */
@font-face{font-family:'Manrope';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/speed-v2/755fa076675e6f6181d8.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/speed-v2/e6fa40b6715a310a22d3.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/speed-v2/e7e0cf40cb44208e4c9c.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/speed-v2/0404e9f6404a474c0e70.woff2) format('woff2')}

:root{
  --b2-ink:#0d0c10;--b2-ink-2:#141118;--b2-panel:#18131c;--b2-panel-2:#1f1824;
  --b2-plum:#1d0f1e;--b2-line:#ffffff1a;--b2-line-2:#ffffff2e;
  --b2-text:#ece4ea;--b2-soft:#cdbfc9;--b2-muted:#9b8c98;
  --b2-neon:#ff2e9a;--b2-neon-soft:#ffc4e6;--b2-lilac:#8f63ff;
  --b2-font:'Manrope',-apple-system,'Helvetica Neue',Arial,sans-serif;
  --b2-ease:cubic-bezier(.2,.7,.1,1);
  /* переопределяем токены v1, чтобы унаследованные правила стали тёмными */
  --paper:var(--b2-ink);--ink:var(--b2-text);--muted:var(--b2-muted);--pink:var(--b2-neon);--night:var(--b2-ink);--line:var(--b2-line)
}
html body{background:var(--b2-ink);color:var(--b2-text);font-family:var(--b2-font)}
html body button,html body input{font-family:var(--b2-font)}
html body ::selection{background:#ff2e9a55;color:#fff}
html body a:focus-visible,html body button:focus-visible,html body input:focus-visible,html body summary:focus-visible{outline:3px solid var(--b2-neon);outline-offset:4px}
.bl-wrap{width:min(1200px,calc(100% - 2*clamp(16px,4vw,48px)))}

/* ---------- HERO (статья и список) ---------- */
html body .bl-hero{position:relative;isolation:isolate;background:
  radial-gradient(ellipse 60% 70% at 8% 0%,#40122e 0,transparent 60%),
  radial-gradient(ellipse 45% 60% at 95% 10%,#2a1640 0,transparent 65%),
  var(--b2-ink);padding:0 0 clamp(48px,7vw,96px);border-bottom:1px solid var(--b2-line)}
.bl-hero::after{content:'';position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,#ff2e9a66,transparent);z-index:-1}
html body .bl-crumb{color:var(--b2-muted);font-size:13px;font-weight:500}
html body .bl-crumb a{color:var(--b2-soft);transition:color .2s}
html body .bl-crumb a:hover{color:var(--b2-neon)}
html body .bl-kicker{display:flex;align-items:center;gap:10px;color:var(--b2-neon);font-size:15px;font-weight:700;letter-spacing:0;margin-bottom:18px}
html body .bl-kicker::before{content:'';width:28px;height:2px;border-radius:2px;background:currentColor}
html body .bl-hero h1{font-family:var(--b2-font);font-weight:800;letter-spacing:-.035em;line-height:1.04;color:#fff;max-width:20ch}
html body .bl-article-hero h1{font-size:clamp(34px,5.2vw,64px);margin-bottom:26px}
html body .bl-byline{color:var(--b2-muted);gap:10px 22px;font-size:14px;align-items:center}
html body .bl-byline>*{display:inline-flex;align-items:center;gap:8px}
html body .bl-byline>*+*::before{content:'';width:4px;height:4px;border-radius:50%;background:#ffffff40}
html body .bl-byline a{color:var(--b2-neon-soft);text-decoration:none;font-weight:600}
html body .bl-lead,html body .bl-hero p.bl-lead{color:var(--b2-soft);font-size:clamp(17px,1.6vw,20px)}
html body .bl-textlink{color:var(--b2-neon);border-bottom-color:#ff2e9a66}
html body .bl-hero .bl-cover{transform:rotate(2deg)}
html body .bl-hero .bl-cover img{border-radius:120px 24px 24px 24px;box-shadow:0 40px 90px -30px #000,0 0 0 1px var(--b2-line)}
html body .bl-hero .bl-cover figcaption{background:var(--b2-neon);box-shadow:0 14px 40px -10px #ff2e9acc;border-radius:12px;font-weight:600;color:#fff}

/* ---------- ПРОГРЕСС ЧТЕНИЯ ---------- */
html body .bl-progress{background:linear-gradient(90deg,var(--b2-neon),var(--b2-lilac));height:3px}

/* ---------- РАСКЛАДКА СТАТЬИ ---------- */
html body .bl-layout{padding:clamp(36px,5vw,64px) 0 clamp(56px,7vw,96px);gap:clamp(36px,5vw,72px)}
html body .bl-toc{background:var(--b2-panel);border:1px solid var(--b2-line);border-radius:22px;padding:24px 22px;top:104px;font-size:14px}
html body .bl-toc>strong{color:#fff;font-weight:800;font-size:15px;letter-spacing:-.01em}
html body .bl-toc ol{color:#6f6270;gap:10px;margin:0}
html body .bl-toc a{color:var(--b2-soft);transition:color .2s}
html body .bl-toc a:hover{color:var(--b2-neon)}
html body .bl-toc button{border:1px solid var(--b2-line-2);color:var(--b2-neon-soft);background:transparent;border-radius:999px;min-height:40px;font-weight:600;transition:border-color .2s,background .2s}
html body .bl-toc button:hover{border-color:var(--b2-neon);background:#ff2e9a14}
html body .bl-copy-status{color:var(--b2-muted);font-size:12px}

/* ---------- ТЕКСТ ---------- */
html body .bl-prose{color:var(--b2-soft);font-size:18px;line-height:1.78}
html body .bl-prose a{color:var(--b2-neon-soft);text-decoration:underline;text-decoration-color:#ff2e9a80;text-underline-offset:4px;text-decoration-thickness:1.5px;transition:color .2s,text-decoration-color .2s}
html body .bl-prose a:hover{color:#fff;text-decoration-color:var(--b2-neon)}
html body .bl-prose .bl-intro{color:#f3ecf1;font-size:clamp(19px,1.8vw,22px);line-height:1.65;font-weight:500;padding-left:22px;border-left:3px solid var(--b2-neon)}
html body .bl-prose h2{color:#fff;font-family:var(--b2-font);font-weight:800;letter-spacing:-.03em;line-height:1.15;font-size:clamp(26px,2.6vw,34px);margin:56px 0 20px}
html body .bl-prose h3{color:#fff;font-weight:700;letter-spacing:-.015em;font-size:clamp(20px,1.9vw,23px);margin:34px 0 12px}
html body .bl-prose strong{color:#fff}
html body .bl-prose ul{background:var(--b2-panel);border:1px solid var(--b2-line);border-left:0;border-radius:18px;padding:22px 26px 22px 24px;list-style:none;position:relative;overflow:hidden}
html body .bl-prose ul::before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(var(--b2-neon),var(--b2-lilac))}
html body .bl-prose ul>li{position:relative;padding:6px 0 6px 26px;font-size:17px;color:var(--b2-soft)}
html body .bl-prose ul>li::before{content:'';position:absolute;left:4px;top:.95em;width:8px;height:8px;border-radius:50%;background:var(--b2-neon);box-shadow:0 0 12px #ff2e9a99}
html body .bl-prose ol>li::marker{color:var(--b2-neon);font-weight:700}
html body .bl-prose table{color:var(--b2-soft)}
html body .bl-prose th{background:var(--b2-plum);color:#fff}
html body .bl-prose th,html body .bl-prose td{border-bottom-color:var(--b2-line)}
html body .bl-prose .bl-table-scroll{border:1px solid var(--b2-line);border-radius:16px}
html body .bl-prose .bl-cover img{border-radius:24px;box-shadow:0 30px 80px -40px #000,0 0 0 1px var(--b2-line)}
html body .bl-prose .bl-cover figcaption{color:var(--b2-muted)}
html body .bl-prose blockquote{margin:28px 0;padding:22px 26px;border-radius:18px;background:var(--b2-panel);border:1px solid var(--b2-line);color:#f3ecf1}

/* ---------- FAQ ---------- */
html body .bl-prose details{border:1px solid var(--b2-line);border-radius:18px;background:var(--b2-panel);padding:0;margin:10px 0;transition:border-color .2s,background .2s}
html body .bl-prose details:hover{border-color:var(--b2-line-2)}
html body .bl-prose details[open]{border-color:#ff2e9a55;background:var(--b2-panel-2)}
html body .bl-prose summary{list-style:none;padding:18px 56px 18px 22px;color:#fff;font-weight:700;position:relative}
html body .bl-prose summary::-webkit-details-marker{display:none}
html body .bl-prose summary::after{content:'+';position:absolute;right:20px;top:50%;width:28px;height:28px;margin-top:-14px;border-radius:50%;display:grid;place-items:center;background:#ff2e9a1f;color:var(--b2-neon);font-size:20px;line-height:1;transition:transform .25s var(--b2-ease)}
html body .bl-prose details[open]>summary::after{transform:rotate(45deg)}
html body .bl-prose details>p{margin:0;padding:0 22px 20px;color:var(--b2-soft)}

/* ---------- CTA КУРСА ---------- */
html body .bl-course{position:relative;overflow:hidden;border-radius:28px;padding:clamp(26px,4vw,40px);margin:48px 0;border:1px solid #ff2e9a40;background:
  radial-gradient(ellipse 70% 90% at 0% 0%,#4a1236 0,transparent 60%),
  radial-gradient(ellipse 50% 70% at 100% 100%,#2b1745 0,transparent 65%),var(--b2-ink-2);color:#fff}
html body .bl-course h3{color:#fff;font-weight:800;letter-spacing:-.03em;font-size:clamp(22px,2.4vw,30px);margin:0 0 12px}
html body .bl-course p{color:var(--b2-soft);font-size:16px;line-height:1.7}
html body .bl-course>a{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;margin:12px 10px 0 0;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;color:#fff;box-shadow:0 0 0 1.5px #ffffff40 inset;transition:transform .2s var(--b2-ease),box-shadow .2s,background .2s}
html body .bl-course>a:hover{transform:translateY(-2px);box-shadow:0 0 0 1.5px #fff inset}
html body .bl-course>a:first-of-type{background:var(--b2-neon);box-shadow:0 12px 40px -10px #ff2e9acc}
html body .bl-course>a:first-of-type::after{content:'↗'}
html body .bl-course>a:first-of-type:hover{box-shadow:0 18px 50px -10px #ff2e9a}
html body .bl-course p a{display:inline;min-height:0;padding:0;margin:0;box-shadow:none;background:none;color:var(--b2-neon-soft);text-decoration:underline;text-decoration-color:#ff2e9a80;text-underline-offset:3px;font-weight:600;font-size:inherit}
html body .bl-course p a::after{content:none}
html body .bl-course p a:hover{transform:none;box-shadow:none;color:#fff}

/* ---------- ЗАМЕТКА И ПРОФИЛЬ ---------- */
html body .bl-note{background:transparent;border:1px dashed var(--b2-line-2);border-radius:18px;color:var(--b2-muted);font-size:14px;line-height:1.7}
html body .bl-note a{color:var(--b2-neon-soft)}
html body .bl-profile-card{background:linear-gradient(135deg,#1c1320,#141118);border:1px solid var(--b2-line);border-radius:26px;color:var(--b2-soft)}
html body .bl-profile-card h2{color:#fff;font-size:clamp(22px,2.2vw,28px);margin-top:0}
html body .bl-profile-card a{color:var(--b2-neon-soft)}
html body .bl-profile-card img{border-radius:20px}

/* ---------- ПОХОЖИЕ СТАТЬИ / КАРТОЧКИ ---------- */
html body .bl-related{background:var(--b2-ink-2);border-top:1px solid var(--b2-line);padding:clamp(56px,7vw,96px) 0}
html body .bl-related h2,html body .bl-catalog h2{color:#fff;font-weight:800;letter-spacing:-.035em;font-size:clamp(28px,3.4vw,46px)}
html body .bl-related>.bl-wrap>p a{color:var(--b2-neon-soft);font-weight:700}
html body .bl-card{background:var(--b2-panel);border:1px solid var(--b2-line);border-radius:24px;color:var(--b2-text);transition:transform .25s var(--b2-ease),border-color .25s,box-shadow .25s,background .25s}
html body .bl-card:hover{transform:translateY(-4px);border-color:#ff2e9a66;background:var(--b2-panel-2);box-shadow:0 24px 60px -30px #ff2e9a66}
html body .bl-card h3{color:#fff;font-weight:800;letter-spacing:-.025em;font-size:clamp(20px,1.7vw,23px)}
html body .bl-card h3 a{color:#fff}
html body .bl-card p{color:var(--b2-muted)}
html body .bl-card .bl-meta{color:var(--b2-muted);font-weight:600}
html body .bl-card .bl-meta span:first-child{color:var(--b2-neon);background:#ff2e9a17;border-radius:999px;padding:5px 11px}
html body .bl-card .bl-read{color:var(--b2-neon-soft);font-weight:700}

/* ---------- КАТАЛОГ /ru/blog ---------- */
html body .bl-catalog{color:var(--b2-text)}
html body .bl-search{color:var(--b2-muted)}
html body .bl-search input{background:var(--b2-panel);border:1px solid var(--b2-line-2);color:#fff;border-radius:999px;padding:15px 22px;min-height:52px}
html body .bl-search input::placeholder{color:#7f707c}
html body .bl-search input:focus{border-color:var(--b2-neon);outline:none;box-shadow:0 0 0 4px #ff2e9a26}
html body .bl-filters button{border:1px solid var(--b2-line-2);color:var(--b2-soft);background:transparent;font-weight:600;transition:border-color .2s,background .2s,color .2s}
html body .bl-filters button:hover{border-color:var(--b2-neon);color:#fff}
html body .bl-filters button[aria-pressed=true]{background:var(--b2-neon);border-color:var(--b2-neon);color:#fff;box-shadow:0 10px 30px -12px #ff2e9acc}
html body .bl-count{color:var(--b2-muted)}
html body .bl-empty{color:var(--b2-soft)}
html body .bl-empty button{background:var(--b2-neon);border-radius:999px;font-weight:700}
html body .bl-paths{border-top-color:var(--b2-line)}
html body .bl-paths>div{background:var(--b2-panel);border:1px solid var(--b2-line);border-radius:24px;color:var(--b2-soft)}
html body .bl-paths h3{color:#fff;font-weight:800;letter-spacing:-.025em}
html body .bl-paths p{color:var(--b2-muted)}
html body .bl-paths a{color:var(--b2-neon-soft);font-weight:700}
html body .bl-home-feature{background:radial-gradient(ellipse 60% 90% at 50% 0%,#40122e 0,transparent 70%),var(--b2-ink-2);font-family:var(--b2-font)}
html body .bl-home-feature a{background:var(--b2-neon);color:#fff!important;border:0;font-weight:700;box-shadow:0 12px 40px -10px #ff2e9acc}

/* ---------- ФУТЕР ---------- */
html body .bl-footer{background:#09080b;border-top:1px solid var(--b2-line);color:var(--b2-soft)}
html body .bl-footer a{color:var(--b2-soft);transition:color .2s}
html body .bl-footer a:hover{color:var(--b2-neon)}
html body .bl-bottom{border-top-color:var(--b2-line);color:var(--b2-muted)}

/* ---------- ИНТЕРАКТИВ (blog-interactive-v1) ---------- */
html body .ix{background:linear-gradient(160deg,#1c1421,#141118);border:1px solid var(--b2-line);border-radius:26px;padding:clamp(22px,3vw,32px);box-shadow:0 30px 80px -50px #ff2e9a55}
html body .bl-prose .ix .ix-title{color:#fff;font-weight:800;letter-spacing:-.03em}
html body .bl-prose .ix .ix-hint{color:var(--b2-muted)}
html body .bl-prose .ix-list{background:none;border:0;border-radius:0;padding:0;overflow:visible}
html body .bl-prose .ix-list::before{content:none}
html body .bl-prose .ix-list li{border-top-color:var(--b2-line);padding:0}
html body .bl-prose .ix-list li::before{content:none}
html body .ix-list label,html body .ix-quiz fieldset label{color:var(--b2-soft);border-radius:12px;transition:background .2s}
html body .ix-list label:hover,html body .ix-quiz fieldset label:hover{background:#ffffff08}
html body .ix-list input:checked+span{color:var(--b2-muted);text-decoration-color:#ff2e9a99}
html body .ix input[type=checkbox],html body .ix input[type=radio]{accent-color:var(--b2-neon)}
html body .ix-bar{background:#ffffff14}
html body .ix-bar span{background:linear-gradient(90deg,var(--b2-neon),var(--b2-lilac))}
html body .bl-prose .ix .ix-status{color:var(--b2-soft)}
html body .ix-btn{border:1px solid var(--b2-line-2);color:var(--b2-soft);background:transparent;font-weight:600;font-family:var(--b2-font)}
html body .ix-btn:hover{border-color:var(--b2-neon);color:#fff}
html body .ix-primary{background:var(--b2-neon);border-color:var(--b2-neon);color:#fff;font-weight:700;min-height:50px;padding:0 26px;box-shadow:0 12px 40px -12px #ff2e9acc}
html body .ix-primary:hover{background:#ff4aa9;border-color:#ff4aa9;transform:translateY(-1px)}
html body .ix-quiz fieldset{border-top-color:var(--b2-line)}
html body .ix-quiz legend{color:#fff}
html body .ix-result{background:radial-gradient(ellipse 80% 120% at 0% 0%,#4a1236 0,transparent 70%),#0f0c12;border:1px solid #ff2e9a40;color:var(--b2-soft)}
html body .ix-result:focus{outline:none}
html body .ix-result strong{color:var(--b2-neon-soft)}
html body .bl-prose .ix-acc-item{border-top-color:var(--b2-line);border-radius:0;background:transparent;border-left:0;border-right:0;border-bottom:0;margin:0}
html body .bl-prose .ix-acc-item[open]{background:transparent}
html body .bl-prose .ix-acc-item summary{padding:16px 40px 16px 0}
html body .bl-prose .ix-acc-item summary::after{content:'+';right:0;background:#ff2e9a1f}
html body .bl-prose .ix-acc-item p{padding:0;margin:0 0 18px}
html body .ix-search{color:var(--b2-muted)}
html body .ix-search input{background:var(--b2-ink);border:1px solid var(--b2-line-2);color:#fff;border-radius:999px;padding:13px 20px}
html body .ix-search input:focus{border-color:var(--b2-neon);outline:none;box-shadow:0 0 0 4px #ff2e9a26}
html body .ix-term{border-top-color:var(--b2-line)}
html body .ix-term dt{color:#fff}
html body .ix-term dd{color:var(--b2-soft)}
html body .bl-cost,html body .ix-calc.bl-cost{background:linear-gradient(160deg,#1c1421,#141118);border:1px solid var(--b2-line);border-radius:26px;color:var(--b2-soft)}
html body .bl-cost h2{color:#fff}
html body .bl-cost-fields label{color:var(--b2-muted)}
html body .bl-cost-fields input{background:var(--b2-ink);border:1px solid var(--b2-line-2);color:#fff;border-radius:14px}
html body .bl-cost-fields input:focus{border-color:var(--b2-neon);outline:none;box-shadow:0 0 0 4px #ff2e9a26}
html body .bl-cost .bl-cost-result{color:var(--b2-soft)}
html body .bl-cost-result strong{color:var(--b2-neon);font-weight:800;letter-spacing:-.02em}
html body .bl-cost .bl-cost-note{color:var(--b2-muted)}

/* ---------- МОБИЛЬНЫЕ ---------- */
@media(max-width:1000px){html body .bl-toc{padding:20px 18px}}
@media(max-width:700px){
  html body .bl-toc{position:static;background:var(--b2-panel);margin-bottom:28px;border-radius:20px}
  html body .bl-prose{font-size:17px}
  html body .bl-prose .bl-intro{padding-left:16px}
  html body .bl-prose ul{padding:18px 18px 18px 16px}
  html body .bl-course>a{width:100%;justify-content:center;margin-right:0}
  html body .bl-card{border-radius:20px}
  html body .bl-hero .bl-cover{transform:none}
  html body .bl-hero .bl-cover img{border-radius:64px 18px 18px 18px}
}
@media(hover:none){html body .bl-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){
  html body .bl-card,html body .bl-course>a,html body .ix-primary,html body .bl-prose summary::after{transition:none}
  html body .bl-card:hover,html body .bl-course>a:hover,html body .ix-primary:hover{transform:none}
  html body .bl-hero .bl-cover{transform:none}
}
@media print{html body{background:#fff;color:#000}html body .bl-prose,html body .bl-prose h2{color:#000}}
