/* ═══ Ideas Lab — инвесторский презентер ═══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#f6f7f9; --bg2:#eef0f4; --panel:#fff; --panel2:#fafbfc;
  --ink:#0d1117; --ink2:#414a56; --ink3:#6d7681; --line:#e3e6ea; --line2:#eef0f3;
  --acc:#2f6df6; --acc-bg:#eaf1ff; --acc-d:#1d4fd7;
  --ok:#0f8a53; --ok-bg:#e6f6ee; --warn:#a8620a; --warn-bg:#fdf3e3;
  --bad:#c8353b; --bad-bg:#fdeceb; --vio:#6d4bd8; --vio-bg:#f0ebfd;
  --sh1:0 1px 2px rgba(13,17,23,.05);
  --sh2:0 4px 14px rgba(13,17,23,.07),0 1px 3px rgba(13,17,23,.05);
  --sh3:0 18px 50px rgba(13,17,23,.14),0 4px 12px rgba(13,17,23,.07);
  --r:14px; --r2:10px; --r3:7px;
  --hd:60px; --max:1240px;
  --fs:15.5px; --ff:-apple-system,BlinkMacSystemFont,"Segoe UI","Inter",system-ui,sans-serif;
  --fm:ui-monospace,"SF Mono",Menlo,monospace;
  --ease:cubic-bezier(.22,.68,.32,1);
}
:root[data-theme="dark"]{
  --bg:#0c0e12; --bg2:#111419; --panel:#161a20; --panel2:#1b2028;
  --ink:#eef1f5; --ink2:#b3bcc7; --ink3:#818c99; --line:#252b34; --line2:#1e242c;
  --acc:#5b8cff; --acc-bg:#16233f; --acc-d:#7ba3ff;
  --ok:#3ac37e; --ok-bg:#10281d; --warn:#e0a253; --warn-bg:#2b2113;
  --bad:#f2686e; --bad-bg:#2e1618; --vio:#9d84f0; --vio-bg:#211a3a;
  --sh1:0 1px 2px rgba(0,0,0,.3);
  --sh2:0 4px 14px rgba(0,0,0,.4);
  --sh3:0 18px 50px rgba(0,0,0,.55);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0c0e12; --bg2:#111419; --panel:#161a20; --panel2:#1b2028;
    --ink:#eef1f5; --ink2:#b3bcc7; --ink3:#818c99; --line:#252b34; --line2:#1e242c;
    --acc:#5b8cff; --acc-bg:#16233f; --acc-d:#7ba3ff;
    --ok:#3ac37e; --ok-bg:#10281d; --warn:#e0a253; --warn-bg:#2b2113;
    --bad:#f2686e; --bad-bg:#2e1618; --vio:#9d84f0; --vio-bg:#211a3a;
    --sh1:0 1px 2px rgba(0,0,0,.3);
    --sh2:0 4px 14px rgba(0,0,0,.4);
    --sh3:0 18px 50px rgba(0,0,0,.55);
  }
}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font:var(--fs)/1.62 var(--ff);background:var(--bg);color:var(--ink);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  font-feature-settings:"tnum" 0,"kern" 1}
::selection{background:var(--acc);color:#fff}
a{color:var(--acc);text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}
@media(max-width:640px){.wrap{padding:0 14px}}

/* ── шапка ── */
.hd{position:sticky;top:0;z-index:90;height:var(--hd);
  background:color-mix(in srgb,var(--panel) 86%,transparent);
  backdrop-filter:saturate(1.8) blur(16px);-webkit-backdrop-filter:saturate(1.8) blur(16px);
  border-bottom:1px solid var(--line);transition:box-shadow .25s}
.hd.scrolled{box-shadow:var(--sh2)}
.hd-in{max-width:var(--max);margin:0 auto;padding:0 22px;height:100%;
  display:flex;align-items:center;gap:14px}
@media(max-width:640px){.hd-in{padding:0 14px;gap:9px}}
.brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:15px;letter-spacing:-.02em;flex-shrink:0}
.brand-m{width:26px;height:26px;border-radius:8px;flex-shrink:0;
  background:linear-gradient(135deg,var(--acc),var(--vio));
  display:grid;place-items:center;color:#fff;font-size:13px;font-weight:800;
  box-shadow:0 2px 8px color-mix(in srgb,var(--acc) 40%,transparent)}
