/* NOCTRA: navegación y catálogo. Paleta única en src/01-base.css. */

.nv-header{background:var(--nc-bar);border-bottom:1px solid var(--nc-hair);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:none}
.nv-header.is-scrolled{box-shadow:0 8px 30px rgba(0,0,0,.08)}
:root[data-theme="light"] .nv-header{background:var(--nc-bar)}
:root[data-theme="light"] .nv-count{color:var(--nc-accent-text)}
.nv-nav{gap:clamp(14px,2vw,26px)}
.nv-brand{color:var(--nc-text)}
.nv-brand-mark{color:var(--nc-accent)}
.nv-brand-word{font-weight:760;font-size:.59em;letter-spacing:.25em}
.nv-menu-links{gap:clamp(5px,.8vw,12px)}
.nv-menu-link{border:0;background:transparent;color:var(--nc-sub);font-size:.82rem;letter-spacing:-.015em;padding:11px 10px;border-radius:10px}
.nv-menu-link::after{height:2px;left:12px;right:12px;bottom:5px;background:var(--nc-accent)}
.nv-menu-link:hover,.nv-menu-link[aria-current="page"]{background:transparent;color:var(--nc-text)}
.nv-menu-link[aria-current="page"]::after{transform:scaleX(1)}
.nv-actions{gap:7px}
.nv-icon-btn,.nv-pill-btn{min-height:42px;height:42px;background:transparent;border:1px solid var(--nc-hair);border-radius:12px;color:var(--nc-text);box-shadow:none}
.nv-icon-btn .ico,.nv-pill-btn .ico{color:var(--nc-sub)}
.nv-icon-btn:hover,.nv-pill-btn:hover{background:var(--nc-hover);border-color:var(--nc-hair-strong);color:var(--nc-text)}
.nv-icon-btn:hover .ico,.nv-pill-btn:hover .ico{color:var(--nc-text)}
.nv-count{color:var(--nc-accent-text);background:var(--nc-accent);box-shadow:none}
/* Dropdown links remain legible in the mobile drawer. */
.nv-drawer-body .nv-drawer-caption{color:var(--nc-accent)}
.nv-drawer-body a{color:var(--nc-text)}

/* Base catalog: default dark, light only when the user explicitly chooses light. */
body.page-tienda{background:var(--nc-bg);color:var(--nc-text)}
.page-tienda .sh-hero{padding:clamp(32px,4.5vw,66px) 0 clamp(22px,3vw,38px);background:none}
.page-tienda .nv-crumbs a,.page-tienda .nv-crumbs span,.page-tienda .nv-crumbs i{color:var(--nc-muted)}
.page-tienda .hm-display{margin:16px 0 13px;font-size:clamp(2.6rem,4.3vw,4rem);line-height:1.08;letter-spacing:-.055em;color:var(--nc-text)}
.page-tienda .hm-display em{color:var(--nc-accent);font-style:normal;font-weight:500}
.page-tienda .hm-lead{max-width:56ch;font-size:.96rem;line-height:1.75;color:var(--nc-muted)}
.page-tienda .sh-quicklinks{margin-top:24px;gap:9px}
.page-tienda .sh-quicklinks a{background:var(--nc-panel);border:1px solid var(--nc-hair);border-radius:999px;padding:10px 16px;color:var(--nc-sub);font-size:.78rem;line-height:1.35;font-weight:650}
.page-tienda .sh-quicklinks a:hover{color:var(--nc-text);background:var(--nc-hover);border-color:var(--nc-hair-strong)}
.page-tienda .sh-quicklinks a[aria-current="true"]{background:var(--nc-button);color:var(--nc-button-text);border-color:transparent}

