/* ============================================================
 * COSECAD — Catálogo (shortcode [cosecad_catalogo])
 * Todo namespaced con .csc- para no chocar con el tema.
 * Sin animaciones que oculten contenido: todo visible por defecto.
 * ============================================================ */
.csc-wrap{--azul-marino:#001e5c;--azul:#003da3;--azul-luz:#e8f0fb;--verde:#1a8f5a;--verde-luz:#e6f6ee;
  --gris:#7a8190;--gris-claro:#f4f6fa;--plata:#c9d2de;--texto:#1a2233;--suave:#5a6478;--rojo:#e53e3e;
  font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--texto);max-width:1180px;margin:0 auto;padding:0 16px;box-sizing:border-box}
.csc-wrap *{box-sizing:border-box}

/* Selector nuevo/antiguo */
.csc-chooser{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:840px;margin:0 auto 36px}
.csc-card-sel{background:#fff;border:2px solid var(--plata);border-radius:16px;padding:26px 22px;text-align:center;cursor:pointer;transition:.2s;display:flex;flex-direction:column;align-items:center}
.csc-card-sel:hover{border-color:var(--azul);box-shadow:0 12px 30px rgba(0,61,163,.14);transform:translateY(-3px)}
.csc-card-ic{width:58px;height:58px;border-radius:14px;background:var(--azul-luz);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:14px}
.csc-card-sel h3{font-size:1.18rem;color:var(--azul-marino);margin:0 0 6px}
.csc-card-sel p{font-size:.9rem;color:var(--suave);margin:0 0 18px;line-height:1.5}
.csc-card-sel button{margin-top:auto;background:var(--azul);color:#fff;border:none;border-radius:9px;padding:12px 24px;font-weight:800;cursor:pointer;font-size:.93rem}
.csc-card-sel:hover button{background:var(--azul-marino)}
.csc-card-sel.alt .csc-card-ic{background:var(--verde-luz)}
.csc-card-sel.alt button{background:var(--verde)}

/* Stats */
.csc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 auto 36px;max-width:860px}
.csc-stat{background:#fff;border:1.5px solid var(--plata);border-radius:12px;padding:20px;text-align:center}
.csc-stat b{display:block;font-size:2rem;color:var(--azul-marino);line-height:1}
.csc-stat span{font-size:.82rem;color:var(--suave);font-weight:600}

/* Encabezado de sección */
.csc-head{text-align:center;max-width:680px;margin:0 auto 22px}
.csc-eyebrow{color:var(--azul);font-weight:800;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}
.csc-head h2{font-size:1.7rem;color:var(--azul-marino);margin:8px 0 6px}
.csc-head p{color:var(--suave);font-size:.96rem;margin:0}

/* Búsqueda */
.csc-search{display:flex;align-items:center;gap:10px;background:#fff;border:2px solid var(--plata);border-radius:12px;padding:11px 16px;max-width:560px;margin:0 auto 22px}
.csc-search:focus-within{border-color:var(--azul)}
.csc-search input{flex:1;border:none;outline:none;font-size:1rem;background:transparent;color:var(--texto)}

/* Filtros de ciclo */
.csc-filtros{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:30px}
.csc-filtro{background:#fff;border:2px solid var(--plata);color:var(--texto);padding:10px 18px;border-radius:8px;font-weight:700;cursor:pointer;font-size:.9rem;transition:.2s}
.csc-filtro:hover{border-color:var(--azul);color:var(--azul)}
.csc-filtro.on{background:var(--azul);color:#fff;border-color:var(--azul)}

/* Grupos / categorías */
.csc-grupo{display:none}
.csc-grupo.on{display:block}
.csc-cat{margin-bottom:12px}
/* ---- Acordeón de categorías (v4.6) ---- */
.csc-acc-head{width:100%;display:flex;align-items:center;gap:12px;background:#fff;border:1.5px solid var(--plata);border-radius:12px;padding:13px 16px;cursor:pointer;transition:.15s;font-family:inherit;text-align:left}
.csc-acc-head:hover{border-color:var(--azul)}
.csc-acc.open .csc-acc-head{border-color:var(--azul);border-bottom-left-radius:0;border-bottom-right-radius:0}
.csc-acc-ic{width:40px;height:40px;border-radius:10px;background:var(--azul-luz);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}
.csc-acc-tit{font-size:1rem;font-weight:800;color:var(--azul-marino);flex:1;line-height:1.25}
.csc-acc-count{font-size:.8rem;color:var(--verde);font-weight:700;white-space:nowrap}
.csc-acc-chev{font-size:1.2rem;color:var(--gris);transition:transform .2s;flex-shrink:0;line-height:1}
.csc-acc.open .csc-acc-chev{transform:rotate(180deg)}
.csc-acc-body{display:none;border:1.5px solid var(--azul);border-top:none;border-radius:0 0 12px 12px;padding:8px;background:var(--gris-claro)}
.csc-acc.open .csc-acc-body{display:block}
.csc-row{width:100%;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--plata);border-radius:8px;padding:11px 14px;margin-bottom:6px;cursor:pointer;transition:.15s;font-family:inherit;text-align:left}
.csc-row:last-child{margin-bottom:0}
.csc-row:hover{border-color:var(--azul);background:var(--azul-luz)}
.csc-row.sel{border-color:var(--verde);background:var(--verde-luz)}
.csc-row-nom{flex:1;font-size:.9rem;color:var(--texto);font-weight:600;line-height:1.3}
.csc-row-meta{font-size:.72rem;color:var(--suave);font-family:monospace;white-space:nowrap}
.csc-row-add{width:26px;height:26px;border-radius:50%;background:var(--azul);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1rem;flex-shrink:0}
.csc-row.sel .csc-row-add{background:var(--verde)}
.csc-vacio{text-align:center;padding:40px;color:var(--suave);font-weight:600}

/* Recap + continuar */
.csc-recap{background:var(--gris-claro);border:1px solid var(--plata);border-radius:16px;padding:22px;max-width:760px;margin:36px auto 0}
.csc-recap h3{font-size:1.02rem;color:var(--azul-marino);margin:0 0 12px}
.csc-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:40px;margin-bottom:16px}
.csc-chip-vacio{color:var(--suave);font-style:italic;font-size:.9rem}
.csc-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:2px solid var(--azul);color:var(--azul-marino);padding:7px 11px;border-radius:50px;font-size:.83rem;font-weight:600}
.csc-chip code{font-family:monospace;font-size:.7rem;color:var(--azul);opacity:.7}
.csc-chip b{background:var(--azul-luz);border:none;color:var(--azul);width:18px;height:18px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:800;line-height:1}
.csc-chip b:hover{background:var(--rojo);color:#fff}
.csc-continuar{width:100%;background:linear-gradient(135deg,var(--azul-marino),var(--azul));color:#fff;border:none;border-radius:12px;padding:16px;font-size:1.05rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.csc-continuar:hover{filter:brightness(1.08)}
.csc-nota{text-align:center;font-size:.8rem;color:var(--suave);margin:10px 0 0}

/* Carrito flotante */
.csc-carrito{position:fixed;bottom:22px;right:22px;z-index:9999;background:var(--azul-marino);color:#fff;border:none;border-radius:50px;padding:13px 22px;display:none;align-items:center;gap:10px;box-shadow:0 8px 28px rgba(0,30,92,.4);cursor:pointer;font-family:inherit;font-weight:700}
.csc-carrito.on{display:flex}
.csc-carrito .csc-badge{background:#c8a04a;color:var(--azul-marino);font-weight:800;min-width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 6px;font-size:.82rem}

@media(max-width:760px){.csc-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.csc-chooser{grid-template-columns:1fr}.csc-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.csc-carrito span{display:none}}