.brand-t{white-space:nowrap}
@media(max-width:520px){.brand-t{display:none}}
.hd-sp{flex:1}
.hd-nav{display:flex;gap:2px;background:var(--bg2);padding:3px;border-radius:10px}
@media(max-width:860px){.hd-nav{display:none}}
.hd-nav a{padding:6px 13px;border-radius:8px;font-size:13.5px;font-weight:600;
  color:var(--ink2);transition:.16s var(--ease)}
.hd-nav a:hover{color:var(--ink);background:color-mix(in srgb,var(--panel) 70%,transparent)}
.hd-nav a.on{background:var(--panel);color:var(--ink);box-shadow:var(--sh1)}
.icb{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;
  color:var(--ink2);transition:.16s;flex-shrink:0}
.icb:hover{background:var(--bg2);color:var(--ink)}
.icb svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}

/* ── прогресс скролла ── */
.prog{position:fixed;top:0;left:0;height:2px;z-index:99;
  background:linear-gradient(90deg,var(--acc),var(--vio));width:0;transition:width .1s linear}

/* ── типографика ── */
h1{font-size:clamp(30px,5.2vw,50px);line-height:1.06;letter-spacing:-.033em;font-weight:800}
h2{font-size:clamp(21px,3vw,27px);line-height:1.2;letter-spacing:-.024em;font-weight:750;margin:0 0 6px}
h3{font-size:17.5px;line-height:1.3;letter-spacing:-.015em;font-weight:700;margin:0 0 4px}
h4{font-size:14.5px;font-weight:700;letter-spacing:-.008em}
.lead{font-size:clamp(16px,2.1vw,19px);line-height:1.58;color:var(--ink2);max-width:76ch}
.mut{color:var(--ink3)}
.sm{font-size:13.5px;line-height:1.55}
.xs{font-size:12.5px;line-height:1.5}
.mono{font-family:var(--fm);font-size:.92em;font-variant-numeric:tabular-nums}
.eyebrow{font-size:11px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
b,strong{font-weight:680;color:var(--ink)}

/* ── секции ── */
.sec{padding:52px 0}
.sec-sm{padding:34px 0}
@media(max-width:640px){.sec{padding:34px 0}.sec-sm{padding:24px 0}}
.sec-h{margin-bottom:22px}
.sec-h .lead{margin-top:8px}

/* ── карточки ── */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--sh1);transition:.22s var(--ease)}
.card-p{padding:20px}
@media(max-width:640px){.card-p{padding:15px}}
.card-h:hover{border-color:color-mix(in srgb,var(--acc) 45%,var(--line));
  box-shadow:var(--sh2);transform:translateY(-2px)}

/* ── сетки ── */
.g{display:grid;gap:16px}
.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* ── чипы и бейджи ── */
.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:99px;
  font-size:12.5px;font-weight:650;background:var(--bg2);color:var(--ink2);
  border:1px solid transparent;white-space:nowrap}
.chip.ok{background:var(--ok-bg);color:var(--ok)}
.chip.warn{background:var(--warn-bg);color:var(--warn)}
.chip.bad{background:var(--bad-bg);color:var(--bad)}
.chip.acc{background:var(--acc-bg);color:var(--acc-d)}
.chip.vio{background:var(--vio-bg);color:var(--vio)}
.chip-btn{cursor:pointer;transition:.16s var(--ease);user-select:none}
.chip-btn:hover{background:color-mix(in srgb,var(--acc) 12%,var(--bg2));color:var(--acc-d)}
.chip-btn.on{background:var(--ink);color:var(--panel);border-color:var(--ink)}
.dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}

/* ── метрика ── */
.met{padding:15px 16px;background:var(--panel);border:1px solid var(--line);
  border-radius:var(--r2);position:relative;overflow:hidden}
.met::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--acc),var(--vio));opacity:.85}
.met-v{font-size:23px;font-weight:800;letter-spacing:-.03em;line-height:1.1;
  font-variant-numeric:tabular-nums}
.met-l{font-size:12.5px;color:var(--ink3);margin-top:3px;font-weight:600}
.met-h{font-size:11.5px;color:var(--ink3);margin-top:5px;line-height:1.45;opacity:.85}

