
  /* PoiskTG — светлая тема каталога (25.10.2026). Классы и id не менять:
     на них держатся скрипт шаблона и разметка, которую генерирует webapp.py. */
  @font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraSans-400-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/FiraSans-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraSans-500-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/FiraSans-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSans-600-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSans-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/FiraSans-700-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/FiraSans-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSansExtraCondensed-600-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/FiraSansExtraCondensed-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/FiraSansExtraCondensed-700-cyrillic.woff2) format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Fira Sans Extra Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/FiraSansExtraCondensed-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
  :root {
    --paper: #f3f5f8; --surface: #ffffff; --surface-2: #eef1f5; --line: #dce1e8;
    --line-strong: #c6cdd8;
    --ink: #121821; --ink-2: #364152; --muted: #586274;
    --blue: #1a56db; --blue-ink: #133f9f; --blue-wash: #e8effd; --blue-line: #b8cdf6;
    --amber: #9a5700; --amber-wash: #fff2dc; --amber-line: #f1cf95;
    --green: #17734a; --green-wash: #e2f3ea; --red: #b42318; --red-wash: #fdeceb;
    --display: "Fira Sans Extra Condensed", "Fira Sans", "Segoe UI", system-ui, sans-serif;
    --sans: "Fira Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
    --mono: ui-monospace, "SFMono-Regular", Consolas, monospace;
    --r: 12px; --r-sm: 8px;
    --shadow-sm: 0 1px 2px rgba(18,24,33,.06);
    --shadow: 0 1px 2px rgba(18,24,33,.05), 0 8px 24px rgba(18,24,33,.06);
    --shadow-pop: 0 12px 40px rgba(18,24,33,.18);
    /* совместимость со старыми именами, которые встречаются в разметке */
    --accent: var(--blue); --accent2: var(--blue); --text: var(--ink); --panel: var(--surface);
    --panel2: var(--surface-2); --on-accent: #fff;
  }
  * { box-sizing: border-box; margin: 0; }
  .is-hidden { display: none !important; }
  html { -webkit-text-size-adjust: 100%; }
  body { background: var(--paper); color: var(--ink); font: 16px/1.55 var(--sans);
    font-variant-numeric: tabular-nums; min-height: 100vh; overflow-x: hidden; }
  a { color: var(--blue); }
  a:hover { color: var(--blue-ink); }
  html { scroll-padding-top: 84px; scroll-padding-bottom: 130px; }
  :focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; }
  #cookiebar :focus-visible { outline-color: #fff; }
  .sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
  .skip { position: absolute; left: -9999px; top: 8px; z-index: 100; background: var(--ink);
    color: #fff; padding: 10px 14px; border-radius: var(--r-sm); }
  .skip:focus { left: 12px; }
  .wrap { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 24px; }

  /* ---------- шапка ---------- */
  .site-head { position: sticky; top: 0; z-index: 40; background: rgba(255,255,255,.94);
    backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid var(--line); }
  .head-in { display: flex; align-items: center; gap: 28px; min-height: 64px; }
  .logo { display: inline-flex; align-items: center; gap: 9px; color: var(--ink);
    text-decoration: none; flex: none; }
  .logo:hover { color: var(--ink); }
  .logo-mark { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px;
    background: var(--blue); color: #fff; }
  .logo-mark svg { width: 19px; height: 19px; }
  .logo-word { font: 700 23px/1 var(--display); letter-spacing: .005em; }
  .logo-word span { color: var(--blue); }
  .nav { display: flex; align-items: center; gap: 4px; flex: 1; }
  .nav a { color: var(--ink-2); text-decoration: none; font-weight: 500; font-size: 15px;
    padding: 8px 12px; border-radius: var(--r-sm); white-space: nowrap; }
  .nav a:hover { background: var(--surface-2); color: var(--ink); }
  .nav a[aria-current="page"] { color: var(--blue); background: var(--blue-wash); }
  .head-actions { display: flex; align-items: center; gap: 8px; flex: none; }
  .icon-link { display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--r-sm);
    color: var(--ink-2); }
  .icon-link:hover { background: var(--surface-2); color: var(--blue); }
  .icon-link svg { width: 21px; height: 21px; }
  .menu-btn { display: none; }
  .nav .nav-tg { display: none; }

  /* ---------- кнопки ---------- */
  button { font: inherit; cursor: pointer; }
  button, .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 44px; padding: 0 20px; border-radius: var(--r-sm); border: 1px solid transparent;
    background: var(--blue); color: #fff; font-weight: 600; font-size: 15px;
    text-decoration: none; white-space: nowrap; transition: background .15s, border-color .15s, color .15s; }
  button:hover { background: var(--blue-ink); }
  button:disabled { background: var(--surface-2); color: var(--muted); cursor: default; }
  .addbtn, .toolbar button, .favbar button, .cb-sec, .catalog-more, .livebtn, #loadmore {
    background: var(--surface); color: var(--ink); border: 1px solid var(--line-strong); }
  .addbtn:hover, .toolbar button:hover, .favbar button:hover, .cb-sec:hover, .catalog-more:hover,
  .livebtn:hover, #loadmore:hover { background: var(--surface); border-color: var(--blue); color: var(--blue); }
  .addbtn { min-height: 40px; padding: 0 14px; font-size: 14px; }
  .addbtn svg, .btn svg { width: 17px; height: 17px; flex: none; }
  .favtop .cnt, .favbar .cnt { min-width: 22px; padding: 0 6px; border-radius: 999px;
    background: var(--surface-2); color: var(--ink-2); font-size: 13px; line-height: 22px; }
  .favtop.on, #favtoggle.on { border-color: var(--amber); color: var(--amber); background: var(--amber-wash); }
  .favtop.on .cnt, #favtoggle.on .cnt { background: #fff; color: var(--amber); }

  /* ---------- заголовок страницы и поиск ---------- */
  main { padding: 34px 0 10px; }
  .toprow { margin-bottom: 18px; }
  h1 { font: 700 40px/1.08 var(--display); letter-spacing: -.005em; color: var(--ink);
    max-width: 920px; overflow-wrap: anywhere; }
  h1 a { color: inherit; text-decoration: none; }
  h1 .tg { color: var(--blue); }
  .sub { color: var(--muted); font-size: 17px; margin: 10px 0 0; max-width: 760px; }
  .sub b, #basecount { color: var(--ink) !important; font-weight: 600; }
  body[data-path="/"] main { padding-top: 54px; }
  body[data-path="/"] h1 { font-size: 52px; max-width: 780px; }
  body[data-path="/"] .sub { font-size: 18px; }
  .searchrow { display: flex; gap: 0; max-width: 860px; margin-top: 22px; background: var(--surface);
    border: 1px solid var(--line-strong); border-radius: var(--r); box-shadow: var(--shadow);
    padding: 6px; transition: border-color .15s, box-shadow .15s; }
  .searchrow:focus-within { border-color: var(--blue); box-shadow: 0 0 0 4px var(--blue-wash), var(--shadow); }
  .searchrow input[type=text] { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent;
    padding: 0 14px 0 44px; font: 400 17px var(--sans); color: var(--ink); min-height: 52px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23586274' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: 14px 50%; background-size: 20px; }
  .searchrow input::placeholder { color: var(--muted); }
  .searchrow button { min-height: 52px; padding: 0 28px; font-size: 16px; }
  /* на внутренних страницах поиск — тонкой строкой, без фильтров */
  body:not([data-path="/"]):not([data-path^="/t/"]):not(.has-results) .searchrow {
    max-width: 640px; margin-top: 0; margin-bottom: 26px; box-shadow: none; padding: 4px; }
  body:not([data-path="/"]):not([data-path^="/t/"]):not(.has-results) .searchrow input { min-height: 40px; font-size: 15px; }
  body:not([data-path="/"]):not([data-path^="/t/"]):not(.has-results) .searchrow button { min-height: 40px; padding: 0 18px; font-size: 15px; }
  body:not([data-path="/"]):not([data-path^="/t/"]):not(.has-results) .toprow { margin-bottom: 14px; }
  input, select, textarea { font: inherit; color: var(--ink); }

  /* фильтры: появляются, когда есть что фильтровать */
  .opts { display: none; flex-wrap: wrap; align-items: center; gap: 10px 16px; max-width: 1240px;
    margin: 16px 0 0; padding: 14px 16px; background: var(--surface); border: 1px solid var(--line);
    border-radius: var(--r); color: var(--ink-2); font-size: 14px; }
  body.has-results .opts { display: flex; }
  .opts > span { display: none; }
  .opts label { display: flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; }
  .opts input[type=number], .opts select { min-height: 38px; width: 78px; padding: 0 10px;
    background: var(--surface); border: 1px solid var(--line-strong); border-radius: var(--r-sm); }
  .opts select { width: auto; min-width: 110px; max-width: 170px; }
  input[type=checkbox] { width: 20px; height: 20px; accent-color: var(--blue); }
  .filtertoggle, .catalogtoggle { display: none; }

  /* ---------- статус, панель медиаплана, таблица ---------- */
  .status { margin: 22px 0 10px; color: var(--ink-2); font-size: 15px; min-height: 22px; max-width: 980px; }
  .status:empty { margin: 0; min-height: 0; }
  .status .err { color: var(--red); }
  .toolbar { display: flex; align-items: center; gap: 10px; margin: 8px 0 12px; flex-wrap: wrap; }
  .toolbar button { min-height: 40px; padding: 0 14px; font-size: 14px; }
  .plan-summary { margin-right: auto; color: var(--muted); font-size: 15px; }
  .plan-summary b { color: var(--ink); }
  .tablebox { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r);
    box-shadow: var(--shadow-sm); overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
  table { width: 100%; border-collapse: collapse; font-size: 15px; }
  th, td { padding: 12px 14px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
  th { background: #f7f8fb; color: var(--muted); font: 600 14px/1.2 var(--display);
    text-transform: uppercase; letter-spacing: .04em; white-space: nowrap; position: sticky; top: 64px; z-index: 2; }
  @media (min-width: 1024px) { #box.tablebox { overflow: visible; } #box th:first-child { border-top-left-radius: var(--r); } #box th:last-child { border-top-right-radius: var(--r); } }
  th[data-k] { cursor: pointer; }
  th[aria-sort="ascending"]::after { content: " ↑"; } th[aria-sort="descending"]::after { content: " ↓"; }
  th[data-k]:hover { color: var(--blue); }
  tbody tr:last-child td { border-bottom: 0; }
  #rows tr { cursor: pointer; transition: background .12s; }
  #rows tr:hover td { background: #eef4ff; }
  td.num { text-align: right; white-space: nowrap; }
  table:has(td.num:nth-child(1)) th:nth-child(1), table:has(td.num:nth-child(2)) th:nth-child(2),
  table:has(td.num:nth-child(3)) th:nth-child(3), table:has(td.num:nth-child(4)) th:nth-child(4),
  table:has(td.num:nth-child(5)) th:nth-child(5), table:has(td.num:nth-child(6)) th:nth-child(6),
  table:has(td.num:nth-child(7)) th:nth-child(7), table:has(td.num:nth-child(8)) th:nth-child(8),
  table:has(td.num:nth-child(9)) th:nth-child(9) { text-align: right; }
  td a { color: var(--ink); text-decoration: none; font-weight: 600; }
  td a:hover { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
  td small, td small a { color: var(--muted); font-weight: 400; }
  td.rownum { text-align: right; color: var(--muted); width: 1%; white-space: nowrap; padding-right: 6px; }
  th.mini, td.mini { text-align: center; width: 1%; white-space: nowrap; }
  #box table { table-layout: fixed; min-width: 960px; }
  #box th:nth-child(1) { width: 46px; } #box th:nth-child(2) { width: 42px; }
  #box th:nth-child(3) { width: 27%; } #box th:nth-child(4) { width: 17%; }
  #box th:nth-child(5) { width: 118px; } #box th:nth-child(6) { width: 104px; }
  #box th:nth-child(7) { width: 96px; } #box th:nth-child(8) { width: 15%; }
  #box th:nth-child(9) { width: 128px; }
  #box .titlecell { overflow-wrap: anywhere; line-height: 1.35; }
  #box .unamecell { overflow-wrap: anywhere; }
  .applink { display: inline-block; max-width: 100%; padding: 3px 10px; vertical-align: middle;
    border-radius: 999px; background: var(--blue-wash); color: var(--blue) !important; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis; font-size: 14px; font-weight: 500 !important; text-decoration: none !important; }
  .applink:hover { background: #dbe6fc; }
  .applink svg { width: 13px; height: 13px; vertical-align: -2px; margin-right: 4px; }
  .growth { display: block; font-size: 13px; font-weight: 600; line-height: 1.3; }
  .growth.up { color: var(--green); } .growth.down { color: var(--red); }
  .growth.flat { color: var(--muted); font-weight: 400; }
  /* ER: число и полоска вовлечённости — одна шкала на весь сайт (0–50%) */
  .er { display: inline-grid; gap: 4px; justify-items: end; min-width: 56px; }
  .er-bar { display: block; width: 56px; height: 6px; border-radius: 6px; background: #dfe4ec; overflow: hidden; }
  .er-bar i { display: block; height: 100%; border-radius: 4px; background: var(--blue); }
  .er.hot .er-bar i { background: var(--amber); }
  .er.hot > span:first-child { color: var(--amber); font-weight: 600; }
  .favstar { cursor: pointer; font-size: 20px; color: #677184; user-select: none; line-height: 1;
    display: inline-grid; place-items: center; width: 34px; height: 34px; min-height: 34px; padding: 0;
    border-radius: 8px; background: none; border: 0; font-weight: 400; }
  .favstar:hover { background: var(--amber-wash); color: var(--amber); }
  .favstar.on { color: #a86200; }
  tr.featured td { background: #fffaf0; }
  .featbadge { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px;
    background: var(--amber-wash); color: var(--amber); font-size: 12px; font-weight: 600; }
  .catmatch { color: var(--ink); font-weight: 600; }
  /* служебные пометки разметки тем посетителю не нужны */
  .catprimary, .topicmeta { display: none; }
  .topicreport { display: inline; min-height: 0; padding: 0; margin-top: 4px; border: 0; background: none;
    color: var(--muted); font-size: 13px; font-weight: 400; text-decoration: underline dotted; }
  .topicreport:hover { background: none; color: var(--amber); }
  @media (hover: hover) { .topicreport { visibility: hidden; } #rows tr:hover .topicreport, .topicreport:focus-visible { visibility: visible; } }
  .emptyfav { padding: 34px 14px !important; text-align: center; color: var(--muted); }
  .livebtn { min-height: 32px; padding: 0 4px; font-size: 14px; font-weight: 500; border: 0 !important; background: none !important;
    color: var(--blue) !important; text-decoration: underline dotted; text-underline-offset: 3px; }
  .live { font-size: 13px; line-height: 1.35; white-space: nowrap; }
  .live b { display: inline-block; padding: 1px 8px; border-radius: 999px; font-weight: 600; }
  .live.act b { background: var(--green-wash); color: var(--green); }
  .live.slow b { background: var(--amber-wash); color: var(--amber); }
  .live.dead b { background: var(--red-wash); color: var(--red); }
  .live small { color: var(--muted); }
  .src { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 13px;
    background: var(--surface-2); color: var(--ink-2); }
  .adbtn, .iconbtn { display: none; }
  #morewrap button { min-width: 220px; }
  .spinner { display: inline-block; width: 15px; height: 15px; border: 2px solid var(--line);
    border-top-color: var(--blue); border-radius: 50%; animation: spin .8s linear infinite;
    vertical-align: -2px; margin-right: 8px; }
  @keyframes spin { to { transform: rotate(360deg); } }
  .loading { padding: 8px 0; }
  .skel { height: 44px; border-radius: 8px; margin: 6px 0;
    background: linear-gradient(90deg, #eef1f5 25%, #f6f8fa 37%, #eef1f5 63%);
    background-size: 400% 100%; animation: shimmer 1.3s ease infinite; }
  @keyframes shimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
  .loadbar { position: fixed; top: 0; left: 0; height: 3px; width: 0; background: var(--blue);
    z-index: 60; transition: width .3s ease; }

  /* ---------- секции контента ---------- */
  .about { margin-top: 28px; padding: 28px 30px; background: var(--surface); border: 1px solid var(--line);
    border-radius: var(--r); color: var(--ink-2); font-size: 16px; }
  .about > p, .about li { max-width: 78ch; }
  .about h2 { color: var(--ink); font: 700 26px/1.15 var(--display); margin: 26px 0 10px; }
  .about h2:first-child { margin-top: 0; }
  .about h3 { color: var(--ink); font-size: 17px; font-weight: 600; margin: 18px 0 6px; }
  .about p, .about li { margin: 8px 0; }
  .about a { font-weight: 500; text-underline-offset: 3px; }
  .about ol, .about ul { padding-left: 22px; }
  .about .sub { font-size: 16px; margin: 0 0 12px; }
  .about .tablebox { box-shadow: none; margin-top: 14px; }
  .crumb { margin: 0 0 12px; color: var(--muted); font-size: 14px; }
  .crumb a { color: var(--muted); text-decoration: none; }
  .crumb a:hover { color: var(--blue); text-decoration: underline; }
  .eyebrow { display: inline-block; margin-bottom: 8px; color: var(--blue);
    font: 600 14px/1.2 var(--display); letter-spacing: .06em; text-transform: uppercase; }
  .pager { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 18px 0 4px; font-size: 15px; }
  .pager a, .pager b { min-width: 40px; min-height: 40px; display: inline-grid; place-items: center;
    padding: 0 12px; border: 1px solid var(--line); border-radius: var(--r-sm); text-decoration: none;
    background: var(--surface); }
  .pager a:hover { border-color: var(--blue); }
  .pager b { background: var(--ink); border-color: var(--ink); color: #fff; }
  .catlinks { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; max-width: 860px; }
  .catlinks a { padding: 7px 14px; border-radius: 999px; background: var(--surface); border: 1px solid var(--line);
    color: var(--ink-2); font-size: 14px; text-decoration: none; transition: border-color .15s, color .15s; }
  .catlinks a:hover { border-color: var(--blue); color: var(--blue); }

  /* каталог тем */
  .catalog-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px 26px; margin-top: 16px; }
  .catalog-item { display: flex; align-items: baseline; min-width: 0; padding: 9px 10px; margin: 0 -10px;
    border-radius: var(--r-sm); color: var(--ink); text-decoration: none; transition: background .12s; }
  .catalog-item:hover { background: var(--blue-wash); color: var(--blue); }
  .catalog-name { min-width: 0; font-size: 16px; }
  .catalog-dots { flex: 1 1 16px; min-width: 12px; margin: 0 10px 4px; border-bottom: 1px dotted var(--line-strong); }
  .catalog-count { flex: none; color: var(--muted); font-size: 14px; font-weight: 500; }
  .catalog-item:hover .catalog-count { color: var(--blue); }
  .catalog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; margin-top: 14px; }
  .catalog-card { display: grid; grid-template-columns: 1fr auto; gap: 2px 8px; align-items: baseline;
    padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface);
    color: var(--ink); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
  .catalog-card:hover { border-color: var(--blue); box-shadow: var(--shadow); color: var(--blue); }
  .catalog-card b { color: var(--muted); font-weight: 500; }
  .catalog-card small { grid-column: 1 / -1; color: var(--muted); font-size: 14px; }
  body[data-path="/"] .catalog-section:not(.expanded) .catalog-item:nth-child(n+17) { display: none; }
  .catalog-more { display: none; margin: 14px 0 0; min-height: 40px; font-size: 14px; }
  body[data-path="/"] .catalog-more { display: inline-flex; }
  /* на главной после поиска каталог уступает место результатам */
  body[data-path="/"].has-results:not(.catalog-open) .catalog-section,
  body[data-path="/"].has-results .catlinks { display: none; }
  /* после поиска — данные выше: заголовок компактнее, подзаголовок и каталог убираем */
  body[data-path="/"].has-results main { padding-top: 22px; }
  body[data-path="/"].has-results h1 { font-size: 30px; }
  body[data-path="/"].has-results .toprow .sub { display: none; }
  body[data-path="/"].has-results .searchrow { margin-top: 12px; }
  body[data-path^="/t/"].has-results .seo-preview { display: none; }

  /* ---------- карточка канала ---------- */
  .channel-profile h2 { font-size: 30px; }
  /* название уже стоит в заголовке страницы — второй раз не повторяем */
  body[data-path^="/c/"] .channel-profile > h2:first-child { display: none; }
  .channel-profile p { overflow-wrap: anywhere; }
  .handle { color: var(--muted); font: 500 .62em var(--sans); vertical-align: .15em; margin-left: 6px; }
  .ch-badges { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 14px; }
  .badge { font-size: 13px; padding: 3px 11px; border-radius: 999px; font-weight: 600; white-space: nowrap; }
  .b-ok { background: var(--green-wash); color: var(--green); }
  .b-hot { background: var(--amber-wash); color: var(--amber); }
  .b-reach { background: var(--blue-wash); color: var(--blue); }
  .b-warn { background: var(--red-wash); color: var(--red); }
  .b-mute { background: var(--surface-2); color: var(--ink-2); }
  .profile-stats { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 0;
    margin: 22px 0; border-top: 1px solid var(--line); }
  .profile-stats div { padding: 14px 16px 14px 0; border-bottom: 1px solid var(--line); }
  .profile-stats dt { color: var(--muted); font-size: 14px; }
  .profile-stats dd { margin: 2px 0 0; color: var(--ink); font: 700 26px/1.15 var(--display); }
  .ch-actions, .offer-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 6px; }
  .profile-open, .offer-btn.primary, .lead-submit, .cb-pri { display: inline-flex; align-items: center; min-height: 44px;
    padding: 0 18px; border-radius: var(--r-sm); background: var(--blue); color: #fff !important; border: 0;
    font-weight: 600 !important; text-decoration: none !important; }
  .profile-open:hover, .offer-btn.primary:hover, .lead-submit:hover, .cb-pri:hover { background: var(--blue-ink); }
  .ch-share, .report-link, .claim-link, .promote-link, .offer-btn { display: inline-flex; align-items: center;
    min-height: 44px; padding: 0 16px; border-radius: var(--r-sm); border: 1px solid var(--line-strong);
    background: var(--surface); color: var(--ink) !important; font-size: 15px; font-weight: 500 !important;
    text-decoration: none !important; }
  .ch-share:hover, .report-link:hover, .claim-link:hover, .offer-btn:hover { border-color: var(--blue); color: var(--blue) !important; }
  .offer-btn.primary:hover { color: #fff !important; }
  .promote-link { border-color: var(--amber-line); background: var(--amber-wash); color: var(--amber) !important; }
  .promote-link:hover { border-color: var(--amber); }
  /* блок «подборка каналов для рекламы» на карточке канала */
  .ad-pick { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: 20px 32px;
    align-items: center; margin-top: 20px; padding: 24px 28px; background: var(--blue-wash);
    border: 1px solid var(--blue-line); border-left: 4px solid var(--blue); border-radius: var(--r); }
  .ad-pick h2 { margin: 0; color: var(--ink); font: 700 24px/1.2 var(--display); }
  .ad-pick p { margin: 8px 0 0; color: var(--ink-2); max-width: 62ch; }
  .ad-pick-facts { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 12px 0 0; padding: 0;
    list-style: none; color: var(--ink-2); font-size: 15px; }
  .ad-pick-facts li::before { content: "\2713"; margin-right: 7px; color: var(--green); font-weight: 700; }
  .ad-pick-form { display: grid; gap: 8px; }
  .ad-pick-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px;
    padding: 0 20px; border: 0; border-radius: var(--r-sm); background: var(--blue); color: #fff !important;
    font: 600 16px/1.2 var(--sans); text-align: center; text-decoration: none !important; cursor: pointer; }
  .ad-pick-btn:hover { background: var(--blue-ink); }
  .ad-pick .ad-pick-note, .ad-pick .ad-pick-legal, .ad-pick .ad-pick-status { margin: 0; color: var(--muted);
    font-size: 14px; line-height: 1.45; }
  .ad-pick .ad-pick-status { color: var(--ink-2); }
  .ad-pick .ad-pick-status.err { color: var(--red); font-weight: 500; }
  .ad-pick .ad-pick-status:empty { display: none; }
  @media (max-width: 720px) {
    .ad-pick { grid-template-columns: 1fr; padding: 20px 18px 18px; }
    .ad-pick h2 { font-size: 21px; }
  }
  .offer-link { font-weight: 500; }
  .compare-grid, .history-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
  .history-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compare-grid > div, .history-summary div { padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--r-sm); background: #fafbfd; }
  .compare-grid span, .compare-grid small, .history-summary span, .history-summary small { display: block; color: var(--muted); font-size: 14px; }
  .compare-grid b { display: block; margin: 4px 0; color: var(--ink); font: 700 20px/1.2 var(--display); }
  .history-summary b { display: block; margin: 2px 0; font: 700 24px/1.15 var(--display); }
  .compare-note { color: var(--muted) !important; font-size: 14px !important; margin-top: 12px !important; }
  .growth-pos { color: var(--green); } .growth-neg { color: var(--red); } .growth-flat { color: var(--ink); }
  .channel-history svg { width: 100%; height: 110px; display: block; padding: 10px 0; border-radius: var(--r-sm);
    background: #fafbfd; border: 1px solid var(--line); }
  .channel-history polyline { fill: none; stroke: var(--blue); stroke-width: 3; stroke-linecap: round;
    stroke-linejoin: round; vector-effect: non-scaling-stroke; }
  .history-axis { display: flex; justify-content: space-between; margin-top: 6px; color: var(--muted); font-size: 13px; }
  .similar-table table { font-size: 15px; }
  .similar-table td:first-child { overflow-wrap: anywhere; }
  .similar-table small { color: var(--muted); }
  .claim-for { margin: 0 0 6px; color: var(--ink); font-size: 18px; }
  .rating-updated { color: var(--muted); font-size: 14px; }
  .rating-table { margin: 12px 0 24px; }
  .rating-table small { color: var(--muted); }
  .rating-table td:nth-child(2) { max-width: 360px; }
  .rating-table td:nth-child(2) a { overflow-wrap: anywhere; }
  .rating-table td:nth-child(2) small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  /* места: первые три выделены цветом, цифра остаётся — цвет не единственный признак */
  .rating-table td.rownum { width: 64px; padding-right: 0; text-align: center; }
  .place { display: inline-grid; place-items: center; min-width: 30px; height: 30px; border-radius: 50%;
    font: 600 17px/1 var(--display); color: var(--muted); }
  .place.pos-1 { background: #fde6b0; color: #6b3d00; }
  .place.pos-2 { background: #e1e6ee; color: #2b3442; }
  .place.pos-3 { background: #f5d9c2; color: #6a3412; }
  .rating-nav { margin: 16px 0 6px; }
  /* шапка, прилипшая внутри блока с прокруткой, закрывала первую строку */
  .about .tablebox th { position: static; }
  .rating-table td.metric .mv { display: grid; justify-items: end; line-height: 1.3; }
  .rating-table td.metric small { display: block; color: var(--muted); font-size: 13px; }
  .rating-table td.metric .growth { font-size: 16px; }
  .rating-table td.metric .growth.up + .growth-pct { color: var(--green); }
  .rating-table td.metric .growth.down + .growth-pct { color: var(--red); }
  .rating-table td.metric .score { color: var(--ink); font: 700 22px/1.1 var(--display); }
  .rating-table td.status { padding-left: 28px; }
  .rating-table td.status small { color: var(--ink-2); }
  /* ER в карточке канала — главная метрика: крупно, с полоской, на подложке */
  .profile-stats .stat-er { padding-left: 16px; margin-right: 12px; background: var(--blue-wash);
    border-bottom-color: var(--blue-line); }
  .profile-stats .stat-er:has(.er.hot) { background: var(--amber-wash); border-bottom-color: var(--amber-line); }
  .profile-stats .stat-er dt { color: var(--ink-2); font-weight: 500; }
  .profile-stats .er { justify-items: start; gap: 8px; min-width: 0; }
  .profile-stats .er > span:first-child { font-weight: 700; }
  .profile-stats .er-bar { width: 120px; max-width: 100%; height: 8px; background: rgba(18,24,33,.14); }

  /* ---------- предложения, цены, формы ---------- */
  .offer-hero { max-width: none; }
  /* страницы-предложения: без «карточки в карточке» */
  .about.offer-hero { background: transparent; border: 0; padding: 0; }
  .offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 20px 0; }
  .offer-card, .price-card { position: relative; background: #fafbfd; border: 1px solid var(--line);
    border-radius: var(--r); padding: 22px; }
  .offer-card h3, .price-card h3 { color: var(--ink); font: 700 22px/1.2 var(--display); margin: 0 0 8px; }
  .offer-card ul { margin: 12px 0 18px; padding-left: 20px; }
  .price-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 20px 0; }
  .price-card b { display: block; color: var(--ink); font: 700 30px/1.1 var(--display); }
  .price-card small { color: var(--muted); }
  .price-card p { margin-top: 10px; }
  .featured-price { border-color: var(--blue); background: var(--surface); box-shadow: 0 0 0 1px var(--blue); }
  .featured-price > span { position: absolute; top: -11px; right: 12px; padding: 2px 9px; border-radius: 999px;
    background: var(--blue); color: #fff; font-size: 12px; font-weight: 600; }
  .offer-note { margin-top: 18px !important; padding: 12px 14px; border-radius: var(--r-sm);
    background: var(--surface-2); color: var(--ink-2); font-size: 14px; }
  .claim-code { max-width: 440px; margin: 18px 0; padding: 16px 18px; border-radius: var(--r-sm);
    border: 1px dashed var(--blue); background: var(--blue-wash); }
  .claim-code span { display: block; color: var(--ink-2); font-size: 14px; }
  .claim-code b { display: block; margin-top: 4px; color: var(--blue-ink); font: 700 21px/1.4 var(--mono);
    letter-spacing: .04em; user-select: all; }
  .lead-form { max-width: 760px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 22px 0;
    padding: 22px; border: 1px solid var(--line); border-radius: var(--r); background: #fafbfd; }
  .lead-form label { display: grid; gap: 6px; color: var(--ink); font-size: 15px; font-weight: 500; }
  .lead-form .lead-wide { grid-column: 1 / -1; }
  .lead-form input, .lead-form select, .lead-form textarea { width: 100%; min-width: 0; min-height: 46px;
    padding: 10px 12px; border: 1px solid #868fa0; border-radius: var(--r-sm);
    background: var(--surface); font-weight: 400; }
  .lead-form textarea { min-height: 100px; resize: vertical; }
  .lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus {
    outline: 0; border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-wash); }
  .lead-consent { display: flex !important; align-items: start; gap: 10px !important; font-weight: 400 !important;
    font-size: 14px !important; color: var(--ink-2) !important; line-height: 1.45; }
  .lead-consent input { width: 18px !important; min-height: 18px !important; margin-top: 2px; accent-color: var(--blue); }
  .lead-hint { grid-column: 1 / -1; margin: -6px 0 4px; font-size: 14px; color: var(--muted); line-height: 1.45; }
  .lead-submit { justify-self: start; cursor: pointer; }
  .lead-hp { position: absolute !important; left: -10000px !important; width: 1px !important;
    height: 1px !important; overflow: hidden !important; }
  .legal h2 { font-size: 22px; margin: 22px 0 8px; }
  .legal p, .legal li { color: var(--ink-2); font-size: 16px; line-height: 1.65; }
  .legal ul { margin: 6px 0 6px 20px; }
  .legal-upd { color: var(--muted); font-size: 14px; margin-top: 18px; }

  /* ---------- всплывающая карточка канала ---------- */
  #hovercard { position: fixed; z-index: 50; width: 340px; max-width: 92vw; display: none;
    background: var(--surface); border: 1px solid var(--line); border-radius: var(--r);
    box-shadow: var(--shadow-pop); padding: 16px; }
  #hovercard .hc-top { display: flex; gap: 12px; align-items: center; }
  #hovercard img { width: 56px; height: 56px; border-radius: 50%; flex: none; object-fit: cover; background: var(--surface-2); }
  #hovercard .hc-name { font-weight: 600; color: var(--ink); font-size: 16px; line-height: 1.3; }
  #hovercard .hc-sub { color: var(--muted); font-size: 14px; margin-top: 2px; }
  #hovercard .hc-desc { color: var(--ink-2); font-size: 14px; margin-top: 12px; line-height: 1.5; overflow: hidden;
    display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; }
  #hovercard .hc-empty { color: var(--muted); font-size: 14px; margin-top: 10px; }
  .hc-actions { display: flex; gap: 8px; margin-top: 14px; }
  .hc-btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; min-height: 40px;
    padding: 0 8px; border-radius: var(--r-sm); font-size: 14px; font-weight: 600; text-decoration: none !important; white-space: nowrap; }
  .hc-btn.app { background: var(--blue); color: #fff !important; }
  .hc-btn.app:hover { background: var(--blue-ink); }
  .hc-btn.web, .hc-btn.ad { background: var(--surface); border: 1px solid var(--line-strong); color: var(--ink) !important; }
  .hc-btn.web:hover, .hc-btn.ad:hover { border-color: var(--blue); color: var(--blue) !important; }
  .hc-btn.ad { flex: 0 0 auto; }
  #hovercard .hc-close { position: absolute; top: 8px; right: 10px; display: none; width: 36px; height: 36px; min-height: 36px;
    padding: 0; place-items: center; cursor: pointer; color: var(--muted); font-size: 22px; line-height: 1;
    background: none; border: 0; font-weight: 400; }

  /* ---------- окна ---------- */
  .modal-bg { position: fixed; inset: 0; background: rgba(18,24,33,.5); z-index: 70; display: none;
    align-items: center; justify-content: center; padding: 20px; }
  .modal-bg.on { display: flex; }
  .modal { background: var(--surface); border-radius: 16px; padding: 26px; width: 460px; max-width: 100%;
    box-shadow: var(--shadow-pop); }
  .modal h3 { font: 700 26px/1.15 var(--display); margin-bottom: 8px; }
  .modal p { color: var(--ink-2); font-size: 15px; margin-bottom: 16px; }
  .modal .row { display: flex; gap: 8px; }
  .modal input { flex: 1; min-width: 0; min-height: 46px; padding: 0 12px; border: 1px solid var(--line-strong);
    border-radius: var(--r-sm); background: var(--surface); outline: 0; }
  .modal input:focus { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-wash); }
  .modal .msg { margin-top: 12px; font-size: 15px; }
  .modal .msg.ok { color: var(--green); } .modal .msg.err { color: var(--red); }
  .modal .close { float: right; display: grid; place-items: center; width: 36px; height: 36px; min-height: 36px; padding: 0;
    margin: -8px -8px 0 0; background: none; border: 0; font-weight: 400;
    border-radius: 8px; cursor: pointer; color: var(--muted); font-size: 22px; line-height: 1; }
  .modal .close:hover { background: var(--surface-2); color: var(--ink); }
  .modal .row button { flex: none; }
  #cookiebar { position: fixed; left: 16px; bottom: 16px; z-index: 60; display: flex; align-items: center;
    gap: 14px; max-width: 460px; padding: 14px 16px; background: var(--ink); color: #e9edf3;
    border-radius: var(--r); box-shadow: var(--shadow-pop); }
  #cookiebar .cb-text { flex: 1; font-size: 13.5px; line-height: 1.45; color: #d5dbe5; }
  #cookiebar .cb-text a { color: #fff; }
  #cookiebar .cb-btns { display: flex; gap: 8px; }
  #cookiebar .cb-pri { min-height: 38px; padding: 0 16px; background: #fff; color: var(--ink) !important; }
  #cookiebar .cb-pri:hover { background: var(--blue-wash); }
  #agegate { position: fixed; inset: 0; z-index: 70; display: flex; align-items: center; justify-content: center;
    background: rgba(18,24,33,.86); padding: 20px; }
  #agegate .ag-box { background: var(--surface); border-radius: 16px; padding: 28px; max-width: 400px; text-align: center; }
  #agegate .ag-title { font: 700 28px/1.1 var(--display); color: var(--ink); margin-bottom: 8px; }
  #agegate p { color: var(--ink-2); font-size: 15px; margin: 10px 0 20px; }
  #agegate .ag-btns { display: flex; gap: 10px; justify-content: center; }
  .cb-sec { min-height: 44px; padding: 0 16px; border-radius: var(--r-sm); }

  /* ---------- подвал ---------- */
  footer { margin-top: 56px; padding: 28px 0 36px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14px; line-height: 2; }
  footer a { color: var(--ink-2); text-decoration: underline; text-decoration-color: var(--line-strong); text-underline-offset: 3px; }
  footer a:hover { color: var(--blue); text-decoration: underline; }
  .foot-brand { display: block; margin-bottom: 6px; color: var(--ink); font: 700 20px/1.2 var(--display); }

  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important;
      transition-duration: .01ms !important; scroll-behavior: auto !important; }
  }

  /* ---------- планшет ---------- */
  @media (max-width: 1100px) {
    .nav a { padding: 8px 9px; font-size: 14px; }
    .catalog-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (max-width: 920px) {
    .head-in { gap: 12px; }
    .menu-btn { display: inline-flex; min-height: 40px; width: 40px; padding: 0; background: var(--surface);
      color: var(--ink); border: 1px solid var(--line-strong); }
    .menu-btn:hover { background: var(--surface-2); }
    .menu-btn svg { width: 20px; height: 20px; }
    .nav { display: none; position: absolute; left: 0; right: 0; top: 100%; flex-direction: column; align-items: stretch;
      gap: 0; padding: 8px 16px 14px; background: var(--surface); border-bottom: 1px solid var(--line);
      box-shadow: 0 14px 30px rgba(18,24,33,.08); }
    .site-head.menu-open .nav { display: flex; }
    .nav a { padding: 12px 10px; font-size: 16px; }
    .nav .nav-tg { display: block; }
    .head-actions { margin-left: auto; }
  }

  /* ---------- телефон ---------- */
  @media (max-width: 640px) {
    .wrap { padding: 0 16px; }
    .head-in { min-height: 56px; }
    .logo-word { font-size: 21px; }
    .icon-link { display: none; }
    #addbtn .lbl, .favtop .lbl { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    #addbtn { width: 40px; padding: 0; }
    .favtop { padding: 0 10px; gap: 6px; }
    main, body[data-path="/"] main { padding-top: 22px; }
    h1 { font-size: 30px; }
    body[data-path="/"] h1 { font-size: 36px; }
    .sub, body[data-path="/"] .sub { font-size: 16px; }
    body:not([data-path="/"]):not(.has-results) .searchrow { position: static !important; }
    .favstar { width: 44px; height: 44px; }
    .searchrow { position: sticky; top: 57px; z-index: 20; padding: 4px; margin-top: 16px; }
    .searchrow input[type=text] { min-height: 46px; font-size: 16px; padding-left: 40px; background-position: 12px 50%; }
    .searchrow button { min-height: 46px; padding: 0 16px; }
    body.has-results .opts { display: none; }
    body.has-results .filtertoggle { display: flex; width: 100%; justify-content: space-between; margin-top: 10px;
      background: var(--surface); color: var(--ink); border: 1px solid var(--line-strong); min-height: 44px; font-size: 15px; }
    .filtertoggle::after { content: "▾"; }
    body.has-results .opts.open { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .opts > span { display: none; }
    .opts label { display: grid; gap: 4px; }
    .opts label:has(input[type=checkbox]) { display: flex; }
    .opts input[type=number], .opts select { width: 100%; }
    .catlinks { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
    .catlinks::-webkit-scrollbar { display: none; }
    .catlinks a { flex: none; }
    .catalog-list { grid-template-columns: 1fr; }
    .about { padding: 20px 18px; margin-top: 20px; }
    .about h2 { font-size: 23px; }
    .channel-profile h2 { font-size: 25px; }
    .profile-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .profile-stats dd { font-size: 22px; }
    .offer-grid, .price-grid, .compare-grid, .history-summary { grid-template-columns: 1fr; }
    .lead-form { grid-template-columns: 1fr; padding: 16px; }
    .lead-form .lead-wide { grid-column: auto; }
    .toolbar .plan-summary { width: 100%; }
    /* результаты на телефоне — карточки вместо широкой таблицы */
    #box.tablebox { background: transparent; border: 0; box-shadow: none; overflow: visible; }
    #box table { display: block; min-width: 0; }
    #box thead { display: none; }
    #box tbody { display: grid; gap: 10px; }
    #rows tr { display: grid; grid-template-columns: 34px repeat(3, minmax(0, 1fr)); gap: 6px 10px; padding: 14px;
      border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
    #rows tr:hover td { background: transparent; }
    #rows td { display: block; min-width: 0; padding: 0; border: 0; text-align: left; white-space: normal; }
    #rows td:nth-child(1) { display: none; }
    #rows td:nth-child(2) { grid-column: 1; grid-row: 1 / span 2; width: auto; }
    #rows td:nth-child(3) { grid-column: 2 / 5; grid-row: 1; font-size: 16px; }
    #rows td:nth-child(4) { grid-column: 2 / 5; grid-row: 2; }
    #rows td:nth-child(5) { grid-column: 2; grid-row: 3; }
    #rows td:nth-child(6) { grid-column: 3; grid-row: 3; }
    #rows td:nth-child(7) { grid-column: 4; grid-row: 3; }
    #rows td:nth-child(5)::before, #rows td:nth-child(6)::before, #rows td:nth-child(7)::before {
      display: block; color: var(--muted); font-size: 12px; font-weight: 400; }
    #rows td:nth-child(5)::before { content: "подписчики"; }
    #rows td:nth-child(6)::before { content: "охват поста"; }
    #rows td:nth-child(7)::before { content: "ER"; }
    #rows td:nth-child(7) .er { justify-items: start; }
    #rows td:nth-child(8) { grid-column: 2 / 5; grid-row: 4; color: var(--muted); font-size: 14px; }
    #rows td:nth-child(9) { grid-column: 2 / 5; grid-row: 5; }
    #rows .emptyfav { grid-column: 1 / 5; }
    .rating-table table, .rating-table tbody, .rating-table tr, .rating-table td { display: block; width: auto; }
    .rating-table thead { display: none; }
    .rating-table tr { position: relative; padding: 12px 14px 12px 44px; border-bottom: 1px solid var(--line); }
    .rating-table td { padding: 3px 0; border: 0; max-width: none; text-align: left; white-space: normal; }
    .rating-table td.rownum { position: absolute; left: 12px; top: 12px; width: auto; font-weight: 600; }
    .rating-table td:nth-child(2) small { white-space: normal; }
    .rating-table td.num { display: flex; justify-content: space-between; gap: 14px; }
    .rating-table td.num::before { content: attr(data-label); color: var(--muted); font-weight: 400; }
    .rating-table td.rownum { text-align: left; }
    .rating-table td.metric .mv, .rating-table td .er { justify-items: end; }
    .rating-table td.status::before { content: "Активность"; color: var(--muted); margin-right: 14px; }
    .rating-table td.status { display: flex; justify-content: space-between; gap: 14px; padding-left: 0; }
    .rating-table td.status small { font-size: inherit; }
    .similar-table th, .similar-table td { padding: 10px 8px; }
    .profile-stats .stat-er { margin-right: 0; }
    #hovercard { left: 0 !important; right: 0; bottom: 0; top: auto !important; width: 100%; max-width: 100%;
      border-radius: 18px 18px 0 0; padding: 20px 16px 24px; }
    #hovercard .hc-close { display: grid; top: 10px; right: 12px; }
    .hc-btn { min-height: 46px; font-size: 15px; }
    #cookiebar { left: 10px; right: 10px; bottom: 10px; max-width: none; }
    footer { margin-top: 36px; }
  }
