/* ПРОКТО·ФОКУС 10 — стили расширенных блоков (часть II)
   flags · navigator · calculators · glossary · faq30 · honesty · scenarios */

/* ══════════════════════════════════════════════════════════════════
   1. КРАСНЫЕ ФЛАГИ — уличный светофор + пульс-канвас
   ══════════════════════════════════════════════════════════════════ */
.flags-sec{
  position:relative;overflow:visible;/* было overflow:hidden — блокировало position:sticky у светофора */
  background:var(--off);color:var(--ink);
  padding:120px 40px;border-top:4px solid var(--ink);
}
.flags-sec canvas.pulse-bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;
  opacity:.85;
}
.flags-sec .container{position:relative;z-index:2}
.flags-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.flags-title .red{color:var(--red)}
.flags-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:780px;margin-bottom:60px}

.flags-layout{
  display:grid;grid-template-columns:280px 1fr;gap:60px;align-items:start;
}
.traffic-light{
  background:#111;border:3px solid var(--ink);border-radius:20px;
  padding:22px 22px 26px;
  box-shadow:12px 12px 0 var(--pink);
  display:flex;flex-direction:column;gap:20px;align-items:center;
  position:sticky;top:24px;
  align-self:start;
  z-index:5;
}
.traffic-light .lamp{
  width:180px;height:180px;border-radius:50%;
  background:#1a1a1a;border:6px solid #000;
  position:relative;overflow:hidden;
  transition:box-shadow .5s,background .5s;
}
.traffic-light .lamp.on-red{background:radial-gradient(circle at 35% 35%, #ff9494 0%, var(--red) 45%, #7a0000 100%);box-shadow:0 0 60px var(--red),0 0 120px rgba(255,46,46,.6),inset 0 0 30px rgba(255,255,255,.3);animation:blink-red 1.4s ease-in-out infinite}
.traffic-light .lamp.on-yellow{background:radial-gradient(circle at 35% 35%, #ffee9d 0%, var(--yellow) 45%, #8a6f00 100%);box-shadow:0 0 60px var(--yellow),0 0 120px rgba(255,212,0,.5),inset 0 0 30px rgba(255,255,255,.3)}
.traffic-light .lamp.on-green{background:radial-gradient(circle at 35% 35%, #94ffbe 0%, var(--green) 45%, #005c2b 100%);box-shadow:0 0 60px var(--green),0 0 120px rgba(0,210,106,.5),inset 0 0 30px rgba(255,255,255,.3)}
@keyframes blink-red{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.35)}
}
.traffic-light .label{color:#fff;font-family:"Archivo Black",sans-serif;font-size:14px;text-align:center;text-transform:uppercase;letter-spacing:.1em;line-height:1.2;opacity:.5;transition:opacity .3s}
.traffic-light .lamp-block.active .label{opacity:1;color:var(--pink)}
.traffic-light .lamp-block{display:flex;flex-direction:column;gap:10px;align-items:center;cursor:none}
.traffic-light .lamp-block .lamp{width:120px;height:120px}
.traffic-light .lamp-block:first-child .lamp{width:180px;height:180px}

.flags-columns{display:grid;grid-template-columns:1fr;gap:36px}
.flag-col{
  border:3px solid var(--ink);padding:32px 32px 28px;
  position:relative;
  background:var(--off);
  box-shadow:10px 10px 0 var(--ink);
}
.flag-col.red   {background:#FFE9E9;border-color:var(--red);box-shadow:10px 10px 0 var(--red)}
.flag-col.yellow{background:#FFF8D6;border-color:#8A6F00}
.flag-col.green {background:#DBFCE7;border-color:#005c2b;box-shadow:10px 10px 0 var(--green)}
.flag-col h4{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(28px,4vw,52px);line-height:.9;letter-spacing:-.03em;margin-bottom:8px}
.flag-col.red h4{color:var(--red)}
.flag-col.green h4{color:#005c2b}
.flag-col .sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:12px;letter-spacing:.08em;opacity:.7;margin-bottom:20px}
.flag-col ul{list-style:none;padding:0;margin:0}
.flag-col li{
  font-family:"Archivo Black",sans-serif;font-size:clamp(14px,1.4vw,18px);text-transform:uppercase;
  letter-spacing:-.01em;line-height:1.25;padding:10px 0 10px 26px;
  border-bottom:1.5px dashed rgba(0,0,0,.2);position:relative;
}
.flag-col li:last-child{border-bottom:none}
.flag-col li::before{
  content:"→";position:absolute;left:0;top:10px;
  font-family:"Unbounded",sans-serif;font-weight:900;color:var(--ink);
}
.flag-col.red li::before{color:var(--red)}
.flag-col.green li::before{color:#005c2b}
.flag-col .route{
  margin-top:20px;padding:14px 16px;background:var(--ink);color:var(--off);
  font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5;
}
.flag-col.red .route{background:var(--red)}
.flag-col.green .route{background:#005c2b}

/* ══════════════════════════════════════════════════════════════════
   2. СИМПТОМАТИЧЕСКИЙ НАВИГАТОР — горизонтальный скролл-диаграмма
   ══════════════════════════════════════════════════════════════════ */
.nav-sec{
  background:var(--ink);color:var(--off);
  border-top:4px solid var(--ink);
  padding:120px 0 60px;overflow:hidden;
}
.nav-sec .container{padding:0 40px}
.nav-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.nav-title .pink{color:var(--pink)}
.nav-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:780px;margin-bottom:40px;opacity:.75}

.nav-hscroll{
  overflow-x:auto;overflow-y:hidden;padding:40px 40px 60px;
  scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  scrollbar-color:var(--pink) transparent;
}
.nav-hscroll::-webkit-scrollbar{height:8px}
.nav-hscroll::-webkit-scrollbar-track{background:rgba(255,255,255,.1)}
.nav-hscroll::-webkit-scrollbar-thumb{background:var(--pink)}

.nav-rows{display:flex;gap:60px;width:max-content;padding-right:40px}
.nav-diagram{
  scroll-snap-align:start;flex:0 0 auto;
  display:grid;grid-template-columns:280px 320px 400px;gap:0;
  align-items:stretch;
  position:relative;
}
.nav-cell{position:relative;padding:24px;border:1.5px solid rgba(255,255,255,.25);background:rgba(255,255,255,.03)}
.nav-cell.symptom{
  background:var(--pink);color:var(--ink);border-color:var(--ink);
  display:flex;flex-direction:column;justify-content:space-between;gap:12px;
}
.nav-cell.symptom .icon{font-family:"Unbounded",sans-serif;font-weight:900;font-size:80px;line-height:.8;letter-spacing:-.05em}
.nav-cell.symptom .name{font-family:"Unbounded",sans-serif;font-weight:900;font-size:26px;line-height:.9;letter-spacing:-.03em;text-transform:uppercase}
.nav-cell.probs h5,.nav-cell.docs h5{font-family:"Archivo Black",sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:16px;opacity:.6}
.prob-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-bottom:12px;font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.02em}
.prob-row .bar{grid-column:1/-1;height:6px;background:rgba(255,255,255,.15);position:relative;overflow:hidden}
.prob-row .bar::after{content:"";position:absolute;left:0;top:0;bottom:0;background:var(--pink);width:var(--w,0%)}
.prob-row .p{font-family:"Unbounded",sans-serif;font-weight:900;font-size:16px;color:var(--pink);font-variant-numeric:tabular-nums}
.nav-cell.docs{background:rgba(176,38,255,.1)}
.nav-cell.docs .route{
  font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;
  padding:10px 14px;background:rgba(0,0,0,.5);margin-bottom:16px;line-height:1.5;
  border-left:3px solid var(--pink);
}
.docs-list{display:flex;flex-direction:column;gap:8px}
.doc-chip{
  display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;
  padding:8px 12px;border:1.5px solid rgba(255,255,255,.3);cursor:none;
  transition:background .15s,color .15s,border-color .15s;
}
.doc-chip:hover{background:var(--pink);color:var(--ink);border-color:var(--ink)}
.doc-chip .n{font-family:"Unbounded",sans-serif;font-weight:900;font-size:20px;color:var(--pink);text-align:center;font-variant-numeric:tabular-nums}
.doc-chip:hover .n{color:var(--ink)}
.doc-chip .fio{font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:-.01em}

/* SVG-соединители между колонками */
.nav-diagram::before,
.nav-diagram::after{
  content:"→";position:absolute;top:50%;transform:translateY(-50%);
  font-family:"Unbounded",sans-serif;font-weight:900;font-size:40px;color:var(--pink);
  z-index:2;pointer-events:none;
}
.nav-diagram::before{left:calc(280px - 20px)}
.nav-diagram::after{left:calc(280px + 320px - 20px)}

.nav-hint{
  padding:0 40px;font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.1em;opacity:.5;
  display:flex;align-items:center;gap:10px;
}
.nav-hint::before{content:"←→";font-family:"Unbounded",sans-serif;color:var(--pink);font-size:20px}

/* ══════════════════════════════════════════════════════════════════
   3. 5 КАЛЬКУЛЯТОРОВ — 5 вертикальных секций
   ══════════════════════════════════════════════════════════════════ */
.calc-intro{
  background:var(--pink);color:var(--ink);
  padding:100px 40px;border-top:4px solid var(--ink);position:relative;overflow:hidden;
  text-align:center;
}
.calc-intro h2{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,12vw,220px);line-height:.85;letter-spacing:-.05em}
.calc-intro h2 .stroke{-webkit-text-stroke:3px var(--ink);color:transparent}
.calc-intro .badge{
  display:inline-block;margin-top:24px;padding:10px 20px;
  background:var(--ink);color:var(--pink);
  font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.1em;
  border:3px solid var(--ink);
  transform:rotate(-2deg);
}
.calc-intro .sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;margin-top:30px;max-width:640px;margin-left:auto;margin-right:auto}

.calc-sec{
  position:relative;overflow:hidden;
  padding:120px 40px;border-top:4px solid var(--ink);
}
.calc-sec.dark  {background:var(--ink);color:var(--off)}
.calc-sec.light {background:var(--off);color:var(--ink)}
.calc-sec canvas.matrix-bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.4;pointer-events:none;
}
.calc-sec .container{position:relative;z-index:2;max-width:1400px}

.calc-head{display:flex;gap:20px;align-items:flex-start;margin-bottom:60px;flex-wrap:wrap}
.calc-head .num{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(100px,14vw,220px);line-height:.8;letter-spacing:-.05em;color:var(--pink);font-variant-numeric:tabular-nums;flex:0 0 auto}
.calc-head .about{flex:1;min-width:300px;padding-top:20px}
.calc-head .about h3{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(32px,5vw,72px);line-height:.9;letter-spacing:-.03em;margin-bottom:16px}
.calc-head .about .task{font-family:"JetBrains Mono",monospace;font-size:14px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5;opacity:.75;max-width:600px}

/* CALC 1 — Мой рейтинг */
.mycalc-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start}
.presets{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.preset-btn{
  padding:10px 16px;border:2px solid currentColor;background:transparent;
  font-family:"Archivo Black",sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.05em;
  cursor:none;transition:background .15s,color .15s;
}
.preset-btn:hover,.preset-btn.active{background:var(--pink);color:var(--ink);border-color:var(--ink)}
.sliders{display:flex;flex-direction:column;gap:14px}
.slider-row{
  display:grid;grid-template-columns:60px 1fr 60px;gap:14px;align-items:center;
}
.slider-row .code{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase}
.slider-row .val{font-family:"Unbounded",sans-serif;font-weight:900;font-size:18px;text-align:right;font-variant-numeric:tabular-nums;color:var(--pink)}
.slider-row input[type=range]{
  width:100%;height:8px;background:rgba(255,255,255,.15);appearance:none;-webkit-appearance:none;
  border:1.5px solid currentColor;cursor:none;
}
.calc-sec.light .slider-row input[type=range]{background:rgba(0,0,0,.08)}
.slider-row input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:22px;height:22px;background:var(--pink);border:2.5px solid var(--ink);cursor:none;
  border-radius:0;
}
.slider-row input[type=range]::-moz-range-thumb{
  width:22px;height:22px;background:var(--pink);border:2.5px solid var(--ink);cursor:none;border-radius:0;
}
.slider-row .name{grid-column:2/3;font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.55;margin-top:-8px}

.mycalc-result h4{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;opacity:.7}
.mycalc-list{display:flex;flex-direction:column;gap:6px}
.mycalc-row{
  display:grid;grid-template-columns:40px 40px 1fr 70px;gap:12px;align-items:center;
  padding:10px 12px;border:1.5px solid rgba(255,255,255,.2);
  transition:background .18s,transform .18s;cursor:none;
}
.calc-sec.light .mycalc-row{border-color:rgba(0,0,0,.15)}
.mycalc-row:hover{background:var(--pink);color:var(--ink);border-color:var(--ink);transform:translateX(4px)}
.mycalc-row .rank{font-family:"Unbounded",sans-serif;font-weight:900;font-size:22px;text-align:center;color:var(--pink);font-variant-numeric:tabular-nums}
.mycalc-row:hover .rank{color:var(--ink)}
.mycalc-row .orig{font-family:"JetBrains Mono",monospace;font-size:10px;opacity:.4;text-align:center}
.mycalc-row .fio{font-family:"Archivo Black",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:-.01em}
.mycalc-row .sc{font-family:"Unbounded",sans-serif;font-weight:900;font-size:18px;text-align:right;font-variant-numeric:tabular-nums}
.mycalc-total{
  font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;
  margin-top:14px;opacity:.55;text-align:right;
}
.mycalc-total.warn{color:var(--red);opacity:1}

/* CALC 2 — Совместимость */
.compat-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:start}
.compat-q{margin-bottom:24px}
.compat-q h5{font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:12px;opacity:.75}
.compat-opts{display:flex;flex-wrap:wrap;gap:8px}
.opt-btn{
  padding:8px 14px;border:2px solid currentColor;background:transparent;
  font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.03em;cursor:none;
  transition:background .12s,color .12s;
}
.opt-btn:hover,.opt-btn.active{background:var(--pink);color:var(--ink);border-color:var(--ink)}
.compat-result h4{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px;opacity:.7}
.compat-cards{display:flex;flex-direction:column;gap:12px}
.compat-card{
  padding:20px;border:2.5px solid currentColor;position:relative;cursor:none;
  transition:transform .18s,box-shadow .18s;
}
.compat-card:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--pink)}
.compat-card .rank{position:absolute;top:14px;right:16px;font-family:"Unbounded",sans-serif;font-weight:900;font-size:32px;line-height:1;color:var(--pink)}
.compat-card .fio{font-family:"Unbounded",sans-serif;font-weight:900;font-size:22px;line-height:.95;letter-spacing:-.02em;margin-bottom:6px;max-width:calc(100% - 60px)}
.compat-card .clinic{font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.7;line-height:1.4}
.compat-note{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.5;margin-top:14px;line-height:1.5}

/* CALC 3 — Цены */
.price-table{border:2.5px solid currentColor;overflow:hidden}
.price-row{
  display:grid;grid-template-columns:1fr 1.2fr auto;gap:20px;align-items:center;
  padding:16px 20px;border-bottom:1.5px solid currentColor;
  font-family:"JetBrains Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.02em;
  transition:background .15s,color .15s;
}
.price-row:last-child{border-bottom:none}
.price-row.head{background:var(--pink);color:var(--ink);font-family:"Archivo Black",sans-serif;font-size:12px;letter-spacing:.1em}
.price-row:not(.head):hover{background:var(--pink);color:var(--ink)}
.price-row .p{font-family:"Archivo Black",sans-serif;font-size:13px}
.price-row .price{font-family:"Unbounded",sans-serif;font-weight:900;font-size:16px;text-align:right;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.price-note{font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.55;margin-top:20px;line-height:1.5;max-width:800px}

/* CALC 4 — Реабилитация */
.rehab-select{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}
.rehab-select .opt-btn{font-size:12px;padding:10px 16px}
.rehab-timeline{
  display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:center;
  padding:14px 0;border-bottom:1.5px dashed currentColor;
}
.rehab-timeline:first-of-type{border-top:2.5px solid currentColor}
.rehab-timeline .lbl{font-family:"Archivo Black",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.05em}
.rehab-timeline .bar{
  position:relative;height:26px;background:rgba(255,255,255,.08);border:1.5px solid currentColor;overflow:hidden;
}
.calc-sec.light .rehab-timeline .bar{background:rgba(0,0,0,.05)}
.rehab-timeline .bar .fill{
  position:absolute;left:0;top:0;bottom:0;background:var(--pink);
  transition:width .5s cubic-bezier(.6,.2,.1,1);
}
.rehab-timeline .val{
  position:absolute;top:50%;transform:translateY(-50%);
  padding:0 10px;font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--ink);
  z-index:2;
}
.rehab-scale{
  display:grid;grid-template-columns:200px 1fr;gap:16px;
  margin-top:14px;font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.55;
}
.rehab-scale .marks{display:grid;grid-template-columns:repeat(7,1fr);gap:0}
.rehab-scale .marks span{border-left:1px solid currentColor;padding:4px 4px 0}
.rehab-scale .marks span:first-child{border-left:none}

/* CALC 5 — Светофор срочности */
.urg-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.urg-check{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow-y:auto;padding-right:12px}
.urg-check::-webkit-scrollbar{width:6px}
.urg-check::-webkit-scrollbar-thumb{background:var(--pink)}
.urg-check label{
  display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:flex-start;
  padding:12px 14px;border:1.5px solid rgba(255,255,255,.2);
  font-family:"JetBrains Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;
  cursor:none;transition:background .15s;
}
.calc-sec.light .urg-check label{border-color:rgba(0,0,0,.15)}
.urg-check label:hover{background:rgba(176,38,255,.08)}
.urg-check label[data-level="red"] input:checked ~ .box{background:var(--red);border-color:var(--red)}
.urg-check label[data-level="yellow"] input:checked ~ .box{background:var(--yellow);border-color:var(--yellow)}
.urg-check label[data-level="green"] input:checked ~ .box{background:var(--green);border-color:var(--green)}
.urg-check input{position:absolute;opacity:0;pointer-events:none}
.urg-check .box{
  width:20px;height:20px;border:2px solid currentColor;position:relative;top:0;flex:0 0 auto;
  transition:background .15s,border-color .15s;
}
.urg-check label .sym{font-size:12px}
.urg-verdict{
  padding:32px;border:3px solid currentColor;
  min-height:400px;position:relative;
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
  transition:background .3s,border-color .3s,box-shadow .3s;
}
.urg-verdict.lvl-none{background:rgba(255,255,255,.03)}
.urg-verdict.lvl-green{background:#DBFCE7;color:#005c2b;border-color:#005c2b;box-shadow:12px 12px 0 var(--green)}
.urg-verdict.lvl-yellow{background:#FFF8D6;color:#5a4a00;border-color:#8A6F00;box-shadow:12px 12px 0 var(--yellow)}
.urg-verdict.lvl-red{background:#FFE9E9;color:#5a0000;border-color:var(--red);box-shadow:12px 12px 0 var(--red);animation:pulse-red 1.6s ease-in-out infinite}
@keyframes pulse-red{
  0%,100%{box-shadow:12px 12px 0 var(--red)}
  50%{box-shadow:16px 16px 0 var(--red),0 0 60px rgba(255,46,46,.6)}
}
.urg-verdict .signal{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,7vw,120px);line-height:.85;letter-spacing:-.04em;margin-bottom:16px}
.urg-verdict .txt{font-family:"Archivo Black",sans-serif;font-size:16px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.3;max-width:400px}
.urg-verdict .disc{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.6;margin-top:20px;max-width:340px;line-height:1.5}

/* ══════════════════════════════════════════════════════════════════
   4. ГЛОССАРИЙ — 4-колоночный каталог + asterisk-field canvas
   ══════════════════════════════════════════════════════════════════ */
.gloss-sec{
  background:var(--off);color:var(--ink);
  padding:120px 40px;border-top:4px solid var(--ink);
  position:relative;overflow:hidden;
}
.gloss-sec canvas.aster-bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.35;
}
.gloss-sec .container{position:relative;z-index:2}
.gloss-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.gloss-title .pink{color:var(--pink)}
.gloss-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:640px;margin-bottom:60px}
.gloss-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:2px;
  border:2.5px solid var(--ink);background:var(--ink);
}
.gloss-card{
  background:var(--off);padding:20px 18px;min-height:170px;
  position:relative;cursor:none;
  transition:background .2s;
  display:flex;flex-direction:column;justify-content:flex-end;
  overflow:hidden;
}
.gloss-card:hover{background:var(--pink)}
.gloss-card .t{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(18px,1.8vw,28px);line-height:.9;letter-spacing:-.03em;
  transition:transform .3s;
}
.gloss-card .d{
  font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.03em;line-height:1.5;
  margin-top:12px;max-height:0;overflow:hidden;opacity:0;
  transition:max-height .3s ease,opacity .2s ease .1s;
}
.gloss-card:hover .d{max-height:200px;opacity:1}
.gloss-card:hover .t{transform:translateY(-4px)}
.gloss-card::before{
  content:"✱";position:absolute;top:14px;right:16px;
  font-family:"Unbounded",sans-serif;font-weight:900;font-size:20px;color:var(--pink);
  transition:transform .3s,color .3s;
}
.gloss-card:hover::before{color:var(--ink);transform:rotate(180deg) scale(1.4)}