/* ── кнопки ── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;
  padding:9px 17px;border-radius:var(--r3);font-size:14px;font-weight:650;
  border:1px solid var(--line);background:var(--panel);color:var(--ink);
  transition:.16s var(--ease);white-space:nowrap}
.btn:hover{border-color:var(--ink3);transform:translateY(-1px);box-shadow:var(--sh1)}
.btn:active{transform:translateY(0)}
.btn-pri{background:var(--ink);color:var(--panel);border-color:var(--ink)}
.btn-pri:hover{background:var(--acc);border-color:var(--acc);color:#fff}
.btn-sm{padding:6px 12px;font-size:13px}
.btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}

/* ── табы ── */
.tabs{display:flex;gap:3px;overflow-x:auto;scrollbar-width:none;
  border-bottom:1px solid var(--line);margin-bottom:20px;
  -webkit-overflow-scrolling:touch;position:relative}
.tabs::-webkit-scrollbar{display:none}
.tab{padding:11px 15px;font-size:14px;font-weight:650;color:var(--ink3);
  white-space:nowrap;position:relative;transition:.16s;border-radius:8px 8px 0 0}
.tab:hover{color:var(--ink2);background:var(--bg2)}
.tab.on{color:var(--ink)}
.tab.on::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;
  background:var(--ink);border-radius:2px 2px 0 0}
.tab-c{font-size:11px;padding:1px 6px;border-radius:99px;background:var(--bg2);
  margin-left:5px;font-weight:700;color:var(--ink3)}
.tab.on .tab-c{background:var(--acc-bg);color:var(--acc-d)}

/* ── аккордеон ── */
.acc{border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;
  background:var(--panel);margin-bottom:9px;transition:.2s var(--ease)}
.acc.open{box-shadow:var(--sh2);border-color:color-mix(in srgb,var(--acc) 30%,var(--line))}
.acc-t{width:100%;display:flex;align-items:center;gap:11px;padding:14px 16px;
  text-align:left;transition:.16s;font-weight:650;font-size:15px}
.acc-t:hover{background:var(--panel2)}
.acc-ic{width:18px;height:18px;flex-shrink:0;color:var(--ink3);transition:transform .25s var(--ease)}
.acc.open .acc-ic{transform:rotate(90deg);color:var(--acc)}
.acc-ic svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2.2;
  stroke-linecap:round;stroke-linejoin:round}
.acc-b{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--ease)}
.acc.open .acc-b{grid-template-rows:1fr}
.acc-bi{overflow:hidden}
.acc-bc{padding:2px 16px 17px;border-top:1px solid var(--line2)}

/* ── список фактов ── */
.facts{display:flex;flex-direction:column;gap:0}
.fact{display:flex;gap:14px;padding:11px 0;border-bottom:1px solid var(--line2);align-items:baseline}
.fact:last-child{border-bottom:0}
.fact-k{flex:0 0 34%;max-width:230px;font-size:13.5px;color:var(--ink3);font-weight:600}
.fact-v{flex:1;font-size:14.5px;min-width:0}
@media(max-width:560px){.fact{flex-direction:column;gap:2px}.fact-k{flex:none;max-width:none}}

/* ── выноски ── */
.note{padding:14px 16px;border-radius:var(--r2);border:1px solid var(--line);
  background:var(--panel2);font-size:14px;line-height:1.6}
.note-t{font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;
  margin-bottom:7px;display:flex;align-items:center;gap:6px}
.note.ok{background:var(--ok-bg);border-color:color-mix(in srgb,var(--ok) 25%,transparent)}
.note.ok .note-t{color:var(--ok)}
.note.warn{background:var(--warn-bg);border-color:color-mix(in srgb,var(--warn) 25%,transparent)}
.note.warn .note-t{color:var(--warn)}
.note.bad{background:var(--bad-bg);border-color:color-mix(in srgb,var(--bad) 25%,transparent)}
.note.bad .note-t{color:var(--bad)}
.note.acc{background:var(--acc-bg);border-color:color-mix(in srgb,var(--acc) 25%,transparent)}
.note.acc .note-t{color:var(--acc-d)}

