/* =========================================================
   ALCademy — design system (dos mockups DESIGN-ALCADEMY).
   Carregado depois de demolicao.css: as telas antigas herdam a paleta nova.
   ========================================================= */
:root{
  --bg:#FBF8F5;          /* fundo quente */
  --bg-soft:#F6F1EC;
  --surface:#FFFFFF;
  --ink:#0F1B33;         /* azul-marinho dos títulos */
  --text:#334056;
  --muted:#6B7385;
  --faint:#9AA1AE;
  --line:#ECE6E0;
  --line-2:#E2DBD4;
  --brand:#FF4F12;       /* laranja Demolição */
  --brand-600:#EA420A;
  --brand-50:#FFF4EE;
  --brand-100:#FFE6D9;
  --green:#16A34A;
  --green-50:#E9F8EF;
  --teal:#0E8C7F;
  --teal-50:#E6F5F3;
  --blue:#2563EB;
  --blue-50:#EAF1FE;
  --purple:#7C3AED;
  --purple-50:#F2ECFE;
  --gold:#F2B33D;
  --red:#E5484D;
  --red-50:#FDECEC;
  --dark:#0D1424;        /* cards escuros (hero) */
  --dark-2:#161F33;

  --f-display:"Source Serif 4","Source Serif Pro",Georgia,"Times New Roman",serif;
  --f-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;

  --r-sm:8px; --r:12px; --r-lg:16px; --r-xl:20px;
  --sh-sm:0 1px 2px rgba(15,27,51,.05);
  --sh:0 1px 2px rgba(15,27,51,.04),0 8px 24px -12px rgba(15,27,51,.12);
  --sh-lg:0 2px 4px rgba(15,27,51,.04),0 24px 48px -20px rgba(15,27,51,.22);
  --sh-brand:0 10px 24px -10px rgba(255,79,18,.55);
  --gutter:24px;
  --header-h:64px;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
input,select,textarea{font:inherit;color:var(--ink)}
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
svg.lucide{width:1.15em;height:1.15em;stroke-width:1.9;flex:none}

/* ---------- Tipografia ---------- */
h1,h2,h3,h4{color:var(--ink);margin:0;text-wrap:balance}
.display{font-family:var(--f-display);font-weight:600;letter-spacing:-.025em;line-height:1.02}
.d-xl{font-size:clamp(40px,5.4vw,66px)}
.d-lg{font-size:clamp(34px,4.4vw,54px)}
.d-md{font-size:clamp(28px,3.2vw,40px)}
.d-sm{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.02em;line-height:1.12}
.d-xs{font-size:20px;letter-spacing:-.015em;line-height:1.2}
.serif{font-family:var(--f-display)}
.lead{font-size:clamp(16px,1.35vw,18px);color:var(--muted);line-height:1.55;max-width:62ch}
.lead strong{color:var(--ink);font-weight:600}
.eyebrow{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--brand)}
.muted{color:var(--muted)} .faint{color:var(--faint)} .ink{color:var(--ink)}
.brand{color:var(--brand)} .green{color:var(--green)} .teal{color:var(--teal)}
.small{font-size:13px} .xs{font-size:12px} .fw6{font-weight:600} .fw7{font-weight:700}
.num{font-variant-numeric:tabular-nums}
.strike{text-decoration:line-through;color:var(--faint)}
.link{color:var(--brand);font-weight:600;display:inline-flex;align-items:center;gap:6px;font-size:13.5px}
.link:hover{text-decoration:underline}
.u{text-decoration:underline;text-underline-offset:3px}

