/* Sender25 — estilo das páginas de conteúdo (pilar e guias) */

  html{scroll-behavior:smooth}
  body{margin:0;background:#001E27;color:#EAF3EC;font-family:'Zalando Sans',sans-serif;-webkit-font-smoothing:antialiased}
  *{box-sizing:border-box}
  main a{color:#00EE53;text-decoration:none}
  main a:hover{color:#5BFF93}
  ::selection{background:rgba(0,238,83,.30);color:#EAF3EC}
  .ct-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
  .ct-hero{background:linear-gradient(180deg,#00242F,#001E27);border-bottom:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden}
  .ct-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(900px 460px at 22% 0%,#000,transparent 76%);mask-image:radial-gradient(900px 460px at 22% 0%,#000,transparent 76%)}
  .ct-hero-in{position:relative;padding:64px 24px 54px}
  .ct-eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:#00EE53;border:1px solid rgba(0,238,83,.22);background:rgba(0,238,83,.07);padding:7px 13px;border-radius:999px}
  main h1{font-size:clamp(2rem,4.4vw,3.1rem);line-height:1.06;letter-spacing:-.02em;margin:20px 0 0;font-weight:800;text-wrap:balance;max-width:min(20ch,100%)}
  .ct-lead{font-size:clamp(1rem,1.7vw,1.19rem);line-height:1.68;color:#B7C7BC;margin:20px 0 0;max-width:min(64ch,100%)}
  .ct-lead strong{color:#EAF3EC;font-weight:600}
  .ct-meta{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:#5C7266;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px}
  .ct-body{padding:6px 24px 20px}
  .ct-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start}
  .ct-grid>*{min-width:0}
  main section,main article{min-width:0}
  .ct-toc{position:sticky;top:96px;padding:20px 0 0}
  .ct-toc-t{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#5C7266;margin-bottom:12px}
  .ct-toc a{display:block;color:#9DB0A4;font-size:.9rem;padding:7px 10px;border-left:2px solid rgba(255,255,255,.07);border-radius:0 8px 8px 0;line-height:1.35}
  .ct-toc a:hover{color:#00EE53;border-left-color:#00A332;background:rgba(0,238,83,.05)}
  main section{padding:38px 0;border-top:1px solid rgba(255,255,255,.06)}
  main section:first-of-type{border-top:none}
  main h2{font-size:clamp(1.4rem,2.6vw,1.9rem);font-weight:800;letter-spacing:-.015em;color:#EAF3EC;margin:0 0 16px;scroll-margin-top:96px;text-wrap:balance}
  main h3{font-size:1.08rem;font-weight:700;color:#EAF3EC;margin:26px 0 8px}
  main p{font-size:1rem;line-height:1.72;color:#B7C7BC;margin:0 0 14px;max-width:min(70ch,100%)}
  .ct-answer{background:rgba(0,238,83,.06);border:1px solid rgba(0,238,83,.2);border-left:3px solid #00A332;border-radius:12px;padding:20px 22px;margin:0 0 20px}
  .ct-answer p{margin:0;color:#EAF3EC}
  main ul{margin:0 0 14px;padding-left:20px;max-width:min(70ch,100%)}
  main li{font-size:1rem;line-height:1.7;color:#B7C7BC;margin-bottom:9px}
  main li strong{color:#EAF3EC;font-weight:600}
  .ct-tablewrap{overflow-x:auto;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#002E3B;margin:6px 0 18px}
  main table{width:100%;border-collapse:collapse;min-width:560px;font-size:.94rem}
  main th{text-align:left;padding:14px 18px;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:#5C7266;border-bottom:1px solid rgba(255,255,255,.08);font-weight:600}
  main td{padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.05);color:#B7C7BC;line-height:1.55;vertical-align:top}
  tr:last-child td{border-bottom:none}
  main td:first-child{color:#EAF3EC;font-weight:600}
  .ct-hl{background:rgba(0,238,83,.05)}
  .ct-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:6px 0 8px}
  .ct-card{border:1px solid rgba(255,255,255,.07);border-radius:14px;background:#002E3B;padding:20px}
  .ct-card h3{margin:0 0 6px;font-size:1rem}
  .ct-card p{font-size:.9rem;margin:0;line-height:1.6}
  .ct-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:6px}
  .ct-hub a{display:block;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#002E3B;padding:22px;transition:border-color .16s,transform .16s}
  .ct-hub a:hover{border-color:rgba(0,238,83,.35);transform:translateY(-2px)}
  .ct-hub .t{display:block;color:#EAF3EC;font-weight:700;font-size:1.02rem;margin-bottom:6px}
  .ct-hub .d{display:block;color:#7E958A;font-size:.88rem;line-height:1.55}
  .ct-hub .go{display:inline-block;margin-top:12px;color:#00EE53;font-size:.86rem;font-weight:600}
  .ct-code{position:relative;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#00161D;margin:8px 0 16px;overflow:hidden}
  .ct-code-top{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.07);font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#5C7266}
  .ct-copy{background:transparent;border:1px solid rgba(255,255,255,.14);color:#B7C7BC;border-radius:7px;padding:5px 11px;font-family:'JetBrains Mono',monospace;font-size:11.5px;cursor:pointer;transition:color .15s,border-color .15s}
  .ct-copy:hover{color:#00EE53;border-color:rgba(0,238,83,.4)}
  main pre{margin:0;padding:16px 18px;overflow-x:auto}
  main code{font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.7;color:#B7C7BC;white-space:pre}
  .tok-k{color:#00EE53}.tok-s{color:#9DE8B4}.tok-c{color:#5C7266}
  main details{border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#002E3B;margin-bottom:10px;overflow:hidden}
  main summary{padding:16px 20px;cursor:pointer;color:#EAF3EC;font-weight:600;font-size:1rem;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
  main summary::-webkit-details-marker{display:none}
  main summary::after{content:"+";font-family:'JetBrains Mono',monospace;color:#00EE53;font-size:1.2rem;flex:none}
  main details[open] summary::after{content:"−"}
  main details p{padding:0 20px 18px;margin:0;font-size:.96rem}
  .ct-note{font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.65;color:#5C7266;border-left:2px solid rgba(255,255,255,.1);padding-left:14px;margin:16px 0 0;max-width:min(70ch,100%)}
  .ct-cta{border:1px solid rgba(0,238,83,.22);border-radius:18px;background:linear-gradient(160deg,#013D49,#00262F);padding:34px;margin:34px 0 46px;text-align:center}
  .ct-cta h2{margin:0 0 8px}
  .ct-cta p{margin:0 auto 20px;color:#B7C7BC}
  .ct-btn{display:inline-flex;align-items:center;gap:8px;background:#00A332;color:#002E3B;font-weight:700;font-size:15px;padding:13px 24px;border-radius:10px;box-shadow:0 0 0 1px rgba(0,238,83,.35),0 8px 24px rgba(0,163,50,.28);transition:background-color .18s,transform .18s}
  .ct-btn:hover{background:#00EE53;color:#002E3B;transform:translateY(-2px)}
  .ct-btn2{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);color:#EAF3EC;font-weight:600;font-size:15px;padding:13px 22px;border-radius:10px;margin-left:10px}
  .ct-btn2:hover{border-color:rgba(0,238,83,.4);color:#00EE53}
  .ct-flow{overflow-x:auto;margin:6px 0 10px;-webkit-overflow-scrolling:touch}
  main svg{max-width:100%}
  @media(max-width:980px){.ct-grid{grid-template-columns:minmax(0,1fr);gap:0}.ct-toc{position:static;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:18px;margin-bottom:6px}.ct-toc a{display:inline-block;border-left:none;border:1px solid rgba(255,255,255,.08);border-radius:999px;margin:0 6px 6px 0;padding:6px 12px;font-size:.85rem}}
  @media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* ===== ajustes de celular ===== */
@media(max-width:640px){
  .ct-wrap{padding:0 18px}
  .ct-hero-in{padding:40px 18px 34px}
  main h1{font-size:clamp(1.7rem,7vw,2.1rem);max-width:100%}
  main h2{font-size:clamp(1.25rem,5.4vw,1.5rem)}
  .ct-lead{font-size:1rem;line-height:1.62}
  main p,main li{font-size:.97rem;max-width:100%}
  .ct-lead,main h1,main h2{max-width:100%}
  main section{padding:28px 0}
  .ct-answer{padding:16px}
  .ct-cards,.ct-hub{grid-template-columns:1fr;gap:12px}
  .ct-cta{padding:26px 20px;margin:26px 0 34px}
  .ct-btn,.ct-btn2{display:flex;justify-content:center;width:100%}
  .ct-btn2{margin:10px 0 0}
  .ct-meta{gap:6px 14px;font-size:11px}
  main pre{padding:14px}
  main code{font-size:11.5px}
  .ct-toc a{font-size:.82rem}
}
html,body{max-width:100%;overflow-x:hidden}
main,main *{min-width:0}
.ct-tablewrap,.ct-flow,.ct-code{max-width:100%}

/* legibilidade mobile: nada de texto corrido abaixo de 12px */
@media(max-width:640px){
  main p,main li,main td,main th{font-size:max(1em,12.5px)}
  .ct-meta,.ct-note{font-size:12.5px}
}

/* ============================================
   Mobile: alvo de toque (WCAG 2.5.8 = 24px) e legibilidade (>=12px)
   Alvos gerados por JS têm style inline -> precisa de !important.
   Código monoespaçado (span.tok-*, <pre>) fica de fora de propósito:
   11.5px mono é legível e aumentar quebraria os blocos.
   ============================================ */
@media (max-width: 640px) {
  /* tick do slider de planos (21x24) */
  button[style*="translateX(-50%)"] { padding-left: 7px !important; padding-right: 7px !important; }
  /* link-pílula dentro dos cards da home (146x22) */
  .s25-card a[style*="font-size: 11px"],
  .s25-card a[style*="font-size:11px"] { padding-top: 5px !important; padding-bottom: 5px !important; }
  /* link das páginas "em breve" (334x18) */
  .eb-meanwhile { display: inline-flex !important; min-height: 24px; padding: 4px 0 !important; }

  /* prosa nunca abaixo de 12.5px — só onde o tamanho veio inline */
  p[style*="font-size: 11px"], p[style*="font-size:11px"],
  p[style*="font-size: 11.5px"], p[style*="font-size:11.5px"],
  td[style*="font-size: 11px"], td[style*="font-size:11px"] { font-size: 12.5px !important; }
  .s25j-tocchip { font-size: 12px !important; }
}
