
/* ==========================================================
   ANSEIO FASE 24 — Polimento final editorial
   Regras globais: botões vermelhos = texto branco, cabeçalho premium,
   menu rápido próximo ao mockup, ícones vetoriais e clique fora para fechar.
========================================================== */
:root{
  --a24-vinho:#8f0012;
  --a24-vinho-2:#b82d3a;
  --a24-vinho-3:#5b0009;
  --a24-rosa:#f7d9df;
  --a24-rosa-2:#fff4f6;
  --a24-text:#211115;
  --a24-muted:#765e63;
  --a24-gold:#c89b66;
  --a24-shadow:0 24px 80px rgba(112,0,12,.14);
}
html{scroll-behavior:smooth;}
body{background:linear-gradient(180deg,#fff7f8 0,#fff 28%,#fff 100%);}
/* Regra de contraste definitiva */
button,.button,.btn,.btn-buy,.anseio-submit,.anseio-auth-button.primary,.hero-button.primary,.anseio-slide-btn.primary,
.anseio-tool,.anseio-header-action.primary,.anseio-red-action,
a.btn,a.button,a.btn-buy{
  border-radius:999px;
}
:is(button,.button,.btn,.btn-buy,.anseio-submit,.hero-button.primary,.anseio-slide-btn.primary,.anseio-auth-button.primary,.anseio-red-action)[style*="780007"],
:is(button,.button,.btn,.btn-buy,.anseio-submit,.hero-button.primary,.anseio-slide-btn.primary,.anseio-auth-button.primary,.anseio-red-action):not(.secondary):not(.outline):not(.ghost),
.anseio-drawer-nav a.active,
.anseio-drawer-nav a[aria-current="page"],
.choice-pill.active,
.anseio-submit,
.btn-buy{
  background:linear-gradient(135deg,var(--a24-vinho),var(--a24-vinho-2))!important;
  color:#fff!important;
  border-color:rgba(143,0,18,.86)!important;
  text-shadow:none!important;
}
:is(button,.button,.btn,.btn-buy,.anseio-submit,.hero-button.primary,.anseio-slide-btn.primary,.anseio-auth-button.primary,.anseio-red-action):not(.secondary):not(.outline):not(.ghost) *,
.anseio-submit *, .btn-buy *, .choice-pill.active *{color:#fff!important;}
/* Cabeçalho integrado com o fundo/curva da logo */
body{padding-top:148px!important;}
.anseio-menu-header{
  height:112px!important;
  display:grid!important;
  grid-template-columns:minmax(76px,160px) minmax(240px,1fr) minmax(210px,310px)!important;
  align-items:start!important;
  padding:12px clamp(14px,3vw,46px) 0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,248,250,.92) 50%,rgba(255,245,248,.20) 100%)!important;
  border-bottom:0!important;
  box-shadow:0 10px 35px rgba(92,0,10,.06)!important;
  backdrop-filter:blur(18px)!important;
  overflow:visible!important;
}
.anseio-menu-header::after{
  content:"";
  position:absolute;left:0;right:0;bottom:-36px;height:62px;pointer-events:none;
  background:radial-gradient(70% 80px at 50% 0,rgba(255,255,255,.92) 0%,rgba(255,246,248,.58) 46%,rgba(255,246,248,0) 76%);
  z-index:-1;
}
.anseio-menu-toggle{
  width:54px!important;height:54px!important;margin:10px 0 0 0!important;border-radius:50%!important;
  background:rgba(255,255,255,.82)!important;border:1px solid rgba(143,0,18,.14)!important;
  box-shadow:0 18px 40px rgba(143,0,18,.10)!important;align-self:start!important;
}
.anseio-menu-toggle span{background:var(--a24-vinho)!important;}
.anseio-menu-logo{
  justify-self:center!important;align-self:start!important;position:relative!important;
  width:min(440px,45vw)!important;min-height:128px!important;margin-top:-2px!important;
  border-radius:0 0 72px 72px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,245,247,.70) 74%,rgba(255,245,247,0))!important;
  box-shadow:0 22px 70px rgba(143,0,18,.10)!important;
  isolation:isolate;
}
.anseio-menu-logo::before{
  content:"";position:absolute;inset:-10px -30px 0;border-radius:0 0 90px 90px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,241,245,.62) 64%,rgba(255,241,245,0));
  z-index:-1;filter:blur(.1px);
}
.anseio-menu-logo img{
  max-height:124px!important;width:auto!important;max-width:95%!important;object-fit:contain!important;
  filter:drop-shadow(0 10px 20px rgba(125,0,10,.12));
}
.anseio-menu-spacer{display:none!important;}
.anseio-header-actions-final{
  justify-self:end;align-self:start;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px;z-index:4;
}
.anseio-header-action{
  position:relative;display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;
  width:58px;height:58px;border-radius:22px;border:1px solid rgba(143,0,18,.12)!important;
  color:var(--a24-vinho)!important;background:rgba(255,255,255,.72)!important;text-decoration:none!important;
  box-shadow:0 16px 38px rgba(143,0,18,.10)!important;backdrop-filter:blur(10px);cursor:pointer;
  transition:transform .22s ease,background .22s ease,box-shadow .22s ease;
}
.anseio-header-action:hover{transform:translateY(-2px);background:#fff!important;box-shadow:0 22px 46px rgba(143,0,18,.16)!important;}
.anseio-header-action svg{width:25px;height:25px;display:block;stroke-width:1.8;}
.anseio-header-action small{font-size:10px;font-weight:900;letter-spacing:.02em;color:inherit;line-height:1;}
.anseio-header-action .badge,.anseio-header-count{
  position:absolute;top:-7px;right:-6px;min-width:20px;height:20px;border-radius:999px;padding:0 6px;
  display:grid;place-items:center;background:var(--a24-vinho)!important;color:#fff!important;font-size:11px;font-weight:900;border:2px solid #fff;
}
.anseio-header-avatar{
  width:58px;height:58px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--a24-vinho),#fff0f3)!important;
  display:grid!important;place-items:center!important;border:2px solid rgba(255,255,255,.96)!important;
}
.anseio-header-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.anseio-header-avatar svg{width:31px;height:31px;color:#fff;}
.anseio-header-auth-final{display:flex;gap:8px;align-items:center;}
.anseio-header-auth-final button{height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(143,0,18,.16);font-weight:900;cursor:pointer;}
.anseio-header-auth-final button:first-child{background:var(--a24-vinho)!important;color:#fff!important;}
.anseio-header-auth-final button:last-child{background:#fff!important;color:var(--a24-vinho)!important;}
/* Menu rápido próximo do mockup */
.anseio-quick-vitrine-final{
  position:fixed;z-index:2998;top:112px;left:50%;transform:translateX(-50%);
  width:min(1080px,calc(100vw - 36px));height:58px;border-radius:24px;
  display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.8vw,24px);padding:0 22px;
  background:rgba(255,255,255,.72);border:1px solid rgba(143,0,18,.11);
  box-shadow:0 22px 70px rgba(143,0,18,.10);backdrop-filter:blur(18px);
  transition:opacity .28s ease,transform .28s ease,pointer-events .28s ease;
}
body.anseio-scrolled .anseio-quick-vitrine-final{opacity:0;pointer-events:none;transform:translate(-50%,-24px) scale(.98);}
.anseio-quick-vitrine-final a{display:flex;align-items:center;gap:8px;min-width:0;color:var(--a24-vinho)!important;text-decoration:none;font-weight:850;font-size:13px;white-space:nowrap;opacity:.92;}
.anseio-quick-vitrine-final a svg{width:22px;height:22px;flex:0 0 auto;}
.anseio-quick-vitrine-final a.is-active{position:relative;color:var(--a24-vinho-3)!important;}
.anseio-quick-vitrine-final a.is-active::after{content:"";position:absolute;left:50%;bottom:-17px;width:48px;height:2px;border-radius:4px;background:var(--a24-vinho);transform:translateX(-50%);}
/* Menu lateral boutique */
.anseio-menu-overlay{background:rgba(18,6,9,.42)!important;backdrop-filter:blur(5px);}
.anseio-drawer{
  width:min(410px,92vw)!important;border-right:0!important;border-radius:0 36px 36px 0!important;
  background:linear-gradient(180deg,#fff 0,#fff8f9 72%,#fff 100%)!important;
  box-shadow:32px 0 90px rgba(45,8,14,.22)!important;overflow:auto!important;
}
.anseio-drawer-close,.anseio-modal-x,.anseio-choice-close{display:none!important;}
.anseio-drawer-head{justify-content:center!important;text-align:center!important;padding:24px 24px 22px!important;background:linear-gradient(180deg,#fff,#fff7f8)!important;border-bottom:1px solid rgba(143,0,18,.08)!important;}
.anseio-drawer-head a{display:grid;place-items:center;width:100%;}
.anseio-drawer-head img{max-height:118px!important;max-width:86%!important;filter:drop-shadow(0 10px 18px rgba(143,0,18,.10));}
.anseio-drawer-kicker{font-size:12px!important;letter-spacing:.24em!important;color:var(--a24-vinho)!important;margin:20px 0 12px!important;}
.anseio-drawer-nav{gap:10px!important;}
.anseio-drawer-nav a{
  min-height:54px!important;border-radius:20px!important;padding:0 16px!important;
  background:rgba(255,255,255,.82)!important;border:1px solid rgba(143,0,18,.10)!important;color:var(--a24-vinho)!important;
  font-weight:900!important;letter-spacing:.04em!important;box-shadow:0 12px 28px rgba(143,0,18,.05)!important;text-transform:capitalize!important;
}
.anseio-drawer-nav a:hover,.anseio-drawer-nav a[aria-current="page"]{background:linear-gradient(135deg,var(--a24-vinho),var(--a24-vinho-2))!important;color:#fff!important;transform:translateX(4px);}
.anseio-drawer-nav a:hover *,.anseio-drawer-nav a[aria-current="page"] *{color:#fff!important;}
.anseio-drawer .anseio-auth-box,.anseio-drawer .anseio-user-box,.anseio-drawer [data-cart-link],.anseio-drawer a[href*="favoritos"]{display:none!important;}
.anseio-drawer-footer{margin-top:22px;padding:20px;border-radius:24px;background:#fff;border:1px solid rgba(143,0,18,.10);color:var(--a24-muted)!important;text-align:center;}
/* Hero e imagens geradas nos banners/vitrines */
body[data-page="index"] .hero-carousel, .hero-carousel{position:relative;overflow:hidden;}
.hero-carousel::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,247,249,.80),rgba(143,0,18,.22)),url('../images/phase24/hero-home-boutique.jpg') center/cover no-repeat;z-index:0;}
.hero-carousel > *{position:relative;z-index:1;}
.anseio-category-hero{background-image:linear-gradient(180deg,rgba(45,10,18,.18),rgba(45,10,18,.74)),var(--a24-hero-image,var(--hero-image))!important;}
body[data-page="lingerie"]{--a24-hero-image:url('../images/phase24/hero-lingerie-premium.jpg');}
body[data-page="linha-noite"]{--a24-hero-image:url('../images/phase24/hero-linha-noite.jpg');}
body[data-page="moda-praia"]{--a24-hero-image:url('../images/phase24/hero-moda-praia.jpg');}
body[data-page="sex-shop"]{--a24-hero-image:url('../images/phase24/hero-sexshop-premium.jpg');}
body[data-page="acessorios"]{--a24-hero-image:url('../images/phase24/hero-acessorios.jpg');}
body[data-page="ofertas"]{--a24-hero-image:url('../images/phase24/hero-ofertas.jpg');}
.home-vitrine-card:nth-child(1),.category-card[href*="lingerie"]{--card-image:url('../images/phase24/hero-lingerie-premium.jpg')!important;}
.home-vitrine-card:nth-child(2),.category-card[href*="linha-noite"]{--card-image:url('../images/phase24/hero-linha-noite.jpg')!important;}
.home-vitrine-card:nth-child(3),.category-card[href*="sex-shop"]{--card-image:url('../images/phase24/hero-sexshop-premium.jpg')!important;}
.home-vitrine-card:nth-child(4),.category-card[href*="moda-praia"]{--card-image:url('../images/phase24/hero-moda-praia.jpg')!important;}
.home-vitrine-card:nth-child(5),.category-card[href*="acessorios"]{--card-image:url('../images/phase24/hero-acessorios.jpg')!important;}
/* Filtro de vitrine menor, como ferramenta */
.anseio-vitrine-tools,.anseio-vitrine-toolbar,.vitrine-tools{max-width:360px!important;margin-left:auto!important;margin-right:clamp(14px,4vw,72px)!important;border-radius:22px!important;padding:10px 12px!important;background:rgba(255,255,255,.75)!important;box-shadow:0 18px 45px rgba(143,0,18,.08)!important;}
.anseio-vitrine-tools input,.anseio-vitrine-toolbar input,.vitrine-tools input{min-height:38px!important;font-size:13px!important;}
/* Clique fora substitui X: feedback visual */
.anseio-auth-modal,.anseio-track-modal,.anseio-choice-overlay{cursor:pointer;}
.anseio-auth-panel,.anseio-track-panel,.anseio-choice-panel{cursor:auto;}
.anseio-auth-panel::after,.anseio-track-panel::after,.anseio-choice-panel::after{content:"Toque fora para fechar";display:block;margin-top:14px;text-align:center;color:#9c7b81;font-size:12px;font-weight:700;}
/* Carrinho vetorial e ícones mais premium */
.anseio-cart-vector{display:inline-grid;place-items:center;color:currentColor;}
.anseio-cart-vector svg{width:26px;height:26px;}
/* Ajustes mobile */
@media(max-width:900px){
  body{padding-top:126px!important;}
  .anseio-menu-header{height:96px!important;grid-template-columns:64px 1fr 156px!important;padding:8px 10px 0!important;}
  .anseio-menu-logo{width:min(260px,48vw)!important;min-height:104px!important;border-radius:0 0 48px 48px!important;}
  .anseio-menu-logo img{max-height:100px!important;}
  .anseio-header-actions-final{gap:6px;margin-top:8px;}
  .anseio-header-action{width:45px;height:45px;border-radius:17px;}
  .anseio-header-action small{display:none;}
  .anseio-header-action svg{width:22px;height:22px;}
  .anseio-header-avatar{width:45px;height:45px;}
  .anseio-header-auth-final button{height:38px;padding:0 11px;font-size:12px;}
  .anseio-quick-vitrine-final{top:93px;width:calc(100vw - 20px);height:48px;justify-content:flex-start;overflow-x:auto;gap:16px;padding:0 16px;border-radius:18px;scrollbar-width:none;}
  .anseio-quick-vitrine-final::-webkit-scrollbar{display:none;}
  .anseio-quick-vitrine-final a{font-size:12px;}
  .anseio-quick-vitrine-final a svg{width:20px;height:20px;}
  .anseio-drawer-head img{max-height:104px!important;}
}
@media(max-width:560px){
  .anseio-menu-header{grid-template-columns:54px 1fr 138px!important;}
  .anseio-menu-toggle{width:44px!important;height:44px!important;}
  .anseio-menu-logo{width:min(218px,46vw)!important;}
  .anseio-menu-logo img{max-height:92px!important;}
  .anseio-header-auth-final button:last-child{display:none;}
}

.anseio-account-pop-final{position:fixed;right:clamp(12px,3vw,42px);top:86px;z-index:4100;}
.anseio-account-pop-card{min-width:240px;background:rgba(255,255,255,.96);border:1px solid rgba(143,0,18,.12);border-radius:24px;padding:16px;box-shadow:0 28px 80px rgba(44,6,12,.22);display:grid;gap:9px;backdrop-filter:blur(16px);}
.anseio-account-pop-card strong{color:var(--a24-vinho);font-size:16px;}
.anseio-account-pop-card small{color:#7b6569;margin-bottom:6px;}
.anseio-account-pop-card a,.anseio-account-pop-card button{min-height:42px;border-radius:14px;padding:0 13px;display:flex;align-items:center;text-decoration:none;border:1px solid rgba(143,0,18,.10);background:#fff;color:var(--a24-vinho);font-weight:900;cursor:pointer;}
.anseio-account-pop-card button{background:linear-gradient(135deg,var(--a24-vinho),var(--a24-vinho-2))!important;color:#fff!important;}
@media(max-width:720px){.anseio-account-pop-final{right:10px;top:76px}.anseio-account-pop-card{min-width:220px}}