/* Layout: precisely align the sticky sidebar with the results toolbar. */
.page-tienda .sh-layout{display:grid;grid-template-columns:minmax(235px,260px) minmax(0,1fr);gap:clamp(18px,2vw,30px);align-items:start;padding-bottom:85px}
.page-tienda .sh-filters{position:sticky;top:calc(var(--catalog-header-h,var(--header-h)) + 16px);max-height:calc(100dvh - var(--catalog-header-h,var(--header-h)) - 32px);align-self:start;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain;background:var(--nc-panel);border:1px solid var(--nc-hair);border-radius:20px;padding:20px 18px 14px;box-shadow:none;backdrop-filter:none}
.page-tienda .sh-filter-form{gap:3px}
.page-tienda .sh-filter-head{padding-bottom:14px}
.page-tienda .sh-filter-head strong{color:var(--nc-text);font-size:.96rem;font-weight:750}
.page-tienda .sh-filter-head .clear-link{color:var(--nc-accent);font-size:.78rem}
.page-tienda .sh-group{border-top:1px solid var(--nc-hair)}
.page-tienda .sh-group>summary{color:var(--nc-text);font-size:.83rem;padding:14px 0;font-weight:690}
.page-tienda .sh-group>summary .ico{color:var(--nc-muted)}
.page-tienda .sh-group-body{gap:3px;padding-bottom:14px}
.page-tienda .sh-check{color:var(--nc-sub);padding:8px 8px;margin:0;border-radius:9px;font-size:.81rem}
.page-tienda .sh-check:hover{background:var(--nc-hover)}
.page-tienda .sh-check small{color:var(--nc-muted)}
.page-tienda .sh-check input[type="checkbox"]{accent-color:var(--nc-accent)}
.page-tienda .sh-price{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:7px}
.page-tienda .sh-price input,.page-tienda .sh-filters select{color:var(--nc-text);background:var(--nc-bg);border:1px solid var(--nc-hair-strong);border-radius:11px;padding:8px 10px;min-height:42px;width:100%;font-size:1rem}
.page-tienda .sh-price input::placeholder{color:var(--nc-muted)}
.page-tienda .sh-filter-actions{bottom:-15px;background:linear-gradient(180deg,transparent,var(--nc-panel) 24%);padding:16px 0 8px}
.page-tienda .sh-filter-actions .nv-btn{min-height:44px;border-radius:11px;background:var(--nc-button);color:var(--nc-button-text);box-shadow:none;font-size:.83rem}
.page-tienda .nv-filter-note{background:none;border:0;padding:4px 0;margin:0;color:var(--nc-muted);font-size:.73rem;line-height:1.55}

.page-tienda .sh-main{min-width:0}
.page-tienda .sh-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;margin:0 0 18px;background:var(--nc-panel);border:1px solid var(--nc-hair);border-radius:18px;box-shadow:none}
.page-tienda .sh-count{font-size:.84rem;color:var(--nc-muted)}
.page-tienda .sh-count strong{font-size:.99rem;color:var(--nc-text);font-weight:760}
.page-tienda .sh-tools{gap:8px}
.page-tienda .sh-tools select{background:var(--nc-bg);color:var(--nc-text);min-height:40px;padding:8px 12px;border:1px solid var(--nc-hair);border-radius:10px;font-size:.8rem}
.page-tienda .sh-view{padding:3px;border:1px solid var(--nc-hair);border-radius:11px;background:var(--nc-bg)}
.page-tienda .sh-view button{width:34px;height:34px;border-radius:8px;color:var(--nc-muted)}
.page-tienda .sh-view button[aria-pressed="true"]{background:var(--nc-hover);color:var(--nc-text)}
.page-tienda .sh-filter-open{color:var(--nc-text);border:1px solid var(--nc-hair);background:var(--nc-panel)}
.page-tienda .sh-chips{gap:8px;margin:0 0 18px}
.page-tienda .sh-chips a{display:inline-flex;align-items:center;gap:7px;color:var(--nc-sub);background:var(--nc-panel);border:1px solid var(--nc-hair);border-radius:999px;padding:7px 11px;font-size:.76rem}
.page-tienda .sh-chips a:hover{background:var(--nc-hover);color:var(--nc-text)}
.page-tienda .sh-main>.sh-note{color:var(--nc-sub);margin-bottom:18px}
.page-tienda .sh-main>.sh-note .nv-link{color:var(--nc-accent)}
.page-tienda .sh-empty{background:var(--nc-panel);border:1px dashed var(--nc-hair-strong);border-radius:22px;color:var(--nc-text)}
.page-tienda .sh-empty p{color:var(--nc-muted)}
.page-tienda .sh-pagination{justify-content:center;gap:7px;margin-top:22px}
.page-tienda .sh-pagination a,.page-tienda .sh-pagination span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;background:var(--nc-panel);color:var(--nc-sub);border:1px solid var(--nc-hair);border-radius:11px}
.page-tienda .sh-pagination a[aria-current="page"]{background:var(--nc-button);color:var(--nc-button-text);border-color:transparent}

