/* =====================================================================
   СТРАНИЦА УСТРОЙСТВА и узлы каталога.

   Живёт поверх baza.css: оттуда берутся токены палитры, шелл (.wrap,
   .kb-top, .kb-crumbs, .kb-foot), кнопки и секции (.sec). Здесь только то,
   чего в витрине не было, — сводка, гистограммы, таблицы характеристик.

   Ни одной строки скрипта на странице нет: раскрытие групп сделано на
   <details>, липкая навигация — на position:sticky. Мобильный вид пишется
   первым, десктоп добавляется медиазапросами.
   ===================================================================== */

.dv-page .wrap{max-width:980px}

/* ---- Шапка страницы: имя, факты, плитки, фото ---- */
/* Шапка страницы: название, снимок, сводка цифрами.
   Три зоны раскладкой, а не порядком в разметке. Снимок стоит рядом с
   названием на любой ширине — по нему человек узнаёт свою железку, — а плитки
   идут во всю ширину под ними. Раньше снимок занимал отдельную полосу поперёк
   телефона, и вместе с плитками в один столбец это отодвигало «что ломается»
   на 876-й пиксель при экране в 812: заголовка раздела, ради которого сюда и
   приходят, на первом экране не было вовсе. */
.dv-lede{
  display:grid;gap:14px 14px;padding:18px 0 6px;
  grid-template-columns:1fr auto;
  grid-template-areas:"txt photo" "tiles tiles";
  align-items:start;
}
.dv-lede-txt{grid-area:txt;min-width:0}
.dv-photo{grid-area:photo}
.dv-tiles{grid-area:tiles}
@media(min-width:840px){
  .dv-lede{gap:20px 28px}
}
.dv-lede h1{
  font-family:var(--font-serif);font-size:1.72rem;line-height:1.18;letter-spacing:-.015em;
  margin:0 0 8px;color:var(--text);text-wrap:balance;
}
@media(min-width:720px){.dv-lede h1{font-size:2.1rem}}
.dv-facts{
  font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;
  color:var(--muted);margin:0 0 14px;
}
.dv-photo{justify-self:end}
.dv-photo img{
  /* 108 на телефоне — размер, при котором ноутбук ещё узнаётся, но снимок не
     съедает экран. На широком возвращаем прежние 220. */
  width:108px;height:auto;border-radius:var(--radius);border:1px solid var(--line);
  background:var(--card);padding:8px;box-shadow:var(--shadow-sm);
}
@media(min-width:840px){
  .dv-photo{justify-self:center}
  .dv-photo img{width:220px;padding:10px}
}

/* Плитки-сводка. Показываем только заполненные — пустая плитка «нет данных»
   занимает место и ничего не сообщает. */
.dv-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px;margin:0}
.dv-tile{
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);
  padding:12px 14px;display:flex;flex-direction:column;gap:2px;
}
/* На телефоне плитки теснее: их пять, и каждый лишний десяток пикселей внутри
   умножается на три ряда. Подписи и подсказки остаются — это не украшение, а
   единственное, что объясняет, откуда взялась цифра. */
@media(max-width:560px){
  .dv-tiles{gap:8px}
  .dv-tile{padding:9px 11px}
  .dv-tile b{font-size:1.3rem}
  .dv-tile span{font-size:.78rem}
  .dv-tile i{font-size:.71rem;line-height:1.3}
}
.dv-tile b{
  font-family:var(--font-mono);font-size:1.5rem;font-weight:700;line-height:1.05;
  color:var(--cyber-deep);font-variant-numeric:tabular-nums;
}
.dv-tile b small{font-size:.9rem;color:var(--muted);font-weight:600}
.dv-tile span{font-size:.82rem;font-weight:600;color:var(--ink2)}
.dv-tile i{font-style:normal;font-size:.74rem;color:var(--muted);line-height:1.35}