/* ══════════════════════════════════════════════════════════════════
   5. FAQ 30 КАК ЧАТ
   ══════════════════════════════════════════════════════════════════ */
.faq30-sec{
  background:var(--ink);color:var(--off);
  padding:120px 40px;border-top:4px solid var(--ink);
}
.faq30-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.faq30-title .pink{color:var(--pink)}
.faq30-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:640px;margin-bottom:40px;opacity:.75}

.chat{
  max-width:900px;margin:0 auto;
  border:2.5px solid var(--pink);
  background:rgba(176,38,255,.05);
  padding:24px;
  max-height:800px;overflow-y:auto;
  scrollbar-color:var(--pink) transparent;
  scroll-behavior:smooth;
}
.chat::-webkit-scrollbar{width:6px}
.chat::-webkit-scrollbar-thumb{background:var(--pink)}
.chat-head{
  position:sticky;top:-24px;background:var(--ink);margin:-24px -24px 20px;padding:14px 24px;
  display:flex;align-items:center;gap:12px;border-bottom:1.5px solid var(--pink);z-index:2;
}
.chat-head .dot{width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green);animation:blink-red 2s ease infinite}
.chat-head .name{font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.05em}
.chat-head .status{font-family:"JetBrains Mono",monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.6;margin-left:auto}
.chat-message{display:flex;flex-direction:column;gap:4px;margin-bottom:22px}
.chat-message.user{align-items:flex-end}
.chat-message.bot{align-items:flex-start}
.chat-message .meta{font-family:"JetBrains Mono",monospace;font-size:9px;text-transform:uppercase;letter-spacing:.1em;opacity:.4;padding:0 8px}
.bubble{
  padding:14px 18px;max-width:75%;
  font-family:"JetBrains Mono",monospace;font-size:13px;line-height:1.5;letter-spacing:.01em;
  position:relative;
}
.chat-message.user .bubble{
  background:var(--pink);color:var(--ink);
  border-radius:14px 14px 4px 14px;
  font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.25;
}
.chat-message.bot .bubble{
  background:rgba(255,255,255,.08);color:var(--off);
  border-radius:14px 14px 14px 4px;
  border-left:3px solid var(--pink);
}

