/* Fijación: estilos aislados, conservando los selectores existentes. */
.producto-fijacion-section { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:start; gap:16px; padding:12px 16px 30px; background:var(--gray-light-color,#f7f9fc); min-height:calc(100dvh - var(--header-total-h)); }
.producto-fijacion-section .fijacion-header { position:sticky; top:calc(var(--header-total-h) + 8px); max-height:calc(100dvh - var(--header-total-h) - 24px); overflow-y:auto; padding:16px; border:1px solid #e1e7ef; border-radius:14px; background:#fff; scrollbar-width:thin; scrollbar-color:#bbc9d9 transparent; }
.producto-fijacion-section .fijacion-header h1 { font-size:1.15rem; color:#244d7c; font-weight:700; margin:0 0 14px; }
.producto-fijacion-section .fijacion-header h1::after { content:''; display:block; width:36px; height:3px; margin-top:8px; background:#ff7900; border-radius:3px; }
.producto-fijacion-section .fijacion-filtros { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; align-items:end; }
.producto-fijacion-section .filtro { min-width:0; }
.producto-fijacion-section .filtro label { display:block; margin-bottom:5px; font-size:.8rem; font-weight:600; color:#526174; }
.producto-fijacion-section .filtro select { width:100%; height:40px; border-color:#dce5ef; border-radius:9px; font-size:.85rem; color:#244d7c; }
.producto-fijacion-section .filtro select:focus { border-color:#ff7900; box-shadow:0 0 0 3px #ff790018; }
.producto-fijacion-section .filtro.acciones .btn { width:100%; min-height:42px; border-radius:9px; border-color:#ff7900; background:#ff7900; color:#fff; font-weight:600; }
.producto-fijacion-section .filtro.acciones .btn:hover { background:#e66a00; }
.producto-fijacion-section .filtro.acciones .btn:disabled { opacity:.55; }
.producto-fijacion-section .fijacion-resultados { min-width:0; }
.producto-fijacion-section .result-grid { display:block; }
.producto-fijacion-section .result-card { padding:24px 18px; border:1px solid #e1e7ef; border-radius:12px; background:#fff; color:#667589; font-size:.9rem; }
.producto-fijacion-section .fijacion-estado { color:#667589; font-size:.82rem; margin:0 0 10px; }
.producto-fijacion-section .accordion { display:flex; flex-direction:column; gap:10px; border:0; background:transparent; }
.producto-fijacion-section .accordion-item { border:1px solid #e1e7ef; border-radius:12px; background:#fff; overflow:hidden; }
.producto-fijacion-section .accordion-item.open { border-color:#ffc999; }
.producto-fijacion-section .accordion-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; padding:14px; }
.producto-fijacion-section .acc-left { display:flex; align-items:center; gap:10px; min-width:0; }
.producto-fijacion-section .js-acc-toggle { flex:0 0 32px; width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #dce5ef; border-radius:8px; background:#f3f6fa; color:#244d7c; cursor:pointer; }
.producto-fijacion-section .open .js-acc-toggle { color:#e66a00; border-color:#ffc999; background:#fff4e9; }
.producto-fijacion-section .acc-title { color:#244d7c; font-size:.82rem; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.producto-fijacion-section .acc-right { display:flex; gap:12px; align-items:center; min-width:0; }
.producto-fijacion-section .acc-precio { display:flex; flex-direction:column; align-items:flex-end; min-width:95px; gap:3px; }
.producto-fijacion-section .acc-precio p { margin:0; color:#244d7c; font-size:.95rem; font-weight:700; white-space:nowrap; }
.producto-fijacion-section .js-descuento-cantidad { font-size:.72rem; text-align:right; }
.producto-fijacion-section .product-add { display:flex; align-items:center; gap:8px; min-width:0; width:auto; transform:none; }
.producto-fijacion-section .acc-uxb { width:190px; min-width:0; }
.producto-fijacion-section .acc-uxb select { width:100%; height:36px; border-radius:8px; border-color:#dce5ef; font-size:.78rem; }
.producto-fijacion-section .acc-actions { position:relative; display:flex; align-items:center; gap:8px; }
.producto-fijacion-section .qty-control { display:flex; align-items:center; height:36px; border:1px solid #dce5ef; border-radius:8px; overflow:hidden; background:#fff; }
.producto-fijacion-section .qty-btn { width:30px; height:34px; padding:0; border:0; background:#f3f6fa; color:#244d7c; font-weight:700; }
.producto-fijacion-section .qty-input { width:44px; min-width:0; height:34px; padding:0; border:0; text-align:center; background:#fff; }
.producto-fijacion-section .btn-add { height:36px; padding:0 12px; border-radius:8px; white-space:nowrap; background:#ff7900; border-color:#ff7900; }
.producto-fijacion-section .acc-sinstock-label { display:none; }
.producto-fijacion-section .is-sinstock .acc-sinstock-label { display:flex; position:absolute; inset:0; justify-content:center; align-items:center; color:#a85353; font-size:.82rem; font-weight:600; }
.producto-fijacion-section .is-sinstock :is(.qty-control,.js-add-cart) { opacity:0; pointer-events:none; }
.producto-fijacion-section .accordion-body { display:none; padding:14px; border-top:1px solid #eaf0f6; background:#fbfcfe; }
.producto-fijacion-section .open .accordion-body { display:block; }
.producto-fijacion-section .acc-body-grid { display:grid; grid-template-columns:180px minmax(0,1fr); gap:18px; }
.producto-fijacion-section .acc-img img { display:block; width:180px; height:180px; object-fit:contain; border:1px solid #e1e7ef; border-radius:10px; background:#fff; }
.producto-fijacion-section .acc-info { color:#526174; font-size:.85rem; line-height:1.5; overflow-wrap:anywhere; }
.producto-fijacion-section .acc-atributos { margin-top:8px; }
@media(max-width:1200px) {
 .producto-fijacion-section { grid-template-columns:230px minmax(0,1fr); gap:12px; }
 .producto-fijacion-section .accordion-header { grid-template-columns:minmax(0,1fr); }
 .producto-fijacion-section .acc-right { justify-content:space-between; flex-wrap:wrap; }
}
@media(max-width:768px) {
 .producto-fijacion-section { display:block; padding:8px 10px 30px; }
 .producto-fijacion-section .fijacion-header { top:calc(var(--header-total-h) + 5px); z-index:30; max-height:min(48dvh,calc(100dvh - var(--header-total-h) - var(--bottom-nav-h,80px) - 20px)); padding:12px; margin-bottom:12px; border-radius:12px; }
 .producto-fijacion-section .fijacion-header h1 { font-size:1rem; margin-bottom:10px; }
 .producto-fijacion-section .fijacion-filtros { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 10px; }
 .producto-fijacion-section .filtro label { font-size:.74rem; }
 .producto-fijacion-section .filtro select { height:42px; font-size:16px; }
 .producto-fijacion-section select option { font-size:16px; }
 .producto-fijacion-section .acc-uxb select { font-size:16px; height:42px; }
 .producto-fijacion-section .filtro.acciones { grid-column:1/-1; }
 .producto-fijacion-section .filtro.acciones .btn { min-height:38px; }
 .producto-fijacion-section .accordion-header { gap:10px; padding:12px; }
 .producto-fijacion-section .acc-right { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
 .producto-fijacion-section .acc-precio { align-items:flex-start; }
 .producto-fijacion-section .js-descuento-cantidad { text-align:left; }
 .producto-fijacion-section .product-add { display:grid; grid-template-columns:minmax(0,1fr); gap:9px; }
 .producto-fijacion-section .acc-uxb { width:100%; }
 .producto-fijacion-section .acc-actions { justify-content:space-between; }
 .producto-fijacion-section .acc-body-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
 .producto-fijacion-section .acc-img img { width:160px; height:160px; margin:auto; }
}

/* Acordeón exclusivo de filtros mobile; desktop mantiene su panel visible. */
.producto-fijacion-section .fijacion-filtros-toggle { display:none; }
.producto-fijacion-section .fijacion-filtros[hidden] { display:none; }
@media(max-width:768px) {
 .producto-fijacion-section .fijacion-filtros-cabecera { display:flex; align-items:center; justify-content:space-between; gap:12px; }
 .producto-fijacion-section .fijacion-filtros-cabecera h1 { margin:0; }
 .producto-fijacion-section .fijacion-filtros-toggle { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:8px 12px; border:1px solid #dce5ef; border-radius:9px; background:#f3f6fa; color:#244d7c; font-size:.85rem; font-weight:600; }
 .producto-fijacion-section .fijacion-filtros-toggle:focus-visible { outline:2px solid #ff7900; outline-offset:2px; }
 .producto-fijacion-section .fijacion-filtros-chevron { transition:transform .18s ease; }
 .producto-fijacion-section .fijacion-filtros-toggle[aria-expanded="true"] { border-color:#ffc999; background:#fff4e9; }
 .producto-fijacion-section .fijacion-filtros-toggle[aria-expanded="true"] .fijacion-filtros-chevron { transform:rotate(180deg); }
 .producto-fijacion-section .fijacion-filtros:not([hidden]) { margin-top:12px; }
}
@media(prefers-reduced-motion:reduce) { .producto-fijacion-section .fijacion-filtros-chevron { transition:none; } }