/* ---- Липкая навигация по секциям ---- */
.dv-nav{
  position:sticky;top:0;z-index:30;display:flex;gap:6px;overflow-x:auto;
  margin:14px -16px 0;padding:10px 16px;
  background:rgba(241,243,245,.94);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);scrollbar-width:none;
}
.dv-nav::-webkit-scrollbar{display:none}
@media(min-width:720px){.dv-nav{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}}
.dv-nav a,.dv-nav button{
  flex:none;font-size:.82rem;font-weight:650;color:var(--ink2);white-space:nowrap;
  padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--card);
}
.dv-nav a:hover,.dv-nav button:hover{border-color:var(--cyber);color:var(--cyber-deep)}
.dv-nav button{font-family:inherit;cursor:pointer;-webkit-appearance:none}

/* ---- Общая типографика секций ---- */
.dv-page .sec{scroll-margin-top:64px}
.dv-lead{margin:0 0 14px;color:var(--ink2);max-width:66ch}
.dv-note{
  margin:12px 0 0;font-size:.85rem;line-height:1.5;color:var(--muted);max-width:70ch;
  padding-left:12px;border-left:2px solid var(--rule);
}
.dv-empty{margin:0;color:var(--ink2);max-width:66ch}
.dv-h3{font-family:var(--font-serif);font-size:1rem;font-weight:600;margin:18px 0 8px}
.dv-more{margin:14px 0 0;font-size:.88rem;font-weight:650}
.dv-more a{color:var(--cyber-deep);display:inline-flex;align-items:center;min-height:34px}
.dv-more a:hover{text-decoration:underline}

