/* ============================================================
   EVO PEPTIDES — Área de Membros
   Design system: navy + precision blue, hexagon/molecular motif
   ============================================================ */

:root{
  /* Brand palette (from Evo Peptides visual identity) */
  --navy-950:#06132a;
  --navy-900:#0a1a33;
  --navy-800:#0e2444;
  --navy-700:#143059;
  --navy-600:#1b3d70;
  --blue-600:#1567b8;
  --blue-500:#1a7fd4;
  --blue-400:#2b8fd6;
  --blue-300:#5fb0e8;
  --blue-100:#d5e8f8;
  --copper:#c97a3d;      /* GHK-Cu copper accent */
  --copper-soft:#e7a86f;
  --mint:#25c39a;        /* success / cashback positive */
  --amber:#f0a92b;       /* urgency / countdown */

  --ink:#0a1e3f;
  --slate:#5a6b83;
  --line:#e3ebf5;
  --paper:#eef4fb;
  --paper-2:#f7fafe;
  --white:#ffffff;

  --grad-navy:linear-gradient(150deg,#0e2444 0%,#0a1a33 55%,#06132a 100%);
  --grad-blue:linear-gradient(135deg,#2b8fd6 0%,#1567b8 100%);
  --grad-copper:linear-gradient(135deg,#e7a86f 0%,#c97a3d 100%);
  --grad-mint:linear-gradient(135deg,#3fd6ac 0%,#12a37e 100%);

  --shadow-sm:0 1px 2px rgba(10,26,51,.06),0 2px 8px rgba(10,26,51,.05);
  --shadow-md:0 8px 24px rgba(10,26,51,.10);
  --shadow-lg:0 24px 60px rgba(10,26,51,.18);
  --shadow-blue:0 12px 34px rgba(26,127,212,.32);

  --r-sm:10px; --r-md:16px; --r-lg:22px; --r-xl:30px;
  --ff:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --fd:'Space Grotesk','Inter',sans-serif;
  --maxw:1200px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{overflow-x:clip}
body{
  font-family:var(--ff);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none}
a{color:inherit;text-decoration:none}
input{font-family:inherit}
::selection{background:var(--blue-300);color:var(--navy-900)}

/* ---------- utility ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.hidden{display:none!important}
.eyebrow{font-family:var(--fd);font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue-500)}
.muted{color:var(--slate)}
.mono{font-variant-numeric:tabular-nums}

/* ============================================================
   HEXAGON LOGO (inline)
   ============================================================ */
.hexmark{display:inline-block;line-height:0}
.hexmark svg,.hexmark img{display:block}
.brandrow{display:flex;align-items:center;gap:11px}
.brandrow .wordmark{font-family:var(--fd);font-weight:700;letter-spacing:.02em;line-height:1}
.brandrow .wordmark b{font-weight:700}
.brandrow .wordmark small{display:block;font-family:var(--ff);font-weight:600;font-size:.5em;letter-spacing:.18em;color:var(--blue-400);margin-top:3px;white-space:nowrap}

/* ============================================================
   LOGIN
   ============================================================ */
.auth{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}
.auth__aside{
  position:relative;overflow:hidden;background:var(--grad-navy);color:#fff;
  padding:54px 56px;display:flex;flex-direction:column;justify-content:space-between;
}
.auth__aside::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(60% 45% at 85% 12%,rgba(43,143,214,.35),transparent 60%),
    radial-gradient(50% 40% at 10% 95%,rgba(21,103,184,.30),transparent 60%);
  pointer-events:none;
}
.auth__hexbg{position:absolute;inset:0;opacity:.10;pointer-events:none}
.auth__aside > *{position:relative;z-index:1}
.auth__pitch h1{font-family:var(--fd);font-size:clamp(2rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.01em;margin:26px 0 16px}
.auth__pitch h1 span{color:var(--blue-300)}
.auth__pitch p{color:#c4d6ec;max-width:44ch;font-size:1.03rem}
.auth__trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.auth__trust .chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:8px 13px;border-radius:100px;font-size:.8rem;font-weight:500;color:#dbe8f7}
.auth__trust .chip svg{width:15px;height:15px;color:var(--blue-300)}
.auth__foot{font-size:.78rem;color:#7f97b6}

.auth__form{display:flex;align-items:center;justify-content:center;padding:40px;background:var(--white)}
.auth__card{width:100%;max-width:392px}
.auth__card h2{font-family:var(--fd);font-size:1.62rem;margin:22px 0 6px}
.auth__card .sub{color:var(--slate);margin-bottom:26px;font-size:.95rem}
.field{margin-bottom:15px}
.field label{display:block;font-size:.82rem;font-weight:600;color:var(--navy-700);margin-bottom:7px}
.field input{
  width:100%;padding:14px 15px;border:1.5px solid var(--line);border-radius:var(--r-sm);
  font-size:.98rem;background:var(--paper-2);transition:.18s;
}
.field input:focus{outline:none;border-color:var(--blue-400);background:#fff;box-shadow:0 0 0 4px rgba(43,143,214,.13)}
.auth__row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;margin:4px 0 20px}
.auth__row a{color:var(--blue-600);font-weight:600}
.auth__hint{margin-top:18px;padding:12px 14px;background:var(--blue-100);border-radius:var(--r-sm);font-size:.8rem;color:var(--navy-700)}
.auth__hint b{color:var(--blue-600)}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-weight:600;font-size:.95rem;border-radius:var(--r-sm);padding:14px 22px;
  transition:transform .12s,box-shadow .2s,background .2s;white-space:nowrap;
}
.btn:active{transform:translateY(1px)}
.btn--primary{background:var(--grad-blue);color:#fff;box-shadow:var(--shadow-blue)}
.btn--primary:hover{box-shadow:0 16px 40px rgba(26,127,212,.42)}
.btn--dark{background:var(--navy-800);color:#fff}
.btn--dark:hover{background:var(--navy-700)}
.btn--copper{background:var(--grad-copper);color:#fff;box-shadow:0 10px 26px rgba(201,122,61,.32)}
.btn--ghost{background:transparent;border:1.5px solid var(--line);color:var(--navy-700)}
.btn--ghost:hover{border-color:var(--blue-400);color:var(--blue-600)}
.btn--mint{background:var(--grad-mint);color:#fff;box-shadow:0 10px 26px rgba(18,163,126,.28)}
.btn--full{width:100%}
.btn--sm{padding:9px 15px;font-size:.85rem;border-radius:9px}
.btn--lg{padding:16px 30px;font-size:1.02rem}
.btn svg{width:18px;height:18px}

/* ============================================================
   APP SHELL
   ============================================================ */
.app{display:none;min-height:100vh}
.app.is-on{display:block}

.topbar{
  position:sticky;top:0;z-index:40;background:rgba(255,255,255,.86);
  backdrop-filter:blur(14px);border-bottom:1px solid var(--line);
}
.topbar__in{max-width:var(--maxw);margin:0 auto;height:66px;display:flex;align-items:center;gap:22px;padding:0 20px}
.nav{display:flex;gap:4px;margin-left:8px}
.nav a{
  padding:8px 14px;border-radius:9px;font-size:.9rem;font-weight:500;color:var(--slate);
  display:inline-flex;align-items:center;gap:8px;transition:.15s;
}
.nav a svg{width:17px;height:17px;opacity:.75}
.nav a:hover{background:var(--paper);color:var(--navy-800)}
.nav a.active{background:var(--navy-800);color:#fff}
.nav a.active svg{opacity:1}
.topbar__right{margin-left:auto;display:flex;align-items:center;gap:12px}

.walletpill{
  display:inline-flex;align-items:center;gap:9px;background:var(--grad-navy);color:#fff;
  padding:8px 15px 8px 12px;border-radius:100px;font-weight:600;font-size:.9rem;cursor:pointer;
  box-shadow:var(--shadow-sm);transition:.15s;
}
.walletpill:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}
.walletpill .coin{width:26px;height:26px;border-radius:50%;background:var(--grad-mint);display:grid;place-items:center;font-size:.8rem}
.walletpill small{display:block;font-size:.62rem;font-weight:500;color:#9fb6d4;letter-spacing:.04em}

.cartbtn{position:relative;width:42px;height:42px;border-radius:11px;background:var(--paper);display:grid;place-items:center;color:var(--navy-800);transition:.15s}
.cartbtn:hover{background:var(--blue-100)}
.cartbtn svg{width:20px;height:20px}
.cartbtn .badge{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 4px;border-radius:100px;background:var(--copper);color:#fff;font-size:.68rem;font-weight:700;display:grid;place-items:center}
.avatar{width:40px;height:40px;border-radius:50%;background:var(--grad-blue);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem;cursor:pointer}

/* mobile nav toggle */
.navtoggle{display:none;width:42px;height:42px;border-radius:11px;background:var(--paper);place-items:center}
.navtoggle svg{width:22px;height:22px}

/* ---------- views ---------- */
.view{display:none;padding:34px 0 80px;animation:rise .38s ease}
.view.is-active{display:block}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.pagehead{margin-bottom:24px}
.pagehead h1{font-family:var(--fd);font-size:1.75rem;letter-spacing:-.01em}
.pagehead p{color:var(--slate);margin-top:4px}

.sec-title{font-family:var(--fd);font-size:1.18rem;margin:34px 0 16px;display:flex;align-items:center;gap:10px}
.sec-title .link{margin-left:auto;font-size:.85rem;font-weight:600;color:var(--blue-600)}

/* ============================================================
   DASHBOARD
   ============================================================ */
.hero{
  position:relative;overflow:hidden;border-radius:var(--r-xl);color:#fff;
  background:#0a1a33 url('../brand/hero-banner.webp') center right/cover no-repeat;
  padding:34px 38px;box-shadow:var(--shadow-lg);
}
.hero::before{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(6,19,42,.88) 0%,rgba(6,19,42,.55) 48%,rgba(6,19,42,.05) 100%);pointer-events:none}
.hero__hex{position:absolute;right:-40px;top:-30px;width:340px;opacity:.14;pointer-events:none}
.hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.3fr 1fr;gap:30px;align-items:center}
.hero h1{font-family:var(--fd);font-size:clamp(1.5rem,2.5vw,2.05rem);line-height:1.12;margin:12px 0 10px}
.hero h1 span{color:var(--blue-300)}
.hero p{color:#c4d6ec;max-width:46ch}
.hero__cta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}

.tiercard{background:rgba(10,26,51,.55);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);padding:22px}
.tiercard__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.tiercard__badge{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem}
.tiercard__badge .dot{width:26px;height:26px;border-radius:8px;background:var(--grad-copper);display:grid;place-items:center;font-size:.8rem}
.tiercard__mult{font-size:.78rem;color:#9fb6d4}
.tierbar{height:9px;border-radius:100px;background:rgba(255,255,255,.13);overflow:hidden}
.tierbar i{display:block;height:100%;border-radius:100px;background:var(--grad-blue);transition:width 1s cubic-bezier(.2,.8,.2,1)}
.tiercard__hint{font-size:.8rem;color:#c4d6ec;margin-top:11px}
.tiercard__hint b{color:#fff}

/* metric cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-sm)}
.mcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}
.mcard .ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin-bottom:14px}
.mcard .ic svg{width:21px;height:21px;color:#fff}
.mcard h3{font-size:.86rem;color:var(--slate);font-weight:600}
.mcard .big{font-family:var(--fd);font-size:1.7rem;margin:3px 0;letter-spacing:-.01em}
.mcard .sub{font-size:.8rem;color:var(--slate)}
.ic--mint{background:var(--grad-mint)}.ic--blue{background:var(--grad-blue)}.ic--copper{background:var(--grad-copper)}.ic--navy{background:var(--grad-navy)}

/* protocol / reorder — card de reabastecimento */
.protocard{
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:132px 1fr minmax(210px,auto);gap:26px;align-items:center;
  padding:24px 28px;border-radius:var(--r-lg);
  background:
    radial-gradient(120% 150% at 100% 0%,rgba(201,122,61,.10),transparent 55%),
    linear-gradient(180deg,#ffffff 0%,#fdf7f1 100%);
  border:1px solid #f1e2d2;
  box-shadow:var(--shadow-md);
}
.protocard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--grad-copper)}
.protocard__flare{position:absolute;right:-40px;top:-70px;width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,122,61,.15),transparent 70%);pointer-events:none}

/* media */
.protocard__media{position:relative;width:132px;height:132px;display:grid;place-items:center}
.protocard__ring{position:absolute;inset:-4px;border-radius:50%;
  background:radial-gradient(circle at 50% 42%,rgba(231,168,111,.38),transparent 66%)}
.protocard__media img{position:relative;width:118px;height:118px;object-fit:cover;border-radius:20px;
  background:#fff;border:1px solid #f1e2d2;box-shadow:0 12px 28px rgba(201,122,61,.22)}
.protocard__step{position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);
  font-family:var(--fd);font-size:.72rem;font-weight:700;letter-spacing:.02em;color:#fff;
  background:var(--grad-copper);padding:4px 13px;border-radius:100px;white-space:nowrap;
  box-shadow:0 6px 16px rgba(201,122,61,.38)}
.protocard__step i{font-style:normal;opacity:.7}

/* main */
.protocard__title h3{font-family:var(--fd);font-size:1.26rem;line-height:1.12}
.protocard__title h3 span{color:var(--copper);font-weight:600}
.protocard__title p{font-size:.85rem;color:var(--slate);margin-top:4px}
.protocard__track{margin:16px 0}
.protocard__bar{height:10px;border-radius:100px;background:#f2e6da;overflow:hidden;box-shadow:inset 0 1px 2px rgba(201,122,61,.14)}
.protocard__bar i{display:block;height:100%;border-radius:100px;background:var(--grad-copper);box-shadow:0 0 12px rgba(201,122,61,.5)}
.protocard__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:9px;font-size:.78rem;color:var(--slate);font-weight:500}
.protocard__meta .protocard__left{display:inline-flex;align-items:center;gap:5px;color:var(--copper);font-weight:700}
.protocard__meta svg{width:14px;height:14px}
.protocard__alert{display:flex;gap:11px;align-items:flex-start;background:rgba(201,122,61,.08);border:1px solid rgba(201,122,61,.18);border-radius:14px;padding:12px 14px}
.protocard__alert-ic{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--grad-copper);color:#fff}
.protocard__alert-ic svg{width:17px;height:17px}
.protocard__alert p{font-size:.86rem;line-height:1.45;color:#7a4a24}
.protocard__alert b{color:var(--copper)}

/* buy */
.protocard__buy{display:flex;flex-direction:column;gap:10px;padding-left:26px;border-left:1px solid #f1e2d2;text-align:center}
.protocard__cash{font-size:.76rem;color:var(--mint);font-weight:700;display:inline-flex;align-items:center;gap:5px;justify-content:center}
.protocard__price{font-family:var(--fd);line-height:1}
.protocard__price small{display:block;font-family:var(--ff);font-size:.72rem;color:var(--slate);font-weight:500;margin-bottom:3px}
.protocard__price b{font-size:1.75rem;color:var(--ink)}
.protocard__buy .btn{width:100%}
.protocard__trust{font-size:.72rem;color:var(--slate);display:inline-flex;align-items:center;gap:5px;justify-content:center}
.protocard__trust svg{width:13px;height:13px;color:var(--mint)}

/* ============================================================
   PRODUCT CARDS / SHOP
   ============================================================ */
.shopbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.filter{padding:9px 16px;border-radius:100px;border:1.5px solid var(--line);background:#fff;font-size:.86rem;font-weight:600;color:var(--slate);transition:.15s}
.filter:hover{border-color:var(--blue-300)}
.filter.active{background:var(--navy-800);color:#fff;border-color:var(--navy-800)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column;cursor:pointer}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.pcard__media{position:relative;aspect-ratio:1/1;background:#eaf2fb;overflow:hidden}
.pcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.pcard:hover .pcard__media img{transform:scale(1.05)}
.pcard__tag{position:absolute;top:12px;left:12px;background:var(--grad-copper);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:100px}
.pcard__tag.blue{background:var(--grad-blue)}
.pcard__off{position:absolute;top:12px;right:12px;background:var(--navy-900);color:#fff;font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:8px}
.pcard__body{padding:18px 18px 20px;display:flex;flex-direction:column;flex:1}
.pcard__cat{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-500)}
.pcard__body h3{font-family:var(--fd);font-size:1.16rem;margin:5px 0 2px}
.pcard__body .desc{font-size:.83rem;color:var(--slate);min-height:34px}
.pcard__price{display:flex;align-items:baseline;gap:9px;margin:12px 0 3px}
.pcard__price .now{font-family:var(--fd);font-size:1.35rem}
.pcard__price .old{font-size:.9rem;color:var(--slate);text-decoration:line-through}
.pcard__save{display:inline-flex;align-items:center;gap:6px;background:rgba(201,122,61,.12);color:var(--copper);font-size:.76rem;font-weight:700;padding:5px 11px;border-radius:100px;margin-bottom:7px;align-self:flex-start}
.pcard__cash{font-size:.76rem;color:var(--mint);font-weight:600;display:flex;align-items:center;gap:6px;margin-bottom:14px}
.ship{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;padding:5px 11px;border-radius:100px;margin-bottom:9px;align-self:flex-start;letter-spacing:.01em}
.ship svg{width:13px;height:13px;flex-shrink:0}
.ship--now{background:rgba(37,195,154,.12);color:#12a37e}
.ship--soon{background:rgba(26,127,212,.1);color:var(--blue-600)}
.pcard__cash svg{width:14px;height:14px}
.pcard__foot{margin-top:auto;display:flex;gap:9px}
.pcard__foot .btn{flex:1}

.star{color:var(--amber)}
.rating{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--slate);margin-top:8px}

/* ============================================================
   PRODUCT DETAIL
   ============================================================ */
.pd{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.pd__media{position:sticky;top:88px;background:#eaf2fb;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:1/1;min-height:0}
.pd__media img{width:100%;height:100%;object-fit:cover}
.pd__cat{color:var(--blue-500);font-weight:700;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.pd h1{font-family:var(--fd);font-size:2.1rem;margin:8px 0 6px;letter-spacing:-.01em}
.pd__tagline{font-family:var(--fd);font-size:1.05rem;font-weight:600;color:var(--copper);letter-spacing:.02em;margin-bottom:6px}
.pd .lead{color:var(--slate);font-size:1rem;max-width:52ch}
.pd__price{display:flex;align-items:baseline;gap:12px;margin:20px 0 6px}
.pd__price .now{font-family:var(--fd);font-size:2rem}
.pd__price .old{font-size:1.1rem;color:var(--slate);text-decoration:line-through}
.pd__price .save{background:var(--copper);color:#fff;font-size:.74rem;font-weight:700;padding:4px 9px;border-radius:7px}
.pd__cash{display:inline-flex;align-items:center;gap:8px;background:rgba(37,195,154,.1);color:#0e8f6d;font-weight:600;font-size:.86rem;padding:9px 14px;border-radius:100px;margin-bottom:20px}
.pd__cash svg{width:16px;height:16px}
.pd__buy{display:flex;gap:12px;align-items:center;margin:8px 0 22px}
.qty{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:var(--r-sm);overflow:hidden}
.qty button{width:42px;height:48px;font-size:1.2rem;color:var(--navy-700)}
.qty button:hover{background:var(--paper)}
.qty span{width:40px;text-align:center;font-weight:700}
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.benefit{display:flex;gap:11px;align-items:flex-start;padding:13px;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-sm)}
.benefit svg{width:19px;height:19px;color:var(--blue-500);flex-shrink:0;margin-top:1px}
.benefit b{display:block;font-size:.9rem}
.benefit span{font-size:.78rem;color:var(--slate)}
.trustrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.trustrow .t{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:600;color:var(--navy-700);background:var(--paper);padding:8px 13px;border-radius:100px;border:1px solid var(--line)}
.trustrow .t svg{width:15px;height:15px;color:var(--mint)}

.tabbar{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:36px 0 20px}
.tabbar button{padding:11px 16px;font-weight:600;font-size:.92rem;color:var(--slate);border-bottom:2px solid transparent;margin-bottom:-1px}
.tabbar button.active{color:var(--blue-600);border-color:var(--blue-500)}
.tabpane{display:none;animation:rise .3s}
.tabpane.active{display:block}
.protosteps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:6px}
.pstep{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--r-md);padding:18px}
.pstep .n{width:30px;height:30px;border-radius:8px;background:var(--navy-800);color:#fff;display:grid;place-items:center;font-family:var(--fd);font-weight:700;margin-bottom:10px}
.pstep h4{font-size:.95rem;margin-bottom:5px}
.pstep p{font-size:.82rem;color:var(--slate)}

/* cross-sell */
.crosssell{background:var(--grad-navy);color:#fff;border-radius:var(--r-xl);padding:28px;margin-top:40px;position:relative;overflow:hidden}
.crosssell::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 70% at 90% 10%,rgba(43,143,214,.4),transparent 60%)}
.crosssell > *{position:relative;z-index:1}
.crosssell h3{font-family:var(--fd);font-size:1.3rem}
.crosssell p{color:#c4d6ec;font-size:.9rem;margin:5px 0 18px;max-width:60ch}
.mini{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.minic{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-md);padding:14px;display:flex;gap:12px;align-items:center}
.minic img{width:52px;height:52px;object-fit:cover;background:#eaf2fb;border-radius:10px}
.minic h4{font-size:.9rem}
.minic .p{font-size:.82rem;color:var(--blue-300);font-weight:600}
.minic button{margin-left:auto}

/* ============================================================
   WALLET / CASHBACK
   ============================================================ */
.walletbig{background:var(--grad-navy);color:#fff;border-radius:var(--r-xl);padding:32px 34px;position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}
.walletbig::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 80% at 85% 15%,rgba(37,195,154,.32),transparent 60%)}
.walletbig__hex{position:absolute;right:-30px;bottom:-50px;width:260px;opacity:.13}
.walletbig > *{position:relative;z-index:1}
.walletbig .label{font-size:.82rem;color:#9fb6d4;letter-spacing:.06em}
.walletbig .amount{font-family:var(--fd);font-size:3rem;letter-spacing:-.02em;margin:6px 0}
.walletbig .amount small{font-size:1.2rem;color:#9fb6d4;font-weight:500}
.walletbig .expiry{display:inline-flex;align-items:center;gap:8px;background:rgba(240,169,43,.16);border:1px solid rgba(240,169,43,.35);color:#ffd487;font-size:.82rem;font-weight:600;padding:7px 13px;border-radius:100px;margin-top:8px}
.walletbig .expiry svg{width:15px;height:15px}

.redeem{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
.rcard{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-lg);padding:22px;transition:.16s;cursor:pointer}
.rcard:hover{border-color:var(--blue-400);box-shadow:var(--shadow-md);transform:translateY(-3px)}
.rcard .ic{width:44px;height:44px;border-radius:12px;background:var(--grad-blue);display:grid;place-items:center;margin-bottom:13px}
.rcard .ic svg{width:22px;height:22px;color:#fff}
.rcard h3{font-family:var(--fd);font-size:1.05rem}
.rcard p{font-size:.83rem;color:var(--slate);margin:5px 0 14px;min-height:38px}
.rcard .cost{font-size:.8rem;font-weight:700;color:var(--navy-800)}

.ledger{margin-top:8px}
.ledger__row{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}
.ledger__row:last-child{border:none}
.ledger__ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}
.ledger__ic svg{width:18px;height:18px}
.ledger__ic.in{background:rgba(37,195,154,.14);color:#0e8f6d}
.ledger__ic.out{background:rgba(201,122,61,.14);color:var(--copper)}
.ledger__txt b{font-size:.92rem}
.ledger__txt span{font-size:.78rem;color:var(--slate)}
.ledger__amt{margin-left:auto;font-family:var(--fd);font-weight:700}
.ledger__amt.in{color:#0e8f6d}.ledger__amt.out{color:var(--copper)}

/* ============================================================
   COUPONS
   ============================================================ */
.coupons{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.coupon{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 24px;display:flex;align-items:center;gap:20px;box-shadow:var(--shadow-sm);overflow:hidden}
.coupon::before,.coupon::after{content:"";position:absolute;width:26px;height:26px;border-radius:50%;background:var(--paper);top:50%;transform:translateY(-50%)}
.coupon::before{left:-13px}.coupon::after{right:-13px}
.coupon__val{flex-shrink:0;width:96px;text-align:center;border-right:2px dashed var(--line);padding-right:18px}
.coupon__val .big{font-family:var(--fd);font-size:1.9rem;line-height:1;color:var(--blue-600)}
.coupon__val .lbl{font-size:.7rem;color:var(--slate);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.coupon__body{flex:1}
.coupon__body h3{font-family:var(--fd);font-size:1.05rem}
.coupon__body p{font-size:.82rem;color:var(--slate);margin:3px 0 9px}
.coupon__code{display:inline-flex;align-items:center;gap:9px;background:var(--paper);border:1.5px dashed var(--blue-300);border-radius:8px;padding:6px 12px;font-family:var(--fd);font-weight:700;letter-spacing:.05em;color:var(--navy-800);font-size:.9rem;cursor:pointer}
.coupon__code:hover{background:var(--blue-100)}
.coupon__code svg{width:15px;height:15px;color:var(--blue-500)}
.coupon .cd{font-size:.74rem;color:var(--amber);font-weight:600;margin-top:8px;display:flex;align-items:center;gap:6px}
.coupon .cd svg{width:13px;height:13px}
.coupon.locked{opacity:.72}
.coupon.locked .coupon__val .big{color:var(--slate)}

/* ============================================================
   ACADEMY
   ============================================================ */
.acad-hero{background:var(--grad-navy);color:#fff;border-radius:var(--r-xl);padding:30px 34px;display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;overflow:hidden;margin-bottom:26px}
.acad-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 90% at 90% 10%,rgba(43,143,214,.35),transparent)}
.acad-hero > *{position:relative;z-index:1}
.acad-hero h2{font-family:var(--fd);font-size:1.5rem;margin-bottom:6px}
.acad-hero p{color:#c4d6ec;max-width:52ch;font-size:.92rem}
.acad-hero .prog{text-align:center;flex-shrink:0}
.acad-hero .ring{position:relative;width:96px;height:96px}
.acad-hero .ring svg{transform:rotate(-90deg)}
.acad-hero .ring b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--fd);font-size:1.3rem}

.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.module{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:.16s;display:flex;flex-direction:column}
.module:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.module__top{height:120px;position:relative;display:grid;place-items:center;overflow:hidden}
.module__top img{width:100%;height:100%;object-fit:cover}
.module__top .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,26,51,.05),rgba(10,26,51,.55))}
.module__top .num{position:absolute;top:12px;left:12px;z-index:2;background:rgba(255,255,255,.92);color:var(--navy-800);font-family:var(--fd);font-weight:700;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:.9rem}
.module__top .done{position:absolute;top:12px;right:12px;z-index:2;background:var(--mint);color:#fff;font-size:.68rem;font-weight:700;padding:4px 9px;border-radius:100px;display:none;align-items:center;gap:5px}
.module.completed .module__top .done{display:inline-flex}
.module__body{padding:16px 17px 18px;flex:1;display:flex;flex-direction:column}
.module__body .k{font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-500)}
.module__body h3{font-family:var(--fd);font-size:1.05rem;margin:5px 0 5px}
.module__body p{font-size:.82rem;color:var(--slate);flex:1}
.module__reward{margin-top:13px;display:flex;align-items:center;justify-content:space-between}
.module__reward .r{font-size:.78rem;font-weight:600;color:var(--mint);display:flex;align-items:center;gap:6px}
.module__reward .r svg{width:14px;height:14px}
.module__reward .t{font-size:.76rem;color:var(--slate)}

/* ============================================================
   REFERRAL
   ============================================================ */
.ref-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:0;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg)}
.ref-hero__l{background:var(--grad-navy);color:#fff;padding:38px 40px;position:relative;overflow:hidden}
.ref-hero__l::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 70% at 10% 90%,rgba(37,195,154,.3),transparent 60%)}
.ref-hero__l > *{position:relative;z-index:1}
.ref-hero__l h1{font-family:var(--fd);font-size:1.9rem;line-height:1.12;margin:14px 0 10px}
.ref-hero__l h1 span{color:var(--mint)}
.ref-hero__l p{color:#c4d6ec;max-width:40ch}
.reflink{display:flex;gap:10px;margin-top:24px;max-width:420px}
.reflink input{flex:1;padding:14px 16px;border:none;border-radius:var(--r-sm);background:rgba(255,255,255,.12);color:#fff;font-weight:600;font-size:.9rem}
.reflink input::selection{background:var(--mint)}
.ref-hero__r{background:#fff;padding:34px;display:flex;flex-direction:column;justify-content:center;gap:18px}
.refstep{display:flex;gap:14px;align-items:flex-start}
.refstep .n{width:34px;height:34px;border-radius:10px;background:var(--grad-blue);color:#fff;display:grid;place-items:center;font-family:var(--fd);font-weight:700;flex-shrink:0}
.refstep b{display:block;font-size:.95rem}
.refstep span{font-size:.83rem;color:var(--slate)}
.refstat{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}

/* ============================================================
   CART DRAWER
   ============================================================ */
.scrim{position:fixed;inset:0;background:rgba(6,19,42,.5);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:.25s;z-index:60}
.scrim.on{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;height:100%;width:420px;max-width:92vw;background:#fff;z-index:70;transform:translateX(100%);transition:transform .3s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.drawer.on{transform:none}
.drawer__head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.drawer__head h3{font-family:var(--fd);font-size:1.2rem}
.drawer__close{width:36px;height:36px;border-radius:10px;background:var(--paper);display:grid;place-items:center}
.drawer__close svg{width:18px;height:18px}
.drawer__body{flex:1;overflow-y:auto;padding:18px 24px}
.citem{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.citem img{width:64px;height:64px;object-fit:cover;background:#eaf2fb;border-radius:10px}
.citem h4{font-size:.92rem}
.citem .cat{font-size:.74rem;color:var(--slate)}
.citem .p{font-family:var(--fd);font-weight:700;margin-top:4px}
.citem .rm{margin-left:auto;color:var(--slate);font-size:.8rem;align-self:flex-start}
.citem .rm:hover{color:var(--copper)}
.cempty{text-align:center;padding:60px 20px;color:var(--slate)}
.cempty svg{width:52px;height:52px;color:var(--line);margin:0 auto 14px}

.drawer__foot{border-top:1px solid var(--line);padding:20px 24px}
.applyrow{display:flex;gap:9px;margin-bottom:14px}
.applyrow input{flex:1;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;font-size:.86rem;text-transform:uppercase}
.applyrow input:focus{outline:none;border-color:var(--blue-400)}
.usecash{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:rgba(37,195,154,.08);border:1px solid rgba(37,195,154,.25);border-radius:10px;margin-bottom:14px;font-size:.85rem}
.incluso{display:flex;align-items:flex-start;gap:11px;padding:13px 15px;background:rgba(201,122,61,.1);border:1px solid rgba(201,122,61,.28);border-radius:12px;font-size:.86rem;line-height:1.45;color:var(--ink)}
.incluso svg{flex:none;color:var(--copper);margin-top:1px}
.incluso b{color:var(--copper)}
.switch{position:relative;width:42px;height:24px;border-radius:100px;background:var(--line);transition:.2s;flex-shrink:0}
.switch.on{background:var(--mint)}
.switch i{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.switch.on i{left:21px}
.sumline{display:flex;justify-content:space-between;font-size:.88rem;margin-bottom:8px;color:var(--slate)}
.sumline.discount{color:#0e8f6d;font-weight:600}
.sumline.total{color:var(--ink);font-family:var(--fd);font-size:1.3rem;font-weight:700;margin:12px 0 4px;padding-top:12px;border-top:1px solid var(--line)}
.earnnote{font-size:.78rem;color:var(--mint);font-weight:600;text-align:center;margin:8px 0 14px;display:flex;align-items:center;justify-content:center;gap:6px}
.earnnote svg{width:14px;height:14px}

/* ============================================================
   MODAL (module reader / redeem / checkout)
   ============================================================ */
.modal{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:24px}
.modal.on{display:flex}
.modal__box{background:#fff;border-radius:var(--r-xl);max-width:640px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:pop .3s cubic-bezier(.2,.9,.3,1.1)}
.modal__box.wide{max-width:820px}
@keyframes pop{from{opacity:0;transform:scale(.94) translateY(14px)}to{opacity:1;transform:none}}
.modal__hero{position:relative;height:180px;overflow:hidden;border-radius:var(--r-xl) var(--r-xl) 0 0}
.modal__hero img{width:100%;height:100%;object-fit:cover}
.modal__hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,26,51,.2),rgba(10,26,51,.72))}
.modal__hero h2{position:absolute;left:26px;bottom:20px;right:26px;color:#fff;font-family:var(--fd);font-size:1.5rem;z-index:2}
.modal__x{position:absolute;top:14px;right:14px;z-index:3;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.9);display:grid;place-items:center}
.modal__x svg{width:18px;height:18px}
.modal__pad{padding:26px 30px 30px}
.modal__pad h3{font-family:var(--fd);margin:18px 0 8px;font-size:1.1rem}
.modal__pad p{color:var(--slate);margin-bottom:12px;font-size:.94rem}
.modal__pad ul{margin:0 0 14px 2px;list-style:none}
.modal__pad li{position:relative;padding-left:26px;margin-bottom:9px;font-size:.92rem;color:var(--navy-700)}
.modal__pad li::before{content:"";position:absolute;left:0;top:6px;width:14px;height:14px;border-radius:4px;background:var(--grad-blue)}
.modal__reward{background:var(--grad-mint);color:#fff;border-radius:var(--r-md);padding:18px 20px;display:flex;align-items:center;gap:14px;margin-top:18px}
.modal__reward svg{width:30px;height:30px;flex-shrink:0}
.modal__reward b{font-size:1.05rem}
.modal__reward span{font-size:.84rem;opacity:.92}
.modal__reward button{margin-left:auto}

.success-anim{text-align:center;padding:34px 30px 10px}
.success-anim .ring{width:88px;height:88px;border-radius:50%;background:var(--grad-mint);display:grid;place-items:center;margin:0 auto 18px;animation:pop .4s}
.success-anim .ring--wa{background:linear-gradient(135deg,#25d366,#12a150);color:#fff}
.success-anim .ring svg{width:44px;height:44px;color:#fff}
.success-anim h2{font-family:var(--fd);font-size:1.6rem;margin-bottom:8px}
.success-anim p{color:var(--slate);max-width:40ch;margin:0 auto 6px}
.success-cash{display:inline-flex;align-items:center;gap:9px;background:rgba(37,195,154,.12);color:#0e8f6d;font-weight:700;padding:11px 18px;border-radius:100px;margin:14px 0 6px}

/* ============================================================
   REVIEWS + STICKY BUY (mobile)
   ============================================================ */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.review p{font-size:.9rem;color:var(--navy-700);margin:10px 0 14px;font-style:italic}
.review__stars{font-size:.85rem}
.review__who{display:flex;align-items:center;gap:10px}
.review__who b{display:block;font-size:.88rem}
.review__who div span{display:block;font-size:.75rem;color:var(--slate)}

.stickybuy{display:none;position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:12px 16px;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 -8px 24px rgba(10,26,51,.10)}
.stickybuy b{font-family:var(--fd);font-size:1.2rem;display:block}
.stickybuy span{font-size:.74rem;color:var(--mint);font-weight:600}

/* ============================================================
   TOAST
   ============================================================ */
.toasts{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:90;display:flex;flex-direction:column;gap:10px;align-items:center;pointer-events:none}
.toast{background:var(--navy-900);color:#fff;padding:13px 20px;border-radius:100px;font-size:.9rem;font-weight:600;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;animation:toastin .3s;pointer-events:auto}
.toast svg{width:18px;height:18px;color:var(--mint)}
@keyframes toastin{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

.mcard--link{cursor:pointer;transition:transform .15s,box-shadow .15s;text-decoration:none;color:inherit}
.mcard--link:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.mcard--link h3{display:flex;align-items:center;gap:6px}
.mcard--link h3 svg{color:var(--blue-500)}

/* ============================================================
   BOTTOM NAV (mobile) — hidden on desktop
   ============================================================ */
.botnav{display:none}

/* ============================================================
   FOOTER (compliance)
   ============================================================ */
.appfoot{border-top:1px solid var(--line);background:#fff;padding:26px 0;margin-top:20px}
.appfoot__in{max-width:var(--maxw);margin:0 auto;padding:0 20px;display:flex;justify-content:center;align-items:center}
.appfoot__brand{font-size:.8rem;font-weight:600;letter-spacing:.03em;color:var(--slate);text-align:center}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:960px){
  .auth{grid-template-columns:1fr}
  .auth__aside{display:none}
  .hero__grid{grid-template-columns:1fr}
  .pd{grid-template-columns:1fr}
  .pd__media{position:static}
  .ref-hero{grid-template-columns:1fr}
  .grid-3,.grid-4,.cards,.modules,.redeem,.mini,.protosteps{grid-template-columns:1fr 1fr}
  .coupons{grid-template-columns:1fr}
}
@media(max-width:960px){
  .reviews{grid-template-columns:1fr}
}

/* ===== TABLET & MOBILE: bottom tab bar replaces top nav (desktop nav needs ~1140px) ===== */
@media(max-width:1160px){
  .nav,.navtoggle{display:none!important}
  .app{padding-bottom:68px}                 /* clear fixed bottom bar */
  .botnav{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:55;
    background:rgba(255,255,255,.97);backdrop-filter:blur(16px);
    border-top:1px solid var(--line);
    padding:6px 4px calc(6px + env(safe-area-inset-bottom));
    box-shadow:0 -6px 22px rgba(10,26,51,.09);
  }
  .botnav a{
    flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    padding:6px 1px;min-height:52px;border-radius:12px;
    color:var(--slate);font-size:.57rem;font-weight:600;white-space:nowrap;
  }
  .botnav a svg{width:21px;height:21px;opacity:.65}
  .botnav a.active{color:var(--blue-600);background:var(--blue-100)}
  .botnav a.active svg{opacity:1}
  .botnav a:active{transform:scale(.92)}
  /* stack the sticky buy bar above the tab bar */
  .stickybuy{bottom:calc(60px + env(safe-area-inset-bottom))}
}

/* ===== PHONE: single column, bigger touch targets ===== */
@media(max-width:680px){
  .stickybuy{display:flex}
  .grid-3,.grid-4,.cards,.modules,.redeem,.mini,.protosteps,.grid-2,.benefits{grid-template-columns:1fr}
  .cards{gap:14px}
  .protocard{grid-template-columns:1fr;text-align:center;padding:22px 18px;gap:18px}
  .protocard__media{margin:0 auto}
  .protocard__alert{text-align:left}
  .protocard__meta{flex-direction:column;gap:4px}
  .protocard__buy{padding-left:0;border-left:0;border-top:1px solid #f1e2d2;padding-top:18px}
  /* ---- compact mobile topbar ---- */
  .topbar__in{height:60px;gap:10px;padding:0 14px}
  .topbar .wordmark{display:none}          /* hexagon mark only */
  .topbar__right{gap:8px}
  .walletpill small{display:none}
  .walletpill{padding:7px 12px;font-size:.82rem;gap:7px}
  .walletpill .coin{width:22px;height:22px}
  .cartbtn{width:40px;height:40px}
  .avatar{width:38px;height:38px;font-size:.85rem}
  /* ---- hero ---- */
  .hero{padding:24px 18px;border-radius:var(--r-lg)}
  .hero h1{font-size:1.42rem;line-height:1.15}
  .hero p{font-size:.92rem}
  .hero__cta{flex-direction:column;gap:10px;margin-top:18px}
  .hero__cta .btn{width:100%}
  .wrap{padding:0 14px}
  .acad-hero{flex-direction:column;text-align:center}
  .view{padding:20px 0 40px}
  .pagehead h1{font-size:1.5rem}
  /* touch targets ≥44px */
  .btn{min-height:48px}
  .btn--sm{min-height:44px;padding:11px 16px}
  .filter{min-height:44px;padding:11px 18px}
  .pcard__foot{flex-direction:column}
  .pcard__foot .btn{width:100%}
  .rcard,.coupon,.module,.card{border-radius:var(--r-md)}
  .drawer{width:100%;max-width:100%}
  .modal{padding:0;align-items:flex-end}
  .modal__box{max-height:92vh;border-radius:var(--r-xl) var(--r-xl) 0 0}
  .coupon__val{width:78px}
  .pd h1{font-size:1.7rem}
  .pd__price .now{font-size:1.7rem}
  .toasts{bottom:calc(74px + env(safe-area-inset-bottom))}
}

/* ============================================================
   RASTREAR PEDIDO + banner + nudges (recompra)
   ============================================================ */
.trackbanner{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding:16px 20px;border-radius:var(--r-lg);
  background:var(--grad-navy);color:#fff;box-shadow:var(--shadow-md);position:relative;overflow:hidden;text-decoration:none}
.trackbanner::before{content:"";position:absolute;right:-10%;top:-40%;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(201,122,61,.35),transparent 65%)}
.trackbanner__ic{flex-shrink:0;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:var(--copper-soft);position:relative;z-index:1}
.trackbanner__ic svg{width:26px;height:26px}
.trackbanner__txt{position:relative;z-index:1;min-width:0}
.trackbanner__txt b{display:flex;align-items:center;gap:7px;font-family:var(--fd);font-size:1.02rem}
.trackbanner__txt span{display:block;font-size:.85rem;color:#c4d3e8;margin-top:2px}
.trackbanner__cta{margin-left:auto;flex-shrink:0;position:relative;z-index:1;font-family:var(--fd);font-weight:700;font-size:.85rem;
  background:var(--grad-copper);color:#fff;padding:10px 18px;border-radius:100px;box-shadow:var(--shadow-copper);animation:trackpulse 2.2s infinite}
@keyframes trackpulse{0%,100%{box-shadow:0 0 0 0 rgba(201,122,61,.5)}50%{box-shadow:0 0 0 10px rgba(201,122,61,0)}}

.ordercard{margin-bottom:22px}
.ordercard__head{display:flex;gap:16px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line)}
.ordercard__head img{width:70px;height:70px;border-radius:12px;object-fit:cover;background:#eaf2fb;flex-shrink:0}
.ordercard__head h3{font-family:var(--fd);font-size:1.2rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pill-live{display:inline-flex;align-items:center;gap:5px;font-family:var(--ff);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--copper);background:rgba(201,122,61,.12);padding:4px 10px;border-radius:100px}
.ordertag{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:.82rem;font-weight:600;color:var(--mint)}
.timeline{display:flex;justify-content:space-between;gap:6px;padding:26px 0 6px;position:relative}
.timeline::before{content:"";position:absolute;left:6%;right:6%;top:calc(26px + 15px);height:2px;background:var(--line);z-index:0}
.tstep{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:9px;flex:1;text-align:center}
.tdot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:700;background:#fff;border:2px solid var(--line);color:var(--slate)}
.tstep--done .tdot{background:var(--grad-mint);border-color:transparent;color:#fff}
.tstep--current .tdot{background:var(--grad-copper);border-color:transparent;color:#fff;box-shadow:0 0 0 5px rgba(201,122,61,.16);animation:trackpulse 2s infinite}
.tlbl{font-size:.72rem;font-weight:600;color:var(--slate);max-width:80px;line-height:1.2}
.tstep--done .tlbl,.tstep--current .tlbl{color:var(--ink)}
.ordereta{margin-top:18px;padding:13px 16px;border-radius:var(--r-md);background:var(--paper-2);border:1px solid var(--line);font-size:.9rem;color:var(--slate);display:flex;align-items:center;gap:9px}
.ordereta b{color:var(--ink)}
.ordereta svg{color:var(--copper);flex-shrink:0}

.flashdeal{display:grid;grid-template-columns:1.4fr .9fr;gap:0;margin:22px 0;border-radius:var(--r-xl);overflow:hidden;background:var(--grad-navy);color:#fff;box-shadow:var(--shadow-lg);position:relative}
.flashdeal__body{padding:clamp(24px,4vw,40px);position:relative;z-index:1}
.flashdeal__tag{display:inline-flex;align-items:center;gap:7px;font-family:var(--fd);font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--copper-soft);background:rgba(201,122,61,.14);border:1px solid rgba(201,122,61,.3);padding:7px 14px;border-radius:100px}
.flashdeal__body h2{font-family:var(--fd);font-size:clamp(1.5rem,3vw,2.1rem);margin:16px 0 10px;color:#fff}
.flashdeal__body h2 span{color:var(--copper-soft)}
.flashdeal__body>p{color:#c4d3e8;font-size:.95rem;max-width:44ch}
.flashdeal__timer{display:inline-flex;align-items:center;gap:9px;margin-top:16px;font-family:var(--fd);font-size:1.05rem;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:10px 18px;border-radius:12px}
.flashdeal__timer b{font-size:1.35rem;color:var(--copper-soft);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.flashdeal__buy{background:rgba(255,255,255,.05);border-left:1px solid rgba(255,255,255,.1);padding:clamp(22px,3vw,32px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
.flashdeal__buy img{width:110px;height:110px;object-fit:cover;border-radius:14px;background:#fff}
.flashdeal__name{font-family:var(--fd);font-weight:700;font-size:1rem}
.flashdeal__price{display:flex;align-items:baseline;gap:10px}
.flashdeal__price .old{color:#7d92b3;text-decoration:line-through;font-size:.9rem}
.flashdeal__price .now{font-family:var(--fd);font-size:1.7rem;font-weight:700;color:#fff}
.flashdeal__buy .btn{margin-top:4px}

.nudge{display:flex;align-items:center;gap:15px;margin:20px 0;padding:16px 20px;border-radius:var(--r-lg);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.nudge:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.nudge__ic{flex-shrink:0;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;color:#fff}
.nudge--mint .nudge__ic{background:var(--grad-mint)}
.nudge--blue .nudge__ic{background:var(--grad-blue)}
.nudge__tx b{display:flex;align-items:center;gap:7px;font-family:var(--fd);font-size:1rem;color:var(--ink)}
.nudge__tx span{display:block;font-size:.86rem;color:var(--slate);margin-top:2px}

.coupon-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:22px 0;padding:18px 22px;border-radius:var(--r-lg);
  background:linear-gradient(120deg,rgba(201,122,61,.1),rgba(43,143,214,.08));border:1px dashed rgba(201,122,61,.4)}
.coupon-strip__l{display:flex;align-items:center;gap:14px}
.coupon-strip__l svg{color:var(--copper);flex-shrink:0}
.coupon-strip__l b{display:block;font-family:var(--fd);font-size:1rem;color:var(--ink)}
.coupon-strip__l span{font-size:.85rem;color:var(--slate)}

/* destaque "meu pedido" na navegação */
.nav__track{color:var(--copper)!important;font-weight:700}
.nav__track.active{color:var(--copper-soft)!important}
.botnav__track.active{color:var(--copper)!important;background:rgba(201,122,61,.12)!important}
.botnav__track.active svg{color:var(--copper)!important}

@media(max-width:680px){
  .trackbanner{padding:14px 16px;gap:12px}
  .trackbanner__ic{width:42px;height:42px}
  .trackbanner__cta{display:none}
  .trackbanner__txt b{font-size:.95rem}
  .flashdeal{grid-template-columns:1fr}
  .flashdeal__buy{border-left:none;border-top:1px solid rgba(255,255,255,.1);flex-direction:row;flex-wrap:wrap;text-align:left;justify-content:flex-start}
  .flashdeal__buy img{width:80px;height:80px}
  .flashdeal__buy .btn{width:100%}
  .timeline{overflow-x:auto;justify-content:flex-start;gap:14px;padding-bottom:14px}
  .timeline::before{display:none}
  .tstep{min-width:64px}
  .coupon-strip{flex-direction:column;align-items:flex-start}
  .coupon-strip .btn{width:100%}
}

/* ============================================================
   EVOCASH — em breve (feature futura)
   ============================================================ */
.tag-soon{display:inline-flex;align-items:center;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--copper);background:rgba(201,122,61,.14);padding:2px 8px;border-radius:100px;vertical-align:middle}
.walletpill--soon small{color:var(--copper-soft)!important;font-weight:700}
.walletbig--soon{text-align:center;padding:44px 28px}
.walletbig--soon .amount{font-family:var(--fd);font-size:2.4rem;color:#fff;margin:4px 0 6px}
.soonbadge{display:inline-flex;align-items:center;gap:6px;font-family:var(--fd);font-weight:700;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);padding:6px 14px;border-radius:100px}
.soon-lead{max-width:52ch;margin:14px auto 22px;color:#d5e2f2;font-size:1rem;line-height:1.55}
.soon-lead b{color:#fff}
.soon-list{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:26px}
.soon-item{display:flex;align-items:center;gap:11px;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:13px 16px}
.soon-item svg{color:var(--blue-300);flex-shrink:0}
.soon-item b{display:block;font-size:.9rem;color:#fff}
.soon-item span{font-size:.78rem;color:#9fb6d4}
.usecash--soon{opacity:.85}
.usecash--soon .soontag{margin-left:auto;font-family:var(--fd);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--copper);background:rgba(201,122,61,.14);padding:3px 10px;border-radius:100px}
@media(max-width:680px){ .soon-list{flex-direction:column} .soon-item{width:100%} }

/* ============================================================
   CALCULADORA DE RECONSTITUIÇÃO
   ============================================================ */
.calc-hero{text-align:center;max-width:640px;margin:6px auto 28px}
.calc-hero__t{font-family:var(--fd);font-size:clamp(1.7rem,4vw,2.45rem);margin:12px 0 10px;line-height:1.08}
.calc-hero__t span{color:var(--copper)}
.calc-hero__s{color:var(--slate);font-size:.98rem;line-height:1.6}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.calc__panel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-sm)}
.calc__modes{display:flex;gap:6px;background:var(--paper);padding:5px;border-radius:14px;margin-bottom:20px}
.calc__mode{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 8px;border-radius:10px;font-family:var(--fd);font-weight:600;font-size:.86rem;color:var(--slate);transition:.2s}
.calc__mode svg{width:16px;height:16px;opacity:.8}
.calc__mode.active{background:#fff;color:var(--navy-800);box-shadow:var(--shadow-sm)}
.calc__mode.active svg{color:var(--copper);opacity:1}
.calc__field{display:block;margin-bottom:16px}
.calc__lbl{display:block;font-size:.8rem;font-weight:600;color:var(--slate);margin-bottom:7px}
.calc__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc__select{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font-family:var(--ff);font-size:.95rem;color:var(--ink);background:#fff;font-weight:500;cursor:pointer}
.calc__select:focus{outline:none;border-color:var(--copper);box-shadow:0 0 0 3px rgba(201,122,61,.12)}
.calc__inwrap{position:relative;display:flex;align-items:center}
.calc__inwrap input{width:100%;padding:12px 46px 12px 14px;border:1.5px solid var(--line);border-radius:12px;font-family:var(--fd);font-size:1.12rem;font-weight:600;color:var(--ink);background:#fff}
.calc__inwrap input:focus{outline:none;border-color:var(--copper);box-shadow:0 0 0 3px rgba(201,122,61,.12)}
.calc__inwrap em{position:absolute;right:14px;font-style:normal;font-size:.82rem;font-weight:600;color:var(--slate);pointer-events:none}
.calc__syr{display:flex;gap:8px}
.calc__syrbtn{flex:1;padding:11px 4px;border:1.5px solid var(--line);border-radius:11px;font-family:var(--fd);font-size:.76rem;font-weight:600;color:var(--slate);transition:.2s;white-space:nowrap}
.calc__syrbtn:hover{border-color:var(--copper-soft)}
.calc__syrbtn.active{border-color:var(--copper);background:rgba(201,122,61,.1);color:var(--copper)}
.calc[data-mode="forward"] .calc__only-rev{display:none}
.calc[data-mode="reverse"] .calc__only-fwd{display:none}
/* resultado (painel navy) */
.calc__result{position:relative;overflow:hidden;background:var(--grad-navy);border-radius:var(--r-lg);padding:26px 24px;color:#fff;box-shadow:var(--shadow-md)}
.calc__glow{position:absolute;top:-80px;right:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(201,122,61,.22),transparent 70%);pointer-events:none}
.calc__big{position:relative;text-align:center;padding:4px 0 2px}
.calc__bignum{font-family:var(--fd);font-size:3.4rem;font-weight:700;line-height:1;color:#fff;transition:color .2s;font-variant-numeric:tabular-nums}
.calc__bignum.over{color:#ff9090}.calc__bignum.warn{color:var(--copper-soft)}
.calc__biglbl{font-size:.9rem;color:var(--blue-300);margin-top:8px;font-weight:500}
.calc__bigsub{font-size:.84rem;color:#c4d3e8;margin-top:5px;font-variant-numeric:tabular-nums;min-height:1.1em}
.calc__syringe{position:relative;margin:16px 0 2px}
.calc__flag{display:none;font-size:.82rem;line-height:1.45;border-radius:12px;padding:11px 13px;margin-top:12px;gap:9px;align-items:flex-start}
.calc__flag.show{display:flex}
.calc__flag svg{flex:none;margin-top:1px}
.calc__flag--warn{background:rgba(231,168,111,.14);border:1px solid rgba(231,168,111,.32);color:#f0c79a}
.calc__flag--over{background:rgba(255,120,120,.12);border:1px solid rgba(255,120,120,.32);color:#ffb4b4}
.calc__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}
.calc__stat{text-align:center}
.calc__stat span{display:block;font-family:var(--fd);font-size:1.02rem;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.calc__stat small{font-size:.66rem;color:#8fa6c4;letter-spacing:.01em}
.calc__cross{display:flex;gap:12px;align-items:center;margin-top:20px;background:rgba(201,122,61,.14);border:1px solid rgba(201,122,61,.3);border-radius:14px;padding:12px 14px}
.calc__cross-ic{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--grad-copper);color:#fff}
.calc__cross-tx{flex:1;min-width:0}
.calc__cross-tx b{display:block;font-size:.9rem;color:#fff}
.calc__cross-tx span{font-size:.77rem;color:#c4d3e8;line-height:1.35}
.calc__cross .btn{flex:none}
.calc__note{max-width:820px;margin:22px auto 0;text-align:left;font-size:.82rem;color:var(--slate);line-height:1.55;display:flex;gap:9px;justify-content:center;align-items:flex-start}
.calc__note svg{flex:none;color:var(--copper);margin-top:2px}
/* banner da calculadora no dashboard */
.calcbanner{display:flex;align-items:center;gap:16px;margin:22px 0 2px;padding:16px 20px;border-radius:var(--r-lg);
  background:linear-gradient(120deg,rgba(201,122,61,.13),rgba(20,48,89,.05));border:1px solid rgba(201,122,61,.32);
  text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.calcbanner:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.calcbanner__ic{flex:none;width:48px;height:48px;border-radius:13px;display:grid;place-items:center;color:#fff;background:var(--grad-copper);box-shadow:0 8px 20px rgba(201,122,61,.3)}
.calcbanner__tx{flex:1;min-width:0}
.calcbanner__tx b{display:flex;align-items:center;gap:7px;font-family:var(--fd);font-size:1.02rem;color:var(--ink)}
.calcbanner__tx b svg{color:var(--copper)}
.calcbanner__tx span{display:block;font-size:.86rem;color:var(--slate);margin-top:2px;line-height:1.4}
.calcbanner__cta{flex:none;font-family:var(--fd);font-weight:700;font-size:.82rem;color:#fff;background:var(--grad-copper);padding:11px 20px;border-radius:100px;box-shadow:0 6px 16px rgba(201,122,61,.3)}
@media(max-width:600px){ .calcbanner{padding:14px 16px;gap:12px} .calcbanner__ic{width:42px;height:42px} .calcbanner__cta{display:none} }

@media(max-width:860px){ .calc{grid-template-columns:1fr} }
@media(max-width:560px){
  .calc__stats{grid-template-columns:1fr 1fr;gap:14px}
  .calc__bignum{font-size:2.9rem}
  .calc__cross{flex-wrap:wrap}
  .calc__cross .btn{width:100%}
}

/* ============================================================
   RASTREIO — Melhor Envio
   ============================================================ */
.trackresult{margin-top:18px}
.myships{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.myships__lbl{display:block;font-size:.78rem;font-weight:600;color:var(--slate);margin-bottom:9px}
.myship{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;
  padding:11px 14px;border:1.5px solid var(--line);border-radius:12px;margin-bottom:8px;background:#fff;transition:.15s}
.myship:hover{border-color:var(--copper-soft)}
.myship.active{border-color:var(--copper);background:rgba(201,122,61,.06)}
.myship b{font-family:var(--fd);font-size:.88rem;color:var(--ink)}
.myship__st{font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:100px;white-space:nowrap}
.myship__st--ok{background:rgba(37,195,154,.12);color:#12a37e}
.myship__st--wait{background:rgba(43,143,214,.1);color:var(--blue-600)}
.myship__st--warn{background:rgba(201,122,61,.12);color:var(--copper)}
.myship__st--bad{background:rgba(224,79,79,.1);color:#d64545}
.track__msg{display:flex;gap:9px;align-items:flex-start;font-size:.9rem;color:var(--slate);line-height:1.5;background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.track__msg svg{flex:none;color:var(--copper);margin-top:1px}
.track__msg b{color:var(--ink)}
.track__msg--load svg{animation:trkspin 1s linear infinite}
@keyframes trkspin{to{transform:rotate(360deg)}}
.track__status{display:inline-flex;align-items:center;gap:8px;font-family:var(--fd);font-size:.98rem;font-weight:600;padding:9px 16px;border-radius:100px;margin-bottom:18px}
.track__status svg{flex:none}
.track__status--ok{background:rgba(37,195,154,.12);color:#12a37e;border:1px solid rgba(37,195,154,.3)}
.track__status--wait{background:rgba(43,143,214,.1);color:var(--blue-600);border:1px solid rgba(43,143,214,.28)}
.track__status--warn{background:rgba(201,122,61,.12);color:var(--copper);border:1px solid rgba(201,122,61,.3)}
.track__status--bad{background:rgba(224,79,79,.1);color:#d64545;border:1px solid rgba(224,79,79,.3)}
.track__meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;margin-top:16px;font-size:.85rem;color:var(--slate)}
.track__meta b{color:var(--ink);font-variant-numeric:tabular-nums}
.track__meta a{display:inline-flex;align-items:center;gap:5px;color:var(--blue-600);font-weight:600}
.track__meta a svg{color:var(--blue-600)}
.track__upd{margin-left:auto;font-size:.78rem;opacity:.85}
@media(max-width:560px){ .track__upd{margin-left:0} }

/* ===== login (e-mail + senha) ===== */
.authtabs{display:flex;gap:6px;background:var(--paper);padding:5px;border-radius:12px;margin:18px 0 20px}
.authtab{flex:1;padding:10px 8px;border-radius:8px;font-family:var(--fd);font-weight:600;font-size:.9rem;color:var(--slate);transition:.2s}
.authtab.active{background:#fff;color:var(--navy-800);box-shadow:var(--shadow-sm)}
.autherr{min-height:1.1em;font-size:.82rem;color:#d64545;font-weight:600;margin:2px 0 10px;line-height:1.4}
.authforgot{display:block;width:100%;margin-top:12px;background:none;border:0;font-size:.85rem;font-weight:600;color:var(--slate);cursor:pointer}
.authforgot:hover{color:var(--copper)}

/* ============================================================
   MENU DO AVATAR (alterar senha / sair)
   ============================================================ */
.avatarwrap{position:relative}
.usermenu{position:absolute;top:calc(100% + 10px);right:0;z-index:90;min-width:190px;display:none;flex-direction:column;
  background:#fff;border:1px solid var(--line,#e3ebf5);border-radius:14px;box-shadow:0 18px 44px rgba(10,26,51,.18);overflow:hidden;padding:6px}
.usermenu.on{display:flex;animation:pop .22s cubic-bezier(.2,.9,.3,1.1)}
.usermenu button{display:flex;align-items:center;gap:10px;width:100%;padding:11px 13px;border-radius:9px;
  font-size:.88rem;font-weight:600;color:var(--navy-800,#0e2444);text-align:left;transition:.15s}
.usermenu button:hover{background:var(--paper,#eef4fb)}
.usermenu button svg{width:16px;height:16px;color:var(--copper,#c97a3d)}
.avatar svg{width:20px;height:20px}

/* ============================================================
   FAB SUPORTE WHATSAPP
   ============================================================ */
.wafab{position:fixed;right:16px;bottom:20px;z-index:58;display:flex;align-items:center;gap:12px;text-decoration:none}
.wafab__btn{position:relative;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#fff;
  background:linear-gradient(135deg,#2ce27a 0%,#25d366 45%,#1ebe5d 100%);
  box-shadow:0 10px 26px rgba(30,190,93,.42),0 3px 10px rgba(10,26,51,.18);
  transition:transform .22s cubic-bezier(.2,.9,.3,1.2),box-shadow .22s;animation:wafabIn .5s cubic-bezier(.2,.9,.3,1.2) .8s backwards}
.wafab:hover .wafab__btn{transform:scale(1.08);box-shadow:0 14px 34px rgba(30,190,93,.55),0 4px 12px rgba(10,26,51,.2)}
.wafab:active .wafab__btn{transform:scale(.95)}
.wafab__btn svg{width:31px;height:31px;position:relative;z-index:1}
.wafab__ping{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(37,211,102,.65);animation:waPing 2.6s ease-out 1.6s infinite}
@keyframes wafabIn{from{opacity:0;transform:scale(.4) translateY(20px)}to{opacity:1;transform:none}}
@keyframes waPing{0%{transform:scale(1);opacity:.8}70%,100%{transform:scale(1.55);opacity:0}}
.wafab__bubble{order:-1;background:#fff;border:1px solid var(--line);border-radius:16px 16px 4px 16px;padding:10px 15px;
  box-shadow:0 12px 30px rgba(10,26,51,.16);white-space:nowrap;
  opacity:0;transform:translateY(8px) scale(.96);pointer-events:none;
  animation:waBubble 10s cubic-bezier(.2,.9,.3,1.1) 1.6s 1 forwards}
.wafab__bubble b{display:block;font-family:var(--fd);font-size:.86rem;color:var(--navy-900)}
.wafab__bubble span{display:block;font-size:.74rem;color:var(--slate)}
.wafab:hover .wafab__bubble,.wafab:focus-visible .wafab__bubble{animation:none;opacity:1;transform:none}
@keyframes waBubble{0%{opacity:0;transform:translateY(8px) scale(.96)}6%,80%{opacity:1;transform:none}100%{opacity:0;transform:translateY(8px) scale(.96)}}
@media(max-width:1160px){ .wafab{bottom:calc(84px + env(safe-area-inset-bottom))} }
@media(max-width:560px){ .wafab__btn{width:54px;height:54px} .wafab__btn svg{width:29px;height:29px} }

/* ============================================================
   COMPRA ASSISTIDA — agendamento ao vivo
   ============================================================ */
.livedot{width:9px;height:9px;border-radius:50%;background:#ff5b5b;flex:none;display:inline-block;
  box-shadow:0 0 0 3px rgba(255,91,91,.18);animation:aspulse 1.6s ease-in-out infinite}
.livedot--lg{width:11px;height:11px}
@keyframes aspulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.82)}}
.nav__live{position:relative}
.nav__live .livedot{margin-right:2px}
.botnav__live{color:var(--copper)!important}

/* banner do dashboard */
.assistbanner{display:flex;align-items:center;gap:16px;margin-bottom:14px;padding:16px 20px;border-radius:var(--r-lg);
  background:var(--grad-navy);color:#fff;position:relative;overflow:hidden;border:1px solid rgba(231,168,111,.35);
  box-shadow:0 14px 36px rgba(10,26,51,.28)}
.assistbanner::before{content:"";position:absolute;right:-10%;top:-40%;width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,91,91,.28),transparent 65%)}
.assistbanner__ic{flex-shrink:0;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;position:relative;z-index:1;
  background:rgba(255,91,91,.13);border:1px solid rgba(255,91,91,.35);color:var(--copper-soft)}
.assistbanner__ic .livedot{position:absolute;top:-4px;right:-4px}
.assistbanner__ic svg{width:24px;height:24px}
.assistbanner__txt{position:relative;z-index:1;min-width:0}
.assistbanner__txt b{display:flex;align-items:center;gap:7px;font-family:var(--fd);font-size:1.02rem}
.assistbanner__txt span{display:block;font-size:.85rem;color:#c4d3e8;margin-top:2px}
.assistbanner__cta{margin-left:auto;flex-shrink:0;position:relative;z-index:1;font-family:var(--fd);font-weight:700;font-size:.85rem;
  color:#0a1a33;background:var(--grad-copper);padding:11px 18px;border-radius:12px;box-shadow:0 10px 24px rgba(201,122,61,.35);white-space:nowrap}
@media(max-width:760px){.assistbanner{padding:14px 16px;gap:12px}.assistbanner__ic{width:42px;height:42px}.assistbanner__cta{display:none}.assistbanner__txt b{font-size:.95rem}}

/* link no carrinho */
.drawer__assist{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:12px 14px;
  border-radius:12px;font-size:.82rem;color:#fff;background:var(--grad-navy);border:1px solid rgba(231,168,111,.3);
  cursor:pointer;text-align:center;flex-wrap:wrap;line-height:1.4;font-family:inherit}
.drawer__assist svg{color:var(--copper-soft)}
.drawer__assist u{color:var(--copper-soft);font-weight:700}
.drawer__assist:hover{border-color:var(--copper-soft)}

/* hero da view */
.as-hero{position:relative;overflow:hidden;border-radius:var(--r-xl);background:var(--grad-navy);color:#fff;
  padding:clamp(26px,4.5vw,44px);margin-bottom:20px;box-shadow:0 22px 54px rgba(10,26,51,.3)}
.as-hero::before{content:"";position:absolute;right:-8%;top:-50%;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,122,61,.25),transparent 62%)}
.as-hero__l{position:relative;z-index:1;max-width:640px}
.as-live{display:inline-flex;align-items:center;gap:9px;font-family:var(--fd);font-size:.66rem;font-weight:700;
  letter-spacing:.18em;color:var(--copper-soft)}
.as-hero h1{font-family:var(--fd);font-size:clamp(1.8rem,4vw,2.6rem);margin:10px 0 12px}
.as-hero h1 span{color:var(--copper-soft)}
.as-hero .as-hero__l>p{color:#c4d3e8;font-size:.98rem;line-height:1.65}
.as-hero p b{color:#fff}
.as-steps{display:grid;gap:11px;margin-top:20px}
@media(min-width:760px){.as-steps{grid-template-columns:repeat(3,1fr);gap:14px}}
.as-step{display:flex;gap:11px;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:var(--r-md);padding:13px 15px}
.as-step .n{width:26px;height:26px;flex:none;border-radius:50%;display:grid;place-items:center;font-family:var(--fd);
  font-weight:700;font-size:.82rem;color:#0a1a33;background:var(--grad-copper)}
.as-step b{display:block;font-family:var(--fd);font-size:.9rem}
.as-step div span{display:block;font-size:.78rem;color:#a9bdd8;margin-top:2px;line-height:1.45}

/* card de agendamento */
.as-loading{padding:34px;text-align:center;color:var(--slate);background:#fff;border:1px solid var(--line);
  border-radius:var(--r-lg);box-shadow:var(--shadow-sm);display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap}
.as-book{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md);
  padding:clamp(18px,3vw,28px);max-width:760px;margin:0 auto}
.as-book__head{display:flex;align-items:center;gap:13px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:6px}
.as-book__ic{width:44px;height:44px;flex:none;border-radius:13px;display:grid;place-items:center;color:#fff;background:var(--grad-copper)}
.as-book__head b{display:block;font-family:var(--fd);font-size:1.05rem;color:var(--ink)}
.as-book__head span{display:block;font-size:.8rem;color:var(--slate);margin-top:1px}
.as-book__lbl{font-family:var(--fd);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--copper);margin:18px 0 10px}
.as-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}
.as-days::-webkit-scrollbar{display:none}
.as-day{flex:0 0 auto;width:72px;padding:9px 4px;border-radius:13px;border:1px solid var(--line);background:var(--paper-2);
  cursor:pointer;text-align:center;transition:.15s;font-family:var(--fd)}
.as-day span{display:block;font-size:.58rem;font-weight:700;letter-spacing:.1em;color:var(--slate)}
.as-day b{display:block;font-size:1.25rem;color:var(--ink);line-height:1.2}
.as-day small{display:block;font-size:.62rem;color:var(--slate)}
.as-day em{display:block;font-style:normal;font-size:.56rem;font-weight:700;color:var(--mint);margin-top:3px}
.as-day.sel{background:var(--grad-copper);border-color:transparent;box-shadow:0 8px 20px rgba(201,122,61,.35)}
.as-day.sel span,.as-day.sel b,.as-day.sel small,.as-day.sel em{color:#fff}
.as-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:8px}
.as-slot{padding:11px 0;border-radius:11px;border:1px solid var(--line);background:var(--paper-2);cursor:pointer;
  font-family:var(--fd);font-weight:600;font-size:.9rem;color:var(--navy-700);transition:.15s}
.as-slot:hover{border-color:var(--copper-soft)}
.as-slot.sel{background:var(--navy-900);border-color:transparent;color:#fff;box-shadow:0 8px 18px rgba(10,26,51,.3)}
.as-slot.off{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.as-form{display:grid;gap:12px}
@media(min-width:640px){.as-form{grid-template-columns:1.1fr .9fr}}
.as-field span{display:block;font-size:.76rem;font-weight:600;color:var(--slate);margin-bottom:6px}
.as-field input,.as-field select{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--line);
  font-size:.95rem;font-family:inherit;color:var(--ink);background:#fff}
.as-field input:focus,.as-field select:focus{outline:none;border-color:var(--copper-soft);box-shadow:0 0 0 4px rgba(201,122,61,.13)}
.as-err{min-height:20px;font-size:.85rem;color:#c0392b;margin:8px 0 4px}
.as-note{display:flex;gap:7px;align-items:center;justify-content:center;font-size:.78rem;color:var(--slate);margin-top:12px;flex-wrap:wrap;text-align:center}
.as-note svg{color:var(--mint);flex:none}

/* ticket de horário confirmado */
.as-ticket{max-width:640px;margin:0 auto;border-radius:var(--r-lg);overflow:hidden;background:#fff;
  border:1px solid rgba(37,195,154,.4);box-shadow:var(--shadow-md)}
.as-ticket__head{display:flex;align-items:center;gap:9px;padding:13px 20px;font-family:var(--fd);font-weight:700;
  font-size:.9rem;color:var(--mint);background:rgba(37,195,154,.1);border-bottom:1px solid rgba(37,195,154,.25)}
.as-ticket__body{padding:clamp(18px,3vw,26px)}
.as-ticket__date{display:flex;gap:15px;align-items:center}
.as-ticket__cal{width:62px;flex:none;border-radius:14px;overflow:hidden;text-align:center;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.as-ticket__cal span{display:block;font-family:var(--fd);font-size:.6rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#fff;background:var(--grad-copper);padding:4px 0}
.as-ticket__cal b{display:block;font-family:var(--fd);font-size:1.6rem;color:var(--ink);padding:4px 0 6px}
.as-ticket__date>div b{display:block;font-family:var(--fd);font-size:1.05rem;color:var(--ink);text-transform:capitalize}
.as-ticket__date>div span{display:block;font-size:.86rem;color:var(--slate);margin-top:2px}
.as-ticket__how{display:flex;gap:12px;align-items:flex-start;margin:18px 0;padding:14px 16px;border-radius:14px;
  background:var(--paper-2);border:1px solid var(--line)}
.as-ticket__how svg{flex:none;color:var(--copper);margin-top:2px}
.as-ticket__how p{font-size:.88rem;color:var(--slate);line-height:1.55}
.as-ticket__how b{color:var(--ink)}
.as-ticket__meta{font-size:.84rem;color:var(--slate);margin-bottom:16px;display:flex;gap:6px;align-items:center}
.as-ticket__meta svg{color:var(--copper)}
.as-ticket__acts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.as-cancel{margin-left:auto;background:none;border:0;cursor:pointer;font-size:.8rem;color:var(--slate);text-decoration:underline;font-family:inherit}
.as-cancel:hover{color:#c0392b}
@media(max-width:560px){.as-ticket__acts{flex-direction:column;align-items:stretch}.as-ticket__acts .btn{width:100%}.as-cancel{margin:6px auto 0}}

/* ============================================================
   REFORMULAÇÃO — PDP científico, guia de aplicação, protocolos
   ============================================================ */

/* contador de economia no tiercard */
.tiercard__saved{display:flex;align-items:center;gap:9px;margin-top:14px;padding:11px 13px;border-radius:12px;
  background:rgba(37,195,154,.12);border:1px solid rgba(37,195,154,.3)}
.tiercard__saved svg{flex:none;color:#4fe0b4;width:18px;height:18px}
.tiercard__saved span{font-size:.82rem;color:#d6ffef;line-height:1.4}
.tiercard__saved b{color:#fff;font-family:var(--fd)}

/* ---------- PDP: blocos científicos ---------- */
.scisec{margin-top:26px;display:flex;flex-direction:column;gap:16px}
.sciev{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-family:var(--fd);font-size:.78rem;font-weight:600;
  padding:8px 14px;border-radius:100px}
.sciev svg{width:15px;height:15px}
.sciev--mint{color:#12805f;background:rgba(37,195,154,.14);border:1px solid rgba(37,195,154,.4)}
.sciev--blue{color:var(--blue-600);background:rgba(43,143,214,.12);border:1px solid rgba(43,143,214,.35)}
.scichips{display:flex;flex-wrap:wrap;gap:9px}
.scichip{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:12px;background:var(--paper-2);
  border:1px solid var(--line);font-size:.85rem;font-weight:600;color:var(--ink)}
.scichip svg{width:15px;height:15px;color:var(--blue-500);flex:none}
.scichip small{display:block;font-size:.66rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--slate)}
.scifits{display:grid;gap:14px}
@media(min-width:640px){.scifits{grid-template-columns:1fr 1fr}}
.sci{border-radius:var(--r-lg);padding:18px 20px;border:1px solid var(--line)}
.sci h4{display:flex;align-items:center;gap:8px;font-family:var(--fd);font-size:.98rem;margin-bottom:12px}
.sci h4 svg{width:17px;height:17px;flex:none}
.sci ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.sci li{position:relative;padding-left:20px;font-size:.9rem;line-height:1.45;color:var(--navy-700)}
.sci li::before{position:absolute;left:0;top:0;font-weight:800}
.sci--fit{background:linear-gradient(180deg,rgba(37,195,154,.07),#fff);border-color:rgba(37,195,154,.4)}
.sci--fit h4{color:#12805f}.sci--fit li::before{content:"✓";color:#12a37e}
.sci--nofit{background:#fbf3f1;border-color:#f0d9d2}
.sci--nofit h4{color:#b4482f}.sci--nofit li::before{content:"✕";color:#d9534f}
/* box genérico */
.scibox{border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;background:#fff;box-shadow:var(--shadow-sm)}
.scibox__h{display:flex;align-items:center;gap:9px;font-family:var(--fd);font-size:1rem;color:var(--ink);margin-bottom:12px}
.scibox__h svg{width:18px;height:18px;color:var(--copper);flex:none}
.scibox__p{font-size:.92rem;line-height:1.65;color:var(--navy-700)}
.sci__seq{display:inline-block;margin-top:8px;font-family:var(--fd);font-size:.82rem;color:var(--slate);
  background:var(--paper-2);border:1px solid var(--line);padding:4px 10px;border-radius:8px}
.sci__ruo{display:block;margin-top:12px;font-size:.74rem;color:var(--slate);font-style:italic}
.scirefs{list-style:none;display:flex;flex-direction:column;gap:10px}
.scirefs li{font-size:.82rem;line-height:1.5;color:var(--slate);padding-left:16px;position:relative}
.scirefs li::before{content:"§";position:absolute;left:0;color:var(--copper);font-weight:700}
/* timeline */
.scitl{display:flex;flex-direction:column;gap:2px}
.scitl__row{display:flex;gap:14px;padding-bottom:16px;position:relative}
.scitl__row:not(:last-child)::before{content:"";position:absolute;left:6px;top:16px;bottom:0;width:2px;background:var(--line)}
.scitl__dot{width:14px;height:14px;flex:none;border-radius:50%;margin-top:2px;z-index:1}
.scitl__dot--0{background:var(--blue-400)}.scitl__dot--1{background:var(--copper)}.scitl__dot--2{background:var(--mint)}
.scitl__row b{display:block;font-family:var(--fd);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.scitl__row p{font-size:.88rem;line-height:1.55;color:var(--slate);margin-top:3px}
/* riscos */
.scibox--risk{background:#fffdf9}
.scirisk{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-top:1px solid var(--line)}
.scirisk:first-of-type{border-top:none}
.scirisk__tag{flex:none;font-family:var(--fd);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 10px;border-radius:100px;color:#fff}
.scirisk--mint .scirisk__tag{background:var(--mint)}
.scirisk--amber .scirisk__tag{background:var(--amber)}
.scirisk--red .scirisk__tag{background:#e05252}
.scirisk p{font-size:.88rem;line-height:1.5;color:var(--navy-700);padding-top:2px}
/* cross para o guia */
.scicalc{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--r-lg);
  background:var(--grad-navy);color:#fff;box-shadow:var(--shadow-md)}
.scicalc>svg:first-child{flex:none;color:var(--copper-soft);width:22px;height:22px}
.scicalc b{display:block;font-family:var(--fd);font-size:.98rem}
.scicalc span{display:block;font-size:.82rem;color:#c4d3e8}
.scicalc>svg:last-child{margin-left:auto;flex:none}

/* ---------- GUIA DE APLICAÇÃO ---------- */
.aplcard{background:var(--grad-navy);color:#fff;border-radius:var(--r-xl);padding:clamp(20px,4vw,30px);
  box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.aplcard__h{display:flex;align-items:center;gap:9px;font-family:var(--fd);font-size:1.02rem;margin-bottom:16px}
.aplcard__h svg{width:18px;height:18px;color:var(--copper-soft)}
.apltoggle,.apllayer{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.apltoggle button,.apllayer button{padding:12px;border-radius:12px;font-family:var(--fd);font-weight:600;font-size:.9rem;
  color:#c4d3e8;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);cursor:pointer;transition:.15s;
  display:inline-flex;align-items:center;justify-content:center;gap:8px}
.apltoggle button.active{background:rgba(43,143,214,.2);border-color:var(--blue-300);color:#fff}
.apllayer button.active{background:rgba(201,122,61,.18);border-color:var(--copper-soft);color:#fff}
.apldot{width:11px;height:11px;border-radius:50%}
.apldot--skin{background:var(--copper-soft)}.apldot--fat{background:var(--blue-300)}
.aplangle{margin:8px 0 4px}
.aplhero{display:flex;align-items:center;justify-content:center;gap:clamp(18px,5vw,44px);
  padding:clamp(20px,4vw,34px);border-radius:var(--r-lg);
  background:rgba(6,19,42,.5);border:1px solid rgba(95,176,232,.22)}
.aplhero__syr{flex:none;filter:drop-shadow(0 8px 16px rgba(0,0,0,.4))}
.aplhero__num{text-align:center;line-height:1}
.aplhero__num b{font-family:var(--fd);font-weight:700;font-size:clamp(3.4rem,13vw,5rem);color:var(--blue-300);
  letter-spacing:-.02em;display:inline-flex;align-items:flex-start}
.aplhero__num b span{font-size:.5em;margin-top:.12em}
.aplhero__lbl{display:block;margin-top:4px;font-family:var(--fd);font-size:.74rem;font-weight:600;
  letter-spacing:.24em;text-transform:uppercase;color:#8fa6c4}
.aplnote{display:flex;gap:9px;align-items:flex-start;margin-top:14px;padding:14px 16px;border-radius:14px;
  background:rgba(43,143,214,.1);border:1px solid rgba(43,143,214,.28);font-size:.88rem;line-height:1.55;color:#dbe7f7}
.aplnote svg{flex:none;color:var(--blue-300);margin-top:2px}
.aplnote b{color:#fff}
.aplzones{display:grid;gap:13px;grid-template-columns:1fr}
@media(min-width:560px){.aplzones{grid-template-columns:1fr 1fr}}
.aplzone{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--shadow-sm)}
.aplzone h4{font-family:var(--fd);font-size:1rem;color:var(--ink);margin-bottom:6px}
.aplzone__loc{font-size:.88rem;color:var(--navy-700);line-height:1.5}
.aplzone__note{display:flex;gap:6px;align-items:flex-start;font-size:.82rem;color:var(--slate);margin-top:8px;line-height:1.45}
.aplzone__note svg{flex:none;color:var(--copper);margin-top:2px}
.aplrot{margin-top:20px;background:rgba(201,122,61,.06);border:1px solid rgba(201,122,61,.28);border-radius:var(--r-lg);padding:18px 20px}
.aplrot__h{display:flex;align-items:center;gap:9px;font-family:var(--fd);font-size:1rem;color:var(--ink);margin-bottom:12px}
.aplrot__h svg{width:18px;height:18px;color:var(--copper)}
.aplrot ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.aplrot li{position:relative;padding-left:20px;font-size:.9rem;line-height:1.5;color:var(--navy-700)}
.aplrot li::before{content:"→";position:absolute;left:0;color:var(--copper);font-weight:700}
.aplrecon{display:flex;flex-direction:column;gap:10px}
.aplstep{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.aplstep__n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--fd);
  font-weight:700;font-size:.85rem;color:#fff;background:var(--grad-copper)}
.aplstep p{font-size:.9rem;line-height:1.5;color:var(--navy-700)}

/* ---------- PROTOCOLOS / STACKS ---------- */
.stacks{display:grid;gap:16px}
@media(min-width:760px){.stacks{grid-template-columns:1fr 1fr}}
.stackcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:20px 22px;box-shadow:var(--shadow-sm);transition:.2s}
.stackcard:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.stackcard__top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.stackcard__goal{font-family:var(--fd);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--copper)}
.stackcard__top h3{font-family:var(--fd);font-size:1.12rem;color:var(--ink);margin-top:4px}
.stackcard__wk{flex:none;display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;color:var(--slate);
  background:var(--paper-2);border:1px solid var(--line);padding:5px 10px;border-radius:100px;white-space:nowrap}
.stackcard__wk svg{width:13px;height:13px}
.stackcard__desc{font-size:.9rem;line-height:1.6;color:var(--navy-700);margin-bottom:14px}
.stackcard__items{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.stackchip{font-size:.8rem;font-weight:600;color:var(--blue-600);background:var(--blue-100);border-radius:100px;padding:6px 12px}
.stackchip:hover{background:var(--blue-300);color:#fff}
.stackcard__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;flex-wrap:wrap}
.stackcard__price{font-size:.82rem;color:var(--slate)}
.stackcard__price b{font-family:var(--fd);font-size:1.05rem;color:var(--ink)}

/* ---------- BIBLIOTECA (Academy) ---------- */
.bibbanner{display:flex;align-items:center;gap:16px;margin-top:26px;padding:18px 20px;
  background:linear-gradient(135deg,#0f2b4d,#123a63);border:1px solid rgba(95,176,232,.28);
  border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:.2s;text-decoration:none}
.bibbanner:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:rgba(95,176,232,.55)}
.bibbanner__ic{flex:none;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;
  background:rgba(95,176,232,.16);color:var(--blue-300)}
.bibbanner__tx{flex:1;min-width:0}
.bibbanner__tx b{display:block;font-family:var(--fd);font-size:1.06rem;color:#fff}
.bibbanner__tx span{display:block;font-size:.85rem;line-height:1.5;color:#c4d6ec;margin-top:2px}
.bibbanner__go{flex:none;color:var(--blue-300)}

/* biblioteca = zona escura imersiva dentro do Academy (estilo lab) */
.bib{background:radial-gradient(120% 80% at 50% 0%,#102a4c 0%,#0a1a30 55%,#081422 100%);
  border:1px solid rgba(95,176,232,.18);border-radius:22px;padding:26px 22px 30px;box-shadow:var(--shadow-md)}
@media(min-width:760px){.bib{padding:32px 30px 36px}}
.bib__head{margin-bottom:20px}
.bib__head h2{font-family:var(--fd);font-size:1.8rem;color:#fff;letter-spacing:-.01em}
.bib__count{display:block;font-size:.8rem;color:#7fa8cf;letter-spacing:.08em;margin-top:4px;
  font-variant-numeric:tabular-nums;text-transform:uppercase}
.bib__empty{color:#9fb6ce;text-align:center;padding:30px 0}

.bibsearch{display:flex;align-items:center;gap:11px;background:rgba(6,16,30,.7);border:1px solid rgba(95,176,232,.25);
  border-radius:14px;padding:13px 18px;margin-bottom:16px;transition:.15s}
.bibsearch:focus-within{border-color:var(--blue-300);box-shadow:0 0 0 3px rgba(95,176,232,.15)}
.bibsearch svg{flex:none;color:var(--blue-300)}
.bibsearch input{flex:1;border:0;outline:0;background:transparent;font-size:.95rem;color:#eaf3fb;font-family:inherit}
.bibsearch input::placeholder{color:#6f8bab}

.bibfilters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.bibchip{font-size:.8rem;font-weight:600;color:#a8c2dc;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.12);
  border-radius:100px;padding:8px 15px;cursor:pointer;transition:.15s;font-family:inherit}
.bibchip:hover{border-color:var(--blue-300);color:#fff}
.bibchip.active{background:rgba(95,176,232,.16);border-color:var(--blue-300);color:#fff;box-shadow:0 0 0 1px rgba(95,176,232,.4) inset}

.biblist{display:flex;flex-direction:column;gap:14px}
.libcard{position:relative;display:flex;gap:0;background:linear-gradient(180deg,rgba(20,44,74,.5),rgba(11,26,45,.5));
  border:1px solid rgba(95,176,232,.2);border-radius:16px;overflow:hidden;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}
.libcard:hover{transform:translateY(-2px);border-color:var(--blue-300);box-shadow:0 14px 34px -14px rgba(0,0,0,.6)}
.libcard::after{content:"";position:absolute;inset:0;border-radius:16px;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.libcard__tile{position:relative;flex:none;width:118px;margin:14px 0 14px 14px;border-radius:14px;
  background:linear-gradient(160deg,#f4f8fc,#dfeaf5);display:grid;place-items:center;overflow:hidden;
  box-shadow:inset 0 0 0 1px rgba(10,30,60,.08),0 6px 16px -8px rgba(0,0,0,.5)}
.libcard__tile img{width:88%;max-height:118px;object-fit:contain;mix-blend-mode:multiply}
.libcard__ev{position:absolute;top:7px;left:7px;font-size:.56rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  padding:4px 8px;border-radius:100px}
.libcard__ev.clinico{background:#d6f3ea;color:#0a7f5f;border:1px solid rgba(10,127,95,.28)}
.libcard__ev.preclinico{background:#ebe2fb;color:#6636c4;border:1px solid rgba(102,54,196,.28)}
.libcard__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:9px;padding:16px 18px}
.libcard__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.libcard__head h3{font-family:var(--fd);font-size:1.22rem;color:#fff;line-height:1.15}
.libcard__sub{display:block;font-family:var(--fm,monospace);font-size:.74rem;font-weight:600;color:var(--blue-300);letter-spacing:.02em;margin-top:3px}
.libcard__half{flex:none;display:inline-flex;align-items:center;gap:5px;font-family:var(--fm,monospace);font-size:.68rem;font-weight:600;
  color:#bcd6ee;background:rgba(6,16,30,.55);border:1px solid rgba(95,176,232,.28);border-radius:100px;padding:5px 10px;white-space:nowrap}
.libcard__half svg{width:12px;height:12px;color:var(--blue-300)}
.libcard__cats{display:flex;flex-wrap:wrap;gap:6px}
.libtag{font-size:.68rem;font-weight:600;color:#bcd6ee;background:rgba(95,176,232,.12);
  border:1px solid rgba(95,176,232,.26);border-radius:100px;padding:3px 10px}
.libcard__desc{font-size:.88rem;line-height:1.6;color:#bccfe2;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.libcard__open{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-size:.8rem;font-weight:700;color:var(--blue-300);transition:.15s}
.libcard__open svg{transition:transform .15s}
.libcard:hover .libcard__open{color:#fff}
.libcard:hover .libcard__open svg{transform:translateX(3px)}
@media(max-width:560px){
  .libcard__tile{width:92px}
  .libcard__tile img{max-height:82px}
  .libcard__body{padding:14px 15px}
  .libcard__head h3{font-size:1.08rem}
  .libcard__half{display:none}
  .libcard__desc{-webkit-line-clamp:4}
}
