/* ============================================================
   AVE MEETINGS — стили вкладки «Встречи» (список ссылок-комнат + история).
   Прототип не даёт готового экрана под ЭТУ форму данных: его «Meetings»-скрин
   (HANDOFF.md) рассчитан на кластеры аватаров команды — не подходит гостевым
   ссылкам без аккаунтов (см. разбор в VERSION.txt, запись 2026-07-04). Поэтому
   вёрстка — по общему языку AVE (токены/моно/dot-иконки/радиусы), не копия
   конкретного экрана прототипа.

   Каркас/грид — тот же приём, что #dm-pane (см. ave-dm.css), но БЕЗ его
   известного отступления от решения №11 (сплошной фон) — эта панель сразу
   прозрачна, контент «прямо на поле» по образцу #tasks-pane/.bds-overlay
   (см. ave-shell.css:337; там центр 1100px, здесь уже — список одноколоночный).
   ============================================================ */

/* ---------- каркас / грид ---------- */
.ave-root #meet-pane { display: none; }
body.ave-root.meet-active #meet-pane {
  display: flex; flex-direction: column; grid-column: 2 / -1; grid-row: 2;
  min-width: 0; min-height: 0; overflow-y: auto;
  background: transparent; color: var(--ink-dim);
}
/* профилактика (та же дыра, что чинил в ЛС): юзербар «в эфире» — fixed поверх всего, снизу.
   Здесь нет поля ввода, которое он мог бы перекрыть, но нижний пункт списка истории может
   уехать под него — запасной отступ снизу списка, дёшево, раз уже трогаю эту тему. */
body.ave-root.meet-active.ave-ub-on #meet-pane { padding-bottom: 72px; } /* тот же пересчёт, см. ave-office.css */
body.meet-active #main, body.meet-active aside.members { display: none !important; }
@media (max-width: 760px) {
  body.ave-root.meet-active #meet-pane { grid-column: 1 / -1; }
}

/* [фикс скрина владельца] #meet-pane — flex-контейнер (не грид), поэтому justify-self здесь
   ничего не делает (это грид-свойство) — контент молча падал к левому краю. Правильное
   свойство для центрирования по кросс-оси flex-колонки — align-self. */
.ave-root .meetp-stage { align-self: center; width: min(880px, calc(100% - 48px)); margin: 18px 0 28px; }

/* ---------- шапка вкладки ---------- */
.ave-root .meetp-head { display: flex; align-items: center; gap: 12px; padding: 4px 0 20px; }
.ave-root .meetp-headic { flex: none; }
.ave-root .meetp-headtxt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ave-root .meetp-title { font: var(--fw-bold) 17px var(--font-mono); color: var(--ink); }
.ave-root .meetp-sub { font: 12px var(--font-mono); color: var(--muted); }
.ave-root .meetp-sp { flex: 1; }
.ave-root .meetp-newbtn { flex: none; font: var(--fw-semibold) 13px var(--font-mono) !important; padding: 9px 16px; }
.ave-root .meetp-closebtn {
  flex: none; width: 34px; height: 34px; border-radius: 10px; padding: 0;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
  background: transparent; border: 1px solid var(--line-2); color: var(--muted); font-size: 13px;
}
.ave-root .meetp-closebtn:hover { background: var(--panel-2); color: var(--ink); }

/* ---------- секции: активные / история ---------- */
.ave-root .meetp-section { margin-bottom: 24px; }
.ave-root .meetp-sectitle {
  font: var(--fw-semibold) var(--fs-label) var(--font-mono); letter-spacing: var(--ls-label);
  text-transform: uppercase; color: var(--muted-2); margin-bottom: 10px;
}
.ave-root .meetp-histtoggle {
  display: flex; align-items: center; gap: 6px; width: 100%; text-align: left;
  background: transparent; border: none; padding: 0; cursor: pointer;
}
.ave-root .meetp-histtoggle:hover { color: var(--muted); }
.ave-root .meetp-histchev { font-size: 9px; color: var(--muted-2); }
.ave-root .meetp-sectcount { color: var(--muted-2); font-weight: var(--fw-regular); text-transform: none; letter-spacing: 0; }
.ave-root .meetp-list.meetp-collapsed { display: none; }
.ave-root .meetp-list { display: flex; flex-direction: column; gap: 8px; }
.ave-root .meetp-empty {
  padding: 20px; border: 1px dashed var(--line-2); border-radius: 14px;
  color: var(--muted-2); font: 12.5px var(--font-mono); text-align: center; line-height: 1.5;
}

/* ---------- строка встречи ---------- */
.ave-root .meetp-row {
  display: flex; align-items: center; gap: 13px; padding: 13px 14px;
  background: color-mix(in srgb, var(--panel) 30%, var(--bg)); border: 1px solid var(--line); border-radius: 14px;
}
.ave-root .meetp-row-dim { opacity: .6; }
.ave-root .meetp-row-ic { flex: none; }
.ave-root .meetp-row-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.ave-root .meetp-row-title { font: var(--fw-semibold) 14px var(--font-mono); color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ave-root .meetp-row-meta { font: 12px var(--font-mono); color: var(--muted); }
.ave-root .meetp-row-acts { flex: none; display: flex; gap: 7px; }
.ave-root .meetp-btn {
  font: var(--fw-medium) 12px var(--font-mono); padding: 7px 11px; border-radius: 9px;
  background: var(--field); border: 1px solid var(--line-2); color: var(--ink-dim); cursor: pointer;
  white-space: nowrap;
}
.ave-root .meetp-btn:hover { background: var(--panel-2); color: var(--ink); }
.ave-root .meetp-btn-danger { color: var(--danger); border-color: color-mix(in srgb, var(--danger) 36%, transparent); }
.ave-root .meetp-btn-danger:hover { background: color-mix(in srgb, var(--danger) 12%, transparent); }

@media (max-width: 760px) {
  .ave-root .meetp-row { flex-wrap: wrap; }
  .ave-root .meetp-row-acts { width: 100%; justify-content: flex-start; }
  .ave-root .meetp-head { flex-wrap: wrap; }
  .ave-root .meetp-sp { flex-basis: 100%; height: 0; }
}
