/* v2-68i.css — волна 68, срез I («Команда v1»): экран «Команда», шторка приглашения, «Ещё» менеджера, заглушка
   «Доступ приостановлен». Макеты: docs/design-68/team-1-list, team-2-invite, team-3-manager. Только токены tokens.css. */

/* ── Экран «Команда»: карточка «Мест N из M» ── */
.team { display: flex; flex-direction: column; gap: var(--space-4); padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
.team-seats { padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface); display: flex; flex-direction: column; gap: 10px; }
.team-seats__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.team-seats__title { font-size: 20px; line-height: 26px; font-weight: var(--weight-semibold); color: var(--text); }
.team-seats__plan { font-size: 14px; color: var(--text-muted); text-align: right; }
.team-seats__bar { display: flex; gap: 6px; }
.team-seats__bar span { flex: 1 1 0; height: 8px; border-radius: 4px; background: var(--surface-sunken); }
.team-seats__bar span.is-on { background: var(--text); }
.team-seats__note { margin: 0; font-size: 14px; line-height: 20px; color: var(--text-muted); }
.team-seats__buy { align-self: flex-start; min-height: 40px; padding: 0 4px; font-weight: var(--weight-semibold); }

/* ── Строки участников/приглашений ── */
.team-box { padding: 0; }
.team-row { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-top: 1px solid var(--border); }
.team-row:first-child { border-top: 0; }
.team-row__main { display: flex; align-items: center; gap: 14px; flex: 1 1 0; min-width: 0; }
.team-row__main[hidden] { display: none; }
.team-av { flex: none; width: 44px; height: 44px; border-radius: 50%; background: var(--surface-sunken); color: var(--text-muted); display: grid; place-items: center; font-size: var(--text-headline); font-weight: var(--weight-semibold); }
.team-av .icon { width: 20px; height: 20px; }
.team-row__body { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; }
.team-row__name { font-size: 16px; line-height: 22px; font-weight: var(--weight-semibold); color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-row__sub { font-size: 14px; line-height: 20px; color: var(--text-muted); }
.team-pill { flex: none; display: inline-flex; align-items: center; height: 28px; padding: 0 12px; border-radius: var(--radius-pill); background: var(--surface-sunken); color: var(--text); font-size: 14px; font-weight: var(--weight-medium); }
.team-pill--owner { background: var(--text); color: var(--bg, #fff); }
.team-pill--warn { background: var(--warn-050); color: var(--warn-600); }
.team-pill--wait { background: var(--st-lost-bg); color: var(--st-lost-fg); }
.team-row__side { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
.team-row__act { min-height: 36px; padding: 0 4px; color: var(--text-muted); }
.team-confirm { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.team-confirm[hidden] { display: none; }
.team-confirm__text { margin: 0; font-size: 15px; line-height: 21px; color: var(--text); }
.team-confirm__btns { display: flex; gap: 10px; justify-content: flex-end; }
.team-confirm__btns .btn { min-height: 44px; flex: 1 1 0; }

/* ── Нижняя панель: главное действие (П6) ── */
body.is-team-route .topbar__nav { display: none; }
.team-bar.lv-bar {
  display: flex; margin: 0 auto; border-radius: 0; box-shadow: none; border: 0; border-top: 1px solid var(--border);
  background: rgba(255, 255, 255, 0.96); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; max-width: 680px;
}
.team-bar[hidden] { display: none; }
.team-bar__btn { flex: 1 1 auto; width: 100%; min-height: 52px; }

/* ── Шторка приглашения ── */
.team-inv { display: flex; flex-direction: column; gap: 14px; padding: 4px 0 calc(8px + env(safe-area-inset-bottom, 0px)); }
.team-inv__form { display: flex; flex-direction: column; gap: 14px; }
.team-inv__sub { margin: 0; font-size: 15px; line-height: 21px; color: var(--text-muted); }
.team-inv__role { margin: 0; padding: 12px 14px; border-radius: 14px; background: var(--surface-sunken); font-size: 15px; line-height: 21px; color: var(--text); }
.team-inv__go { width: 100%; }
.team-inv__err { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 14px; background: var(--warn-050); }
.team-inv__err[hidden] { display: none; }
.team-inv__err-text { margin: 0; font-size: 15px; line-height: 21px; color: var(--text); }
.team-inv__box { display: flex; gap: 14px; align-items: center; padding: 14px; border-radius: 16px; background: var(--surface-sunken); }
.team-inv__qr { flex: none; padding: 8px; border-radius: 12px; background: #fff; }
.team-inv__qr svg { display: block; width: 112px; height: 112px; }
.team-inv__linkcol { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.team-inv__link { font-size: 14px; line-height: 20px; font-weight: var(--weight-medium); color: var(--text); overflow-wrap: anywhere; }
.team-inv__note { font-size: 13px; line-height: 18px; color: var(--text-muted); }
.team-inv__btns { display: flex; gap: 10px; }
.team-inv__btns .btn { flex: 1 1 0; padding: 0 10px; }

/* ── «Ещё» менеджера ── */
.team-mgr-note { padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface); margin-bottom: var(--space-4); }
.team-mgr-note b { display: block; font-size: var(--text-headline); line-height: 24px; font-weight: var(--weight-semibold); }
.team-mgr-note p { margin: 6px 0 0; font-size: 15px; line-height: 22px; color: var(--text-muted); }

/* ── Заглушка «Доступ приостановлен» ── */
.rs { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 12px; padding: 18vh 24px 24px; }
.rs__ic { width: 56px; height: 56px; border-radius: 50%; background: var(--surface-sunken); display: grid; place-items: center; }
.rs__ic .icon { width: 26px; height: 26px; color: var(--text-muted); }
.rs__title { margin: 0; font-size: 24px; line-height: 30px; font-weight: var(--weight-semibold); letter-spacing: -0.02em; }
.rs__text { margin: 0; font-size: 16px; line-height: 23px; color: var(--text); max-width: 32ch; }
.rs__hint { margin: 0; font-size: 14px; line-height: 20px; color: var(--text-muted); max-width: 32ch; }
body.is-suspended .topbar, body.is-suspended .topbar__nav { display: none; }