/* ══════════════════════════════════════════════════════════════════
   6. МЕТОДОЛОГИЧЕСКАЯ ЧЕСТНОСТЬ — глитч-фон
   ══════════════════════════════════════════════════════════════════ */
.honest-sec{
  background:var(--off);color:var(--ink);
  padding:120px 40px;border-top:4px solid var(--ink);position:relative;overflow:hidden;
}
.honest-sec canvas.glitch-bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;
  mix-blend-mode:multiply;opacity:.35;
}
.honest-sec .container{position:relative;z-index:2}
.honest-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:60px}
.honest-title .glitch{position:relative;display:inline-block;color:var(--ink)}
.honest-title .glitch::before,
.honest-title .glitch::after{
  content:attr(data-t);position:absolute;top:0;left:0;width:100%;height:100%;
  clip-path:inset(0 0 0 0);
}
.honest-title .glitch::before{color:var(--pink);animation:glitch-r 2.4s infinite steps(1)}
.honest-title .glitch::after{color:var(--ink);animation:glitch-b 3.1s infinite steps(1)}
@keyframes glitch-r{
  0%,10%,90%,100%{transform:translate(0,0);clip-path:inset(0 0 0 0)}
  20%{transform:translate(3px,0);clip-path:inset(20% 0 60% 0)}
  40%{transform:translate(-2px,0);clip-path:inset(50% 0 30% 0)}
  60%{transform:translate(4px,0);clip-path:inset(10% 0 80% 0)}
}
@keyframes glitch-b{
  0%,15%,85%,100%{transform:translate(0,0)}
  25%{transform:translate(-3px,1px);clip-path:inset(60% 0 20% 0)}
  55%{transform:translate(3px,-1px);clip-path:inset(30% 0 55% 0)}
  75%{transform:translate(-2px,0);clip-path:inset(70% 0 10% 0)}
}

