/* ── Nested nav dropdown ── */
.tn-drop-menu { overflow-y: auto !important; max-height: 88vh !important; }
nav.topnav .tn-drop-menu { border-radius: 0 0 12px 12px !important; }
nav.topnav .tn-drop-menu .drop-item,
nav.topnav .tn-drop-menu .drop-subgroup-header,
nav.topnav .tn-drop-menu .drop-subitem { border-radius: 6px !important; }

.drop-subgroup-header {
  display: flex; align-items: center; gap: 12px;
  padding: 1px 16px !important; margin: 0 !important;
  border-radius: 0; cursor: pointer; user-select: none;
  transition: background .15s;
  border-left: 3px solid transparent;
}
.drop-subgroup-header:hover { background: var(--g3); border-left-color: var(--g); color: var(--g); }
.drop-subgroup-header .drop-item-ico { width: 32px; height: 32px; border-radius: 8px; flex-shrink: 0; }
.drop-subgroup-header .drop-item-ico::before { font-size: 1.05rem; margin: 0 !important; }
.drop-subgroup-name { font-weight: 600; font-size: .85rem; color: var(--bk); line-height: 1.3; }
.drop-subgroup-sub  { font-size: .74rem; color: var(--muted); margin-top: .05rem; }
.drop-subgroup-text { flex: 1; }
.drop-subgroup-arrow { font-size: .62rem; color: var(--muted); transition: transform .2s; display: inline-block; }
.drop-subgroup.open .drop-subgroup-arrow { transform: rotate(90deg); }

.drop-subgroup-items { display: none; border-left: 2px solid var(--border); margin: .1rem .85rem .3rem 2.4rem; }
.drop-subgroup.open .drop-subgroup-items { display: block; }

.drop-subitem {
  display: flex; align-items: center; gap: .75rem;
  padding: .6rem .85rem; border-radius: 0;
  text-decoration: none; transition: background .15s;
  border-left: 3px solid transparent;
}
.drop-subitem:hover { background: var(--g3); border-left-color: var(--g); }
.drop-subitem .drop-item-ico { width: 32px; height: 32px; border-radius: 8px; flex-shrink: 0; }
.drop-subitem .drop-item-ico::before { font-size: 1.05rem; margin: 0 !important; }
.drop-subitem-name { font-size: .85rem; font-weight: 600; color: var(--bk); line-height: 1.3; }
.drop-subitem-sub  { font-size: .75rem; color: var(--muted); margin-top: .05rem; }

.drop-subcat-label {
  font-size: .68rem; font-weight: 700; letter-spacing: 1.5px;
  text-transform: uppercase; color: var(--light); padding: 10px 16px 4px;
}
.drop-subcat-label:not(:first-child) { border-top: 1px solid var(--border); margin-top: .3rem; padding-top: .75rem; }
