/* Навигационные части кита, не экраны.
   Вид повторяет макет кабинета: нижняя полоса, вкладки, чипы.
   Новых цветов и кеглей нет. Полоса не наезжает на страницу
   отрицательным полем: в макете так сделано из-за кадра телефона. */

.navbar {
  display: flex;
  justify-content: space-around;
  flex-shrink: 0;
  height: 69px;
  padding: 9px 10px 16px;
  background: #0b1826f5;
  backdrop-filter: blur(15px);
  border-top: 1px solid var(--border);
  position: sticky;
  bottom: 0;
  z-index: 15;
}

@supports (padding: max(0px)) {
  .navbar {
    height: calc(69px + env(safe-area-inset-bottom));
    padding-bottom: calc(16px + env(safe-area-inset-bottom));
  }
}

.navbar.is-static {
  position: relative;
  bottom: auto;
}

.navbar.is-hidden {
  display: none;
}

.nav-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 46px;
  padding: 0 4px;
  border: 0;
  border-radius: 0;
  background: none;
  color: var(--text-3);
  font-size: 8px;
  line-height: 1.2;
  white-space: nowrap;
  position: relative;
}

.nav-item .icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex-shrink: 0;
}

.nav-item.active,
.nav-item[aria-current="page"] {
  color: var(--accent);
}

.nav-item.active:before,
.nav-item[aria-current="page"]:before {
  content: "";
  position: absolute;
  top: -10px;
  width: 18px;
  height: 2px;
  background: var(--accent);
  border-radius: 0 0 3px 3px;
}

.tabs {
  display: flex;
  gap: 3px;
  margin: 0 0 var(--sp-4);
  padding: 3px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
}

.tabs button,
.tabs a {
  flex: 1;
  min-width: 0;
  padding: 9px 4px;
  border: 0;
  border-radius: 7px;
  background: none;
  color: var(--text-2);
  font-size: 10px;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}

.tabs button.active,
.tabs a.active,
.tabs button[aria-selected="true"],
.tabs a[aria-selected="true"] {
  background: var(--surface-3);
  color: var(--text);
}

.filter-chips {
  display: flex;
      flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 var(--sp-4);
  padding: 0;
  overflow: auto;
  scrollbar-width: none;
}

.filter-chips::-webkit-scrollbar {
  display: none;
}

.filter-chips.is-bleed {
  margin-left: calc(var(--pad-cabinet) * -1);
  margin-right: calc(var(--pad-cabinet) * -1);
  padding-left: var(--pad-cabinet);
  padding-right: var(--pad-cabinet);
}

.filter-chips button,
.filter-chips a,
.filter-chips .chip-quiet {
  flex-shrink: 0;
  padding: 8px 11px;
  border: 1px solid var(--border);
  border-radius: var(--r-full);
  background: none;
  color: var(--text-2);
  font-size: 10px;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

.filter-chips .chip-quiet {
  color: var(--text-3);
}

.filter-chips button.active,
.filter-chips a.active,
.filter-chips button[aria-pressed="true"],
.filter-chips a[aria-pressed="true"] {
  background: var(--accent-soft);
  border-color: #65ef424d;
  color: var(--accent);
}

.nav-item:focus-visible,
.tabs button:focus-visible,
.tabs a:focus-visible,
.filter-chips button:focus-visible,
.filter-chips a:focus-visible,
.nav-item.is-focus,
.tabs button.is-focus,
.tabs a.is-focus,
.filter-chips button.is-focus,
.filter-chips a.is-focus {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

.nav-item:disabled,
.tabs button:disabled,
.filter-chips button:disabled {
  opacity: .45;
  cursor: not-allowed;
}