.honest-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:60px}
.honest-col{
  padding:32px;border:3px solid var(--ink);
  position:relative;background:var(--off);
}
.honest-col.yes{box-shadow:10px 10px 0 var(--green)}
.honest-col.no{box-shadow:10px 10px 0 var(--red)}
.honest-col h4{
  font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,6vw,100px);line-height:.85;letter-spacing:-.05em;
  margin-bottom:24px;
}
.honest-col.yes h4{color:var(--green)}
.honest-col.no h4{color:var(--red)}
.honest-col ul{list-style:none;padding:0}
.honest-col li{
  padding:12px 0 12px 28px;border-bottom:1.5px dashed rgba(0,0,0,.15);position:relative;
  font-family:"Archivo Black",sans-serif;font-size:15px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.3;
}
.honest-col li:last-child{border-bottom:none}
.honest-col.yes li::before{content:"✓";position:absolute;left:0;top:11px;color:var(--green);font-size:22px;font-weight:900}
.honest-col.no li::before{content:"×";position:absolute;left:0;top:6px;color:var(--red);font-size:32px;font-weight:900;line-height:1}

.honest-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.honest-note{
  padding:24px;background:var(--ink);color:var(--off);
  border:2.5px solid var(--ink);
  transform:rotate(-1deg);
}
.honest-note:nth-child(2){transform:rotate(1deg);background:var(--pink);color:var(--ink)}
.honest-note:nth-child(3){transform:rotate(-.5deg)}
.honest-note:nth-child(4){transform:rotate(.5deg);background:var(--pink);color:var(--ink)}
.honest-note h5{font-family:"Unbounded",sans-serif;font-weight:900;font-size:22px;letter-spacing:-.02em;margin-bottom:12px;line-height:.95}
.honest-note p{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.03em;line-height:1.55}

