/* StoreWax Mobile Store — moderno, minimalista, fondo blanco */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f5f5f7;color:#111827;min-height:100vh;overflow-x:hidden;font-size:15px;line-height:1.5}
img{max-width:100%;display:block}
button,input,select,textarea{font-family:inherit}
a{color:inherit;text-decoration:none}

:root{
  --ms-bg:#ffffff;
  --ms-surface:#ffffff;
  --ms-surface-2:#f5f5f7;
  --ms-border:#e5e7eb;
  --ms-text:#111827;
  --ms-muted:#6b7280;
  --ms-primary:#7c3aed;
  --ms-primary-dark:#6d28d9;
  --ms-success:#10b981;
  --ms-danger:#ef4444;
  --ms-warning:#f59e0b;
  --ms-radius:18px;
  --ms-radius-sm:14px;
  --ms-shadow:0 2px 12px rgba(0,0,0,.06);
  --ms-shadow-sm:0 1px 4px rgba(0,0,0,.05);
}

.ms-app{
  max-width:480px;
  margin:0 auto;
  min-height:100vh;
  background:var(--ms-bg);
  position:relative;
  padding-bottom:88px;
}

/* Header */
.ms-header{
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--ms-border);
  padding:12px 16px;
  display:flex;
  align-items:center;
  gap:12px;
}
.ms-back{
  width:38px;
  height:38px;
  border-radius:50%;
  background:var(--ms-surface-2);
  border:none;
  color:var(--ms-text);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:20px;
}
.ms-title{
  flex:1;
  min-width:0;
}
.ms-title h1{
  font-size:17px;
  font-weight:700;
  color:var(--ms-text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ms-title p{
  font-size:12px;
  color:var(--ms-muted);
}

/* Store hero */
.ms-hero{
  background:var(--ms-surface-2);
  padding:20px 16px 24px;
  text-align:left;
}
.ms-hero h2{
  font-size:28px;
  font-weight:800;
  color:var(--ms-text);
  letter-spacing:-.03em;
  line-height:1.15;
  margin-bottom:6px;
}
.ms-hero p{
  font-size:15px;
  color:var(--ms-muted);
}

/* Search */
.ms-search{
  padding:14px 16px;
  background:var(--ms-bg);
}
.ms-search form{
  display:flex;
  gap:8px;
  align-items:center;
}
.ms-search input{
  flex:1;
  background:var(--ms-surface-2);
  border:1px solid var(--ms-border);
  border-radius:var(--ms-radius);
  padding:13px 16px 13px 42px;
  font-size:15px;
  color:var(--ms-text);
  outline:none;
  position:relative;
}
.ms-search input:focus{border-color:var(--ms-primary);box-shadow:0 0 0 3px rgba(124,58,237,.1)}
.ms-search .ms-icon-search{
  position:absolute;
  left:30px;
  color:var(--ms-muted);
  font-size:20px;
  pointer-events:none;
}
.ms-search select{
  background:var(--ms-surface-2);
  border:1px solid var(--ms-border);
  border-radius:var(--ms-radius);
  padding:13px 12px;
  font-size:14px;
  color:var(--ms-text);
  min-width:120px;
}

/* Section label */
.ms-section{
  padding:20px 16px 10px;
  font-size:13px;
  font-weight:700;
  color:var(--ms-muted);
  text-transform:uppercase;
  letter-spacing:.05em;
}

/* Product card */
.ms-products{
  padding:0 16px 24px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.ms-product{
  background:var(--ms-surface);
  border:1px solid var(--ms-border);
  border-radius:var(--ms-radius);
  overflow:hidden;
  box-shadow:var(--ms-shadow-sm);
  display:flex;
  flex-direction:column;
}
.ms-product-thumb{
  width:100%;
  aspect-ratio:1 / 1;
  background:var(--ms-surface-2);
  object-fit:cover;
  position:relative;
}
.ms-product-thumb .ms-noimg{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--ms-muted);
  font-size:48px;
}
.ms-product-badge{
  position:absolute;
  top:8px;
  left:8px;
  background:var(--ms-danger);
  color:#fff;
  font-size:10px;
  font-weight:700;
  padding:3px 7px;
  border-radius:12px;
}
.ms-product-body{
  padding:16px;
  flex:1;
  display:flex;
  flex-direction:column;
}
.ms-product-name{
  font-size:17px;
  font-weight:700;
  color:var(--ms-text);
  margin-bottom:4px;
  line-height:1.25;
}
.ms-product-desc{
  font-size:14px;
  color:var(--ms-muted);
  margin-bottom:10px;
  line-height:1.4;
  display:-webkit-box;
  -webkit-line-clamp:2;
  line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ms-product-cats{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.ms-tag{
  background:var(--ms-surface-2);
  color:var(--ms-muted);
  font-size:12px;
  font-weight:600;
  padding:4px 10px;
  border-radius:20px;
}
.ms-product-price{
  font-size:22px;
  font-weight:800;
  color:var(--ms-primary);
  margin-bottom:14px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.ms-product-price .ms-old{
  font-size:13px;
  color:var(--ms-muted);
  text-decoration:line-through;
  font-weight:500;
  display:block;
}
.ms-product-stock{
  font-size:13px;
  font-weight:600;
  margin-bottom:14px;
}
.ms-in{color:var(--ms-success)}
.ms-out{color:var(--ms-danger)}
.ms-product-actions{
  display:flex;
  gap:10px;
  margin-top:auto;
}

/* Buttons */
.ms-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:none;
  border-radius:var(--ms-radius);
  padding:14px 20px;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  transition:all .15s;
  text-align:center;
}
.ms-btn:active{transform:scale(.98)}
.ms-btn-primary{background:var(--ms-primary);color:#fff;box-shadow:0 4px 14px rgba(124,58,237,.25)}
.ms-btn-primary:active{background:var(--ms-primary-dark)}
.ms-btn-ghost{background:var(--ms-surface-2);color:var(--ms-text);border:1px solid var(--ms-border)}
.ms-btn-ghost:active{background:var(--ms-border)}
.ms-btn-success{background:#25D366;color:#fff}
.ms-btn-success:active{background:#1da851}
.ms-btn-danger{background:var(--ms-danger);color:#fff}
.ms-btn-sm{padding:10px 14px;font-size:13px;border-radius:var(--ms-radius-sm)}
.ms-btn-block{width:100%}

/* Product detail */
.ms-detail{
  padding:0 0 100px;
}
.ms-gallery{
  background:var(--ms-surface-2);
  position:relative;
}
.ms-gallery-main{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  background:var(--ms-surface-2);
}
.ms-gallery-thumbs{
  display:flex;
  gap:8px;
  padding:10px 16px;
  overflow-x:auto;
}
.ms-gallery-thumbs button{
  width:64px;
  height:64px;
  border-radius:12px;
  overflow:hidden;
  border:2px solid var(--ms-border);
  background:#fff;
  flex-shrink:0;
  padding:0;
  cursor:pointer;
}
.ms-gallery-thumbs button.active{border-color:var(--ms-primary)}
.ms-gallery-thumbs img{width:100%;height:100%;object-fit:cover}
.ms-detail-body{
  padding:20px 16px;
}
.ms-detail-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.ms-detail-name{font-size:26px;font-weight:800;color:var(--ms-text);letter-spacing:-.02em;line-height:1.15;margin-bottom:6px}
.ms-detail-price{font-size:28px;font-weight:800;color:var(--ms-primary);margin-bottom:8px}
.ms-detail-price .ms-old{font-size:16px;color:var(--ms-muted);font-weight:500;text-decoration:line-through;margin-left:8px}
.ms-detail-desc{font-size:15px;color:var(--ms-muted);margin:16px 0;line-height:1.6}
.ms-detail-section{font-size:13px;font-weight:700;color:var(--ms-muted);text-transform:uppercase;letter-spacing:.05em;margin:22px 0 10px}
.ms-variant-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.ms-variant-label input{position:absolute;opacity:0}
.ms-variant-card{
  border:2px solid var(--ms-border);
  border-radius:var(--ms-radius-sm);
  padding:12px;
  text-align:left;
  display:block;
  cursor:pointer;
  transition:all .15s;
  background:#fff;
}
.ms-variant-label input:checked + .ms-variant-card,
.ms-variant-label input:hover + .ms-variant-card{
  border-color:var(--ms-primary);
  background:rgba(124,58,237,.04);
}
.ms-variant-label input:disabled + .ms-variant-card{
  opacity:.45;
  cursor:not-allowed;
  border-color:var(--ms-border);
  background:var(--ms-surface-2);
}
.ms-variant-title{font-weight:700;font-size:14px}
.ms-variant-note{font-size:12px;color:var(--ms-muted);margin-top:2px}

/* Cart */
.ms-cart-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  border-bottom:1px solid var(--ms-border);
  background:var(--ms-surface);
}
.ms-cart-item img{
  width:66px;
  height:66px;
  border-radius:14px;
  object-fit:cover;
  background:var(--ms-surface-2);
}
.ms-cart-info{flex:1;min-width:0}
.ms-cart-name{font-size:15px;font-weight:700;color:var(--ms-text);margin-bottom:2px}
.ms-cart-meta{font-size:13px;color:var(--ms-muted)}
.ms-cart-qty{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:8px;
}
.ms-qty-btn{
  width:32px;
  height:32px;
  border-radius:10px;
  border:1px solid var(--ms-border);
  background:#fff;
  color:var(--ms-text);
  font-size:18px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.ms-qty-btn:active{background:var(--ms-surface-2)}
.ms-qty-num{font-size:16px;font-weight:700;min-width:24px;text-align:center}
.ms-cart-price{font-size:16px;font-weight:800;color:var(--ms-text);text-align:right}
.ms-cart-remove{
  width:40px;
  height:40px;
  border:none;
  background:transparent;
  color:var(--ms-danger);
  font-size:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

/* Checkout */
.ms-form .ms-label{
  display:block;
  font-size:13px;
  font-weight:700;
  color:var(--ms-muted);
  margin-bottom:6px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ms-form input,
.ms-form select{
  width:100%;
  border:1px solid var(--ms-border);
  border-radius:var(--ms-radius-sm);
  padding:14px 16px;
  font-size:15px;
  color:var(--ms-text);
  outline:none;
  background:#fff;
  margin-bottom:4px;
}
.ms-form input:focus{border-color:var(--ms-primary);box-shadow:0 0 0 3px rgba(124,58,237,.1)}
.ms-error{font-size:12px;color:var(--ms-danger);min-height:18px}
.ms-summary{
  background:var(--ms-surface-2);
  border-radius:var(--ms-radius);
  padding:16px;
  margin-top:20px;
}
.ms-summary-row{display:flex;justify-content:space-between;font-size:15px;padding:8px 0}
.ms-summary-total{
  display:flex;
  justify-content:space-between;
  font-size:20px;
  font-weight:800;
  border-top:1px solid var(--ms-border);
  padding-top:12px;
  margin-top:8px;
}
.ms-coupon{
  display:flex;
  gap:8px;
  margin-bottom:16px;
}
.ms-coupon input{flex:1;text-transform:uppercase}
.ms-coupon .ms-msg{font-size:13px;margin-top:4px}

/* Bottom bar */
.ms-bottom{
  position:fixed;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:100%;
  max-width:480px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  border-top:1px solid var(--ms-border);
  padding:12px 16px 22px;
  z-index:50;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.ms-bottom .ms-total{font-size:18px;font-weight:800;color:var(--ms-text)}
.ms-bottom .ms-total span{display:block;font-size:13px;color:var(--ms-muted);font-weight:500}
.ms-bottom-nav{
  display:flex;
  justify-content:space-around;
  align-items:center;
  width:100%;
}
.ms-bottom-nav a{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  font-size:11px;
  font-weight:600;
  color:var(--ms-muted);
}
.ms-bottom-nav a.active{color:var(--ms-primary)}
.ms-bottom-nav i{font-size:22px}

/* Alerts */
.ms-alert{
  border-radius:var(--ms-radius-sm);
  padding:12px 16px;
  margin:16px;
  font-size:14px;
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.ms-alert-success{background:#d1fae5;color:#065f46}
.ms-alert-danger{background:#fee2e2;color:#991b1b}

/* Empty state */
.ms-empty{
  text-align:center;
  padding:60px 24px;
  color:var(--ms-muted);
}
.ms-empty i{font-size:56px;margin-bottom:16px;color:var(--ms-border)}
.ms-empty h3{font-size:18px;font-weight:700;color:var(--ms-text);margin-bottom:6px}

/* Custom buttons store */
.ms-custom-buttons{display:flex;flex-direction:row;gap:12px;flex-wrap:wrap;margin:12px 0 0}
.ms-custom-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:1 1 calc(50% - 6px);
  min-width:140px;
  padding:14px;
  border-radius:var(--ms-radius);
  font-weight:700;
  font-size:14px;
  text-align:center;
}

/* Misc */
.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}
.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}
.ms-variant-card.active-variant{border-color:var(--ms-primary);background:rgba(124,58,237,.04)}
.hidden{display:none}
@keyframes ti-spin{to{transform:rotate(360deg)}}
.ti-spin{animation:ti-spin 1s linear infinite;display:inline-block}
@media(min-width:640px){.ms-app{border-left:1px solid var(--ms-border);border-right:1px solid var(--ms-border)}}

/* Modern product detail */
.ms-product-page{background:var(--ms-surface-2);padding-bottom:80px}
.ms-product-header{
  position:sticky;
  top:0;
  z-index:40;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--ms-border);
}
.ms-product-header .ms-brand{font-size:20px;font-weight:800;color:var(--ms-text);display:flex;align-items:center;gap:10px}
.ms-product-header .ms-brand-logo{width:34px;height:34px;background:var(--ms-primary);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}
.ms-product-header .ms-actions{display:flex;align-items:center;gap:14px}
.ms-product-header .ms-actions a{color:var(--ms-text);font-size:24px;position:relative}

/* Carousel */
.ms-carousel{position:relative;padding:20px 0;background:var(--ms-surface-2)}
.ms-carousel-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0 32px;-ms-overflow-style:none;scrollbar-width:none}
.ms-carousel-track::-webkit-scrollbar{display:none}
.ms-carousel-slide{flex:0 0 100%;scroll-snap-align:center;border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--ms-shadow);position:relative}
.ms-carousel-slide img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block}
.ms-carousel-slide iframe{width:100%;aspect-ratio:1 / 1;display:block}
.ms-carousel-slide:first-child{margin-left:0}
.ms-carousel-slide:last-child{margin-right:0}
.ms-carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:16px}
.ms-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;transition:all .2s}
.ms-dot.active{width:22px;border-radius:10px;background:var(--ms-primary)}

/* Detail card */
.ms-detail-card{
  background:#fff;
  border-radius:28px 28px 0 0;
  margin-top:-20px;
  padding:24px 16px 100px;
  box-shadow:0 -4px 24px rgba(0,0,0,.06);
  position:relative;
  z-index:2;
}
.ms-detail-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}
.ms-detail-title{font-size:26px;font-weight:800;color:var(--ms-text);line-height:1.15;flex:1}
.ms-share-btn{width:44px;height:44px;border-radius:50%;background:var(--ms-surface-2);border:none;display:flex;align-items:center;justify-content:center;color:var(--ms-text);font-size:20px;cursor:pointer;flex-shrink:0}

/* Price block */
.ms-price-block{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.ms-price{font-size:32px;font-weight:800;color:var(--ms-text);letter-spacing:-.03em}
.ms-price-old{font-size:18px;color:var(--ms-muted);text-decoration:line-through;font-weight:500}
.ms-discount-badge{background:#fee2e2;color:#991b1b;font-size:13px;font-weight:800;padding:5px 10px;border-radius:10px}
.ms-savings{font-size:15px;color:#059669;font-weight:700;margin-bottom:16px}
.ms-stock{display:inline-flex;align-items:center;gap:6px;background:#d1fae5;color:#065f46;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:700;margin-bottom:18px}

/* Accordions */
.ms-accordion{border:1px solid var(--ms-border);border-radius:var(--ms-radius);margin-bottom:14px;background:#fff;overflow:hidden}
.ms-accordion summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px;
  font-weight:700;
  font-size:15px;
  color:var(--ms-text);
  cursor:pointer;
}
.ms-accordion summary::-webkit-details-marker{display:none}
.ms-accordion summary i{transition:transform .2s}
.ms-accordion[open] summary i{transform:rotate(180deg)}
.ms-accordion-body{padding:0 16px 16px;color:var(--ms-muted);font-size:15px;line-height:1.6}
.ms-accordion--out{margin:0 16px 14px}
.ms-accordion-body .ms-custom-btn{margin-bottom:8px}

/* Action buttons */
.ms-actions{display:flex;flex-direction:column;gap:12px;margin:24px 0 8px}
.ms-btn-cart{background:#2563eb;color:#fff;box-shadow:0 6px 16px rgba(37,99,235,.25)}
.ms-btn-cart:active{background:#1d4ed8}
.ms-btn-wa{background:#25D366;color:#fff;box-shadow:0 6px 16px rgba(37,211,102,.25)}
.ms-btn-wa:active{background:#1da851}
.ms-btn-back{background:#e5e7eb;color:#374151}
.ms-btn-back:active{background:#d1d5db}

/* Related products */
.ms-related{padding:16px;background:var(--ms-surface-2);border-top:1px solid var(--ms-border)}
.ms-related-title{font-size:18px;font-weight:800;color:var(--ms-text);margin-bottom:14px;padding:0 4px}
.ms-related-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px;-ms-overflow-style:none;scrollbar-width:none}
.ms-related-track::-webkit-scrollbar{display:none}
.ms-related-card{flex:0 0 150px;scroll-snap-align:start;background:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--ms-shadow-sm);display:flex;flex-direction:column}
.ms-related-card img{width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--ms-surface-2)}
.ms-related-card .ms-info{padding:12px;flex:1;display:flex;flex-direction:column}
.ms-related-card .ms-name{font-size:14px;font-weight:700;color:var(--ms-text);line-height:1.2;margin-bottom:6px}
.ms-related-card .ms-price{font-size:15px;font-weight:800;color:var(--ms-primary);display:flex;align-items:center;gap:4px;flex-wrap:nowrap;overflow:hidden}
.ms-related-card .ms-old{font-size:12px;color:var(--ms-muted);text-decoration:line-through;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Promo banner */
.ms-promo-banner{
  background:linear-gradient(135deg,#fee2e2,#fff);
  border:1px solid #fecaca;
  border-radius:var(--ms-radius);
  padding:16px;
  margin:16px 0 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
}
.ms-promo-text{flex:1}
.ms-promo-title{font-size:18px;font-weight:800;color:#991b1b;margin-bottom:4px}
.ms-promo-desc{font-size:14px;color:#7f1d1d;line-height:1.35}
.ms-promo-link{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-weight:700;color:#dc2626;font-size:14px}
.ms-promo-pill{background:#ef4444;color:#fff;border-radius:16px;padding:10px 14px;text-align:center;min-width:80px;flex-shrink:0}
.ms-promo-pct{font-size:26px;font-weight:800;display:block;line-height:1}
.ms-promo-label{font-size:11px;font-weight:600;display:block}

/* Credit simulator */
.ms-btn-credit{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff}
.ms-cs-head{background:#f8f9fb;border-radius:var(--ms-radius);padding:14px;margin-bottom:12px}
.ms-cs-head h3{font-size:18px;font-weight:800;color:var(--ms-text);margin-bottom:4px}
.ms-cs-head p{font-size:14px;color:var(--ms-muted)}
.ms-cs-form{display:flex;flex-direction:column;gap:10px}
.ms-cs-info{background:#fff;border:1px solid var(--ms-border);border-radius:12px;padding:14px;margin:14px 0}
.ms-cs-info-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #f3f4f6;font-size:14px}
.ms-cs-info-row:last-child{border-bottom:none}
.ms-cs-info-row span{color:var(--ms-muted)}
.ms-cs-info-row strong{color:var(--ms-text);font-weight:700}
.ms-cs-charges{margin-top:6px}
.ms-cs-charge-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:13px;border-bottom:1px dashed #e5e7eb}
.ms-cs-charge-row:last-child{border-bottom:none}
.ms-cs-charge-row span{color:var(--ms-muted)}
.ms-cs-charge-row strong{color:var(--ms-text);font-weight:600}
.ms-cs-charge-empty{font-size:13px;color:var(--ms-muted);padding:6px 0}
.ms-cs-field{display:flex;flex-direction:column;gap:4px}
.ms-cs-field label{font-size:13px;font-weight:600;color:var(--ms-muted)}
.ms-cs-field input,.ms-cs-field select{padding:10px 12px;border:1px solid var(--ms-border);border-radius:12px;background:#f8f9fb;font-size:15px;color:var(--ms-text)}
.ms-cs-results{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0}
.ms-cs-result{background:#fff;border:1px solid var(--ms-border);border-radius:12px;padding:10px;text-align:center}
.ms-cs-result span{display:block;font-size:12px;color:var(--ms-muted);margin-bottom:2px}
.ms-cs-result strong{font-size:16px;color:var(--ms-primary);font-weight:800}
.ms-cs-result.cs-main{grid-column:1/-1;background:linear-gradient(135deg,#d1fae5,#fff);border-color:#86efac}
.ms-cs-result.cs-main strong{font-size:20px}
.ms-cs-table summary{font-weight:700;color:var(--ms-primary);cursor:pointer;font-size:14px;padding:10px 0}
.ms-cs-table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--ms-border);border-radius:12px;padding:10px}
.ms-cs-table table{width:100%;border-collapse:collapse;font-size:12px}
.ms-cs-table th,.ms-cs-table td{padding:6px 4px;text-align:right;border-bottom:1px solid var(--ms-border)}
.ms-cs-table th{color:var(--ms-muted);font-weight:600;text-align:right}
.ms-cs-table td:first-child,.ms-cs-table th:first-child{text-align:left}
.ms-cs-table tr:last-child td{border-bottom:none}

/* Bottom nav product */
.ms-bottom-product{
  display:flex;
  justify-content:space-around;
  width:100%;
}
.ms-bottom-product a{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  font-size:11px;
  font-weight:600;
  color:var(--ms-muted);
}
.ms-bottom-product a.active{color:var(--ms-primary)}
.ms-bottom-product i{font-size:24px}

/* ===== Mejoras visuales ===== */
.ms-product-badge{
  position:absolute;
  top:8px;
  right:8px;
  left:auto;
  z-index:5;
  background:linear-gradient(135deg, #ff4d6d 0%, #ff8a5b 100%);
  color:#fff;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.04em;
  padding:5px 11px;
  border-radius:999px;
  box-shadow:0 4px 12px rgba(255,77,109,0.35), 0 1px 2px rgba(0,0,0,0.1);
  border:1px solid rgba(255,255,255,0.3);
}
.ms-product-price{
  align-items:flex-start;
  flex-direction:column;
  gap:4px;
}
.ms-product-price .ms-old,
.ms-detail-price .ms-old,
.ms-related-card .ms-old{
  font-size:13px;
  color:#6b7280;
  text-decoration:line-through;
  font-weight:500;
  order:2;
}
.ms-product-thumb .ms-noimg{
  background:linear-gradient(135deg,#f9fafb,#f3f4f6);
  color:#d1d5db;
  font-size:36px;
}
.ms-product-thumb .ms-noimg::after{
  content:'Imagen no disponible';
  display:block;
  font-size:12px;
  color:#9ca3af;
  margin-top:8px;
  font-weight:500;
}
.ms-card,.ms-product-card,.ms-related-card,.ms-detail-card,.ms-promo-banner{
  box-shadow:0 2px 8px rgba(0,0,0,.06);
  border-radius:16px;
}
.ms-card,.ms-product-card,.ms-related-card{
  overflow:hidden;
}
.ms-product-name{
  font-size:18px;
  font-weight:800;
  letter-spacing:-.01em;
}
.ms-product-desc{
  color:#6b7280;
}
.ms-product-stock.ms-in{color:#047857;background:#d1fae5}
.ms-product-stock.ms-out{color:#b91c1c;background:#fee2e2}
.ms-btn{transition:transform .08s ease,box-shadow .08s ease}
.ms-btn:active{transform:scale(.97)}
.ms-bottom-product a{min-width:44px;min-height:44px}
.ms-price-block{gap:8px 14px}
.ms-price{font-size:34px;letter-spacing:-.03em}
.ms-price-old{font-size:16px;color:#6b7280}
.ms-discount-badge{background:#fff7ed;color:#92400e;border:1px solid #fcd34d}
.ms-pdp-header{
  position:sticky;
  top:0;
  z-index:30;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 16px;
  border-bottom:1px solid var(--ms-border);
}
.ms-pdp-header .ms-back{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ms-surface-2)}
.ms-pdp-header .ms-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.ms-toast{
  position:fixed;
  bottom:90px;
  left:50%;
  transform:translateX(-50%) translateY(20px);
  background:#1f2937;
  color:#fff;
  padding:12px 20px;
  border-radius:12px;
  font-size:14px;
  font-weight:600;
  box-shadow:0 4px 12px rgba(0,0,0,.2);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
  z-index:100;
}
.ms-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.ms-chip{display:inline-flex;align-items:center;padding:8px 16px;background:#fff;border:1px solid var(--ms-border);border-radius:999px;font-size:14px;font-weight:600;color:var(--ms-text);cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease}
.ms-chip.active,.ms-chip:hover{background:var(--ms-primary);color:#fff;border-color:var(--ms-primary)}
.ms-variant-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:44px;
  padding:0 16px;
  border:1px solid var(--ms-border);
  border-radius:12px;
  background:#fff;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  transition:all .1s ease;
}
.ms-variant-chip.active{border-color:var(--ms-primary);background:#eff6ff;color:var(--ms-primary);box-shadow:0 0 0 2px rgba(59,130,246,.2)}
.ms-carousel-wrap{position:relative}
.ms-carousel-arrows{position:absolute;inset:0;pointer-events:none;display:flex;justify-content:space-between;align-items:center;padding:0 8px;z-index:5}
.ms-carousel-arrows button{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.85);border:none;box-shadow:0 2px 6px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;color:var(--ms-text);font-size:20px;pointer-events:auto}
.ms-dot{transition:background .2s ease,border-color .2s ease}
.ms-dot.active{background:var(--ms-primary);border-color:var(--ms-primary);transform:scale(1.2)}
@keyframes ms-skeleton{0%{background-position:200% 0}100%{background-position:-200% 0}}
.ms-skeleton{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%);background-size:200% 100%;animation:ms-skeleton 1.5s infinite linear;border-radius:12px}
.msh-150{height:150px}.msh-200{height:200px}.msh-260{height:260px}
.ms-progress{display:flex;align-items:center;gap:8px;margin:16px 0}
.ms-progress-step{flex:1;text-align:center;font-size:12px;font-weight:600;color:var(--ms-muted);padding:8px 4px;border-bottom:2px solid var(--ms-border)}
.ms-progress-step.active{color:var(--ms-primary);border-bottom-color:var(--ms-primary)}
.ms-progress-step.done{color:var(--ms-text);border-bottom-color:var(--ms-primary)}
.ms-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ms-cta-row .ms-btn-block{display:flex;align-items:center;justify-content:center;gap:6px;width:100%}
.ms-products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ms-products-grid .ms-related-card{scroll-snap-align:unset;flex:none;background:var(--ms-surface);border:1px solid var(--ms-border);box-shadow:0 2px 6px rgba(0,0,0,.05);border-radius:16px}
.ms-social{padding:28px 16px 90px;text-align:center;background:var(--ms-surface-2);border-top:1px solid var(--ms-border)}
.ms-social-title{font-size:14px;font-weight:700;color:var(--ms-muted);margin-bottom:14px;letter-spacing:.02em}
.ms-social-links{display:flex;justify-content:center;gap:18px}
.ms-social-link{width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--ms-border);display:flex;align-items:center;justify-content:center;color:var(--ms-text);font-size:22px;box-shadow:0 2px 6px rgba(0,0,0,.06);transition:transform .1s ease}
.ms-social-link:active{transform:scale(.93);background:var(--ms-surface)}


.ms-products--3col{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.ms-products--1col{display:flex;flex-direction:column;gap:14px;}
.ms-product.is-hidden{display:none !important;}
.ms-view-controls .ms-view-btn{background:var(--ms-surface);border:1px solid var(--ms-border);border-radius:8px;padding:4px 10px;font-size:13px;font-weight:600;color:var(--ms-muted);cursor:pointer;}
.ms-view-controls .ms-view-btn.active{background:var(--ms-primary);color:#fff;border-color:var(--ms-primary);}
.ms-products--3col .ms-product{border-radius:16px;box-shadow:0 2px 6px rgba(0,0,0,.05);overflow:hidden;}
.ms-products--3col .ms-product .ms-product-body{padding:8px !important;}
.ms-products--3col .ms-product .ms-product-desc,.ms-products--3col .ms-product .ms-product-cats,.ms-products--3col .ms-product .ms-product-stock,.ms-products--3col .ms-product .ms-product-actions{display:none !important;}
.ms-products--3col .ms-product .ms-product-thumb .ms-noimg::after{display:none !important;}
.ms-products--3col .ms-product .ms-product-name{font-size:13px !important;font-weight:700;margin-bottom:2px;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;max-width:100%;}
.ms-products--3col .ms-product .ms-product-price{font-size:13px !important;display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:2px !important;line-height:1.2 !important;}
.ms-products--3col .ms-product .ms-product-price .ms-old{font-size:10px !important;display:block !important;}
