:root { --app-titlebar-height: 36px; }
body { overflow: hidden; }
#app { height: calc(100dvh - var(--app-titlebar-height)); }
.shell { height: 100%; grid-template-rows: minmax(0, 1fr); }
.app-titlebar { height: var(--app-titlebar-height); background: #191b20; display: grid; grid-template-columns: 1fr minmax(0, 1fr) 1fr; align-items: center; color: #a2a7b3; user-select: none; -webkit-app-region: drag; padding: 0 10px; }
.titlebar-navigation, .titlebar-tools { display: flex; align-items: center; gap: 3px; }
.titlebar-tools { justify-self: end; }
.titlebar-identity { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; color: #d4d7e0; font-size: 12px; font-weight: 600; }
.titlebar-identity span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.titlebar-identity img { width: 19px; height: 19px; border-radius: 6px; object-fit: cover; }
.titlebar-button { width: 28px; height: 26px; border-radius: 7px; display: inline-flex; align-items: center; justify-content: center; padding: 4px; -webkit-app-region: no-drag; }
.titlebar-button svg { width: 17px; height: 17px; }
.titlebar-button:hover:not(:disabled) { background: #2e313a; color: #eef0f5; }
.titlebar-button:disabled { opacity: .25; cursor: default; }
.titlebar-button[hidden] { display: none; }
[data-title-back] svg { transform: rotate(180deg); }
.desktop-client .titlebar-tools { padding-right: 138px; }
.desktop-client .app-titlebar { grid-template-columns: 1fr minmax(0, 1fr) 1fr; }
.boot { height: 100%; }
.auth-page { min-height: 100%; height: 100%; overflow-y: auto; }
.modal-backdrop { top: var(--app-titlebar-height); }
@media(max-width:720px) {
  :root { --app-titlebar-height: 34px; }
  .app-titlebar { padding-inline: 5px; grid-template-columns: 66px minmax(0, 1fr) 66px; }
  .titlebar-identity { font-size: 11px; gap: 6px; }
  .titlebar-identity img { width: 17px; height: 17px; }
  .titlebar-button { width: 26px; }
  .titlebar-tools [data-title-help] { display: none; }
  .sidebar.mobile-open { top: var(--app-titlebar-height); }
  .members.mobile-show { top: calc(var(--app-titlebar-height) + 52px); }
}
