/* Distri-Cons 2026 — tarjeta de producto, catálogo escalable y carrito lateral. */
:root{--dc-red:#e92f26;--dc-ink:#16191f;--dc-muted:#717986;--dc-line:#e3e6eb}
body:not(.access-page){background:#f4f6f8}
.dc-intro-section{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:25px 30px!important;background:linear-gradient(112deg,#fff 60%,#fff7f6)!important}
.dc-intro-copy h2{margin:8px 0 7px;font-size:27px;letter-spacing:-.035em}.dc-intro-copy p{margin:0;color:#68707b;font-size:14px;max-width:650px;line-height:1.55}
.dc-intro-btn,.dc-quick-add{border:none;background:var(--dc-red);color:white;font-weight:850;cursor:pointer;border-radius:11px;padding:13px 19px;transition:background .16s,transform .16s}.dc-intro-btn:hover,.dc-quick-add:hover{background:#c5231c;transform:translateY(-1px)}
.catalog-workspace{align-items:start}.catalog-refiner{border:1px solid #e5e8ec;box-shadow:0 7px 20px #2026330b}
.catalog-head{display:flex;justify-content:space-between;align-items:center;gap:14px}
.dc-sort-label{display:flex;align-items:center;gap:9px;color:#5e6672;font-size:13px;font-weight:750;white-space:nowrap}.dc-sort-label select{border:1px solid #dce1e8;background:#fff;border-radius:10px;padding:10px;color:#222;font:inherit;max-width:165px}
.grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}.dc-product-card{min-width:0;min-height:0!important;border-radius:16px!important;overflow:hidden;box-shadow:0 4px 18px rgba(18,27,39,.045);transition:transform .17s,box-shadow .17s!important}
.dc-product-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(18,27,39,.12)!important}.dc-product-card .photo-stage{height:200px!important;min-height:200px!important;position:relative;padding:14px!important;background:#fbfcfe;border-bottom:1px solid #eef0f3}.dc-product-image-link{display:grid;place-items:center;width:100%;height:100%}.dc-product-image-link img{width:100%!important;height:100%!important;max-width:100%;max-height:100%;object-fit:contain!important;mix-blend-mode:multiply}
.dc-card-tag{position:absolute;top:13px;left:12px;font-size:10px;font-weight:900;border-radius:7px;padding:6px 8px;background:#ffe4e1;color:#ba261f}
.dc-fav{position:absolute;top:10px;right:10px;height:35px;width:35px;border:1px solid #e0e5e9;border-radius:50%;background:#fffffff0;font-size:24px;line-height:1;color:#919aa5;cursor:pointer}.dc-fav.is-favorite{color:var(--dc-red)}
.dc-product-card .card-body{display:flex;flex:1;flex-direction:column;padding:15px 15px 14px!important;gap:8px!important}.dc-product-card .type-label{font-weight:800;font-size:11px;color:var(--dc-red);text-transform:uppercase;letter-spacing:.04em}.dc-product-card .product-name{font-size:14px!important;line-height:1.4!important;min-height:40px;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dc-product-card .product-taxonomy{font-size:11px;color:#717986;min-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-product-card .code-line{border:0;background:none;padding:0;font-size:11px;color:#7b838c;margin-bottom:2px}.dc-product-card .code-line b{color:#444b55}.dc-product-card .price{font-size:21px;font-weight:900;letter-spacing:-.035em;margin-top:auto}.dc-product-card .price.pending{font-size:13px;color:#737b83;font-weight:700}.dc-product-card .old-price{font-size:12px}
.dc-card-actions{display:grid;gap:6px;margin-top:auto;padding-top:4px}.dc-quick-add{width:100%;min-height:42px;font-size:12px;padding:10px 7px!important}.dc-quick-add:disabled{opacity:.7;cursor:wait}.dc-view-detail{font-size:12px;min-height:35px;border-radius:9px;text-align:center;display:grid;place-items:center;color:#313740;text-decoration:none;font-weight:800;border:1px solid #e4e6e9;background:#f8f9fa}.dc-view-detail:hover{background:#e9edf1}
.dc-mobile-filters{display:none;background:#fff;border:1px solid #e3e6e9;border-radius:9px;padding:10px;font-weight:800}
.dc-detail-more{margin-top:9px;font-size:13px}.dc-detail-more a{color:#d02c24;font-weight:750;text-decoration:none}.dc-related{margin-top:19px}.dc-related h3{font-size:15px;margin:0 0 10px}.dc-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.dc-related-grid a{border:1px solid #e5e9ed;padding:7px;border-radius:10px;text-decoration:none;color:#232830;min-width:0}.dc-related-grid img{height:68px;width:100%;object-fit:contain}.dc-related-grid span{font-size:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dc-floating-cart{position:fixed;right:22px;bottom:22px;z-index:75;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 17px;min-width:70px;border:0;border-radius:45px;background:#e92f26;color:#fff;font-weight:900;cursor:pointer;box-shadow:0 12px 32px #7a1c184d}.dc-floating-cart span{background:#fff;color:#d02c24;padding:4px 7px;min-width:25px;border-radius:18px}.dc-floating-cart span.zero{display:none}
.dc-toast{position:fixed;bottom:85px;right:22px;z-index:105;background:#1a2028;color:#fff;border-radius:11px;padding:13px 17px;font-size:14px;font-weight:700;max-width:calc(100vw - 40px);box-shadow:0 15px 40px #171d253b;opacity:0;pointer-events:none;transform:translateY(12px);transition:.2s}.dc-toast.visible{opacity:1;transform:none}.dc-toast.error{background:#ad2e26}
.dc-cart-scrim{position:fixed;inset:0;background:#151a22aa;z-index:89}.dc-cart-drawer{position:fixed;right:0;top:0;height:100dvh;width:min(440px,100vw);background:#fff;z-index:90;box-shadow:-12px 0 45px #121a2833;transform:translateX(105%);transition:transform .24s;display:flex;flex-direction:column}.dc-cart-drawer.open{transform:none}body.dc-drawer-open{overflow:hidden}.dc-cart-drawer>header{display:flex;align-items:center;justify-content:space-between;padding:21px 20px;border-bottom:1px solid #e4e8ec}.dc-cart-drawer h2{font-size:22px;margin:0}.dc-cart-drawer>header button{background:none;border:0;font-size:30px;cursor:pointer}.dc-cart-drawer>div{overflow:auto;padding:14px 20px;flex:1}.dc-drawer-row{display:flex;align-items:center;gap:13px;padding:12px 0;border-bottom:1px solid #edf0f3}.dc-drawer-row img{width:76px;height:75px;object-fit:contain;background:#f7f8f9;border-radius:10px}.dc-drawer-row>div{flex:1;min-width:0}.dc-drawer-row b{font-size:13px;display:block;line-height:1.35}.dc-drawer-row small{display:block;margin-top:7px;color:#6c7480}.dc-cart-wait,.dc-cart-empty{font-size:14px;color:#5e6771;line-height:1.5}.dc-drawer-total{display:flex;justify-content:space-between;gap:15px;padding:20px 0;font-size:16px}.dc-cart-drawer>footer{padding:20px;border-top:1px solid #e4e8ec;display:grid;gap:12px}.dc-cart-checkout{display:block;text-align:center;background:var(--dc-red);color:#fff;text-decoration:none;padding:14px;border-radius:11px;font-weight:900}.dc-cart-history{text-align:center;color:#606b78;font-size:12px;font-weight:750}
.dc-product-page{font-family:Inter,system-ui,Arial,sans-serif;background:#f5f6f8;color:#1a1d21;margin:0}.dc-product-page>header{padding:18px max(18px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:14px;background:#111318;color:#fff}.dc-product-page>header img{width:165px;height:46px;object-fit:contain;background:white;border-radius:8px;padding:3px}.dc-product-page>header nav{display:flex;gap:18px}.dc-product-page>header a{color:#fff;text-decoration:none}.dc-public-product{width:min(1180px,calc(100% - 30px));margin:35px auto;display:grid;grid-template-columns:1fr 1fr;gap:35px;background:#fff;border:1px solid #e3e7ec;border-radius:20px;padding:30px}.dc-public-image{background:#fafbfc;border-radius:15px;display:grid;place-items:center;min-height:420px}.dc-public-image img{max-width:100%;width:100%;height:420px;object-fit:contain}.dc-public-info{padding:8px}.dc-public-info>span{font-size:12px;color:var(--dc-red);text-transform:uppercase;font-weight:800;letter-spacing:.07em}.dc-public-info h1{font-size:clamp(24px,3vw,39px);letter-spacing:-.04em;line-height:1.13;margin:14px 0}.dc-public-info p{color:#5d6672;font-size:14px}.dc-public-price{font-size:22px;font-weight:850;padding:18px 0}.dc-public-cta{background:var(--dc-red);color:#fff;display:block;text-align:center;text-decoration:none;border-radius:12px;padding:16px;font-weight:900}.dc-public-info h2{font-size:18px;margin-top:35px}.dc-public-description{line-height:1.6;white-space:normal;overflow-wrap:anywhere}.dc-product-page>footer{text-align:center;padding:25px;font-size:12px;color:#697380}
@media(max-width:1200px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:1201px){.catalog-refiner{max-width:300px}.catalog-workspace{grid-template-columns:270px minmax(0,1fr)}}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dc-mobile-filters{display:inline-flex;align-items:center;cursor:pointer}.catalog-refiner{display:none!important}.catalog-refiner.dc-filter-open{display:block!important}.catalog-workspace{display:block!important}.catalog-results{min-width:0}.dc-intro-section{padding:22px!important;align-items:flex-start}.catalog-head{flex-wrap:wrap}}
@media(max-width:620px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.dc-product-card .photo-stage{height:152px!important;min-height:152px!important;padding:9px!important}.dc-product-card .card-body{padding:11px 9px!important;gap:6px!important}.dc-product-card .product-name{font-size:12px!important;min-height:34px}.dc-product-card .type-label{font-size:10px}.dc-product-card .price{font-size:16px}.dc-product-card .code-line{font-size:10px;overflow-wrap:anywhere}.dc-quick-add{min-height:39px;font-size:11px}.dc-view-detail{font-size:11px}.dc-intro-section{flex-direction:column;gap:17px}.dc-intro-copy h2{font-size:23px}.dc-sort-label{font-size:12px}.dc-sort-label select{max-width:138px;font-size:11px}.dc-floating-cart{bottom:14px;right:14px;padding:12px}.dc-related-grid img{height:46px}.dc-related-grid span{font-size:9px}.dc-public-product{grid-template-columns:1fr;margin-top:15px;padding:14px;gap:10px}.dc-public-image{min-height:260px}.dc-public-image img{height:300px}}
.dc-confirm-payment{margin:18px 0;padding:18px;border:1px solid #f2d5ba;border-radius:14px;background:#fff9f2}.dc-confirm-payment h3{margin:0 0 6px;font-size:18px}.dc-confirm-payment p{font-size:13px;color:#6a5b4b;margin:0 0 13px}.dc-pay-ready{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#f0faf4;border:1px solid #c9ebd6;border-radius:12px;padding:14px 18px;margin-top:13px}.dc-pay-ready strong{color:#19643d}.dc-pay-ready p{font-size:13px;margin:5px 0 0;color:#405b4b}@media(max-width:600px){.dc-pay-ready{flex-direction:column;align-items:stretch}}