/* ══════════════════════════════════════════════════════════════════
   7. 9 СЦЕНАРИЕВ (bonus)
   ══════════════════════════════════════════════════════════════════ */
.scen-sec{
  background:var(--pink);color:var(--ink);
  padding:120px 40px;border-top:4px solid var(--ink);
}
.scen-title{font-family:"Unbounded",sans-serif;font-weight:900;font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;margin-bottom:20px}
.scen-title .stroke{-webkit-text-stroke:3px var(--ink);color:transparent}
.scen-sub{font-family:"JetBrains Mono",monospace;text-transform:uppercase;font-size:14px;letter-spacing:.08em;max-width:640px;margin-bottom:60px}
.scen-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.scen-card{
  background:var(--off);color:var(--ink);
  border:3px solid var(--ink);padding:28px;min-height:280px;
  display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;
  transition:transform .18s,box-shadow .18s;
}
.scen-card:hover{transform:translate(-4px,-4px);box-shadow:10px 10px 0 var(--ink)}
.scen-card:nth-child(3n+2){background:var(--ink);color:var(--off)}
.scen-card:nth-child(3n+3){background:var(--pink);color:var(--ink);border-color:var(--ink)}
.scen-num{
  position:absolute;top:-10px;right:-4px;font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:120px;line-height:.8;letter-spacing:-.05em;
  color:rgba(0,0,0,.08);pointer-events:none;
}
.scen-card:nth-child(3n+2) .scen-num{color:rgba(176,38,255,.2)}
.scen-tag{
  font-family:"Archivo Black",sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.1em;
  padding:5px 10px;background:var(--pink);color:var(--ink);
  border:1.5px solid var(--ink);align-self:flex-start;
}
.scen-card:nth-child(3n+3) .scen-tag{background:var(--ink);color:var(--pink)}
.scen-t{font-family:"Unbounded",sans-serif;font-weight:900;font-size:22px;line-height:1;letter-spacing:-.02em}
.scen-p{font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.02em;line-height:1.5;opacity:.75}
.scen-docs{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}
.scen-doc{
  padding:5px 10px;border:1.5px solid currentColor;font-family:"JetBrains Mono",monospace;
  font-size:11px;text-transform:uppercase;letter-spacing:.02em;cursor:none;
  transition:background .12s,color .12s;
}
.scen-doc:hover{background:var(--ink);color:var(--pink)}
.scen-card:nth-child(3n+2) .scen-doc:hover{background:var(--pink);color:var(--ink)}
.scen-card:nth-child(3n+3) .scen-doc:hover{background:var(--off);color:var(--ink)}

