/* Liste déroulante Qoobiz — composant autonome (js/select.js).
   Dans sa propre feuille car il sert aussi au back-office, qui ne charge pas
   components.css. Dépend uniquement des variables de css/tokens.css. */
.qb-select{position:relative;display:inline-block;width:100%}
.qb-select-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important;opacity:0;pointer-events:none}
.qb-select-button{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;min-height:46px;padding:10px 13px;
  border:1px solid var(--qb-border-strong);border-radius:var(--qb-radius-sm);
  background:var(--qb-surface);color:var(--qb-ink);
  font:inherit;font-weight:600;text-align:left;cursor:pointer;
  transition:border-color var(--qb-duration-fast),box-shadow var(--qb-duration-fast),background var(--qb-duration-fast);
}
.qb-select-button:hover{border-color:var(--qb-primary);background:var(--qb-surface-tint)}
.qb-select.is-open .qb-select-button{border-color:var(--qb-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--qb-focus) 22%,transparent)}
.qb-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qb-select-chevron{flex:none;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.65;transition:transform var(--qb-duration-fast) var(--qb-ease)}
.qb-select.is-open .qb-select-chevron{transform:translateY(2px) rotate(-135deg)}

.qb-select-list{
  position:absolute;z-index:1200;left:0;right:0;top:calc(100% + 6px);
  max-height:260px;overflow-y:auto;margin:0;padding:6px;list-style:none;
  border:1px solid var(--qb-border);border-radius:var(--qb-radius-sm);
  background:var(--qb-surface-raised);box-shadow:var(--qb-shadow-md);
}
.qb-select.is-above .qb-select-list{top:auto;bottom:calc(100% + 6px)}
.qb-select-list:focus-visible{outline:none!important}
.qb-select-option{
  display:flex;align-items:center;gap:8px;
  min-height:40px;padding:8px 10px;border-radius:8px;
  color:var(--qb-ink);font-weight:600;cursor:pointer;
}
.qb-select-option.is-active{background:var(--qb-primary-soft);color:var(--qb-primary)}
.qb-select-option[aria-selected="true"]{color:var(--qb-primary)}
.qb-select-option[aria-selected="true"]::after{content:"✓";margin-left:auto;font-weight:800}
.qb-select-option[aria-disabled="true"]{color:var(--qb-muted);cursor:not-allowed}

/* Variante compacte de la barre de navigation */
.qb-theme .qb-select{width:auto;min-width:132px}
.qb-theme .qb-select-button{min-height:40px;padding:6px 12px;border-color:var(--qb-border);font-size:.92rem}
/* Dans le menu mobile, la ligne est verticale : le libellé reste visible et la
   commande prend la largeur restante, comme les autres entrées du menu. */
@media(max-width:920px){
  .qb-theme .qb-select{flex:1;width:auto;min-width:0}
  .qb-theme .qb-select-button{min-height:44px}
}
