/* UmbraTrade · мини-апп в Telegram (shared/tma.js): экраны «кабинета нет / сессия закончилась», кнопка владельца
   «Админка ⇄ Мой счёт». Вне Telegram у <html> нет класса .tma — ничего не меняется. Цвета — только токены. */
.tma [data-theme-toggle], .tma #themeBtn { display: none !important; }   /* тему задаёт Telegram */
.tma body { overscroll-behavior-y: contain; }

.tma-screen {
  position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center;
  padding: max(var(--sp-6), env(safe-area-inset-top)) var(--sp-4) max(var(--sp-6), env(safe-area-inset-bottom));
  background: var(--bg); color: var(--ink); font-family: var(--ui);
}
.tma-screen__box {
  width: 100%; max-width: 420px; padding: var(--sp-6); border-radius: var(--r);
  background: var(--surface-solid); border: 1px solid var(--line); box-shadow: var(--shadow);
}
.tma-screen__box h1 { margin: 0 0 var(--sp-3); font-size: var(--fs-xl); line-height: var(--lh-tight); }
.tma-screen__box p { margin: 0 0 var(--sp-5); color: var(--ink-2); font-size: var(--fs-base); line-height: var(--lh-body); }
.tma-screen__row { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.tma-btn {
  flex: 1 1 140px; min-height: 44px; padding: 0 var(--sp-4); border-radius: var(--r-sm); cursor: pointer;
  border: 1px solid var(--line-2); background: transparent; color: var(--ink); font-weight: 600;
}
.tma-btn--pri { background: var(--acc); border-color: var(--acc); color: var(--acc-ink); }
.tma-btn:focus-visible { box-shadow: var(--focus); outline: none; }

/* 31.10: ниже меню, модалок и нижней панели (раньше z-index был поверх всего и закрывал меню на телефоне) */
.tma-switch {
  position: fixed; z-index: 24; right: var(--sp-3);
  bottom: calc(var(--sp-3) + env(safe-area-inset-bottom));
  display: inline-flex; align-items: center; min-height: 40px; padding: 0 var(--sp-4); border-radius: var(--r-pill);
  background: var(--surface-solid); color: var(--ink); border: 1px solid var(--line-2); box-shadow: var(--shadow-pop);
  font: 600 var(--fs-sm)/1 var(--ui); text-decoration: none;
}
.tma-switch:hover { border-color: var(--acc); }
.tma-switch:focus-visible { box-shadow: var(--focus); outline: none; }
@media print { .tma-switch { display: none; } }
/* кабинет на телефоне: над нижней панелью вкладок (.tabbar, ≤1024px), не поверх «Ещё» */
@media (max-width: 1024px) {
  .tma-switch--app { bottom: calc(76px + env(safe-area-inset-bottom)); min-height: 34px; padding: 0 var(--sp-3); opacity: .92; }
}
@media (max-width: 900px) { .tma-switch--admin { min-height: 34px; padding: 0 var(--sp-3); opacity: .92; } }
