/* =====================================================================
   NAVIGATION ACCORDION - UNIQUE NAMESPACED CLASSES
   Using 'srbs-' prefix to prevent conflicts
   ===================================================================== */


/* Tree Item Base */
.srbs-category-tree {
  padding: 0;
}
.srbs-tree-item {
  margin: 0;
  list-style: none;
}

/* Root Level Items (Categories) */
.srbs-tree-item > .srbs-item-btn {
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--srbs-space-md) var(--srbs-space-md);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--srbs-color-dark-gray);
  background: transparent;
  transition: all var(--srbs-transition-base);
  position: relative;
  text-align: left;
  cursor: pointer;
}

.srbs-tree-item > .srbs-item-btn:hover {
  background: rgba(15, 81, 50, 0.05);
  color: var(--srbs-color-emerald);
}

/* Toggle Arrow */
.srbs-item-btn .srbs-arrow {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  transition: transform var(--srbs-transition-base);
  flex-shrink: 0;
  text-align: center;
  line-height: 20px;
  font-size: 0.8rem;
  color: var(--srbs-color-text-muted);
}

.srbs-tree-item.srbs-expanded > .srbs-item-btn .srbs-arrow {
  transform: rotate(90deg);
  color: var(--srbs-color-emerald);
}

.srbs-tree-item > .srbs-item-btn.srbs-leaf-item {
  padding-left: calc(var(--srbs-space-md) + 20px + var(--srbs-space-sm));
}

.srbs-tree-item > .srbs-item-btn.srbs-leaf-item .srbs-arrow {
  display: none;
}

/* Nested List Container */
.srbs-tree-children {
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--srbs-transition-smooth);
  background: rgba(15, 81, 50, 0.02);
}

.srbs-tree-item.srbs-expanded > .srbs-tree-children {
  max-height: 2000px;
  overflow: visible;
  transition: max-height var(--srbs-transition-smooth);
}

/* Child Items */
.srbs-tree-children .srbs-tree-item > .srbs-item-btn {
      padding: 12px 10px;
  font-size: 0.9rem;
  font-weight: 500;
          padding-left: calc(var(--srbs-space-sm) + 20px);
}

.srbs-tree-children .srbs-tree-item > .srbs-item-btn:hover {
  color: var(--srbs-color-emerald);
  background: rgba(15, 81, 50, 0.08);
}

/* Grandchildren Items */
.srbs-tree-children .srbs-tree-children .srbs-tree-item > .srbs-item-btn {
      padding-left: calc(var(--srbs-space-sm) + 40px);
  font-size: 0.9rem;
  font-weight: 400;
}

/* Active/Selected State */
.srbs-tree-item > .srbs-item-btn.srbs-active {
  color: #fff;
  font-weight: 700;
  border-left: 3px solid var(--rose-dark);
  padding-left: calc(var(--srbs-space-md) - 3px);
  background-color: var(--rose-dark);
}

/* Active child item */
.srbs-tree-children .srbs-tree-item > .srbs-item-btn.srbs-active {
  color: #fff;
  font-weight: 600;
 background: var(--rose);
   border-left: 3px solid var(--rose-dark);
 padding-left: calc(var(--srbs-space-sm) + 20px);
}

/* Active grandchild */
.srbs-tree-children .srbs-tree-children .srbs-tree-item > .srbs-item-btn.srbs-active {
  border-left-width: 3px;
 padding-left: calc(var(--srbs-space-sm) + 40px);
}

/* Keep parent expanded when child is selected */
.srbs-tree-item.srbs-has-active-child > .srbs-tree-children {
  max-height: 2000px;
  overflow: visible;
}

/* =====================================================================
   VISUAL FEEDBACK
   ===================================================================== */
.srbs-item-btn {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

/* Ripple effect on click */
.srbs-item-btn::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(200, 166, 70, 0.3);
  transform: translate(-50%, -50%);
  opacity: 0;
}

.srbs-item-btn:active::after {
  animation: srbs-ripple 0.6s ease-out;
}

@keyframes srbs-ripple {
  to {
    width: 300px;
    height: 300px;
    opacity: 0;
  }
}

/* =====================================================================
   DEEP NESTING SUPPORT (Future-proof)
   ===================================================================== */
.srbs-tree-children .srbs-tree-children .srbs-tree-children .srbs-tree-item > .srbs-item-btn {
  padding-left: 20px;
}

.srbs-tree-children .srbs-tree-children .srbs-tree-children .srbs-tree-children .srbs-tree-item > .srbs-item-btn {
  padding-left: 20px;
}

/* =====================================================================
   ACCESSIBILITY
   ===================================================================== */
.srbs-item-btn:focus-visible {
  outline: 2px solid var(--srbs-color-gold);
  outline-offset: -2px;
  background: rgba(200, 166, 70, 0.05);
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .srbs-item-btn,
  .srbs-tree-children,
  .srbs-arrow {
    transition: none;
  }
}

/* =====================================================================
   CATEGORY BADGE (Optional: for showing count)
   ===================================================================== */
.srbs-item-badge {
  display: inline-block;
  margin-left: auto;
  padding: 2px 6px;
  background: rgba(200, 166, 70, 0.2);
  color: var(--srbs-color-gold);
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: 999px;
  min-width: 24px;
  text-align: center;
  flex-shrink: 0;
}

.srbs-item-btn.srbs-active .srbs-item-badge {
  background: var(--srbs-color-gold);
  color: var(--srbs-color-white);
}

