/* ============================================================
   NAVIGATION v1.3 (ADR-003) — sections métier repliables,
   recherche de menu, badge nouveau, toggle ancien menu
   ============================================================ */
.nav-search { position: relative; margin: 0 6px 10px; }
.nav-search i { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); font-size: 12px; color: var(--text-muted); pointer-events: none; }
.nav-search input { width: 100%; padding: 8px 10px 8px 32px; border-radius: 8px; border: 1px solid var(--border); background: transparent; color: inherit; font-size: 13px; font-family: inherit; }
.nav-search input:focus { outline: none; border-color: var(--gold, #c9a227); }

.nav-section-header { display: flex; justify-content: space-between; align-items: center; padding: 12px 12px 6px; margin-top: 6px; cursor: pointer; font-size: 10.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--text-muted); user-select: none; }
.nav-section-header:hover { color: inherit; }
.nav-section-header i { font-size: 10px; transition: transform .2s ease; }
.nav-section.collapsed .nav-section-header i { transform: rotate(-90deg); }
.nav-section.collapsed ul { display: none; }
.nav-section ul { list-style: none; }

.nav-badge-new { background: #16a34a; color: #fff; font-size: 9px; padding: 1px 6px; border-radius: 8px; margin-left: 6px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

.nav-legacy-toggle { display: block; width: calc(100% - 12px); margin: 16px 6px 6px; padding: 8px; background: transparent; border: 1px dashed var(--border); border-radius: 8px; color: var(--text-muted); font-size: 12px; font-family: inherit; cursor: pointer; transition: color .15s, border-color .15s; }
.nav-legacy-toggle:hover { color: inherit; border-color: var(--text-muted); }

.nav-hidden { display: none !important; }
