/* listes déroulantes « maison » (liste.js) : mêmes formes partout, couleurs du thème de chaque page, clair et sombre */
.gl{--gl-card:var(--card,var(--surface,#fff));--gl-line:var(--line,#E1E7E3);--gl-ink:var(--ink,#22261F);--gl-soft:var(--soft,var(--muted,#6B6880));--gl-acc:var(--ogre,var(--accent,#5BA84A));
  position:relative;width:100%;min-width:0;text-align:left}
.gl-cache{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.gl-b{width:100%;min-height:46px;display:flex;align-items:center;gap:10px;font:inherit;font-weight:700;color:var(--gl-ink);background:var(--gl-card);border:2px solid var(--gl-line);border-radius:14px;padding:6px 10px 6px 8px;cursor:pointer;text-align:left;transition:border-color .15s}
.gl.vide .gl-b{color:var(--gl-soft)}
.gl.choisi .gl-b{border-color:color-mix(in srgb,var(--c,var(--gl-acc)) 50%,var(--gl-line))}
.gl.ouvert .gl-b{border-color:var(--gl-acc)}
.gl-b:disabled{opacity:.55;cursor:default}
.gl-t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:2px}
.gl-fl{flex:none;width:18px;height:18px;color:var(--gl-soft);transition:transform .2s}.gl.ouvert .gl-fl{transform:rotate(180deg)}
.gl-ic{flex:none;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--c) 15%,var(--gl-card));color:var(--c)}.gl-ic i{width:17px;height:17px}
.gl-l{margin-top:4px;border:2px solid var(--gl-line);border-radius:14px;background:var(--gl-card);max-height:252px;overflow:auto;padding:4px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
.gl-o{width:100%;display:flex;align-items:center;gap:10px;font:inherit;font-weight:700;font-size:.95rem;line-height:1.25;color:var(--gl-ink);background:none;border:0;border-radius:10px;padding:8px;min-height:42px;cursor:pointer;text-align:left}
.gl-ot{flex:1;min-width:0}
.gl-o:hover,.gl-o:focus-visible{background:color-mix(in srgb,var(--c,var(--gl-acc)) 10%,var(--gl-card));outline:none}
.gl-o.on{background:color-mix(in srgb,var(--c,var(--gl-acc)) 15%,var(--gl-card))}
.gl-o:disabled{opacity:.45;cursor:default}
.gl-ok{flex:none;width:18px;height:18px;color:var(--c,var(--gl-acc));visibility:hidden}.gl-o.on .gl-ok{visibility:visible}
.gl-b:focus-visible{outline:3px solid color-mix(in srgb,var(--gl-acc) 60%,transparent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.gl-fl,.gl-b{transition:none}}
