/* ===== Clube do Loureiro — a despensa (área de membros) · reusa tokens do home.css ===== */
.clube { background: var(--ceu); }

/* header do membro */
.clube-topo { display:flex; align-items:center; gap:1.2rem; padding:1rem clamp(1.25rem,5vw,3rem); border-bottom:1px solid var(--fio); position:sticky; top:0; z-index:50; background:color-mix(in oklab, var(--ceu) 88%, transparent); backdrop-filter:blur(10px); }
.clube-topo__voltar { font-size:.85rem; color:var(--osso-70); }
.clube-topo__voltar:hover { color:var(--osso); }
.clube-topo__marca { display:inline-flex; align-items:center; gap:.5rem; font-family:'Anta',system-ui,sans-serif; font-size:.95rem; letter-spacing:.02em; color:var(--osso); margin:0 auto 0 0; }
.clube-topo__brasa { width:.5rem; height:.5rem; border-radius:50%; background:var(--grad-fogo); box-shadow:0 0 10px var(--fogo); }
.clube-topo__membro { font-size:.82rem; color:var(--osso-70); }
.clube-topo__membro a { color:var(--gold); }

/* hero da despensa */
.clube-hero { max-width:54rem; margin:0 auto; padding:clamp(3.5rem,8vh,6rem) clamp(1.25rem,5vw,3rem) clamp(2rem,4vh,3rem); position:relative; }
.clube-hero::before { content:''; position:absolute; top:0; left:clamp(1.25rem,5vw,3rem); right:clamp(1.25rem,5vw,3rem); height:3px; background:var(--grad-fogo); border-radius:2px; }
.clube-hero__eb { display:inline-block; font-family:'Anta',system-ui,sans-serif; font-size:.74rem; letter-spacing:.2em; text-transform:uppercase; color:var(--fogo); margin:1.4rem 0 1rem; }
.clube-hero h1 { font-size:clamp(2rem,5vw,3.2rem); line-height:1.05; letter-spacing:.01em; margin:0 0 1.2rem; }
.clube-hero h1 em { color:var(--gold); font-style:normal; }
.clube-hero p { color:var(--osso-70); font-size:1.08rem; line-height:1.6; max-width:44rem; margin:0 0 1.6rem; }
.clube-hero p strong { color:var(--osso); font-weight:400; }
.clube-hero__cta { font-family:'Anta',system-ui,sans-serif; font-size:.9rem; color:var(--gold); }
.clube-hero__cta:hover { color:var(--osso); }

/* 01 comece aqui */
.comece { max-width:62rem; margin:0 auto; padding:0 clamp(1.25rem,5vw,3rem) clamp(2.5rem,5vh,4rem); }
.comece__box { display:flex; gap:1.4rem; align-items:flex-start; padding:clamp(1.4rem,3vw,2rem); border:1px solid var(--fio); border-radius:var(--r-card); background:var(--ceu-2); }
.comece__n { font-family:'Anta',system-ui,sans-serif; font-size:2rem; color:var(--fogo); line-height:1; flex:none; }
.comece__box h2 { font-size:1.3rem; margin:0 0 .5rem; }
.comece__box p { color:var(--osso-70); font-size:1rem; line-height:1.55; margin:0 0 .8rem; max-width:48rem; }
.comece__link { font-family:'Anta',system-ui,sans-serif; font-size:.86rem; color:var(--gold); }

/* prateleiras */
.prateleira { max-width:76rem; margin:0 auto; padding:clamp(1.5rem,3vh,2.2rem) clamp(1.25rem,5vw,3rem); }
.prateleira__hd { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; padding-bottom:1rem; margin-bottom:1.4rem; border-bottom:1px solid var(--fio); }
.prateleira__hd h2 { font-size:clamp(1.3rem,2.6vw,1.7rem); letter-spacing:.01em; position:relative; padding-left:1rem; margin:0; }
.prateleira__hd h2::before { content:''; position:absolute; left:0; top:.15em; bottom:.15em; width:4px; border-radius:2px; background:var(--acc); }
.prateleira__meta { font-size:.78rem; color:var(--osso-70); text-transform:uppercase; letter-spacing:.1em; font-family:'Anta',system-ui,sans-serif; white-space:nowrap; }
.prateleira__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(17rem,1fr)); gap:1.1rem; }

