/* Accessible, native dropdown groups for the RTL application sidebar. */
.sidebar-navigation { padding: 0; margin: 0; }
.sidebar-navigation > .sidebar-group-item { list-style: none; margin: 0; padding: 0; }
.sidebar-menu-group { border: 1px solid transparent; border-radius: .85rem; overflow: hidden; background: transparent; }
.sidebar-menu-group[open] { background: color-mix(in srgb, var(--bg-surface, #fff) 88%, var(--primary, #2563eb) 5%); border-color: var(--border-glass, #e2e8f0); }
.sidebar-group-toggle { display: flex; align-items: center; justify-content: space-between; gap: .7rem; min-height: 46px; padding: .72rem .9rem; border-radius: .8rem; color: var(--text-main, #0f172a); cursor: pointer; font-size: .86rem; font-weight: 750; list-style: none; user-select: none; transition: color .18s ease, background .18s ease; }
.sidebar-group-toggle::-webkit-details-marker { display: none; }
.sidebar-group-toggle::marker { content: ""; }
.sidebar-group-toggle:hover { background: rgba(37, 99, 235, .07); color: var(--primary, #2563eb); }
.sidebar-group-leading { display: inline-flex; align-items: center; gap: .7rem; min-width: 0; }
.sidebar-group-leading > .bi { width: 1.1rem; text-align: center; font-size: 1.02rem; color: var(--primary, #2563eb); }
.sidebar-group-chevron { flex: 0 0 auto; color: var(--text-sub, #64748b); font-size: .72rem; transition: transform .18s ease; }
.sidebar-menu-group[open] > .sidebar-group-toggle { color: var(--primary, #2563eb); }
.sidebar-menu-group[open] > .sidebar-group-toggle .sidebar-group-chevron { transform: rotate(180deg); }
.sidebar-submenu { gap: .15rem; margin: 0 .45rem .5rem 0; padding: .35rem .55rem .25rem 0; border-right: 2px solid color-mix(in srgb, var(--primary, #2563eb) 22%, transparent); }
.sidebar-submenu .nav-item { list-style: none; margin: 0; padding: 0; }
.sidebar-submenu .nav-link { display: flex; align-items: center; gap: .65rem; min-height: 39px; margin: 0; padding: .55rem .75rem; border-radius: .65rem; color: var(--text-sub, #475569); font-size: .82rem; font-weight: 550; text-decoration: none; }
.sidebar-submenu .nav-link > .bi { width: 1rem; flex: 0 0 1rem; text-align: center; font-size: .92rem; opacity: .88; }
.sidebar-submenu .nav-link:hover { color: var(--primary, #2563eb); background: rgba(37, 99, 235, .08); }
.sidebar-submenu .nav-link.active { color: #fff !important; background: var(--primary, #2563eb) !important; box-shadow: 0 3px 10px rgba(37, 99, 235, .2); }
.sidebar-dashboard-item { list-style: none; margin-bottom: .25rem; }
.sidebar-dashboard-item > .nav-link { display: flex; align-items: center; gap: .7rem; min-height: 46px; padding: .72rem .9rem; font-weight: 750; }
.sidebar-dashboard-item > .nav-link > .bi { width: 1.1rem; text-align: center; font-size: 1.05rem; }
.sidebar-group-toggle:focus-visible, .sidebar-submenu .nav-link:focus-visible, .sidebar-dashboard-item .nav-link:focus-visible { outline: 3px solid color-mix(in srgb, var(--primary, #2563eb) 55%, white); outline-offset: 2px; }
[data-bs-theme="dark"] .sidebar-menu-group[open] { background: rgba(59, 130, 246, .07); border-color: var(--border-glass, #334155); }
[data-bs-theme="dark"] .sidebar-group-toggle { color: var(--text-main, #f1f5f9); }
[data-bs-theme="dark"] .sidebar-submenu .nav-link { color: var(--text-sub, #94a3b8); }
@media (prefers-reduced-motion: reduce) { .sidebar-group-chevron, .sidebar-group-toggle { transition: none !important; } }