/* ── скелет загрузки ── */
.skel{background:linear-gradient(90deg,var(--bg2) 25%,var(--line2) 50%,var(--bg2) 75%);
  background-size:200% 100%;animation:sh 1.4s infinite;border-radius:var(--r2)}
@keyframes sh{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* ── анимации входа ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.anim{animation:fadeUp .42s var(--ease) both}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
  html{scroll-behavior:auto}
}

/* ═══ ЭКРАН: СПИСОК ПРОЕКТОВ ═══ */
.hero{padding:44px 0 30px;position:relative}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(720px 320px at 18% -10%,color-mix(in srgb,var(--acc) 9%,transparent),transparent 65%),
             radial-gradient(560px 280px at 88% 0%,color-mix(in srgb,var(--vio) 8%,transparent),transparent 60%)}
.hero-badges{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}
.hero h1{margin-bottom:14px;max-width:19ch}
.hero .lead{margin-bottom:22px}
.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.hstat{background:var(--panel);padding:15px 16px}
.hstat-v{font-size:25px;font-weight:800;letter-spacing:-.035em;line-height:1;
  font-variant-numeric:tabular-nums;
  background:linear-gradient(135deg,var(--ink),var(--ink2));-webkit-background-clip:text;
  background-clip:text;-webkit-text-fill-color:transparent}
.hstat-l{font-size:12px;color:var(--ink3);margin-top:5px;font-weight:600}

/* панель фильтров */
.filters{position:sticky;top:var(--hd);z-index:40;padding:12px 0;
  background:color-mix(in srgb,var(--bg) 92%,transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);margin-bottom:22px}
.f-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.f-search{flex:1;min-width:190px;position:relative}
.f-search input{width:100%;padding:9px 13px 9px 36px;border-radius:var(--r3);
  border:1px solid var(--line);background:var(--panel);color:var(--ink);
  font:inherit;font-size:14px;transition:.16s}
.f-search input:focus{outline:none;border-color:var(--acc);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 14%,transparent)}
.f-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);
  width:15px;height:15px;stroke:var(--ink3);fill:none;stroke-width:2;pointer-events:none}
.f-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);
  width:22px;height:22px;border-radius:50%;display:none;place-items:center;
  background:var(--bg2);color:var(--ink3);font-size:14px;line-height:1}
.f-search.has .f-clear{display:grid}
.f-groups{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}
.f-groups::-webkit-scrollbar{display:none}
.f-count{font-size:13px;color:var(--ink3);font-weight:600;white-space:nowrap;margin-left:auto}

/* карточка проекта */
.plist{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}
@media(max-width:740px){.plist{grid-template-columns:1fr}}
.pc{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);
  padding:19px;cursor:pointer;transition:.22s var(--ease);position:relative;
  display:flex;flex-direction:column;gap:12px;overflow:hidden;text-align:left;width:100%}
.pc::before{content:"";position:absolute;inset:0 0 auto 0;height:2.5px;
  background:linear-gradient(90deg,var(--acc),var(--vio));opacity:0;transition:.22s}
.pc:hover{border-color:color-mix(in srgb,var(--acc) 40%,var(--line));
  box-shadow:var(--sh3);transform:translateY(-3px)}
.pc:hover::before{opacity:1}
.pc-top{display:flex;align-items:flex-start;gap:12px}
.pc-rank{width:32px;height:32px;flex-shrink:0;border-radius:9px;display:grid;place-items:center;
  font-weight:800;font-size:14px;background:var(--bg2);color:var(--ink3);
  font-variant-numeric:tabular-nums;transition:.22s}
.pc:hover .pc-rank{background:var(--acc);color:#fff;
  box-shadow:0 3px 10px color-mix(in srgb,var(--acc) 40%,transparent)}