/* receita card */
.receita { display:flex; flex-direction:column; gap:.55rem; padding:1.3rem 1.4rem 1.5rem; border:1px solid var(--fio); border-radius:var(--r-card); background:var(--ceu-2); transition:transform .22s var(--easa), border-color .22s; position:relative; overflow:hidden; }
.receita::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:var(--acc); opacity:.7; }
.receita__dor { font-size:.76rem; color:var(--osso-70); font-style:italic; }
.receita h3 { font-family:'Anta',system-ui,sans-serif; font-size:1.15rem; line-height:1.15; margin:0; }
.receita p { color:var(--osso-70); font-size:.95rem; line-height:1.5; margin:.1rem 0 .4rem; flex:1; }
.receita__tags { display:flex; flex-wrap:wrap; gap:.4rem; }
.receita__scar, .receita__repo { font-family:'Anta',system-ui,sans-serif; font-size:.66rem; letter-spacing:.06em; text-transform:uppercase; padding:3px 8px; border-radius:var(--r-pill); border:1px solid var(--fio); color:var(--osso-70); }
.receita__scar { color:var(--fogo); border-color:color-mix(in oklab, var(--fogo) 45%, transparent); }
.receita__go { font-family:'Anta',system-ui,sans-serif; font-size:.82rem; color:var(--acc); margin-top:.1rem; align-self:flex-start; }
.receita__go:hover { filter:brightness(1.25); }

/* rodapé da despensa */
.clube-rodape { max-width:62rem; margin:clamp(2rem,5vh,3.5rem) auto 0; padding:2rem clamp(1.25rem,5vw,3rem) 3rem; text-align:center; color:var(--osso-70); font-size:.98rem; border-top:1px solid var(--fio); }
.clube-rodape a { color:var(--gold); }
.gl-ft--clube .gl-ft-base { border-top:1px solid var(--fio); }

@media (max-width:560px){ .clube-topo__voltar { display:none; } .comece__box { flex-direction:column; gap:.8rem; } }

