/* агент-готов.рф — дополнения к дизайн-основе aid2c. Ничего не переопределяет, только добавляет. */

.zn-key {
  margin: 0;
  padding-left: 16px;
  border-left: 3px solid var(--accent);
  font: 500 clamp(17px, 1.5vw, 20px)/1.45 var(--display);
  color: var(--ink-2);
  max-width: 56ch;
}

/* разбор значка по строкам */
.zn-anatomy { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 32px 48px; align-items: start; }
.zn-anatomy-img { border: 1px solid var(--ink); background: var(--paper-2); padding: 20px; position: sticky; top: 100px; }
.zn-lines { margin: 0; border-top: 1px solid var(--ink); }
.zn-lines dt { font: 600 18px/1.3 var(--display); padding-top: 16px; }
.zn-lines dd { margin: 6px 0 16px; color: var(--ink-2); border-bottom: 1px solid var(--rule); padding-bottom: 16px; font-size: 16px; }
.zn-lines dd:last-child { border-bottom: 0; }

/* остальные состояния значка */
.zn-states { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 36px; }
.zn-states figure { margin: 0; border: 1px solid var(--ink); background: var(--paper-2); padding: 20px; }
.zn-states figcaption { margin-top: 12px; font: 400 13px/1.45 var(--mono); color: var(--muted); }

/* код встраивания */
.zn-code { margin: 0 0 4px; overflow-x: auto; border: 1px solid var(--ink); background: var(--ink); color: var(--paper); padding: 18px 20px; }
.zn-code code { font: 400 13px/1.7 var(--mono); white-space: pre; }

/* три шага вместо четырёх */
#proverit .stages { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* подвал: вместо фото — значок в тёмной теме */
.zn-foot-badge { border: 1px solid #55524A; display: grid; place-items: center; padding: 32px; min-height: 220px; }
.zn-foot-badge img { max-width: 100%; height: auto; }

@media (max-width: 1100px) {
  .zn-anatomy { grid-template-columns: minmax(0, 1fr); }
  .zn-anatomy-img { position: static; }
}
@media (max-width: 760px) {
  #proverit .stages { grid-template-columns: minmax(0, 1fr); }
  .zn-states { grid-template-columns: minmax(0, 1fr); }
  .zn-foot-badge { min-height: 0; padding: 20px; }
}
