/* Модуль «Генерация»: служба ai-gen рамкой во всю высоту под шапкой, как
   доска. Перенесено из public/styles.css как было (24 сентября 2026);
   подключается только у включённого модуля. Файл встаёт после
   styles.css, поэтому `padding: 0` здесь перебивает `.page--wb` той же
   силы — так было и там, где правило стояло ниже. */

.page--aigen { padding: 0; display: flex; flex-direction: column; height: 100%; }
/* Цвет — фон самой службы: пока рамка грузится, под ней не мелькает тема портала */
.aigen__frame { flex: 1; min-height: 0; width: 100%; border: 0; display: block; background: #151517; }
/* Телефон: снизу место под полосу разделов, как у доски. `padding: 0`
   выше стоит позже телефонного правила `.page--wb` и перебивал его —
   низ рамки с полем запроса уходил под полосу. */
@media (max-width: 760px) {
  .page--aigen { padding-bottom: calc(var(--nav-h, 82px) + env(safe-area-inset-bottom)); }
}

/* Админка: чек-лист «что нужно, чтобы генерация заработала» */
.aigen-chek { display: flex; gap: var(--s-3); align-items: flex-start; padding: var(--s-2) 0; }
.aigen-chek + .aigen-chek { border-top: 1px solid var(--border); }
.aigen-chek__znak { flex: none; width: var(--s-5); height: var(--s-5); border-radius: 50%; display: grid; place-items: center;
  font-weight: 700; background: var(--surface-2, var(--bg)); color: var(--text-dim); }
.aigen-chek.is-ok .aigen-chek__znak { color: var(--ok, var(--accent)); }
.aigen-chek.is-bad .aigen-chek__znak { color: var(--danger); }

/* Юнит тоннеля — текстом, чтобы скопировать */
.aigen-kak summary { cursor: pointer; }
.aigen-kak ol { padding-left: var(--s-5); }
.aigen-yunit { font-family: var(--mono, monospace); font-size: var(--t-xs, var(--t-sm)); background: var(--bg); border: 1px solid var(--border);
  border-radius: var(--radius); padding: var(--s-3); overflow-x: auto; white-space: pre; user-select: all; }

/* Служба не подключена: пояснение посреди экрана вместо рамки */
.aigen__net { margin: auto; max-width: 560px; padding: var(--s-6) var(--s-4); text-align: center; }
.aigen__net p { margin: 0 0 var(--s-3); }