/* Products: no fake photo thumbnails. Honest, minimal placeholder until a photo is uploaded. */
.page-tienda .sh-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),360px));align-items:stretch;gap:clamp(14px,1.5vw,20px)}
.page-tienda .pc{background:var(--nc-card);border:1px solid var(--nc-hair);border-radius:20px;overflow:hidden;box-shadow:none;transition:border-color .18s,transform .18s,box-shadow .18s}
.page-tienda .pc:hover{transform:translateY(-3px);background:var(--nc-card);border-color:var(--nc-hair-strong);box-shadow:var(--nc-shadow)}
.page-tienda .pc-media{aspect-ratio:4 / 5;overflow:hidden;border-radius:19px 19px 0 0;background:var(--nc-stage);border-bottom:1px solid var(--nc-hair);transform:none}
.page-tienda .pc-media::after{content:none}
.page-tienda .pc-image{position:relative;display:grid;place-items:center;min-height:0;min-width:0;width:100%;height:100%;padding:18px}
.page-tienda .pc-image-stage{display:none}
.page-tienda .pc-image img{position:relative;display:block;z-index:0;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;padding:0;filter:drop-shadow(0 10px 14px rgba(0,0,0,.17));transform:none;transition:transform .2s}
.page-tienda .pc:hover .pc-image img{transform:scale(1.025);filter:drop-shadow(0 11px 15px rgba(0,0,0,.2))}
.pc-no-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:8px;color:var(--nc-muted,var(--muted));text-align:center;font-size:.8rem;font-weight:670;line-height:1.4;padding:12px}
.pc-no-photo .pc-no-photo-symbol{display:grid;place-items:center;width:56px;height:70px;border:1px solid currentColor;border-radius:7px;opacity:.32;font-size:1.6rem;font-weight:400;margin-bottom:10px}
.pc-no-photo small{font-size:.65rem;opacity:.7;font-weight:450}
.page-tienda .pc-badges{top:12px;left:12px;max-width:70%}
.page-tienda .pc-badge{background:var(--nc-panel);color:var(--nc-sub);border:1px solid var(--nc-hair-strong);border-radius:999px;padding:5px 9px;font-size:.62rem;box-shadow:none}
.page-tienda .pc-badge.is-gold{color:var(--nc-accent)}
.page-tienda .pc-badge.is-out{color:var(--nc-muted)}
.page-tienda .pc-tools{top:12px;right:12px;gap:6px}
.page-tienda .pc-tool{width:36px;height:36px;background:var(--nc-panel);color:var(--nc-sub);border:1px solid var(--nc-hair);border-radius:50%;box-shadow:none}
.page-tienda .pc-tool:hover{background:var(--nc-hover);color:var(--nc-text)}
.page-tienda .pc-quick{display:none}
.page-tienda .pc-body{padding:17px 17px 18px;gap:9px;min-height:186px}
.page-tienda .pc-kicker{color:var(--nc-muted);font-size:.60rem;letter-spacing:.10em;line-height:1.3}
.page-tienda .pc-name{font-family:var(--font-sans);font-weight:690;font-size:.93rem;letter-spacing:-.022em;min-height:2.6em;line-height:1.38;color:var(--nc-text)}
.page-tienda .pc-name a{color:inherit}
.page-tienda .pc-meta-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.page-tienda .pc-rarity,.page-tienda .pc-type-chip{display:inline-flex;align-items:center;gap:6px;font-size:.68rem;font-weight:650;color:var(--nc-muted);padding:0;border:0;background:none}
.page-tienda .pc-type-chip{display:none}
.page-tienda .pc-desc,.page-tienda .pc-attrs{display:none}
.page-tienda .pc-foot{border-top:1px solid var(--nc-hair);padding-top:15px;margin-top:auto;row-gap:5px}
.page-tienda .pc-price strong{font-size:1.13rem;letter-spacing:-.037em;font-weight:750;color:var(--nc-text)}
.page-tienda .pc-price strong small{font-size:.59em;color:var(--nc-muted);letter-spacing:0}
.page-tienda .pc-price del{color:var(--nc-muted)}
.page-tienda .pc-stock{font-size:.71rem;color:var(--nc-muted)}
.page-tienda .pc-add-btn{width:40px;height:40px;border-radius:12px;background:var(--nc-button);color:var(--nc-button-text);box-shadow:none;border:0}
.page-tienda .pc-add-btn:hover{background:var(--nc-accent);color:var(--nc-accent-text)}
.page-tienda .pc-notify{font-size:.74rem;color:var(--nc-sub);text-decoration:underline}
.page-tienda .pc-branches{margin-top:3px;padding-top:7px;border-top:1px solid var(--nc-hair)}
.page-tienda .pc-branches li{background:transparent;border:0;color:var(--nc-muted);padding:2px 4px;font-size:.59rem}
.page-tienda .pc-branches li.has b{color:var(--nc-accent)}
.page-tienda .pc.is-sold-out .pc-image{opacity:1;filter:none}
/* Restore catalog list mode while keeping the same visual system. */
.page-tienda .nv-grid-list{grid-template-columns:1fr}
.page-tienda .nv-grid-list .pc{display:grid;grid-template-columns:176px minmax(0,1fr)}
.page-tienda .nv-grid-list .pc-media{aspect-ratio:1 / 1;border-radius:19px 0 0 19px;border-bottom:0;border-right:1px solid var(--nc-hair)}
.page-tienda .nv-grid-list .pc-body{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;column-gap:20px}
.page-tienda .nv-grid-list .pc-foot{grid-column:2;grid-row:1/span 5;align-self:center;border:0;margin:0;padding:0;min-width:155px}
.page-tienda .nv-grid-list .pc-desc{display:block;max-width:55ch;color:var(--nc-muted);font-size:1rem}
.page-tienda .nv-grid-list .pc-attrs{display:flex;color:var(--nc-muted)}