/* ---- «Что ломается»: гистограмма узлов ---- */
.dv-tags{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:7px}
.dv-tags li{display:grid;grid-template-columns:minmax(96px,150px) 1fr 34px;align-items:center;gap:10px}
.dv-tag-l{font-size:.85rem;color:var(--ink2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dv-tag-t{display:block;height:9px;border-radius:999px;background:var(--line2);overflow:hidden}
.dv-tag-t i{display:block;height:100%;border-radius:999px;background:var(--cyber)}
.dv-tags b{
  font-family:var(--font-mono);font-size:.8rem;color:var(--muted);text-align:right;
  font-variant-numeric:tabular-nums;
}

/* ---- Список разборов ---- */
.dv-cases{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dv-cases a{
  display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);
  padding:12px 14px;transition:border-color .18s var(--ease),box-shadow .18s var(--ease);
}
.dv-cases a:hover{border-color:var(--cyber);box-shadow:var(--shadow-sm)}
.dv-cases b{display:block;font-size:.95rem;font-weight:650;line-height:1.35;color:var(--text)}
.dv-fix{display:block;margin-top:5px;font-size:.86rem;color:var(--ink2);line-height:1.45}
.dv-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.dv-badge{
  font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;
  padding:2px 7px;border-radius:4px;color:var(--warn);background:var(--warnw);border:1px solid var(--warnl);
}
.dv-badge.ok{color:var(--ok);background:var(--okw);border-color:var(--okl)}
.dv-src{font-family:var(--font-mono);font-size:.7rem;color:var(--muted)}

/* ---- Надёжность ---- */
.dv-relhead{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.dv-relhead b{font-size:1.05rem}
.dv-trust{font-size:.78rem;font-weight:600;color:var(--muted)}
.dv-bars{display:grid;gap:10px;margin:0 0 4px}
.dv-bar{display:grid;grid-template-columns:1fr 90px 54px;align-items:center;gap:10px}
@media(min-width:600px){.dv-bar{grid-template-columns:minmax(140px,260px) 1fr 54px}}
.dv-bar-l{font-size:.85rem;color:var(--ink2)}
.dv-bar-t{display:block;height:11px;border-radius:999px;background:var(--line2);overflow:hidden}
.dv-bar-t i{display:block;height:100%;border-radius:999px;background:var(--cyber)}
.dv-bar-t i.ok{background:#2f9e6b}
.dv-bar-t i.bad{background:#c8623c}
.dv-bar-t i.mid{background:var(--rule)}
.dv-bar b{
  font-family:var(--font-mono);font-size:.82rem;text-align:right;
  font-variant-numeric:tabular-nums;color:var(--ink2);
}
.dv-reasons{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.dv-reasons li{
  display:flex;justify-content:space-between;gap:12px;font-size:.86rem;
  padding:7px 12px;background:var(--card2);border-radius:var(--radius-s);
}
.dv-reasons b{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink2)}
.dv-rating{margin:16px 0 0;font-size:.9rem;color:var(--ink2)}
.dv-rating b{font-family:var(--font-mono);font-size:1.05rem;color:var(--text)}

/* ---- Характеристики ---- */
.dv-group{
  border:1px solid var(--line);border-radius:var(--radius-s);background:var(--card);
  margin-bottom:8px;overflow:hidden;
}
.dv-group>summary{
  display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;
  padding:11px 14px;font-weight:650;font-size:.92rem;list-style:none;
}
.dv-group>summary::-webkit-details-marker{display:none}
.dv-group>summary::after{
  content:'';width:9px;height:9px;flex:none;margin-left:auto;
  border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);
  transform:rotate(45deg) translateY(-2px);transition:transform .18s var(--ease);
}
.dv-group[open]>summary::after{transform:rotate(-135deg) translateY(-2px)}
.dv-group>summary span{
  font-family:var(--font-mono);font-size:.7rem;color:var(--muted);
  order:2;margin-left:auto;padding-right:4px;
}
.dv-group[open]>summary{border-bottom:1px solid var(--line2)}
.dv-spec{width:100%;border-collapse:collapse;font-size:.87rem;display:block;overflow-x:auto}
.dv-spec tbody{display:table;width:100%}
.dv-spec tr{border-top:1px solid var(--line2)}
.dv-spec tr:first-child{border-top:none}
.dv-spec th{
  text-align:left;font-weight:500;color:var(--muted);padding:8px 14px;
  width:44%;vertical-align:top;
}
.dv-spec td{padding:8px 14px;color:var(--text);vertical-align:top}

/* ---- Файлы, видео, соседи ---- */
.dv-files{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.dv-files li{
  display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:baseline;
  padding:9px 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);
}
.dv-file-k{
  font-family:var(--font-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--cyber-deep);background:var(--accw);border:1px solid var(--accl);
  border-radius:4px;padding:2px 6px;
}
.dv-file-n{font-size:.88rem;word-break:break-word}
/* Документ у вендора: ссылка обязана выглядеть ссылкой, иначе строка
   читается как имя нашего файла, который можно скачать. */
.dv-file-n a{color:var(--cyber-deep);text-decoration:underline;text-underline-offset:2px}
.dv-file-n a:hover{text-decoration-thickness:2px}
.dv-file-m{grid-column:2;font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}

/* Раздел целиком под стрелкой. Тот же приём, что у групп характеристик, но
   на уровне секции: заголовок с числом виден всегда, содержимое раскрывается
   по нажатию. Скрипт не нужен — это <details>. */
.dv-fold{border:1px solid var(--line);border-radius:var(--radius-s);background:var(--card);overflow:hidden}
.dv-fold>summary{
  display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;
  padding:13px 15px;min-height:46px;
}
.dv-fold>summary::-webkit-details-marker{display:none}
.dv-fold>summary::after{
  content:'';width:9px;height:9px;flex:none;margin-left:auto;
  border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);
  transform:rotate(45deg) translateY(-2px);transition:transform .18s var(--ease);
}
.dv-fold[open]>summary::after{transform:rotate(-135deg) translateY(-2px)}
.dv-fold[open]>summary{border-bottom:1px solid var(--line2)}
.dv-fold-h{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;letter-spacing:-.01em}
.dv-fold-n{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}
.dv-fold-b{padding:12px 12px 14px}

.dv-vids{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.dv-vids a{
  display:block;padding:10px 12px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--radius-s);
}
.dv-vids a:hover{border-color:var(--cyber)}
.dv-vids b{display:block;font-size:.9rem;font-weight:650}
.dv-vids span{font-size:.78rem;color:var(--muted)}

.dv-sibs{list-style:none;margin:0;padding:0;display:grid;gap:6px}
@media(min-width:640px){.dv-sibs{grid-template-columns:1fr 1fr}}
.dv-sibs li{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:10px 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-s);
}
.dv-sibs a{font-size:.9rem;font-weight:650;color:var(--text)}
.dv-sibs a:hover{color:var(--cyber-deep);text-decoration:underline}
.dv-sibs span{font-family:var(--font-mono);font-size:.72rem;color:var(--muted);white-space:nowrap}

/* ---- Узлы каталога ---- */
.dv-grid{list-style:none;margin:0;padding:0;display:grid;gap:8px}
@media(min-width:560px){.dv-grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.dv-grid{grid-template-columns:1fr 1fr 1fr}}
.dv-grid a{
  display:block;padding:13px 15px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--radius-s);height:100%;
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease);
}
.dv-grid a:hover{border-color:var(--cyber);box-shadow:var(--shadow-sm)}
.dv-grid b{display:block;font-size:.95rem;font-weight:650;line-height:1.3}
.dv-grid span{display:block;margin-top:4px;font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}
.dv-grid-tight b{font-size:.9rem;font-weight:600}

