:root{
  --bg:#f3f4f6;
  --card:#ffffff;
  --border:#e5e7eb;
  --text:#0f172a;
  --muted:#64748b;
  --primary:#2563eb;
  --primary2:#0ea5e9;
  --radius:18px;
}
*{box-sizing:border-box}
html,body{overflow-x:hidden}
body{background:var(--bg); color:var(--text); font-size:15px;}
a{text-decoration:none; color:inherit;}
.container-wide{max-width:1480px; margin:0 auto; padding:0 14px;}
.shadow-soft{box-shadow:0 8px 22px rgba(15,23,42,.07);}
.cardish{background:var(--card); border:1px solid var(--border); border-radius:14px;}

.topbar{
  background:#f8fafc;
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:50;
  padding:.55rem 0;
}
.brand{font-weight:900; letter-spacing:-.35px; font-size:24px; color:var(--text);}
.brand span{font-weight:400;}
.pill{background:#eef2ff; border:1px solid #dbeafe; color:#1d4ed8; border-radius:999px; padding:4px 9px; font-size:.72rem; font-weight:900;}
.btn-menu{background:#ffffff; border:1px solid var(--border); border-radius:12px; padding:8px 12px; box-shadow:0 8px 22px rgba(15,23,42,.06);}
.searchbox{min-width:260px;}
.searchbox .form-control{border-radius:999px; padding-left:42px; border:1px solid var(--border); background:#ffffff; min-height:42px;}
.search-ic{position:absolute;left:14px;top:50%; transform:translateY(-50%); opacity:.55; z-index:1;}
.icon-btn{border-radius:12px; padding:8px 12px;}

.slider{position:relative;}
.slider .track{
  display:flex;
  gap:10px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  padding:2px;
  scrollbar-width:none;
}
.slider .track::-webkit-scrollbar{display:none;}
.slider .nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:38px;height:38px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 26px rgba(15,23,42,.10);
  cursor:pointer;
  z-index:2;
}
.slider .nav.left{left:-10px;}
.slider .nav.right{right:-10px;}

.category-strip-wrap{margin-top:.8rem; margin-bottom:.8rem;}
.catcard{
  min-width:230px;
  height:64px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:15px;
}
.catcard .ic{
  width:36px;height:36px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eff6ff;
  border:1px solid #dbeafe;
  flex:0 0 auto;
}
.catcard .t{font-weight:900; line-height:1.05; font-size:.98rem;}
.catcard .s{color:var(--muted); font-size:.78rem;}
.rl-icon-img{width:22px;height:22px;object-fit:contain;display:block;}
.rl-icon-text{font-size:18px;line-height:1;}

.rl-menu-backdrop{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.45);
  z-index:998;
  opacity:0;
  pointer-events:none;
  transition:.2s ease;
}
.rl-menu-backdrop.show{opacity:1; pointer-events:auto;}
.rl-mega-menu{
  position:fixed;
  top:0;
  left:0;
  width:390px;
  max-width:92vw;
  height:100vh;
  background:#fff;
  z-index:999;
  transform:translateX(-105%);
  transition:.22s ease;
  border-right:1px solid var(--border);
  box-shadow:20px 0 60px rgba(15,23,42,.18);
  overflow:hidden;
}
.rl-mega-menu.open{transform:translateX(0);}
.rl-menu-head{
  height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 18px;
  border-bottom:1px solid var(--border);
  background:#f8fafc;
}
.fw-black{font-weight:900;}
.rl-menu-close{
  width:42px;
  height:42px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  font-size:28px;
  line-height:1;
}
.rl-family-list{
  height:calc(100vh - 74px);
  overflow-y:auto;
  overflow-x:hidden;
  padding:10px 0;
}
.rl-family-item,
.rl-submenu li{width:100%; overflow:hidden;}
.rl-family-link{
  display:flex;
  align-items:stretch;
  width:100%;
  min-height:46px;
  border-bottom:1px solid #eef2f7;
}
.rl-family-main{
  display:flex;
  align-items:center;
  gap:12px;
  flex:1;
  min-width:0;
  padding:10px 0 10px 16px;
}
.rl-family-icon{
  width:28px;
  height:28px;
  border-radius:9px;
  background:#eff6ff;
  border:1px solid #dbeafe;
  color:#1d4ed8;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.rl-family-name{
  flex:1;
  min-width:0;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.submenu-toggle{
  width:46px;
  min-width:46px;
  border:0;
  border-left:1px solid #e5eaf2;
  background:transparent;
  color:#2563eb;
  font-size:22px;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.rl-submenu{
  display:none;
  list-style:none;
  margin:0;
  padding:0;
  background:#f8fafc;
}
.has-children.open > .rl-submenu{display:block;}
.rl-menu-row{
  display:flex;
  align-items:stretch;
  min-height:42px;
  border-bottom:1px solid #eef2f7;
}
.rl-menu-name{
  flex:1;
  min-width:0;
  display:flex;
  align-items:center;
  padding:9px 12px 9px 54px;
  color:#0f172a;
  font-weight:650;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rl-submenu .rl-submenu .rl-menu-name{padding-left:74px;}
.has-children.open > .rl-family-link,
.rl-submenu li.has-children.open > .rl-menu-row{
  background:#eff6ff;
  color:#1d4ed8;
}
.has-children.open > .rl-family-link .submenu-toggle,
.has-children.open > .rl-menu-row .submenu-toggle{
  transform:rotate(90deg);
}

.hero{border-radius:22px; overflow:hidden; border:1px solid var(--border);}
.hero .carousel-item{height:460px;}
.hero .carousel-item img{width:100%; height:100%; object-fit:cover;}
.hero .caption{position:absolute; inset:0; display:flex; align-items:center;}
.hero .caption .panel{
  margin-left:42px;
  max-width:560px;
  padding:26px;
  border-radius:22px;
  background:linear-gradient(135deg, rgba(2,6,23,.78), rgba(2,6,23,.55));
  color:#fff;
}
.hero .caption h1{font-weight:900; font-size:44px; margin:0 0 10px;}
.hero .caption p{color:#dbeafe; font-size:18px;}

.section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:12px; margin:12px 0 10px;}
.section-title{font-weight:900; letter-spacing:-.35px; font-size:20px;}
.section-link{color:var(--primary); font-weight:800;}

.brandimg{
  width:240px;
  height:86px;
  border-radius:16px;
  border:1px solid var(--border);
  background:#fff;
  object-fit:contain;
  padding:10px;
}

.shop-layout{display:grid; grid-template-columns:250px 1fr; gap:14px; align-items:start;}
.shop-filters{padding:14px; position:sticky; top:78px; border-radius:16px;}
.mobile-filter-bar,.filter-close,.filter-backdrop{display:none;}
.shop-products{min-width:0; width:100%;}

.prodcard{
  display:block;
  background:#fff;
  border:1px solid var(--border);
  border-radius:15px;
  overflow:hidden;
  min-height:100%;
  color:var(--text);
  transition:.18s ease;
  width:100%;
  max-width:100%;
}
.prodcard:hover{transform:translateY(-2px); border-color:#bfdbfe;}
.prodcard-img-wrap{
  width:100%;
  height:170px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  border-bottom:1px solid #f1f5f9;
}
.prodcard-img-wrap img{width:100%; height:100%; object-fit:contain; display:block;}
.prodcard-body{padding:11px 13px 13px; position:relative;}
.prodcard-title{font-size:.98rem; font-weight:850; line-height:1.18; min-height:42px; overflow-wrap:anywhere;}
.price{font-weight:900; color:#0f172a; font-size:1rem;}
.stock-label{color:#475569; white-space:nowrap; font-size:.78rem;}
.product-badge{
  position:absolute;
  top:-15px;
  right:10px;
  background:#eef2ff;
  border:1px solid #dbeafe;
  color:#1d4ed8;
  border-radius:999px;
  padding:4px 9px;
  font-size:.72rem;
  font-weight:900;
}

.product-detail{padding:18px; border-radius:16px;}
.product-main-image{
  background:#fff;
  border:1px solid var(--border);
  height:390px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  border-radius:16px;
}
.product-main-image img{width:100%; height:100%; object-fit:contain;}
.product-title{font-size:2.15rem; line-height:1.08; font-weight:900; letter-spacing:-.04em;}
.product-thumbs{display:flex; gap:8px; flex-wrap:wrap; margin-top:12px;}
.product-thumbs button{
  width:70px;height:70px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:6px;
}
.product-thumbs img{width:100%; height:100%; object-fit:contain;}

.footer,
footer{
  background:#ffffff;
  border-top:1px solid var(--border);
  margin-top:2rem;
  padding-top:1rem;
  padding-bottom:1rem;
}

@media (max-width:991px){
  .topbar .container-wide{gap:8px;}
  .brand{font-size:21px;}
  .pill{display:none;}
  .searchbox{order:3; flex-basis:100%; min-width:100%;}
  .header-actions{margin-left:0!important;}
  .catcard{min-width:190px; height:58px;}
  .catcard .ic{width:32px; height:32px;}
  .mobile-filter-bar{display:block; margin:8px 0 12px;}
  .filter-backdrop{
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.45);
    z-index:1098;
    opacity:0;
    pointer-events:none;
    transition:.2s ease;
    display:block;
  }
  .filter-backdrop.show{opacity:1; pointer-events:auto;}
  .filter-close{
    display:flex;
    position:absolute;
    top:12px;
    right:12px;
    width:38px;
    height:38px;
    border-radius:12px;
    border:1px solid #e5e7eb;
    background:#fff;
    align-items:center;
    justify-content:center;
    font-size:26px;
    line-height:1;
    z-index:2;
  }
  .shop-filters{
    position:fixed;
    top:0;
    left:0;
    width:360px;
    max-width:88vw;
    height:100vh;
    overflow:auto;
    z-index:1099;
    transform:translateX(-105%);
    transition:.22s ease;
    border-radius:0 18px 18px 0;
    padding:62px 16px 16px;
    background:#fff;
  }
  .shop-filters.open{transform:translateX(0);}
  .shop-layout{display:block;}
  .shop-products{width:100%; overflow:hidden;}
  .product-main-image{height:320px;}
  .product-title{font-size:1.65rem;}
}

@media (max-width:575px){
  body{font-size:14px;}
  .container-wide{padding:0 10px;}
  .brand{font-size:19px;}
  .icon-btn{padding:7px 9px; font-size:.86rem;}
  .catcard{min-width:165px; height:54px; padding:8px 10px;}
  .catcard .t{font-size:.88rem;}
  .shop-products .row.product-grid,
  .shop-products .row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-left:0!important;
    margin-right:0!important;
  }
  .shop-products .row > [class*="col-"]{
    width:auto!important;
    max-width:none!important;
    padding:0!important;
  }
  .prodcard-img-wrap{height:125px; padding:8px;}
  .prodcard-body{padding:8px 9px 10px;}
  .prodcard-title{
    font-size:.82rem;
    line-height:1.14;
    min-height:46px;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .prodcard .small{
    font-size:.7rem;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .prodcard .d-flex.justify-content-between{
    align-items:flex-start!important;
    flex-direction:column;
    gap:2px!important;
  }
  .price{font-size:.88rem;}
  .stock-label{font-size:.68rem;}
}

/* PATCH loja: cards mais largos, quantidade, adicionar sem sair da página e resumo do carrinho */
#row1 .track{gap:18px; padding-bottom:4px;}
#row1 .prodcard{min-width:270px; max-width:270px;}
#row1 .prodcard-img-wrap{height:190px;}

.prodcard{display:flex; flex-direction:column;}
.prodcard-link{display:block; color:inherit; flex:1 1 auto;}
.prodcard-link:hover{color:inherit;}
.stock-label.is-ok{color:#16a34a; font-weight:800;}
.stock-label.is-out{color:#dc2626; font-weight:800;}
.prodcard-buy{
  border-top:1px solid #eef2f7;
  padding:10px 12px 12px;
  display:grid;
  grid-template-columns:82px 1fr;
  gap:8px;
  align-items:end;
  background:#fff;
}
.qty-line{min-width:0;}
.qty-label{display:block; font-size:.72rem; color:var(--muted); font-weight:800; margin-bottom:3px;}
.qty-input{height:38px; border-radius:10px; font-weight:800; text-align:center;}
.btn-add-cart{
  height:38px;
  border:0;
  border-radius:10px;
  background:var(--primary);
  color:#fff;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  transition:.16s ease;
}
.btn-add-cart:hover{filter:brightness(.94); transform:translateY(-1px);}
.btn-add-cart:disabled{opacity:.55; cursor:not-allowed; transform:none;}
.cart-ic{font-size:1rem; line-height:1;}

.cart-widget{z-index:60;}
.cart-popover{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  width:340px;
  max-width:calc(100vw - 24px);
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:14px;
  opacity:0;
  transform:translateY(-6px);
  pointer-events:none;
  transition:.16s ease;
}
.cart-popover.show{opacity:1; transform:translateY(0); pointer-events:auto;}
.cart-popover::before{
  content:"";
  position:absolute;
  top:-7px;
  right:24px;
  width:14px;
  height:14px;
  background:#fff;
  border-left:1px solid var(--border);
  border-top:1px solid var(--border);
  transform:rotate(45deg);
}
.cart-popover-close{
  width:30px;
  height:30px;
  border-radius:9px;
  border:1px solid var(--border);
  background:#fff;
  font-size:20px;
  line-height:1;
}
.cart-mini-item{
  display:grid;
  grid-template-columns:44px 1fr auto;
  gap:9px;
  align-items:center;
  padding:8px 0;
  border-bottom:1px solid #eef2f7;
}
.cart-mini-item img{width:44px; height:44px; object-fit:contain; border-radius:8px; background:#fff;}
.cart-mini-info{min-width:0;}
.cart-mini-name{font-weight:850; color:var(--text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.cart-mini-meta{color:var(--muted); font-size:.78rem;}
.cart-popover-total{display:flex; justify-content:space-between; align-items:center; font-size:1rem; color:var(--text);}
.swal2-popup.swal2-toast{box-shadow:0 14px 45px rgba(15,23,42,.18)!important; border-radius:16px!important;}
.swal-cart-line{text-align:left; margin-top:2px;}

@media (max-width:991px){
  #row1 .prodcard{min-width:240px; max-width:240px;}
  #row1 .prodcard-img-wrap{height:165px;}
}
@media (max-width:575px){
  #row1 .track{gap:12px;}
  #row1 .prodcard{min-width:78vw; max-width:78vw;}
  #row1 .prodcard-img-wrap{height:170px;}
  .prodcard-buy{grid-template-columns:70px 1fr; padding:8px; gap:6px;}
  .btn-add-cart{height:36px; font-size:.86rem;}
  .qty-input{height:36px;}
  .cart-popover{position:fixed; top:74px; right:10px; left:10px; width:auto; max-width:none;}
  .cart-popover::before{display:none;}
}

/* PATCH 2 — header fixo, cards e carrinho AJAX mais limpos */
.topbar{
  position:sticky!important;
  top:0!important;
  z-index:1050!important;
  background:rgba(248,250,252,.96)!important;
  backdrop-filter:blur(12px);
}
.category-strip-wrap{
  position:sticky;
  top:64px;
  z-index:1040;
  background:rgba(243,244,246,.94);
  backdrop-filter:blur(10px);
  padding-top:10px;
  padding-bottom:10px;
}
#row1 .track{gap:14px!important; padding:4px 2px 8px!important; scroll-snap-type:x mandatory;}
#row1 .prodcard{min-width:300px!important; max-width:300px!important; scroll-snap-align:start; overflow:hidden;}
#row1 .prodcard-img-wrap{height:185px!important;}
.prodcard-info-row{display:flex; align-items:center; justify-content:space-between; gap:10px;}
.prodcard-buy{
  border-top:1px solid #eef2f7!important;
  padding:10px 12px 12px!important;
  display:grid!important;
  grid-template-columns:118px 1fr!important;
  gap:10px!important;
  align-items:center!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
}
.qty-control{
  display:grid;
  grid-template-columns:1fr 28px 42px 28px;
  align-items:center;
  height:40px;
  border:1px solid #dbe3ef;
  background:#fff;
  border-radius:999px;
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.qty-label{
  display:block!important;
  padding-left:12px;
  margin:0!important;
  color:#64748b!important;
  font-size:.75rem!important;
  font-weight:900!important;
  letter-spacing:.02em;
}
.qty-input{
  width:42px!important;
  height:38px!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  text-align:center!important;
  font-weight:900!important;
  color:#0f172a!important;
  background:transparent!important;
  box-shadow:none!important;
  appearance:textfield;
}
.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{appearance:none;margin:0;}
.qty-btn{
  width:28px;
  height:38px;
  border:0;
  background:#f1f5f9;
  color:#0f172a;
  font-weight:900;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:.15s ease;
}
.qty-btn:hover{background:#e2e8f0;}
.btn-add-cart{
  height:40px!important;
  border:0!important;
  border-radius:999px!important;
  background:#1f2937!important;
  color:#fff!important;
  font-weight:900!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  box-shadow:0 9px 18px rgba(15,23,42,.14)!important;
}
.btn-add-cart:hover{background:#111827!important; transform:translateY(-1px);}
.btn-add-cart:disabled{opacity:.5!important; cursor:not-allowed!important; transform:none!important;}
.cart-popover[hidden]{display:none!important;}
.cart-popover{
  display:block;
  position:absolute!important;
  top:calc(100% + 12px)!important;
  right:0!important;
  width:360px!important;
  max-width:calc(100vw - 24px)!important;
  background:#fff!important;
  border:1px solid #dbe3ef!important;
  border-radius:18px!important;
  padding:14px!important;
  opacity:0!important;
  transform:translateY(-8px)!important;
  pointer-events:none!important;
  transition:opacity .16s ease, transform .16s ease!important;
  box-shadow:0 18px 55px rgba(15,23,42,.18)!important;
}
.cart-popover.show{opacity:1!important; transform:translateY(0)!important; pointer-events:auto!important;}
.swal2-popup.swal2-toast{border-radius:18px!important; box-shadow:0 18px 55px rgba(15,23,42,.20)!important;}
.swal-cart-line{text-align:left;margin-top:4px;}
@media (max-width:991px){
  .category-strip-wrap{top:62px;}
  #row1 .prodcard{min-width:275px!important; max-width:275px!important;}
}
@media (max-width:575px){
  .category-strip-wrap{top:116px;}
  #row1 .track{gap:12px!important;}
  #row1 .prodcard{min-width:86vw!important; max-width:86vw!important;}
  #row1 .prodcard-img-wrap{height:168px!important;}
  .prodcard-buy{grid-template-columns:1fr!important; gap:8px!important;}
  .qty-control{grid-template-columns:1fr 34px 48px 34px;}
  .qty-btn{width:34px;}
  .qty-input{width:48px!important;}
  .cart-popover{position:fixed!important; top:126px!important; left:10px!important; right:10px!important; width:auto!important; max-width:none!important;}
}

/* PATCH 3 - Reflexos carrinho/login/checkout */
.topbar{position:sticky!important;top:0!important;z-index:1050!important;background:rgba(248,250,252,.96)!important;backdrop-filter:blur(16px);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.category-strip-wrap{position:sticky!important;top:84px!important;z-index:1030!important;background:rgba(248,250,252,.95);padding:.75rem 0;margin-top:0!important;backdrop-filter:blur(12px)}
@media(max-width:768px){.category-strip-wrap{top:128px!important}.topbar{position:sticky!important}}
.product-card .qty-line{margin-top:.75rem}.qty-control{display:inline-grid!important;grid-template-columns:38px 58px 38px!important;align-items:center;border:1px solid #dbe4f0;border-radius:14px;background:#fff;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}.qty-label{font-weight:900;color:#0f172a;margin-bottom:.35rem}.qty-input{border:0!important;border-left:1px solid #e5eaf2!important;border-right:1px solid #e5eaf2!important;border-radius:0!important;height:40px!important;text-align:center;font-weight:900;background:#fff!important}.qty-btn{border:0!important;height:40px!important;width:38px!important;background:#f1f5f9!important;font-size:1.15rem;font-weight:900;color:#0f172a}.qty-btn:hover{background:#dbeafe!important;color:#125be6}.btn-add-cart{border:0!important;border-radius:14px!important;background:#1f2937!important;color:white!important;font-weight:900!important;padding:.7rem 1rem!important;box-shadow:0 10px 22px rgba(15,23,42,.16);display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%}.btn-add-cart:hover{background:#125be6!important;transform:translateY(-1px)}
.cart-widget .cart-popover{display:none}.cart-widget .cart-popover.show{display:block}.cart-page{padding-top:1.5rem}.cart-hero{padding:1.5rem 0 2rem}.cart-hero-title{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:950;letter-spacing:-.04em;color:#0f172a}.cart-hero p{color:#64748b;font-size:1.05rem}.cart-line{display:grid;grid-template-columns:120px 1.6fr 160px 150px 170px 34px;gap:1.2rem;align-items:center;padding:1.3rem;margin-bottom:1rem;background:#fff;border-radius:18px}.cart-line-img{width:110px;height:110px;object-fit:contain}.cart-sku{color:#125be6;font-weight:900;letter-spacing:.02em}.cart-line-info h3{font-size:1rem;font-weight:900;margin:.25rem 0}.stock-ok{color:#21a546;font-weight:900}.cart-price strong,.cart-line-total strong{font-size:1.25rem;color:#0f172a}.cart-price span,.cart-line-total span{font-size:.8rem;text-transform:uppercase;margin-left:.2rem}.cart-line-total{text-align:right}.cart-remove{text-decoration:none;font-size:1.2rem;opacity:.7}.cart-clear{align-self:center;color:#0f172a}.cart-summary,.ck-summary{background:#fff;border-radius:18px;padding:1.5rem;border:1px solid #e5eaf2;position:sticky;top:170px}.cart-summary h4,.ck-summary h3{font-weight:950;margin-bottom:1rem}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px dashed #d9e1ec}.summary-total{border-bottom:0;font-size:1.25rem;font-weight:950;color:#0f172a;text-transform:uppercase}.fw-black{font-weight:950!important}.login-page{padding:2.5rem 0}.auth-card{max-width:1050px;padding:2rem}.auth-card h1{font-weight:950;letter-spacing:-.04em}.auth-card h3{font-size:1.25rem;font-weight:900}.google-login{height:48px;border:1px solid #dbe4f0;border-radius:12px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#0f172a;font-weight:900;background:#fff}.divider{text-align:center;color:#94a3b8;margin:1rem 0;position:relative}.checkout-shell{background:#eef2f7;margin-top:0;padding-bottom:3rem;min-height:70vh}.checkout-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.6rem 0}.ck-step{text-align:center;color:#7b8794;position:relative}.ck-step span{display:inline-flex;width:38px;height:38px;border-radius:12px;align-items:center;justify-content:center;background:#cbd5e1;color:#fff;font-weight:950;margin-bottom:.45rem}.ck-step.active span{background:#125be6}.ck-step.done span{background:#22a447}.ck-step b{display:block;font-weight:800}.ck-title{font-size:1.3rem;font-weight:950;margin:0 0 1rem;color:#0f172a}.ck-card,.ck-option,.confirm-line{background:#fff;border-radius:16px;border:1px solid #e5eaf2;padding:1.4rem}.ck-card label{font-weight:800;margin-bottom:.35rem}.ck-option{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;cursor:pointer}.ck-option input[type=radio]{width:22px;height:22px;accent-color:#125be6}.ck-option div{flex:1}.ck-option b{font-size:1.1rem}.ck-option p{margin:0;color:#64748b}.ck-option strong{color:#21a546}.ck-summary h5{color:#125be6;font-weight:950;margin-top:1rem}.confirm-line{display:grid;grid-template-columns:120px 1fr 150px 110px 160px;gap:1rem;align-items:center;margin-bottom:1rem}.confirm-line img{width:105px;height:105px;object-fit:contain}.cart-popover{right:0!important;top:calc(100% + 12px)!important;border-radius:18px!important;border:1px solid #e5eaf2!important}.cart-popover .btn{border-radius:14px}
@media(max-width:1200px){.cart-line{grid-template-columns:90px 1fr 120px}.cart-qty-control,.cart-line-total,.cart-remove{grid-column:auto}.cart-line-img{width:85px;height:85px}.confirm-line{grid-template-columns:80px 1fr}.cart-price,.cart-line-total{text-align:left}.ck-summary,.cart-summary{position:static}}
@media(max-width:768px){.checkout-steps{grid-template-columns:repeat(2,1fr)}.cart-line{grid-template-columns:80px 1fr;gap:.8rem}.cart-price,.cart-qty-control,.cart-line-total,.cart-remove{grid-column:2}.cart-line-total{text-align:left}.auth-card{padding:1.2rem}.ck-option{align-items:flex-start}.confirm-line{grid-template-columns:70px 1fr}.confirm-line img{width:65px;height:65px}}

/* PATCH 4 - fix header real, carrinho automático e checkout */
html{scroll-padding-top:160px}
body{padding-top:148px!important;}
.fixed-shop-header,.topbar{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:5000!important;background:rgba(248,250,252,.98)!important;backdrop-filter:blur(16px);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.category-strip-wrap{position:fixed!important;top:74px!important;left:0!important;right:0!important;width:100%!important;z-index:4900!important;background:rgba(243,244,246,.96)!important;padding:.75rem 14px!important;margin:0!important;box-shadow:0 8px 20px rgba(15,23,42,.04);backdrop-filter:blur(12px)}
.rl-mega-menu,.rl-menu-backdrop{z-index:6000!important}
@media(max-width:900px){body{padding-top:202px!important}.topbar .container-wide{gap:8px}.searchbox{order:5;flex-basis:100%}.category-strip-wrap{top:128px!important}}

.product-buy-card{display:flex!important;flex-direction:column;color:inherit;overflow:hidden}.product-buy-card .prodcard-link{display:block;color:inherit;flex:1}.product-cart-form{padding:0 14px 14px}.product-buy-row{display:grid;grid-template-columns:104px 1fr;gap:10px;align-items:center}.qty-control{display:inline-grid!important;grid-template-columns:34px 38px 34px;align-items:center;height:42px;border:1px solid #dbe4f0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.qty-btn{width:34px!important;height:40px!important;border:0!important;background:#eef4fb!important;color:#0f172a!important;font-weight:950!important;font-size:1.15rem!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}.qty-btn:hover{background:#dbeafe!important;color:#125be6!important}.qty-input{width:38px!important;height:40px!important;border:0!important;border-left:1px solid #dbe4f0!important;border-right:1px solid #dbe4f0!important;text-align:center!important;font-weight:950!important;color:#0f172a!important;background:#fff!important;padding:0!important;-moz-appearance:textfield!important}.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.btn-add-cart{height:42px;border:0;border-radius:14px;background:#1f2933;color:#fff;font-weight:900;box-shadow:0 8px 18px rgba(15,23,42,.16);transition:.18s}.btn-add-cart:hover{background:#125be6;transform:translateY(-1px)}.btn-add-cart:disabled{opacity:.7;transform:none}

.cart-page{padding-top:1.2rem}.cart-hero{padding:1rem 0 1.5rem}.cart-line{grid-template-columns:120px minmax(220px,1.5fr) 150px 180px 160px 36px!important}.cart-qty-control{grid-template-columns:48px 56px 48px!important;height:48px!important;border-radius:16px!important}.cart-qty-control .qty-btn{width:48px!important;height:46px!important;font-size:1.25rem!important}.cart-qty-control .qty-input{width:56px!important;height:46px!important;font-size:1.05rem!important}.cart-summary,.ck-summary{top:170px!important}.cart-clear{display:inline-flex;align-items:center;gap:.35rem;padding:.7rem 0;font-weight:800}.cart-remove{font-size:1.25rem;text-align:center;filter:grayscale(1);opacity:.55}.cart-remove:hover{opacity:1;filter:none}.cart-line-total strong[data-line-total]{min-width:90px;display:inline-block}
@media(max-width:1100px){.cart-line{grid-template-columns:90px 1fr!important;gap:.9rem}.cart-price,.cart-qty,.cart-line-total,.cart-remove{grid-column:2}.cart-line-total{text-align:left}.cart-qty-control{max-width:160px}}

.cart-widget .cart-popover{display:none!important;position:absolute!important;min-width:330px;max-width:min(92vw,380px);right:0!important;top:calc(100% + 12px)!important;background:#fff!important;padding:1rem!important;border-radius:18px!important;border:1px solid #e5eaf2!important;z-index:7000!important}.cart-widget .cart-popover.show{display:block!important}.cart-mini-item{display:grid;grid-template-columns:46px 1fr auto;gap:.7rem;align-items:center;padding:.55rem 0;border-bottom:1px solid #edf2f7}.cart-mini-item img{width:46px;height:46px;object-fit:contain}.cart-mini-name{font-weight:900;color:#0f172a;line-height:1.15}.cart-mini-meta{color:#64748b}.cart-popover-total{display:flex;justify-content:space-between;align-items:center;font-size:1.05rem;color:#0f172a}.cart-popover-close{border:0;background:#eef2f7;border-radius:10px;width:30px;height:30px;font-weight:900}

.checkout-shell{padding-top:1rem!important}.checkout-steps{position:sticky;top:148px;z-index:2000;background:#eef2f7;border-bottom:1px solid #dde5ef}.ck-card,.ck-option,.confirm-line,.ck-summary{box-shadow:0 8px 22px rgba(15,23,42,.05)}.ck-option.selected{border-color:#125be6;box-shadow:0 0 0 3px rgba(18,91,230,.1)}
@media(max-width:900px){.checkout-steps{top:202px;grid-template-columns:repeat(2,1fr)}}


/* PATCH 5 - header fixo só na barra principal, carrinho por clique e quantidades visíveis */
html{scroll-padding-top:92px!important;}
body{padding-top:84px!important;}
.fixed-shop-header,.topbar{
  position:fixed!important;
  top:0!important;left:0!important;right:0!important;width:100%!important;
  z-index:5000!important;
  background:rgba(248,250,252,.98)!important;
  backdrop-filter:blur(16px);
  box-shadow:0 8px 24px rgba(15,23,42,.08);
}
.category-strip-wrap{
  position:relative!important;
  top:auto!important;left:auto!important;right:auto!important;width:auto!important;
  z-index:10!important;
  background:transparent!important;
  padding:0!important;
  margin-top:.8rem!important;
  margin-bottom:.8rem!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
@media(max-width:900px){
  body{padding-top:138px!important;}
  .topbar .container-wide{gap:8px;}
  .searchbox{order:5;flex-basis:100%;}
}
.cart-widget{position:relative!important;}
.cart-widget .cart-popover{
  display:none!important;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 12px)!important;
  width:390px!important;
  max-width:min(92vw,390px)!important;
  background:#fff!important;
  padding:1rem!important;
  border-radius:18px!important;
  border:1px solid #e5eaf2!important;
  z-index:7000!important;
}
.cart-widget .cart-popover.show{display:block!important;}
.cart-popover-content{max-height:360px;overflow:auto;}
.cart-mini-item{display:grid;grid-template-columns:48px 1fr auto;gap:.75rem;align-items:center;padding:.65rem 0;border-bottom:1px solid #edf2f7;}
.cart-mini-item img{width:48px;height:48px;object-fit:contain;}
.cart-mini-name{font-weight:900;color:#0f172a;line-height:1.15;}
.cart-mini-meta{font-size:.9rem;color:#64748b;}
.cart-popover-total{display:flex;justify-content:space-between;align-items:center;font-size:1.05rem;color:#0f172a;padding-top:.75rem;}
.cart-popover-close{border:0;background:#eef2f7;border-radius:10px;width:32px;height:32px;font-weight:900;}
.qty-control,.product-qty-control,.cart-qty-control{
  display:inline-grid!important;
  grid-template-columns:44px 54px 44px!important;
  align-items:center!important;
  height:52px!important;
  border:1px solid #cdd9e8!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
}
.qty-btn{
  width:44px!important;height:52px!important;border:0!important;
  background:#eef4fb!important;color:#0f172a!important;
  font-size:1.35rem!important;font-weight:950!important;line-height:1!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.qty-btn:hover{background:#dbeafe!important;color:#125be6!important;}
.qty-input{
  width:54px!important;height:52px!important;border:0!important;
  border-left:1px solid #dbe4f0!important;border-right:1px solid #dbe4f0!important;
  border-radius:0!important;text-align:center!important;
  font-size:1.05rem!important;font-weight:950!important;color:#0f172a!important;background:#fff!important;
  appearance:textfield!important;-moz-appearance:textfield!important;
}
.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{appearance:none!important;margin:0!important;}
.product-buy-row{display:grid!important;grid-template-columns:142px 1fr!important;gap:.75rem!important;align-items:center!important;padding:0 1rem 1rem!important;}
.btn-add-cart{
  min-height:52px!important;border:0!important;border-radius:18px!important;
  background:#1f2937!important;color:white!important;font-weight:950!important;
  padding:.7rem 1rem!important;box-shadow:0 10px 22px rgba(15,23,42,.16)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:.5rem!important;width:100%!important;
}
.btn-add-cart:hover{background:#125be6!important;transform:translateY(-1px);}
@media(max-width:640px){.product-buy-row{grid-template-columns:1fr!important}.qty-control,.product-qty-control{width:100%!important;grid-template-columns:1fr 64px 1fr!important}.qty-btn{width:100%!important}.qty-input{width:64px!important}.cart-widget .cart-popover{position:fixed!important;top:76px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important}}

/* PATCH 6 - ajustes finais: header só topo, quantidades visíveis, login/checkout/admin */
html{scroll-padding-top:78px!important;}
body{padding-top:72px!important;}
.topbar.fixed-shop-header,.topbar{
  position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;
  z-index:9000!important;background:#f8fafc!important;backdrop-filter:none!important;
  box-shadow:0 8px 24px rgba(15,23,42,.08)!important;border-bottom:1px solid #e5e7eb!important;
}
.topbar .container-wide{min-height:58px;}
.category-strip-wrap{
  position:relative!important;top:auto!important;left:auto!important;right:auto!important;width:auto!important;
  z-index:1!important;background:transparent!important;padding:0!important;margin:.8rem auto!important;
  box-shadow:none!important;backdrop-filter:none!important;transform:none!important;
}
.category-strip{position:relative!important;z-index:1!important;}
.hero,.section-head,.shop-layout,.cart-page,.checkout-shell{position:relative;z-index:2;}
@media(max-width:900px){
  body{padding-top:128px!important;}
  .topbar .container-wide{min-height:auto;}
  .searchbox{order:5;flex-basis:100%;min-width:100%;}
  .category-strip-wrap{margin-top:.65rem!important;}
}

.product-buy-row{grid-template-columns:132px minmax(120px,1fr)!important;gap:.75rem!important;padding:0 1rem 1rem!important;align-items:center!important;}
.qty-control,.product-qty-control,.cart-qty-control{
  display:inline-grid!important;grid-template-columns:40px 52px 40px!important;align-items:center!important;
  width:132px!important;height:50px!important;border:1px solid #c7d6e8!important;border-radius:17px!important;
  overflow:hidden!important;background:#fff!important;box-shadow:0 10px 22px rgba(15,23,42,.08)!important;flex:0 0 auto!important;
}
.qty-btn{width:40px!important;height:50px!important;border:0!important;background:#edf4fc!important;color:#0f172a!important;font-size:0!important;font-weight:950!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;opacity:1!important;}
.qty-minus::before{content:'−';font-size:1.45rem;line-height:1;font-weight:950;}
.qty-plus::before{content:'+';font-size:1.45rem;line-height:1;font-weight:950;}
.qty-btn:hover{background:#dbeafe!important;color:#125be6!important;}
.qty-input{width:52px!important;height:50px!important;border:0!important;border-left:1px solid #dbe4f0!important;border-right:1px solid #dbe4f0!important;text-align:center!important;font-size:1.08rem!important;font-weight:950!important;color:#0f172a!important;background:#fff!important;padding:0!important;appearance:textfield!important;-moz-appearance:textfield!important;}
.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important;}
.btn-add-cart{min-height:50px!important;border-radius:17px!important;font-size:1rem!important;white-space:nowrap!important;}
.cart-qty-control{width:150px!important;grid-template-columns:46px 58px 46px!important;}
.cart-qty-control .qty-btn{width:46px!important}.cart-qty-control .qty-input{width:58px!important;}
@media(max-width:640px){.product-buy-row{grid-template-columns:1fr!important}.qty-control,.product-qty-control{width:100%!important;grid-template-columns:1fr 58px 1fr!important}.qty-btn{width:100%!important}.qty-input{width:58px!important}}

.auth-tabs{display:flex;gap:.5rem;background:#eef2f7;border-radius:16px;padding:.35rem}.auth-tabs a{flex:1;text-align:center;border-radius:12px;padding:.75rem 1rem;font-weight:900;color:#0f172a}.auth-tabs a.active{background:#fff;color:#125be6;box-shadow:0 6px 18px rgba(15,23,42,.08)}.auth-panel{background:#fff;border-radius:18px}.auth-info{background:linear-gradient(135deg,#eff6ff,#fff);border:1px solid #dbeafe;border-radius:18px;padding:1.5rem;height:100%}.auth-info .ck-option{background:#fff}.google-login{gap:.5rem}.checkout-shell{background:#eef2f7;margin-top:-.8rem}.checkout-steps{position:relative!important;top:auto!important;z-index:3!important;background:#eef2f7!important;border-bottom:1px solid #dde5ef}.ck-option.selected{border-color:#125be6!important;box-shadow:0 0 0 3px rgba(18,91,230,.10)!important}.ck-summary{top:92px!important}.confirm-line{grid-template-columns:95px 1fr 130px 95px 145px!important}.confirm-line img{width:86px!important;height:86px!important;object-fit:contain}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px dashed #d9e1ec}.summary-total{border-bottom:0;text-transform:uppercase;font-weight:950;font-size:1.2rem}
@media(max-width:992px){.confirm-line{grid-template-columns:75px 1fr!important}.confirm-line .price,.confirm-line .cart-line-total,.confirm-line .fw-black{grid-column:2;text-align:left!important}.ck-summary{position:static!important}}

body.admin-body{padding-top:0!important;}
.admin-subnav{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.25rem}.admin-subnav a{padding:.7rem 1rem;border-radius:13px;background:#fff;border:1px solid #e5eaf2;font-weight:900;color:#0f172a}.admin-subnav a.active,.admin-subnav a:hover{background:#123f73;color:#fff}.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-table-card{background:#fff;border:1px solid #e5eaf2;border-radius:16px;overflow:hidden}.admin-table-card table{margin:0}@media(max-width:992px){.admin-grid,.admin-grid-2{grid-template-columns:1fr}}

/* PATCH 7 - ajustes pedidos: só barra superior fixa, alert abaixo do header, botões compactos */
:root{--rl-header-h:76px;}
body:not(.admin-body){padding-top:var(--rl-header-h)!important;}
.topbar.fixed-shop-header,.topbar{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;z-index:5000!important;background:rgba(248,250,252,.97)!important;backdrop-filter:blur(16px);box-shadow:0 8px 22px rgba(15,23,42,.08)!important;}
.category-strip-wrap{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:1!important;margin-top:.75rem!important;padding:.65rem 0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;}
.checkout-steps{position:relative!important;top:auto!important;z-index:1!important;}
.swal2-container.swal2-top-end,.swal2-container.swal2-top-right{top:calc(var(--rl-header-h) + 12px)!important;z-index:6000!important;}
.swal2-popup.swal2-toast{margin-top:0!important;}
.product-buy-row{display:flex!important;align-items:center!important;gap:10px!important;}
.product-qty-control,.product-card .qty-control{flex:0 0 116px!important;width:116px!important;height:42px!important;grid-template-columns:34px 48px 34px!important;border-radius:15px!important;}
.product-qty-control .qty-btn,.product-card .qty-btn{width:34px!important;height:40px!important;font-size:0!important;}
.product-qty-control .qty-input,.product-card .qty-input{width:48px!important;height:40px!important;font-size:1rem!important;}
.btn-add-cart{flex:0 0 132px!important;width:132px!important;min-width:132px!important;height:42px!important;padding:0 .85rem!important;border-radius:15px!important;font-size:.92rem!important;white-space:nowrap!important;}
.cart-widget{z-index:5100!important;}
.cart-widget .cart-popover{position:absolute!important;right:0!important;top:calc(100% + 12px)!important;width:370px!important;max-width:calc(100vw - 24px)!important;background:#fff!important;z-index:6500!important;padding:1rem!important;display:none;border:1px solid #e5eaf2!important;border-radius:18px!important;}
.cart-widget .cart-popover.show{display:block!important;}
.cart-mini-item{display:grid;grid-template-columns:48px 1fr auto;gap:.65rem;align-items:center;padding:.55rem 0;border-bottom:1px solid #eef2f7;}
.cart-mini-item img{width:48px;height:48px;object-fit:contain;background:#f8fafc;border-radius:10px;}
.cart-mini-name{font-weight:900;font-size:.88rem;line-height:1.15;color:#0f172a;}
.cart-mini-meta{font-size:.78rem;color:#64748b;}
.cart-popover-total{display:flex;align-items:center;justify-content:space-between;font-size:1rem;padding-top:.7rem;}
.cart-popover-close{width:30px;height:30px;border:1px solid #dbe4f0;border-radius:10px;background:#fff;font-weight:900;}
@media(max-width:900px){:root{--rl-header-h:124px;}body:not(.admin-body){padding-top:var(--rl-header-h)!important}.searchbox{order:5;flex-basis:100%;}.category-strip-wrap{top:auto!important}.cart-widget .cart-popover{position:fixed!important;top:calc(var(--rl-header-h) + 10px)!important;left:10px!important;right:10px!important;width:auto!important;}}
@media(max-width:640px){.product-buy-row{gap:8px!important}.product-qty-control,.product-card .qty-control{flex:0 0 104px!important;width:104px!important;grid-template-columns:30px 44px 30px!important}.product-qty-control .qty-btn,.product-card .qty-btn{width:30px!important}.product-qty-control .qty-input,.product-card .qty-input{width:44px!important}.btn-add-cart{flex:1 1 auto!important;width:auto!important;min-width:118px!important}}

/* PATCH 7 - backoffice com sidebar, sem submenus redundantes */
.admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:#f4f7fb;align-items:stretch;}
.admin-sidebar{background:linear-gradient(180deg,#071327,#123f73);color:#fff;padding:20px 16px;position:relative;top:auto;min-height:100%;height:auto;overflow:visible;box-shadow:12px 0 28px rgba(15,23,42,.12)}
.admin-sidebar .admin-brand{display:block;color:#fff;text-decoration:none;font-size:1.45rem;font-weight:950;margin-bottom:20px}.admin-sidebar .admin-brand span{color:#7cc7ff}.admin-side-section{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#a9c4e4;font-weight:900;margin:18px 10px 8px}.admin-side-nav{display:flex;flex-direction:column;gap:6px}.admin-side-nav a{display:flex;align-items:center;gap:.55rem;color:#eaf4ff;text-decoration:none;font-weight:850;padding:10px 12px;border-radius:13px}.admin-side-nav a.active,.admin-side-nav a:hover{background:#fff;color:#071327}.admin-main{min-width:0}.admin-main-top{height:64px;background:#fff;border-bottom:1px solid #e5eaf2;display:flex;align-items:center;justify-content:flex-end;padding:0 24px;position:sticky;top:0;z-index:20}.admin-content{padding:24px}.admin-subnav{display:none!important}@media(max-width:992px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto;min-height:auto;overflow:visible}.admin-side-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-main-top{position:relative}.admin-content{padding:16px}}

/* PATCH 8 - conta cliente e gestão de encomendas */
.account-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;align-items:start}.account-side{position:sticky;top:96px}.account-user{display:flex;gap:12px;align-items:center}.account-avatar{width:48px;height:48px;border-radius:16px;background:#eff6ff;color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.25rem}.account-nav{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:14px;text-decoration:none;color:#0f172a;font-weight:800;margin-bottom:6px}.account-nav:hover,.account-nav.active{background:#eff6ff;color:#1d4ed8}.account-info{background:#f8fafc;border:1px solid #e5eaf2;border-radius:14px;padding:14px 16px;height:100%}.account-info span{display:block;color:#64748b;font-size:.85rem;margin-bottom:5px}.client-order-card{border:1px solid #e5eaf2;background:#fff;border-radius:18px;padding:16px}.client-order-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.client-order-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;position:relative}.client-order-progress .step{display:flex;flex-direction:column;align-items:center;gap:5px;color:#94a3b8;font-weight:800;text-align:center}.client-order-progress .step span{width:30px;height:30px;border-radius:999px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;color:#64748b}.client-order-progress .step.done{color:#16a34a}.client-order-progress .step.done span{background:#dcfce7;color:#16a34a}.client-order-progress small{font-size:.75rem}.empty-account-orders{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px}.order-admin-card .fw-black,.account-page .fw-black{font-weight:900}.order-items-table th{color:#64748b;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}.admin-card .badge{font-size:.78rem}.admin-main-top{position:sticky;top:0;z-index:10;background:#f4f7fbcc;backdrop-filter:blur(8px);border-bottom:1px solid #e5eaf2}@media(max-width:900px){.account-grid{grid-template-columns:1fr}.account-side{position:static}.client-order-top{flex-direction:column}.client-order-top .text-end{text-align:left!important}.client-order-progress{grid-template-columns:repeat(2,1fr)}}

/* PATCH 9 - encomendas por separadores e conta editável */
.order-status-tabs,
.client-order-tabs{
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:4px 0 8px;
  scrollbar-width:thin;
}
.order-status-tab,
.client-order-tab{
  min-width:max-content;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 16px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(15,23,42,.09);
  color:#0f172a;
  text-decoration:none;
  font-weight:800;
  box-shadow:0 10px 22px rgba(15,23,42,.05);
}
.order-status-tab b,
.client-order-tab b{
  background:#eef5ff;
  color:#1266f1;
  min-width:30px;
  height:30px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 8px;
}
.order-status-tab.active,
.client-order-tab.active{
  background:#1f2937;
  color:#fff;
  border-color:#1f2937;
}
.order-status-tab.active b,
.client-order-tab.active b{
  background:#fff;
  color:#1f2937;
}
.order-admin-card{border-left:6px solid transparent;}
.order-state-nova{border-left-color:#1266f1;}
.order-state-enviar{border-left-color:#f59e0b;}
.order-state-pronta{border-left-color:#0ea5e9;}
.order-state-entregue{border-left-color:#16a34a;}
.order-state-cancelada{border-left-color:#dc2626;}
.account-edit-form .form-control{
  border-radius:16px;
  background:#f8fafc;
  border-color:#dbe5f0;
  font-weight:700;
}
.account-edit-form .form-label{color:#475569;}
.client-order-progress.status-enviar .step.done span{background:#f59e0b;}
.client-order-progress.status-pronta .step.done span{background:#0ea5e9;}
.client-order-progress.status-entregue .step.done span{background:#16a34a;}
@media(max-width:768px){
  .order-status-tab,.client-order-tab{padding:10px 12px;font-size:14px;}
}

/* PATCH 10 - compact carrinho/checkout + moradas */
.cart-page,.checkout-shell{font-size:14px}.cart-hero{padding:14px 0 10px}.cart-hero-title{font-size:28px}.cart-hero p{margin:0;font-size:14px}.cart-line{display:grid;grid-template-columns:88px minmax(220px,1fr) 120px 130px 130px 34px;gap:14px;align-items:center;padding:16px 18px;margin-bottom:12px}.cart-line-img{width:72px;height:72px;object-fit:contain}.cart-line-info h3{font-size:16px;line-height:1.15;margin:2px 0}.cart-sku{font-size:13px}.stock-ok{font-size:13px}.cart-price strong,.cart-line-total strong{font-size:18px}.cart-price span,.cart-line-total span{font-size:11px;text-transform:uppercase}.cart-qty-control{height:38px;display:grid;grid-template-columns:38px 48px 38px;border:1px solid #cfe0f5;border-radius:15px;overflow:hidden;background:#f3f8ff;box-shadow:0 8px 22px rgba(8,30,70,.08)}.cart-qty-control .qty-btn{border:0;background:#eaf3ff;color:#071a33;font-weight:900;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}.cart-qty-control .qty-input{border:0;border-left:1px solid #cfe0f5;border-right:1px solid #cfe0f5;text-align:center;font-weight:900;color:#071a33;background:#fff;font-size:15px;min-width:0}.cart-summary{padding:20px;position:sticky;top:90px}.cart-summary h4{font-size:24px}.summary-row{font-size:14px;padding:10px 0}.summary-total{font-size:20px;padding-top:12px}.ajax-cart-remove{font-size:19px;text-decoration:none;opacity:.8}.ck-title{font-size:20px;font-weight:900;margin-bottom:12px}.checkout-steps{padding:16px 0}.ck-step b{font-size:13px}.ck-step span{width:30px;height:30px;font-size:13px}.ck-card,.ck-option,.ck-summary,.confirm-line{border-radius:12px}.ck-card{padding:18px}.ck-compact label,.compact-form label{font-size:12px;font-weight:800;color:#53627a;margin-bottom:4px}.ck-compact .form-control,.ck-compact .form-select,.compact-form .form-control{min-height:38px;font-size:14px;padding:8px 10px}.ck-option{padding:14px 16px;margin-bottom:10px;min-height:auto}.ck-option b{font-size:16px}.ck-option p{font-size:13px;margin:2px 0 0}.ck-summary{padding:18px;position:sticky;top:90px;font-size:13px}.ck-summary h3{font-size:21px}.ck-summary h5{font-size:14px;margin-top:12px}.confirm-line{padding:14px 16px;margin-bottom:12px;grid-template-columns:70px 1fr 120px 70px 120px;gap:12px}.confirm-line img{width:64px;height:64px;object-fit:contain}.account-page{font-size:14px}.account-edit-form .form-control,.compact-account .form-control{min-height:40px}.address-card{background:#f7fbff;border:1px solid #dfe8f5;border-radius:16px;padding:14px;height:100%}.checkline{display:flex;gap:8px;align-items:center;font-weight:700;color:#53627a}.checkline input{width:16px;height:16px}.client-order-card{padding:16px}.client-order-tabs{gap:7px}.client-order-tab{padding:8px 12px;font-size:13px}
@media(max-width:1100px){.cart-line{grid-template-columns:70px 1fr;gap:10px}.cart-price,.cart-qty,.cart-line-total,.cart-remove{grid-column:auto}.cart-line-total{text-align:left}.confirm-line{grid-template-columns:60px 1fr}.confirm-line .price,.confirm-line .cart-line-total{grid-column:auto}.cart-summary,.ck-summary{position:static}}

/* PATCH IVA: interruptor com/sem IVA no topo */
.vat-toggle-form{margin:0}
.vat-switch{border:1px solid rgba(10,35,66,.18);background:#fff;border-radius:999px;padding:6px 10px;display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:900;color:#0b2342;box-shadow:0 6px 18px rgba(10,35,66,.08);white-space:nowrap}
.vat-switch-knob{width:30px;height:16px;border-radius:999px;background:#0b2342;position:relative;display:inline-block;transition:.2s}
.vat-switch-knob:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:.2s}
.vat-switch.is-net .vat-switch-knob{background:#f59e0b}
.vat-switch.is-net .vat-switch-knob:after{transform:translateX(14px)}
.price-tax-label{font-size:.72rem;font-weight:800;color:#64748b;margin-left:4px;white-space:nowrap}
@media(max-width:720px){.vat-switch strong{display:none}.vat-switch{padding:7px}.vat-switch-knob{width:34px;height:18px}.vat-switch-knob:after{width:14px;height:14px}.vat-switch.is-net .vat-switch-knob:after{transform:translateX(16px)}}

/* PATCH IVA ENCOMENDAS */
.order-tax-mini{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px;max-width:560px;width:100%}
.order-tax-mini>div{background:#f8fafc;border:1px solid #e5eaf2;border-radius:12px;padding:9px 12px;text-align:right}
.order-tax-mini span{display:block;color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.order-tax-mini b{font-size:1rem;color:#0f172a}
@media(max-width:700px){.order-tax-mini{grid-template-columns:1fr}.order-tax-mini>div{text-align:left}}

/* Correção produto: painel de compra sempre visível */
.rl-product-purchase-panel{
  display:grid!important;
  gap:14px;
  max-width:520px;
  padding:18px;
  border:1px solid #dfe8f5;
  border-radius:20px;
  background:#f8fbff;
  box-shadow:0 14px 34px rgba(8,30,70,.08);
}
.rl-product-buy-row{display:grid!important;grid-template-columns:140px minmax(180px,1fr)!important;gap:12px!important;align-items:center!important;}
.rl-product-purchase-panel .btn-add-cart{height:46px!important;border-radius:16px!important;}
.rl-product-purchase-panel .product-qty-control{width:140px!important;grid-template-columns:42px 56px 42px!important;height:46px!important;}
.rl-product-purchase-panel .product-qty-control .qty-btn{width:42px!important;height:44px!important;}
.rl-product-purchase-panel .product-qty-control .qty-input{width:56px!important;height:44px!important;}
@media(max-width:640px){.rl-product-buy-row{grid-template-columns:1fr!important}.rl-product-purchase-panel .product-qty-control{width:100%!important;grid-template-columns:1fr 60px 1fr!important}.rl-product-purchase-panel .product-qty-control .qty-btn{width:100%!important}}

/* PATCH FINAL UX - cartões, subcategorias e galeria */
.product-buy-card .product-cart-form{display:flex;justify-content:center;align-items:center;padding-left:12px!important;padding-right:12px!important;}
.product-buy-card .product-buy-row{width:auto!important;justify-content:center!important;display:flex!important;align-items:center!important;gap:10px!important;}
.product-buy-card .btn-add-cart{flex:0 0 auto!important;width:auto!important;min-width:128px!important;padding-left:14px!important;padding-right:14px!important;}
.subcategory-panel{background:#fff;border:1px solid #e5eaf2;border-radius:18px;padding:16px;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.subcategory-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.subcategory-chip{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #dfe7f1;border-radius:14px;background:#f8fbff;color:#0f172a;text-decoration:none;min-height:58px;transition:.18s}
.subcategory-chip:hover{border-color:#125be6;background:#eff6ff;color:#125be6;transform:translateY(-1px)}
.subcategory-chip>span:nth-child(2){min-width:0;flex:1}.subcategory-chip b{display:block;line-height:1.1}.subcategory-chip small{display:block;color:#64748b;font-size:.75rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subcategory-icon{width:32px;height:32px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;border:1px solid #dbe4f0}.subcategory-arrow{font-size:24px;font-weight:900}
@media(max-width:900px){.subcategory-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.subcategory-list{grid-template-columns:1fr}.product-buy-card .product-cart-form{padding-left:8px!important;padding-right:8px!important}.product-buy-card .product-buy-row{gap:8px!important}.product-buy-card .btn-add-cart{min-width:118px!important;font-size:.88rem!important}}
\n\n/* PATCH UX - subcategorias compactas + contadores */\n.subcategory-panel{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;margin-top:10px}\n.subcategory-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}\n.subcategory-panel-head small{font-size:.72rem;font-weight:600;text-transform:none;letter-spacing:0;color:#94a3b8}\n.subcategory-list{display:flex!important;flex-wrap:wrap!important;gap:8px!important}\n.subcategory-chip{min-height:0!important;display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;gap:7px!important;padding:8px 10px!important;border:1px solid #e2e8f0!important;border-radius:999px!important;background:#fff!important;color:#334155!important;box-shadow:none!important;transform:none!important;font-size:.86rem!important;line-height:1!important}\n.subcategory-chip:hover{border-color:#bfd2f6!important;background:#f8fbff!important;color:#125be6!important;transform:none!important}\n.subcategory-name{font-weight:750;white-space:nowrap}\n.subcategory-count{font-size:.72rem;color:#64748b;background:#f1f5f9;border-radius:999px;padding:4px 7px;white-space:nowrap}\n.subcategory-chip:hover .subcategory-count{color:#125be6;background:#eaf2ff}\n.subcategory-arrow{font-size:17px!important;line-height:1!important;font-weight:900;color:#94a3b8}\n.rl-menu-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.7rem;font-weight:800;line-height:1;margin-left:auto}\n.rl-family-main .rl-menu-count{margin-left:auto}\n.rl-menu-name{display:flex!important;align-items:center;gap:8px;width:100%}\n.rl-menu-name .rl-menu-count{margin-left:auto}\n@media(max-width:580px){.subcategory-panel-head small{display:none}.subcategory-list{gap:6px!important}.subcategory-chip{padding:7px 9px!important;font-size:.82rem!important}.subcategory-count{font-size:.68rem;padding:3px 6px}}\n

/* PATCH UX - subcategorias na coluna lateral */
.subcategory-sidebar{border-top:1px solid #e7ebf1;padding-top:14px}
.subcategory-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.subcategory-sidebar-head small{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.68rem;font-weight:800}
.subcategory-sidebar-list{display:flex;flex-direction:column;gap:3px}
.subcategory-sidebar-link{display:flex;align-items:center;gap:7px;padding:8px 7px;border-radius:9px;color:#334155;text-decoration:none;font-size:.82rem;line-height:1.15;transition:background .15s,color .15s}
.subcategory-sidebar-link:hover{background:#f4f7fb;color:#125be6}
.subcategory-sidebar-link.is-active{background:#eef5ff;color:#125be6;font-weight:800}
.subcategory-sidebar-link.is-active .subcategory-sidebar-count{background:#dbeafe;color:#125be6}
.subcategory-sidebar-link.is-active .subcategory-sidebar-arrow{color:#125be6}
.subcategory-sidebar-name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.subcategory-sidebar-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.68rem;font-weight:800}
.subcategory-sidebar-arrow{font-size:16px;line-height:1;color:#94a3b8;font-weight:900}
.subcategory-mobile{display:none}
@media(max-width:900px){
  .subcategory-sidebar{display:none}
  .subcategory-mobile{display:block}
  .subcategory-mobile details{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden}
  .subcategory-mobile summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;cursor:pointer;font-weight:800;color:#334155;list-style:none}
  .subcategory-mobile summary::-webkit-details-marker{display:none}
  .subcategory-mobile summary small{color:#94a3b8;font-size:.72rem;font-weight:600}
  .subcategory-mobile-list{border-top:1px solid #eef2f7;padding:6px}
  .subcategory-mobile-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 8px;border-radius:8px;color:#334155;text-decoration:none;font-size:.84rem}
  .subcategory-mobile-list a:hover{background:#f6f8fb;color:#125be6}
  .subcategory-mobile-list a.is-active{background:#eef5ff;color:#125be6;font-weight:800}
  .subcategory-mobile-list a.is-active b{background:#dbeafe;color:#125be6}
  .subcategory-mobile-list b{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.68rem}
}

/* PATCH UX - contadores do menu em badge */
.rl-family-main .rl-menu-count,
.rl-menu-name .rl-menu-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:34px!important;
  height:26px!important;
  padding:0 9px!important;
  margin-left:auto!important;
  border:1px solid #dbeafe!important;
  border-radius:999px!important;
  background:#eff6ff!important;
  color:#2563eb!important;
  font-size:.75rem!important;
  font-weight:850!important;
  line-height:1!important;
  box-shadow:0 1px 2px rgba(37,99,235,.06)!important;
  flex:0 0 auto!important;
}
.rl-family-link:hover .rl-menu-count,
.rl-menu-row:hover .rl-menu-count,
.has-children.open > .rl-family-link .rl-menu-count,
.rl-submenu li.has-children.open > .rl-menu-row .rl-menu-count{
  background:#dbeafe!important;
  border-color:#bfdbfe!important;
  color:#1d4ed8!important;
}
.rl-family-main{
  gap:10px!important;
}
.rl-family-name{
  margin-right:4px!important;
}
.rl-family-link > .submenu-toggle,
.rl-menu-row > .submenu-toggle{
  width:42px!important;
  min-width:42px!important;
  border-left:0!important;
  color:#2563eb!important;
  font-size:20px!important;
}
.rl-family-link > .submenu-toggle::before,
.rl-menu-row > .submenu-toggle::before{
  content:'';
  width:28px;
  height:28px;
  border-radius:999px;
  background:#f8fbff;
  border:1px solid #dbeafe;
  position:absolute;
  z-index:-1;
}
.rl-family-link > .submenu-toggle,
.rl-menu-row > .submenu-toggle{
  position:relative;
  z-index:0;
}

/* PATCH FINAL - alinhamento dos contadores no menu lateral */
.rl-menu-name{display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important}
.rl-menu-name .rl-menu-count{margin-left:auto!important;margin-right:6px!important}
.rl-submenu .rl-menu-row{display:flex!important;align-items:center!important}
.rl-submenu .rl-menu-row > .rl-menu-name{padding-right:4px!important}

/* PATCH REFLEXOS - contadores separados/alinhados no menu + acompanhamento RMA */
.rl-family-link > .rl-menu-count,
.rl-menu-row > .rl-menu-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:36px!important;
  height:26px!important;
  padding:0 9px!important;
  margin:auto 8px auto 6px!important;
  border:1px solid #dbeafe!important;
  border-radius:999px!important;
  background:#eff6ff!important;
  color:#2563eb!important;
  font-size:.75rem!important;
  font-weight:850!important;
  line-height:1!important;
  box-shadow:0 1px 2px rgba(37,99,235,.06)!important;
}
.rl-family-link:hover > .rl-menu-count,
.rl-menu-row:hover > .rl-menu-count,
.has-children.open > .rl-family-link > .rl-menu-count,
.rl-submenu li.has-children.open > .rl-menu-row > .rl-menu-count{
  background:#dbeafe!important;
  border-color:#bfdbfe!important;
  color:#1d4ed8!important;
}
.rl-family-main{flex:1 1 auto!important;min-width:0!important;padding-right:6px!important;}
.rl-menu-name{flex:1 1 auto!important;min-width:0!important;width:auto!important;padding-right:6px!important;}
.rl-menu-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rl-family-link > .submenu-toggle,
.rl-menu-row > .submenu-toggle{flex:0 0 42px!important;}

.rma-client-card{border:1px solid #dfe7f1;background:#fff;border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(15,23,42,.04)}
.rma-client-info{height:100%;background:#f8fafc;border:1px solid #e8edf4;border-radius:13px;padding:11px 12px;display:flex;flex-direction:column;gap:3px}
.rma-client-info span{color:#64748b;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.rma-client-info b{color:#0f172a;line-height:1.25}
.rma-client-description{background:#f8fafc;border-left:4px solid #dbeafe;border-radius:10px;padding:12px 14px;color:#334155}
@media(max-width:580px){
  .rl-family-link > .rl-menu-count,.rl-menu-row > .rl-menu-count{min-width:32px!important;height:24px!important;padding:0 7px!important;margin-right:5px!important}
}


/* Checkout: passos concluídos podem ser usados para voltar e editar dados */
.checkout-steps .ck-step-link{
  text-decoration:none!important;
  color:#7b8794;
  cursor:pointer;
  border-radius:12px;
  transition:background-color .18s ease, transform .18s ease;
}
.checkout-steps .ck-step-link:hover{
  color:#475569;
  background:rgba(255,255,255,.55);
  transform:translateY(-1px);
}
.checkout-steps .ck-step-link:focus-visible{
  outline:3px solid rgba(18,91,230,.25);
  outline-offset:3px;
}
