/* ═══ SOCLE-MOBILE-1 — COMPOSANTS PARTAGÉS dm_collapse + dm_menu ═══════════
   Chargé une fois par page (sidebar_light.php). Zones : repliable (accordéon)
   et menu trois-points ancré. Couleurs via variables de thème uniquement. */

/* ── dm_collapse ─────────────────────────────────────────────────────────── */
.dm-collapse{border:1px solid var(--border);border-radius:10px;background:var(--bg2);}
.dm-collapse+.dm-collapse{margin-top:.5rem;}
.dm-collapse-head{display:flex;align-items:center;gap:.5rem;width:100%;min-height:44px;
  padding:.5rem .7rem;background:none;border:none;cursor:pointer;font-family:inherit;
  font-size:.8rem;color:var(--text);text-align:left;}
.dm-collapse-head:hover{background:var(--s2);}
.dm-collapse-title{font-weight:600;}
.dm-collapse-val{margin-left:auto;font-size:.72rem;color:var(--text2);white-space:nowrap;}
.dm-collapse-chev{flex-shrink:0;color:var(--text3);display:inline-flex;transition:transform .18s ease;}
.dm-collapse.open .dm-collapse-chev{transform:rotate(90deg);}
.dm-collapse-body{display:none;padding:.1rem .7rem .7rem;}
.dm-collapse.open .dm-collapse-body{display:block;}
/* Variante « sans cadre » : s'insère dans une carte existante (ex. carte Barème Salaires) */
.dm-collapse--bare,.dm-collapse--bare:hover{border:none;background:none;border-radius:0;}
.dm-collapse--bare .dm-collapse-head{padding:.1rem 0 .35rem;min-height:36px;}
.dm-collapse--bare .dm-collapse-head:hover{background:none;}
.dm-collapse--bare .dm-collapse-body{padding:0;}
@media(max-width:768px){.dm-collapse-body{padding:.1rem .55rem .6rem;}}

/* ── dm_menu (menu trois-points) ─────────────────────────────────────────── */
.dm-menu-btn{display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;min-width:44px;min-height:44px;border:none;background:none;
  color:var(--text3);border-radius:9px;cursor:pointer;flex-shrink:0;
  font-size:1.05rem;line-height:1;-webkit-tap-highlight-color:transparent;}
.dm-menu-btn:hover,.dm-menu-btn.dm-menu-on{background:var(--s2);color:var(--accent);}
.dm-menu{position:fixed;z-index:9500;min-width:196px;background:var(--bg2);
  border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.28);
  overflow:hidden;padding:.15rem 0;}
.dm-menu-item{display:flex;align-items:center;gap:.55rem;width:100%;min-height:44px;
  padding:.5rem .8rem;background:none;border:none;border-bottom:1px solid var(--border);
  font-family:inherit;font-size:.82rem;color:var(--text);text-align:left;cursor:pointer;
  text-decoration:none;}
.dm-menu-item:last-child{border-bottom:none;}
.dm-menu-item:hover,.dm-menu-item:active{background:var(--s2);}
.dm-menu-item.danger{color:var(--rouge);}
.dm-menu-item svg{flex-shrink:0;}
