/* Страницы инструментов в новом дизайне (28.10.2026). Собирает tools/novyj-dizajn/instrument_stranica.py.
   Виджеты берут цвета и шрифты из переменных старого сборщика (--ink, --ink2, --accent, --serif, --mono…) —
   здесь им даны значения новой палитры, поэтому разметка и скрипты инструментов не меняются. */
.op-instr-str{--sans:Inter,Arial,sans-serif;--serif:Inter,Arial,sans-serif;--mono:Inter,Arial,sans-serif;--ink2:#51464a;
  --accent:#b34332;--accent-soft:rgba(46,59,48,.35);--bg-deep:#f3f5ef;--cream:#fff;--line:#e5dfdb}
.op-kroshki{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0;font-size:13.5px;color:var(--muted)}
.op-kroshki a{color:var(--muted);text-decoration:none}
.op-kroshki a:hover{color:var(--ink)}
.op-kroshki span:last-child{color:var(--ink)}
/* первый экран */
.homepage .op .op-hero--instr h1{font-size:44px;margin:12px 0 18px}
.op-instr-avtor{margin:0;font-size:14.5px;line-height:1.5;color:var(--muted)}
.op-instr-avtor a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.op-hero--instr .button{min-height:54px;padding-inline:22px;gap:16px}
.op-instr-kartinka{border-radius:28px;overflow:hidden;aspect-ratio:4/3}
.op-instr-kartinka .in-kart__img{aspect-ratio:auto;height:100%;margin:0}
/* сам инструмент */
.op-instr-str .tool.op-instr{--ink:#2e3b30;margin:56px 0 0;padding:40px 44px;border:0;border-radius:28px;background:#f3f5ef;box-shadow:none;scroll-margin-top:16px}
.op-instr-str .tool h2{font:600 30px/1.15 var(--sans);letter-spacing:-.035em;margin:0 0 8px}
.op-instr-str .tool h3{font-family:var(--sans);font-weight:600;letter-spacing:-.02em}
.op-instr-str .dz-t,.op-instr-str .pk-h,.op-instr-str .pk-age__t,.op-instr-str .dz-pre{font:600 12px/1.3 var(--sans)!important;letter-spacing:.06em;color:#607055!important}
.op-instr-str .tool__f>span,.op-instr-str .rv-row__t,.op-instr-str .pk-cnt{font:600 12px/1.3 var(--sans);letter-spacing:.05em}
.op-instr-str .tool .btn-accent{border-radius:999px;background:#b34332;color:#fff;border:0;font-weight:600}
.op-instr-str .res{background:#fff;border-left-color:#2e3b30}
.op-instr-str .res .res__big,.op-instr-str .pk-sum__t,.op-instr-str .rv-gt,.op-instr-str .pk-gh h3{font-family:var(--sans);font-weight:650;letter-spacing:-.03em}
/* текст и содержание */
.op-instr-tekst{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:64px;align-items:start}
.op-instr-tekst__t{max-width:760px}
.homepage .op .op-instr-tekst__t h2{margin:48px 0 14px;font-size:28px;scroll-margin-top:16px}
.homepage .op .op-instr-tekst__t h2:first-child{margin-top:0}
.op-instr-tekst__t h3{margin:28px 0 10px;font-size:20px;font-weight:600;letter-spacing:-.02em}
.op-instr-tekst__t p,.op-instr-tekst__t li{font-size:17.5px;line-height:1.65;color:var(--ink)}
.op-instr-tekst__t p{margin:0 0 14px}
.op-instr-tekst__t ul,.op-instr-tekst__t ol{margin:0 0 16px;padding-left:22px}
.op-instr-tekst__t li{margin:6px 0}
.op-instr-tekst__t li::marker{color:#607055}
.op-instr-tekst__t a{color:var(--z);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.op-instr-toc{position:sticky;top:24px;padding:24px;border-radius:22px;background:#f3f5ef}
.op-instr-toc ol{list-style:none;margin:12px 0 0;padding:0;counter-reset:t}
.op-instr-toc li{counter-increment:t;border-top:1px solid #e1e6d9}
.op-instr-toc a{display:flex;gap:10px;padding:10px 0;font-size:14.5px;line-height:1.4;color:var(--ink);text-decoration:none}
.op-instr-toc a::before{content:counter(t);flex:none;width:18px;color:#607055;font-weight:600}
.op-instr-toc a:hover{color:var(--z)}
/* когда к врачу — розовая карточка температуры без круга с номером */
.op-skoraya--instr{align-items:start}
.op-skoraya__posle{margin:14px 0 0;font-size:16px;line-height:1.55;color:var(--ink-soft)}
.op-instr-diskl{margin-top:40px!important;max-width:none!important}
@media(max-width:900px){.op-instr-tekst{grid-template-columns:1fr;gap:0}.op-instr-toc{position:static;order:-1;margin-bottom:36px}
  .homepage .op .op-hero--instr h1{font-size:34px}}
@media(max-width:600px){.op-instr-str .tool.op-instr{margin-top:36px;padding:22px 16px;border-radius:22px}
  .op-instr-str .tool h2{font-size:24px}.homepage .op .op-hero--instr h1{font-size:30px}
  .homepage .op .op-instr-tekst__t h2{font-size:24px;margin-top:36px}.op-instr-tekst__t p,.op-instr-tekst__t li{font-size:16.5px}
  .op-instr-kartinka{border-radius:22px}}
.op-instr-str .tool .btn--ghost{border-radius:999px;font-weight:600}