/* ══════════════════════════════════════════════════════════════════
   RESPONSIVE — расширенные блоки
   ══════════════════════════════════════════════════════════════════ */
@media (max-width: 1279px){
  .honest-notes{grid-template-columns:repeat(2,1fr)}
  .scen-grid{grid-template-columns:repeat(2,1fr)}
  .gloss-grid{grid-template-columns:repeat(3,1fr)}
  .mycalc-grid,.compat-grid{grid-template-columns:1fr;gap:40px}
}
@media (max-width: 900px){
  .flags-layout{grid-template-columns:1fr}
  .traffic-light{flex-direction:row;justify-content:center;position:relative;top:0;padding:16px}
  .traffic-light .lamp{width:80px;height:80px}
  .traffic-light .lamp-block:first-child .lamp{width:100px;height:100px}
  .traffic-light .lamp-block{flex-direction:column}
  .nav-diagram{grid-template-columns:240px 260px 320px}
  .gloss-grid{grid-template-columns:repeat(2,1fr)}
  .scen-grid{grid-template-columns:1fr}
  .price-row{grid-template-columns:1fr auto;gap:12px}
  .price-row .m{grid-column:1/-1;opacity:.7;font-size:11px}
  .price-row.head .m{opacity:1}
  .urg-grid{grid-template-columns:1fr}
  .honest-grid{grid-template-columns:1fr}
  .rehab-timeline{grid-template-columns:140px 1fr;gap:12px}
  .rehab-scale{grid-template-columns:140px 1fr}
  .honest-notes{grid-template-columns:1fr;gap:16px}
  .calc-head{gap:14px}
  .flags-sec,.nav-sec,.calc-intro,.calc-sec,.gloss-sec,.faq30-sec,.honest-sec,.scen-sec{padding:80px 24px}
  .nav-sec{padding-left:0;padding-right:0}
  .nav-sec .container{padding:0 24px}
  .nav-hint{padding:0 24px}
  .flag-col{padding:24px 22px 22px}
}
@media (max-width: 700px){
  .flags-sec,.nav-sec,.calc-intro,.calc-sec,.gloss-sec,.faq30-sec,.honest-sec,.scen-sec{padding:60px 18px}
  .nav-sec .container{padding:0 18px}
  .nav-hint{padding:0 18px}
  .nav-hscroll{padding:20px 18px 40px}
  .nav-diagram{grid-template-columns:200px 220px 260px;gap:0}
  .nav-cell{padding:18px 14px}
  .nav-cell.symptom .icon{font-size:56px}
  .nav-cell.symptom .name{font-size:20px}
  .nav-diagram::before,.nav-diagram::after{font-size:28px}
  .flags-title,.nav-title,.gloss-title,.faq30-title,.honest-title,.scen-title{font-size:44px}
  .calc-intro h2{font-size:52px}
  .calc-sec{padding:60px 18px}
  .calc-head .num{font-size:80px}
  .calc-head .about h3{font-size:28px}
  .presets{gap:6px}
  .preset-btn{font-size:10px;padding:8px 12px}
  .slider-row{grid-template-columns:44px 1fr 50px;gap:10px}
  .slider-row .code{font-size:12px}
  .slider-row .val{font-size:15px}
  .mycalc-row{grid-template-columns:32px 32px 1fr 60px;gap:8px;padding:8px 10px}
  .mycalc-row .rank{font-size:18px}
  .mycalc-row .fio{font-size:11px}
  .mycalc-row .sc{font-size:15px}
  .gloss-grid{grid-template-columns:1fr;border:none;background:transparent;gap:6px}
  .gloss-card{border:2px solid var(--ink);min-height:auto;padding:16px}
  .gloss-card .d{max-height:none;opacity:1;padding-top:6px;margin-top:6px;border-top:1px dashed rgba(0,0,0,.2)}
  .gloss-card::before{font-size:14px;top:12px;right:12px}
  .chat{padding:16px}
  .chat-head{margin:-16px -16px 16px;padding:12px 16px;top:-16px}
  .bubble{max-width:88%;font-size:12px;padding:12px 14px}
  .chat-message.user .bubble{font-size:12px}
  .honest-col{padding:22px}
  .honest-col li{font-size:13px}
  .scen-card{padding:22px;min-height:auto}
  .scen-num{font-size:80px;top:-4px}
  .urg-verdict{padding:24px;min-height:280px}
  .urg-verdict .signal{font-size:40px}
  .urg-verdict .txt{font-size:13px}
  .traffic-light{padding:12px;gap:12px}
  .traffic-light .lamp{width:60px;height:60px}
  .traffic-light .lamp-block:first-child .lamp{width:80px;height:80px}
  .traffic-light .label{font-size:10px}
  .flag-col h4{font-size:26px}
  .flag-col li{font-size:12px;padding:8px 0 8px 22px}
  .flag-col .route{font-size:11px;padding:12px}
}