.dv-pager{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:18px;padding-top:14px;border-top:1px solid var(--line);
  font-size:.86rem;font-weight:650;
}
.dv-pager span{font-family:var(--font-mono);font-weight:500;color:var(--muted)}
.dv-pager a{color:var(--cyber-deep)}
.dv-pager a:hover{text-decoration:underline}

/* ---- Заявка ---- */
.dv-cta{margin-top:26px;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}
.dv-cta h2{margin-top:0}
.dv-cta p{color:var(--ink2);max-width:64ch}
.dv-cta a{color:var(--cyber-deep)}
.dv-cta .btn{color:#fff}

/* ---- Ширины полос ----
   Политика содержимого раздела разрешает только свои файлы стилей
   (style-src 'self'), поэтому ширина полосы приходит классом, а не атрибутом
   style: инлайновый style браузер молча отбрасывает, и все полосы становятся
   одинаковой длины. Шаг 2 % — глазу этого хватает, а таблица остаётся
   короткой. */
.w2{width:2%}
.w4{width:4%}
.w6{width:6%}
.w8{width:8%}
.w10{width:10%}
.w12{width:12%}
.w14{width:14%}
.w16{width:16%}
.w18{width:18%}
.w20{width:20%}
.w22{width:22%}
.w24{width:24%}
.w26{width:26%}
.w28{width:28%}
.w30{width:30%}
.w32{width:32%}
.w34{width:34%}
.w36{width:36%}
.w38{width:38%}
.w40{width:40%}
.w42{width:42%}
.w44{width:44%}
.w46{width:46%}
.w48{width:48%}
.w50{width:50%}
.w52{width:52%}
.w54{width:54%}
.w56{width:56%}
.w58{width:58%}
.w60{width:60%}
.w62{width:62%}
.w64{width:64%}
.w66{width:66%}
.w68{width:68%}
.w70{width:70%}
.w72{width:72%}
.w74{width:74%}
.w76{width:76%}
.w78{width:78%}
.w80{width:80%}
.w82{width:82%}
.w84{width:84%}
.w86{width:86%}
.w88{width:88%}
.w90{width:90%}
.w92{width:92%}
.w94{width:94%}
.w96{width:96%}
.w98{width:98%}
.w100{width:100%}

/* Итог закрыт: строка сообщает о статусе, а не несёт содержание,
   поэтому она приглушена и не спорит с заголовком случая. */
.dv-fix-lock{color:var(--muted)}

/* ============ СРАВНЕНИЕ ============
   Поля выбора стоят сразу под заголовком: человек, пришедший по запросу
   «сравнить видеокарты», должен видеть, куда вводить, а не искать вход. */
.cmp-pick{
  display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;
  background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px;margin:0 0 10px;
}
.cmp-field{display:flex;flex-direction:column;gap:5px;flex:1 1 240px;min-width:0}
.cmp-field>span{
  font-family:var(--font-mono);font-size:.66rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);
}
.cmp-field input{
  width:100%;min-height:var(--tap);padding:0 14px;font:inherit;
  border:1.5px solid var(--rule);border-radius:var(--radius-s);
  background:var(--card2);color:var(--text);
}
.cmp-field input:focus{outline:2px solid var(--cyber-ink);outline-offset:1px;border-color:var(--cyber)}
.cmp-vs{
  flex:none;align-self:center;padding-bottom:12px;
  font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);
}
.cmp-pick .btn{flex:1 1 160px}
@media(max-width:559px){.cmp-vs{display:none}.cmp-pick{padding:14px}}
.cmp-err{
  margin:0 0 10px;padding:10px 14px;border-radius:var(--radius-s);
  background:var(--warnw);border:1px solid var(--warnl);color:var(--warn);font-size:.9rem;
}

