/* Navbar custom styles */
.navbar {
  background-color: white !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0);
}
.navbar-toggler {
  border-color: #1a202c;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(26, 32, 44, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-brand {
  font-weight: 500;
  padding: 0.5rem 0;
  margin-right: 1rem;
}
.navbar-brand img {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}
.navbar-nav .nav-link {
  color: #1a202c;
  transition: color 0.2s ease;
}
.navbar-nav .nav-link:hover {
  color: #1a56ff !important;
}

/* Sidebar (Offcanvas) styles - モバイル表示時のみ使用 */
.offcanvas-dark {
  background-color: #2d3748 !important;
  color: #fff;
}
.offcanvas-body .nav-link {
  color: rgba(255, 255, 255, 0.7);
  padding: 0.75rem 1rem;
  border-radius: 4px;
  transition: all 0.2s ease;
}
.offcanvas-body .nav-link:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
}
.offcanvas-body .nav-link.active {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.15);
}
.offcanvas-body .nav-link.fw-bold {
  color: #fff;
  font-size: 1.1rem;
}
.offcanvas-body .nav-link.fw-bold:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
