/*
 * Блоки плагина iconrad-models. Цвета — только токены дизайн-системы из Kit
 * (var(--…)), ни одного литерального цвета: тёмная тема работает без правок.
 * Проверяется тестом AssetsTest.
 */
.irm{font-family:var(--font-mono);color:var(--text-body)}
.irm *,.irm *::before,.irm *::after{box-sizing:border-box}
.irm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.irm-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 18px;margin-bottom:16px;border:1px solid var(--border-control);border-radius:var(--radius-terminal);background:var(--surface-inset)}
.irm-search{display:flex;align-items:center;gap:10px;flex:1 1 240px;min-width:0;margin:0;padding:9px 13px;background:var(--surface-card);border:1px solid var(--border-control);border-radius:var(--radius-terminal);color:var(--text-accent);font-size:var(--text-meta)}
.irm-search input{flex:1;min-width:0;margin:0;padding:0;border:0;outline:0;background:transparent;font:inherit;color:var(--text-strong);box-shadow:none}
.irm-search:focus-within{border-color:var(--border-focus);box-shadow:var(--focus-ring)}
.irm-chips{display:flex;flex-wrap:wrap;gap:8px}
.irm-chip{font-family:var(--font-mono);font-size:var(--text-terminal);letter-spacing:var(--track-terminal);line-height:1.2;padding:7px 14px;border-radius:var(--radius-pill);border:1px solid var(--border-control);background:transparent;color:var(--text-muted);cursor:pointer;transition:var(--transition-control)}
.irm-chip:hover{border-color:var(--text-accent);color:var(--text-accent);background:transparent}
.irm-chip.is-active{background:var(--action-bg);border-color:var(--action-bg);color:var(--action-fg)}
.irm-chip__n{opacity:.6;margin-left:4px}
.irm-sort{display:flex;align-items:center;gap:8px;margin:0;font-size:var(--text-terminal);letter-spacing:var(--track-terminal);color:var(--text-muted)}
.irm-sort select{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-control);border-radius:var(--radius-terminal);padding:7px 10px}

.irm-counter{margin:0 0 12px;font-size:var(--text-caption);color:var(--text-muted)}
.irm-foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:var(--text-caption);color:var(--text-muted)}
.irm-empty{margin:0;padding:26px 18px;font-size:var(--text-meta);color:var(--text-muted);border:1px dashed var(--border-control);border-radius:var(--radius-terminal)}
.irm-empty[hidden]{display:none}

.irm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
/* Карточки внутри чужого текста: отбиты от абзацев, в узкой колонке статьи — один столбец. */
.irm-cards{margin:24px 0}
.irm-cards .irm-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
/* Одна карточка не растягивается на всю колонку статьи: пустой карточки-баннера не нужно. */
.irm-cards .irm-grid:has(.irm-card:only-child){grid-template-columns:minmax(240px,420px)}
.irm-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:18px;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:var(--transition-control)}
.irm-card:hover{border-color:var(--text-accent)}
.irm-card[hidden]{display:none}
.irm-card__top{display:flex;justify-content:space-between;gap:12px;font-size:var(--text-micro);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-muted)}
.irm-card__title{margin:0;font-family:var(--font-mono);font-size:15px;font-weight:700;letter-spacing:var(--track-tight);line-height:1.3;color:var(--text-strong)}
.irm-card__title a{color:inherit;text-decoration:none}
.irm-card__vendor a{color:inherit;text-decoration:none}
.irm-card__vendor a:hover,.irm-facts dd a:hover{color:var(--text-accent)}
.irm-facts dd a{color:inherit;text-decoration:underline;text-decoration-color:var(--phosphor-35);text-underline-offset:3px}
/* Вся карточка кликабельна через заголовок, кнопка чата лежит поверх. */
.irm-card__title a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.irm-card__desc{margin:0;font-size:var(--text-caption);line-height:1.55;color:var(--text-body)}
.irm-card__cta{position:relative;z-index:1;align-self:flex-start;margin-top:auto;padding:8px 0 0;border:0;background:none;font-family:var(--font-mono);font-size:var(--text-terminal);color:var(--text-accent);text-decoration:none;cursor:pointer}
.irm-card__cta:hover{text-decoration:underline}
.irm-card__cta.is-disabled{color:var(--text-disabled);cursor:not-allowed;text-decoration:none}