.pc-rank.top{background:linear-gradient(135deg,var(--acc),var(--vio));color:#fff}
.pc-nm{font-size:17px;font-weight:750;letter-spacing:-.018em;line-height:1.25;flex:1;min-width:0}
.pc-tag{font-size:14px;color:var(--ink2);line-height:1.55}
.pc-mets{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.pc-met{padding:5px 10px;border-radius:7px;background:var(--bg2);font-size:12.5px;font-weight:650}
.pc-met b{color:var(--ink);font-weight:750}
.pc-ft{display:flex;align-items:center;gap:8px;padding-top:12px;
  border-top:1px solid var(--line2);font-size:12.5px;color:var(--ink3);flex-wrap:wrap}
.pc-go{margin-left:auto;display:flex;align-items:center;gap:4px;color:var(--acc);
  font-weight:650;transition:gap .2s}
.pc:hover .pc-go{gap:8px}
.pc-go svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* пустое состояние */
.empty{padding:56px 20px;text-align:center;color:var(--ink3)}
.empty svg{width:38px;height:38px;stroke:currentColor;fill:none;stroke-width:1.5;
  opacity:.4;margin-bottom:12px}

/* ═══ ЭКРАН: ПРОЕКТ ═══ */
.pv{padding-bottom:60px}
.pv-back{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:650;
  color:var(--ink3);padding:14px 0;transition:.16s}
.pv-back:hover{color:var(--acc);gap:10px}
.pv-back svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pv-hd{padding-bottom:22px}
.pv-hd h1{font-size:clamp(26px,4.4vw,40px);margin-bottom:12px}
.pv-hook{font-size:clamp(15.5px,2vw,17.5px);line-height:1.6;color:var(--ink2);max-width:74ch;margin-bottom:18px}
.pv-mets{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px;margin-bottom:6px}

/* панель вкладок проекта */
.pv-tabs{position:sticky;top:var(--hd);z-index:40;
  background:color-mix(in srgb,var(--bg) 93%,transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  margin:0 -22px 22px;padding:0 22px}
@media(max-width:640px){.pv-tabs{margin:0 -14px 18px;padding:0 14px}}

/* экраны платформы */
.scr-tools{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.scr-secs{display:flex;flex-direction:column;gap:9px}
.scr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:10px;margin-top:12px}
@media(max-width:560px){.scr-grid{grid-template-columns:1fr}}
.scr{padding:13px 14px;border:1px solid var(--line);border-radius:var(--r2);
  background:var(--panel2);transition:.18s var(--ease);cursor:default}
.scr:hover{background:var(--panel);border-color:color-mix(in srgb,var(--acc) 35%,var(--line));
  box-shadow:var(--sh1);transform:translateY(-1px)}
.scr-n{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.scr-num{font-size:10.5px;font-weight:750;color:var(--ink3);font-family:var(--fm);
  background:var(--bg2);padding:2px 6px;border-radius:5px;flex-shrink:0}
.scr-t{font-size:14px;font-weight:680;letter-spacing:-.01em;line-height:1.3}
.scr-w{font-size:13px;color:var(--ink2);line-height:1.55}
.scr-r{display:inline-block;margin-top:7px;font-size:11.5px;padding:2px 8px;border-radius:6px;
  background:var(--vio-bg);color:var(--vio);font-weight:650}

/* макет-превью экрана */
.mock{margin-top:11px;border:1px solid var(--line);border-radius:8px;overflow:hidden;
  background:var(--panel);box-shadow:var(--sh1)}
.mock-bar{height:22px;background:var(--bg2);display:flex;align-items:center;gap:4px;
  padding:0 8px;border-bottom:1px solid var(--line)}
.mock-d{width:6px;height:6px;border-radius:50%;background:var(--line);flex-shrink:0}
.mock-b{padding:9px;display:flex;flex-direction:column;gap:5px}
.mock-l{height:6px;border-radius:3px;background:var(--line2)}
.mock-l.w1{width:62%}.mock-l.w2{width:88%}.mock-l.w3{width:44%}
.mock-box{height:26px;border-radius:5px;background:var(--bg2);margin-top:2px}

/* экономика */
.eco-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.eco-b{padding:17px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel)}
.eco-b h4{margin-bottom:9px;display:flex;align-items:center;gap:7px}
.eco-b h4 svg{width:15px;height:15px;stroke:var(--acc);fill:none;stroke-width:2}
.anchors{display:flex;flex-direction:column;gap:0;margin-top:4px}
.anchor{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;padding:10px 0;
  border-bottom:1px solid var(--line2)}
.anchor:last-child{border-bottom:0}
.anchor-w{flex:1 1 auto;font-size:14px;font-weight:680;min-width:120px}
.anchor-p{flex:0 0 auto;font-family:var(--fm);font-size:13.5px;font-weight:700;
  color:var(--acc-d);background:var(--acc-bg);padding:3px 9px;border-radius:6px;
  white-space:normal;max-width:100%}
.anchor-n{font-size:12.5px;color:var(--ink3);flex:1 0 100%;line-height:1.5;margin-top:2px}

/* шкала клиентов */
.gauge{margin-top:13px}
.gauge-r{display:flex;align-items:center;gap:11px;margin-bottom:9px}
.gauge-l{font-size:12.5px;font-weight:680;width:58px;flex-shrink:0;color:var(--ink3)}
.gauge-t{flex:1;height:8px;border-radius:99px;background:var(--bg2);overflow:hidden}
.gauge-f{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--acc),var(--vio));
  width:0;transition:width .9s var(--ease)}
.gauge-v{font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}

/* риски */
.risk{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:var(--r2);
  background:var(--panel);margin-bottom:9px;transition:.18s}
.risk:hover{box-shadow:var(--sh1)}
.risk-s{width:4px;border-radius:99px;flex-shrink:0}
.risk-s.high{background:var(--bad)}.risk-s.mid{background:var(--warn)}.risk-s.low{background:var(--ink3)}
.risk-c{flex:1;min-width:0}
.risk-h{display:flex;align-items:center;gap:8px;margin-bottom:5px;flex-wrap:wrap}
.risk-t{font-size:14.5px;font-weight:650;line-height:1.45}
.risk-m{font-size:13.5px;color:var(--ink2);margin-top:7px;padding-top:7px;
  border-top:1px dashed var(--line);line-height:1.55}

/* MVP шаги */
.steps{counter-reset:s;display:flex;flex-direction:column;gap:0}
.step{counter-increment:s;display:flex;gap:13px;padding:11px 0;position:relative}
.step::before{content:counter(s);flex:0 0 25px;height:25px;border-radius:7px;
  background:var(--acc-bg);color:var(--acc-d);display:grid;place-items:center;
  font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}
.step-t{flex:1;font-size:14.5px;line-height:1.55;padding-top:2px}

/* фичи */
.feat{border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;
  background:var(--panel);margin-bottom:10px;transition:.2s var(--ease)}
.feat.open{border-color:color-mix(in srgb,var(--vio) 35%,var(--line));box-shadow:var(--sh2)}
.feat-t{width:100%;display:flex;align-items:flex-start;gap:11px;padding:15px 16px;text-align:left}
.feat-t:hover{background:var(--panel2)}
.feat-i{width:26px;height:26px;flex-shrink:0;border-radius:8px;background:var(--vio-bg);
  color:var(--vio);display:grid;place-items:center;font-size:13px;font-weight:750}
.feat-n{flex:1;font-size:15px;font-weight:680;line-height:1.4;letter-spacing:-.01em}
.feat-ch{width:17px;height:17px;color:var(--ink3);flex-shrink:0;transition:transform .25s var(--ease);margin-top:3px}
.feat.open .feat-ch{transform:rotate(180deg)}
.feat-ch svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.feat-b{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--ease)}
.feat.open .feat-b{grid-template-rows:1fr}
.feat-bi{overflow:hidden}
.feat-bc{padding:0 16px 16px 53px;border-top:1px solid var(--line2);padding-top:14px}
@media(max-width:560px){.feat-bc{padding-left:16px}}

