/* ============================================================
   CØRE VØLT+ — A energia certa para comprar bem
   Folha de estilos partilhada (luxo: azul #101010 + preto + dourado)
   ============================================================ */

:root{
  --ouro:#c9a227; --ouro-2:#e8c96a; --ouro-grad:linear-gradient(120deg,#b8860b,#e8c96a 50%,#c9a227);
  --navy:#101010; --navy-2:#1e1e20; --azul-accao:#8a6a15;
  --bg:#f6f2e7; --card:#fffdf6; --ink:#15130e; --muted:#5f594b; --line:#e6dfcc;
  --ok:#0d9488; --risco:#b45309;
  --radius:16px;
  --sombra:0 1px 2px rgba(0,0,90,.06),0 10px 30px -14px rgba(0,0,90,.18);
  --sombra-hover:0 16px 40px -12px rgba(0,0,90,.28);
  --color-scheme:light;
}
[data-tema="escuro"]{
  --navy:#0c0c0e; --navy-2:#191919; --azul-accao:#e8c96a;
  --bg:#050506; --card:#0d0d0f; --ink:#f3f1ea; --muted:#a8a299; --line:rgba(255,255,255,.30);
  --ouro:#d9b545; --ouro-2:#f0d98a;
  --sombra:0 1px 2px rgba(0,0,0,.4),0 10px 30px -14px rgba(0,0,0,.5);
  --sombra-hover:0 16px 40px -12px rgba(0,0,0,.6);
  --color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;color-scheme:var(--color-scheme)}
body{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}
h1,h2,h3,.serif{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.01em}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
a{color:var(--azul-accao)}
:focus-visible{outline:3px solid var(--ouro);outline-offset:2px;border-radius:4px}
.saltarp{position:absolute;left:-999px;top:0;background:var(--ouro);color:#101010;padding:10px 16px;font-weight:700;z-index:200}
.saltarp:focus{left:8px;top:8px}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:60;background:var(--card);background:color-mix(in srgb,var(--card) 88%,transparent);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:14px}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}
.logo-marko{width:auto;height:45px;flex:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}
.logo-texto{font-family:Georgia,serif;font-weight:700;font-size:clamp(1rem,2.4vw,1.22rem);letter-spacing:.12em;white-space:nowrap}
.logo-texto b{background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nav-links{display:flex;gap:24px;align-items:center;list-style:none}
.nav-links a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.93rem;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--ouro-grad);transition:width .25s}
.nav-links a:hover::after{width:100%}
.accoes-header{display:flex;align-items:center;gap:10px}
.btn-tema{background:none;border:1px solid var(--line);border-radius:10px;width:38px;height:38px;cursor:pointer;color:var(--ink);display:flex;align-items:center;justify-content:center;transition:border-color .2s,transform .2s}
.btn-tema:hover{border-color:var(--ouro);transform:rotate(15deg)}
.btn-tema svg{width:19px;height:19px}
.btn-tema .lua{display:none}
[data-tema="escuro"] .btn-tema .sol{display:none}
[data-tema="escuro"] .btn-tema .lua{display:block}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:8px;cursor:pointer;color:var(--ink)}
.nav-toggle svg{width:22px;height:22px;display:block}
.sel-idioma{padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-weight:700;font-size:.82rem;cursor:pointer;letter-spacing:.05em}
.sel-idioma:hover{border-color:var(--ouro)}
.sel-idioma:focus-visible{outline:3px solid var(--ouro);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:780px){.sel-idioma{padding:7px 6px;font-size:.72rem;letter-spacing:.02em}}
@media (max-width:780px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:var(--card);flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 16px;border-bottom:1px solid var(--line);box-shadow:var(--sombra)}
  .nav-links.open{display:flex}
  .nav-links li{width:100%}
  .nav-links a{display:block;padding:13px 4px;font-size:1rem}
  .nav-links li + li{border-top:1px solid var(--line)}
  .nav-links a.nav-cupoes{margin-top:12px;margin-bottom:4px;border:1px dashed var(--ouro);border-radius:12px;padding:12px;text-align:center;color:var(--ouro);font-weight:800}
}

