/* ═══ tema-site.css — vitrine moderna ═══ */
body{
  background:
    radial-gradient(900px 420px at 85% -80px,rgba(var(--primary-rgb),.10),transparent 70%),
    radial-gradient(700px 380px at -10% 25%,rgba(var(--primary-rgb),.06),transparent 70%),
    #f8fafc !important;
  background-attachment:fixed;
}
.container{max-width:1180px}

/* barra de status */
.status-bar{letter-spacing:.06em;font-size:11px!important;padding:7px 0!important;display:flex;align-items:center;justify-content:center;gap:6px}
.status-open{background:linear-gradient(90deg,#dcfce7,#bbf7d0,#dcfce7)!important}
.status-closed{background:linear-gradient(90deg,#fee2e2,#fecaca,#fee2e2)!important}

/* navbar de vidro */
.navbar{background:rgba(255,255,255,.78)!important;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);
  border-bottom:1px solid rgba(15,23,42,.06)!important;box-shadow:0 4px 24px rgba(15,23,42,.04);padding:10px 0}
.navbar-brand{font-weight:800;letter-spacing:-.02em;color:var(--dark)}
.navbar-brand img{border-radius:10px;box-shadow:var(--shadow-sm)}
.navbar .btn-dark{background:var(--dark);border:0;box-shadow:var(--shadow-sm);transition:transform .18s var(--ease)}
.navbar .btn-dark:hover{transform:translateY(-1px)}
.navbar .badge.bg-primary{background:var(--primary)!important;color:var(--on-primary)}

/* hero */
.hero{
  position:relative;overflow:hidden;isolation:isolate;border-radius:var(--r-xl)!important;padding:38px 28px!important;
  background:linear-gradient(135deg,var(--dark) 0%,color-mix(in srgb,var(--dark) 55%,var(--primary)) 120%)!important;
  box-shadow:var(--shadow-lg);
}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;z-index:-1;filter:blur(2px)}
.hero::before{width:320px;height:320px;right:-90px;top:-120px;background:radial-gradient(circle,rgba(var(--primary-rgb),.65),transparent 68%)}
.hero::after{width:240px;height:240px;left:-70px;bottom:-130px;background:radial-gradient(circle,rgba(255,255,255,.14),transparent 70%)}
.hero h1{font-size:clamp(1.55rem,4.4vw,2.35rem);letter-spacing:-.03em;line-height:1.12;text-wrap:balance}
.search-container{border-radius:999px!important;padding:6px!important;box-shadow:0 14px 34px rgba(0,0,0,.22)!important;transition:box-shadow .2s,transform .2s var(--ease)}
.search-container:focus-within{box-shadow:0 14px 34px rgba(0,0,0,.25),0 0 0 4px rgba(var(--primary-rgb),.45)!important;transform:translateY(-1px)}
.search-container .btn-primary{width:42px;height:42px;padding:0;display:flex;align-items:center;justify-content:center}

/* categorias */
.category-container{padding:18px 2px!important;gap:10px!important;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 28px),transparent 100%)}
.btn-cat{scroll-snap-align:start;border-radius:999px!important;padding:9px 18px!important;border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:var(--shadow-sm);transition:transform .18s var(--ease),box-shadow .18s,background .18s,color .18s}
.btn-cat:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--primary)}
.btn-cat.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark))!important;color:var(--on-primary)!important;border-color:transparent!important;box-shadow:0 8px 20px rgba(var(--primary-rgb),.35)}

/* cards de produto */
@keyframes card-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.row.g-3>[class*="col-"]{animation:card-in .5s var(--ease) both}
.row.g-3>[class*="col-"]:nth-child(2){animation-delay:.04s}.row.g-3>[class*="col-"]:nth-child(3){animation-delay:.08s}
.row.g-3>[class*="col-"]:nth-child(4){animation-delay:.12s}.row.g-3>[class*="col-"]:nth-child(5){animation-delay:.16s}
.row.g-3>[class*="col-"]:nth-child(n+6){animation-delay:.2s}
.card-product{
  border-radius:var(--r-lg)!important;padding:10px!important;background:#fff;border:1px solid rgba(15,23,42,.05)!important;
  box-shadow:var(--shadow-sm)!important;transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
@media (hover:hover){
  .card-product:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)!important}
  .card-product:hover .img-wrapper img{transform:scale(1.07)}
}
.img-wrapper{border-radius:calc(var(--r-lg) - 4px)!important;background:linear-gradient(135deg,var(--primary-light),#f1f5f9)!important}
.img-wrapper img{transition:transform .5s var(--ease)}
.product-title{font-size:14px;letter-spacing:-.01em;line-height:1.3}
.price-main{font-size:16px!important;letter-spacing:-.02em}
.badge-estoque{border-radius:999px!important;padding:3px 9px!important}
.btn-add{
  width:38px!important;height:38px!important;border-radius:calc(var(--r-md) - 2px)!important;
  background:linear-gradient(135deg,var(--primary),var(--primary-dark))!important;color:var(--on-primary)!important;
  box-shadow:0 6px 14px rgba(var(--primary-rgb),.35)!important;transition:transform .18s var(--ease),box-shadow .18s;
}
.btn-add:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 10px 20px rgba(var(--primary-rgb),.45)!important}
.btn-add:active{transform:scale(.92)}
.btn-add.bg-success{background:linear-gradient(135deg,#22c55e,#16a34a)!important;box-shadow:0 6px 14px rgba(34,197,94,.35)!important}
.btn-add.bg-secondary{background:#cbd5e1!important;box-shadow:none!important}
.add-item-label{border-radius:var(--r-md)!important;transition:all .15s}
.add-item-label:has(input:checked){border-color:var(--primary)!important;background:var(--primary-light)!important}

/* botões flutuantes */
.float-btn{box-shadow:0 10px 24px rgba(0,0,0,.22);transition:transform .2s var(--ease)}
.float-btn:hover{transform:scale(1.1) translateY(-2px)}

/* lightbox */
.lightbox-overlay{backdrop-filter:blur(10px);background:rgba(8,12,24,.88)!important}
.lightbox-img{box-shadow:var(--shadow-lg)}
