/* ---------- Bottom Navigation Bar ---------- */


.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 60px;
  background: #ffffff;
  box-shadow: 0 -2px 10px rgba(0,0,0,0.08);
  display: none;
  align-items: center;
  justify-content: space-around;
  z-index: 1020;

  /* Important to allow the notch pseudo‑element to overflow */
  overflow: visible;
}

@media (max-width: 1000px) {
  .bottom-nav {
    display: flex;
  }
}
/* Individual nav items (left & right) */
.nav-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #6c757d;
  transition: color 0.25s ease;
  padding: 4px 0;
  min-width: 60px;
}

.nav-item i {
  font-size: 1.25rem;
  margin-bottom: 2px;
}

.nav-item span {
  font-size: 0.7rem;
  font-weight: 500;
}

.nav-item:hover,
.nav-item:focus,
.nav-item.active {
  color: var(--app-primary-color);
}

/* ---------- The Notch (U‑shaped cutout) ---------- */
.nav-notch {
  width: 60px;               /* same as min‑width of other items */
  height: 100%;
  position: relative;
  flex-shrink: 0;

  /* The actual cutout uses a pseudo‑element */
}

.nav-notch::after {
  content: '';
  position: absolute;
  bottom: 0;                 /* align with bottom of nav */
  left: 50%;
  transform: translateX(-50%);
  width: 70px;               /* a bit wider than the notch holder */
  height: 40px;              /* height of the cutout */
  background: #ffffff;       /* same as nav background */
  border-radius: 0 0 50% 50%; /* creates the U shape */
  box-shadow: 0 2px 10px rgba(0,0,0,0.08); /* optional soft shadow on the cutout edge */
}

/* ---------- Floating Home Button ---------- */
.center-home {
  position: absolute;
  bottom: 20px;              /* lifts it above the bar and the cutout */
  left: 50%;
  transform: translateX(-50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #0d6efd;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(13,110,253,0.4);
  transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.2s;
  z-index: 1040;
  font-size: 1.5rem;
}

.center-home i {
  font-size: 1.5rem;
  line-height: 1;
}

.center-home span {
  font-size: 0.6rem;
  font-weight: 600;
  margin-top: 2px;
}

.center-home:hover,
.center-home:focus {
  background: #0b5ed7;
  box-shadow: 0 6px 20px rgba(11,94,215,0.5);
  transform: translateX(-50%) scale(1.05);
}