/* RWD: mobile filters remain a bottom sheet; no ghost offset or offscreen overlay. */
@media(max-width:1100px){.page-tienda .sh-layout{grid-template-columns:225px minmax(0,1fr);gap:18px}.page-tienda .sh-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,205px),1fr))}}
@media(max-width:900px){
  .page-tienda .sh-layout{grid-template-columns:minmax(0,1fr)}
  .page-tienda .sh-filters{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:90;max-height:86dvh;padding:12px 18px calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;background:var(--nc-panel);transform:translateY(105%);visibility:hidden;pointer-events:none;box-shadow:0 -15px 45px rgba(0,0,0,.25)}
  .page-tienda .sh-filters.is-open{transform:translateY(0);visibility:visible;pointer-events:auto}
  .page-tienda .sh-filters::before{background:var(--nc-muted)}
  .page-tienda .sh-filter-head .sh-filter-close{display:inline-grid}
  .page-tienda .sh-filter-open{display:inline-flex}
  .page-tienda .sh-toolbar{padding:12px 14px}
}
@media(max-width:640px){
  .nv-nav{gap:8px}
  .nv-menu-link{color:var(--nc-text)}
  .nv-icon-btn,.nv-pill-btn{height:40px;min-height:40px}
  .page-tienda .sh-hero{padding:25px 0 22px}
  .page-tienda .hm-display{font-size:2.8rem}
  .page-tienda .sh-quicklinks{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
  .page-tienda .sh-quicklinks a{white-space:nowrap;flex-shrink:0}
  .page-tienda .sh-toolbar{flex-wrap:wrap}
  .page-tienda .sh-tools{width:100%;gap:8px}
  .page-tienda .sh-tools form{flex:1;min-width:0}
  .page-tienda .sh-tools select{width:100%}
  .page-tienda .sh-grid:not(.nv-grid-list){grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
  .page-tienda .sh-grid:not(.nv-grid-list):has(>.pc:only-child){grid-template-columns:minmax(0,1fr);max-width:360px;margin-inline:auto}
  .page-tienda .pc{border-radius:15px}
  .page-tienda .pc-media{border-radius:14px 14px 0 0}
  .page-tienda .pc-image{padding:14px}
  .page-tienda .pc-body{padding:12px 12px 14px;gap:7px;min-height:155px}
  .page-tienda .pc-name{font-size:.83rem;min-height:2.8em}
  .page-tienda .pc-kicker{font-size:.54rem}
  .page-tienda .pc-price strong{font-size:.96rem}
  .page-tienda .pc-stock{font-size:.65rem}
  .page-tienda .pc-add-btn{width:36px;height:36px;border-radius:10px}
  .page-tienda .pc-badges{top:7px;left:7px}
  .page-tienda .pc-badge{font-size:.52rem;padding:4px 6px}
  .page-tienda .pc-tools{top:7px;right:7px}
  .page-tienda .pc-tool{width:31px;height:31px}
  .page-tienda .pc-no-photo{font-size:.7rem}
  .page-tienda .pc-no-photo small{display:none}
  .page-tienda .nv-grid-list .pc{grid-template-columns:105px minmax(0,1fr)}
  .page-tienda .nv-grid-list .pc-body{grid-template-columns:1fr;display:flex;min-height:0}
  .page-tienda .nv-grid-list .pc-foot{margin-top:7px;padding-top:9px;border-top:1px solid var(--nc-hair);min-width:0}
}
@media(prefers-reduced-motion:reduce){.page-tienda .pc,.page-tienda .pc:hover,.page-tienda .pc-image img{transition:none;transform:none}}


