/* ===== AERB CATÁLOGO ===== */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;900&family=Barlow:wght@400;500;600&display=swap');

#aerb-app, #aerb-app * { box-sizing: border-box; }

body.page-template-default .entry-content,
body.page-template-default #primary,
body.page-template-default #main,
body.page-template-default .site-main,
body.page-template-default main { padding: 0 !important; margin: 0 !important; max-width: 100% !important; }
.entry-header.page-header, h1.entry-title { display: none !important; }

#aerb-app {
  --or:#F26522; --or-d:#C94F0F;
  --bg:#0f0f0f; --bg2:#1a1a1a; --bg3:#222; --bg4:#2a2a2a;
  --bd:#2e2e2e; --bd2:#3a3a3a;
  --tx:#ffffff; --tx2:#aaaaaa; --tx3:#666666;
  --ra:10px; --ra-sm:7px;
  font-family:'Barlow',system-ui,sans-serif;
  background:var(--bg); color:var(--tx);
  min-height:100vh; width:100%; max-width:100%;
  overflow-x:hidden; margin:0; padding:0; border-radius:0;
}

.aerb-app-header { background:var(--bg2); border-bottom:1px solid var(--bd); padding:.75rem 1.1rem; display:flex; align-items:center; gap:.75rem; }
.aerb-app-header-bolt { width:30px; height:30px; background:var(--or); clip-path:polygon(60% 0,100% 0,40% 50%,80% 50%,0 100%,30% 50%,0 50%); flex-shrink:0; }
.aerb-app-header-logo-img { width:38px; height:38px; border-radius:8px; object-fit:contain; flex-shrink:0; background:#111; }
.aerb-app-header-name { font-family:'Barlow Condensed',sans-serif; font-size:1.15rem; font-weight:900; letter-spacing:.04em; text-transform:uppercase; line-height:1; }
.aerb-app-header-name span { color:var(--or); }
.aerb-app-header-sub { font-size:.6rem; color:var(--tx3); letter-spacing:.08em; text-transform:uppercase; margin-top:2px; }

.aerb-search-section { background:var(--bg2); padding:1rem 1.1rem 1.15rem; border-bottom:1px solid var(--bd); }
.aerb-search-title { font-family:'Barlow Condensed',sans-serif; font-size:1.55rem; font-weight:900; text-transform:uppercase; letter-spacing:.02em; margin-bottom:.85rem; line-height:1.05; color:rgba(255,255,255,0.88); }
.aerb-search-title em { color:var(--or); font-style:normal; }

.aerb-text-row { position:relative; margin-bottom:.75rem; }
.aerb-text-row input { width:100%; background:#2a2a2a !important; border:1.5px solid #3a3a3a; color:#ffffff !important; padding:.7rem 1rem .7rem 2.6rem; border-radius:10px; font-size:16px; font-family:inherit; outline:none; -webkit-appearance:none; appearance:none; color-scheme:dark; -webkit-text-fill-color:#ffffff !important; caret-color:#ffffff; }
.aerb-text-row input:focus { border-color:#F26522; background:#2a2a2a !important; -webkit-text-fill-color:#ffffff !important; }
.aerb-text-row input::placeholder { color:#666666; -webkit-text-fill-color:#666666 !important; opacity:1; }
.aerb-text-row input:-webkit-autofill,
.aerb-text-row input:-webkit-autofill:hover,
.aerb-text-row input:-webkit-autofill:focus { -webkit-box-shadow:0 0 0px 1000px #2a2a2a inset !important; -webkit-text-fill-color:#ffffff !important; border-color:#3a3a3a; }
.aerb-text-row .aerb-search-icon { position:absolute; left:.85rem; top:0; bottom:0; height:100%; display:flex; align-items:center; color:#666666; pointer-events:none; }

.aerb-filters-row { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
.aerb-filter-group { display:flex; flex-direction:column; gap:.28rem; }
.aerb-filter-label { font-size:.6rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--tx3); }
.aerb-select-wrap { position:relative; }
.aerb-select-wrap::after { content:'▾'; position:absolute; right:.7rem; top:50%; transform:translateY(-50%); color:var(--or); pointer-events:none; font-size:.78rem; }
#aerb-app select { width:100%; background:var(--bg4); border:1.5px solid var(--bd2); color:var(--tx); padding:.62rem .8rem; border-radius:var(--ra); font-size:.85rem; font-family:inherit; outline:none; appearance:none; -webkit-appearance:none; cursor:pointer; }
#aerb-app select:focus { border-color:var(--or); }
#aerb-app select option { background:var(--bg4); }
#aerb-app select:disabled { opacity:.35; cursor:not-allowed; }

.aerb-btn-search { grid-column:1/-1; background:var(--or); color:#fff; border:none; padding:.78rem 1rem; border-radius:var(--ra); font-family:'Barlow Condensed',sans-serif; font-size:1.05rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:.45rem; width:100%; margin-top:.15rem; -webkit-tap-highlight-color:transparent; }
.aerb-btn-search:active { background:var(--or-d); transform:scale(.98); }

.aerb-cats-bar { background:var(--bg2); border-bottom:1px solid var(--bd); overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.aerb-cats-bar::-webkit-scrollbar { display:none; }
.aerb-cats-inner { display:flex; padding:0 .4rem; min-width:max-content; }
.aerb-cat-tab { background:none; border:none; color:var(--tx3); font-family:'Barlow Condensed',sans-serif; font-size:.82rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; padding:.7rem .85rem; cursor:pointer; border-bottom:2.5px solid transparent; white-space:nowrap; flex-shrink:0; -webkit-tap-highlight-color:transparent; }
.aerb-cat-tab.active { color:var(--or); border-bottom-color:var(--or); }
.aerb-tab-count { font-size:.58rem; background:var(--bg4); color:var(--tx3); padding:.1rem .28rem; border-radius:4px; margin-left:.22rem; font-weight:500; }
.aerb-cat-tab.active .aerb-tab-count { background:rgba(242,101,34,.2); color:var(--or); }

.aerb-subcats-bar { background:#161616; border-bottom:1px solid var(--bd); overflow-x:auto; max-height:0; overflow-y:hidden; transition:max-height .2s ease; scrollbar-width:none; }
.aerb-subcats-bar::-webkit-scrollbar { display:none; }
.aerb-subcats-bar.open { max-height:50px; }
.aerb-subcats-inner { display:flex; gap:.35rem; padding:.5rem .9rem; align-items:center; min-width:max-content; }
.aerb-subcat-label { font-size:.56rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--tx3); white-space:nowrap; flex-shrink:0; }
.aerb-subcat-pill { background:none; border:1.5px solid var(--bd2); color:var(--tx3); font-size:.7rem; font-weight:500; padding:.2rem .55rem; border-radius:20px; cursor:pointer; white-space:nowrap; font-family:inherit; flex-shrink:0; -webkit-tap-highlight-color:transparent; }
.aerb-subcat-pill.active { background:rgba(242,101,34,.15); border-color:var(--or); color:var(--or); }

.aerb-results-section { padding:.85rem .9rem .9rem; }
.aerb-results-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:.75rem; gap:.5rem; }
.aerb-results-count { font-size:.78rem; color:var(--tx2); line-height:1.3; }
.aerb-results-count strong { color:var(--or); font-size:.95rem; font-weight:700; }
.aerb-sort { background:var(--bg2); border:1px solid var(--bd2); color:var(--tx3); padding:.28rem .5rem; border-radius:var(--ra-sm); font-size:.72rem; cursor:pointer; outline:none; font-family:inherit; appearance:none; -webkit-appearance:none; flex-shrink:0; }

.aerb-grid { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }

.aerb-card { background:#1e1e1e; border:1px solid var(--bd); border-radius:var(--ra); overflow:hidden; display:flex; flex-direction:column; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.aerb-card:active { border-color:var(--or); transform:scale(.98); }
.aerb-card-img { width:100%; aspect-ratio:1/1; object-fit:contain; background:#1d1d1d; padding:.5rem; display:block; }
.aerb-card-body { padding:.6rem .65rem .45rem; flex:1; display:flex; flex-direction:column; gap:.35rem; }
.aerb-card-sku { font-size:.58rem; color:var(--tx3); font-weight:600; letter-spacing:.1em; }
.aerb-card-name { font-family:'Barlow Condensed',sans-serif; font-size:.9rem; font-weight:700; line-height:1.2; color:var(--tx); text-transform:uppercase; flex:1; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.aerb-card-name em { color:var(--or); font-style:normal; }
.aerb-card-badges { display:flex; gap:.28rem; flex-wrap:wrap; margin-top:auto; }
.aerb-badge-cat { font-size:.54rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:.16rem .38rem; border-radius:3px; background:rgba(242,101,34,.15); color:var(--or); border:1px solid rgba(242,101,34,.25); }
.aerb-badge-sub { display:none; font-size:.54rem; font-weight:500; padding:.16rem .38rem; border-radius:3px; background:var(--bg4); color:var(--tx3); border:1px solid var(--bd); }
.aerb-card-footer { padding:.5rem .65rem; border-top:1px solid var(--bd); }
.aerb-btn-wa { all:unset; display:flex !important; align-items:center !important; justify-content:center !important; gap:.35rem !important; width:100% !important; background:#25D366 !important; color:#fff !important; border-radius:7px !important; padding:.5rem .3rem !important; font-family:'Barlow Condensed',sans-serif !important; font-size:.8rem !important; font-weight:700 !important; letter-spacing:.04em !important; text-transform:uppercase !important; cursor:pointer !important; text-decoration:none !important; box-sizing:border-box !important; -webkit-tap-highlight-color:transparent !important; }
.aerb-btn-wa:active { background:#1da851 !important; }
.aerb-btn-wa svg { flex-shrink:0; fill:#fff; }
.aerb-btn-wa-text { display:inline; color:#fff !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.aerb-skeleton-grid { display:grid; grid-template-columns:1fr 1fr; gap:.65rem; }
.aerb-skeleton-card { background:#1e1e1e; border:1px solid var(--bd); border-radius:var(--ra); overflow:hidden; }
.aerb-skeleton-img { width:100%; aspect-ratio:1/1; }
.aerb-skeleton-body { padding:.6rem .65rem .8rem; display:flex; flex-direction:column; gap:.45rem; }
.aerb-skeleton-line { border-radius:4px; }
.aerb-skeleton-img, .aerb-skeleton-line { background:linear-gradient(90deg,#222 25%,#2e2e2e 50%,#222 75%); background-size:200% 100%; animation:aerb-shimmer 1.4s ease infinite; }
@keyframes aerb-shimmer { 0%{background-position:200% 0} 100%{background-position:-200% 0} }

.aerb-loader { display:flex; align-items:center; justify-content:center; gap:.6rem; padding:3rem 1rem; color:var(--tx3); font-size:.9rem; }
.aerb-spinner { width:22px; height:22px; border:2px solid var(--bd2); border-top-color:var(--or); border-radius:50%; animation:aerb-spin .7s linear infinite; }
@keyframes aerb-spin { to{transform:rotate(360deg)} }
.aerb-hero-msg, .aerb-empty { text-align:center; padding:3rem 1.5rem; color:var(--tx3); }
.aerb-hero-msg h3, .aerb-empty h3 { font-family:'Barlow Condensed',sans-serif; font-size:1.25rem; font-weight:700; text-transform:uppercase; color:var(--bg4); margin:.7rem 0 .3rem; }
.aerb-hero-msg p, .aerb-empty p { font-size:.8rem; line-height:1.5; }

#aerb-pagination, .aerb-pagination { display:flex; flex-direction:row; flex-wrap:wrap; justify-content:center; align-items:center; gap:.35rem; margin-top:1.1rem; padding-bottom:1rem; }
.aerb-page-btn { background:var(--bg2); border:1.5px solid var(--bd2); color:var(--tx3); min-width:36px; height:36px; border-radius:var(--ra-sm); cursor:pointer; font-size:.82rem; padding:0 .5rem; display:flex; align-items:center; justify-content:center; font-family:inherit; }
.aerb-page-btn:active { border-color:var(--or); color:var(--or); }
.aerb-page-btn.active { background:var(--or); border-color:var(--or); color:#fff; font-weight:700; }
.aerb-page-btn:disabled { opacity:.25; cursor:not-allowed; }

#aerb-detail { position:fixed; inset:0; z-index:99998; pointer-events:none; overflow:hidden; }
#aerb-detail.aerb-detail-open { pointer-events:all; }
.aerb-detail-page { position:absolute; inset:0; background:#0f0f0f; display:flex; flex-direction:column; transform:translateX(100%); transition:transform .3s cubic-bezier(.32,.72,0,1); overflow:hidden; }
#aerb-detail.aerb-detail-open .aerb-detail-page { transform:translateX(0); }
.aerb-detail-header { background:var(--bg2); border-bottom:1px solid var(--bd); padding:max(.85rem,env(safe-area-inset-top,.85rem)) 1.1rem .85rem; display:flex; align-items:center; gap:.75rem; flex-shrink:0; min-height:60px; }
.aerb-detail-back { all:unset; width:36px; height:36px; min-width:36px; border-radius:50%; background:var(--or); color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; flex-shrink:0; -webkit-tap-highlight-color:transparent; }
.aerb-detail-back:active { background:var(--or-d); transform:scale(.95); }
.aerb-detail-back svg { stroke:#fff; flex-shrink:0; }
.aerb-detail-header-title { font-family:'Barlow Condensed',sans-serif; font-size:.9rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:#888; }
.aerb-detail-scroll { flex:1; overflow-y:auto; -webkit-overflow-scrolling:touch; overscroll-behavior:contain; touch-action:pan-y; }
.aerb-detail-img-wrap { width:100%; background:#141414; display:flex; align-items:center; justify-content:center; padding:2rem 1.5rem; min-height:260px; }
.aerb-detail-img { max-width:260px; max-height:260px; width:auto; height:auto; object-fit:contain; border-radius:8px; background:#fff; padding:.5rem; }
.aerb-detail-img-placeholder { width:160px; height:160px; display:flex; align-items:center; justify-content:center; background:#1d1d1d; border-radius:12px; border:1px solid var(--bd); }
.aerb-detail-body { padding:1.25rem; display:flex; flex-direction:column; gap:.65rem; }
.aerb-detail-sku { font-size:.6rem; color:#555; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.aerb-detail-name { font-family:'Barlow Condensed',sans-serif; font-size:1.5rem; font-weight:800; line-height:1.2; color:#fff !important; text-transform:uppercase; margin:0; }
.aerb-detail-badges { display:flex; gap:.4rem; flex-wrap:wrap; }
.aerb-detail-divider { height:1px; background:#222; }
.aerb-detail-info-label { font-size:.75rem; font-weight:600; color:#aaa !important; text-transform:uppercase; letter-spacing:.08em; margin:0; }
.aerb-detail-info-text { font-size:.85rem; color:#888 !important; line-height:1.5; margin:0; }
.aerb-detail-footer { background:var(--bg2); border-top:1px solid #222; padding:1rem 1.1rem max(1.5rem,env(safe-area-inset-bottom,1.5rem)); flex-shrink:0; }
.aerb-detail-wa { all:unset; display:flex !important; align-items:center !important; justify-content:center !important; gap:.5rem !important; width:100% !important; background:#25D366 !important; color:#fff !important; border-radius:12px !important; padding:.9rem 1rem !important; font-family:'Barlow Condensed',sans-serif !important; font-size:1.1rem !important; font-weight:700 !important; letter-spacing:.05em !important; text-transform:uppercase !important; cursor:pointer !important; box-sizing:border-box !important; text-decoration:none !important; -webkit-tap-highlight-color:transparent !important; }
.aerb-detail-wa:active { background:#1da851 !important; }

/* Ocultar botón flotante de WhatsApp cuando el detalle está abierto */
body.aerb-detail-active div[class*="whatsapp"],
body.aerb-detail-active div[id*="whatsapp"],
body.aerb-detail-active #whatsapp-chat,
body.aerb-detail-active #qlwapp,
body.aerb-detail-active .qlwapp,
body.aerb-detail-active .qlwapp__container,
body.aerb-detail-active #sendbtn,
body.aerb-detail-active .floating_button,
body.aerb-detail-active .label-container,
body.aerb-detail-active [id*="quadlayers"],
body.aerb-detail-active [class*="quadlayers"],
body.aerb-detail-active .wcb-chat-button { display:none !important; }

#aerb-splash { position:fixed; inset:0; background:#0f0f0f; z-index:99999; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.2rem; transition:opacity .4s ease; }
@keyframes aerb-splash-bar { from{width:24px;opacity:.5} to{width:48px;opacity:1} }

.aerb-bottom-nav { display:none; }
.aerb-nav-btn { flex:1; background:none; border:none; color:var(--tx3); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; cursor:pointer; font-family:'Barlow',sans-serif; font-size:.57rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:.65rem 0; -webkit-tap-highlight-color:transparent; }
.aerb-nav-btn.active { color:var(--or); }

@media (min-width:600px) {
  .aerb-search-section { padding:1.5rem 2rem 1.75rem; }
  .aerb-results-section { padding:1.2rem 2rem; }
  .aerb-search-title { font-size:2.2rem; }
  .aerb-filters-row { grid-template-columns:1fr 1fr 1fr 1fr; }
  .aerb-btn-search { grid-column:auto; width:auto; padding:.65rem 1.75rem; }
  .aerb-grid, .aerb-skeleton-grid { grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:1rem; }
  .aerb-badge-sub { display:inline-block; }
  .aerb-card-name { font-size:1rem; }
}
@media (min-width:900px) {
  .aerb-filters-row { grid-template-columns:1fr 1fr 1fr 1fr auto; }
  .aerb-grid, .aerb-skeleton-grid { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
}
@media (max-width:782px) {
  #wpadminbar { display:none !important; }
  html { margin-top:0 !important; }
}