/* ===== tela de login (entrar) ===== */
.entrar { min-height:100vh; display:grid; place-items:center; padding:2rem 1.25rem; }
.entrar__card { width:100%; max-width:26rem; padding:clamp(1.8rem,4vw,2.6rem); border:1px solid var(--fio); border-radius:var(--r-card); background:var(--ceu-2); position:relative; overflow:hidden; }
.entrar__card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--grad-fogo); }
.entrar__brasa { display:block; width:.6rem; height:.6rem; border-radius:50%; background:var(--grad-fogo); box-shadow:0 0 12px var(--fogo); margin-bottom:1.1rem; }
.entrar__card h1 { font-family:'Anta',system-ui,sans-serif; font-size:1.6rem; margin:0 0 .5rem; }
.entrar__lede { color:var(--osso-70); font-size:.98rem; line-height:1.5; margin:0 0 1.6rem; }
.entrar__form { display:flex; flex-direction:column; gap:.6rem; }
.entrar__form label { font-family:'Anta',system-ui,sans-serif; font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:var(--osso-70); }
.entrar__form input { padding:.85rem 1rem; border:1px solid var(--fio); border-radius:var(--r-cardsm); background:var(--ceu); color:var(--osso); font-size:1rem; }
.entrar__form input:focus { outline:none; border-color:var(--fogo); }
.entrar__form button[type=submit] { margin-top:.4rem; padding:.85rem 1rem; border:0; border-radius:var(--r-pill); background:var(--grad-fogo); color:#0E0A16; font-family:'Anta',system-ui,sans-serif; font-size:.9rem; letter-spacing:.02em; cursor:pointer; transition:.18s; }
.entrar__form button[type=submit]:hover { transform:translateY(-1px); }
.entrar__ghost { background:none; border:0; color:var(--osso-70); font-size:.82rem; cursor:pointer; margin-top:.2rem; }
.entrar__ghost:hover { color:var(--osso); }
.entrar__msg { min-height:1.2rem; margin:1rem 0 0; font-size:.88rem; color:var(--osso-70); }
.entrar__msg.is-err { color:var(--fogo); }
.entrar__voltar { display:inline-block; margin-top:1.4rem; font-size:.82rem; color:var(--osso-70); }
.entrar__voltar:hover { color:var(--gold); }
.entrar__oferta { margin:1.2rem 0 0; font-size:.86rem; color:var(--osso-70); }
.entrar__oferta a { color:var(--gold); }

.entrar__form[hidden] { display: none; }

/* ===== página de receita (a receita com a cicatriz) ===== */
.clube-topo__voltar[href] { white-space:nowrap; }
.rec { max-width:44rem; margin:0 auto; padding:0 clamp(1.25rem,5vw,3rem) clamp(3rem,6vh,5rem); }

.rec-hero { padding:clamp(2.5rem,6vh,4rem) 0 clamp(1.5rem,3vh,2.2rem); position:relative; }
.rec-hero::before { content:''; position:absolute; top:0; left:0; width:3.5rem; height:3px; background:var(--acc); border-radius:2px; }
.rec-hero__prat { display:inline-block; font-family:'Anta',system-ui,sans-serif; font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color:var(--acc); margin:1.3rem 0 .8rem; }
.rec-hero__prat:hover { filter:brightness(1.25); }
.rec-hero h1 { font-size:clamp(2rem,5.5vw,3rem); line-height:1.04; letter-spacing:.01em; margin:0 0 1rem; }
.rec-hero__dor { color:var(--osso-70); font-size:1.1rem; line-height:1.6; margin:0 0 1.2rem; }
.rec-hero__tags { display:flex; flex-wrap:wrap; gap:.4rem; }

.rec-part { display:flex; gap:1.1rem; align-items:flex-start; padding:clamp(1.6rem,3.5vh,2.4rem) 0; border-top:1px solid var(--fio); }
.rec-part__n { font-family:'Anta',system-ui,sans-serif; font-size:1.5rem; line-height:1; color:var(--acc); flex:none; width:2.2rem; opacity:.85; }
.rec-part__body { min-width:0; }
.rec-part__body h2 { font-size:1.35rem; letter-spacing:.01em; margin:0 0 .7rem; }
.rec-part__body p { color:var(--osso-70); font-size:1.02rem; line-height:1.62; margin:0 0 .8rem; }
.rec-part__body p:last-child { margin-bottom:0; }
.rec-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.6rem; }
.rec-list li { position:relative; padding-left:1.3rem; color:var(--osso-70); font-size:1.02rem; line-height:1.55; }
.rec-list li::before { content:''; position:absolute; left:0; top:.6em; width:.4rem; height:.4rem; border-radius:50%; background:var(--acc); opacity:.7; }
.rec-list li strong { color:var(--osso); font-weight:400; }
.rec-steps { margin:0; padding-left:1.3rem; display:flex; flex-direction:column; gap:.6rem; color:var(--osso-70); font-size:1.02rem; line-height:1.55; }
.rec-steps li::marker { color:var(--acc); font-family:'Anta',system-ui,sans-serif; }
.rec-part code { font-family:ui-monospace,'Cascadia Code',monospace; font-size:.9em; padding:1px 6px; border-radius:6px; background:color-mix(in oklab, var(--osso) 8%, transparent); color:var(--osso); }