/* ══════════════════════════════════════════════════════════════════
   БЕРЕМЕННОСТЬ И РОДЫ (женский бонус-блок)
   ══════════════════════════════════════════════════════════════════ */
.pregn-sec{
  background: linear-gradient(180deg, var(--off) 0%, #EBE0F7 100%);
  color:var(--ink);
  padding:120px 40px;border-top:4px solid var(--ink);
  position:relative;overflow:hidden;
}
.pregn-sec::before{
  content:"✱";position:absolute;top:60px;right:-20px;
  font-family:"Unbounded",sans-serif;font-weight:900;font-size:520px;
  color:var(--pink);opacity:.08;line-height:.8;pointer-events:none;
  animation:spin 60s linear infinite;transform-origin:center;
}
.pregn-sec .container{position:relative;z-index:2;max-width:1600px;margin:0 auto}
.pregn-tag{
  display:inline-block;padding:8px 16px;
  background:var(--ink);color:var(--pink);
  font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.15em;
  border:2.5px solid var(--ink);
  transform:rotate(-2deg);margin-bottom:24px;
  box-shadow:4px 4px 0 var(--pink);
}
.pregn-title{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(48px,10vw,180px);line-height:.85;letter-spacing:-.04em;
  margin-bottom:24px;
}
.pregn-title .pink{color:var(--pink)}
.pregn-sub{
  font-family:"JetBrains Mono",monospace;font-size:15px;line-height:1.6;
  max-width:820px;margin-bottom:60px;
}
.pregn-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:60px;
}
.pregn-card{
  background:var(--off);border:3px solid var(--ink);
  padding:32px 28px;position:relative;
  box-shadow:10px 10px 0 var(--pink);
  display:flex;flex-direction:column;gap:16px;
}
.pregn-card.p2{background:var(--pink);color:var(--ink);box-shadow:10px 10px 0 var(--ink)}
.pregn-card.p3{background:var(--ink);color:var(--off);box-shadow:10px 10px 0 var(--pink)}
.pregn-card.p4{background:var(--off);box-shadow:10px 10px 0 var(--ink)}
.pregn-card .p-num{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(60px,7vw,110px);line-height:.8;letter-spacing:-.05em;
  color:var(--pink);
}
.pregn-card.p2 .p-num{color:var(--ink);opacity:.4}
.pregn-card.p3 .p-num{color:var(--pink)}
.pregn-card h4{
  font-family:"Unbounded",sans-serif;font-weight:900;
  font-size:clamp(22px,2.4vw,34px);line-height:.9;letter-spacing:-.02em;
  text-transform:uppercase;
}
.pregn-card .p-body{
  font-family:"JetBrains Mono",monospace;font-size:13px;line-height:1.6;
  display:flex;flex-direction:column;gap:12px;
}
.pregn-card .p-body p{margin:0}
.pregn-card .p-body b{
  font-family:"Archivo Black",sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.05em;
  background:var(--ink);color:var(--pink);padding:1px 6px;
}
.pregn-card.p2 .p-body b{background:var(--ink);color:var(--pink)}
.pregn-card.p3 .p-body b{background:var(--pink);color:var(--ink)}