/* Частые пары — обычные ссылки: они и вход для человека, и дорога для робота. */
.cmp-pairs{list-style:none;margin:0;padding:0;display:grid;gap:6px}
@media(min-width:720px){.cmp-pairs{grid-template-columns:1fr 1fr}}
.cmp-pairs a{
  display:block;padding:11px 14px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--radius-s);
  font-size:.9rem;font-weight:600;
}
.cmp-pairs a:hover{border-color:var(--cyber);color:var(--cyber-deep)}
.cmp-pairs i{font-style:normal;color:var(--muted);font-weight:400}
.cmp-pop a{font-weight:600}

/* Шапка таблицы — отдельной таблицей, чтобы имена моделей не уезжали при
   раскрытии групп. */
.cmp-head{width:100%;border-collapse:collapse;margin:0 0 6px;table-layout:fixed}
.cmp-head th{
  padding:10px 12px;text-align:left;font-size:.95rem;font-weight:650;
  border-bottom:2px solid var(--rule);vertical-align:bottom;
}
.cmp-head th:first-child{width:34%}
.cmp-head a{color:var(--cyber-deep)}
.cmp-head a:hover{text-decoration:underline}

.cmp-table{width:100%;border-collapse:collapse;font-size:.87rem;table-layout:fixed}
.cmp-table th{
  text-align:left;font-weight:500;color:var(--muted);padding:8px 12px;
  width:34%;vertical-align:top;
}
.cmp-table td{padding:8px 12px;vertical-align:top;color:var(--text)}
.cmp-table tr{border-top:1px solid var(--line2)}
.cmp-table tr:first-child{border-top:none}
.cmp-table tr.same th,.cmp-table tr.same td{color:var(--muted)}
.cmp-table td.best{font-weight:700;color:var(--ok);background:var(--okw)}
.cmp-table .none{color:var(--rule)}

/* «Коротко» над таблицей: вывод, ради которого страницу и открыли. */
.cmp-sum{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.cmp-sum li{
  padding:10px 14px;background:var(--card2);border-left:3px solid var(--cyber);
  border-radius:0 var(--radius-s) var(--radius-s) 0;font-size:.9rem;
}
.dv-facts-list{margin:0;padding-left:20px;color:var(--ink2);max-width:70ch}
.dv-facts-list li{margin-bottom:8px}

/* Три и четыре колонки. Первая колонка сужается: при четырёх моделях отдавать
   ей треть ширины значит оставить каждой железке по шестой части. Таблица
   уезжает в свою прокрутку, а не растягивает страницу вбок. */
.cmp-scroll{overflow-x:auto}
.cmp-head.cmp-n3 th:first-child,.cmp-table.cmp-n3 th{width:28%}
.cmp-head.cmp-n4 th:first-child,.cmp-table.cmp-n4 th{width:22%}
.cmp-head.cmp-n3,.cmp-table.cmp-n3{min-width:560px}
.cmp-head.cmp-n4,.cmp-table.cmp-n4{min-width:700px}
.dv-group:has(.cmp-n3),.dv-group:has(.cmp-n4){overflow-x:auto}

/* Строка с двумя полями и кнопкой; третья и четвёртая — под раскрытием. */
.cmp-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;width:100%}
.cmp-extra{width:100%;margin-top:4px}
.cmp-extra>summary{
  cursor:pointer;list-style:none;display:inline-block;padding:4px 0;
  font-size:.85rem;font-weight:650;color:var(--cyber-deep);min-height:32px;
}
.cmp-extra>summary::-webkit-details-marker{display:none}
.cmp-extra>summary::after{content:' ▾'}
.cmp-extra[open]>summary::after{content:' ▴'}
.cmp-extra-in{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding-top:6px}
.cmp-extra-in .cmp-field{flex:1 1 220px}