/* ---------- Botões ---------- */
.btn{display:inline-block;background:var(--ouro-grad);color:#101010;font-weight:800;text-decoration:none;padding:13px 28px;border-radius:12px;border:0;cursor:pointer;font-size:.98rem;letter-spacing:.01em;transition:transform .18s,box-shadow .18s;box-shadow:0 6px 18px -8px rgba(201,162,39,.55)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -8px rgba(201,162,39,.65)}
.btn.contorno{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn.contorno:hover{border-color:var(--ouro)}
.hero .btn.contorno{color:#fff;border-color:rgba(255,255,255,.4)}
.hero .btn.contorno:hover{background:rgba(255,255,255,.08)}

/* ---------- Hero ---------- */
.hero{background:radial-gradient(1200px 500px at 70% -10%,rgba(201,162,39,.15),transparent),linear-gradient(140deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;padding:84px 0 76px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(232,201,106,.14) 1px,transparent 1px);background-size:26px 26px;pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ouro-2);border:1px solid rgba(232,201,106,.4);border-radius:999px;padding:6px 16px;margin-bottom:22px;background:rgba(232,201,106,.07)}
.hero h1{font-size:clamp(2rem,5.4vw,3.4rem);line-height:1.12;max-width:760px;animation:entrar .8s ease both}
.hero h1 b{background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{margin:20px 0 32px;max-width:640px;color:#ddd6c8;font-size:1.1rem;animation:entrar .8s .15s ease both}
.hero-accoes{display:flex;gap:12px;flex-wrap:wrap;animation:entrar .8s .3s ease both}
.hero-contadores{display:flex;gap:44px;flex-wrap:wrap;margin-top:52px;animation:entrar .8s .45s ease both}
.contador b{font-family:Georgia,serif;font-size:2.7rem;color:var(--ouro-2);text-shadow:0 2px 18px rgba(232,201,106,.25)}
.contador span{display:block;font-size:.85rem;color:#cfc9bc;letter-spacing:.04em}
@keyframes entrar{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* ---------- Barra de confiança ---------- */
.confianca{background:var(--card);border-bottom:1px solid var(--line)}
.confianca .container{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-top:18px;padding-bottom:18px}
.conf-item{display:flex;align-items:center;gap:11px;font-size:.88rem;font-weight:600;color:var(--muted)}
.conf-item svg{width:22px;height:22px;flex:none;color:var(--ouro)}
@media (max-width:780px){.confianca .container{grid-template-columns:repeat(2,1fr)}}

/* ---------- Secções ---------- */
section{padding:clamp(56px,9vw,92px) 0}
section[id]{scroll-margin-top:84px}
.zona-alt{background:var(--bg);background:color-mix(in srgb,var(--card) 55%,var(--bg));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.zona-card{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.zona-ouro{background:var(--bg);background:color-mix(in srgb,var(--ouro) 4%,var(--bg))}
.sec-head{text-align:center;max-width:660px;margin:0 auto clamp(34px,5vw,50px)}
.sec-head h2{font-size:clamp(1.6rem,3.6vw,2.3rem)}
.filete{width:64px;height:3px;background:var(--ouro-grad);border-radius:99px;margin:14px auto 0}
.sec-head p{color:var(--muted);margin-top:14px}
.kicker{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ouro);margin-bottom:12px}

/* ---------- Revelação ao scroll ---------- */
.revelar{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.revelar.visivel{opacity:1;transform:none}


/* ---------- Categorias ---------- */
.grelha-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:14px}
.cat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 16px;text-align:center;cursor:pointer;font:inherit;color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s}
.cat-card:hover{transform:translateY(-5px);box-shadow:var(--sombra-hover);border-color:var(--ouro)}
.cat-card svg{width:34px;height:34px;color:var(--ouro);margin-bottom:10px}
.cat-card b{display:block;font-size:.95rem}
.cat-card span{font-size:.78rem;color:var(--muted)}

/* ---------- Filtros / pesquisa ---------- */
.controles{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.barra-filtros{display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:center;align-items:center;margin-bottom:18px;padding-bottom:18px;border-bottom:1px dashed var(--line)}
.linha-meta{display:flex;justify-content:space-between;align-items:center;gap:10px 18px;flex-wrap:wrap;margin-bottom:22px}
.chip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 18px;font-weight:600;font-size:.88rem;cursor:pointer;color:var(--muted);transition:all .18s}
.chip:hover{border-color:var(--ouro);color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ouro-grad);border-color:transparent;color:#101010;font-weight:800}
.linha-busca{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}
.linha-busca input[type="search"]{width:min(380px,100%);padding:12px 18px;border:1px solid var(--line);border-radius:12px;font-size:.95rem;background:var(--card);color:var(--ink)}
.linha-busca select{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font-size:.92rem;cursor:pointer}
.linha-busca input:focus,.linha-busca select:focus{outline:3px solid rgba(201,162,39,.35);border-color:var(--ouro)}

/* ---------- Cards de produto ---------- */
.grelha-produtos{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--sombra);transition:transform .2s,box-shadow .2s;position:relative}
.card:hover{transform:translateY(-6px);box-shadow:var(--sombra-hover)}
.card-media{height:150px;display:flex;align-items:center;justify-content:center;position:relative}
.card-media svg{width:52px;height:52px;color:rgba(255,255,255,.9)}
.card-media img{width:100%;height:100%;object-fit:cover}
.card-desconto{position:absolute;top:12px;left:12px;background:var(--ouro-grad);color:#101010;font-weight:800;font-size:.78rem;padding:4px 10px;border-radius:999px}
.card-tag{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.85);color:var(--ouro-2);font-weight:700;font-size:.72rem;letter-spacing:.06em;padding:4px 10px;border-radius:999px;text-transform:uppercase}
.card-corpo{padding:18px 18px 16px;display:flex;flex-direction:column;gap:9px;flex-grow:1}
.card-cat{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ouro)}
.card h3{font-size:1.05rem;line-height:1.35}
.link-detalhe{color:inherit;text-decoration:none}
.link-detalhe:hover{color:var(--ouro)}
.card .desc{font-size:.88rem;color:var(--muted);flex-grow:1}
.pros{list-style:none;display:flex;flex-direction:column;gap:3px}
.pros li{font-size:.8rem;color:var(--muted)}
.pros li::before{content:"✓ ";color:var(--ok);font-weight:800}
.pros li.x::before{content:"✕ ";color:var(--risco)}
.card-estrelas{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}
.estrelas{color:var(--ouro);letter-spacing:2px;font-size:.9rem}
.card-precos{display:flex;align-items:baseline;gap:10px}
.preco{font-weight:800;font-size:1.32rem;font-family:Georgia,serif;color:var(--ink)}
.preco-antigo{color:var(--muted);text-decoration:line-through;font-size:.88rem}
.card-acoes{display:flex;gap:8px;align-items:center;margin-top:4px}
.btn-oferta{flex:1;text-align:center;background:var(--ouro-grad);color:#101010;font-weight:800;font-size:.9rem;padding:10px 12px;border-radius:10px;text-decoration:none;transition:transform .15s}
.btn-oferta:hover{transform:scale(1.03)}
.btn-oferta.disabled{background:var(--line);color:var(--muted);cursor:not-allowed}
.btn-comp{background:none;border:1px solid var(--line);border-radius:10px;padding:9px 10px;cursor:pointer;font-size:.75rem;font-weight:700;color:var(--muted);transition:all .18s}
.btn-comp:hover{border-color:var(--ouro);color:var(--ink)}
.btn-comp.on{background:var(--navy);color:var(--ouro-2);border-color:var(--navy)}
[data-tema="escuro"] .btn-comp.on{background:var(--ouro-grad);color:#101010}
.partilhar{display:flex;gap:6px}
.partilhar button{background:none;border:0;cursor:pointer;padding:4px;color:var(--muted);border-radius:6px;display:flex}
.partilhar button:hover{color:var(--ouro);background:rgba(201,162,39,.12)}
.partilhar svg{width:16px;height:16px}
.rotulo-pub{font-size:.68rem;color:var(--muted);font-weight:600;letter-spacing:.05em;opacity:.8}
.vazio{grid-column:1/-1;text-align:center;color:var(--muted);padding:44px 0}

/* ---------- Comparador ---------- */
.comp-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--sombra)}
.comp-wrap table{width:100%;border-collapse:collapse;min-width:560px}
.comp-wrap th,.comp-wrap td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:.9rem;vertical-align:top}
.comp-wrap th{background:var(--navy);color:var(--ouro-2);font-family:Georgia,serif;font-size:1rem}
[data-tema="escuro"] .comp-wrap th{background:var(--navy-2)}
.comp-wrap td b{font-family:Georgia,serif}
.comp-wrap .btn-oferta{display:inline-block;padding:8px 16px}
.msg-comp{text-align:center;color:var(--muted);padding:30px;border:1px dashed var(--line);border-radius:var(--radius)}
.barra-comp{position:fixed;bottom:18px;left:50%;transform:translateX(-50%) translateY(120px);z-index:80;background:var(--navy);color:#fff;border-radius:999px;padding:10px 12px 10px 22px;display:flex;gap:14px;align-items:center;box-shadow:var(--sombra-hover);transition:transform .3s;font-size:.9rem}
.barra-comp.on{transform:translateX(-50%) translateY(0)}
.barra-comp b{color:var(--ouro-2)}
.barra-comp button{border:0;border-radius:999px;padding:9px 18px;font-weight:800;cursor:pointer}
.barra-comp .ir{background:var(--ouro-grad);color:#101010}
.barra-comp .limpar{background:transparent;color:#cfc9bc;border:1px solid rgba(255,255,255,.25)}

/* ---------- Como funciona ---------- */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:780px){.passos{grid-template-columns:1fr}}
.passo{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:30px 24px;text-align:center;transition:transform .2s}
.passo:hover{transform:translateY(-4px)}
.passo-num{width:48px;height:48px;border-radius:50%;background:var(--ouro-grad);color:#101010;font-weight:800;font-size:1.25rem;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-family:Georgia,serif}
.passo h3{font-size:1.08rem;margin-bottom:8px}
.passo p{font-size:.9rem;color:var(--muted)}

/* ---------- Guias (blog) ---------- */
.grelha-guias{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}
.guia-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;box-shadow:var(--sombra)}
.guia-card:hover{transform:translateY(-6px);box-shadow:var(--sombra-hover)}
.guia-media{height:130px}
.guia-corpo{padding:18px;display:flex;flex-direction:column;gap:8px;flex-grow:1}
.guia-corpo h3{font-size:1.05rem}
.guia-corpo p{font-size:.86rem;color:var(--muted);flex-grow:1}
.guia-meta{font-size:.76rem;color:var(--ouro);font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.ler-mais{font-weight:800;font-size:.88rem;color:var(--ouro)}

/* ---------- FAQ ---------- */
.faq{max-width:740px;margin:0 auto}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;padding:4px 20px}
.faq summary{font-weight:700;cursor:pointer;padding:15px 0;list-style:none;position:relative;padding-right:30px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--ouro);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{color:var(--muted);font-size:.93rem;padding-bottom:16px}

/* ---------- CTA final ---------- */
.cta-final{background:linear-gradient(140deg,var(--navy),var(--navy-2));border-radius:22px;color:#fff;text-align:center;padding:56px 26px;position:relative;overflow:hidden}
.cta-final::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(232,201,106,.12) 1px,transparent 1px);background-size:22px 22px;pointer-events:none}
.cta-final>*{position:relative;z-index:1}
.cta-final h2{font-size:clamp(1.5rem,3.2vw,2.1rem);margin-bottom:12px}
.cta-final h2 b{background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta-final p{color:#ddd6c8;margin-bottom:28px}

/* ---------- Footer ---------- */
.site-footer{background:var(--navy);color:#cfc9bc;padding:52px 0 28px;margin-top:30px}
[data-tema="escuro"] .site-footer{background:#0a0a0c}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px;margin-bottom:28px}
@media (max-width:780px){.footer-grid{grid-template-columns:1fr}}
.site-footer h4{color:#fff;font-size:.95rem;margin-bottom:13px;font-family:Georgia,serif}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:9px}
.site-footer a{color:#cfc9bc;text-decoration:none;font-size:.9rem;transition:color .2s}
.site-footer a:hover{color:var(--ouro-2)}
.footer-brand .logo-marko{height:34px}
.footer-brand{display:flex;align-items:center;gap:10px;color:#fff;font-family:Georgia,serif;font-weight:700;font-size:1.25rem;letter-spacing:.12em;margin-bottom:12px}
.footer-brand b{background:var(--ouro-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.aviso-afiliado{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;font-size:.78rem;line-height:1.75;color:#8a8578}
.copy{text-align:center;font-size:.78rem;margin-top:22px;color:#8a8578}

/* ---------- Banner de cookies ---------- */
.banner-cookies{position:fixed;bottom:16px;left:16px;right:16px;max-width:520px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sombra-hover);padding:20px 22px;z-index:90}
.banner-cookies h2{font-size:1rem;margin-bottom:6px}
.banner-cookies p{font-size:.84rem;color:var(--muted);margin-bottom:14px}
.banner-accoes{display:flex;gap:10px;flex-wrap:wrap}
.banner-accoes .btn{padding:9px 18px;font-size:.86rem}
.btn.secundario{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}

/* ---------- Assistente IA ---------- */
.ia-btn{position:fixed;bottom:20px;right:20px;z-index:85;width:58px;height:58px;border-radius:50%;background:var(--ouro-grad);border:0;cursor:pointer;box-shadow:var(--sombra-hover);display:flex;align-items:center;justify-content:center;transition:transform .2s}
.ia-btn:hover{transform:scale(1.08)}
.ia-btn svg{width:26px;height:26px;color:#101010}
.ia-painel{position:fixed;bottom:90px;right:20px;z-index:85;width:min(370px,calc(100vw - 32px));height:min(480px,70vh);background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sombra-hover);display:flex;flex-direction:column;overflow:hidden;transform:translateY(16px);opacity:0;pointer-events:none;transition:all .25s}
.ia-painel.on{transform:none;opacity:1;pointer-events:auto}
.ia-topo{background:linear-gradient(140deg,var(--navy),var(--navy-2));color:#fff;padding:14px 18px;display:flex;align-items:center;gap:10px}
.ia-topo b{font-family:Georgia,serif;letter-spacing:.04em}
.ia-topo .estado{font-size:.72rem;color:var(--ouro-2);display:block}
.ia-topo button{margin-left:auto;background:none;border:0;color:#fff;font-size:1.3rem;cursor:pointer;opacity:.8}
.ia-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.ia-msg{max-width:85%;padding:10px 14px;border-radius:14px;font-size:.88rem;line-height:1.5}
.ia-msg.bot{background:var(--card);background:color-mix(in srgb,var(--line) 45%,transparent);color:var(--ink);align-self:flex-start;border-bottom-left-radius:4px}
.ia-msg.user{background:var(--ouro-grad);color:#101010;align-self:flex-end;border-bottom-right-radius:4px;font-weight:600}
.ia-msg a{color:var(--azul-accao);font-weight:700}
[data-tema="escuro"] .ia-msg a{color:var(--ouro-2)}
.ia-msg .mini-prod{display:block;margin-top:6px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);font-size:.82rem}
.ia-msg .mini-prod:hover{border-color:var(--ouro)}
.ia-chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 16px 10px}
.ia-chips button{border:1px solid var(--line);background:none;border-radius:999px;padding:6px 13px;font-size:.78rem;cursor:pointer;color:var(--muted);font-weight:600}
.ia-chips button:hover{border-color:var(--ouro);color:var(--ink)}
.ia-form{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--line)}
.ia-form input{flex:1;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:var(--bg);color:var(--ink);font-size:.9rem}
.ia-form input:focus{outline:2px solid var(--ouro)}
.ia-form button{background:var(--ouro-grad);border:0;border-radius:10px;width:42px;cursor:pointer;color:#101010;font-weight:800}

/* ---------- Páginas legais / artigos ---------- */
.pagina{max-width:780px;margin:0 auto;padding:44px 22px 90px}
.pagina h1{font-size:2rem;margin:16px 0 8px}
.pagina h2{font-size:1.2rem;margin:34px 0 10px;color:var(--azul-accao)}
[data-tema="escuro"] .pagina h2{color:var(--ouro-2)}
.pagina p,.pagina li{font-size:.95rem;color:var(--muted)}
.pagina strong{color:var(--ink)}
.pagina ul{padding-left:22px;margin:8px 0}
.pagina .topo-voltar{margin-top:30px}
.data-doc{font-size:.82rem;color:var(--muted)}
.caixa{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--ouro);border-radius:10px;padding:14px 18px;margin:18px 0}
.caixa.alerta{border-left-color:var(--risco)}
.tabela-doc{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.9rem;margin:14px 0}
.tabela-doc th,.tabela-doc td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);color:var(--muted)}
.tabela-doc th{background:var(--card);background:color-mix(in srgb,var(--ouro) 14%,var(--card));color:var(--ink);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.banner-artigo{height:180px;border-radius:var(--radius);margin:20px 0;display:flex;align-items:center;justify-content:center}
.banner-artigo svg{width:60px;height:60px;color:rgba(255,255,255,.9)}

/* ---------- Favoritos, vistos, guias-hit e dado ---------- */
.btn-fav{background:none;border:0;font-size:1.15rem;cursor:pointer;color:var(--muted);padding:4px 6px;border-radius:8px;line-height:1;transition:all .15s}
.btn-fav.on{color:#e0245e}
.btn-fav:hover{background:rgba(224,36,94,.1)}
.chip-fav.on{background:var(--navy);color:var(--ouro-2);border-color:var(--navy);font-weight:800}
[data-tema="escuro"] .chip-fav.on{background:var(--ouro-grad);color:#101010}
.hits-guias{margin:0 0 20px;display:flex;flex-direction:column;gap:8px}
.guia-hit-titulo{font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro)}
.guia-hit{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--ouro);border-radius:10px;padding:10px 14px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem;transition:border-color .2s}
.guia-hit:hover{border-color:var(--ouro)}
.linha-vistos{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(175px,1fr);gap:12px;overflow-x:auto;padding-bottom:8px}
.mini-visto{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px;font-size:.84rem;transition:border-color .2s,transform .2s}
.mini-visto:hover{border-color:var(--ouro);transform:translateY(-3px)}
.mini-visto b{line-height:1.3}
.mini-visto span{color:var(--ouro);font-weight:800;font-family:Georgia,serif}
.card-sorteio{outline:3px solid var(--ouro);outline-offset:3px;animation:pulsa 1s ease 2}
@keyframes pulsa{50%{transform:translateY(-6px)}}
.btn-dado{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:12px 16px;cursor:pointer;font-size:1.05rem;transition:border-color .2s,transform .2s;color:var(--ink)}
.btn-dado:hover{border-color:var(--ouro);transform:rotate(12deg)}

/* ---------- Voltar ao topo ---------- */
.btn-topo{position:fixed;bottom:92px;right:24px;z-index:70;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:1.2rem;cursor:pointer;box-shadow:var(--sombra);opacity:0;pointer-events:none;transform:translateY(12px);transition:all .25s}
.btn-topo.on{opacity:1;pointer-events:auto;transform:none}
.btn-topo:hover{border-color:var(--ouro);color:var(--ouro)}

/* ============================================================
   EFEITOS & TRANSIÇÕES V2 — só transform/opacity (GPU)
   ============================================================ */


/* Brilho deslizante nos elementos dourados */
.btn, .btn-oferta, .cat-card { position: relative; overflow: hidden; }
.btn::after, .btn-oferta::after, .cat-card::after {
  content: ""; position: absolute; top: 0; left: 0; width: 55%; height: 100%;
  background: linear-gradient(105deg, transparent, rgba(255,255,255,.42), transparent);
  transform: translateX(-180%) skewX(-18deg); transition: transform .55s ease; pointer-events: none;
}
.btn:hover::after, .btn-oferta:hover::after, .cat-card:hover::after { transform: translateX(340%) skewX(-18deg); }

/* Ondulação (criada pelo vfx.js) */
.ripple-efeito { position: absolute; border-radius: 50%; background: rgba(255,255,255,.45); transform: scale(0); animation: aureaRipple .55s ease-out forwards; pointer-events: none; }
@keyframes aureaRipple { to { transform: scale(2.6); opacity: 0; } }

/* Barra de progresso de leitura */
#barraProgresso { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 120; background: var(--ouro-grad); transform-origin: 0 50%; transform: scaleX(0); pointer-events: none; }

/* Sombra do header ao rolar */
.site-header.com-sombra { box-shadow: var(--sombra); }
@media (min-width:781px){ .site-header.com-sombra .nav { height: 58px; } }
.nav { transition: height .25s ease; }

/* Micro-interações */
.btn:active, .btn-oferta:active { transform: translateY(0) scale(.97); }
.chip:active { transform: scale(.96); }
.card:hover { border-color: var(--ouro); border-color: color-mix(in srgb, var(--ouro) 55%, var(--line)); }
.card-media svg { transition: transform .35s ease; }
.card:hover .card-media svg { transform: scale(1.12); }

/* Toast de feedback */
.aurea-toast { position: fixed; bottom: 96px; left: 50%; transform: translate(-50%, 16px); background: var(--navy); color: #fff; padding: 11px 22px; border-radius: 12px; font-size: .9rem; font-weight: 600; box-shadow: var(--sombra-hover); opacity: 0; pointer-events: none; transition: opacity .25s ease, transform .25s ease; z-index: 130; max-width: calc(100vw - 40px); text-align: center; }
.aurea-toast.on { opacity: 1; transform: translate(-50%, 0); }
[data-tema="escuro"] .aurea-toast { background: var(--ouro-grad); color: #101010; }

/* ---------- Onda de transição CØRE VØLT+ ---------- */
.onda-aurea { position: fixed; inset: 0; z-index: 9999; pointer-events: none; visibility: hidden; overflow: hidden; }
.onda-aurea.onda-cobrir, .onda-aurea.onda-revelar { visibility: visible; }
.onda-banda {
  position: absolute; top: -14%; bottom: -14%; left: -10vw; width: 120vw;
  transform: translateX(-130%) skewX(-12deg);
  background: linear-gradient(100deg,
    rgba(0,0,0,0) 6%, rgba(0,0,0,.68) 26%, rgba(8,8,10,.78) 46%,
    rgba(232,201,106,.36) 55%, rgba(0,0,0,.68) 72%, rgba(0,0,0,0) 94%);
  display: flex; align-items: center; justify-content: center;
}
.onda-halo {
  position: absolute; top: -14%; bottom: -14%; left: -10vw; width: 120vw;
  transform: translateX(-210%) skewX(-12deg);
  background: linear-gradient(100deg, transparent 38%, rgba(232,201,106,.30) 50%, transparent 62%);
}
.onda-marca {
  font-family: Georgia, serif; font-weight: 700; font-size: clamp(1rem, 2.6vw, 1.4rem);
  letter-spacing: .3em; color: rgba(255,255,255,.92); text-shadow: 0 1px 12px rgba(0,0,0,.65); opacity: .9;
}
.onda-marca i { font-style: normal; background: linear-gradient(120deg, #b8860b, #e8c96a 50%, #c9a227); -webkit-background-clip: text; background-clip: text; color: transparent; }
.onda-aurea.onda-cobrir .onda-banda { animation: ondaCobre .34s cubic-bezier(.65,0,.35,1) both; }
.onda-aurea.onda-cobrir .onda-halo { animation: ondaCobre .44s cubic-bezier(.65,0,.35,1) both; }
.onda-aurea.onda-revelar .onda-banda { animation: ondaRevela .64s cubic-bezier(.7,0,.25,1) both; }
.onda-aurea.onda-revelar .onda-halo { animation: ondaRevela .74s cubic-bezier(.7,0,.25,1) both; }
@keyframes ondaCobre { from { transform: translateX(-130%) skewX(-12deg); } to { transform: translateX(0) skewX(-12deg); } }
@keyframes ondaRevela { from { transform: translateX(0) skewX(-12deg); } to { transform: translateX(130%) skewX(-12deg); } }
.onda-aurea.onda-fora { visibility: hidden; }

/* ---------- Botão ✨ liga/desliga efeitos ---------- */
.botao-fx {
  position: fixed; left: 18px; bottom: 20px; z-index: 140;
  width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--line);
  background: var(--card); color: var(--muted); font-size: 1.05rem; cursor: pointer;
  box-shadow: var(--sombra); transition: transform .2s, border-color .2s, color .2s;
}
.botao-fx:hover { transform: scale(1.1); border-color: var(--ouro); }
.botao-fx.on { color: var(--ouro); }
.botao-fx:not(.on) { opacity: .65; }

/* ---------- Efeitos desligados (html.fx-off) ---------- */
html.fx-off .particula, html.fx-off .onda-aurea { display: none; }
html.fx-off .revelar { opacity: 1; transform: none; transition: none; }
html.fx-off [data-parallax] { transform: none !important; }
html.fx-off .btn::after, html.fx-off .btn-oferta::after, html.fx-off .cat-card::after,
html.fx-off .ripple-efeito { display: none; }

/* ---------- Faixa de ofertas + sugestões + contador ---------- */
.faixa-ofertas {
  display: flex; justify-content: center; align-items: center; gap: 8px; flex-wrap: wrap;
  background: linear-gradient(140deg, var(--navy), var(--navy-2));
  color: #ddd6c8; border-radius: 12px; padding: 9px 16px; margin: 0 auto 26px;
  font-size: .85rem; font-weight: 600; width: fit-content; max-width: 100%;
}
.faixa-ofertas b { font-family: Georgia, serif; font-size: 1.05rem; color: var(--ouro-2); letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.contador-resultados { font-size: .84rem; color: var(--muted); margin: 0; font-weight: 600; }
.sugestoes { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0; font-size: .8rem; color: var(--muted); }
.sugestoes button { background: none; border: 0; color: var(--azul-accao); font-weight: 700; cursor: pointer; font-size: .8rem; text-decoration: underline dotted; padding: 2px 4px; }
.sugestoes button:hover { color: var(--ouro); }
[data-tema="escuro"] .sugestoes button { color: var(--ouro-2); }

/* ---------- Badge NOVO + atalhos ---------- */
.card-tag.card-novo { background: var(--ok); color: #fff; letter-spacing: .1em; }

/* ---------- Breadcrumb do produto ---------- */
.migalhas .sep { color: var(--muted); opacity: .6; margin: 0 6px; }
.migalhas a { text-decoration: none; font-weight: 600; }
.migalhas a:hover { color: var(--ouro); }

/* ---------- Partículas douradas do hero (só GPU: transform/opacity) ---------- */
.particula{position:absolute;bottom:-8px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#f4df9a 0%,#e8c96a 40%,rgba(232,201,106,0) 72%);animation:flutuaP linear infinite}
@keyframes flutuaP{
  0%{transform:translate3d(0,6vh,0) scale(.6);opacity:0}
  10%{opacity:var(--op,.65)}
  80%{opacity:var(--op,.65)}
  100%{transform:translate3d(var(--dx,40px),-64vh,0) scale(1.2);opacity:0}
}
body.aba-escondida .particula{animation-play-state:paused}

/* ---------- Balão de dica do botão ✨ ---------- */
.balao-fx{
  position:fixed;left:14px;bottom:76px;z-index:141;max-width:256px;
  background:linear-gradient(140deg,#111112,#101010);color:#f3f0e8;
  border:1px solid rgba(232,201,106,.55);border-radius:14px;
  padding:11px 30px 11px 13px;font-size:.8rem;line-height:1.5;font-weight:500;
  box-shadow:0 12px 30px -10px rgba(4,16,32,.65);
  animation:balaoEntra .45s cubic-bezier(.34,1.56,.64,1) both;cursor:pointer;
}
.balao-fx::after{
  content:"";position:absolute;left:17px;bottom:-7px;width:12px;height:12px;
  background:#08080a;border-right:1px solid rgba(232,201,106,.55);border-bottom:1px solid rgba(232,201,106,.55);
  transform:rotate(45deg);
}
.balao-fechar{position:absolute;top:5px;right:5px;width:22px;height:22px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#ddd6c8;font-size:.68rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.balao-fechar:hover{background:rgba(232,201,106,.3);color:#fff}
@keyframes balaoEntra{from{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}
@media (max-width:520px){.balao-fx{max-width:min(240px,calc(100vw - 80px));font-size:.74rem;bottom:74px;left:12px}}

/* ---------- Impressão (páginas legais imprimíveis) ---------- */
@media print {
  .site-header, .site-footer, .ia-btn, .ia-painel, .btn-topo, .botao-fx,
  .barra-comp, #barraProgresso, .banner-cookies, .hero, .cta-final,
  .faixa-ofertas, .sugestoes, .partilhar, .card-acoes, .onda-aurea { display: none !important; }
  body { background: #fff; color: #000; }
  .pagina { max-width: 100%; padding: 0; }
  a { color: #000; text-decoration: underline; }
  .caixa { border: 1px solid #999; background: #fff; }
}

/* ============================================================
   V4 PRO POLISH — design de nível agência
   ============================================================ */
:root { --ease-suave: cubic-bezier(.22,.61,.36,1); }

/* seleção e scrollbar da marca */
::selection { background: rgba(232,201,106,.4); color: #101010; }
html { scrollbar-color: var(--ouro) var(--line); scrollbar-width: thin; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #c9a227, #b8860b); border-radius: 99px; border: 2px solid var(--bg); }
::-webkit-scrollbar-thumb:hover { background: #c9a227; }

/* header em vidro premium */
.site-header {
  background: var(--card);
  background: color-mix(in srgb, var(--card) 84%, transparent);
  -webkit-backdrop-filter: blur(10px) saturate(1.25);
  backdrop-filter: blur(10px) saturate(1.25);
}

/* tema a transicionar suavemente */
body, .site-header, .card, .chip, .guia-card, .passo, .faq details, .comp-wrap,
.pagina .caixa, .mini-visto, .mini-rel, .sel-idioma, .btn-tema, .cat-card {
  transition-property: background-color, border-color, color, box-shadow;
  transition-duration: .35s; transition-timing-function: ease;
}

/* borda dourada em gradiente nos cards (aparece no hover) */
.card::after {
  content: ""; position: absolute; inset: 0; border-radius: var(--radius); padding: 1.5px;
  background: linear-gradient(135deg, rgba(232,201,106,.85), transparent 38%, transparent 62%, rgba(232,201,106,.5));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  opacity: 0; transition: opacity .4s var(--ease-suave); pointer-events: none;
}
.card:hover::after { opacity: 1; }

/* zoom suave nas fotos */
.card-media img { transition: transform .65s var(--ease-suave); }
.card:hover .card-media img { transform: scale(1.07); }

/* esqueletos de carregamento */
@keyframes brilhoSkeleton { from { background-position: -200% 0; } to { background-position: 200% 0; } }
.skeleton {
  background: var(--line);
  background: linear-gradient(90deg, var(--line) 25%, color-mix(in srgb, var(--line) 35%, var(--card)) 50%, var(--line) 75%);
  background-size: 200% 100%; animation: brilhoSkeleton 1.15s linear infinite; border-radius: 10px;
}
.skeleton-card { pointer-events: none; }

/* toast com barra de tempo */
.aurea-toast { overflow: hidden; }
.aurea-toast::after {
  content: ""; position: absolute; left: 14px; right: 14px; bottom: 6px; height: 2px;
  background: rgba(255,255,255,.4); transform-origin: left; animation: toastBar 2.2s linear forwards;
}
[data-tema="escuro"] .aurea-toast::after { background: rgba(0,0,0,.35); }
@keyframes toastBar { to { transform: scaleX(0); } }

/* botão topo com anel de progresso */
.btn-topo { background: conic-gradient(var(--ouro) calc(var(--p, 0) * 1%), var(--line) 0); border: 0; }

/* miniaturas no comparador */
.mini-comp { width: 28px; height: 28px; border-radius: 8px; border: 1px solid rgba(255,255,255,.35); flex: none; }

/* alvos de toque grandes (mobile) */
@media (pointer: coarse) {
  .chip, .btn-comp, .btn-dado, .btn-tema, .partilhar button, .btn-fav { min-height: 44px; min-width: 44px; }
  .partilhar button { display: flex; align-items: center; justify-content: center; }
}

/* safe-areas iPhone */
.nav { padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); }
.botao-fx { left: max(18px, env(safe-area-inset-left)); }
.ia-btn { right: max(20px, env(safe-area-inset-right)); bottom: max(20px, env(safe-area-inset-bottom)); }

/* mobile: hero e grelha compactas */
@media (max-width: 520px) {
  .hero { padding: 56px 0 52px; }
  section { padding: 56px 0; }
  .linha-meta { flex-direction: column; align-items: center; gap: 8px; }
  .barra-filtros { gap: 8px 16px; }
  .grelha-produtos { grid-template-columns: repeat(auto-fill, minmax(158px, 1fr)); gap: 13px; }
  .card-media { height: 120px; }
  .card-corpo { padding: 13px 13px 11px; }
  .preco { font-size: 1.12rem; }
  .hero-contadores { gap: 26px; margin-top: 36px; }
  .contador b { font-size: 2rem; }
}

/* gradientes das capas dos guias (classes em vez de inline) */
.guia-media.g1,.banner-artigo.g1{background:linear-gradient(135deg,#141416,#c9a227)}
.guia-media.g2,.banner-artigo.g2{background:linear-gradient(135deg,#101010,#e8c96a)}
.guia-media.g3,.banner-artigo.g3{background:linear-gradient(135deg,#232326,#e8c96a)}
.guia-media.g4,.banner-artigo.g4{background:linear-gradient(135deg,#141416,#8a6a15)}
.guia-media.g5,.banner-artigo.g5{background:linear-gradient(135deg,#101010,#c9a227)}
.foot-desc{font-size:.9rem}

/* ============================================================
   V7 — TRIO DE CONFIANÇA + CUPÕES + LOJAS
   ============================================================ */

/* selo de preço honesto (comparação com a média 30 dias) */
.selo-honesto{display:inline-flex;align-items:center;gap:6px;font-size:.73rem;font-weight:700;padding:4px 11px;border-radius:99px;margin-top:9px;width:fit-content}
.selo-honesto.abaixo{background:rgba(30,158,106,.13);color:var(--ok)}
.selo-honesto.media{background:transparent;background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--muted)}
.selo-honesto.acima{background:rgba(201,162,39,.15);color:#8f7013}
[data-tema="escuro"] .selo-honesto.acima{color:var(--ouro-2)}

/* 🔔 nos cards com alerta ativo */
.card-alerta{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:99px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sombra);display:flex;align-items:center;justify-content:center;font-size:.82rem}

/* histórico de preço (sparkline) */
.spark-caixa{margin-top:14px;padding:14px 16px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);background:color-mix(in srgb,var(--card) 55%,transparent)}
.spark-caixa h3,.alerta-caixa h3{margin:0 0 8px;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.spark{width:100%;height:auto;display:block}
.spark polyline{fill:none;stroke:var(--ouro);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.spark circle{fill:var(--ouro)}
.spark-rotulos{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:.74rem;color:var(--muted);margin-top:7px;font-variant-numeric:tabular-nums}
.spark-rotulos span:nth-child(2){font-weight:800;color:var(--ink)}

/* cupão de desconto */
.cupom-caixa{margin-top:14px;display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;border:1.5px dashed var(--ouro);border-radius:12px;padding:11px 15px;background:rgba(232,201,106,.08)}
.cupom-caixa b{display:block;font-size:.82rem}
.cupom-nota{display:block;font-size:.76rem;color:var(--muted);margin-top:2px}
.cupom-codigo{font-family:ui-monospace,Consolas,monospace;font-weight:800;letter-spacing:.14em;font-size:.92rem;color:#8f7013;background:rgba(232,201,106,.16);border-radius:8px;padding:6px 12px}
[data-tema="escuro"] .cupom-codigo{color:var(--ouro-2)}
.cupom-copiar{margin-left:auto;border:0;background:var(--ouro-grad);color:#101010;font-weight:800;font-size:.8rem;border-radius:10px;padding:9px 15px;cursor:pointer;transition:transform .15s}
.cupom-copiar:hover{transform:translateY(-1px)}

/* alerta de preço */
.alerta-caixa{margin-top:14px;padding:13px 16px;border:1px solid var(--line);border-radius:12px}
.alerta-linha{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.88rem}
.alerta-linha input{width:118px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font-size:.9rem}
.alerta-linha input:focus{outline:2px solid rgba(201,162,39,.4);border-color:var(--ouro)}
.alerta-ativo{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.88rem;font-weight:600}
.alerta-remover{border:1px solid var(--line);background:none;color:var(--muted);font-weight:700;font-size:.78rem;border-radius:9px;padding:7px 13px;cursor:pointer;transition:border-color .2s,color .2s}
.alerta-remover:hover{border-color:var(--risco);color:var(--risco)}

/* secção/página de lojas */
.grelha-lojas{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px}
.loja-card{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);cursor:pointer;font:inherit;color:var(--ink);text-align:left;transition:transform .2s,border-color .2s,box-shadow .2s}
.loja-card:hover{transform:translateY(-4px);border-color:var(--ouro);box-shadow:var(--sombra-hover)}
.loja-mono{width:44px;height:44px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-weight:800;font-size:1.2rem;color:#fff}
.loja-mono.g1{background:linear-gradient(135deg,#141416,#c9a227)}
.loja-mono.g2{background:linear-gradient(135deg,#101010,#232326)}
.loja-mono.g3{background:linear-gradient(135deg,#232326,#e8c96a)}
.loja-mono.g4{background:linear-gradient(135deg,#141416,#232326)}
.loja-mono.g5{background:linear-gradient(135deg,#101010,#c9a227)}
.loja-info{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.loja-info b{font-size:.95rem}
.loja-info span{font-size:.76rem;color:var(--muted)}
.loja-seta{margin-left:auto;color:var(--ouro);font-weight:800;transition:transform .2s}
.loja-card:hover .loja-seta{transform:translateX(4px)}

@media (max-width:520px){
  .grelha-lojas{grid-template-columns:1fr 1fr;gap:10px}
  .loja-card{flex-direction:column;text-align:center;gap:8px;padding:14px 8px}
  .loja-seta{display:none}
  .cupom-copiar{margin-left:0;width:100%}
}

.caixa-pos{margin-top:34px}

/* ============================================================
   V8 — PÁGINA DE SAÍDA (ir.html) + SACOLA MULTI-LOJA
   ============================================================ */
.pagina-ir{max-width:640px;margin:0 auto;padding-top:8px}
.ir-caixa{margin-top:26px;border:1px solid var(--line);border-radius:16px;padding:18px;background:var(--card);box-shadow:var(--sombra)}
.ir-item{display:flex;align-items:center;gap:13px;flex-wrap:wrap;padding:10px 0}
.ir-item+.ir-item{border-top:1px dashed var(--line)}
.ir-item-meio{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.ir-item-meio b{font-size:.95rem;line-height:1.35}
.ir-item-sub{font-size:.8rem;color:var(--muted)}
.ir-item .selo-honesto{margin-top:2px}
.ir-btn{margin-left:auto;flex:none}
.ir-aviso{margin-top:14px;padding:12px 14px;border-radius:12px;background:transparent;background:color-mix(in srgb,var(--muted) 8%,transparent);font-size:.82rem;color:var(--muted)}
.ir-aviso p{margin:6px 0 0;line-height:1.55}
.ir-auto-txt{text-align:center;font-size:.86rem;color:var(--muted);font-variant-numeric:tabular-nums;margin:12px 0 10px;min-height:1.2em}
.ir-ja{width:100%;text-align:center}
.ir-erro{margin-top:26px;text-align:center;font-weight:600}
.ir-sacola-t{font-size:1.05rem;margin:26px 0 4px}
.ir-grupos{display:flex;flex-direction:column;gap:14px;margin-top:12px}
.ir-grupo{border:1px solid var(--line);border-radius:14px;padding:6px 16px 10px;background:var(--card)}
.ir-grupo-cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 0 4px;border-bottom:2px solid var(--ouro-grad);margin-bottom:4px}
.ir-grupo-cab b{font-family:Georgia,serif;letter-spacing:.04em}
.ir-grupo-cab span{font-size:.76rem;color:var(--muted)}
.ir-voltar{margin-top:22px;text-align:center}
.ir-voltar a{text-decoration:none;font-weight:700;color:var(--azul-accao)}
.ir-voltar a:hover{color:var(--ouro)}
[data-tema="escuro"] .ir-voltar a{color:var(--ouro-2)}

/* botão flutuante da sacola */
.sacola-pill{position:fixed;right:24px;bottom:158px;z-index:72;display:flex;align-items:center;gap:6px;padding:9px 14px;border-radius:99px;background:var(--ouro-grad);color:#101010;font-weight:800;text-decoration:none;box-shadow:var(--sombra-hover);transition:transform .2s}
.sacola-pill:hover{transform:translateY(-3px) scale(1.04)}
.sacola-pill b{font-family:Georgia,serif;font-size:.95rem}
.sacola-pill[hidden]{display:none}

/* botão 🛍 nos cards/página */
.btn-sacola.on{color:var(--ouro);border-color:var(--ouro)}

/* impressão: nunca imprimir a ponte */
@media print { .pagina-ir { display: none !important; } }


/* ============================================================
   V10 — LIMPEZA: classes substitutas de estilos inline
   ============================================================ */
.foot-link{color:#cfc9bc}
.ia-topo img{border-radius:6px;flex:none}
.container-largo{max-width:1080px}
.rel-zona{padding-top:26px}
.rel-titulo{font-size:1.3rem}
.detalhe-precos{margin-top:12px}
.info-h2{font-size:1.05rem;margin:18px 0 6px}
.det-desc{font-size:.95rem}
.det-aviso{font-size:.8rem;color:var(--muted)}
.cta-comprar .btn-fav{font-size:1.5rem}
.cta-comprar .btn-sacola{font-size:1.3rem}
.vistos-titulo{font-size:1.05rem;margin:40px 0 14px}
.comp-thumbs{display:flex;gap:4px}
.comp-caption{caption-side:top;text-align:left;padding:10px 16px;font-weight:700}
.comp-sep{display:inline-block;width:14px}
.card-fundo{display:flex;justify-content:space-between;align-items:center;padding:0 18px 14px;gap:8px}
.card-fundo-esq{display:flex;align-items:center;gap:2px}
.sk-media{height:150px}
.sk-l1{height:11px;width:42%;margin:14px 18px 0}
.sk-l2{height:17px;width:86%;margin:10px 18px 0}
.sk-l3{height:11px;width:94%;margin:9px 18px 0}
.sk-l4{height:34px;width:calc(100% - 36px);margin:13px 18px 15px}

/* ============================================================
   V12 — SACOLA EM DESTAQUE + balão "adiciona aqui"
   ============================================================ */
.btn-sacola{
  height:34px;padding:0 12px 0 10px;border-radius:99px;
  background:var(--ouro-grad);color:#101010;
  border:1px solid rgba(255,255,255,.55);
  display:inline-flex;align-items:center;gap:5px;
  font-size:.72rem;font-weight:800;letter-spacing:.02em;
  cursor:pointer;transition:transform .18s,box-shadow .18s,background .2s,color .2s;
  box-shadow:0 4px 12px -6px rgba(201,162,39,.6);
}
.btn-sacola svg{width:15px;height:15px;flex:none}
.btn-sacola .rot{white-space:nowrap}
.btn-sacola:hover{transform:translateY(-2px) scale(1.05);box-shadow:var(--sombra-hover)}
.btn-sacola:active{transform:scale(.95)}
.btn-sacola.on{background:var(--card);color:var(--ouro);border-color:var(--ouro);box-shadow:none}
.cta-comprar .btn-sacola{height:42px;padding:0 18px;font-size:.85rem;gap:7px}
.cta-comprar .btn-sacola svg{width:18px;height:18px}
@media (max-width:560px){
  .card-acoes .btn-sacola{width:34px;padding:0;justify-content:center}
  .card-acoes .btn-sacola .rot{display:none}
}

/* balão pequeno de ensino (aponta para o botão da sacola) */
.balao-sacola{
  position:fixed;z-index:139;max-width:230px;
  background:#0c0c0e;color:#f3f1ea;
  border:1px solid rgba(232,201,106,.65);border-radius:12px;
  padding:9px 13px;font-size:.78rem;font-weight:600;line-height:1.45;
  box-shadow:0 12px 28px -12px rgba(0,0,0,.75);
  animation:balaoEntra .4s cubic-bezier(.34,1.56,.64,1) both;
  cursor:pointer;
}
.balao-sacola::after{
  content:"";position:absolute;left:26px;bottom:-6.5px;width:11px;height:11px;
  background:#0c0c0e;
  border-right:1px solid rgba(232,201,106,.65);border-bottom:1px solid rgba(232,201,106,.65);
  transform:rotate(45deg);
}
.balao-sacola.baixo::after{bottom:auto;top:-6.5px;transform:rotate(-135deg)}
@media (max-width:520px){ .balao-sacola{font-size:.74rem;padding:8px 11px} }

/* botão de ação dentro da resposta do assistente */
.ia-mostrar{display:inline-block;margin-top:8px;border:0;background:var(--ouro-grad);color:#101010;font-weight:800;font-size:.78rem;border-radius:99px;padding:8px 14px;cursor:pointer;transition:transform .15s}
.ia-mostrar:hover{transform:translateY(-1px)}

/* ============================================================
   V16.3 — Cupões ativos (página Lojas)
   ============================================================ */
.grelha-cupoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.cupao-card{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px dashed var(--ouro);border-radius:var(--radius);padding:16px}
.cupao-nome{font-weight:800;color:var(--ink);text-decoration:none}
.cupao-nome:hover{color:var(--ouro)}
.cupao-loja{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.cupao-nota{font-size:.9rem;color:var(--muted)}
.cupoes-vazio{color:var(--muted);padding:14px 0}

/* ============================================================
   V16.4 — Descoberta dos cupões (banner, nav, pill)
   ============================================================ */
.banner-cupoes-wrap{display:flex;justify-content:center;padding:0 20px;margin:-4px 0 10px}
.banner-cupoes{display:inline-block;background:var(--card);border:2px dashed var(--ouro);color:var(--ink);border-radius:999px;padding:12px 22px;font-weight:800;text-decoration:none;box-shadow:var(--sombra)}
.banner-cupoes:hover{color:var(--ouro)}
.nav-links a.nav-cupoes{color:var(--ouro);font-weight:800}
.pill-cupoes{display:inline-block;margin-top:10px;background:rgba(232,201,106,.14);border:1px dashed var(--ouro);color:var(--ink);border-radius:999px;padding:7px 14px;font-size:.9rem;font-weight:700;text-decoration:none}
.pill-cupoes:hover{color:var(--ouro)}
#cupoes{scroll-margin-top:90px}

/* ============================================================
   V16.5 — Banner de cupões como banda (posição corrigida)
   ============================================================ */
.banner-cupoes-wrap{display:flex;justify-content:center;align-items:center;margin:0;padding:13px 20px;background:rgba(232,201,106,.10);border-top:1px dashed rgba(232,201,106,.55);border-bottom:1px dashed rgba(232,201,106,.55)}
.banner-cupoes{color:var(--ouro);font-weight:800;font-size:1.02rem;text-decoration:none;letter-spacing:.01em}
.banner-cupoes:hover{text-decoration:underline}
