/* Veillée — barre du bas (refonte, lot 3-2, B-VEI-105) : une ligne de 28 px en trois groupes
 * [Tout en pause · Tout arrêter · Silence] · [Sorties ▾] · état · [Général · Ambiance · Lieu · Bruitages].
 * Boutons : le seul style .vs-btn (base.css) ; mesures : jetons de tokens.css. Thème clair uniquement. */
.audio-dock { position: fixed; inset: auto 0 0; z-index: 15; display: flex; align-items: center; gap: var(--sp-4); min-height: 28px; padding: 3px var(--sp-3); box-sizing: border-box; background: var(--surface); border-top: 1px solid var(--line); box-shadow: 0 -2px 8px #2028200c; min-width: 0; }
.audio-dock *, .audio-dock *::before, .audio-dock *::after { box-sizing: border-box; }
.audio-dock .dock-group { display: flex; align-items: center; gap: var(--sp-3); flex: none; min-height: var(--btn-h); }
.audio-dock .vsm { gap: var(--sp-3); }
.audio-dock .vs-btn { font-size: var(--fs-small); line-height: var(--lh-small); }
.audio-dock .vsm-pause.is-paused { background: var(--copper); border-color: var(--copper); color: #fff; }
.audio-dock .vsm-stop { color: var(--copper); border-color: var(--copper); }
.audio-dock .vsm-stop:hover:not(:disabled) { background: var(--copper-soft); border-color: var(--copper); }
.audio-dock .dock-silence[aria-pressed="true"] { background: var(--copper); border-color: var(--copper); color: #fff; }
.audio-dock .dock-status { flex: 1; min-width: 0; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.audio-dock .dock-volumes { gap: var(--sp-4); }
.audio-dock .dock-volume { display: flex; align-items: center; gap: var(--sp-2); height: var(--btn-h); }
.audio-dock .dock-volume input[type=range] { width: 144px; height: 14px; margin: 0; accent-color: var(--green); cursor: pointer; }
.audio-dock .dock-volume output { width: 24px; text-align: right; font-size: var(--fs-small); line-height: var(--lh-small); font-variant-numeric: tabular-nums; }
.audio-dock .local-listen { margin-left: auto; white-space: nowrap; }
.audio-dock .dock-status + .local-listen { margin-left: 0; }
.audio-dock .dock-group[data-grp="ecoute"] { margin-left: auto; }
@media (max-width: 1050px) { .audio-dock { gap: var(--sp-3); } .audio-dock .dock-volume input[type=range] { width: 112px; } }
@media (max-width: 760px) {
  .audio-dock { flex-wrap: wrap; gap: var(--sp-2) var(--sp-3); padding: var(--sp-2) var(--sp-3); }
  .audio-dock .dock-group { flex: 0 1 auto; flex-wrap: wrap; max-width: 100%; }
  .audio-dock .dock-status { flex-basis: 100%; order: 5; text-align: left; }
  .audio-dock .dock-volumes { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-2) var(--sp-4); }
  .audio-dock .dock-volume { min-width: 0; }
  .audio-dock .dock-volume .vs-small { width: 64px; flex: none; }
  .audio-dock .dock-volume input[type=range] { flex: 1; min-width: 32px; width: auto; }
}
