/* One clear group per area; native details provide keyboard-accessible disclosure. */
.nav-direct > .nav-group-items{display:none!important}
aside nav.grouped-navigation .nav-direct > button{width:100%;display:flex;align-items:center;gap:12px;min-height:46px;padding:11px 13px;border:0;border-radius:9px;background:transparent;text-align:left;font-size:14px;font-weight:650;color:#42516a;white-space:normal}
aside nav.grouped-navigation .nav-direct > button.selected{background:#e8f6f9;color:#0899b1}
aside nav.grouped-navigation .nav-direct > button:hover{background:#edf0f6}
aside nav.grouped-navigation .nav-direct > button .nav-item-icon{width:18px;height:18px;flex-shrink:0}
aside nav.grouped-navigation { display: flex; flex-direction: column; gap: 8px; margin-top: 28px; }
.nav-group { min-width: 0; border-top: 1px solid #e8ecf2; padding-top: 6px; }
.nav-group summary { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 11px 13px; border-radius: 9px; color: #42516a; font-size: 14px; font-weight: 650; cursor: pointer; list-style: none; }
.nav-group summary::-webkit-details-marker { display: none; }
.nav-group summary::after { content: '›'; margin-left: auto; font-size: 20px; line-height: 1; color: #7d8ba0; transform: rotate(0deg); }
.nav-group[open] > summary::after { transform: rotate(90deg); }
.nav-group summary:hover { background: #edf0f6; }
.nav-group summary:focus-visible { outline: 3px solid #7397e8; outline-offset: 2px; }
.nav-group.has-current > summary { color: #254fae; }
.nav-group-icon { width: 18px; text-align: center; color: #71829a; }
.nav-group.has-current .nav-group-icon { color: #315fcb; }
.nav-group-items { display: grid; gap: 4px; margin: 3px 0 8px 14px; padding-left: 10px; border-left: 1px solid #dce3ef; }
aside nav .nav-group-items button { width: 100%; padding: 10px; gap: 8px; font-size: 12px; min-height: 40px; white-space: normal; }
aside nav .nav-group-items button span { font-size: 12px; }
aside nav .nav-create { color: #315fcb; font-weight: 600; }
@media(max-width:760px){
 aside nav.grouped-navigation { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); overflow: visible; gap: 6px 10px; padding-bottom: 6px; margin-top: 16px; }
 aside nav.grouped-navigation > button { grid-column: 1/-1; }
 .nav-group { border: 1px solid #e4e9f1; border-radius: 10px; padding: 0; align-self: start; background: #fff; }
 .nav-group[open] { grid-column: 1/-1; }
 .nav-group summary { min-height: 44px; font-size: 13px; gap: 9px; }
 .nav-group-items { margin: 0 12px 12px; padding: 0 0 0 10px; }
 aside nav .nav-group-items button,aside nav .nav-group-items button span { font-size: 13px; }
 aside nav .nav-group-items button { min-height: 44px; }
}