.rec-keys { margin:1rem 0; padding:1rem 1.2rem; border:1px solid color-mix(in oklab, var(--gold) 35%, var(--fio)); border-radius:var(--r-cardsm); background:color-mix(in oklab, var(--gold) 7%, var(--ceu-2)); color:var(--osso-70); font-size:.96rem; line-height:1.55; }
.rec-keys strong { color:var(--osso); font-weight:400; }
.rec-keys code { background:color-mix(in oklab, var(--osso) 12%, transparent); }

.rec-get { display:inline-block; margin-top:1.1rem; padding:.8rem 1.5rem; border:0; border-radius:var(--r-pill); background:var(--grad-fogo); color:#0E0A16; font-family:'Anta',system-ui,sans-serif; font-size:.9rem; letter-spacing:.02em; transition:transform .18s var(--easa); }
.rec-get:hover { transform:translateY(-1px); }
.rec-get__nota { font-size:.84rem; color:var(--osso-70); margin:.7rem 0 0; }

/* o que queimou — a cicatriz, bloco em destaque (o fosso) */
.rec-part--scar { position:relative; margin-top:.6rem; padding:clamp(1.6rem,3.5vh,2.4rem) clamp(1.3rem,3vw,1.8rem); border:1px solid color-mix(in oklab, var(--fogo) 40%, var(--fio)); border-radius:var(--r-card); background:color-mix(in oklab, var(--fogo) 6%, var(--ceu-2)); }
.rec-part--scar .rec-part__n { font-size:1.6rem; }
.rec-part--scar .rec-list li::before { background:var(--fogo); opacity:.9; }

.rec-voltar { display:inline-block; margin-top:clamp(2rem,4vh,3rem); font-family:'Anta',system-ui,sans-serif; font-size:.86rem; color:var(--osso-70); }
.rec-voltar:hover { color:var(--gold); }

@media (max-width:560px){ .rec-part { gap:.8rem; } .rec-part__n { width:1.6rem; font-size:1.2rem; } }

/* ===== página de assinatura (o paywall) ===== */
.assinar { max-width:64rem; margin:0 auto; padding:0 clamp(1.25rem,5vw,3rem) clamp(3rem,6vh,5rem); }
.assinar-hero { max-width:44rem; padding:clamp(2.8rem,7vh,4.5rem) 0 clamp(1.5rem,3vh,2.2rem); position:relative; }
.assinar-hero::before { content:''; position:absolute; top:0; left:0; width:3.5rem; height:3px; background:var(--grad-fogo); border-radius:2px; }
.assinar-hero__eb { display:inline-block; font-family:'Anta',system-ui,sans-serif; font-size:.74rem; letter-spacing:.18em; text-transform:uppercase; color:var(--fogo); margin:1.3rem 0 .9rem; }
.assinar-hero h1 { font-size:clamp(2rem,5.5vw,3rem); line-height:1.05; margin:0 0 1rem; }
.assinar-hero h1 em { color:var(--gold); font-style:normal; }
.assinar-hero p { color:var(--osso-70); font-size:1.08rem; line-height:1.6; margin:0; }

/* planos */
.planos { display:grid; grid-template-columns:repeat(auto-fit, minmax(15rem,1fr)); gap:1.1rem; margin:clamp(1.5rem,3vh,2.2rem) 0; }
.plano { display:flex; flex-direction:column; gap:.5rem; padding:1.6rem 1.5rem; border:1px solid var(--fio); border-radius:var(--r-card); background:var(--ceu-2); position:relative; }
.plano--destaque { border-color:color-mix(in oklab, var(--fogo) 55%, var(--fio)); background:color-mix(in oklab, var(--fogo) 6%, var(--ceu-2)); }
.plano__selo { position:absolute; top:-.7rem; left:1.4rem; font-family:'Anta',system-ui,sans-serif; font-size:.64rem; letter-spacing:.08em; text-transform:uppercase; padding:4px 10px; border-radius:var(--r-pill); background:var(--grad-fogo); color:#0E0A16; }
.plano__nome { font-family:'Anta',system-ui,sans-serif; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; color:var(--osso-70); }
.plano__preco { display:flex; align-items:baseline; gap:.3rem; }
.plano__preco strong { font-family:'Anta',system-ui,sans-serif; font-size:2.4rem; line-height:1; color:var(--osso); }
.plano__preco span { color:var(--osso-70); font-size:1rem; }
.plano__nota { color:var(--osso-70); font-size:.9rem; line-height:1.5; margin:.2rem 0 .4rem; flex:1; }
.plano__nota strong { color:var(--osso); font-weight:400; }
.plano__cta { align-self:flex-start; margin-top:.4rem; padding:.7rem 1.3rem; border-radius:var(--r-pill); border:1px solid var(--fio); font-family:'Anta',system-ui,sans-serif; font-size:.86rem; color:var(--osso); transition:.18s var(--easa); }
.plano__cta:hover { border-color:var(--fogo); transform:translateY(-1px); }
.plano__cta--forte { border:0; background:var(--grad-fogo); color:#0E0A16; }
.plano__soon { font-size:.82rem; color:var(--fogo); margin:.6rem 0 0; }

/* de-riscadores */
.deriscar { display:grid; grid-template-columns:repeat(auto-fit, minmax(15rem,1fr)); gap:1rem; padding:clamp(1.4rem,3vh,2rem) 0; border-top:1px solid var(--fio); border-bottom:1px solid var(--fio); }
.deriscar__item { display:flex; gap:.7rem; align-items:flex-start; color:var(--osso-70); font-size:.94rem; line-height:1.5; }
.deriscar__item strong { color:var(--osso); font-weight:400; }
.deriscar__ic { font-size:1.2rem; flex:none; line-height:1.2; }

/* o que tem dentro */
.dentro { padding:clamp(2rem,4vh,3rem) 0 0; }
.dentro h2 { font-size:clamp(1.4rem,3vw,1.9rem); margin:0 0 1.3rem; }
.dentro__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(15rem,1fr)); gap:1rem; }
.dentro__card { padding:1.2rem 1.3rem; border:1px solid var(--fio); border-radius:var(--r-cardsm); background:var(--ceu-2); position:relative; overflow:hidden; }
.dentro__card::before { content:''; position:absolute; top:0; left:0; bottom:0; width:3px; background:var(--acc); }
.dentro__card h3 { font-family:'Anta',system-ui,sans-serif; font-size:1.02rem; margin:0 0 .35rem; }
.dentro__card p { color:var(--osso-70); font-size:.9rem; line-height:1.5; margin:0; }
.dentro__cicatriz { color:var(--osso-70); font-size:1rem; line-height:1.6; margin:1.3rem 0 0; }
.dentro__cicatriz strong { color:var(--fogo); font-weight:400; }

/* gancho da mentoria */
.gancho { margin:clamp(2rem,4vh,3rem) 0 0; padding:clamp(1.6rem,3.5vh,2.4rem) clamp(1.4rem,3vw,2rem); border:1px solid color-mix(in oklab, var(--gold) 35%, var(--fio)); border-radius:var(--r-card); background:color-mix(in oklab, var(--gold) 6%, var(--ceu-2)); }
.gancho h2 { font-size:clamp(1.3rem,2.8vw,1.7rem); margin:0 0 .7rem; }
.gancho p { color:var(--osso-70); font-size:1.02rem; line-height:1.6; margin:0; }
.gancho p strong { color:var(--osso); font-weight:400; }
.gancho a { color:var(--gold); }

.assinar-voltar { display:inline-block; margin-top:clamp(2rem,4vh,3rem); font-family:'Anta',system-ui,sans-serif; font-size:.86rem; color:var(--osso-70); }
.assinar-voltar:hover { color:var(--gold); }

/* ===== casca de imagem (v7 · foto-VFX nas páginas do Clube) ===== */
/* banda de herói full-bleed (despensa) */
.hero-band { position:relative; overflow:hidden; }
.hero-band__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.55; }
.hero-band__veil { position:absolute; inset:0; background:
  linear-gradient(180deg, color-mix(in oklab, var(--ceu) 30%, transparent), var(--ceu) 97%),
  linear-gradient(90deg, color-mix(in oklab, var(--ceu) 72%, transparent) 0%, transparent 55%); }