/* агенты */
.agents{display:grid;gap:9px}
.agent{display:flex;gap:11px;padding:13px 14px;border:1px solid var(--line);
  border-radius:var(--r2);background:var(--panel);font-size:13.5px;line-height:1.55;transition:.18s}
.agent:hover{border-color:color-mix(in srgb,var(--vio) 35%,var(--line));box-shadow:var(--sh1)}
.agent-i{width:24px;height:24px;flex-shrink:0;border-radius:7px;
  background:linear-gradient(135deg,var(--vio),var(--acc));color:#fff;
  display:grid;place-items:center;font-size:11px;font-weight:750}
.agent.warn-a{border-color:color-mix(in srgb,var(--warn) 40%,var(--line));background:var(--warn-bg)}
.agent.warn-a .agent-i{background:var(--warn)}

/* роли */
.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:11px}
.role{padding:15px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);transition:.18s}
.role:hover{box-shadow:var(--sh1);border-color:color-mix(in srgb,var(--acc) 30%,var(--line))}
.role-n{font-size:14.5px;font-weight:700;margin-bottom:6px;display:flex;align-items:center;gap:8px}
.role-av{width:26px;height:26px;border-radius:8px;background:var(--acc-bg);color:var(--acc-d);
  display:grid;place-items:center;font-size:12px;font-weight:750;flex-shrink:0}
