/* Layout */
.bd-wrap { display:grid; grid-template-columns: 280px 1fr; gap: 32px; align-items:start; }
/* --- Responsive: filtros arriba --- */
@media (max-width: 900px){
  .bd-wrap { 
    grid-template-columns: 1fr; 
  }
  .bd-left { 
    order: 1 !important; 
    margin-bottom: 16px; 
  }
  .bd-right { 
    order: 2 !important; 
  }
}


.bd-left .bd-search-label { display:block; font-size:14px; margin-bottom:6px; color:#666; }
.bd-search-row { display:flex; gap:8px; }
#bd-search-input { flex:1; padding:10px 12px; border:1px solid #ddd; border-radius:6px; }
#bd-search-btn { padding:10px 14px; border:none; background:#222; color:#fff; border-radius:6px; cursor:pointer; }
#bd-search-btn:hover { opacity:.9; }

.bd-cats h3 { margin:18px 0 8px; font-size:18px; }
.bd-radio { display:flex; align-items:center; gap:10px; margin:8px 0; cursor:pointer; }
.bd-radio input { accent-color:#111; }

/* Derecha */
.bd-title { text-align:center; margin:0 0 16px; }
.bd-accordions { display:flex; flex-direction:column; gap:12px; }

.bd-acc { border:1px solid #eee; border-radius:10px; overflow:hidden; background:#f4efec; }
.bd-acc-head { width:100%; text-align:left; display:flex; justify-content:space-between; align-items:center; padding:14px 16px; font-weight:600; background:#9e80bb; border:none; cursor:pointer; }
.bd-acc-icon { font-size:20px; line-height:1; }
.bd-acc[aria-open="true"] .bd-acc-icon { transform:rotate(45deg); }

.bd-acc-panel { display:none; background:#fff; }
.bd-acc[aria-open="true"] .bd-acc-panel { display:block; }

.bd-list { list-style:none; margin:0; padding:0; }
.bd-item { display:grid; grid-template-columns: 110px 1fr 120px; gap:10px; padding:12px 16px; border-top:1px solid #eee; }
.bd-item:first-child { border-top:none; background:#fff; }
.bd-code { color:#888; font-variant-numeric: tabular-nums; }
.bd-name { font-weight:500; }
.bd-price { text-align:right; font-weight:600; }

.bd-empty { padding:16px; color:#666; }
.bd-results-note { margin-top:12px; color:#666; }

/* Compactar acordeón y filas en móvil */
@media (max-width: 900px){
  .bd-acc-head{ padding:12px 14px; }
  .bd-acc-title{ font-size:14px; }
  .bd-acc-icon{ font-size:18px; }
  .bd-acc-panel{ font-size:14px; }
}

/* Más compacto aún y más espacio para el precio */
@media (max-width: 600px){
  

  .bd-item{
    /* código | nombre | precio */
    grid-template-columns: 70px 1fr 96px;
    padding:10px 12px;
    gap:8px;
  }
  .bd-code{ font-size:12px; }
  .bd-name{ font-size:14px; line-height:1.25; }
  .bd-price{
    font-size:14px;
    text-align:right;
    white-space:nowrap;     /* evita que se corte en dos líneas */
  }
}

/* Ultra-chico (opcional): precio abajo del nombre para que siempre se vea */
@media (max-width: 380px){
  .bd-item{
    grid-template-columns: 70px 1fr;   /* 2 columnas */
  }
  .bd-price{
    grid-column: 2;                     /* debajo del nombre */
    justify-self: end;
    margin-top:4px;
  }
}

/* Si tienes una barra fija abajo (ej. “Agenda cita”), deja respiro */
@media (max-width: 600px){
  .bd-right{ padding-bottom:72px; }
}