.hero-band > * { position:relative; }
.hero-band > .hero-band__bg, .hero-band > .hero-band__veil { position:absolute; }

/* figura de herói nas páginas de detalhe (molde do blog) */
.rec-figure { margin:clamp(1.2rem,3vh,1.8rem) 0 0; border-radius:var(--r-card); overflow:hidden; border:1px solid var(--fio); position:relative; }
.rec-figure img { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; }
.rec-figure::after { content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, transparent 55%, color-mix(in oklab, var(--ceu) 45%, transparent)); }

/* thumb no card da despensa */
.receita--thumb { padding-top:0; }
.receita__thumb { display:block; margin:0 -1.4rem .8rem; }
.receita__thumb img { display:block; width:100%; aspect-ratio:16/7; object-fit:cover; opacity:.92; transition:opacity .25s, transform .35s var(--easa); }
.receita:hover .receita__thumb img { opacity:1; transform:scale(1.03); }

/* fundo da porta (entrar/assinar) */
.porta-bg { position:fixed; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; opacity:.38; }
.porta-veil { position:fixed; inset:0; z-index:-1; background:
  linear-gradient(180deg, color-mix(in oklab, var(--ceu) 55%, transparent), var(--ceu) 92%); }

/* ===== tipos de unidade da despensa (skill · veredito · guia) ===== */
/* selo de tipo no hero da página de detalhe */
.rec-tipo { display:inline-block; font-family:'Anta',system-ui,sans-serif; font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; padding:3px 9px; border-radius:var(--r-pill); margin:0 0 .8rem; color:var(--acc); border:1px solid color-mix(in oklab, var(--acc) 45%, transparent); }
.rec-hero__prat + .rec-tipo { margin-left:.5rem; }