.role-d{font-size:13.5px;color:var(--ink2);line-height:1.55}

/* мобильная навигация проекта */
.mnav{display:none}
@media(max-width:860px){
  .mnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:80;
    background:color-mix(in srgb,var(--panel) 94%,transparent);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    border-top:1px solid var(--line);padding:7px 6px calc(7px + env(safe-area-inset-bottom));
    justify-content:space-around;box-shadow:0 -2px 14px rgba(0,0,0,.06)}
  .mnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;
    padding:5px 3px;border-radius:9px;font-size:10.5px;font-weight:650;color:var(--ink3);transition:.16s}
  .mnav a.on{color:var(--acc);background:var(--acc-bg)}
  .mnav svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;
    stroke-linecap:round;stroke-linejoin:round}
  body{padding-bottom:62px}
}

/* печать */
@media print{
  .hd,.filters,.pv-tabs,.mnav,.prog,.btn,.icb{display:none!important}
  body{background:#fff}
  .acc-b,.feat-b{grid-template-rows:1fr!important}
  .card,.scr,.note{break-inside:avoid;box-shadow:none}
}

/* ── универсальные размеры иконок (чинит растяжение SVG в заголовках) ── */
.note-t svg,.eco-b h4 svg,h3 svg,.pc-go svg,.pv-back svg,.step-t svg{
  width:15px;height:15px;flex:0 0 15px;stroke:currentColor;fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px}
.note-t{display:flex;align-items:center;gap:7px}
h3 svg{width:17px;height:17px;flex:0 0 17px;stroke:var(--acc)}
svg{max-width:100%}
/* карточки-ссылки на метод и конвейер */
a.card{color:inherit}
a.card h3{color:var(--ink)}
a.card svg{width:18px;height:18px;flex:0 0 18px;stroke:var(--acc);fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}

/* ── навигация между проектами ── */
.pnav{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;
  margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.pnav-b{display:flex;flex-direction:column;gap:3px;padding:13px 16px;border-radius:var(--r2);
  border:1px solid var(--line);background:var(--panel);transition:.18s var(--ease);min-width:0}
.pnav-b:hover{border-color:color-mix(in srgb,var(--acc) 45%,var(--line));
  box-shadow:var(--sh2);transform:translateY(-1px)}
.pnav-b.right{text-align:right;align-items:flex-end}
.pnav-d{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink3)}
.pnav-b:hover .pnav-d{color:var(--acc)}
.pnav-n{font-size:15px;font-weight:700;color:var(--ink);letter-spacing:-.015em;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
@media(max-width:640px){
  .pnav{grid-template-columns:1fr 1fr;gap:9px}
  .pnav #printbtn{grid-column:1/-1;order:3;justify-self:center}
  .pnav-n{font-size:13.5px}
  .pnav-d{font-size:10.5px}
}

/* ── ГЛОБАЛЬНАЯ ЗАЩИТА ОТ РАСТЯНУТЫХ SVG ── */
svg{width:16px;height:16px;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:-2px}
.icb svg{width:17px;height:17px}
.btn svg{width:15px;height:15px}
.acc-ic svg,.feat-ch svg{width:100%;height:100%}
.f-search svg{width:15px;height:15px}
.mnav svg{width:18px;height:18px}
.empty svg{width:38px;height:38px;stroke-width:1.5;opacity:.4;margin-bottom:12px;display:block;margin-inline:auto}
h3 svg{width:17px;height:17px;stroke:var(--acc)}
a.card svg{width:18px;height:18px;stroke:var(--acc)}
.pnav-d svg{width:13px;height:13px}
.role-av svg,.feat-i svg,.agent-i svg{width:13px;height:13px}