/* ============ ПОЛЕ ПОИСКА НА СТРАНИЦАХ РАЗДЕЛА ============
   Обычная форма, без скрипта. Стоит на страницах устройств, в узлах каталога
   и на самой выдаче — до 07.09.2026 уйти с них было некуда: ни одного поля,
   только ссылки на соседние модели. */
.sfind{
  display:flex;align-items:center;gap:12px;width:100%;
  margin:14px 0 8px;padding:0 8px 0 18px;min-height:60px;
  background:var(--card);border:1.5px solid var(--rule);border-radius:16px;
  box-shadow:var(--shadow-sm);
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease);
}
.sfind:focus-within{border-color:var(--cyber);box-shadow:0 0 0 3px rgba(0,167,224,.14)}
.sfind>svg{width:24px;height:24px;color:var(--cyber-ink);flex:none}
.sfind input{
  flex:1;min-width:0;border:0;background:none;outline:none;
  font-family:var(--font-sans);font-size:1.02rem;color:var(--text);
}
.sfind input::placeholder{color:#9aa4ac}
.sfind input::-webkit-search-cancel-button{display:none}
.sfind button{
  flex:none;display:inline-flex;align-items:center;height:44px;padding:0 20px;
  border:0;border-radius:12px;background:var(--cyber-ink);color:#fff;
  font-family:inherit;font-weight:700;font-size:.95rem;cursor:pointer;
}
.sfind button:hover{background:var(--cyber-deep)}
.sfind-sm{min-height:52px;margin:10px 0 6px}
.sfind-sm>svg{width:20px;height:20px}
.sfind-sm input{font-size:.95rem}
.sfind-sm button{height:38px;padding:0 16px;font-size:.9rem}
@media(max-width:479px){
  .sfind{padding-left:14px;gap:9px;min-height:54px}
  .sfind input{font-size:.95rem}
  .sfind button{padding:0 14px;height:40px;font-size:.9rem}
}

/* ---- Телефон: цели под палец ----------------------------------------
   Строка соседней модели высотой 42px, а нажимался только сам ярлык в 22 —
   промахнуться легче, чем попасть. Невидимый слой растягивает ссылку на всю
   строку, вёрстка не меняется. Пагинация — единственный способ листать
   длинный список моделей, ей тоже нужен полный рост. */
.dv-sibs li{position:relative}
.dv-sibs a::after{content:"";position:absolute;inset:0}
.dv-pager a{display:inline-flex;align-items:center;min-height:44px}


/* ---- Тот же вид внутри витрины ----
   Хаб модели в baza.html рисуется теми же классами, что и страница
   устройства, но живёт под липкой полосой «назад» высотой 54/64 px: без
   сдвига навигация по разделам пряталась бы под ней, а якорь уводил бы
   заголовок под шапку. */
.dvhub .dv-nav{top:54px;z-index:29}
@media(min-width:720px){.dvhub .dv-nav{top:64px}}
.dvhub .sec{scroll-margin-top:112px}
.dvhub .dv-lede{padding-top:10px}
.dvhub .permalink{margin:10px 0 0}
.dvcase .dv-lede{padding:14px 0 2px}
.dvcase .dv-facts{margin-bottom:0}

/* ---- Экраны-списки витрины ----
   Вход по модели, каталог, надёжность, поиск по симптому и подбор для
   сравнения рисуются теми же кусками, что страница устройства: шапка,
   секции с заголовком, карточки-двери. Отличие одно — числа в строке
   фактов подсвечиваем, их там читают. */
.dvlist .dv-lede{padding:14px 0 4px}
.dv-facts .n{color:var(--cyber-deep)}
.dvlist .sec>h2{display:flex;align-items:baseline;gap:10px}
/* Карточка-дверь с фразой под заголовком, а не со счётчиком: моноширинный
   шрифт счётчиков на двух строках прозы читается тяжело. */
.dv-grid-txt span{font-family:var(--font-sans);font-size:.8rem;line-height:1.4;color:var(--ink2)}