/* selo de VEREDITO (o julgamento) */
.rec-veredito { display:inline-block; font-family:'Anta',system-ui,sans-serif; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; padding:4px 11px; border-radius:var(--r-pill); margin:0 0 .9rem .5rem; font-weight:400; }
.rec-veredito--uso { color:#0E1A15; background:#2DD4BF; }
.rec-veredito--fora { color:var(--osso); background:color-mix(in oklab, var(--fogo) 22%, var(--ceu-2)); border:1px solid color-mix(in oklab, var(--fogo) 55%, transparent); }
.rec-veredito--ressalva { color:#1a1405; background:var(--gold); }

/* bloco "próximo passo" (guia) */
.rec-next { margin-top:clamp(1.6rem,3.5vh,2.4rem); padding:clamp(1.2rem,3vw,1.6rem); border:1px dashed color-mix(in oklab, var(--acc) 45%, var(--fio)); border-radius:var(--r-cardsm); }
.rec-next p { margin:0; color:var(--osso-70); font-size:1rem; }
.rec-next a { color:var(--acc); }

/* tag de tipo no CARD da prateleira (na despensa) */
.receita__tipo { font-family:'Anta',system-ui,sans-serif; font-size:.66rem; letter-spacing:.06em; text-transform:uppercase; padding:3px 8px; border-radius:var(--r-pill); border:1px solid color-mix(in oklab, var(--acc) 45%, var(--fio)); color:var(--acc); }
.receita__tipo--fora { color:var(--fogo); border-color:color-mix(in oklab, var(--fogo) 45%, transparent); }