.pregn-docs{
  background:var(--ink);color:var(--off);
  padding:36px 32px;border:3px solid var(--ink);
  margin-bottom:24px;
  box-shadow:12px 12px 0 var(--pink);
}
.pregn-docs h5{
  font-family:"Archivo Black",sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.12em;
  margin-bottom:20px;color:var(--pink);
}
.pregn-doc-chips{display:flex;flex-wrap:wrap;gap:10px}
.pregn-doc-chip{
  display:flex;flex-direction:column;gap:2px;align-items:flex-start;
  padding:12px 16px;border:2px solid var(--pink);background:transparent;color:var(--off);
  cursor:none;transition:background .15s,color .15s,transform .15s;
  min-width:220px;
}
.pregn-doc-chip:hover{background:var(--pink);color:var(--ink);transform:translate(-2px,-2px)}
.pregn-doc-chip .n{font-family:"Unbounded",sans-serif;font-weight:900;font-size:18px;letter-spacing:-.02em;color:var(--pink)}
.pregn-doc-chip:hover .n{color:var(--ink)}
.pregn-doc-chip .fio{font-family:"Archivo Black",sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:-.01em}
.pregn-doc-chip .cl{font-family:"JetBrains Mono",monospace;font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.7}

.pregn-disclaim{
  font-family:"JetBrains Mono",monospace;font-size:11px;line-height:1.6;letter-spacing:.03em;
  opacity:.65;max-width:900px;text-transform:uppercase;
  padding:16px 20px;border-left:4px solid var(--pink);background:rgba(255,255,255,.35);
}

@media (max-width: 900px){
  .pregn-sec{padding:80px 24px}
  .pregn-title{font-size:52px}
  .pregn-grid{grid-template-columns:1fr;gap:20px}
  .pregn-card{padding:28px 22px}
  .pregn-docs{padding:28px 22px}
}
@media (max-width: 700px){
  .pregn-sec{padding:60px 18px}
  .pregn-title{font-size:44px}
  .pregn-sub{font-size:13px;margin-bottom:40px}
  .pregn-card .p-num{font-size:56px}
  .pregn-card h4{font-size:20px}
  .pregn-card .p-body{font-size:12px}
  .pregn-doc-chip{min-width:100%}
  .pregn-sec::before{font-size:280px;opacity:.06}
}
