/* MERAKI WORLD - UI experto v2
   Refuerza menú admin, slider comercial y tarjetas de producto. */
:root{
  --mw-purple:#3d2b62;
  --mw-pink:#e94c98;
  --mw-lila:#b678f4;
  --mw-cyan:#83e2ee;
  --mw-cream:#fff7fc;
  --mw-shadow:0 18px 44px rgba(61,43,98,.14);
}

/* ===== Header / menú administrador compacto ===== */
.mw-top-account-menu{
  width:min(92vw,430px)!important;
  max-height:calc(100dvh - 108px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  padding:14px!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:28px!important;
  background:linear-gradient(145deg,rgba(239,87,159,.94) 0%,rgba(190,104,244,.92) 48%,rgba(127,220,237,.9) 100%)!important;
  box-shadow:0 26px 64px rgba(61,43,98,.28)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  scrollbar-width:thin;
}
.mw-top-account-menu::-webkit-scrollbar{width:7px}.mw-top-account-menu::-webkit-scrollbar-thumb{background:rgba(255,255,255,.48);border-radius:999px}
.mw-top-account-menu .dropdown-divider{border-color:rgba(255,255,255,.38);margin:.7rem 0!important;}
.mw-admin-menu-head{
  list-style:none!important;
  margin:0 0 10px!important;
  padding:12px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.17)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  color:#fff!important;
}
.mw-admin-menu-head strong{display:block;font-size:1.05rem;line-height:1.15;font-weight:950;color:#fff!important;text-shadow:0 1px 10px rgba(61,43,98,.18)}
.mw-admin-menu-head small{display:block;margin-top:3px;color:rgba(255,255,255,.88);font-weight:750;line-height:1.25}
.mw-admin-menu-head .mw-admin-menu-pill{display:inline-flex;gap:.35rem;align-items:center;margin-top:8px;background:rgba(255,255,255,.22);border-radius:999px;padding:.35rem .7rem;font-weight:900;font-size:.78rem;color:#fff;}
.mw-admin-shortcuts,
.mw-admin-group{
  list-style:none!important;
  margin:0 0 11px!important;
  padding:0!important;
}
.mw-admin-group-title{
  display:flex;
  align-items:center;
  gap:.45rem;
  margin:7px 4px 8px!important;
  color:rgba(255,255,255,.92)!important;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.73rem;
  font-weight:950;
}
.mw-admin-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.mw-admin-grid.one{grid-template-columns:1fr;}
.mw-admin-card-link{
  min-height:64px;
  display:flex!important;
  align-items:center!important;
  gap:.7rem!important;
  padding:.76rem .82rem!important;
  border-radius:18px!important;
  color:var(--mw-purple)!important;
  font-weight:950!important;
  line-height:1.12!important;
  text-decoration:none!important;
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  box-shadow:0 10px 22px rgba(61,43,98,.10)!important;
  white-space:normal!important;
}
.mw-admin-card-link i{
  width:34px;height:34px;min-width:34px;border-radius:13px;display:grid;place-items:center;
  color:#fff!important;background:linear-gradient(135deg,var(--mw-pink),var(--mw-lila));box-shadow:0 8px 18px rgba(219,77,158,.24);
}
.mw-admin-card-link small{display:block;font-size:.72rem;color:#7a6a8f;font-weight:800;margin-top:2px;}
.mw-admin-card-link:hover,
.mw-admin-card-link:focus{background:#fff!important;transform:translateY(-1px);box-shadow:0 14px 26px rgba(61,43,98,.17)!important;}
.mw-admin-card-link.primary{
  min-height:70px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,245,252,.88))!important;
}
.mw-admin-card-link.danger i{background:linear-gradient(135deg,#f43f5e,#d946ef)!important;}
.mw-admin-card-link.tools i{background:linear-gradient(135deg,#22c1dc,#8b5cf6)!important;}
.mw-top-account-menu .text-danger{color:#b91c45!important;}
@media(max-width:575.98px){
  .mw-top-account-menu{width:calc(100vw - 34px)!important;max-height:calc(100dvh - 112px)!important;right:10px!important;left:auto!important;padding:12px!important;border-radius:26px!important;}
  .mw-admin-grid{gap:8px;}
  .mw-admin-card-link{min-height:58px;padding:.68rem .7rem!important;font-size:.88rem!important;border-radius:17px!important;}
  .mw-admin-card-link i{width:30px;height:30px;min-width:30px;border-radius:12px;font-size:.95rem;}
  .mw-admin-card-link small{display:none;}
}
@media(max-width:360px){.mw-admin-grid{grid-template-columns:1fr}.mw-top-account-menu{width:calc(100vw - 20px)!important;}}

/* ===== Slider comercial mejorado ===== */
.mw-shop-home{max-width:1180px!important;}
.mw-promo-shell{
  background:linear-gradient(135deg,#fff0fa 0%,#f4efff 48%,#e9fffc 100%)!important;
  border-radius:34px!important;
  border:1px solid rgba(255,255,255,.74)!important;
  box-shadow:0 18px 54px rgba(61,43,98,.11)!important;
}
.mw-promo-card{
  background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(255,244,252,.65),rgba(231,253,255,.68))!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 18px 42px rgba(61,43,98,.09)!important;
  border-radius:34px!important;
}
.mw-promo-image{
  background:radial-gradient(circle at 25% 12%,#fff 0,#fff7fb 36%,#f5edff 68%,#e8fffb 100%)!important;
  border:1px solid rgba(255,255,255,.84)!important;
  box-shadow:0 18px 46px rgba(61,43,98,.12)!important;
}
.mw-promo-image a{background:linear-gradient(135deg,#fff,#fff5fb,#effcff)!important;}
.mw-promo-image img{object-fit:contain!important;filter:saturate(1.04) contrast(1.01);}
.mw-promo-info h1,.mw-promo-info h2{color:var(--mw-purple)!important;text-shadow:0 2px 12px rgba(255,255,255,.8)!important;}
.mw-promo-price{color:var(--mw-pink)!important;}
.mw-promo-actions .btn{background:linear-gradient(135deg,#ef4f9a 0%,#b978f4 100%)!important;color:#fff!important;}
.carousel-indicators.mw-promo-dots{position:static;margin:.8rem 0 0;gap:6px;}
.carousel-indicators.mw-promo-dots button{width:9px;height:9px;border-radius:999px;background:#d8b4fe;border:0;opacity:.55;}
.carousel-indicators.mw-promo-dots button.active{width:24px;opacity:1;background:linear-gradient(90deg,var(--mw-pink),var(--mw-lila));}
@media(max-width:575.98px){
  .mw-promo-shell{border-radius:0 0 28px 28px!important;padding:.8rem!important;}
  .mw-promo-image{height:380px!important;min-height:380px!important;border-radius:30px!important;}
  .mw-promo-info h1,.mw-promo-info h2{font-size:1.18rem!important;}
}
@media(max-width:390px){.mw-promo-image{height:335px!important;min-height:335px!important;}}

/* ===== Catálogo tipo tarjetas pro ===== */
.mw-products-grid{
  --bs-gutter-x:.95rem;
  --bs-gutter-y:1rem;
  align-items:stretch;
}
.mw-product-col{display:flex!important;}
.product-card.mw-shop-card,
.mw-product-card.mw-shop-card{
  position:relative!important;
  width:100%!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:30px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fff8fc 100%)!important;
  box-shadow:0 14px 34px rgba(61,43,98,.10)!important;
  transition:transform .18s ease, box-shadow .18s ease!important;
}
.product-card.mw-shop-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(61,43,98,.16)!important;}
.mw-card-badge{
  position:absolute!important;left:14px!important;top:14px!important;z-index:4!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:32px!important;padding:.38rem .78rem!important;border-radius:999px!important;
  color:#fff!important;font-size:.78rem!important;font-weight:950!important;line-height:1!important;
  background:linear-gradient(135deg,#e94395,#b970f3)!important;
  box-shadow:0 10px 20px rgba(225,75,153,.24)!important;
}
.mw-card-photo{
  display:block!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#fff,#fff0fa,#edfffe)!important;
}
.mw-card-photo img,
.mw-card-photo .card-img-top{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;
  border-radius:0!important;transition:transform .28s ease!important;
}
.mw-shop-card:hover .mw-card-photo img{transform:scale(1.035);}
.mw-card-body{padding:1rem!important;display:flex!important;flex-direction:column!important;gap:.38rem!important;min-height:214px!important;}
.mw-card-category{
  color:var(--mw-pink)!important;
  font-size:.76rem!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  min-height:1rem!important;
}
.mw-card-title{margin:0!important;font-weight:950!important;line-height:1.14!important;color:var(--mw-purple)!important;font-size:1.04rem!important;}
.mw-card-title a{color:var(--mw-purple)!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.35em;}
.mw-card-desc{margin:0!important;color:#81748e!important;font-size:.9rem!important;line-height:1.25!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.25em;}
.mw-card-price{color:var(--mw-pink)!important;font-weight:950!important;font-size:1.22rem!important;line-height:1.1!important;margin:.16rem 0 .45rem!important;}
.mw-card-actions{display:grid!important;grid-template-columns:1fr .72fr!important;gap:.6rem!important;margin-top:auto!important;align-items:center!important;}
.mw-btn-add,.mw-btn-view{
  border:0!important;border-radius:18px!important;min-height:44px!important;padding:.65rem .72rem!important;text-decoration:none!important;
  font-weight:950!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.38rem!important;
  line-height:1!important;white-space:nowrap!important;
}
.mw-btn-add{background:#16172d!important;color:#fff!important;box-shadow:0 10px 22px rgba(22,23,45,.18)!important;}
.mw-btn-add:hover{background:#2a2250!important;color:#fff!important;}
.mw-btn-view{background:linear-gradient(135deg,#fff7fc,#f4efff)!important;color:var(--mw-purple)!important;border:1px solid rgba(185,156,255,.22)!important;}
.mw-btn-view:hover{color:var(--mw-pink)!important;background:#fff!important;}
.mw-btn-off{background:#9ca3af!important;cursor:not-allowed!important;}
@media(max-width:575.98px){
  .mw-products-grid{--bs-gutter-x:.7rem;--bs-gutter-y:.9rem;margin-left:-.35rem!important;margin-right:-.35rem!important;}
  .mw-product-col{width:50%!important;flex:0 0 50%!important;padding-left:.35rem!important;padding-right:.35rem!important;margin-bottom:.9rem!important;}
  .product-card.mw-shop-card{border-radius:22px!important;box-shadow:0 10px 24px rgba(61,43,98,.095)!important;}
  .mw-card-badge{left:9px!important;top:9px!important;min-height:25px!important;padding:.29rem .52rem!important;font-size:.61rem!important;}
  .mw-card-body{padding:.72rem!important;gap:.26rem!important;min-height:178px!important;}
  .mw-card-category{font-size:.62rem!important;letter-spacing:.04em!important;}
  .mw-card-title{font-size:.83rem!important;line-height:1.12!important;}
  .mw-card-title a{min-height:2.25em;}
  .mw-card-desc{font-size:.72rem!important;line-height:1.18!important;min-height:1.72em;-webkit-line-clamp:2;}
  .mw-card-price{font-size:1rem!important;margin:.08rem 0 .38rem!important;}
  .mw-card-actions{grid-template-columns:1fr .62fr!important;gap:.42rem!important;}
  .mw-btn-add,.mw-btn-view{min-height:37px!important;border-radius:14px!important;padding:.48rem .38rem!important;font-size:.72rem!important;}
  .mw-btn-add i{font-size:.78rem!important;}
}
@media(max-width:340px){
  .mw-card-actions{grid-template-columns:1fr!important;}.mw-btn-view{display:none!important;}
  .mw-card-body{min-height:168px!important;}.mw-card-desc{display:none!important;}
}

/* Buscar simple más limpio */
.mw-search-card{border-radius:28px!important;background:rgba(255,255,255,.86)!important;box-shadow:0 14px 34px rgba(61,43,98,.09)!important;}
.mw-search-btn{background:linear-gradient(135deg,#ef4f9a,#b978f4)!important;}