.irm-facts{margin:0;display:flex;flex-direction:column;gap:7px}
.irm-facts>div{display:flex;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px dotted var(--border-control);font-size:var(--text-meta)}
.irm-facts dt{margin:0;color:var(--text-muted);letter-spacing:var(--track-terminal);font-weight:400}
.irm-facts dd{margin:0;color:var(--text-strong);text-align:right}
.irm-meter{letter-spacing:.1em;color:var(--text-accent)}
.irm-badge{align-self:flex-start;font-size:var(--text-micro);letter-spacing:var(--track-label);text-transform:uppercase;padding:3px 7px;border-radius:var(--radius-terminal);border:1px dashed var(--border-control);color:var(--text-muted)}
.irm-badge--soon{border-color:var(--phosphor-35);color:var(--text-accent)}

.irm-more,.irm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 18px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-terminal);line-height:1.2;text-decoration:none;cursor:pointer;transition:var(--transition-control)}
.irm-more{display:flex;margin:20px auto 0;border:1px solid var(--border-control);background:transparent;color:var(--text-strong)}
.irm-more:hover{border-color:var(--text-accent);color:var(--text-accent);background:transparent}
.irm-more[hidden]{display:none}
.irm-btn{border:0;background:var(--action-bg);color:var(--action-fg)}
.irm-btn:hover{background:var(--action-bg-hover);color:var(--action-fg)}
.irm-btn.is-disabled{background:var(--action-bg-disabled);color:var(--text-disabled);cursor:not-allowed}
.irm-link{display:inline-block;margin-top:16px;font-size:var(--text-terminal);color:var(--text-accent);text-decoration:none}

.irm-table-wrap{overflow-x:auto;border:1px solid var(--border-control);border-radius:var(--radius-terminal);background:var(--surface-inset)}
.irm-table{width:100%;min-width:640px;margin:0;border:0;border-collapse:collapse;font-size:var(--text-meta)}
.irm-table thead th{background:var(--table-head);color:var(--mint);font-size:var(--text-label);letter-spacing:var(--track-terminal);font-weight:400;text-align:left;padding:12px 18px;border:0}
.irm-table td,.irm-table tbody th{padding:14px 18px;border:0;border-bottom:1px dotted var(--border-control);text-align:left;vertical-align:top;font-weight:400;color:var(--text-body);background:transparent}
.irm-table tbody th{position:sticky;left:0;z-index:1;background:var(--surface-inset)}
.irm-table tbody th a{color:var(--text-strong);font-weight:500;text-decoration:none}
.irm-table tbody tr:hover>*{background:var(--surface-card)}
.irm-table tr[hidden]{display:none}
.irm-num{color:var(--text-strong)!important;white-space:nowrap}
.irm-muted{color:var(--text-disabled);font-size:var(--text-micro)}
.irm-status--live,.irm-status--soon{color:var(--text-accent)!important}
.irm-status--down,.irm-status--archived{color:var(--text-muted)!important}

.irm-price__value{font-size:var(--text-title);font-weight:700;letter-spacing:var(--track-title);line-height:1.1;color:var(--text-strong)}
.irm-price__unit{margin-top:6px;font-size:var(--text-caption);color:var(--text-muted)}
.irm-tiers{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}
.irm-tiers li{display:flex;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px dotted var(--border-control);font-size:var(--text-meta)}
.irm-note{margin:10px 0 0;font-size:var(--text-caption);line-height:1.6;color:var(--text-muted)}
.irm-stat{font-variant-numeric:tabular-nums}
.irm code{padding:0;background:none;font-family:var(--font-mono);font-size:var(--text-micro);color:var(--text-muted)}

@media(max-width:767px){
  .irm-toolbar{padding:12px}
  .irm-search,.irm-chip,.irm-sort select,.irm-more,.irm-btn{min-height:44px}
  .irm-card__cta{min-height:44px;display:inline-flex;align-items:center}
}
.irm-lede{max-width:var(--measure-lede);margin:20px 0 0;font-size:var(--text-body-lg);line-height:var(--leading-body-loose);color:var(--text-body)}
.irm-h1{margin:0}
