/* Layout: «лента ЭКГ» — шапка на миллиметровке с живой кардиограммой и монитором, цифры, блок «Россия», оглавление-список, материалы; только светлая тема */
:root{
  --bg:#f5f8fb; --surface:#ffffff; --surface-2:#edf3f8; --line:#dbe5ee;
  --ink:#10243a; --muted:#557086;
  --acc:#d33a4c; --acc-soft:#fde8eb; --acc2:#1a7fa8; --acc2-soft:#e2f1f8;
  --amb:#d9822b; --amb-soft:#fcefdc; --good:#13866f; --gold:#e0a91f;
  --grid:rgba(211,58,76,.075);
  --fd:"Manrope",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --fb:"Onest",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --fm:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:18px; --shadow:0 1px 2px rgba(16,36,58,.04),0 12px 32px rgba(16,36,58,.08);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--fb);-webkit-font-smoothing:antialiased}
a{color:var(--acc2)}
h1,h2,h3,h4{margin:0;text-wrap:balance}
:focus-visible{outline:3px solid var(--acc2);outline-offset:3px;border-radius:6px}
.wrap{max-width:1080px;margin:0 auto;padding-inline:20px}
.lbl{font:500 11.5px/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.progress{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--acc2),var(--acc));z-index:60}

/* ===== ШАПКА: миллиметровка ЭКГ ===== */
.hero{position:relative;overflow:hidden;isolation:isolate;background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/8px 8px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/8px 8px,
  linear-gradient(rgba(211,58,76,.12) 1px,transparent 1px) 0 0/40px 40px,
  linear-gradient(90deg,rgba(211,58,76,.12) 1px,transparent 1px) 0 0/40px 40px,
  linear-gradient(170deg,#ffffff 0%,#f7fbfe 45%,#eaf4fa 100%)}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:90px;background:linear-gradient(rgba(245,248,251,0),var(--bg));z-index:-1}
#ecg{position:absolute;left:0;right:0;top:56%;height:150px;width:100%;z-index:-1;opacity:.9}
.hgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding-block:56px 64px}
.htext{display:grid;gap:14px;justify-items:start}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;font:600 12.5px/1 var(--fm);letter-spacing:.16em;text-transform:uppercase;color:var(--acc2)}
.beat{width:10px;height:10px;border-radius:50%;background:var(--acc);animation:beat 1.1s ease-in-out infinite}
@keyframes beat{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(211,58,76,.45)}15%{transform:scale(1.35)}30%{transform:scale(1)}45%{transform:scale(1.2)}60%{box-shadow:0 0 0 12px rgba(211,58,76,0)}}
.hero h1{font:800 clamp(46px,7.2vw,92px)/.95 var(--fd);letter-spacing:-.035em;color:var(--ink)}
.hero h1 span{display:block;font-size:.36em;letter-spacing:-.01em;font-weight:700;color:var(--acc);margin-top:12px}
.hsub{margin:0;font:500 clamp(18px,2vw,21px)/1.45 var(--fb);max-width:34ch;color:#2b4157}
.hsub b{color:var(--ink);font-weight:700}
.pills{display:flex;gap:8px;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.85);font-size:14px;font-weight:500}
.pill svg{width:16px;height:16px;color:var(--acc)}
.cta{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;background:var(--acc);color:#fff;font:700 16px/1 var(--fd);text-decoration:none;transition:transform .2s;animation:ctab 3.2s ease-in-out infinite}
.cta:hover{transform:translateY(-2px)}
.cta svg{width:18px;height:18px;animation:nudge 1.6s ease-in-out infinite}
@keyframes nudge{50%{transform:translateY(3px)}}
@keyframes ctab{0%,100%{box-shadow:0 0 0 0 rgba(211,58,76,.35)}50%{box-shadow:0 0 0 10px rgba(211,58,76,0)}}
.load>*{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}
.load>*:nth-child(2){animation-delay:.07s}.load>*:nth-child(3){animation-delay:.14s}.load>*:nth-child(4){animation-delay:.21s}.load>*:nth-child(5){animation-delay:.28s}.load>*:nth-child(6){animation-delay:.35s}.load>*:nth-child(7){animation-delay:.42s}
@keyframes rise{from{transform:translateY(14px)}to{transform:none}}

/* монитор */
.mon{position:relative;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:26px;padding:18px 18px 16px;box-shadow:0 30px 70px rgba(26,127,168,.16);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;gap:12px;animation:monin 1s .2s cubic-bezier(.2,.7,.2,1) both}
@keyframes monin{from{transform:translateY(20px) rotate(1deg);opacity:.3}to{transform:none;opacity:1}}
.mon-top{display:flex;justify-content:space-between;align-items:center;font:500 11px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.mon-top i{font-style:normal;display:inline-flex;align-items:center;gap:6px;color:var(--good)}
.mon-top i::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--good);animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.25}}
.mon-scr{position:relative;height:150px;border-radius:16px;overflow:hidden;background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/10px 10px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/10px 10px,#fffafa;border:1px solid #f5d9dd}
#mecg{position:absolute;inset:0;width:100%;height:100%}
.mon-hr{position:absolute;right:10px;top:8px;z-index:1;padding:6px 10px;border-radius:12px;background:rgba(255,255,255,.88);text-align:right;font:500 10.5px/1 var(--fm);color:var(--muted);letter-spacing:.1em}
.mon-hr b{display:block;font:800 34px/1 var(--fd);color:var(--acc);letter-spacing:-.02em;margin-top:4px}
.mon-hr b small{font-size:.4em;color:var(--muted);font-weight:600}
/* резерв без JS: нарисованная кардиограмма бежит по экрану */
.mon-svg{position:absolute;left:0;top:30px;width:200%;height:90px;animation:run 4s linear infinite}
.mon-svg path{fill:none;stroke:var(--acc);stroke-width:2.2;stroke-linejoin:round}
@keyframes run{to{transform:translateX(-50%)}}
html.js .mon-svg{display:none}
.mon-par{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mon-par a{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:var(--surface-2);text-decoration:none;color:inherit;min-width:0;transition:transform .2s}
.mon-par a:hover{transform:translateY(-2px)}
.mon-par span{font:500 10px/1.2 var(--fm);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mon-par b{font:800 22px/1 var(--fd);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.mon-par a:nth-child(1) b{color:var(--acc)}.mon-par a:nth-child(2) b{color:var(--acc2)}.mon-par a:nth-child(3) b{color:var(--good)}
.mon-par small{font-size:11.5px;color:var(--muted);line-height:1.3}

/* МедПлюсы */
.coin{flex:none;display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff6cf,#f6cf5a 55%,#e0a91f);box-shadow:inset 0 0 0 2px #fbe39a,0 2px 6px rgba(201,146,18,.35);color:#7a5200;font:800 12px/1 var(--fd);animation:coinspin 4.5s ease-in-out infinite}
@keyframes coinspin{0%,70%,100%{transform:rotateY(0)}80%{transform:rotateY(180deg)}90%{transform:rotateY(360deg)}}
.mp{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;background:linear-gradient(100deg,#fff8e1,#fffdf5);border:1px solid #f3dc95;color:var(--ink);text-decoration:none;font:500 15px/1.35 var(--fb);transition:.2s;max-width:520px}
.mp b{font-weight:700}
.mp small{display:block;color:var(--muted);font-size:13px}
a.mp:hover{border-color:var(--gold);transform:translateY(-1px)}
.cb{font:700 11px/1 var(--fm);color:#9a6a00;background:#fff1c2;border-radius:999px;padding:3px 6px;font-style:normal}

/* меню */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(245,248,251,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;gap:6px;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.nav .wrap::-webkit-scrollbar{display:none}
.chip{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 9px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;font:500 14px/1 var(--fb);transition:.2s}
.chip i{font:500 11.5px/1 var(--fm);font-style:normal;color:var(--muted)}
.chip:hover{border-color:var(--acc2)}
.chip.on{background:var(--acc2);border-color:var(--acc2);color:#fff}
.chip.on i{color:#fff;opacity:.85}
.chip.ru i{color:var(--good)}.chip.on.ru i{color:#fff}
.chip.on .cb{background:#fff}

/* цифры */
.nums{padding-block:44px 10px}
.nrow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.nrow a{position:relative;padding:20px 18px 18px;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:16px;display:grid;gap:6px;transition:transform .25s,box-shadow .25s;min-width:0;overflow:hidden}
.nrow a::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--acc)}
.nrow a:nth-child(2)::before{background:var(--acc2)}.nrow a:nth-child(3)::before{background:var(--good)}.nrow a:nth-child(4)::before{background:var(--amb)}
.nrow a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.nrow b{font:800 clamp(30px,3.6vw,42px)/1 var(--fd);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.nrow b small{font-size:.45em;font-weight:600;color:var(--muted);letter-spacing:0}
.nrow span{font-size:14px;color:var(--muted);line-height:1.4}
.nrow em{font:500 11px/1 var(--fm);font-style:normal;color:var(--muted);letter-spacing:.08em}

/* Россия */
.rublock{padding-block:48px 8px}
.ru-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.ru-head h2{font:800 30px/1.1 var(--fd);letter-spacing:-.02em}
.ru-head p{margin:0;color:var(--muted);font-size:15px}
.ru-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.rcard .bd{padding:18px 20px 20px;display:flex;flex-direction:column;gap:12px;flex:1}
.rcard h3{font:800 21px/1.25 var(--fd);letter-spacing:-.01em}
.rcard p{margin:0;font-size:15.5px}
.type{display:inline-flex;align-self:flex-start;padding:5px 10px;border-radius:999px;font:600 11px/1 var(--fb);letter-spacing:.06em;text-transform:uppercase;background:var(--acc2-soft);color:#11668a}
.type.ru{background:#e3f4ee;color:#0f7a5f}
.rstat{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rstat>div{background:var(--surface-2);border-radius:12px;padding:12px;display:grid;gap:4px}
.rstat b{font:800 26px/1 var(--fd);color:var(--acc);letter-spacing:-.02em}
.rstat span{font-size:13px;color:var(--muted);line-height:1.35}
.quote{margin:0;padding:12px 14px;border-left:3px solid var(--acc);background:var(--acc-soft);border-radius:0 12px 12px 0;font-size:15px;font-style:italic}
.note{font-size:13.5px;color:var(--muted);background:var(--surface-2);border-radius:10px;padding:10px 12px;margin:0}
.srcs{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px;margin-top:auto}
.srcs a{text-decoration:none;border-bottom:1px solid currentColor}
/* памятка пациенту */
.memo{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.memo li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;font-size:15px;line-height:1.4}
.memo button{width:26px;height:26px;border-radius:8px;border:2px solid var(--good);background:#fff;cursor:pointer;display:grid;place-items:center;padding:0;color:#fff;transition:.2s}
.memo button svg{width:16px;height:16px;opacity:0;transition:.2s}
.memo li.ok button{background:var(--good)}
.memo li.ok button svg{opacity:1}
.memo li.ok span{color:var(--muted)}
.memo-bar{display:flex;align-items:center;gap:10px;font:500 12.5px/1 var(--fm);color:var(--muted)}
.memo-bar .tr{flex:1;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.memo-bar .fl{height:100%;width:0;background:var(--good);border-radius:999px;transition:width .5s}

/* оглавление */
.toc{padding-block:52px 10px}
.toc h2{font:800 30px/1.1 var(--fd);letter-spacing:-.02em;margin-bottom:16px}
.tlist{display:grid;gap:10px}
.trow{display:grid;grid-template-columns:150px 1fr auto;gap:18px;align-items:center;padding:10px;border-radius:16px;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s,border-color .25s}
.trow:hover{transform:translateX(4px);box-shadow:var(--shadow);border-color:var(--acc2)}
.trow .im{width:150px;height:64px;border-radius:10px;overflow:hidden}
.trow img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.trow:hover img{transform:scale(1.08)}
.trow .t{display:grid;gap:6px;min-width:0}
.trow .k{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font:500 12px/1 var(--fm);color:var(--muted)}
.trow h3{font:600 17px/1.3 var(--fb)}
.trow .no{font:800 30px/1 var(--fd);color:var(--acc2);opacity:.3;padding-right:8px}

/* материалы */
.news{padding-block:76px 0}
.news + .news{border-top:1px solid var(--line);margin-top:76px}
.kick{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font:500 13px/1 var(--fm);color:var(--muted);margin-bottom:14px}
.news h2{font:800 clamp(27px,3.4vw,40px)/1.12 var(--fd);letter-spacing:-.025em;max-width:26ch}
.news h2 .n{display:inline-block;color:transparent;-webkit-text-stroke:1.5px var(--acc);margin-right:.25em}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 24px}
.facts span{padding:7px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font:500 13.5px/1 var(--fb)}
.figure{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:837/360;max-width:100%;margin:0 0 28px;background:var(--surface-2)}
.figure img{width:100%;height:100%;object-fit:cover;display:block}
.figure .sweep{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.45) 50%,transparent 62%);background-size:260% 100%;background-position:130% 0;opacity:0}
.figure .scanline{position:absolute;left:0;right:0;top:0;height:3px;background:var(--acc);box-shadow:0 0 16px 3px rgba(211,58,76,.6);opacity:0}
.figure .vline{position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--acc);box-shadow:0 0 16px 3px rgba(211,58,76,.6);opacity:0}
.panel{position:absolute;left:18px;bottom:18px;width:min(300px,46%);padding:13px 15px;border-radius:14px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.95);box-shadow:0 8px 28px rgba(16,36,58,.15);font-size:13px}
.panel.r{left:auto;right:18px}
.panel .pt{font:500 10.5px/1.2 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.panel .big{font:800 26px/1 var(--fd);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.panel .big em{font-style:normal;color:var(--acc)}
.panel .pb{display:grid;grid-template-columns:78px 1fr 44px;gap:8px;align-items:center;margin:5px 0}
.panel .pb .tr{height:8px;border-radius:999px;background:rgba(16,36,58,.1);overflow:hidden}
.panel .pb .fl{height:100%;border-radius:999px;background:var(--acc);transform-origin:0 50%}
.panel .pb .fl.m{background:#a9bccb}
.panel .pb b{font:700 13px/1 var(--fd);text-align:right}
.panel .tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.panel .tags span{padding:4px 8px;border-radius:999px;background:var(--acc2-soft);color:#11668a;font-size:11.5px;font-weight:500}
.replay{position:absolute;right:12px;top:12px;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;border:0;background:rgba(255,255,255,.92);color:var(--ink);font:500 12px/1 var(--fb);cursor:pointer;box-shadow:0 2px 10px rgba(16,36,58,.15);opacity:0;pointer-events:none;transition:opacity .4s}
.replay svg{width:13px;height:13px}
.figure.done .replay{opacity:1;pointer-events:auto}
.panel.r ~ .replay{right:auto;left:12px}
/* заставки картинок (только когда JS взвёл картинку) */
.figure.armed img{opacity:0}
.figure.armed .panel,.figure.armed .seq>*{opacity:0}
.figure.armed .grow2{transform:scaleX(0)}
.figure.play.circle img{animation:circ 1.5s cubic-bezier(.5,0,.2,1) both,drift 3.5s 1.5s linear both}
@keyframes circ{from{opacity:1;clip-path:circle(0% at 50% 50%);transform:scale(1.12)}to{opacity:1;clip-path:circle(80% at 50% 50%);transform:scale(1.05)}}
.figure.play.curtain img{animation:curt 1.3s cubic-bezier(.7,0,.2,1) both,drift 3.5s 1.3s linear both}
@keyframes curt{from{opacity:1;clip-path:inset(0 50% 0 50%);transform:scale(1.08)}to{opacity:1;clip-path:inset(0);transform:scale(1.05)}}
.figure.play.scan img{animation:scani 1.8s linear both,drift 3.5s 1.8s linear both}
@keyframes scani{from{opacity:1;clip-path:inset(0 0 100% 0);transform:scale(1.05)}to{opacity:1;clip-path:inset(0);transform:scale(1.05)}}
.figure.play.scan .scanline{animation:scl 1.8s linear both}
@keyframes scl{0%{top:0;opacity:1}95%{top:100%;opacity:1}100%{top:100%;opacity:0}}
.figure.play.sweepx img{animation:swx 1.7s linear both,drift 3.5s 1.7s linear both}
@keyframes swx{from{opacity:1;clip-path:inset(0 100% 0 0);transform:scale(1.05)}to{opacity:1;clip-path:inset(0);transform:scale(1.05)}}
.figure.play.sweepx .vline{animation:vl 1.7s linear both}
@keyframes vl{0%{left:0;opacity:1}95%{left:100%;opacity:1}100%{left:100%;opacity:0}}
.figure.play.pulse img{animation:pls 1.6s cubic-bezier(.3,1.4,.5,1) both,drift 3.5s 1.6s linear both}
@keyframes pls{0%{opacity:0;transform:scale(.92);filter:brightness(1.3)}30%{opacity:1;transform:scale(1.07)}45%{transform:scale(1.02)}60%{transform:scale(1.06);filter:none}100%{opacity:1;transform:scale(1.05)}}
.figure.play.haze img{animation:hz 1.7s cubic-bezier(.2,.7,.2,1) both,drift 3.5s 1.7s linear both}
@keyframes hz{from{opacity:1;filter:blur(10px) brightness(1.25) saturate(.6);transform:scale(1.18)}to{opacity:1;filter:none;transform:scale(1.05)}}
@keyframes drift{from{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1.01) translateX(-1%)}}
.figure.play .sweep{animation:sw 1.3s 1.1s ease-out both}
@keyframes sw{0%{opacity:1;background-position:130% 0}100%{opacity:1;background-position:-30% 0}}
.figure.play .panel{animation:pin .7s 1.3s cubic-bezier(.2,.7,.2,1) both}
@keyframes pin{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.figure.play .seq>*{animation:pop .45s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(1.8s + var(--i,0)*.22s)}
@keyframes pop{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}
.figure.play .grow2{animation:gr 1.5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(2s + var(--i,0)*.3s)}
@keyframes gr{from{transform:scaleX(0)}to{transform:scaleX(1)}}

.lead{font:500 clamp(19px,2.1vw,23px)/1.45 var(--fb);max-width:46ch;margin:0 0 30px}
.lead mark{background:linear-gradient(transparent 58%,var(--acc-soft) 58%);color:inherit;padding:0 2px}
.viz{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;margin-bottom:28px}
.viz h4{margin:0 0 4px;font:700 16.5px/1.3 var(--fd)}
.viz .cap{margin:0 0 18px;font-size:14px;color:var(--muted)}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:26px}
.cols>div{min-width:0}
.cols h3{font:500 11.5px/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.cols ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.cols li{position:relative;padding-left:20px;font-size:16px;line-height:1.55}
.cols li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:2px;transform:rotate(45deg);background:var(--acc)}
.practice{background:var(--acc2-soft);border:1px solid #c4e1ee;border-radius:var(--r);padding:20px 22px;display:grid;grid-template-columns:auto 1fr;gap:14px;margin-bottom:14px}
.practice svg{width:26px;height:26px;color:var(--acc2)}
.practice b{display:block;font:500 11.5px/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:#11668a;margin-bottom:8px}
.practice p{margin:0;font-size:16.5px}
.patient{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;background:#eef8f3;border:1px solid #cbe8da;border-radius:14px;padding:14px 16px;margin-bottom:20px;font-size:15.5px}
.patient svg{width:22px;height:22px;color:var(--good)}
.patient b{display:block;font:500 11px/1 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:#0f7a5f;margin-bottom:6px}
.limits{background:var(--amb-soft);border:1px solid #f1d6b4;border-radius:14px;padding:14px 16px;margin:0 0 26px;display:grid;grid-template-columns:auto 1fr;gap:12px;font-size:15px}
.limits svg{width:22px;height:22px;color:var(--amb)}
.limits b{display:block;font:500 11px/1 var(--fm);letter-spacing:.14em;color:#9a5512;margin-bottom:6px}
.foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px/1.2 var(--fb);text-decoration:none;cursor:pointer;transition:border-color .2s,transform .2s}
.btn:hover{border-color:var(--acc2);transform:translateY(-1px)}
.btn svg{width:16px;height:16px;flex:none}
.btn.back{margin-left:auto;background:var(--acc2);border-color:var(--acc2);color:#fff;font-weight:600}

/* алгоритм */
.algo{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;list-style:none;margin:0;padding:0;counter-reset:a}
.algo li{min-width:0}
.algo button{width:100%;height:100%;display:grid;gap:6px;justify-items:start;text-align:left;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font:600 14px/1.25 var(--fb);color:var(--ink);transition:.25s;position:relative}
.algo button i{font:800 22px/1 var(--fd);font-style:normal;color:var(--acc2)}
.algo button[aria-pressed="true"]{background:var(--acc2);border-color:var(--acc2);color:#fff;transform:translateY(-3px);box-shadow:0 10px 22px rgba(26,127,168,.25)}
.algo button[aria-pressed="true"] i{color:#fff}
.algo li:not(:last-child) button::after{content:"";position:absolute;right:-9px;top:50%;width:10px;height:2px;background:var(--line)}
.algo-txt{margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--acc2-soft);font-size:15.5px;min-height:76px}
.algo-txt p{margin:0}
html.js .algo-txt p{display:none}
html.js .algo-txt p.on{display:block;animation:tli .4s ease-out both}
html.js .algo-txt p b{display:none}
.algo-txt p b{color:#11668a}
.auto{font:500 12px/1 var(--fm);color:var(--muted);margin-top:10px;display:block}

/* сетка точек */
.dots2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.dg{display:grid;gap:10px;min-width:0;max-width:300px}
.dg h5{margin:0;font:600 14.5px/1.3 var(--fb);display:flex;justify-content:space-between;gap:10px}
.dg h5 b{font:800 22px/1 var(--fd);color:var(--acc)}
.dg.c h5 b{color:#7b8fa1}
.grid100{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;max-width:260px}
.grid100 i{aspect-ratio:1;border-radius:50%;background:var(--surface-2);border:1px solid var(--line)}
.grid100 i.f{background:var(--acc);border-color:var(--acc)}
.dg.c .grid100 i.f{background:#7b8fa1;border-color:#7b8fa1}
html.js .grid100 i.f{background:var(--surface-2);border-color:var(--line)}
html.js .in .grid100 i.f{animation:dotf .3s ease-out both;animation-delay:calc(var(--k)*18ms)}
@keyframes dotf{to{background:var(--acc);border-color:var(--acc)}}
html.js .in .dg.c .grid100 i.f{animation-name:dotg}
@keyframes dotg{to{background:#7b8fa1;border-color:#7b8fa1}}
.orbig{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:baseline;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:14.5px;color:var(--muted)}
.orbig b{font:800 26px/1 var(--fd);color:var(--ink)}

/* полосы */
.mbar{display:grid;grid-template-columns:190px 1fr 74px;gap:12px;align-items:center;font-size:14.5px;margin:9px 0}
.mbar .tr{height:14px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.mbar .fl{height:100%;border-radius:999px;background:var(--acc);transform-origin:0 50%}
.mbar .fl.b{background:var(--acc2)}.mbar .fl.g{background:var(--good)}.mbar .fl.m{background:#a9bccb}.mbar .fl.a{background:var(--amb)}
.mbar b{font:800 17px/1 var(--fd);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.mbar small{display:block;font-size:12px;color:var(--muted)}
.scale{display:grid;grid-template-columns:190px 1fr 74px;gap:12px;font:500 11px/1 var(--fm);color:var(--muted)}
.scale div{display:flex;justify-content:space-between}
.mgrp{font:600 12px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px}

/* против */
.vs{display:grid;gap:14px}
.vs-h{display:grid;grid-template-columns:1fr minmax(0,200px) 1fr;gap:12px;font:700 13px/1 var(--fb);text-align:center}
.vs-h span:first-child{color:var(--acc)}.vs-h span:last-child{color:#5f7487}
.vrow{display:grid;grid-template-columns:1fr minmax(0,200px) 1fr;gap:12px;align-items:center}
.vrow .lft,.vrow .rgt{display:flex;align-items:center;gap:8px}
.vrow .lft{justify-content:flex-end}
.vrow .bar{height:16px;border-radius:999px;background:var(--acc)}
.vrow .rgt .bar{background:#a9bccb}
.vrow .lft .bar{transform-origin:100% 50%}.vrow .rgt .bar{transform-origin:0 50%}
.vrow b{font:800 17px/1 var(--fd);font-variant-numeric:tabular-nums;min-width:52px}
.vrow .lft b{text-align:right}
.vrow .mid{text-align:center;font-size:14px;line-height:1.3}
.vrow .mid small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.vrow.txt .mid{grid-column:1/-1}

/* перевёртыши */
.flips{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.flip{perspective:900px;height:150px;cursor:pointer;border:0;background:none;padding:0;font:inherit;color:inherit}
.flip .in{position:relative;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.flip.on .in{transform:rotateY(180deg)}
.flip .f,.flip .b{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;text-align:left;font-size:14.5px;line-height:1.4}
.flip .f{background:#fdeeee;border:1px solid #f2c6c6}
.flip .b{background:var(--acc2-soft);border:1px solid #c4e1ee;transform:rotateY(180deg)}
.flip .f>b,.flip .b>b{font:500 11px/1 var(--fm);letter-spacing:.14em}
.flip .f>b{color:#b23b3b}.flip .b>b{color:#11668a}
.flip .hint{margin-top:auto;font-size:12px;color:var(--muted)}
.flip .hint::after{content:" ↻";display:inline-block;animation:spin 2.4s ease-in-out infinite}
@keyframes spin{0%,60%{transform:rotate(0)}80%,100%{transform:rotate(360deg)}}
.flip:not(.on) .in{animation:wig 5s ease-in-out 3s infinite}
@keyframes wig{0%,88%,100%{transform:rotateY(0)}92%{transform:rotateY(14deg)}96%{transform:rotateY(-8deg)}}

/* ступени тяжести */
.sev{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:16px}
.sev span{padding:10px 8px;border-radius:10px;text-align:center;font:600 13px/1.2 var(--fb);background:var(--surface-2);position:relative}
.sev span:nth-child(1){background:#e6f4ee}.sev span:nth-child(2){background:#fff4d9}.sev span:nth-child(3){background:#fde3d0}.sev span:nth-child(4){background:#fbd4d9}
.sevnote{display:flex;gap:10px;align-items:center;margin-top:10px;font-size:14px;color:var(--muted)}
.sevnote b{font:800 20px/1 var(--fd);color:var(--acc2)}
.hop{display:inline-block;width:46px;height:20px}
.hop path{fill:none;stroke:var(--acc2);stroke-width:2;stroke-dasharray:60;animation:hopd 2.4s ease-in-out infinite}
@keyframes hopd{0%{stroke-dashoffset:60}50%,100%{stroke-dashoffset:0}}

/* график по годам */
.chart{width:100%;height:auto;display:block;max-width:720px;margin:0 auto}
.chart text{font:500 12px var(--fm);fill:var(--muted)}
.chart .lbig{font:800 18px var(--fd);fill:var(--ink)}
.chart .ln{fill:none;stroke:var(--acc);stroke-width:3;stroke-dasharray:6 6}
.chart .ref{stroke:var(--acc2);stroke-width:1.5;stroke-dasharray:3 4}
.chart .ax{stroke:var(--line);stroke-width:1}
.chart .pt{fill:var(--acc)}
html.js .chart .ln{stroke-dashoffset:600}
html.js .in .chart .ln{animation:lnd 1.6s ease-out both}
@keyframes lnd{from{stroke-dashoffset:600}to{stroke-dashoffset:0}}
html.js .chart .pt2{opacity:0}
html.js .in .chart .pt2{animation:tli .4s 1.4s both}

/* соцсети, подвал */
.social{margin-top:96px;background:linear-gradient(160deg,#eef6fb,#fdf0f2)}
.social .wrap{padding-block:46px;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}
.social h2{font:800 clamp(24px,3vw,32px)/1.15 var(--fd);letter-spacing:-.02em}
.social p{margin:8px 0 0;color:var(--muted)}
.s-icons{display:flex;gap:10px;flex-wrap:wrap}
.s-icons a{display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:14px;background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:500;transition:.2s}
.s-icons a:hover{border-color:var(--acc2);transform:translateY(-2px)}
.s-icons img{width:24px;height:24px}
footer{background:var(--surface);border-top:1px solid var(--line);color:var(--muted);font-size:13.5px}
footer .wrap{padding-block:22px 34px;display:grid;gap:8px}
footer b{color:var(--ink)}
.totop{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:48px;height:48px;border-radius:50%;border:0;background:var(--acc2);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.3s;z-index:55}
.totop.show{opacity:1;transform:none;pointer-events:auto}
.totop svg{width:20px;height:20px}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:12px 18px;border-radius:999px;font-size:14px;opacity:0;transition:.3s;z-index:70;pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* поделиться, подписка */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding:12px 14px;border-radius:14px;background:var(--surface);border:1px dashed var(--line)}
.sh-l{font:500 12px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.sh{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font:500 14px/1 var(--fb);text-decoration:none;cursor:pointer;transition:transform .2s,border-color .2s}
.sh:hover{transform:translateY(-2px);border-color:var(--acc2)}
.sh img{width:18px;height:18px;border-radius:5px}
.sh svg{width:16px;height:16px}
.rcard .share{margin-top:4px}
.subcta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;margin-top:14px;padding:14px 18px;border-radius:16px;background:linear-gradient(120deg,#e9f4fa,#fdeef0);border:1px solid #d6e6f0}
.subcta b{display:block;font:800 17px/1.2 var(--fd)}
.subcta span{font-size:14px;color:var(--muted)}
.subbtn{display:flex;gap:8px;flex-wrap:wrap}
.subbtn a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--acc2);color:#fff;text-decoration:none;font:600 14px/1 var(--fb);transition:transform .2s}
.subbtn a:nth-child(2){background:var(--acc)}
.subbtn a:hover{transform:translateY(-2px)}
.subbtn img{width:18px;height:18px;border-radius:5px;background:#fff}
.subcta.big{margin-top:56px;padding:26px 28px;border-radius:22px}
.subcta.big b{font-size:24px}

/* тест */
.quiz{padding-block:80px 0}
.qhead{display:grid;gap:8px;margin-bottom:20px}
.qhead h2{font:800 clamp(28px,3.4vw,40px)/1.1 var(--fd);letter-spacing:-.02em}
.qhead p{margin:0;color:var(--muted)}
.qhead .mp{max-width:none;margin-top:6px}
.qlist{display:grid;gap:14px}
.q{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px 22px}
.q h3{font:600 17px/1.4 var(--fb);display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.q h3 i{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--acc2-soft);color:var(--acc2);font:800 15px/1 var(--fd);font-style:normal}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts button{padding:11px 16px;border-radius:12px;border:1px solid var(--line);background:#fff;cursor:pointer;font:500 15px/1.25 var(--fb);color:var(--ink);text-align:left;transition:.2s}
.opts button:hover:not(:disabled){border-color:var(--acc2);transform:translateY(-1px)}
.opts button.ok{background:#e9f7f2;border-color:#9fd8c4;color:#0b6b54;font-weight:600}
.opts button.no{background:#fdeeee;border-color:#f2c0c0;color:#9b2c2c}
.opts button:disabled{cursor:default}
.ex{display:none;margin:12px 0 0;padding:12px 14px;border-radius:12px;background:var(--acc2-soft);font-size:15px}
.q.done .ex{display:block;animation:tli .4s ease-out both}
.ex a{font-weight:600}
.qres{margin-top:16px;padding:20px 22px;border-radius:18px;background:var(--surface);border:1px solid var(--line);display:grid;gap:8px;text-align:center;justify-items:center}
.qres .qscore{font:800 40px/1 var(--fd)}
.qres .qmsg{color:var(--muted)}
.qact{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}
.qres .sh{background:var(--bg)}
.mpres{display:none;align-items:center;gap:12px;margin-top:4px;padding:12px 18px;border-radius:14px;background:#fff8e1;color:#5c4100;font:600 16px/1.3 var(--fb);text-align:left}
.mpres.show{display:flex;animation:mppop .7s cubic-bezier(.2,1.6,.4,1) both}
.mpres .coin{width:40px;height:40px;font-size:15px}
.mpres small{display:block;font-weight:400;font-size:13px;color:#7a6330}
@keyframes mppop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}

/* ===== движение без скриптов ===== */
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
  .rv{animation:rv linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
  @keyframes rv{from{transform:scale(.95);opacity:.4}to{transform:none;opacity:1}}
  .progress{animation:prog linear both;animation-timeline:scroll(root)}
  @keyframes prog{to{transform:scaleX(1)}}
}}
.figure img,.rcard .ph img{animation:kbl 16s ease-in-out infinite alternate}
@keyframes kbl{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.1) translate(-2%,-1.5%)}}
.figure.done img{animation:kbl 16s ease-in-out infinite alternate}
.figure::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);background-size:300% 100%;animation:glint 7s ease-in-out 2s infinite}
@keyframes glint{0%,70%{background-position:150% 0}100%{background-position:-50% 0}}
.panel{animation:flo 6s ease-in-out infinite}
.figure.done .panel{opacity:1;animation:flo 6s ease-in-out infinite}
@keyframes flo{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
/* ===== движение со скриптом: графики растут при появлении ===== */
html.js .grow{transform:scaleX(0)}
html.js .in .grow{animation:gr 1.4s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0)*.12s)}
@keyframes tli{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* карточки «Россия»: картинка с плашкой */
.rfig{margin:0;border-radius:0;aspect-ratio:837/360}
.rfig .panel{width:auto;max-width:62%;padding:9px 12px}
.rfig .panel .pt{font-size:9.5px;margin-bottom:4px}
.rfig .panel .big{font-size:21px}
.rfig .panel .tags span{font-size:10.5px;padding:3px 7px}
.rfig .replay{top:auto;bottom:10px;right:10px}
.rfig .panel.r ~ .replay{right:auto;left:10px}
.rfig .panel.t{top:12px;bottom:auto}

@media (max-width:880px){
  .hgrid{grid-template-columns:1fr;gap:28px;padding-block:34px 46px}
  #ecg{top:auto;bottom:30%}
  .nrow{grid-template-columns:1fr 1fr}
  .ru-grid{grid-template-columns:1fr}
  .social .wrap{grid-template-columns:1fr}
  .algo{grid-template-columns:1fr 1fr}
  .algo li:last-child{grid-column:1/-1}
  .algo li button::after{display:none}
}
@media (max-width:620px){
  body{font-size:16px}
  .wrap{padding-inline:16px}
  .trow{grid-template-columns:96px 1fr;gap:12px}
  .trow .im{width:96px;height:64px}
  .trow .no{display:none}
  .cols,.flips,.dots2{grid-template-columns:1fr;gap:20px}
  .figure{aspect-ratio:4/3;border-radius:16px}
  .panel,.panel.r{left:10px;right:10px;bottom:10px;width:auto}
  .rfig{aspect-ratio:837/420}
  .rfig .panel,.rfig .panel.r{left:10px;right:auto;max-width:72%}
  .mbar,.scale{grid-template-columns:1fr 64px;gap:6px 10px}
  .mbar>span:first-child{grid-column:1/-1}
  .scale>span:first-child{display:none}
  .vrow,.vs-h{grid-template-columns:1fr 1fr;gap:8px}
  .vrow .mid{grid-column:1/-1;grid-row:1;text-align:left}
  .vs-h span:nth-child(2){display:none}
  .mon-par b{font-size:19px}
  .mon-par small{display:none}
  .sev span{font-size:11.5px;padding:8px 4px}
  .btn.back{margin-left:0;width:100%;justify-content:center;padding:13px 16px}
  .news{padding-block:56px 0}.news + .news{margin-top:56px}
  .share{gap:6px;padding:10px}.sh-l{width:100%;margin-bottom:2px}.sh{padding:8px 11px;font-size:13.5px}
  .subcta{padding:14px}.subbtn{width:100%}.subbtn a{flex:1;justify-content:center}
  .q{padding:16px}.opts button{width:100%}
}

/* ===== выпуск «Россия» ===== */
/* расходящиеся полосы */
.dvg{display:grid;gap:12px}
.dv{display:grid;grid-template-columns:minmax(0,260px) 1fr 84px;gap:14px;align-items:center;font-size:14.5px;line-height:1.3}
.dtr{display:grid;grid-template-columns:1fr 1fr;height:16px;position:relative}
.dtr::after{content:"";position:absolute;left:50%;top:-6px;bottom:-6px;width:2px;background:var(--ink);opacity:.25}
.dtr .neg,.dtr .pos{position:relative;height:100%;background:var(--surface-2)}
.dtr .neg{border-radius:999px 0 0 999px;display:flex;justify-content:flex-end}
.dtr .pos{border-radius:0 999px 999px 0}
.dtr i{display:block;height:100%;background:var(--acc2);border-radius:0 999px 999px 0;transform-origin:0 50%}
.dtr i.r{background:var(--good);border-radius:999px 0 0 999px;transform-origin:100% 50%}
.dv b{font:800 18px/1 var(--fd);text-align:right;font-variant-numeric:tabular-nums}
.dv b.m{color:var(--good)}.dv b.p{color:var(--acc2)}
/* пол и факторы */
.sexsw{display:inline-flex;padding:4px;border-radius:999px;background:var(--surface-2);gap:4px;margin-bottom:16px}
.sexsw button{border:0;background:none;padding:9px 16px;border-radius:999px;font:600 14px/1 var(--fb);color:var(--muted);cursor:pointer;transition:.25s}
.sexsw button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(16,36,58,.12)}
.fx{display:flex;flex-wrap:wrap;gap:8px}
.fx span{padding:9px 13px;border-radius:12px;background:var(--acc2-soft);color:#11668a;font:500 14.5px/1.2 var(--fb);transition:.35s}
.fx span.w{background:var(--acc-soft);color:#a8283a}
html.js .fx.m span.w{display:none}
html.js .fx.f span.w{animation:pop .45s cubic-bezier(.3,1.6,.5,1) both}
html.js .fx span{opacity:0;transform:translateY(6px)}
html.js .in .fx span{animation:tli .4s ease-out both;animation-delay:calc(var(--k,0)*70ms)}
html.js .in .fx.m span.w{animation:none}
.fxn{margin:12px 0 0;font-size:13.5px;color:var(--muted)}
html.js .fx.m + .fxn{display:none}
.risk5{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:18px}
.risk5 span{padding:9px 4px;text-align:center;font:600 12.5px/1.15 var(--fb);border-radius:8px}
.risk5 span:nth-child(1){background:#e3f4ee;color:#0f6b52}.risk5 span:nth-child(2){background:#f4f6d9;color:#5f6512}.risk5 span:nth-child(3){background:#fff1d6;color:#8a5a00}.risk5 span:nth-child(4){background:#fde2d3;color:#9a3d12}.risk5 span:nth-child(5){background:#fbd3d8;color:#9b1f33}
/* 1000 точек */
.g1000{display:grid;grid-template-columns:repeat(50,1fr);gap:3px;max-width:640px}
.g1000 i{aspect-ratio:1;border-radius:50%;background:#dbe5ee}
.g1000 i.f{background:var(--acc);box-shadow:0 0 0 2px var(--acc-soft)}
html.js .in .g1000 i.f{animation:pop .5s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(.4s + var(--k)*120ms)}
/* этапы диспансеризации */
.stg{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.st{border-radius:14px;border:1px solid var(--line);padding:14px 16px;background:var(--bg);min-width:0}
.st:first-child{background:#eef8f3;border-color:#cbe8da}
.sh2{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px}
.sh2 b{font:800 15px/1.2 var(--fd)}
.sh2 i{font:600 11px/1 var(--fm);font-style:normal;padding:4px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted)}
.sh2 i.ok{background:var(--good);color:#fff}
.st ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.st li{display:grid;gap:2px;font-size:14.5px;line-height:1.35}
.st li span{color:var(--muted);font-size:13.5px}
html.js .st{opacity:0;transform:translateY(10px)}
html.js .in .st{animation:tli .5s ease-out both}
html.js .in .st:nth-child(2){animation-delay:.2s}html.js .in .st:nth-child(3){animation-delay:.4s}
/* история пациента */
.tl2{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.tl2 li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:9px 0;position:relative;font-size:15px;line-height:1.4}
.tl2 li::before{content:"";position:absolute;left:118px;top:0;bottom:0;width:2px;background:var(--line)}
.tl2 li span{font:600 12.5px/1.4 var(--fm);color:var(--muted);padding-top:2px}
.tl2 li div{padding-left:20px;position:relative}
.tl2 li div::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--acc2)}
.tl2 li.bad div::before{border-color:var(--amb);background:var(--amb-soft)}
.tl2 li.now div{font-weight:600}
.tl2 li.now div::before{background:var(--acc);border-color:var(--acc);box-shadow:0 0 0 5px var(--acc-soft);animation:beat 1.6s ease-in-out infinite}
html.js .tl2 li{opacity:0;transform:translateX(-10px)}
html.js .in .tl2 li{animation:tli2 .5s ease-out both}
html.js .in .tl2 li:nth-child(2){animation-delay:.3s}html.js .in .tl2 li:nth-child(3){animation-delay:.6s}html.js .in .tl2 li:nth-child(4){animation-delay:.9s}html.js .in .tl2 li:nth-child(5){animation-delay:1.2s}html.js .in .tl2 li:nth-child(6){animation-delay:1.5s}
@keyframes tli2{to{opacity:1;transform:none}}
/* ЭКГ-рисунок вместо фото */
.ecgfig{background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/10px 10px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/10px 10px,
  linear-gradient(rgba(211,58,76,.13) 1px,transparent 1px) 0 0/50px 50px,
  linear-gradient(90deg,rgba(211,58,76,.13) 1px,transparent 1px) 0 0/50px 50px,#fffafa;border:1px solid #f5d9dd}
.ecgfig canvas{position:absolute;inset:0;width:100%;height:100%}
.ecgfig .mon-svg{top:30%;height:40%}
.ecgfig::after{display:none}
.pb2{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:6px 0;font-size:13.5px}
.pb2 em{font-style:normal;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--amb-soft);color:#9a5512}
.pb2 em.g{background:#e3f4ee;color:#0f7a5f}
.ecgthumb{background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/6px 6px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/6px 6px,#fffafa;position:relative}
.ecgthumb::after{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 64'%3E%3Cpath d='M0 38 H30 l4-3 4 3 H50 l3 4 5-26 5 32 3-9 H85 q6-7 12 0 H150' fill='none' stroke='%23d33a4c' stroke-width='2'/%3E%3C/svg%3E") center/100% 100% no-repeat}
/* в мире */
.world{padding-block:80px 0}
.wgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.wc{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s;min-width:0}
.wc:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.wc img{width:100%;aspect-ratio:837/300;object-fit:cover;display:block;filter:saturate(.8)}
.wc div{padding:14px 16px 16px;display:grid;gap:6px}
.wc .k{font:500 11.5px/1.2 var(--fm);letter-spacing:.06em;color:var(--muted);text-transform:uppercase}
.wc b{font:800 17px/1.25 var(--fd)}
.wc p{margin:0;font-size:14.5px;color:#2b4157;line-height:1.45}
@media (max-width:880px){.stg,.wgrid{grid-template-columns:1fr}}
@media (max-width:620px){
  .dv{grid-template-columns:1fr 64px;gap:6px 10px}.dv>span{grid-column:1/-1}
  .g1000{grid-template-columns:repeat(25,1fr);gap:3px}
  .risk5 span{font-size:11px}
  .tl2 li{grid-template-columns:84px 1fr;gap:10px}.tl2 li::before{left:88px}.tl2 li span{font-size:11.5px}
}

/* ===== свечение: сердце и ритм на фоне ===== */
.lumi{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
#glow{position:absolute;inset:0;width:100%;height:100%}
.lstrip{position:absolute;left:0;top:46%;width:200%;height:70px;opacity:.35;animation:run 9s linear infinite}
.lstrip path{fill:none;stroke:var(--acc);stroke-width:1.6;filter:drop-shadow(0 0 4px rgba(211,58,76,.6))}
html.js .lstrip{display:none}
.lh{position:absolute;width:300px;height:auto;opacity:.22;animation:hb 1.15s ease-in-out infinite}
.lh .ho{fill:rgba(211,58,76,.06);stroke:var(--acc);stroke-width:1.6;filter:drop-shadow(0 0 6px rgba(211,58,76,.9)) drop-shadow(0 0 16px rgba(211,58,76,.5))}
.lh .hi{fill:none;stroke:var(--acc);stroke-width:1.6;stroke-linejoin:round;stroke-dasharray:120;animation:hid 2.3s linear infinite;filter:drop-shadow(0 0 4px rgba(211,58,76,.9))}
.l1{left:-110px;top:24%}
.l2{right:-110px;top:62%;animation-delay:.55s}
.l2 .ho,.l2 .hi{stroke:var(--acc2);filter:drop-shadow(0 0 6px rgba(26,127,168,.9)) drop-shadow(0 0 16px rgba(26,127,168,.5))}
.l2 .ho{fill:rgba(26,127,168,.06)}
@keyframes hb{0%,100%{transform:scale(1)}14%{transform:scale(1.07)}28%{transform:scale(1)}42%{transform:scale(1.04)}}
@keyframes hid{from{stroke-dashoffset:240}to{stroke-dashoffset:0}}
@media (max-width:1300px){.lh{opacity:.12}}
@media (max-width:760px){.lh{width:200px;opacity:.1}.l1{left:-120px}.l2{right:-120px}}
/* сердце в шапке */
.hgrid>.mon{position:relative;z-index:1}
.hgrid{position:relative}
.hheart{position:absolute;right:2%;top:50%;width:min(520px,44vw);height:auto;transform:translateY(-50%);z-index:0;opacity:.5;pointer-events:none;animation:hbh 1.15s ease-in-out infinite}
.hheart .ho{fill:rgba(211,58,76,.05);stroke:var(--acc);stroke-width:.9;filter:drop-shadow(0 0 8px rgba(211,58,76,.85)) drop-shadow(0 0 22px rgba(211,58,76,.45))}
.hheart .hi{fill:none;stroke:var(--acc);stroke-width:1.1;stroke-dasharray:120;animation:hid 2.3s linear infinite;filter:drop-shadow(0 0 5px rgba(211,58,76,.9))}
@keyframes hbh{0%,100%{transform:translateY(-50%) scale(1)}14%{transform:translateY(-50%) scale(1.06)}28%{transform:translateY(-50%) scale(1)}42%{transform:translateY(-50%) scale(1.03)}}
.mon{box-shadow:0 30px 70px rgba(26,127,168,.16),0 0 0 1px rgba(211,58,76,.08),0 0 40px rgba(211,58,76,.12)}
@media (max-width:880px){.hheart{right:-12%;top:auto;bottom:6%;transform:none;width:90vw;opacity:.28;animation-name:hb}}
/* разделители-кардиограммы между материалами */
.news + .news{border-top:0;margin-top:0}
.ecgdiv{position:relative;height:90px;margin-top:70px;display:block}
.ecgdiv svg{width:100%;height:60px;display:block;margin-top:15px;overflow:visible}
.ecgdiv path{fill:none;stroke:var(--acc);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px rgba(211,58,76,.75)) drop-shadow(0 0 10px rgba(211,58,76,.35))}
.ecgdiv .dh{position:absolute;left:calc(44.8% - 12px);top:2px;width:26px;height:26px;animation:hb 1.15s ease-in-out infinite}
.ecgdiv .dh svg{width:100%;height:100%;margin:0}
.ecgdiv .dh path{fill:var(--acc);stroke:none;filter:drop-shadow(0 0 6px rgba(211,58,76,.8))}
html.js .ecgdiv>svg path{stroke-dasharray:1400;stroke-dashoffset:1400}
html.js .ecgdiv.in>svg path{animation:ecgd 1.8s ease-out forwards}
@keyframes ecgd{to{stroke-dashoffset:0}}
html.js .ecgdiv .dh{opacity:0}
html.js .ecgdiv.in .dh{animation:dhin .4s 1s ease-out forwards,hb 1.15s 1.4s ease-in-out infinite}
@keyframes dhin{to{opacity:1}}
.ecgdiv + .news{padding-top:24px}
.ecgdiv + .world{padding-top:24px}
/* свечение на карточках при наведении */
.nrow a:hover,.trow:hover,.wc:hover{box-shadow:0 10px 30px rgba(16,36,58,.08),0 0 0 1px rgba(211,58,76,.18),0 0 24px rgba(211,58,76,.14)}
/* увеличение картинок */
.figure img{cursor:zoom-in}
.lb{position:fixed;inset:0;z-index:90;background:rgba(245,248,251,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px 16px;opacity:0;pointer-events:none;transition:opacity .3s}
.lb.on{opacity:1;pointer-events:auto}
.lb figure{margin:0;max-width:min(1200px,100%);display:grid;gap:10px}
.lb img{width:100%;height:auto;max-height:80vh;object-fit:contain;border-radius:16px;box-shadow:0 30px 80px rgba(16,36,58,.25);transform:scale(.94);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.lb.on img{transform:none}
.lb figcaption{font-size:14px;color:var(--muted);text-align:center}
.lb button{position:absolute;right:16px;top:calc(16px + env(safe-area-inset-top,0px));width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;font:600 22px/1 var(--fb);color:var(--ink);cursor:pointer}
@media (prefers-reduced-motion:reduce){.lh,.hheart,.ecgdiv .dh{animation:none!important}}

/* ===== летающие сердечки ===== */
.fh{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.fh i{position:absolute;bottom:-40px;width:30px;height:30px;opacity:0;animation:fhup 7s ease-in infinite}
.fh i svg{width:100%;height:100%;display:block;overflow:visible}
.fh i path{fill:#ff5a6e;filter:drop-shadow(0 0 6px rgba(255,90,110,.9)) drop-shadow(0 0 14px rgba(255,255,255,.8))}
.fh i:nth-child(1){left:12%;animation-delay:.4s}
.fh i:nth-child(2){left:31%;width:20px;height:20px;animation-delay:2.1s;animation-duration:6s}
.fh i:nth-child(3){left:54%;width:26px;height:26px;animation-delay:3.6s}
.fh i:nth-child(4){left:72%;width:18px;height:18px;animation-delay:1.3s;animation-duration:5.5s}
.fh i:nth-child(5){left:88%;width:28px;height:28px;animation-delay:4.8s;animation-duration:7.5s}
.fh i:nth-child(2) path,.fh i:nth-child(4) path{fill:#fff;filter:drop-shadow(0 0 6px rgba(211,58,76,.9))}
@keyframes fhup{0%{transform:translate(0,0) scale(.6) rotate(-8deg);opacity:0}10%{opacity:.95}35%{transform:translate(18px,-120px) scale(1) rotate(8deg)}60%{transform:translate(-14px,-230px) scale(.95) rotate(-6deg);opacity:.85}85%{opacity:.4}100%{transform:translate(10px,-360px) scale(.8) rotate(10deg);opacity:0}}
.figure.armed .fh{opacity:0}
/* сердце прилетает к заголовку */
.news{position:relative}
.flyh{position:absolute;right:20px;top:64px;width:46px;height:46px;z-index:2;pointer-events:none;animation:flyidle 3.4s ease-in-out infinite}
.flyh svg{width:100%;height:100%;display:block;overflow:visible;animation:hb 1.15s ease-in-out infinite}
.flyh path{fill:var(--acc);filter:drop-shadow(0 0 6px rgba(211,58,76,.85)) drop-shadow(0 0 18px rgba(211,58,76,.45))}
@keyframes flyidle{0%,100%{transform:translate(0,0) rotate(-6deg)}50%{transform:translate(-6px,-10px) rotate(6deg)}}
html.js .flyh{opacity:0}
html.js .news.in .flyh{animation:flyin 2.4s cubic-bezier(.3,.6,.3,1) forwards,flyidle 3.4s 2.4s ease-in-out infinite}
@keyframes flyin{
  0%{opacity:0;transform:translate(calc(-1 * min(900px,80vw)),340px) rotate(-30deg) scale(.4)}
  15%{opacity:1}
  35%{transform:translate(calc(-1 * min(620px,55vw)),60px) rotate(12deg) scale(.8)}
  60%{transform:translate(calc(-1 * min(300px,28vw)),180px) rotate(-14deg) scale(1)}
  82%{transform:translate(-30px,-20px) rotate(10deg) scale(1.15)}
  100%{opacity:1;transform:translate(0,0) rotate(-6deg) scale(1)}}
.flyh::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:2px solid rgba(211,58,76,.35);opacity:0;animation:ring 2.3s 2.4s ease-out infinite}
@keyframes ring{0%{transform:scale(.5);opacity:.8}100%{transform:scale(1.6);opacity:0}}
@media (max-width:620px){.flyh{width:34px;height:34px;right:14px;top:50px}}
@media (prefers-reduced-motion:reduce){.fh{display:none}html.js .flyh{opacity:1}}
html,body{overflow-x:clip}

/* =================== ВЫПУСК «МЕДИЦИНА РОССИИ · ТОП-6» =================== */
/* Layout: «сводка недели» — шапка со слайд-шоу и лентой дат 1–12 октября, шесть материалов со своей инфографикой; только светлая тема */
:root{
  --bg:#f5f7fb; --surface:#ffffff; --surface-2:#eef2f9; --line:#dde4f0;
  --ink:#14213d; --muted:#596783;
  --acc:#2547d0; --acc-soft:#e7edfd; --acc2:#0f8a6a; --acc2-soft:#e1f4ec;
  --red:#d6453d; --red-soft:#fdebea; --amb:#e08a1e; --amb-soft:#fdf0dc; --good:#0f8a6a;
  --fd:"Montserrat",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --fb:"Golos Text",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.progress{background:linear-gradient(90deg,var(--acc),var(--acc2))}
/* шапка */
.hero6{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(1200px 500px at 85% -10%,#dfe8ff 0%,rgba(223,232,255,0) 60%),radial-gradient(900px 500px at -10% 110%,#dff5ec 0%,rgba(223,245,236,0) 60%),linear-gradient(180deg,#fbfcff,#f2f6fd)}
#plus{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.h6grid{display:grid;grid-template-columns:1fr 1.05fr;gap:44px;align-items:center;padding-block:52px 34px}
.h6t{display:grid;gap:14px;justify-items:start}
.flag{display:inline-flex;gap:3px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.flag i{display:block;width:14px;height:10px}
.flag i:nth-child(1){background:#fff}.flag i:nth-child(2){background:#2547d0}.flag i:nth-child(3){background:#d6453d}
.eyebrow6{display:inline-flex;align-items:center;gap:10px;margin:0;font:600 12.5px/1 var(--fm);letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.hero6 h1{font:900 clamp(42px,6.4vw,82px)/.95 var(--fd);letter-spacing:-.04em;margin:0}
.hero6 h1 .top{display:inline-block;padding:4px 14px 6px;margin-right:10px;border-radius:14px;background:var(--acc);color:#fff;transform:rotate(-2deg);box-shadow:0 12px 30px rgba(37,71,208,.3);animation:topw 6s ease-in-out infinite}
@keyframes topw{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(1deg) translateY(-3px)}}
.hero6 h1 small{display:block;font-size:.36em;font-weight:700;letter-spacing:-.01em;color:var(--acc2);margin-top:14px}
.h6t .hsub{max-width:36ch}
.slides{position:relative;aspect-ratio:837/420;max-width:100%;border-radius:26px;overflow:hidden;border:6px solid #fff;box-shadow:0 30px 70px rgba(37,71,208,.18);background:var(--surface-2)}
.slides .sl{position:absolute;inset:0;opacity:0;transition:opacity 1s}
.slides .sl.on{opacity:1}
.slides .sl img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04);transition:transform 6s linear}
.slides .sl.on img{transform:scale(1.12)}
.slides .cap{position:absolute;left:14px;bottom:14px;right:14px;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font:600 14px/1.3 var(--fb);color:var(--ink);text-decoration:none}
.slides .cap b{font:800 13px/1 var(--fm);color:var(--acc);padding:5px 8px;border-radius:8px;background:var(--acc-soft)}
.dots{position:absolute;right:16px;top:14px;display:flex;gap:6px}
.dots button{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.7);box-shadow:0 0 0 1px rgba(20,33,61,.15);cursor:pointer;padding:0;transition:.3s}
.dots button[aria-pressed="true"]{width:24px;border-radius:999px;background:var(--acc)}
/* без JS — первый слайд виден */
.slides .sl:first-child{opacity:1}
html.js .slides .sl:first-child:not(.on){opacity:0}
/* лента дат */
.days{padding-block:8px 46px}
.days .lbl{margin:0 0 12px}
.dline{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:6px}
.dline::before{content:"";position:absolute;left:0;right:0;top:27px;height:3px;border-radius:3px;background:var(--line)}
.dline::after{content:"";position:absolute;left:0;top:27px;height:3px;border-radius:3px;width:100%;background:linear-gradient(90deg,var(--acc),var(--acc2));transform-origin:0 50%;animation:dfill 2.2s .4s cubic-bezier(.2,.7,.2,1) both}
@keyframes dfill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.dd{position:relative;display:grid;justify-items:center;align-content:start;gap:8px;text-align:center;z-index:1}
.dd span{font:600 12px/1 var(--fm);color:var(--muted)}
.dd i{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--line)}
.dd.ev i{border-color:var(--acc);background:var(--acc);box-shadow:0 0 0 5px var(--acc-soft);animation:dpop .5s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(.4s + var(--k)*.17s)}
@keyframes dpop{from{transform:scale(0)}to{transform:none}}
.dd .evs{display:grid;gap:4px;justify-items:center}
.dd .evs a{display:inline-flex;font:700 11.5px/1 var(--fm);padding:5px 7px;border-radius:8px;background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:.2s;white-space:nowrap}
.dd .evs a:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-2px)}
.dd .evs a.r{color:var(--red)}
.dleg{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;font-size:13.5px;color:var(--muted)}
.dleg b{font:700 12px/1 var(--fm);color:var(--ink)}
/* документ-карточка (письмо) */
.doc{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px 20px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(20,33,61,.06);overflow:hidden}
.doc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--red)}
.doc .ic{width:46px;height:56px;border-radius:8px;background:var(--red-soft);display:grid;place-items:center;color:var(--red)}
.doc .ic svg{width:24px;height:24px}
.doc .no{font:700 12.5px/1 var(--fm);color:var(--red);letter-spacing:.04em}
.doc h5{margin:6px 0 4px;font:700 16.5px/1.35 var(--fd)}
.doc p{margin:0;font-size:14px;color:var(--muted)}
.doc .stamp{position:absolute;right:14px;top:12px;font:800 11px/1 var(--fm);color:var(--acc2);border:2px solid var(--acc2);border-radius:8px;padding:5px 7px;transform:rotate(6deg);opacity:.85}
html.js .doc .stamp{opacity:0;transform:rotate(6deg) scale(2)}
html.js .in .doc .stamp{animation:stamp .5s 1s cubic-bezier(.3,1.6,.5,1) forwards}
@keyframes stamp{to{opacity:.85;transform:rotate(6deg) scale(1)}}
.docs{display:grid;gap:10px}
/* чек-лист для врача */
.ck{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.ck li{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:start;font-size:15px;line-height:1.4}
.ck button{width:26px;height:26px;border-radius:8px;border:2px solid var(--acc);background:#fff;cursor:pointer;display:grid;place-items:center;padding:0;color:#fff;transition:.2s}
.ck button svg{width:16px;height:16px;opacity:0;transition:.2s}
.ck li.ok button{background:var(--acc)}.ck li.ok button svg{opacity:1}
.ck li.ok span{color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(89,103,131,.4)}
.ckbar{display:flex;align-items:center;gap:10px;margin-top:12px;font:500 12.5px/1 var(--fm);color:var(--muted)}
.ckbar .tr{flex:1;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.ckbar .fl{height:100%;width:0;background:var(--acc);border-radius:999px;transition:width .5s}
/* шаги вакцинации */
.steps3{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin-top:6px}
.steps3 .s{padding:14px;border-radius:14px;background:var(--surface-2);text-align:center;display:grid;gap:4px;min-width:0}
.steps3 .s b{font:800 15px/1.2 var(--fd)}
.steps3 .s span{font-size:13px;color:var(--muted);line-height:1.35}
.steps3 .s.k{background:var(--acc2-soft)}.steps3 .s.k b{color:#0b6b52}
.steps3 .ar{color:var(--acc);font:800 20px/1 var(--fd)}
html.js .steps3 > *{opacity:0;transform:translateY(8px)}
html.js .in .steps3 > *{animation:tli .45s ease-out both}
html.js .in .steps3 > *:nth-child(2){animation-delay:.2s}html.js .in .steps3 > *:nth-child(3){animation-delay:.4s}html.js .in .steps3 > *:nth-child(4){animation-delay:.6s}html.js .in .steps3 > *:nth-child(5){animation-delay:.8s}
/* переключатель регионов */
.regsw{display:inline-flex;flex-wrap:wrap;padding:4px;border-radius:999px;background:var(--surface-2);gap:4px;margin-bottom:16px}
.regsw button{border:0;background:none;padding:9px 14px;border-radius:999px;font:600 14px/1 var(--fb);color:var(--muted);cursor:pointer;transition:.25s}
.regsw button[aria-pressed="true"]{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(20,33,61,.12)}
.rp{display:none}
.rp.on{display:block;animation:tli .4s ease-out both}
html:not(.js) .rp{display:block;margin-bottom:18px}
.kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.kpi div{padding:14px;border-radius:14px;background:var(--surface-2);display:grid;gap:4px;min-width:0}
.kpi b{font:800 26px/1 var(--fd);letter-spacing:-.02em;color:var(--acc)}
.kpi b.g{color:var(--acc2)}.kpi b.r{color:var(--red)}
.kpi span{font-size:13px;color:var(--muted);line-height:1.35}
.etio{display:flex;height:34px;border-radius:12px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.etio i{display:flex;align-items:center;justify-content:center;font:700 12px/1 var(--fm);color:#fff;font-style:normal;transform-origin:0 50%;white-space:nowrap;overflow:hidden}
.etio i:nth-child(1){background:var(--acc)}.etio i:nth-child(2){background:#5b7be6}.etio i:nth-child(3){background:#9db0f0;color:var(--ink)}.etio i:nth-child(4){background:var(--red)}
.etleg{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:13.5px;color:var(--muted)}
.etleg span{display:inline-flex;align-items:center;gap:6px}
.etleg span::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--c)}
html.js .etio i{transform:scaleX(0)}
html.js .in .etio i{animation:gr 1.2s cubic-bezier(.2,.7,.2,1) both}
html.js .in .etio i:nth-child(2){animation-delay:.2s}html.js .in .etio i:nth-child(3){animation-delay:.4s}html.js .in .etio i:nth-child(4){animation-delay:.6s}
/* упаковки — столбики */
.packs{display:grid;gap:12px}
.pk{display:grid;grid-template-columns:minmax(0,230px) 1fr 110px;gap:12px;align-items:center;font-size:14.5px;line-height:1.3}
.pk .tr{height:22px;border-radius:8px;background:var(--surface-2);overflow:hidden;display:flex}
.pk .tr i{display:block;height:100%;transform-origin:0 50%}
.pk .tr i.a{background:var(--acc)}.pk .tr i.b{background:#9db0f0}
.pk b{font:800 17px/1 var(--fd);text-align:right;font-variant-numeric:tabular-nums}
.pk b small{display:block;font:500 11.5px/1.2 var(--fb);color:var(--muted);margin-top:3px}
html.js .pk .tr i{transform:scaleX(0)}
html.js .in .pk .tr i{animation:gr 1.3s cubic-bezier(.2,.7,.2,1) both}
html.js .in .pk:nth-child(2) .tr i{animation-delay:.2s}html.js .in .pk:nth-child(3) .tr i{animation-delay:.4s}
.pkleg{display:flex;gap:16px;margin-top:10px;font-size:13.5px;color:var(--muted)}
.pkleg span{display:inline-flex;align-items:center;gap:6px}
.pkleg span::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--c)}
/* рост числа диагнозов ИИ */
.aich{width:100%;max-width:720px;height:auto;display:block;margin:0 auto}
.aich text{font:500 12px var(--fm);fill:var(--muted)}
.aich .big{font:800 20px var(--fd);fill:var(--ink)}
.aich .bar{fill:var(--acc)}
.aich .bar.l{fill:#9db0f0}
html.js .aich .bar{transform:scaleY(0);transform-box:fill-box;transform-origin:50% 100%}
html.js .in .aich .bar{animation:gry 1.2s cubic-bezier(.2,.7,.2,1) forwards}
html.js .in .aich .bar.l{animation-delay:.15s}html.js .in .aich .bar:not(.l){animation-delay:.5s}
@keyframes gry{to{transform:scaleY(1)}}
/* летающий «плюс» вместо сердца */
.flyh path{fill:var(--acc);filter:drop-shadow(0 0 6px rgba(37,71,208,.7)) drop-shadow(0 0 18px rgba(37,71,208,.35))}
.flyh::after{border-color:rgba(37,71,208,.35)}
.fh i path{fill:#5b7be6;filter:drop-shadow(0 0 6px rgba(37,71,208,.8)) drop-shadow(0 0 12px rgba(255,255,255,.8))}
.fh i:nth-child(2) path,.fh i:nth-child(4) path{fill:#fff;filter:drop-shadow(0 0 6px rgba(37,71,208,.9))}
.type.r{background:var(--red-soft);color:#b0302a}
.type.b{background:var(--acc-soft);color:var(--acc)}
.type.g{background:var(--acc2-soft);color:#0b6b52}
.type.a{background:var(--amb-soft);color:#9a5512}
.news h2 .n{-webkit-text-stroke-color:var(--acc)}
.cols li::before{background:var(--acc)}
.practice{background:#eef3ff;border-color:#d5e0fb}
.practice svg{color:var(--acc)}.practice b{color:var(--acc)}
.btn.back{background:var(--acc);border-color:var(--acc)}
.totop{background:var(--acc)}
.chip.on{background:var(--acc);border-color:var(--acc)}
.nrow a::before{background:var(--acc)}.nrow a:nth-child(2)::before{background:var(--red)}.nrow a:nth-child(3)::before{background:var(--acc2)}.nrow a:nth-child(4)::before{background:var(--amb)}
.nrow b{color:var(--ink)}
.cta{background:var(--acc)}
@keyframes ctab{0%,100%{box-shadow:0 0 0 0 rgba(37,71,208,.35)}50%{box-shadow:0 0 0 10px rgba(37,71,208,0)}}
.subcta{background:linear-gradient(120deg,#eaf0ff,#e5f6ef);border-color:#d5e0fb}
.subbtn a{background:var(--acc)}.subbtn a:nth-child(2){background:var(--acc2)}
.social{background:linear-gradient(160deg,#eaf0ff,#e7f6f0)}
.nrow a:hover,.trow:hover,.wc:hover{box-shadow:0 10px 30px rgba(20,33,61,.08),0 0 0 1px rgba(37,71,208,.2),0 0 24px rgba(37,71,208,.12)}
.figure .scanline{background:var(--acc);box-shadow:0 0 16px 3px rgba(37,71,208,.55)}
.figure .vline{background:var(--acc);box-shadow:0 0 16px 3px rgba(37,71,208,.55)}
.panel .big em{color:var(--acc)}
.panel .tags span{background:var(--acc-soft);color:var(--acc)}
.lead mark{background:linear-gradient(transparent 58%,#dde6ff 58%)}
.ecgdiv path{stroke:var(--acc);filter:drop-shadow(0 0 4px rgba(37,71,208,.6)) drop-shadow(0 0 10px rgba(37,71,208,.3))}
.ecgdiv .dh path{fill:var(--acc);filter:drop-shadow(0 0 6px rgba(37,71,208,.7))}
@media (max-width:980px){.h6grid{grid-template-columns:1fr;gap:26px;padding-block:32px 24px}.slides{order:-1}}
@media (max-width:760px){
  .dline{grid-template-columns:repeat(6,1fr);row-gap:18px}.dline::before,.dline::after{display:none}
  .kpi{grid-template-columns:1fr}
  .steps3{grid-template-columns:1fr}.steps3 .ar{transform:rotate(90deg);justify-self:center}
  .pk{grid-template-columns:1fr 92px;gap:6px 10px}.pk>span:first-child{grid-column:1/-1}
  .slides .cap{font-size:12.5px}
}

/* ===== больше интерактива ===== */
/* фильтр по специальности */
.spf{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.spf button,.grp button{padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;font:600 13.5px/1 var(--fb);color:var(--ink);cursor:pointer;transition:.2s}
.spf button:hover,.grp button:hover{border-color:var(--acc)}
.spf button[aria-pressed="true"],.grp button[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff}
.doc{transition:opacity .35s,transform .35s,filter .35s}
.doc.dim{opacity:.32;filter:grayscale(.8);transform:scale(.985)}
.doc.hit{box-shadow:0 0 0 2px var(--acc),0 10px 26px rgba(37,71,208,.18)}
/* красные флаги */
.flags{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.flags .flip{height:132px}
.flags .flip .f{background:var(--red-soft);border-color:#f3c8c5}
.flags .flip .f>b{color:var(--red)}
/* калькулятор */
.calc{padding:18px 20px;border-radius:16px;background:linear-gradient(120deg,#eef3ff,#e8f7f0);border:1px solid #d5e0fb;margin-bottom:20px}
.calc h4{margin:0 0 4px}
.crow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.crow label{font:600 14px/1 var(--fb)}
.crow input{font:600 16px/1 var(--fb);padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.crow input:focus{outline:3px solid var(--acc-soft);border-color:var(--acc)}
.carr{font:800 22px/1 var(--fd);color:var(--acc)}
.cres{display:grid;gap:4px;padding:10px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);min-width:200px}
.cres span{font:500 11.5px/1 var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cres b{font:800 22px/1.1 var(--fd);color:var(--acc2)}
.cres.pop{animation:mppop .5s cubic-bezier(.2,1.6,.4,1)}
.cbar{position:relative;height:10px;border-radius:999px;background:#fff;margin-top:16px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.cbar i{position:absolute;inset:0;background:linear-gradient(90deg,var(--acc),var(--acc2));transform-origin:0 50%;transform:scaleX(0)}
.cbar.run i{animation:gr 1.2s cubic-bezier(.2,.7,.2,1) forwards}
/* группы риска */
.grp{display:flex;flex-wrap:wrap;gap:6px}
.grpt{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:var(--acc2-soft);font-size:15px;min-height:46px}
.grpt.pop{animation:tli .35s ease-out}
/* подсказки на полосе вирусов */
.etio{overflow:visible;position:relative}
.etio i{position:relative;cursor:help;outline:none}
.etio i::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);white-space:nowrap;padding:7px 10px;border-radius:10px;background:var(--ink);color:#fff;font:600 12.5px/1 var(--fb);opacity:0;pointer-events:none;transition:.2s;z-index:3}
.etio i:hover::after,.etio i:focus::after{opacity:1;transform:translate(-50%,0)}
.etio i:last-child::after{left:auto;right:0;transform:translate(0,6px)}
.etio i:last-child:hover::after,.etio i:last-child:focus::after{transform:none}
.etio i:hover{filter:brightness(1.12)}
.etio i:first-child{border-radius:12px 0 0 12px}.etio i:last-child{border-radius:0 12px 12px 0}
/* реакции */
.react{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 20px;font-size:14px;color:var(--muted)}
.react span{font:500 12px/1 var(--fm);letter-spacing:.08em;text-transform:uppercase}
.react button{padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:#fff;font:600 13.5px/1 var(--fb);color:var(--ink);cursor:pointer;transition:.2s}
.react button:hover{border-color:var(--acc);transform:translateY(-1px)}
.react button[aria-pressed="true"]{background:var(--acc2);border-color:var(--acc2);color:#fff;animation:mppop .45s cubic-bezier(.2,1.6,.4,1)}
/* прогресс чтения */
.readpill{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:55;display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);text-decoration:none;font:500 14px/1 var(--fb);opacity:0;transform:translateY(12px);pointer-events:none;transition:.35s}
.readpill.show{opacity:1;transform:none;pointer-events:auto}
.readpill svg{width:34px;height:34px;transform:rotate(-90deg)}
.readpill circle{fill:none;stroke:var(--surface-2);stroke-width:4}
.readpill .rg{stroke:var(--acc2);stroke-linecap:round;stroke-dasharray:94.25;stroke-dashoffset:94.25;transition:stroke-dashoffset .6s}
.readpill.done{background:var(--acc2);border-color:var(--acc2);color:#fff;animation:ctab2 2.4s ease-in-out infinite}
.readpill.done circle{stroke:rgba(255,255,255,.3)}.readpill.done .rg{stroke:#fff}
@keyframes ctab2{0%,100%{box-shadow:0 0 0 0 rgba(15,138,106,.4)}50%{box-shadow:0 0 0 10px rgba(15,138,106,0)}}
.chip.rd::after{content:"✓";font:700 11px/1 var(--fb);color:var(--acc2);margin-left:2px}
.chip.on.rd::after{color:#fff}
/* конфетти */
.conf{position:fixed;inset:0;pointer-events:none;z-index:80}
@media (max-width:760px){.flags{grid-template-columns:1fr 1fr}.readpill{font-size:13px}.cres{min-width:0;flex:1}}
@media (max-width:760px){.readpill{padding:6px 12px 6px 6px;gap:8px;font-size:12.5px}.readpill svg{width:28px;height:28px}}
/* ---- бюджет: переключаемая диаграмма ---- */
.dd .evs a.g{color:var(--acc2)}
.unv{display:inline-block;margin-left:4px;padding:3px 8px;border-radius:999px;background:var(--amb-soft,#fdf1de);color:#a35f08;font:700 10.5px/1.2 var(--fm);letter-spacing:.06em;text-transform:uppercase}
.bsw{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 18px}
.bsw button{border:1px solid var(--line);background:#fff;padding:9px 14px;border-radius:999px;font:600 14px/1 var(--fb);color:var(--muted);cursor:pointer;transition:.25s}
.bsw button:hover{border-color:var(--acc);color:var(--acc)}
.bsw button[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff;box-shadow:0 6px 16px rgba(37,71,208,.25)}
.bch{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,5vw,48px);align-items:end;height:230px;padding:0 clamp(6px,4vw,40px);border-bottom:2px solid var(--line);max-width:620px;margin:0 auto}
.bc{display:grid;grid-template-rows:auto 1fr auto;height:100%;align-items:end;justify-items:center;gap:6px;position:relative}
.bc b{font:800 22px/1 var(--fd);color:var(--ink);font-variant-numeric:tabular-nums;transition:opacity .25s}
.bc i{display:block;width:100%;max-width:110px;height:calc(var(--h) * 100%);min-height:6px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#5b7be6,var(--acc));transition:height .8s cubic-bezier(.2,.7,.2,1);box-shadow:0 8px 20px rgba(37,71,208,.18)}
.bc:last-child i{background:linear-gradient(180deg,#3fbf98,var(--acc2));box-shadow:0 8px 20px rgba(15,138,106,.2)}
.bc span{position:absolute;bottom:-26px;font:600 13px/1 var(--fm);color:var(--muted)}
.bct{margin:38px 0 0;text-align:center;font-size:14px;color:var(--muted)}
.bct .bu{font-weight:700;color:var(--acc)}
.bch.sw b{opacity:0}
html.js .bc i{height:0}
html.js .in .bc i{height:calc(var(--h) * 100%)}
@media (max-width:640px){.bch{height:190px}.bc b{font-size:18px}.bsw button{padding:8px 11px;font-size:13px}}
/* ---- плашки ---- */
.bdgs{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 14px}
.bdg{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted);font:600 12px/1.2 var(--fb);border:1px solid transparent}
.bdg.hot{background:linear-gradient(90deg,#2547d0,#4f6fe6);color:#fff;box-shadow:0 4px 14px rgba(37,71,208,.25);animation:bdgp 2.6s ease-in-out infinite}
.bdg.ok{background:var(--acc2-soft);color:#0b6b52;border-color:#bfe6d8}
.bdg.warn{background:var(--amb-soft);color:#a35f08;border-color:#f1d6b4}
.bdg.red{background:var(--red-soft);color:#b8322b;border-color:#f3c8c5}
.bdg.sea{background:#e8f1ff;color:#2f5fb8}
.bdg.vio{background:#f0ebff;color:#5b3fc4}
.bdg.tm{background:#fff;border-color:var(--line)}
@keyframes bdgp{0%,100%{box-shadow:0 4px 14px rgba(37,71,208,.25)}50%{box-shadow:0 4px 22px rgba(37,71,208,.5)}}
/* ---- кнопки шапки ---- */
.ctas{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cta2{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border-radius:999px;border:1.5px solid var(--acc);background:#fff;color:var(--acc);font:700 15px/1 var(--fd);cursor:pointer;transition:.2s}
.cta2:hover{background:var(--acc-soft);transform:translateY(-2px)}
.cta2 .spark{display:inline-block;animation:spk 2s ease-in-out infinite}
@keyframes spk{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.25) rotate(-10deg)}}
/* ---- термины ---- */
.gl{color:inherit;text-decoration:underline dotted var(--acc) 2px;text-underline-offset:4px;cursor:help;border-radius:4px;transition:background .2s}
.gl:hover,.gl:focus-visible,.gl[aria-expanded="true"]{background:var(--acc-soft);outline:none}
.gl::after{content:"?";display:inline-grid;place-items:center;width:15px;height:15px;margin-left:3px;border-radius:50%;background:var(--acc);color:#fff;font:700 10px/1 var(--fb);vertical-align:2px}
.gpop{position:fixed;z-index:85;padding:14px 38px 14px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px rgba(16,36,58,.2);font-size:14.5px;line-height:1.45}
.gpop::before{content:"";position:absolute;top:-7px;left:calc(var(--ax,50%) - 7px);width:14px;height:14px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}
.gpop.up::before{top:auto;bottom:-7px;transform:rotate(225deg)}
.gpop .pt{font:800 15px/1.2 var(--fd);color:var(--acc);margin-bottom:6px}
.gpop p{margin:0;color:var(--ink)}
.gpop.in{animation:popi .25s cubic-bezier(.2,.7,.2,1)}
@keyframes popi{from{opacity:0;transform:translateY(6px) scale(.97)}}
.px,.mbox .mx,.nx{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);font:500 18px/1 var(--fb);cursor:pointer}
.px:hover,.mbox .mx:hover,.nx:hover{background:var(--acc-soft);color:var(--acc)}
.kd{margin:30px 0 0;text-align:center;font-size:14px}
.kd+.bct{margin-top:8px}
/* ---- окна ---- */
html.mlock{overflow:hidden}
.mdl{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:16px;background:rgba(236,241,250,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .25s}
.mdl.on{opacity:1}
.mbox{position:relative;width:min(620px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:26px 26px 22px;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(16,36,58,.25);transform:translateY(16px) scale(.97);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.mdl.on .mbox{transform:none}
.mbox .mx{top:14px;right:14px;width:34px;height:34px;font-size:22px}
.mc h3{margin:0 40px 14px 0;font:800 22px/1.2 var(--fd)}
.tl{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px;counter-reset:t}
.tl li{counter-increment:t}
.tl a{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;padding:11px 12px;border-radius:12px;background:var(--surface-2);color:var(--ink);text-decoration:none;font-size:15px;line-height:1.4;transition:.2s}
.tl a::before{content:"0" counter(t);font:700 12px/22px var(--fm);color:var(--acc)}
.tl a:hover{background:var(--acc-soft);transform:translateX(3px)}
.tl b{color:var(--acc)}
html.js .mdl.on .tl li{animation:tli .35s ease-out both}
.mdl.on .tl li:nth-child(2){animation-delay:.05s}.mdl.on .tl li:nth-child(3){animation-delay:.1s}.mdl.on .tl li:nth-child(4){animation-delay:.15s}.mdl.on .tl li:nth-child(5){animation-delay:.2s}.mdl.on .tl li:nth-child(6){animation-delay:.25s}
.mbtn{display:flex;justify-content:center;padding:13px 18px;border-radius:999px;background:var(--acc);color:#fff;font:700 15px/1 var(--fd);text-decoration:none}
.mst{margin:0 0 14px;padding:12px 14px;border-radius:12px;font-size:14.5px;line-height:1.45}
.mst.ok{background:var(--acc2-soft);color:#0b5a45}.mst.warn{background:var(--amb-soft);color:#8a4f06}
.msrc{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.msrc li{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;font-size:14px;line-height:1.4}
.msrc b{font:700 14px/1.3 var(--fd)}.msrc span{color:var(--muted)}
.btn.chk{color:var(--acc2);border-color:#bfe6d8;background:var(--acc2-soft)}
/* ---- подсказки ленты ---- */
.dd .evs a[data-t]{position:relative}
.dd .evs a[data-t]::after{content:attr(data-t);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);white-space:nowrap;padding:7px 10px;border-radius:9px;background:var(--ink);color:#fff;font:600 12px/1.2 var(--fb);opacity:0;pointer-events:none;transition:.2s;z-index:5}
.dd .evs a[data-t]:hover::after,.dd .evs a[data-t]:focus-visible::after{opacity:1;transform:translate(-50%,0)}
.dd:nth-last-child(-n+3) .evs a[data-t]::after{left:auto;right:0;transform:translateY(4px)}
.dd:nth-last-child(-n+3) .evs a[data-t]:hover::after{transform:none}
.dd:nth-child(-n+2) .evs a[data-t]::after{left:0;transform:translateY(4px)}
.dd:nth-child(-n+2) .evs a[data-t]:hover::after{transform:none}
/* ---- всплывающая плашка ---- */
.nudge{position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:72;width:min(340px,calc(100vw - 32px));display:grid;grid-template-columns:auto 1fr;gap:12px;padding:16px 40px 16px 16px;border-radius:18px;background:#fffdf6;border:1px solid #f0dca8;box-shadow:0 20px 50px rgba(16,36,58,.18);transform:translateX(120%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.nudge.on{transform:none}
.nudge b{display:block;font:800 15px/1.2 var(--fd);margin-bottom:4px}
.nudge span:not(.coin){display:block;font-size:13.5px;color:var(--muted);line-height:1.4}
.nudge a{display:inline-block;margin-top:8px;padding:8px 14px;border-radius:999px;background:var(--acc);color:#fff;font:700 13px/1 var(--fd);text-decoration:none}
@media (max-width:640px){.cta2{padding:12px 16px;font-size:14px}.mbox{padding:22px 18px 18px}.mc h3{font-size:19px}.nudge{right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px))}.dd .evs a[data-t]::after{display:none}}
.mdl[hidden],.gpop[hidden],.nudge[hidden]{display:none!important}
/* ===== НОВЫЙ ФОН: мягкая «аврора» + точечная сетка, материалы на светлых листах ===== */
body{background:#f3f6fd}
.bgfx{position:fixed;inset:0;z-index:-2;pointer-events:none;overflow:hidden;background:
  radial-gradient(rgba(37,71,208,.09) 1px,transparent 1.2px) 0 0/22px 22px,
  linear-gradient(180deg,#f6f8ff 0%,#f1f6fb 50%,#f4f8f6 100%)}
.bgfx i{position:absolute;width:52vmax;height:52vmax;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}
.bgfx i:nth-child(1){left:-14vmax;top:-10vmax;background:#d9e3ff;animation:bga 26s ease-in-out infinite alternate}
.bgfx i:nth-child(2){right:-16vmax;top:18vh;background:#d4f3e7;animation:bgb 30s ease-in-out infinite alternate}
.bgfx i:nth-child(3){left:20vw;bottom:-22vmax;background:#ffe7d6;opacity:.45;animation:bga 34s ease-in-out infinite alternate-reverse}
.bgfx i:nth-child(4){right:24vw;top:-18vmax;width:30vmax;height:30vmax;background:#efe6ff;opacity:.45;animation:bgb 22s ease-in-out infinite alternate-reverse}
@keyframes bga{to{transform:translate(8vw,10vh) scale(1.12)}}
@keyframes bgb{to{transform:translate(-10vw,-8vh) scale(.92)}}
@media (prefers-reduced-motion:reduce){.bgfx i{animation:none}}
.hero6{background:radial-gradient(1200px 500px at 85% -10%,rgba(214,226,255,.85) 0%,rgba(223,232,255,0) 60%),radial-gradient(900px 500px at -10% 110%,rgba(214,243,231,.8) 0%,rgba(223,245,236,0) 60%),transparent}
.news{max-width:1120px;width:calc(100% - 24px);margin-inline:auto;padding:52px clamp(18px,4.4vw,52px) 36px;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.95);border-radius:32px;box-shadow:0 1px 2px rgba(16,36,58,.04),0 24px 60px rgba(37,71,208,.08)}
.news::before{content:"";position:absolute;left:clamp(18px,4.4vw,52px);top:0;width:84px;height:5px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--acc),var(--acc2))}
.news .viz{background:#fbfcff}
.ecgdiv{margin-top:26px;height:76px}
.toc .trow,.nrow a{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
/* ---- «Кто вы?» ---- */
.who{padding-block:40px 0}
.whobox{position:relative;overflow:hidden;padding:24px clamp(18px,3vw,30px);border-radius:24px;background:linear-gradient(120deg,rgba(255,255,255,.92),rgba(234,241,255,.92));border:1px solid #fff;box-shadow:0 18px 44px rgba(37,71,208,.1)}
.whobox::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%232547d0' fill-opacity='.07' d='M38 8H62V38H92V62H62V92H38V62H8V38H38Z'/%3E%3C/svg%3E");animation:topw 7s ease-in-out infinite}
.whot h2{font:800 clamp(20px,2.4vw,26px)/1.2 var(--fd);margin:8px 0 16px}
.whosw{display:flex;flex-wrap:wrap;gap:8px}
.whosw button{border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:999px;font:600 14px/1.1 var(--fb);color:var(--ink);cursor:pointer;transition:.25s}
.whosw button:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-2px)}
.whosw button[aria-pressed="true"]{background:var(--acc);border-color:var(--acc);color:#fff;box-shadow:0 8px 20px rgba(37,71,208,.3)}
.whores{margin:14px 0 0;font-size:14.5px;color:var(--muted)}
.whores b{color:var(--acc)}
.whores.pop{animation:tli .35s ease-out}
.trow.dimw{opacity:.42;filter:saturate(.4)}
.trow.forme{box-shadow:0 0 0 2px var(--acc),0 14px 30px rgba(37,71,208,.16)}
.forme-tag{display:none}
.forme > .forme-tag,.trow.forme .forme-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:linear-gradient(90deg,#2547d0,#0f8a6a);color:#fff;font:700 12.5px/1 var(--fd);box-shadow:0 6px 18px rgba(37,71,208,.3);animation:mppop .5s cubic-bezier(.2,1.6,.4,1)}
.news > .forme-tag{position:absolute;right:clamp(90px,10vw,140px);top:-15px;z-index:2}
.trow .forme-tag{position:absolute;right:12px;top:-10px;padding:5px 10px;font-size:11.5px}
.trow{position:relative}
.chip.fm{box-shadow:inset 0 0 0 2px var(--acc2)}
/* ---- окно победы ---- */
.win{text-align:center;display:grid;justify-items:center;gap:6px}
.win h3{margin:6px 0 0!important;font-size:30px!important;color:var(--acc)}
.win p{margin:0 0 14px;color:var(--muted)}
.wcoin{width:96px;height:96px;perspective:400px}
.wcoin span{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9a3,#e0a91f 70%);color:#7a5200;font:900 30px/1 var(--fd);box-shadow:0 10px 30px rgba(224,169,31,.5),inset 0 -4px 0 rgba(0,0,0,.08);animation:wflip 1.6s cubic-bezier(.2,.7,.2,1) both}
@keyframes wflip{0%{transform:translateY(-40px) rotateY(0) scale(.6);opacity:0}60%{transform:translateY(0) rotateY(720deg) scale(1.08);opacity:1}100%{transform:rotateY(720deg) scale(1)}}
.wact{display:grid;gap:8px;width:100%}
.mbtn.ghost{border:1.5px solid var(--acc);background:#fff;color:var(--acc);cursor:pointer}
@media (max-width:640px){.news{width:calc(100% - 16px);border-radius:24px;padding-top:44px}.news > .forme-tag{right:16px}.whosw button{padding:9px 12px;font-size:13px}}
.facts .gl{display:inline;padding:0;margin:0;border:0;background:none;box-shadow:none;border-radius:4px;font:inherit}
@media (max-width:640px){.nudge{left:12px;right:12px;padding:12px 40px 12px 12px;gap:10px}.nudge span:not(.coin){display:none}.nudge b{font-size:14px;margin:0}.nudge a{margin-top:6px}}
@media (max-width:640px){.flyh{top:14px;right:14px;width:30px;height:30px}.news > .forme-tag{right:56px}}
/* ---- «Главное за 30 секунд» — раскрывающаяся панель ---- */
.tldr{width:100%;max-width:560px;padding:16px 16px 14px;border-radius:20px;background:#fff;border:1px solid #dfe7fb;box-shadow:0 18px 44px rgba(37,71,208,.14);animation:tli .35s ease-out both}
.tldr[hidden]{display:none!important}
.tlh{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.tlh b{font:800 18px/1.2 var(--fd)}
.tlx{width:32px;height:32px;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);font:500 20px/1 var(--fb);cursor:pointer}
.tlx:hover{background:var(--acc-soft);color:var(--acc)}
.tldr .tl{margin-bottom:12px}
.tl a{display:flex!important;gap:10px;align-items:flex-start;grid-template-columns:none!important}
.tl a::before{flex:none;width:22px}
.tl a span{min-width:0;font-size:14.5px;line-height:1.4}
.tldr .tl li{animation:tli .35s ease-out both}
.tldr .tl li:nth-child(2){animation-delay:.05s}.tldr .tl li:nth-child(3){animation-delay:.1s}.tldr .tl li:nth-child(4){animation-delay:.15s}.tldr .tl li:nth-child(5){animation-delay:.2s}.tldr .tl li:nth-child(6){animation-delay:.25s}
.cta2[aria-expanded="true"]{background:var(--acc);color:#fff}
/* ---- фон светлее ---- */
body{background:#fbfcff}
.bgfx{background:radial-gradient(rgba(37,71,208,.045) 1px,transparent 1.2px) 0 0/24px 24px,linear-gradient(180deg,#fcfdff 0%,#f9fbff 50%,#fbfdfc 100%)}
.bgfx i{opacity:.28!important}
.news{background:rgba(255,255,255,.94)}
.nav{background:rgba(252,253,255,.92)}
/* окна в высоком окне просмотра */
.mdl.abs{position:absolute;inset:auto 0 auto 0;height:auto;min-height:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0 16px;place-items:start center}
@media (min-width:881px){.h6grid>.slides{align-self:start;margin-top:110px}}
html.embtall .readpill,html.embtall .totop,html.embtall .nudge,html.embtall .progress,html.embtall .toast{display:none!important}
/* ---- тест на сайте ---- */
.qgo{position:relative;overflow:hidden;display:grid;grid-template-columns:1.4fr .8fr;gap:24px;align-items:center;padding:clamp(24px,4vw,44px);border-radius:32px;background:linear-gradient(125deg,#ffffff 0%,#eef3ff 55%,#e8f7f1 100%);border:1px solid #fff;box-shadow:0 24px 60px rgba(37,71,208,.12)}
.qgo-t{display:grid;gap:12px;justify-items:start}
.qgo h2{font:900 clamp(26px,3.4vw,40px)/1.1 var(--fd);letter-spacing:-.02em;margin:0}
.qgo p{margin:0;color:var(--muted);max-width:52ch}
.qgo-l{list-style:none;margin:2px 0 6px;padding:0;display:grid;gap:8px}
.qgo-l li{position:relative;padding-left:30px;font-size:15.5px}
.qgo-l li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--acc2-soft);color:var(--acc2);font:800 12px/1 var(--fd)}
.qbtn{display:inline-flex;align-items:center;gap:12px;padding:16px 24px 16px 14px;border-radius:999px;background:linear-gradient(90deg,#2547d0,#3a5fe6);color:#fff;font:800 17px/1.2 var(--fd);text-decoration:none;box-shadow:0 14px 34px rgba(37,71,208,.35);transition:transform .2s,box-shadow .2s;animation:ctab 3.2s ease-in-out infinite}
.qbtn:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(37,71,208,.45)}
.qbtn .coin{width:36px;height:36px;font-size:13px}
.qbtn svg{width:20px;height:20px;flex:none;animation:qar 1.6s ease-in-out infinite}
@keyframes qar{50%{transform:translateX(4px)}}
.qgo-n{font-size:13.5px!important}
.qgo-v{position:relative;display:grid;place-items:center;min-height:220px}
.qcoin{position:relative;z-index:1;width:170px;height:170px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 35% 30%,#fff6cf,#f6cf5a 55%,#e0a91f);box-shadow:inset 0 0 0 6px #fbe39a,0 20px 50px rgba(224,169,31,.45);color:#7a5200;animation:qflo 4s ease-in-out infinite}
.qcoin span{font:900 54px/1 var(--fd)}
.qcoin small{font:700 14px/1.2 var(--fd)}
@keyframes qflo{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-10px) rotate(4deg)}}
.qgo-v i{position:absolute;border-radius:50%;border:2px dashed rgba(37,71,208,.18);animation:qspin 18s linear infinite}
.qgo-v i:nth-of-type(1){width:220px;height:220px}
.qgo-v i:nth-of-type(2){width:270px;height:270px;border-color:rgba(15,138,106,.16);animation-direction:reverse;animation-duration:26s}
.qgo-v i:nth-of-type(3){width:14px;height:14px;border:0;background:var(--acc);top:22%;right:18%;animation:qflo 3s ease-in-out infinite}
@keyframes qspin{to{transform:rotate(360deg)}}
@media (max-width:760px){.qgo{grid-template-columns:1fr;border-radius:24px}.qgo-v{order:-1;min-height:170px}.qcoin{width:130px;height:130px}.qcoin span{font-size:40px}.qgo-v i:nth-of-type(1){width:170px;height:170px}.qgo-v i:nth-of-type(2){width:205px;height:205px}.qbtn{width:100%;justify-content:center;font-size:15.5px;padding:14px 16px}}