/* ---------- Layout ---------- */
.container{width:100%;max-width:1240px;margin-inline:auto;padding-inline:var(--gutter)}
.container-wide{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:40px}
.section-sm{padding-block:24px}
.stack{display:flex;flex-direction:column;gap:16px}
.stack-sm{display:flex;flex-direction:column;gap:8px}
.stack-lg{display:flex;flex-direction:column;gap:28px}
.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g5{grid-template-columns:repeat(5,minmax(0,1fr))}
.g6{grid-template-columns:repeat(6,minmax(0,1fr))}
.min0{min-width:0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.sec-head .t{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center}
.with-aside{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}

/* fundo com textura sutil (ondas claras) */
.bg-silk{background:
  radial-gradient(1200px 400px at 85% -10%,#fff 0,transparent 60%),
  radial-gradient(900px 500px at -10% 10%,#F3EDE7 0,transparent 55%),var(--bg)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(251,248,245,.86);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent}
.site-header.scrolled{border-bottom-color:var(--line)}
.site-header .inner{height:var(--header-h);display:flex;align-items:center;gap:28px}
.logo{display:inline-flex;align-items:center;flex:none;line-height:0}
.logo-img{height:34px;width:auto;display:block}
.logo-mark-img{height:32px;width:auto;display:none}
.site-footer .logo-img{height:28px}
.main-nav{display:flex;gap:28px;margin-left:56px}
.main-nav a{font-size:14px;font-weight:500;color:var(--ink);padding:6px 0;position:relative}
.main-nav a:hover{color:var(--brand)}
.main-nav a.active{color:var(--brand)}
.main-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:var(--brand)}
.hdr-actions{margin-left:auto;display:flex;align-items:center;gap:14px}
.icon-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:10px;color:var(--ink);position:relative}
.icon-btn:hover{background:var(--bg-soft)}
.icon-btn .dot{position:absolute;top:7px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--brand);border:2px solid var(--bg)}
.user-chip{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--ink);font-size:14px;padding:4px 6px;border-radius:999px;position:relative}
.user-chip:hover{background:var(--bg-soft)}
.user-chip img{width:32px;height:32px;border-radius:50%;object-fit:cover}
.menu-pop{position:absolute;right:0;top:calc(100% + 8px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-lg);padding:6px;min-width:210px;display:none;z-index:60}
.menu-pop.open{display:block}
.menu-pop a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;font-size:14px;color:var(--ink)}
.menu-pop a:hover{background:var(--brand-50);color:var(--brand)}
.menu-pop hr{border:0;border-top:1px solid var(--line);margin:6px 4px}
.burger{display:none}
.mobile-nav{display:none;border-top:1px solid var(--line);background:var(--surface);padding:10px var(--gutter) 16px}
.mobile-nav.open{display:block}
.mobile-nav a{display:block;padding:11px 4px;font-weight:500;color:var(--ink);border-bottom:1px solid var(--line)}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:44px;padding:0 20px;border-radius:9px;font-weight:600;font-size:14.5px;white-space:nowrap;transition:background .15s,box-shadow .15s,transform .15s,border-color .15s;border:1.5px solid transparent;line-height:1}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--brand);color:#fff;box-shadow:var(--sh-brand)}
.btn-primary:hover{background:var(--brand-600)}
.btn-outline{border-color:var(--brand);color:var(--brand);background:var(--surface)}
.btn-outline:hover{background:var(--brand-50)}
.btn-ghost{border-color:var(--line-2);color:var(--ink);background:var(--surface)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-on-dark{border-color:rgba(255,255,255,.7);color:#fff;background:transparent}
.btn-on-dark:hover{background:rgba(255,255,255,.1)}
.btn-dark{background:var(--ink);color:#fff}
.btn-teal{background:var(--teal);color:#fff}
.btn-soft{background:var(--brand-50);color:var(--brand);border-color:var(--brand-100)}
.btn-sm{height:36px;padding:0 14px;font-size:13.5px;border-radius:8px}
.btn-xs{height:30px;padding:0 12px;font-size:12.5px;border-radius:7px}
.btn-lg{height:52px;padding:0 26px;font-size:16px;border-radius:10px}
.btn-xl{height:56px;padding:0 28px;font-size:17px;border-radius:10px}
.btn-block{width:100%}

/* ---------- Cartões e superfícies ---------- */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}
.card-pad{padding:22px}
.card-pad-lg{padding:28px}
.card-soft{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r-lg)}
.card-hl{border:1.5px solid var(--brand);box-shadow:0 18px 40px -24px rgba(255,79,18,.45)}
.panel-title{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--ink);font-size:16px}
.panel-title .lucide{color:var(--brand);width:20px;height:20px}
.panel-title.serif{font-family:var(--f-display);font-size:19px;letter-spacing:-.01em}
.divider{border:0;border-top:1px solid var(--line);margin:0}
.ico-tile{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex:none}
.ico-tile .lucide{width:22px;height:22px}
.ico-tile.lg{width:58px;height:58px;border-radius:14px}
.ico-tile.lg .lucide{width:26px;height:26px}
.ico-tile.round{border-radius:50%}
.ico-tile.green{background:var(--green-50);color:var(--green)}
.ico-tile.teal{background:var(--teal-50);color:var(--teal)}
.ico-tile.blue{background:var(--blue-50);color:var(--blue)}
.ico-tile.purple{background:var(--purple-50);color:var(--purple)}
.ico-tile.red{background:var(--red-50);color:var(--red)}
.ico-plain{color:var(--brand);display:inline-flex}
.ico-plain .lucide{width:26px;height:26px;stroke-width:1.7}

/* ---------- Badges ---------- */
.badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:11.5px;font-weight:600;white-space:nowrap}
.badge-up{text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:700}
.badge-brand{background:var(--brand);color:#fff}
.badge-soft{background:var(--brand-50);color:var(--brand);border:1px solid var(--brand-100)}
.badge-green{background:var(--green-50);color:var(--green)}
.badge-teal{background:var(--teal-50);color:var(--teal)}
.badge-blue{background:var(--blue-50);color:var(--blue)}
.badge-purple{background:var(--purple-50);color:var(--purple)}
.badge-red{background:var(--red-50);color:var(--red)}
.badge-gray{background:var(--bg-soft);color:var(--muted)}
.badge-feature{background:rgba(242,179,61,.12);color:#F6C25F;border:1px solid rgba(242,179,61,.45);text-transform:uppercase;letter-spacing:.1em;font-size:10.5px;font-weight:700;height:26px}
.badge-feature.on-light{background:#2A2216;color:#F6C25F}
.ribbon{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;white-space:nowrap}

/* ---------- Listas ---------- */
.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.checks li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--text)}
.checks li .lucide{color:var(--brand);width:17px;height:17px;margin-top:2px;stroke-width:2.6}
.checks li.off{color:var(--faint);text-decoration:line-through}
.checks li.off .lucide{color:var(--faint);stroke-width:2}
.checks.round li .lucide{background:var(--brand);color:#fff;border-radius:50%;padding:3px;width:20px;height:20px;margin-top:0}
.checks.tight{gap:7px}
.checks.green li .lucide{color:var(--green)}
.bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.bullets li{position:relative;padding-left:22px}
.bullets li::before{content:"";position:absolute;left:2px;top:.6em;width:8px;height:8px;border-radius:2px;background:var(--brand)}

/* ---------- Avatares, estrelas ---------- */
.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none;background:var(--bg-soft)}
.avatar.sm{width:30px;height:30px}.avatar.lg{width:56px;height:56px}.avatar.xl{width:120px;height:120px}
.avatars{display:flex}
.avatars img{width:30px;height:30px;border-radius:50%;border:2px solid var(--surface);margin-left:-9px;object-fit:cover}
.avatars img:first-child{margin-left:0}
.stars{display:inline-flex;gap:2px;color:var(--brand)}
.stars .lucide{width:15px;height:15px;fill:currentColor;stroke-width:1}
.stars.gold{color:#F59E0B}

/* ---------- Progresso ---------- */
.progress{height:6px;border-radius:99px;background:#ECE7E2;overflow:hidden}
.progress>span{display:block;height:100%;border-radius:inherit;background:var(--brand)}
.progress.thin{height:4px}
.ring{--p:8;--size:132px;width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;flex:none;
  background:radial-gradient(closest-side,var(--surface) 80%,transparent 81% 100%),conic-gradient(var(--brand) calc(var(--p)*1%),#F0EBE6 0)}
.ring b{display:block;font-size:26px;color:var(--ink);font-weight:700;text-align:center;line-height:1}
.ring small{display:block;font-size:12px;color:var(--muted);text-align:center;margin-top:4px}
.stat-list{display:flex;flex-direction:column;gap:16px}
.stat-list .it{display:flex;gap:12px;align-items:flex-start}
.stat-list .it .lucide{color:var(--brand);width:22px;height:22px;margin-top:2px}
.stat-list b{display:block;color:var(--ink);font-size:16px;line-height:1.2}
.stat-list small{color:var(--muted);font-size:12.5px}

/* ---------- Faixa de confiança ---------- */
.trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}
.trust>div{display:flex;gap:14px;align-items:center;padding:16px 22px;position:relative}
.trust>div+div::before{content:"";position:absolute;left:0;top:18px;bottom:18px;border-left:1px solid var(--line-2)}
.trust .lucide{color:var(--brand);width:26px;height:26px;stroke-width:1.7}
.trust b{display:block;color:var(--ink);font-weight:600;font-size:14.5px}
.trust small{display:block;color:var(--muted);font-size:12.5px;line-height:1.35}
.trust.plain{background:transparent;border:0}
.trust.g5{grid-template-columns:repeat(5,minmax(0,1fr))}

.feat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.feat-row>div{padding:4px 22px;display:flex;flex-direction:column;gap:6px;position:relative}
.feat-row>div+div::before{content:"";position:absolute;left:0;top:6px;bottom:6px;border-left:1px solid var(--line-2)}
.feat-row .lucide{color:var(--brand);width:30px;height:30px;stroke-width:1.6;margin-bottom:6px}
.feat-row b{color:var(--ink);font-weight:600}
.feat-row small{color:var(--muted);font-size:13px;line-height:1.4}

/* ---------- Mídia escura / heros ---------- */
.dark-card{position:relative;overflow:hidden;border-radius:var(--r-lg);background:var(--dark);color:#E8EAF0;isolation:isolate}
.dark-card .bgimg{position:absolute;inset:0;z-index:-2;background-size:auto 100%;background-repeat:no-repeat;background-position:right center;background-color:#120E0B}
.dark-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--dark) 0%,rgba(13,20,36,.92) 38%,rgba(13,20,36,.25) 75%,rgba(13,20,36,.05) 100%)}
.dark-card h1,.dark-card h2,.dark-card h3{color:#fff}
.dark-card .muted{color:#B8BECB}
.dark-card .meta{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;color:#D5D9E2}
.dark-card .meta span{display:inline-flex;align-items:center;gap:8px}
.signature{font-family:"Caveat","Segoe Script","Brush Script MT",cursive;font-size:30px;color:#fff;line-height:1}
.signature-wrap{text-align:right}
.signature-wrap small{display:block;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:#C9CED8;margin-top:4px;font-weight:600}
.trailer-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:10px;background:rgba(13,20,36,.55);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:12px;line-height:1.2}
.trailer-pill .pb{width:28px;height:28px;border-radius:50%;background:#fff;color:var(--dark);display:grid;place-items:center}
.trailer-pill .pb .lucide{fill:currentColor;width:12px;height:12px}
.play-btn{width:74px;height:74px;border-radius:50%;border:2px solid rgba(255,255,255,.9);display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.25);backdrop-filter:blur(2px);transition:transform .2s}
.play-btn:hover{transform:scale(1.06)}
.play-btn .lucide{width:30px;height:30px;fill:currentColor;margin-left:4px}
.play-btn.sm{width:44px;height:44px}
.play-btn.sm .lucide{width:18px;height:18px;margin-left:2px}
.play-btn.solid{background:#fff;color:var(--dark);border:0}

.thumb{position:relative;overflow:hidden;border-radius:10px;background:var(--dark);aspect-ratio:16/9}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb .play-btn{position:absolute;inset:0;margin:auto}
.thumb .chip{position:absolute;right:10px;bottom:10px;background:rgba(13,20,36,.8);color:#fff;font-size:11.5px;font-weight:600;padding:4px 9px;border-radius:7px;border:1px solid rgba(255,255,255,.25)}
.thumb .chip-l{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:7px;color:#fff;font-size:12px;font-weight:500}
.thumb .chip-l .lucide{width:20px;height:20px;background:#fff;color:var(--dark);border-radius:50%;padding:4px;fill:currentColor}
.cover{width:64px;height:64px;border-radius:8px;object-fit:cover;flex:none}
.cover-dd{background:#120D0A url(img/cover-dd.jpg) center/cover;color:transparent;user-select:none;font-family:var(--f-display);display:grid;place-items:center;text-align:center;line-height:1.05;font-size:14px;border-radius:8px;flex:none}

/* ---------- Cards de curso ---------- */
.course-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sh-sm);transition:box-shadow .2s,transform .2s}
.course-card:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.course-card .img{aspect-ratio:2.75/1;background:var(--dark);overflow:hidden;position:relative}
.course-card .img.tall{aspect-ratio:2.05/1}
.course-card .img img{width:100%;height:100%;object-fit:cover}
.course-card .body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.course-card h3{font-size:15px;font-weight:600;letter-spacing:-.01em}
.course-card h3.serif{font-family:var(--f-display);font-size:20px;font-weight:600}
.course-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.45}
.course-card .meta{display:flex;gap:6px 14px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted);margin-top:auto;padding-top:8px}
.course-card .meta span{display:inline-flex;align-items:center;gap:5px}
.course-card .meta .lucide{color:var(--brand);width:14px;height:14px}
.course-card .meta .rate{margin-left:auto;color:var(--ink);font-weight:600}
.course-card .meta .rate .lucide{fill:var(--brand)}
.course-card .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}

/* ---------- Abas ---------- */
.tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{display:inline-flex;align-items:center;gap:9px;padding:12px 2px;font-size:14px;font-weight:500;color:var(--ink);white-space:nowrap;position:relative}
.tab .lucide{width:18px;height:18px;color:var(--muted)}
.tab:hover{color:var(--brand)}
.tab.active{color:var(--brand);font-weight:600}
.tab.active .lucide{color:var(--brand)}
.tab.active::after{content:"";position:absolute;left:-4px;right:-4px;bottom:-1px;height:2.5px;border-radius:3px;background:var(--brand)}
.tabs.pills{border:0;gap:6px}
.tabs.pills .tab{padding:8px 14px;border-radius:9px}
.tabs.pills .tab.active{background:var(--brand-50)}
.tabs.pills .tab.active::after{display:none}
.tab-panel{padding-top:18px}

/* ---------- Formulários ---------- */
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field label,.label{font-size:13.5px;font-weight:500;color:var(--ink)}
.input{height:46px;width:100%;border:1px solid var(--line-2);border-radius:9px;background:var(--surface);padding:0 14px;font-size:14.5px;transition:border-color .15s,box-shadow .15s}
.input::placeholder{color:#A8AEBA}
.input:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-50)}
textarea.input{height:auto;padding:12px 14px;resize:vertical;min-height:96px}
.input-wrap{position:relative}
.input-wrap .input{padding-right:44px}
.input-wrap.lead-ico .input{padding-left:42px;padding-right:14px}
.input-wrap .ico-r,.input-wrap .ico-l{position:absolute;top:50%;transform:translateY(-50%);color:var(--muted);display:flex}
.input-wrap .ico-r{right:12px}.input-wrap .ico-l{left:14px}
.input-wrap:has(.brands) .input{padding-right:176px}
.input-wrap .brands{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;gap:6px}
.hint{font-size:12px;color:var(--muted)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--text);cursor:pointer}
.check input{appearance:none;width:20px;height:20px;border-radius:5px;border:1.5px solid var(--line-2);background:var(--surface);flex:none;display:grid;place-items:center;margin:0;cursor:pointer}
.check input:checked{background:var(--brand);border-color:var(--brand)}
.check input:checked::after{content:"";width:10px;height:6px;border:2.5px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.radio-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid var(--line-2);border-radius:var(--r);cursor:pointer;background:var(--surface)}
.radio-card.on{border-color:var(--brand);background:var(--brand-50)}
.radio-card .dotr{margin-left:auto;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-2);flex:none}
.radio-card.on .dotr{border:6px solid var(--brand)}
.step-n{width:34px;height:34px;border-radius:50%;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-weight:600;font-size:15px;flex:none}
.step-head{display:flex;align-items:flex-start;gap:14px}
.step-head h2{line-height:34px}
.step-head h2{font-family:var(--f-display);font-size:22px;font-weight:600;letter-spacing:-.015em}
.cardbrand{height:22px;padding:0 6px;border-radius:4px;background:#fff;border:1px solid var(--line);font-size:10px;font-weight:800;display:inline-grid;place-items:center;color:#1A1F71;font-style:italic;letter-spacing:-.02em}
.cardbrand.mc{width:34px;padding:0;position:relative;font-size:0}
.cardbrand.mc::before,.cardbrand.mc::after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;top:3px}
.cardbrand.mc::before{left:5px;background:#EB001B}.cardbrand.mc::after{left:13px;background:#F79E1B;mix-blend-mode:multiply}
.cardbrand.amex{background:#1F72CD;color:#fff;font-style:normal;font-size:8px}
.cardbrand.elo{color:#111;font-style:normal;font-size:12px;font-weight:800}

/* ---------- Totais / preços ---------- */
.price{font-size:clamp(30px,3vw,38px);font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1}
.price small{font-size:14px;font-weight:500;color:var(--muted);letter-spacing:0}
.total-box{background:var(--green-50);border-radius:var(--r);padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.total-box .v{font-size:26px;font-weight:700;color:var(--green)}
.sum-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:6px 0}
.note-green{background:var(--green-50);border-radius:var(--r);padding:14px 16px;display:flex;flex-wrap:wrap;gap:12px;font-size:13.5px;color:#245A3A}
.note-green .lucide{color:var(--green);width:20px;height:20px}
.note-brand{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r);padding:14px 16px;display:flex;gap:14px;font-size:13.5px}
.note-brand .lucide{color:var(--brand);width:26px;height:26px;stroke-width:1.7}
.note-brand b{color:var(--brand)}
.note-blue{background:var(--blue-50);border-radius:var(--r);padding:14px 16px;display:flex;gap:12px;font-size:13.5px;color:#28407A}
.note-blue .lucide{color:var(--blue)}

/* ---------- Acordeão / módulos ---------- */
.acc{display:flex;flex-direction:column;gap:10px}
.acc-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.acc-head{display:grid;grid-template-columns:auto minmax(0,1fr) 220px auto;align-items:center;gap:18px;padding:14px 18px;width:100%;text-align:left}
.acc-head .n{width:36px;height:36px;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center;font-weight:600;color:var(--ink)}
.acc-item.current .acc-head .n{background:var(--brand-50);color:var(--brand)}
.acc-head h4{font-size:15px;font-weight:600}
.acc-head p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.acc-head .pr{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}
.acc-head .pr .row-between{flex-wrap:nowrap}
.acc-head .chev{transition:transform .2s;color:var(--ink)}
.acc-item.open .chev{transform:rotate(180deg)}
.acc-body{display:none;padding:0 18px 14px 72px}
.acc-item.open .acc-body{display:block}
.lesson-row{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:14px}
.lesson-row .t{flex:1;min-width:0}
.lesson-row .d{color:var(--faint);font-size:12.5px}
.simple-acc .acc-head{grid-template-columns:auto minmax(0,1fr) auto auto}
.faq .acc-head{grid-template-columns:minmax(0,1fr) auto;padding:13px 16px;font-size:14px;font-weight:500;color:var(--ink)}
.faq .acc-body{padding:0 16px 14px;font-size:13.5px;color:var(--muted)}

/* ---------- App (aluno) ---------- */
.dl-row{display:flex;align-items:center;gap:12px;padding:10px 0}
.dl-row+.dl-row{border-top:1px solid var(--line)}
.dl-row .fi{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex:none}
.dl-row .fi .lucide{width:18px;height:18px}
.dl-row .t{flex:1;min-width:0}
.dl-row .t b{display:block;font-size:13.5px;font-weight:500;color:var(--ink);line-height:1.3}
.dl-row .t small{font-size:12px;color:var(--faint)}
.dl-row .dl{color:var(--brand)}
.mini-lesson{display:flex;gap:12px;align-items:center}
.mini-lesson .thumb{width:62px;flex:none;border-radius:8px}
.mini-lesson .thumb .lucide{position:absolute;inset:0;margin:auto;width:24px;height:24px;color:#fff;background:rgba(0,0,0,.35);border-radius:50%;padding:5px;fill:#fff;border:1.5px solid #fff}
.mini-lesson .t{flex:1;min-width:0;font-size:12.5px;line-height:1.35}
.mini-lesson .t .k{color:var(--brand);font-size:11.5px}
.mini-lesson .t b{display:block;color:var(--ink);font-weight:500}
.mini-lesson .t small{color:var(--muted);display:inline-flex;align-items:center;gap:4px}
.quote-card{min-width:0;background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r-lg);padding:22px 24px}
.quote-card .qm{font-family:var(--f-display);font-size:54px;line-height:.6;color:var(--brand);font-weight:700;display:block;height:24px}
.quote-card blockquote{margin:0;font-family:var(--f-display);font-size:19px;line-height:1.35;color:var(--ink)}

/* ---------- Tela de aula (3 colunas) ---------- */
.lesson-layout{display:grid;grid-template-columns:330px minmax(0,1fr) 340px;align-items:start;min-height:calc(100vh - var(--header-h))}
.lesson-layout.no-right{grid-template-columns:380px minmax(0,1fr)}
.lesson-nav{border-right:1px solid var(--line);background:rgba(255,255,255,.55);padding:18px 18px 120px;position:sticky;top:var(--header-h);height:calc(100vh - var(--header-h));overflow-y:auto}
.back-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--ink);font-weight:500;padding:6px 4px}
.back-link:hover{color:var(--brand)}
.course-mini{display:flex;gap:14px;align-items:center;margin:14px 0 12px}
.course-mini .cover-dd{width:80px;height:76px;font-size:14px}
.course-mini b{display:block;font-size:16px;color:var(--ink);font-weight:600;letter-spacing:-.01em}
.course-mini small{display:block;font-size:13px;color:var(--muted);line-height:1.35}
.how-read{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:10px 12px;font-size:13.5px;color:var(--ink);margin-top:14px;width:100%}
.mod{border-top:1px solid var(--line)}
.mod-h{display:flex;align-items:center;gap:12px;width:100%;padding:16px 4px;font-size:13.5px;color:var(--ink);text-align:left}
.mod-h b{font-weight:700;letter-spacing:.02em;white-space:nowrap;font-size:12.5px}
.mod-h span{flex:1;min-width:0}
.mod-h .lucide{width:16px;height:16px;transition:transform .2s}
.mod.open .mod-h .lucide{transform:rotate(90deg)}
.mod.open .mod-h b{color:var(--brand)}
.mod.open .mod-h span{font-weight:600}
.mod-l{display:none;padding:0 0 12px}
.mod.open .mod-l{display:block}
.les{display:grid;grid-template-columns:22px 30px minmax(0,1fr) auto;gap:6px;align-items:start;padding:9px 8px;border-radius:9px;font-size:13.5px;color:var(--text);line-height:1.35}
.les:hover{background:var(--bg-soft)}
.les .st{width:18px;height:18px;border-radius:50%;border:1.5px solid #C9CDD4;margin-top:1px}
.les .st.done{border:0;background:var(--green);display:grid;place-items:center}
.les .st.done::after{content:"";width:8px;height:4.5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.les .nn{color:var(--muted)}
.les .dur{color:var(--faint);font-size:12px;white-space:nowrap}
.les.cur{background:var(--brand-50);color:var(--ink);font-weight:600}
.les.cur .st{border:2px solid var(--brand)}
.lesson-main{padding:22px 40px 140px;min-width:0}
.lesson-main.focus{max-width:1060px;padding-inline:80px}
.crumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);flex-wrap:wrap}
.crumbs a{display:inline-flex;align-items:center;gap:6px}
.crumbs a:hover{color:var(--brand)}
.crumbs .lucide{width:14px;height:14px}
.crumbs .cur{color:var(--ink);font-weight:500}
.prevnext{display:flex;align-items:center;gap:16px;font-size:13px;font-weight:600;color:var(--ink)}
.prevnext a{display:inline-flex;align-items:center;gap:8px}
.prevnext a:hover{color:var(--brand)}
.prevnext i.sep{width:1px;height:18px;background:var(--line-2)}
.lesson-title{font-family:var(--f-display);font-weight:600;font-size:clamp(32px,3.3vw,46px);letter-spacing:-.025em;line-height:1.06;margin-top:10px}
.lesson-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:14px;color:var(--muted)}
.lesson-meta span{display:inline-flex;align-items:center;gap:7px}
.lesson-meta .badge{height:26px}
.prose{color:var(--text);font-size:15.5px;line-height:1.65}
.prose p{margin:0 0 14px}
.prose h2{font-family:var(--f-display);font-weight:600;font-size:25px;letter-spacing:-.015em;margin:28px 0 8px}
.prose h3{font-size:17px;margin:20px 0 6px}
.prose strong{color:var(--ink);font-weight:600}
.dropcap{display:flow-root}
.dropcap::first-letter{font-family:var(--f-display);float:left;font-size:78px;line-height:.82;color:var(--brand);font-weight:600;padding:6px 12px 0 0}
.pull{background:var(--brand-50);border-radius:var(--r);padding:20px 22px;display:flex;gap:16px;margin:18px 0}
.pull .qm{font-family:var(--f-display);font-size:56px;line-height:.75;color:var(--brand);font-weight:700}
.pull p{margin:0;font-family:var(--f-display);font-style:italic;font-size:18px;color:var(--ink);line-height:1.4}
.rule-box{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:center;background:var(--brand-50);border-radius:var(--r);padding:18px 22px;margin:14px 0;position:relative;overflow:hidden}
.rule-box .k{display:flex;align-items:center;gap:10px;color:var(--brand);font-weight:700;letter-spacing:.02em}
.rule-box p{margin:0;font-family:var(--f-display);font-style:italic;font-size:17px;color:var(--ink)}
.rule-box::after{content:"”";position:absolute;right:18px;top:-6px;font-family:var(--f-display);font-size:120px;color:var(--brand-100);line-height:1}
.tip{background:#F1F4F9;border-radius:var(--r);padding:16px 18px;display:flex;gap:14px}
.tip .lucide{color:var(--blue);width:22px;height:22px}
.tip b{color:var(--ink);display:block;margin-bottom:2px}
.tip p{margin:0;font-size:13.5px}
.figure{margin:16px 0}
.figure figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.num-h{display:flex;align-items:center;gap:16px;margin:30px 0 8px}
.num-h .step-n{width:42px;height:42px;font-size:20px;font-family:var(--f-display)}
.num-h h2{margin:0}
.side-col{padding:18px 18px 140px;display:flex;flex-direction:column;gap:16px;position:sticky;top:var(--header-h);max-height:calc(100vh - var(--header-h));overflow-y:auto}
.notes-tabs{display:flex;align-items:center;gap:6px}
.notes-tabs button{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:9px;font-size:13.5px;font-weight:500;color:var(--muted)}
.notes-tabs button.on{background:var(--brand-50);color:var(--brand);box-shadow:inset 0 -2px 0 var(--brand)}
.note-editor{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:12px}
.note-editor textarea{width:100%;border:0;resize:none;min-height:70px;font-size:13.5px;outline:0;background:transparent}
.note-editor .bar{display:flex;align-items:center;gap:14px;color:var(--ink)}
.note-editor .bar .btn{margin-left:auto}
.hl-quote{background:#FFF8E6;border-radius:10px;padding:12px 14px 12px 44px;position:relative;font-size:13px;font-style:italic;color:var(--text);line-height:1.45}
.hl-quote::before{content:"“";position:absolute;left:12px;top:4px;font-family:var(--f-display);font-size:40px;color:#F5B83A;font-style:normal;font-weight:700}
.hl-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--faint);margin:6px 2px 0}
.note-item{display:flex;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:13px;background:var(--surface)}
.note-item .fi{width:26px;height:26px;border-radius:7px;background:#FFF1DA;color:#E8930C;display:grid;place-items:center;flex:none}
.note-item small{display:block;color:var(--faint);margin-top:4px}
.empty-notes{text-align:center;padding:30px 10px;color:var(--muted);font-size:13.5px}
.empty-notes h4{font-size:15.5px;margin:12px 0 6px}

/* barra de áudio */
.audio-bar{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);width:min(1040px,calc(100% - 32px));z-index:40;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-lg);display:flex;align-items:center;gap:18px;padding:10px 16px}
.audio-bar .pp{width:48px;height:48px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;flex:none;box-shadow:var(--sh-brand)}
.audio-bar .pp .lucide{width:20px;height:20px;fill:currentColor}
.audio-bar .ti{min-width:0;flex:0 1 220px;font-size:13px;line-height:1.3}
.audio-bar .ti b{display:block;color:var(--ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.audio-bar .ti small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.audio-bar .track{flex:1;min-width:80px;height:4px;background:#ECE7E2;border-radius:4px;position:relative;cursor:pointer}
.audio-bar .track span{position:absolute;left:0;top:0;bottom:0;background:var(--brand);border-radius:4px}
.audio-bar .track i{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:var(--brand);border:2px solid #fff;box-shadow:0 0 0 1px var(--brand);transform:translate(-50%,-50%)}
.audio-bar .time{font-size:12.5px;color:var(--muted);white-space:nowrap}
.audio-bar .ctl{display:flex;align-items:center;gap:6px}
.audio-bar .ctl button{height:34px;min-width:34px;padding:0 8px;border-radius:9px;border:1px solid var(--line);font-size:12.5px;font-weight:600;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:4px}
.audio-bar .ctl button.noborder{border:0}
.audio-bar .sep{width:1px;height:26px;background:var(--line)}
.audio-bar .vol{width:70px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--brand) 60%,#ECE7E2 0)}

@media (min-width:1101px){
  .lesson-layout + .audio-bar{width:min(880px,calc(100vw - 720px));left:calc(50% - 5px)}
  .lesson-layout.no-right + .audio-bar{width:min(980px,calc(100vw - 440px));left:calc(50% + 190px)}
}
@media (max-width:1280px) and (min-width:1101px){.lesson-layout + .audio-bar{width:calc(100vw - 640px);left:calc(50% - 5px)}}
@media (max-width:1100px) and (min-width:901px){.lesson-layout + .audio-bar{width:calc(100vw - 320px);left:calc(50% + 140px)}}
/* player de vídeo */
.video{position:relative;border-radius:var(--r-lg);overflow:hidden;background:#000;aspect-ratio:16/7.2}
.video img{width:100%;height:100%;object-fit:cover;object-position:right 30%}
.video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.6))}
.video .play-btn{position:absolute;inset:0;margin:auto;z-index:2}
.video .controls{position:absolute;left:16px;right:16px;bottom:12px;z-index:2;color:#fff}
.video .vt{height:4px;background:rgba(255,255,255,.3);border-radius:4px;position:relative;margin-bottom:12px;cursor:pointer}
.video .vt span{position:absolute;left:0;top:0;bottom:0;background:var(--brand);border-radius:4px}
.video .vt i{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;background:var(--brand);transform:translate(-50%,-50%)}
.video .cbar{display:flex;align-items:center;gap:18px;font-size:13px}
.video .cbar .r{margin-left:auto;display:flex;gap:18px;align-items:center}
.video .cbar .lucide{width:20px;height:20px}
.chapters{display:grid;grid-template-columns:repeat(6,1fr);position:relative;margin:22px 0 6px}
.chapters::before{content:"";position:absolute;left:8%;right:8%;top:8px;height:2px;background:var(--line-2)}
.chapters div{text-align:center;font-size:12px;color:var(--ink);position:relative;line-height:1.35}
.chapters div::before{content:"";display:block;width:14px;height:14px;border-radius:50%;background:#B9BEC7;margin:1px auto 8px;border:3px solid var(--bg)}
.chapters div.on::before{background:var(--surface);border:4px solid var(--brand);width:17px;height:17px;margin-top:0}
.chapters div.on{color:var(--brand)}
.chapters small{display:block;color:var(--muted)}
.chap-list a{display:grid;grid-template-columns:22px 52px 1fr;gap:8px;align-items:center;padding:8px;border-radius:8px;font-size:13px;color:var(--text)}
.chap-list a .lucide{color:var(--faint);width:18px;height:18px}
.chap-list a.on{background:var(--brand-50);color:var(--ink)}
.chap-list a.on .lucide{color:#fff;background:var(--brand);border-radius:50%;padding:3px;fill:#fff}
.chap-list a.on .tm{color:var(--brand)}
.transcript .tr{display:grid;grid-template-columns:26px 56px 1fr;gap:10px;align-items:start;padding:10px 12px;border-radius:10px;font-size:14px;cursor:pointer}
.transcript .tr:hover{background:var(--bg-soft)}
.transcript .tr .lucide{color:var(--faint);width:22px;height:22px;stroke-width:1.5}
.transcript .tr .tm{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px}
.transcript .tr.on{background:var(--brand-50)}
.transcript .tr.on .lucide{color:#fff;background:var(--brand);border-radius:50%;padding:4px;fill:#fff}
.transcript .tr.on .tm{color:var(--brand)}
.ai-box{border:1.5px solid var(--brand-100);background:linear-gradient(180deg,var(--brand-50),var(--surface));border-radius:var(--r-lg);padding:18px}
.ai-ask{display:flex;gap:8px;margin-top:12px}
.ai-ask .input{height:44px;font-size:13.5px}
.ai-ask .btn{width:44px;padding:0;height:44px}

/* ---------- Admin ---------- */
.admin{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}
.admin-side{background:var(--surface);border-right:1px solid var(--line);padding:18px 16px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}
.admin-side .logo{margin:6px 6px 22px}
.admin-side a.nv{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:9px;font-size:14.5px;color:var(--ink)}
.admin-side a.nv .lucide{width:19px;height:19px;color:var(--muted)}
.admin-side a.nv:hover{background:var(--bg-soft)}
.admin-side a.nv.on{background:var(--brand-50);color:var(--brand);font-weight:500}
.admin-side a.nv.on .lucide{color:var(--brand)}
.admin-main{padding:0 28px 40px;min-width:0}
.admin-top{display:flex;align-items:center;gap:16px;height:70px}
.kbd-search{flex:0 1 460px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface);border-radius:10px;height:40px;padding:0 12px;color:var(--muted);font-size:13.5px}
.kbd-search kbd{margin-left:auto;font:600 11px var(--f-body);border:1px solid var(--line);border-radius:5px;padding:2px 6px}
.kpi{display:flex;flex-direction:column;gap:6px;padding:16px}
.kpi .h{display:flex;gap:10px;align-items:flex-start}
.kpi .ico-tile{width:38px;height:38px}
.kpi .f{flex-wrap:wrap}
.kpi .h small{display:block;font-size:12.5px;color:var(--text)}
.kpi .h b{display:block;font-size:20px;white-space:nowrap;color:var(--ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.kpi .f{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted)}
.delta{display:inline-flex;align-items:center;gap:3px;background:var(--green-50);color:var(--green);font-weight:700;font-size:11.5px;padding:2px 7px;border-radius:6px}
.chart-wrap{position:relative;height:200px}
.chart-wrap svg{width:100%;height:100%;overflow:visible}
.act{display:grid;grid-template-columns:30px 34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;font-size:12.5px}
.act+.act{border-top:1px solid var(--line)}
.act b{display:block;color:var(--ink);font-weight:600;font-size:13px}
.act .ic{color:var(--brand)}
.sys{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.sys>div small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sys .s{font-size:12px;color:var(--green);display:inline-flex;align-items:center;gap:6px;background:var(--green-50);padding:2px 8px;border-radius:6px;font-weight:600}
.sys .s::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
.qa{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;text-align:center;border:1px solid var(--line);border-radius:var(--r);font-size:12.5px;color:var(--ink);background:var(--surface)}
.qa .lucide{color:var(--brand);width:22px;height:22px}
.qa small{color:var(--muted);font-size:11.5px}
.qa:hover{border-color:var(--brand)}

/* ---------- Comunidade ---------- */
.post{display:grid;grid-template-columns:auto 130px minmax(0,1fr) auto;gap:14px;padding:16px 18px;align-items:start}
.post+.post{border-top:1px solid var(--line)}
.post h4{font-size:15.5px;font-weight:600}
.post p{margin:4px 0 8px;font-size:13.5px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post .who b{display:block;font-size:13.5px;color:var(--ink);font-weight:500}
.post .who small{color:var(--faint);font-size:12px}
.post .stats{display:flex;gap:18px;align-items:center;font-size:13px;color:var(--muted)}
.post .stats span{display:inline-flex;align-items:center;gap:6px}
.post .stats .heart{color:var(--red)}
.cat-item{display:flex;gap:14px;padding:14px 12px;border-radius:var(--r);border-bottom:1px solid var(--line)}
.cat-item .lucide{color:var(--brand);width:26px;height:26px;stroke-width:1.7}
.cat-item b{display:block;color:var(--ink);font-size:15.5px;font-weight:600}
.cat-item small{color:var(--muted);font-size:13px;line-height:1.4;display:block}
.cat-item .c{margin-left:auto;min-width:24px;height:22px;border-radius:999px;background:var(--bg-soft);font-size:11.5px;display:grid;place-items:center;color:var(--muted);flex:none}
.cat-item.on{background:var(--brand-50);border-left:3px solid var(--brand);border-bottom-color:transparent}
.cat-item.on .c{background:var(--brand-100);color:var(--brand)}
.rank{display:grid;grid-template-columns:26px 40px 1fr auto;gap:12px;align-items:center;padding:7px 0}
.rank .p{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12.5px;font-weight:700;color:var(--muted)}
.rank .p.g{background:#F5B83A;color:#fff}.rank .p.s{background:#B9BEC7;color:#fff}.rank .p.b{background:#F08A3C;color:#fff}

/* ---------- Infográficos ---------- */
.ig{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(22px,3.5vw,40px)}
.ig-title{font-family:var(--f-display);font-weight:700;letter-spacing:-.035em;line-height:1;text-align:center;font-size:clamp(32px,4.2vw,56px)}
.ig-title em{font-style:normal;color:var(--brand)}
.ig-kicker{display:flex;align-items:center;justify-content:center;gap:14px;font-size:12px;letter-spacing:.3em;font-weight:700;color:var(--brand);text-transform:uppercase}
.ig-kicker::before,.ig-kicker::after{content:"";width:56px;height:1.5px;background:var(--brand)}
.ig-sub{text-align:center;color:var(--muted);max-width:64ch;margin:12px auto 0;font-size:15.5px}
.burst{position:relative;display:inline-block}
.burst::before,.burst::after{content:"";position:absolute;top:50%;width:34px;height:26px;transform:translateY(-50%);background:
  linear-gradient(var(--brand),var(--brand)) 0 0/100% 3px no-repeat;opacity:.9}
.ig-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:30px;position:relative}
.ig-step{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}
.ig-step .art{width:100%;aspect-ratio:1.45/1;border-radius:50% 50% 16px 16px/60% 60% 16px 16px;background:radial-gradient(circle at 50% 55%,#F1F3F6 0,#F1F3F6 58%,transparent 59%);display:grid;place-items:center;margin-bottom:-18px}
.ig-step .num{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:700;font-size:17px;position:relative;z-index:2;background:var(--ink);border:3px solid var(--surface)}
.ig-step .num.o{background:var(--brand)}.ig-step .num.t{background:var(--teal)}
.ig-step .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:28px 16px 18px;margin-top:-19px;width:100%;flex:1}
.ig-step h4{font-family:var(--f-display);font-size:22px;letter-spacing:-.02em;margin-bottom:6px}
.ig-step p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}
.ig-step + .ig-step::before{content:"";position:absolute;left:-21px;top:calc(50% + 40px);width:12px;height:12px;border-right:3px solid var(--brand);border-top:3px solid var(--brand);transform:rotate(45deg)}
.ig-cta-pill{display:flex;align-items:center;justify-content:center;gap:18px;margin:28px auto 0;width:max-content;max-width:100%;padding:14px 34px;border-radius:999px;background:var(--brand-50);border:1px solid var(--brand-100)}
.ig-cta-pill .lucide{color:var(--brand);width:30px;height:30px}
.ig-cta-pill span{font-family:var(--f-display);font-weight:700;font-size:clamp(20px,2.4vw,30px);color:var(--ink);letter-spacing:-.02em;border-left:1.5px solid var(--brand-100);padding-left:18px}
.ig-cta-pill em{font-style:normal;color:var(--brand)}
/* mini mocks usados nos infográficos */
.mock-win{width:78%;background:var(--surface);border-radius:10px;box-shadow:var(--sh);border:1px solid var(--line);padding:10px;position:relative}
.mock-win .dots{display:flex;gap:5px;margin-bottom:10px}
.mock-win .dots i{width:7px;height:7px;border-radius:50%;background:#FF5F57}
.mock-win .dots i:nth-child(2){background:#FEBC2E}.mock-win .dots i:nth-child(3){background:#9CA3AF}
.mock-line{height:7px;border-radius:5px;background:#E6E9EE;margin:6px 0}
.mock-line.o{background:var(--brand)}.mock-line.s{width:60%}.mock-line.xs{width:38%}
.mock-card{width:74%;aspect-ratio:1.6/1;border-radius:12px;background:linear-gradient(135deg,#1B2A47,#0F1B33);padding:12px;position:relative;box-shadow:var(--sh)}
.mock-card .chip{width:24px;height:18px;border-radius:4px;background:linear-gradient(135deg,#F7C766,#E2A33C)}
.mock-card .mc{position:absolute;right:14px;bottom:12px;width:34px;height:20px}
.mock-card .mc::before,.mock-card .mc::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;top:0}
.mock-card .mc::before{left:0;background:#EB001B}.mock-card .mc::after{left:13px;background:#F79E1B;opacity:.9}
.shield{position:absolute;width:52px;height:58px;display:grid;place-items:center;color:#fff;background:var(--teal);clip-path:polygon(50% 0,100% 16%,100% 58%,50% 100%,0 58%,0 16%)}
.shield .lucide{width:22px;height:22px}
.lock-tile{position:absolute;width:46px;height:46px;border-radius:12px;background:var(--surface);box-shadow:var(--sh);display:grid;place-items:center;color:var(--teal)}
.okb{position:absolute;width:44px;height:44px;border-radius:50%;background:var(--teal);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(14,140,127,.15)}
.mock-screen{width:80%;aspect-ratio:1.5/1;border-radius:10px;background:var(--dark);border:6px solid #1B2436;border-bottom-width:10px;display:grid;place-items:center;position:relative}
.mock-screen .pb{width:40px;height:40px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--dark)}
.mock-screen .pb .lucide{fill:currentColor;width:16px;height:16px}

/* infográfico: Antes x Hoje */
.ba{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;margin-top:26px}
.ba>div{border-radius:var(--r-lg);padding:22px}
.ba .before{background:#F2F5F9}
.ba .now{background:var(--brand-50)}
.ba .tag{display:block;width:max-content;margin:0 auto 12px;padding:6px 26px;border-radius:999px;font-size:12px;letter-spacing:.3em;font-weight:700}
.ba .before .tag{background:#E3E9F1;color:var(--ink)}
.ba .now .tag{background:var(--brand-100);color:var(--brand)}
.ba h3{font-family:var(--f-display);text-align:center;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em;line-height:1.05}
.ba h3 em{font-style:normal;color:var(--brand)}
.ba p.d{text-align:center;color:var(--muted);font-size:14.5px;margin:10px auto 16px;max-width:42ch}
.serp{background:var(--surface);border-radius:12px;border:1px solid var(--line);box-shadow:var(--sh);padding:16px;transform:rotate(-3deg);margin:10px 8px 22px}
.serp .gl{font-weight:600;font-size:26px;text-align:center;letter-spacing:-.02em;margin:4px 0 10px}
.serp .gl b:nth-child(1),.serp .gl b:nth-child(4){color:#4285F4}.serp .gl b:nth-child(2),.serp .gl b:nth-child(6){color:#EA4335}.serp .gl b:nth-child(3){color:#FBBC05}.serp .gl b:nth-child(5){color:#34A853}
.serp .sb{height:30px;border-radius:999px;border:1px solid var(--line-2);margin-bottom:12px;display:flex;justify-content:flex-end;align-items:center;padding-right:10px}
.channel-web{position:relative;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,auto);gap:10px;align-items:center;justify-items:center;margin:4px 0 16px}
.channel-web .ch{background:var(--surface);border-radius:12px;box-shadow:var(--sh);padding:9px 8px;text-align:center;width:100%;max-width:120px;font-size:11px;color:var(--muted);line-height:1.25}
.channel-web .ch b{display:block;color:var(--ink);font-size:12.5px;margin-top:4px}
.channel-web .ch .lucide{width:24px;height:24px}
.channel-web .center{width:64px;height:64px;border-radius:50%;background:var(--surface);border:2px solid var(--brand-100);display:grid;place-items:center;color:var(--ink);box-shadow:0 0 0 8px rgba(255,79,18,.06)}
.channel-web .center .lucide{width:30px;height:30px;fill:currentColor}
.ba-foot{margin-top:18px;display:flex;align-items:center;gap:20px;background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r-lg);padding:16px 24px}
.ba-foot .lucide{color:var(--brand);width:40px;height:40px;stroke-width:1.6}
.ba-foot p{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(20px,2.3vw,28px);color:var(--ink);letter-spacing:-.02em;line-height:1.15;border-left:1.5px solid var(--brand-100);padding-left:20px}
.ba-foot em{font-style:normal;color:var(--brand)}

/* infográfico: linha do tempo / processo */
.flow6{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:28px}
.flow6 .c{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}
.flow6 .top{width:100%;height:96px;display:grid;place-items:center;background:radial-gradient(circle at 50% 60%,#F1F3F6 0 44px,transparent 45px)}
.flow6 .top .lucide{width:40px;height:40px;color:var(--ink)}
.flow6 .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:700;margin:-4px 0 0 16px;background:var(--ink)}
.flow6 .n.o{background:var(--brand)}.flow6 .n.t{background:var(--teal)}
.flow6 h4{font-family:var(--f-display);font-size:19px;overflow-wrap:anywhere;margin:10px 16px 6px;letter-spacing:-.02em;line-height:1.1}
.flow6 p{margin:0 16px 12px;font-size:13px;color:var(--muted);line-height:1.45;flex:1}
.flow6 .res{margin:0 10px 10px;align-self:stretch;border-radius:12px;padding:12px;font-size:12.5px;line-height:1.35;color:var(--ink)}
.flow6 .res .lucide{display:block;width:24px;height:24px;margin-bottom:8px}
.flow6 .res.o{background:var(--brand-50)}.flow6 .res.o .lucide{color:var(--brand)}
.flow6 .res.t{background:var(--teal-50)}.flow6 .res.t .lucide{color:var(--teal)}
.timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:40px}
.timeline::before{content:"";position:absolute;left:-10px;right:-10px;top:17px;height:3px;border-radius:3px;background:linear-gradient(90deg,#FFB089,var(--brand))}
.timeline .c{position:relative;padding-top:52px;display:flex;flex-direction:column}
.timeline .dot{position:absolute;top:0;left:20px;width:36px;height:36px;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:700;border:3px solid var(--surface);background:var(--ink)}
.timeline .dot.o{background:var(--brand)}.timeline .dot.t{background:var(--teal)}
.timeline .card{padding:20px;flex:1;display:flex;flex-direction:column;gap:8px}
.timeline .yr{font-family:var(--f-display);font-weight:700;font-style:italic;color:var(--brand);font-size:36px;line-height:1;letter-spacing:-.03em}
.timeline h4{font-family:var(--f-display);font-size:19px;line-height:1.12;letter-spacing:-.015em}
.timeline p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.5;flex:1}
.timeline .res{display:flex;gap:12px;align-items:center;border-radius:12px;padding:12px;font-size:12.5px;color:var(--ink);margin-top:6px}
.timeline .res .lucide{width:28px;height:28px;flex:none}
.timeline .res.o{background:var(--brand-50)}.timeline .res.o .lucide{color:var(--brand)}
.timeline .res.t{background:var(--teal-50)}.timeline .res.t .lucide{color:var(--teal)}

/* infográfico: funil multicanal */
.channels8{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-top:26px}
.channels8 .c{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 6px;text-align:center;font-size:11.5px;color:var(--muted);line-height:1.3;box-shadow:var(--sh-sm)}
.channels8 .c b{display:block;font-family:var(--f-display);color:var(--ink);font-size:15px;margin:8px 0 4px;line-height:1.05}
.channels8 .c .lucide{width:30px;height:30px}
.converge{height:70px;position:relative}
.converge svg{width:100%;height:100%}
.hub{display:flex;gap:20px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:22px 26px;max-width:720px;margin:0 auto}
.hub .ill{width:110px;flex:none;display:grid;place-items:center}
.hub h4{font-family:var(--f-display);font-size:28px;letter-spacing:-.025em}
.hub p{margin:6px 0 0;font-size:14px;color:var(--muted)}
.hub .bars{margin-left:auto;display:flex;align-items:flex-end;gap:5px;height:56px;flex:none}
.hub .bars i{width:10px;border-radius:3px;background:var(--teal)}
.down{display:grid;place-items:center;color:var(--brand);height:42px}
.down .lucide{width:26px;height:26px}
.outs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.outs>div{display:flex;gap:14px;align-items:center;border-radius:var(--r-lg);padding:18px}
.outs h5{font-family:var(--f-display);font-size:20px;color:var(--ink);margin:0;letter-spacing:-.02em}
.outs p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.outs .ico-tile{width:62px;height:62px;border-radius:50%}
.outs .ico-tile .lucide{width:28px;height:28px}

/* infográfico: hub da academia */
.acad-hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.5fr) repeat(2,minmax(0,1fr));gap:14px;align-items:center;margin-top:28px}
.acad-hub .tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:18px;min-height:190px;display:flex;flex-direction:column;gap:6px}
.acad-hub .tile .lucide{width:40px;height:40px;stroke-width:1.6;margin-bottom:6px}
.acad-hub .tile h5{font-family:var(--f-display);font-size:19px;color:var(--ink);margin:0;line-height:1.1;letter-spacing:-.015em}
.acad-hub .tile p{margin:0;font-size:12.5px;color:var(--muted)}
.acad-hub .tile .bar{margin-top:auto;height:6px;width:60%;border-radius:4px;background:linear-gradient(90deg,var(--brand) 55%,#ECE7E2 0)}
.acad-hub .center{border-radius:var(--r-lg);background:var(--dark) linear-gradient(120deg,#0D1424,#2a1a12);position:relative;overflow:hidden;min-height:230px;padding:22px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 0 0 4px rgba(255,79,18,.25),var(--sh-lg)}
.acad-hub .center::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,20,36,.96) 35%,rgba(13,20,36,.35))}
.acad-hub .center>*{position:relative}
.acad-hub .center h4{font-family:var(--f-display);color:#fff;font-size:30px;line-height:1;letter-spacing:-.02em}
.acad-hub .center h4 em{font-style:normal;color:var(--brand)}
.acad-hub .center p{color:#C7CCD6;font-size:13px;margin:8px 0 0;max-width:24ch}
.sub-pill{display:flex;align-items:center;gap:16px;max-width:560px;margin:-12px auto 0;position:relative;z-index:2;background:var(--surface);border:1.5px solid var(--brand-100);border-radius:var(--r-lg);padding:14px 18px;box-shadow:0 14px 34px -16px rgba(255,79,18,.5)}
.sub-pill .ico-tile{background:var(--brand);color:#fff;width:54px;height:54px}
.sub-pill b{font-family:var(--f-display);font-size:26px;color:var(--ink);letter-spacing:-.02em;display:block;line-height:1}
.sub-pill small{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.sub-pill .inf{margin-left:auto;width:44px;height:44px;border-radius:50%;background:var(--brand-50);color:var(--brand);display:grid;place-items:center}
.formats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:22px;text-align:center}
.formats .ico-tile{margin:0 auto 10px;width:56px;height:56px;border-radius:14px;background:var(--surface);box-shadow:var(--sh);border:1px solid var(--line)}
.formats .ico-tile .lucide{width:26px;height:26px}
.formats b{display:block;color:var(--ink);font-size:15px;line-height:1.2}
.formats small{color:var(--muted);font-size:13px}

/* infográfico: upgrade */
.upg{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:18px;align-items:center;margin-top:26px}
.upg .col{display:flex;flex-direction:column;gap:16px}
.upg .f{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:18px;display:flex;gap:14px;align-items:flex-start}
.upg .f h5{font-family:var(--f-display);font-size:19px;color:var(--ink);margin:0 0 4px;line-height:1.1}
.upg .f p{margin:0;font-size:13px;color:var(--muted)}
.upg .core{position:relative;background:linear-gradient(160deg,#1A2440,#0D1424);border-radius:22px;padding:42px 26px 30px;text-align:center;box-shadow:0 0 0 1px #2B3654,0 30px 60px -24px rgba(255,79,18,.6),inset 0 -6px 0 rgba(255,79,18,.6)}
.upg .core .crown{position:absolute;top:-30px;left:50%;transform:translateX(-50%);width:62px;height:62px;color:#F7B42C}
.upg .core .crown .lucide{width:62px;height:62px;fill:#F7B42C;stroke:#E39410}
.upg .core h4{font-family:var(--f-display);color:#fff;font-size:clamp(30px,3vw,40px);line-height:1;letter-spacing:-.02em}
.upg .core h4 em{font-style:normal;color:var(--brand);display:block}
.upg .core p{color:#E1E5EE;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;line-height:1.8;margin:16px 0 20px}

/* infográfico: MCP por curso */
.mcp3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.mcp3 .c{border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;display:flex;flex-direction:column;gap:12px;background:var(--surface)}
.mcp3 h4{font-family:var(--f-display);font-size:30px;text-align:center;letter-spacing:-.02em}
.mcp3 .c>p{margin:0;text-align:center;font-size:13.5px;color:var(--muted)}
.mcp3 .tok{border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}
.mcp3 .tok .h{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink)}
.mcp3 .tok .h .lucide{width:32px;height:32px}
.mcp3 .tok .h b{font-family:var(--f-display);font-size:20px;display:block;line-height:1}
.mcp3 code{display:flex;align-items:center;gap:8px;background:#F3F5F8;border-radius:8px;padding:8px 10px;font:500 12.5px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink)}
.mcp3 code button{margin-left:auto;color:var(--ink)}
.rules2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}
.rules2>div{border-radius:var(--r-lg);padding:20px}
.rules2 h4{font-family:var(--f-display);font-size:24px;letter-spacing:-.02em;display:flex;align-items:center;gap:12px}
.rules2 h4 em{font-style:normal;color:var(--brand)}
.rules2 p{font-size:13.5px;color:var(--muted);margin:8px 0 14px}
.dev-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;text-align:center}
.dev{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:12px 8px 8px;font-family:var(--f-display);font-weight:700;color:var(--ink)}
.dev .lucide{color:var(--brand);width:28px;height:28px;display:block;margin:0 auto 4px}
.dev-st{margin-top:8px;font-size:12.5px;border-radius:8px;padding:6px 8px;display:flex;gap:6px;align-items:center;justify-content:center}

/* infográfico: biblioteca */
.lib{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:18px;align-items:start;margin-top:26px}
.lib .p{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:18px}
.lib .ph{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.lib .ph .ico-tile{background:var(--brand);color:#fff;width:46px;height:46px}
.lib .ph b{font-family:var(--f-display);font-size:21px;color:var(--ink);display:block;line-height:1.05}
.lib .ph small{color:var(--muted);font-size:12.5px}
.lib .cr{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px;margin-top:8px}
.lib .cr .th{width:86px;height:50px;border-radius:8px;flex:none;background-size:cover;background-position:center}
.lib .cr .t{flex:1;min-width:0;font-size:13px;color:var(--ink);font-weight:500}
.lib .msg{background:var(--bg-soft);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--ink)}
.lib .mats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.lib .mats div{border:1px solid var(--line);border-radius:10px;padding:10px 8px;font-size:12px;color:var(--ink);line-height:1.25}
.lib .mats .lucide{width:24px;height:24px;display:block;margin-bottom:8px}

/* inativo */
.inactive-ill{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:24px}
.inactive-ill .mcpn{width:96px;height:96px;border-radius:20px;background:var(--surface);box-shadow:var(--sh);display:grid;place-items:center;position:relative;font-weight:700;color:var(--ink);font-size:13px;text-align:center}
.inactive-ill .mcpn .lucide{width:36px;height:36px;color:var(--teal);display:block;margin:0 auto}
.inactive-ill .mcpn .pz{position:absolute;right:-10px;bottom:16px;width:30px;height:30px;border-radius:50%;background:#7C8597;color:#fff;display:grid;place-items:center;border:3px solid var(--surface)}
.inactive-ill .mcpn .pz .lucide{width:14px;height:14px;color:#fff;fill:#fff}

/* ---------- Footer ---------- */
.site-footer{border-top:1px solid var(--line);margin-top:20px;padding-block:22px}
.site-footer .inner{display:flex;align-items:center;gap:24px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.site-footer nav{display:flex;gap:18px;flex-wrap:wrap}
.site-footer .soc{margin-left:auto;display:flex;gap:12px;color:var(--ink)}

/* utilidades */
.mt-0{margin-top:0}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}
.mb-0{margin-bottom:0}.ml-auto{margin-left:auto}
.center{text-align:center}
.relative{position:relative}
.hide{display:none}
.toast{position:fixed;left:50%;bottom:110px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;font-size:13.5px;opacity:0;transition:.25s;z-index:100;pointer-events:none}
.toast.show{opacity:1;transform:translateX(-50%)}

@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ---------- Responsivo ---------- */
@media (max-width:900px){.hide-m{display:none!important}.split[style],.grid[style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}.grid[style*="grid-template-columns"]>*{grid-column:auto!important}}
@media (max-width:560px){.input-wrap:has(.brands) .input{padding-right:92px}.input-wrap .brands .amex,.input-wrap .brands .elo{display:none}.check.wrap-s{flex-wrap:wrap}.hide-s{display:none!important}.hdr-cta{display:none!important}}
@media (max-width:1280px){
  .lesson-layout{grid-template-columns:290px minmax(0,1fr) 300px}
  .lesson-main{padding-inline:28px}
}
@media (max-width:1100px){
  .main-nav{margin-left:16px;gap:20px}
  .lesson-layout{grid-template-columns:280px minmax(0,1fr)}
  .lesson-layout .side-col{grid-column:2;position:static;max-height:none;padding:0 28px 140px}
  .g5,.g6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .with-aside{grid-template-columns:minmax(0,1fr)}
  .flow6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .channels8{grid-template-columns:repeat(4,minmax(0,1fr))}
  .acad-hub{grid-template-columns:repeat(2,minmax(0,1fr))}
  .acad-hub .center{grid-column:1/-1;order:-1}
  .admin{grid-template-columns:76px minmax(0,1fr)}
  .admin-side .lbl,.admin-side .plan-box,.admin-side .logo-img{display:none}
  .admin-side .logo-mark-img{display:block}
}
@media (max-width:900px){
  :root{--gutter:16px}
  .main-nav{display:none}
  .burger{display:inline-grid}
  .hdr-actions .hide-m{display:none}
  .split{grid-template-columns:minmax(0,1fr);gap:24px}
  .g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust,.trust.g5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust>div:nth-child(3)::before{display:none}
  .feat-row{grid-template-columns:minmax(0,1fr);gap:14px}
  .feat-row>div::before{display:none}
  .feat-row>div{padding:0}
  .lesson-layout,.lesson-layout.no-right{grid-template-columns:minmax(0,1fr)}
  .lesson-nav{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}
  .lesson-nav .mods{display:none}
  .lesson-nav.open .mods{display:block}
  .lesson-nav .toggle-mods{display:flex!important}
  .lesson-layout .side-col{grid-column:auto;padding:0 16px 140px}
  .lesson-main,.lesson-main.focus{padding:18px 16px 40px}
  .acc-head{grid-template-columns:auto minmax(0,1fr) auto}
  .acc-head .pr{grid-column:2;grid-row:2}
  .acc-body{padding-left:18px}
  .ig-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ig-step:nth-child(3)::before{display:none}
  .ba{grid-template-columns:minmax(0,1fr)}
  .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline::before{display:none}
  .upg{grid-template-columns:minmax(0,1fr)}
  .upg .core{order:-1;margin-top:30px}
  .mcp3,.rules2,.lib,.outs{grid-template-columns:minmax(0,1fr)}
  .post{grid-template-columns:auto minmax(0,1fr)}
  .post .who{grid-column:2}
  .post .body{grid-column:1/-1}
  .post .more{display:none}
  .audio-bar{gap:10px}
  .audio-bar .ti,.audio-bar .vol,.audio-bar .hide-m{display:none}
  .chapters{grid-template-columns:repeat(3,1fr);row-gap:14px}
  .chapters::before{display:none}
  .admin{grid-template-columns:minmax(0,1fr)}
  .admin-side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;padding:10px}
  .admin-side .logo{display:none}
  .admin-main{padding:0 16px 30px}
  .formats{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}
  .dark-card::before{background:linear-gradient(180deg,rgba(13,20,36,.55) 0%,rgba(13,20,36,.95) 55%)}
}
@media (max-width:560px){
  .g2,.g3,.g4,.g5,.g6{grid-template-columns:minmax(0,1fr)}
  .g2.keep,.g3.keep{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust,.trust.g5{grid-template-columns:minmax(0,1fr)}
  .trust>div::before{display:none}
  .ig-steps,.timeline,.flow6{grid-template-columns:minmax(0,1fr)}
  .ig-step::before{display:none}
  .channels8{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub{flex-direction:column;text-align:center}
  .hub .bars{margin:0}
  .acad-hub{grid-template-columns:minmax(0,1fr)}
  .formats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .logo-img{height:28px}
  .user-chip .nm{display:none}
  .prevnext{display:none}
  .course-card .actions{grid-template-columns:1fr}
  .ig-cta-pill{padding:12px 18px;gap:12px}
  .dev-flow{grid-template-columns:minmax(0,1fr)}
  .dev-flow>.arrow{transform:rotate(90deg)}
  .ba-foot{flex-direction:column;text-align:center}
  .ba-foot p{border:0;padding:0}
  .channel-web{grid-template-columns:repeat(2,1fr)}
  .channel-web .center{grid-column:1/-1;grid-row:1}
  .lib .mats{grid-template-columns:repeat(2,1fr)}
  .rule-box{grid-template-columns:minmax(0,1fr)}
  .inactive-ill{grid-template-columns:minmax(0,1fr)}
  .audio-bar .ctl .hide-s{display:none}
  .acc-head{gap:12px;padding:12px}
}

/* ---------- Ponte com as telas antigas (demolicao.css) ---------- */
:root{
  --navy:var(--ink); --orange:var(--brand); --orange-hover:var(--brand-600); --peach:var(--brand-50);
  --white:var(--surface); --cream:var(--bg-soft); --serif:var(--f-display);
}
body{font-family:var(--f-body)}
body>main{flex:1}
.pular{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:6px}
.pular:focus{left:12px}
.user-chip .ini{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);font-weight:700;font-size:13px}
.menu-pop form{margin:0}
.menu-pop button{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;font-size:14px;color:var(--ink);width:100%;text-align:left}
.menu-pop button:hover{background:var(--brand-50);color:var(--brand)}
.site-footer .legal{flex-basis:100%;font-size:12px;color:var(--faint)}

/* ===== Peças do sistema (capas, ofertas, área do aluno) ===== */
.capa-curso{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:18px 20px;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,rgba(255,79,18,.55) 0%,rgba(255,79,18,0) 55%),linear-gradient(135deg,#1A2338 0%,var(--dark) 70%)}
.capa-curso small{font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#F6C25F}
.capa-curso b{font-family:var(--f-display);font-size:24px;font-weight:600;line-height:1.1;letter-spacing:-.01em}
.capa-mini{position:relative;display:block;width:108px;height:84px;border-radius:12px;overflow:hidden;flex:none}
.capa-mini img{width:100%;height:100%;object-fit:cover}
.capa-mini .capa-curso{padding:10px}.capa-mini .capa-curso b{font-size:15px}.capa-mini .capa-curso small{display:none}
.oferta-card{display:flex;flex-direction:column;gap:12px}
.oferta-t{font-size:19px;font-weight:600;color:var(--ink);margin:0}
.oferta-card .checks{margin-top:2px}
.ofertas-grade{align-items:stretch}
.destaque-bg,.curso-hero-bg{background-image:radial-gradient(90% 120% at 100% 0%,rgba(255,79,18,.35) 0%,rgba(255,79,18,0) 60%),radial-gradient(60% 80% at 85% 100%,rgba(242,179,61,.16) 0%,rgba(242,179,61,0) 70%)!important;background-size:cover!important}
.destaque-moldura{padding:10px;border-radius:calc(var(--r-lg) + 8px)}
.destaque-card{padding:30px;display:flex;flex-direction:column;gap:14px;min-height:340px}
.destaque-pe{align-items:flex-end;margin-top:auto;flex-wrap:wrap;gap:14px}
.signature-wrap{display:flex;flex-direction:column;align-items:flex-end}
.signature-wrap small{font-size:11px;color:#B8BECB;letter-spacing:.06em}
.dark-card .meta{display:flex;gap:6px 16px;flex-wrap:wrap;font-size:13px;color:#C9CEDA}
.dark-card .meta .lucide{width:16px;height:16px;vertical-align:-3px;color:#F6C25F}
.dark-card .faint{color:#8E95A6}
.faixa-recursos{border-block:1px solid var(--line);background:var(--surface)}
.planos-home{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:28px;align-items:center}
.autor-card{display:flex;gap:24px;align-items:center}
.autor-card .avatar{width:120px;height:120px;border-radius:50%;object-fit:cover;flex:none}
.curso-hero{border-radius:0;padding:48px 0 54px}
.curso-hero::before{background:linear-gradient(90deg,var(--dark) 0%,rgba(13,20,36,.94) 55%,rgba(13,20,36,.7) 100%)}
.curso-hero-lead{color:#E3E6EC;max-width:56ch;font-size:17px;margin:0}
.curso-hero .avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}
.curso-hero .crumbs a{color:#F6C25F}.curso-hero .crumbs .cur{color:#E3E6EC}
.autor-nome{color:#fff;display:block}.autor-papel{color:#B8BECB;font-size:12px}
.corrido p{font-size:16.5px;line-height:1.7;color:var(--text);margin:0 0 14px;max-width:68ch}
.compra-card .oferta-card{box-shadow:none}
.curso-aside{align-self:start}
.stack>.badge,.curso-hero-txt>.badge,.visao-hero>.badge{align-self:flex-start;width:max-content}
.compra-card>.stack{margin-top:22px;gap:26px}
.garantia{flex-wrap:nowrap;align-items:flex-start;gap:14px}
.garantia>.lucide{color:var(--brand);width:30px;height:30px;flex:none;stroke-width:1.7}
.faq-grade{gap:12px;align-items:start}
.planos-topo{align-items:end}
.aviso-faixa{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;border-radius:var(--r);background:#FFF8E6;border:1px solid #F6DFA3;color:#6B4E00;font-size:14px}
.aviso-faixa .lucide{width:20px;height:20px;flex:none}
.aviso-faixa .link{margin-left:auto}
.aviso-faixa.aviso-red{background:#FDEDEC;border-color:#F5C2BE;color:#8A1C14}
.academia-grade{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 340px;gap:18px;align-items:start}
.academia-continuar{padding:26px;min-height:240px;display:flex;flex-direction:column;gap:12px}
.academia-lado{grid-row:span 2;grid-column:3}
.academia-principal{grid-column:1 / span 2}
.claro{color:#fff}.claro-1{color:#E3E6EC}.claro-2{color:#D5D9E2}
.nowrap{flex-wrap:nowrap}.top{align-items:flex-start}.gap20{gap:20px}.gap10{gap:10px}.flex1{flex:1}
.t18{font-size:18px}.t19{font-size:19px}.bloco{display:block}.mb-16{margin-bottom:16px}
.elipse{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eyebrow-sm{font-size:10px;letter-spacing:.16em}
.atalho{padding:12px;align-items:center;gap:12px;color:inherit}
.atalho:hover{border-color:var(--brand-100)}
.atalho-off{opacity:.7}
.mini-lesson{padding:8px 0;border-top:1px solid var(--line)}
.mini-lesson:first-child{border-top:0}
.mini-lesson .t{flex:1;min-width:0;display:flex;flex-direction:column}
.mini-lesson .k{font-size:11px;color:var(--muted)}
.mini-lesson b{font-size:14px;color:var(--ink);font-weight:600}
.mini-lesson small{font-size:12px;color:var(--muted)}
.mini-lesson small .lucide{width:13px;height:13px;vertical-align:-2px}
.visao-grade{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.visao-hero{padding:30px;min-height:280px;display:flex;flex-direction:column;gap:14px}
.visao-hero .fim{align-items:flex-end;flex-wrap:wrap;gap:14px;margin-top:auto}
.lesson-row{color:inherit}
a.lesson-row:hover .t{color:var(--brand)}
.lesson-row.is-current{background:var(--brand-50);margin:0 -12px;padding-inline:12px;border-radius:8px}
.lesson-row .cod{width:30px}
.acc-head .pr{width:150px;font-size:12px;color:var(--muted);flex:none}
.inativo-grade{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start}
.inativo .card-soft{padding:16px;gap:16px}
.conta-topo .crumbs .cur::before{content:"›";margin:0 8px;color:var(--faint)}
@media (max-width:1200px){.academia-grade{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.academia-lado{grid-row:auto;grid-column:1/-1}.academia-principal{grid-column:1/-1}}
@media (max-width:1100px){.visao-grade{grid-template-columns:minmax(0,1fr)}.curso-aside{position:static}}
@media (max-width:1000px){.inativo-grade,.planos-home{grid-template-columns:minmax(0,1fr)}}
@media (max-width:800px){.academia-grade{grid-template-columns:minmax(0,1fr)}.autor-card{flex-direction:column;align-items:flex-start}.acc-head .pr{display:none}.destaque-card,.visao-hero,.academia-continuar{padding:22px}}

/* Checkout (Fase 4) */
.checkout-grade{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start;margin-top:16px}
.checkout-lado{position:sticky;top:88px}
.radio-card:has(input:checked){border-color:var(--brand);background:var(--brand-50)}
.radio-card:has(input:checked) .dotr{border:6px solid var(--brand)}
.radio-card:has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}
.check.bump{padding:14px 16px;align-items:center}
.gap12{gap:12px}.gap16{gap:16px}.right{text-align:right}.d-block{display:block}
.cupom summary{cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:13.5px;list-style:none}
.cupom summary::-webkit-details-marker{display:none}
.cupom summary .lucide{width:15px;height:15px}
.cupom-erro{color:var(--red,#B42318)}.cupom-ok{color:var(--green)}
@media (max-width:1000px){.checkout-grade{grid-template-columns:minmax(0,1fr)}.checkout-lado{position:static}}
.situacao{max-width:720px}
.situacao-topo{flex-wrap:nowrap;align-items:flex-start;gap:18px}
.ico-tile.cheio{background:var(--brand);color:#fff;box-shadow:0 0 0 8px var(--brand-50)}
.passo-link{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}
.passo-link>.lucide{color:var(--faint);width:18px;height:18px}
.passo-link:hover>.lucide{color:var(--brand)}
.situacao .pix-qr{margin:0}

/* IA do curso (MCP) */
.ia-topo{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:center}
.ia-nota{display:flex;gap:14px;align-items:flex-start;padding:20px}
.ia-nota>svg{width:40px;height:40px;flex:none;color:var(--brand)}
.ia-nota-p{padding:18px 20px}
.ia-grade{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start}
.ia-copia{display:flex;gap:10px;align-items:stretch}
.ia-copia code{flex:1;min-width:0;display:flex;align-items:center;font:500 14px ui-monospace,Menlo,Consolas,monospace;overflow-x:auto;white-space:nowrap}
.ia-token-novo{border:2px solid var(--brand)}
.ia-st-green{background:var(--green);color:#fff;box-shadow:0 0 0 6px var(--green-50)}
.ia-st-gray{background:var(--line);color:var(--muted)}
.ia-passo{align-items:flex-start}
.ia-sub{display:block;margin-top:2px}
.ia-hist{padding-top:10px;border-top:1px solid var(--line)}
.ia-consent-lista{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}
.ia-consent-lista li{display:flex;gap:10px;align-items:flex-start}
.ia-consent-lista svg{flex:none;width:20px;height:20px;color:var(--brand);margin-top:2px}
.ia-consent-acoes{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:860px){.ia-topo,.ia-grade{grid-template-columns:1fr}.ia-copia{flex-direction:column}}
