    :root {
      --ink: #183153;
      --accent: #ff6b35;
      --accent-2: #ffd166;
      --accent-3: #4ecdc4;
      --paper: #fffdf7;
      --paper-2: #fff6da;
      --line: #22324d;
      --muted: #55657f;
      --card: #ffffff;
      --shadow: 0 8px 30px rgba(24, 49, 83, .10);
      --shadow-soft: 0 4px 16px rgba(24, 49, 83, .08);
      --radius: 20px;
    }

    * {
      box-sizing: border-box
    }

    html {
      font-size: 14px;
      line-height: 1.58;
      color: var(--ink);
      background: #eae5d7;
      scroll-behavior: smooth;
    }

    @page {
      size: A4 portrait;
      margin: 0
    }

    body {
      margin: 0;
      padding-bottom: calc(22mm + 72px);
      font-family: "Trebuchet MS", "Segoe UI", Arial, sans-serif;
      color: var(--ink);
      overflow-x: hidden;
      background:
        radial-gradient(circle at top left, rgba(255, 209, 102, .28), transparent 28%),
        radial-gradient(circle at top right, rgba(78, 205, 196, .18), transparent 25%),
        #f7f4ea;
    }

    .ebook-shell {
      width: 210mm;
      margin: 0 auto;
      padding: 0 0 12mm;
    }

    .cover-full {
      width: 190mm;
      height: auto;
      aspect-ratio: 210 / 297;
      margin: 0 auto 6mm;
      padding: 0;
      border: none;
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      background: #fff;
      overflow: hidden;
      page-break-after: always;
      break-after: page;
    }

    .cover-full img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    header#title-block-header {
      display: none
    }

    #TOC,
    .chapter-block,
    footer.editor-note {
      width: 190mm;
      margin-left: auto;
      margin-right: auto;
    }

    #TOC {
      background: var(--card);
      border: 2px solid var(--line);
      border-radius: 8mm;
      padding: 7mm 7mm 6mm;
      box-shadow: var(--shadow-soft);
      margin-top: 0;
      margin-bottom: 6mm;
      page-break-after: auto;
    }

    #TOC::before {
      content: "Mapa do livro";
      display: inline-block;
      margin: 0 0 5mm;
      background: var(--accent-3);
      color: var(--line);
      padding: 2mm 4mm;
      border: 1.2px solid var(--line);
      border-radius: 999px;
      font-size: 8.5pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .04em;
    }

    #TOC>ul {
      columns: 1;
      padding-left: 0;
      margin: 0
    }

    #TOC li {
      break-inside: avoid;
      list-style: none;
      margin: 0 0 2.5mm
    }

    #TOC>ul>li {
      background: #fffdf8;
      border: 1.3px solid rgba(24, 49, 83, .14);
      border-radius: 5mm;
      padding: 3.2mm 3.4mm 2.8mm;
      margin-bottom: 3.2mm;
    }

    #TOC a {
      color: var(--ink);
      text-decoration: none;
      font-weight: 800
    }

    #TOC ul ul {
      margin: 2.2mm 0 0;
      padding-left: 4mm
    }

    #TOC ul ul li {
      list-style: disc;
      margin: .7mm 0;
      color: var(--muted);
      font-size: 9pt
    }

    #TOC ul ul a {
      font-weight: 600
    }

    .content {
      background: transparent;
      border-radius: 0;
      padding: 0;
    }

    h1,
    h2,
    h3,
    h4 {
      color: var(--ink);
      line-height: 1.14;
      scroll-margin-top: 18px
    }

    h1 {
      margin: 0 0 4mm;
      font-size: 19pt;
      padding: 4.4mm 4.8mm;
      background: linear-gradient(transparent 58%, rgba(255, 209, 102, .78) 58%), linear-gradient(90deg, rgba(255, 255, 255, .35), rgba(255, 255, 255, 0));
      border-left: 3mm solid var(--accent);
      border-radius: 5mm;
    }

    h2 {
      margin: 6mm 0 2mm;
      font-size: 13.5pt;
      display: inline-block;
      padding: .18em .35em;
      background: linear-gradient(transparent 52%, rgba(255, 209, 102, .65) 52%);
      border-radius: 2mm;
    }

    h3 {
      margin: 4mm 0 1.5mm;
      font-size: 11.3pt;
      padding-left: 3mm;
      border-left: 1.8mm solid var(--accent-3)
    }

    p,
    ul,
    ol,
    blockquote,
    table,
    hr,
    .callout,
    .visual-block,
    .chapter-intro,
    .sticky-grid {
      max-width: 100%
    }

    p {
      margin: 0 0 3mm;
      font-size: 10.4pt
    }

    strong {
      color: #12233e
    }

    ul,
    ol {
      padding-left: 5mm;
      margin: 1.8mm 0 3mm
    }

    li {
      margin: 1mm 0
    }

    blockquote {
      margin: 4mm 0;
      padding: 4mm 4.8mm;
      border-left: 2mm solid var(--accent);
      background: #fffaf0;
      border-radius: 4mm;
      box-shadow: var(--shadow-soft)
    }

    hr {
      border: none;
      height: 0;
      margin: 5mm 0;
      border-top: 1.2px dashed rgba(24, 49, 83, .20)
    }

    table {
      border-collapse: collapse;
      width: 100%;
      background: #fff;
      border-radius: 4mm;
      overflow: hidden;
      box-shadow: var(--shadow-soft)
    }

    th,
    td {
      border: 1px solid rgba(24, 49, 83, .15);
      padding: 2.4mm 2.8mm;
      text-align: left;
      font-size: 9.3pt
    }

    th {
      background: #fdf0b9
    }

    .chapter-block {
      background: rgba(255, 255, 255, .74);
      border: 1.3px solid rgba(24, 49, 83, .10);
      border-radius: 8mm;
      padding: 7mm;
      box-shadow: var(--shadow-soft);
      margin: 0 auto 6mm;
      page-break-before: always;
      break-before: page;
    }

    .chapter-block:first-of-type {
      page-break-before: auto;
      break-before: auto
    }

    .chapter-intro {
      display: grid;
      grid-template-columns: 1.35fr .95fr;
      gap: 4mm;
      align-items: start;
      margin: 0 0 5mm;
    }

    .chapter-intro > blockquote {
      grid-column: 1 / -1;
      margin: 0 0 1mm;
    }

    .chapter-intro > .intro-copy,
    .chapter-intro > .visual-block {
      align-self: start;
    }

    .chapter-intro .intro-copy {
      background: #fffaf0;
      border: 1.3px solid var(--line);
      border-radius: 5mm;
      padding: 3.5mm 4mm;
    }

    .chapter-intro .intro-copy p:last-child {
      margin-bottom: 0
    }

    .chapter-chip {
      display: inline-block;
      margin-bottom: 2.2mm;
      padding: 1.3mm 3mm;
      border-radius: 999px;
      border: 1.2px solid var(--line);
      background: var(--accent-2);
      font-size: 8.4pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .03em;
    }

    .visual-block {
      position: relative;
      background: #fff;
      border: 1.5px solid var(--line);
      border-radius: 6mm;
      padding: 4mm;
      margin: 0 0 4mm;
      box-shadow: var(--shadow-soft);
      overflow: hidden;
    }

    .visual-block img {
      max-width: 100%;
      height: auto;
      display: block;
      margin: 0 auto;
    }

    .visual-block.sketch {
      background: linear-gradient(180deg, #fffef9, #fff7e8)
    }

    .visual-block.chart {
      background: linear-gradient(180deg, #f5fbff, #ffffff)
    }

    .visual-block.board {
      background: linear-gradient(180deg, #f8fff9, #fff)
    }

    .visual-block.compare {
      background: linear-gradient(180deg, #fff8fb, #fff)
    }

    .visual-title {
      font-weight: 900;
      font-size: 10pt;
      text-transform: uppercase;
      letter-spacing: .04em;
      margin: 0 0 2mm
    }

    .visual-subtitle {
      font-size: 8.8pt;
      color: var(--muted);
      margin: 0 0 3mm
    }

    .visual-row {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2.4mm
    }

    .mini-card {
      background: #fffdf8;
      border: 1.1px solid rgba(24, 49, 83, .18);
      border-radius: 4mm;
      padding: 2.6mm
    }

    .mini-card h4 {
      margin: 0 0 1.2mm;
      font-size: 9.4pt
    }

    .mini-card p {
      font-size: 8.6pt;
      margin: 0
    }

    .sticky-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 3mm;
      margin: 0 0 4mm
    }

    .sticky {
      padding: 3mm;
      border: 1.2px solid var(--line);
      border-radius: 4mm;
      font-size: 8.8pt;
      box-shadow: 3px 3px 0 rgba(24, 49, 83, .09)
    }

    .sticky.yellow {
      background: #fff0a8
    }

    .sticky.pink {
      background: #ffd6e2
    }

    .sticky.blue {
      background: #d9f0ff
    }

    .sticky.green {
      background: #d8f6d8
    }

    .callout {
      position: relative;
      background: #fffefa;
      border: 1.5px solid var(--line);
      border-radius: 6mm;
      padding: 5mm 4mm 2mm;
      margin: 4mm 0;
      box-shadow: var(--shadow-soft)
    }

    .callout::before {
      position: absolute;
      top: -3.5mm;
      left: 4mm;
      padding: 1.1mm 2.6mm;
      border: 1.2px solid var(--line);
      border-radius: 999px;
      font-size: 7.8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .04em;
      background: #fff
    }

    .callout.exercise {
      background: #fff7e1
    }

    .callout.exercise::before {
      content: "Exercício";
      background: #ffd166
    }

    .callout.summary {
      background: #eef7ff
    }

    .callout.summary::before {
      content: "Resumo";
      background: #9ad1ff
    }

    .callout.action {
      background: #ecfff9
    }

    .callout.action::before {
      content: "Ação imediata";
      background: #8de2d2
    }

    .callout.mission {
      background: #fff0f3
    }

    .callout.mission::before {
      content: "Missão";
      background: #ffb6c1
    }

    .callout.reading {
      background: #f4f1ff
    }

    .callout.reading::before {
      content: "Leituras";
      background: #cab8ff
    }

    .note-strip {
      display: block;
      width: 190mm;
      max-width: 100%;
      box-sizing: border-box;
      margin: 1mm auto 4mm;
      padding: 2mm 3mm;
      background: var(--accent-2);
      border: 1.2px solid var(--line);
      border-radius: 4mm;
      box-shadow: 3px 3px 0 rgba(24, 49, 83, .15);
      font-weight: 800;
      text-align: center;
    }

    footer.editor-note {
      margin-top: 6mm;
      padding: 5mm;
      border: 1.5px dashed rgba(24, 49, 83, .3);
      border-radius: 6mm;
      background: rgba(255, 255, 255, .7);
      color: var(--muted)
    }

    svg.diagram {
      width: 100%;
      height: auto;
      display: block
    }

    .doodle-caption {
      margin-top: 2mm;
      font-size: 8.7pt;
      color: var(--muted);
      text-align: center
    }

    .visual-split {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 3mm;
      align-items: center
    }

    .compact-list {
      margin: 0;
      padding-left: 4.4mm;
      font-size: 8.8pt
    }

    .compact-list li {
      margin: .6mm 0
    }

    @media (max-width: 820px) {
      #palavra-do-autor > div:first-child,
      #palavra-do-autor div[style*="grid-template-columns:.9fr 1.35fr"] {
        display: block !important;
      }
      #palavra-do-autor figure {
        max-width: 34mm !important;
        margin: 0 auto 4mm !important;
      }
    }

    @media (max-width: 820px) {
      html {
        font-size: 15px
      }

      .ebook-shell {
        width: min(100%, 210mm)
      }

      #TOC,
      .chapter-block,
      footer.editor-note {
        width: auto;
        margin-left: 10px;
        margin-right: 10px
      }

      .cover-full {
        width: 100%;
        height: auto;
        aspect-ratio: 210/297
      }

      .chapter-intro,
      .visual-split,
      .sticky-grid,
      .visual-row {
        grid-template-columns: 1fr
      }
    }

    @media print {

      html,
      body {
        background: #fff
      }

      .ebook-shell {
        width: 210mm;
        padding: 0
      }

      .cover-full {
        width: 210mm;
        height: 297mm;
        aspect-ratio: unset;
        margin: 0;
        border-radius: 0;
        box-shadow: none;
      }

      .visual-block,
      .callout,
      #TOC,
      .chapter-block {
        box-shadow: none
      }

      a {
        color: inherit;
        text-decoration: none
      }
    }

    .phase-divider {
      width: 190mm;
      margin: 0 auto 6mm;
      padding: 5mm 6mm;
      border: 1.5px solid var(--line);
      border-radius: 8mm;
      background: linear-gradient(135deg, #fffaf0, #eef6ff);
      box-shadow: var(--shadow-soft);
      page-break-before: always;
      break-before: page;
    }

    .phase-kicker {
      display: inline-block;
      margin-bottom: 2mm;
      padding: 1.2mm 2.8mm;
      border-radius: 999px;
      border: 1.2px solid var(--line);
      background: #ffd166;
      font-size: 7.8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
    }

    .phase-divider h2 {
      display: block;
      margin: 0 0 1.5mm;
      padding: 0;
      background: none;
      font-size: 17pt;
    }

    .phase-divider p {
      margin: 0;
      font-size: 9.5pt;
      color: var(--muted);
    }

    .promise-box {
      margin: 0 0 5mm;
      padding: 4mm 4.5mm;
      border: 1.4px solid var(--line);
      border-radius: 6mm;
      background: linear-gradient(180deg, #fffef9, #f7fbff);
      box-shadow: var(--shadow-soft);
    }

    .promise-kicker {
      display: inline-block;
      margin-bottom: 2mm;
      padding: 1mm 2.4mm;
      border-radius: 999px;
      border: 1.1px solid var(--line);
      background: #4ecdc4;
      font-size: 7.6pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
    }

    .promise-box p {
      margin: 0 0 2mm;
    }

    .promise-box p:last-child {
      margin-bottom: 0;
    }

    .cta-block {
      margin: 6mm 0 0;
      padding: 5mm;
      border: 1.5px solid var(--line);
      border-radius: 7mm;
      background: linear-gradient(135deg, #fff8e6, #eef7ff);
      box-shadow: var(--shadow-soft);
    }

    .cta-block h2 {
      display: block;
      margin: 0 0 2mm;
      padding: 0;
      background: none;
    }

    .cta-block .cta-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 3mm;
      margin-top: 3mm;
    }

    .cta-card {
      border: 1.1px solid rgba(24, 49, 83, .16);
      border-radius: 4mm;
      background: #fff;
      padding: 3mm;
    }

    .progress-line {
      display: flex;
      gap: 2mm;
      flex-wrap: wrap;
      margin: 0 0 3mm;
    }

    .progress-chip {
      padding: 1mm 2.4mm;
      border-radius: 999px;
      border: 1.1px solid var(--line);
      background: #fff;
      font-size: 7.5pt;
      font-weight: 800;
    }

    @media (max-width:820px) {

      .phase-divider,
      .cta-block,
      .promise-box {
        width: auto
      }

      .cta-block .cta-row {
        grid-template-columns: 1fr
      }
    }

    .cover-full {
      background: #fff;
      overflow: hidden
    }

    .cover-full img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block
    }

    .mission-card {
      background: #fff;
      border: 1.5px solid #b95367;
      border-radius: 6mm;
      padding: 4.2mm;
      margin: 3mm 0;
    }

    .mission-title {
      font-size: 12.2pt;
      font-weight: 900;
      color: #183153;
      margin: 0 0 2.5mm 0;
    }

    .mission-intro {
      margin: 0 0 2.5mm 0;
      font-size: 9.5pt;
    }

    .mission-items {
      display: grid;
      gap: 2mm;
    }

    .mission-item {
      display: grid;
      grid-template-columns: 7mm 1fr;
      gap: 2.2mm;
      align-items: start;
      background: #fffaf7;
      border: 1px solid rgba(24, 49, 83, .18);
      border-radius: 4mm;
      padding: 2.7mm 3mm;
    }

    .mission-check {
      width: 5.5mm;
      height: 5.5mm;
      border-radius: 1.2mm;
      border: 1.4px solid #22324d;
      background: transparent;
      display: block;
      margin-top: .4mm;
      cursor: pointer;
      flex-shrink: 0;
      accent-color: #22b573;
    }

    .mission-check.checked {
      background: #22b573;
      border-color: #22b573;
    }

    .mission-check.checked::after {
      content: '';
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 2.8mm;
      height: 1.5mm;
      border-left: 1.5px solid #fff;
      border-bottom: 1.5px solid #fff;
      transform: translate(-50%, -65%) rotate(-45deg);
    }

    .mission-text {
      font-size: 9.5pt;
    }

    .flowchart-card {
      background: #fff;
      border: 1.5px solid #22324d;
      border-radius: 6mm;
      padding: 4mm;
      margin: 3mm 0;
    }

    .flowchart-card img {
      max-width: 100%;
      height: auto;
      display: block;
      margin: 0 auto;
    }

    .flowchart-title {
      font-weight: 900;
      font-size: 10pt;
      text-transform: uppercase;
      letter-spacing: .04em;
      margin: 0 0 2mm;
    }

    .premium-hook {
      font-size: 14pt;
      font-weight: 700;
      margin: 10mm 0;
    }

    .chapter-promise {
      font-size: 10pt;
      font-style: italic;
      margin-bottom: 5mm;
    }

    .final-cta {
      page-break-before: always;
      text-align: center;
      padding: 20mm;
    }

    #back-to-top {
      position: fixed;
      bottom: 24px;
      right: 24px;
      z-index: 9999;
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: var(--accent);
      border: 2px solid var(--line);
      box-shadow: 0 4px 14px rgba(24,49,83,.22);
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      pointer-events: none;
      transition: opacity .25s, transform .25s;
      transform: translateY(8px);
    }
    #back-to-top.visible {
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0);
    }
    #back-to-top svg {
      width: 20px;
      height: 20px;
      fill: none;
      stroke: #fff;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    #back-to-top::after {
      content: attr(data-tooltip);
      position: absolute;
      right: calc(100% + 8px);
      top: 50%;
      transform: translateY(-50%);
      white-space: nowrap;
      background: var(--line);
      color: #fff;
      font-size: 7.5pt;
      font-weight: 700;
      padding: 3px 7px;
      border-radius: 4px;
      pointer-events: none;
      opacity: 0;
      transition: opacity .18s;
      max-width: 52mm;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    #back-to-top.visible:hover::after {
      opacity: 1;
    }
    @media print {
      #back-to-top { display: none !important; }
    }

    /* ── Spacing uniformity: callout sequences ── */
    .callout + .callout {
      margin-top: 2mm;
    }
    .callout + hr,
    .callout > hr:last-child {
      display: none;
    }

    /* ── Phase divider: more event-like ── */
    .phase-divider {
      border-left: 4px solid var(--accent);
      padding-left: 7mm;
    }
    .phase-divider h2 {
      font-size: 20pt;
      letter-spacing: -.01em;
      color: var(--ink);
    }
    .phase-divider p {
      font-size: 10pt;
      color: #3a4e6a;
    }

    /* ── Chapter block: top accent line ── */
    .chapter-block {
      border-top: 3.5px solid var(--accent);
    }

    /* ── Chapter promise: prominent kicker ── */
    .chapter-promise {
      display: inline-block;
      margin: 0 0 4mm;
      padding: 1.8mm 3.5mm;
      background: linear-gradient(90deg, rgba(255,107,53,.10), rgba(255,107,53,0));
      border-left: 2.5px solid var(--accent);
      border-radius: 0 3mm 3mm 0;
      font-size: 9.6pt;
      font-weight: 700;
      font-style: normal;
      color: #2a3d58;
      max-width: 100%;
    }

    /* ── Final CTA: premium feel ── */
    .final-cta {
      page-break-before: always;
      text-align: center;
      padding: 14mm 10mm 10mm;
      background: linear-gradient(135deg, #fff8e6, #eef7ff);
      border: 1.5px solid var(--line);
      border-radius: 8mm;
      box-shadow: var(--shadow-soft);
      margin: 6mm auto 0;
      width: 190mm;
    }
    .final-cta h2 {
      font-size: 15pt;
      margin: 0 0 4mm;
      color: var(--ink);
    }
    .final-cta p {
      font-size: 10.4pt;
      margin: 0 0 3mm;
    }
    @media (max-width: 820px) {
      .final-cta { width: auto; }
    }

    /* ── Author word section ── */
    .author-word {
      margin: 8mm 0 0;
      padding: 7mm;
      border: 1.5px solid var(--line);
      border-radius: 8mm;
      background: linear-gradient(180deg, #fffdfa, #f5f8fc);
      box-shadow: var(--shadow-soft);
    }
    .author-word-grid {
      display: grid;
      grid-template-columns: 1.55fr .75fr;
      gap: 7mm;
      align-items: start;
      margin: 0 0 5mm;
    }
    .author-word-kicker {
      margin: 0 0 3mm;
      font-size: 7.8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
      color: #5d6f92;
    }
    .author-word-title {
      margin: 0 0 3.5mm;
      font-size: 13pt;
      font-weight: 900;
      line-height: 1.2;
      color: var(--ink);
    }
    .author-word-body {
      margin: 0 0 3.5mm;
      font-size: 10.1pt;
      line-height: 1.7;
    }
    .author-photo-wrap {
      display: flex;
      justify-content: flex-end;
    }
    .author-photo-fig {
      margin: 0;
      width: 100%;
      max-width: 40mm;
    }
    .author-photo-fig img,
    .author-photo-img {
      display: block;
      width: 100%;
      border-radius: 6mm;
      border: 1.2px solid rgba(24,49,83,.14);
      box-shadow: 0 8px 22px rgba(24,49,83,.12);
    }
    .author-word-support {
      border-top: 1px solid rgba(24,49,83,.14);
      padding-top: 5mm;
    }
    .author-word-support-label {
      margin: 0 0 4mm;
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .06em;
      color: #5d6f92;
      text-align: center;
    }
    .author-support-grid {
      display: grid;
      grid-template-columns: 40mm 1fr;
      gap: 6mm;
      align-items: start;
    }
    .author-qr-card {
      background: linear-gradient(180deg, #ffffff, #f8fbff);
      border: 1.2px solid rgba(24,49,83,.14);
      border-radius: 6mm;
      padding: 4mm;
      box-shadow: 0 4px 14px rgba(24,49,83,.06);
      text-align: center;
    }
    .author-qr-label {
      margin: 0 0 2.5mm;
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
      color: #243754;
    }
    .author-qr-img {
      display: block;
      width: 100%;
      border-radius: 4mm;
      border: 1px solid rgba(24,49,83,.10);
      background: #fff;
      padding: 2mm;
      margin: 0 auto 2.5mm;
    }
    .author-qr-hint {
      margin: 0;
      font-size: 8.4pt;
      color: #415b84;
      line-height: 1.45;
      font-weight: 700;
    }
    .author-pix-col {
      display: grid;
      gap: 3mm;
    }
    .author-pix-box {
      background: linear-gradient(180deg, #ffffff, #f8fbff);
      border: 1.2px solid rgba(24,49,83,.14);
      border-radius: 6mm;
      padding: 4mm;
      box-shadow: 0 4px 14px rgba(24,49,83,.06);
    }
    .author-pix-box-label {
      margin: 0 0 2.5mm;
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
      color: #243754;
    }
    .author-pix-code {
      background: #ffffff;
      border: 1px solid rgba(24,49,83,.10);
      border-radius: 4mm;
      padding: 3mm 3.2mm;
      font-family: 'Consolas','Courier New',monospace;
      font-size: 8.1pt;
      line-height: 1.62;
      color: #243754;
      word-break: break-all;
    }
    .author-pix-actions {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 4mm;
      flex-wrap: wrap;
    }
    .author-pix-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 46mm;
      border: 1.5px solid #1e3558;
      background: linear-gradient(180deg, #ff8a4f, #ff6b35);
      color: #fff;
      font-weight: 900;
      font-size: 10pt;
      padding: 3.3mm 7mm;
      border-radius: 999px;
      cursor: pointer;
      box-shadow: 0 4px 12px rgba(24,49,83,.18);
    }
    .author-pix-hint {
      flex: 1;
      min-width: 42mm;
      padding: 3mm 3.5mm;
      border-radius: 5mm;
      background: #eef4fb;
      color: #415b84;
      font-size: 8.7pt;
      line-height: 1.5;
    }
    @media (max-width: 820px) {
      .author-word-grid,
      .author-support-grid { grid-template-columns: 1fr; }
    }


    /* Banner de anúncios */
    .ads-banner {
      padding: 1rem 0;
      background: #f8fafd;
      border-top: 1px solid rgba(24,49,83,.08);
    }

    /* ── PIX Support Block ───────────────────────────────── */
    .pix-support-grid {
      display: grid;
      grid-template-columns: 40mm 1fr;
      gap: 6mm;
      align-items: start;
    }
    .pix-qr-card,
    .pix-copy-card {
      background: linear-gradient(180deg,#ffffff,#f8fbff);
      border: 1.2px solid rgba(24,49,83,.14);
      border-radius: 6mm;
      padding: 4mm;
      box-shadow: 0 4px 14px rgba(24,49,83,.06);
    }
    .pix-qr-card {
      text-align: center;
    }
    .pix-card-label {
      margin: 0 0 2.5mm;
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .05em;
      color: #243754;
    }
    .pix-qr-img {
      display: block;
      width: 100%;
      max-width: 38mm;
      height: auto;
      border-radius: 4mm;
      border: 1px solid rgba(24,49,83,.10);
      background: #fff;
      padding: 2mm;
      margin: 0 auto 2.5mm;
      box-sizing: border-box;
    }
    .pix-qr-hint {
      margin: 0;
      font-size: 8.4pt;
      color: #415b84;
      line-height: 1.45;
      font-weight: 700;
    }
    .pix-copy-col {
      display: grid;
      gap: 3mm;
      min-width: 0;
    }
    .pix-code-box {
      background: #ffffff;
      border: 1px solid rgba(24,49,83,.10);
      border-radius: 4mm;
      padding: 3mm 3.2mm;
      font-family: 'Consolas','Courier New',monospace;
      font-size: 8.1pt;
      line-height: 1.62;
      color: #243754;
      word-break: break-all;
      overflow-wrap: break-word;
      min-width: 0;
    }
    .pix-action-row {
      display: flex;
      align-items: center;
      gap: 4mm;
      flex-wrap: wrap;
    }
    .pix-copy-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 46mm;
      border: 1.5px solid #1e3558;
      background: linear-gradient(180deg,#ff8a4f,#ff6b35);
      color: #fff;
      font-weight: 900;
      font-size: 10pt;
      padding: 3.3mm 7mm;
      border-radius: 999px;
      cursor: pointer;
      box-shadow: 0 4px 12px rgba(24,49,83,.18);
      white-space: nowrap;
    }
    .pix-hint-box {
      flex: 1;
      min-width: 0;
      padding: 3mm 3.5mm;
      border-radius: 5mm;
      background: #eef4fb;
      color: #415b84;
      font-size: 8.7pt;
      line-height: 1.5;
    }
    @media screen and (max-width: 520px) {
      .pix-support-grid {
        grid-template-columns: 1fr;
      }
      .pix-qr-img {
        max-width: 55mm;
      }
      .pix-copy-btn {
        width: 100%;
      }
      .pix-action-row {
        flex-direction: column;
        align-items: stretch;
      }
    }
    /* ─────────────────────────────────────────────────── */

    /* ── Navegação flutuante entre capítulos ─────────────────── */
    .chapter-nav {
      position: fixed;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 190mm;
      z-index: 200;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 16px;
      padding-bottom: max(8px, env(safe-area-inset-bottom));
      background: rgba(255, 253, 247, 0.96);
      border: 1.5px solid rgba(24, 49, 83, .16);
      border-bottom: none;
      border-radius: 8mm 8mm 0 0;
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      box-shadow: 0 -4px 20px rgba(24, 49, 83, .08);
    }

    .nav-round {
      width: 46px;
      height: 46px;
      border-radius: 50%;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      border: 2px solid var(--line);
      background: var(--accent);
      color: #fff;
      box-shadow: 0 4px 14px rgba(24, 49, 83, .20);
      flex-shrink: 0;
      transition: background .18s, transform .12s;
    }

    .nav-round:hover {
      background: #d95826;
      transform: scale(1.07);
    }

    .nav-round svg {
      width: 22px;
      height: 22px;
      stroke: #fff;
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .nav-placeholder {
      width: 46px;
      height: 46px;
      flex-shrink: 0;
      visibility: hidden;
      pointer-events: none;
    }

    .nav-index {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 10px 24px;
      background: var(--ink);
      color: #fff;
      text-decoration: none;
      border-radius: 999px;
      font-size: 10.4pt;
      font-weight: 800;
      letter-spacing: .02em;
      border: 2px solid var(--line);
      box-shadow: 0 4px 14px rgba(24, 49, 83, .20);
      transition: background .18s, transform .12s;
    }

    .nav-index:hover {
      background: #0f1e35;
      transform: scale(1.04);
    }

    .nav-index svg {
      width: 16px;
      height: 16px;
      stroke: #fff;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      flex-shrink: 0;
    }

    @media print {
      .chapter-nav { display: none; }
    }

    /* ── chapter-nav responsivo (deve vir DEPOIS da regra base para cascata correta) ── */
    @media (max-width: 820px) {
      body {
        padding-bottom: calc(12px + 60px + env(safe-area-inset-bottom, 0px));
      }
      .chapter-nav {
        width: 100%;
        left: 0;
        transform: none;
        border-radius: 0;
        border-left: none;
        border-right: none;
      }
    }

    /* ── Responsividade mobile (≤ 500px) ─────────────────────── */
    @media screen and (max-width: 500px) {

      html { font-size: 16px; }

      body {
        padding-bottom: calc(12px + 60px + env(safe-area-inset-bottom, 0px));
      }

      /* Containers: margem mínima lateral */
      #TOC,
      .chapter-block,
      footer.editor-note {
        margin-left: 6px;
        margin-right: 6px;
        border-radius: 4mm;
      }

      .chapter-block {
        padding: 4mm 3.5mm;
      }

      /* Tipografia */
      h1 {
        font-size: 15pt;
        padding: 3mm 3mm;
      }

      h2 { font-size: 11.5pt; }
      h3 { font-size: 10.5pt; }

      p  { font-size: 10pt; }

      /* Tabelas: texto flui em vez de transbordar */
      table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        border-radius: 2mm;
      }

      td, th {
        font-size: 8.5pt;
        padding: 2mm 2.2mm;
        word-break: break-word;
        overflow-wrap: break-word;
        white-space: normal;
        min-width: 60px;
      }

      /* SVG e visual blocks: scroll horizontal se necessário */
      .visual-block {
        overflow-x: auto;
        padding: 3mm;
      }

      /* Blockquote mais compacto */
      blockquote {
        padding: 3mm 3.5mm;
        font-size: 9.5pt;
      }

      /* Sticky grid: 2 colunas em vez de 4 */
      .sticky-grid {
        grid-template-columns: 1fr 1fr;
      }

      /* Callout */
      .callout {
        padding: 3.5mm 3.5mm 2.5mm;
      }

      /* Barra de navegação flutuante: refinamentos tamanho */
      .chapter-nav {
        padding: 7px 12px;
        padding-bottom: max(7px, env(safe-area-inset-bottom));
      }

      .nav-round,
      .nav-placeholder {
        width: 40px;
        height: 40px;
      }

      .nav-round svg {
        width: 19px;
        height: 19px;
      }

      .nav-index {
        padding: 8px 15px;
        font-size: 9pt;
        gap: 5px;
      }

      .nav-index svg {
        width: 14px;
        height: 14px;
      }
    }


    /* ─── PAYWALL ──────────────────────────────────────────── */
    .paywall-blur {
      position: relative;
      max-height: 220px;
      overflow: hidden;
      pointer-events: none;
      user-select: none;
    }
    .paywall-blur::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(transparent 0%, #f7f4ea 68%);
    }
    .paywall-gate {
      display: flex;
      align-items: flex-start;
      gap: 7mm;
      background: var(--card);
      border: 2px solid var(--line);
      border-radius: 7mm;
      padding: 6mm;
      box-shadow: var(--shadow);
      margin: 4mm 0 0;
    }
    .paywall-cover {
      width: 38mm;
      border-radius: 3mm;
      box-shadow: 0 4px 16px rgba(24,49,83,.18);
      flex-shrink: 0;
    }
    .paywall-body {
      display: flex;
      flex-direction: column;
      gap: 3mm;
    }
    .paywall-eyebrow {
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
      color: var(--accent);
      margin: 0;
    }
    .paywall-title {
      font-size: 14pt !important;
      font-weight: 900 !important;
      color: var(--ink) !important;
      margin: 0 !important;
      padding: 0 !important;
      background: none !important;
      border: none !important;
      display: block !important;
      line-height: 1.2 !important;
    }
    .paywall-perks {
      margin: 0;
      padding-left: 4mm;
      font-size: 9pt;
      color: var(--ink);
    }
    .paywall-perks li { margin-bottom: 1.2mm; }
    .paywall-btn {
      display: inline-block;
      background: var(--accent);
      color: #fff;
      font-weight: 900;
      font-size: 11pt;
      padding: 3mm 6mm;
      border-radius: 6mm;
      text-decoration: none;
      border: 2px solid var(--line);
      box-shadow: 3px 3px 0 var(--line);
      transition: box-shadow .15s, transform .15s;
      align-self: flex-start;
    }
    .paywall-btn:hover {
      box-shadow: 1px 1px 0 var(--line);
      transform: translate(2px, 2px);
    }
    .paywall-free-link {
      font-size: 9pt;
      color: var(--muted);
      text-decoration: underline;
      align-self: flex-start;
    }

    /* ─── EMAIL CAPTURE ────────────────────────────────────── */
    .email-capture {
      background: var(--ink);
      color: #fff;
      border-radius: 7mm;
      padding: 6mm 7mm;
      margin: 6mm 0;
      display: flex;
      gap: 6mm;
      align-items: center;
      border: 2px solid var(--line);
    }
    .email-capture-text { flex: 1; }
    .email-capture-eyebrow {
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
      color: var(--accent-2);
      margin: 0 0 1.5mm;
    }
    .email-capture-title {
      font-size: 13pt;
      font-weight: 900;
      margin: 0 0 1.5mm;
      color: #fff;
      line-height: 1.2;
    }
    .email-capture-sub {
      font-size: 8.5pt;
      color: rgba(255,255,255,.70);
      margin: 0;
    }
    .email-capture-form {
      display: flex;
      flex-direction: column;
      gap: 2mm;
      min-width: 56mm;
    }
    .email-capture-form input {
      padding: 2.5mm 3.5mm;
      border: 2px solid rgba(255,255,255,.30);
      border-radius: 5mm;
      background: rgba(255,255,255,.10);
      color: #fff;
      font-size: 9.5pt;
      font-family: inherit;
      outline: none;
      transition: border-color .15s;
    }
    .email-capture-form input::placeholder { color: rgba(255,255,255,.45); }
    .email-capture-form input:focus { border-color: var(--accent-2); }
    .email-capture-btn {
      background: var(--accent-2);
      color: var(--ink);
      font-weight: 900;
      font-size: 9.5pt;
      padding: 2.5mm 4mm;
      border: 2px solid #b8960a;
      border-radius: 5mm;
      cursor: pointer;
      font-family: inherit;
      transition: transform .1s;
    }
    .email-capture-btn:hover { transform: scale(1.03); }
    .email-capture-success {
      display: none;
      color: var(--accent-2);
      font-weight: 900;
      font-size: 10pt;
      text-align: center;
      padding: 4mm 0;
    }

    /* ─── AUTHOR STRIP ─────────────────────────────────────── */
    .author-strip {
      display: flex;
      align-items: center;
      gap: 4mm;
      margin: 0 0 5mm;
      padding: 4mm;
      background: rgba(255,255,255,.6);
      border-radius: 5mm;
      border: 1.2px solid rgba(24,49,83,.12);
    }
    .author-strip-photo {
      width: 14mm;
      height: 14mm;
      border-radius: 50%;
      object-fit: cover;
      border: 2px solid var(--line);
      flex-shrink: 0;
    }
    .author-strip-name {
      font-size: 9.5pt;
      font-weight: 900;
      color: var(--ink);
      margin: 0;
    }
    .author-strip-bio {
      font-size: 8.5pt;
      color: var(--muted);
      margin: 0;
    }

    /* ─── TESTIMONIALS CAROUSEL ─────────────────────────────── */
    .testimonials-carousel {
      overflow: hidden;
      background: rgba(255,255,255,.6);
      border: 1.2px solid rgba(24,49,83,.12);
      border-radius: 5mm;
      padding: 0;
      margin: 0 0 5mm;
    }
    .tc-track {
      display: flex;
      transition: transform .42s cubic-bezier(.4,0,.2,1);
      will-change: transform;
    }
    .tc-slide {
      flex-shrink: 0;
      width: 100%;
      padding: 5mm 6mm 3mm;
      box-sizing: border-box;
    }
    .tc-quote {
      margin: 0 0 3mm;
      padding: 0;
      border: none;
      font-size: 10pt;
      line-height: 1.65;
      color: var(--ink);
      font-style: italic;
      position: relative;
    }
    .tc-quote::before {
      content: '\201C';
      font-size: 28pt;
      line-height: 0;
      vertical-align: -10px;
      color: var(--accent);
      font-style: normal;
      margin-right: 1.5mm;
    }
    .tc-cite {
      display: block;
      font-size: 8.5pt;
      font-style: normal;
      color: var(--muted);
      padding-left: 1mm;
    }
    .tc-cite span {
      font-weight: 900;
      color: var(--ink);
    }
    .tc-controls {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 2mm 4mm 4mm;
      gap: 3mm;
    }
    .tc-btn {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      border: 1.5px solid var(--line);
      background: var(--ink);
      color: #fff;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      padding: 0;
      transition: background .15s, transform .12s;
    }
    .tc-btn:hover { background: #0f1e35; transform: scale(1.08); }
    .tc-btn svg {
      width: 16px;
      height: 16px;
      stroke: #fff;
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }
    .tc-dots {
      display: flex;
      gap: 5px;
      align-items: center;
      flex-wrap: wrap;
      justify-content: center;
    }
    .tc-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      border: 1.2px solid rgba(24,49,83,.35);
      background: rgba(24,49,83,.15);
      cursor: pointer;
      padding: 0;
      transition: background .2s, transform .15s;
    }
    .tc-dot.active {
      background: var(--accent);
      border-color: var(--accent);
      transform: scale(1.25);
    }
    @media (max-width: 500px) {
      .tc-slide { padding: 4mm 4mm 2.5mm; }
      .tc-quote { font-size: 9.5pt; }
    }
    @media print {
      .testimonials-carousel { display: none; }
    }

    /* ─── BUY SECTION ──────────────────────────────────────── */
    #comprar {
      display: flex;
      gap: 7mm;
      align-items: flex-start;
      background: var(--paper-2);
      border: 2.5px solid var(--line);
      border-radius: 8mm;
      padding: 7mm;
      margin: 6mm 0;
      box-shadow: var(--shadow);
    }
    .buy-cover {
      width: 44mm;
      border-radius: 4mm;
      box-shadow: 0 6px 22px rgba(24,49,83,.20);
      flex-shrink: 0;
    }
    .buy-content {
      display: flex;
      flex-direction: column;
      gap: 3mm;
    }
    .buy-eyebrow {
      font-size: 8pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
      color: var(--accent);
      margin: 0;
    }
    .buy-title {
      font-size: 17pt;
      font-weight: 900;
      color: var(--ink);
      margin: 0;
      line-height: 1.15;
    }
    .buy-desc {
      font-size: 9.5pt;
      color: var(--muted);
      margin: 0;
    }
    .buy-perks {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: .8mm;
      font-size: 9pt;
    }
    .buy-perks li { display: flex; align-items: flex-start; gap: 2mm; }
    .buy-perks li::before { content: '✓'; font-weight: 900; color: var(--accent-3); flex-shrink: 0; }
    .buy-price-row {
      display: flex;
      align-items: baseline;
      gap: 3mm;
    }
    .buy-price { font-size: 22pt; font-weight: 900; color: var(--ink); }
    .buy-price-note { font-size: 8.5pt; color: var(--muted); }
    .buy-btn {
      display: inline-block;
      background: var(--accent);
      color: #fff;
      font-weight: 900;
      font-size: 12pt;
      padding: 3.5mm 7mm;
      border-radius: 7mm;
      text-decoration: none;
      border: 2.5px solid var(--line);
      box-shadow: 4px 4px 0 var(--line);
      transition: box-shadow .15s, transform .15s;
    }
    .buy-btn:hover {
      box-shadow: 1px 1px 0 var(--line);
      transform: translate(3px, 3px);
    }
    .buy-free-note { font-size: 8.5pt; color: var(--muted); }

    /* ─── BOOK MAP (homepage) ──────────────────────────────── */
    .book-map-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 3mm;
      margin: 5mm 0;
    }
    .book-map-block {
      background: var(--card);
      border: 1.5px solid var(--line);
      border-radius: 5mm;
      padding: 4mm 3.5mm;
      text-align: center;
    }
    .book-map-num {
      font-size: 7.5pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .06em;
      color: var(--muted);
      margin: 0 0 1mm;
    }
    .book-map-title {
      font-size: 11pt;
      font-weight: 900;
      color: var(--ink);
      margin: 0 0 2mm;
    }
    .book-map-desc {
      font-size: 8pt;
      color: var(--muted);
      margin: 0 0 2mm;
    }
    .book-map-chaps {
      font-size: 7.5pt;
      color: var(--accent);
      font-weight: 700;
      margin: 0;
    }
    .book-map-block:nth-child(1) { border-top: 4px solid #ffd6e2; }
    .book-map-block:nth-child(2) { border-top: 4px solid #d9f0ff; }
    .book-map-block:nth-child(3) { border-top: 4px solid #ffd166; }
    .book-map-block:nth-child(4) { border-top: 4px solid #d8f6d8; }

    @media (max-width: 600px) {
      .book-map-grid { grid-template-columns: repeat(2, 1fr); }
      .email-capture { flex-direction: column; }
      .email-capture-form { min-width: unset; width: 100%; }
      #comprar { flex-direction: column; }
      .buy-cover { width: 38mm; }
      .paywall-gate { flex-direction: column; align-items: center; }
      .paywall-cover { width: 30mm; }
    }

    /* ── Launch bar (CTA topo) ── */
    .launch-bar-wrap { margin-bottom: 6mm; }
    .launch-bar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 4mm;
      background: var(--paper-2);
      border: 2px solid var(--line);
      border-radius: 6mm;
      padding: 4mm 6mm;
    }
    .launch-bar-left { flex: 1; }
    .launch-chip {
      display: inline-block;
      background: var(--accent);
      color: #fff;
      font-size: 7pt;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .06em;
      padding: 1mm 3mm;
      border-radius: 3mm;
      margin-bottom: 1.5mm;
    }
    .launch-bar-text {
      margin: 0;
      font-size: 10pt;
      color: var(--ink);
      font-weight: 600;
    }
    .launch-price-orig {
      color: var(--muted);
      font-weight: 400;
      text-decoration: line-through;
    }
    .launch-price-new { color: var(--accent); }
    .launch-bar-btn {
      display: inline-block;
      background: var(--ink);
      color: #fff;
      font-weight: 900;
      font-size: 10pt;
      padding: 3mm 6mm;
      border-radius: 5mm;
      text-decoration: none;
      border: 2px solid var(--line);
      box-shadow: 3px 3px 0 var(--line);
      white-space: nowrap;
      transition: box-shadow .15s, transform .15s;
    }
    .launch-bar-btn:hover {
      box-shadow: 1px 1px 0 var(--line);
      transform: translate(2px, 2px);
    }
    @media (max-width: 600px) {
      .launch-bar { flex-direction: column; align-items: flex-start; }
      .launch-bar-btn { width: 100%; text-align: center; box-sizing: border-box; }
    }

    /* ── Âncora de preço + garantia ── */
    .buy-price-orig {
      font-size: 13pt;
      font-weight: 600;
      color: var(--muted);
      text-decoration: line-through;
      margin-right: 2mm;
    }
    .buy-guarantee {
      display: flex;
      align-items: flex-start;
      gap: 2mm;
      margin: 3mm 0 4mm;
      background: #f0faf0;
      border: 1.5px solid #b2dfb2;
      border-radius: 4mm;
      padding: 3mm 4mm;
      font-size: 9pt;
      color: #1a5c1a;
      font-weight: 600;
    }
    .buy-guarantee-icon { flex-shrink: 0; font-size: 13pt; }
    .buy-launch-note {
      font-size: 8.5pt;
      color: var(--muted);
      background: var(--paper-2);
      border-left: 3px solid var(--accent-2);
      padding: 2.5mm 4mm;
      border-radius: 0 3mm 3mm 0;
      margin: 3mm 0 4mm;
    }

    /* ── Quiz buy mini card ── */
    .quiz-buy-mini {
      margin-top: 5mm;
      padding-top: 5mm;
      border-top: 1.5px dashed var(--line);
      text-align: center;
    }
    .quiz-buy-already {
      font-size: 9pt;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .05em;
      color: var(--muted);
      margin: 0 0 2mm;
    }
    .quiz-buy-price-row {
      display: flex;
      align-items: baseline;
      justify-content: center;
      gap: 3mm;
      margin-bottom: 3mm;
    }
    .quiz-buy-orig {
      font-size: 11pt;
      color: var(--muted);
      text-decoration: line-through;
    }
    .quiz-buy-price {
      font-size: 22pt;
      font-weight: 900;
      color: var(--ink);
    }
    .quiz-buy-direct {
      display: inline-block;
      background: var(--accent);
      color: #fff;
      font-weight: 900;
      font-size: 11pt;
      padding: 3mm 7mm;
      border-radius: 6mm;
      text-decoration: none;
      border: 2px solid var(--line);
      box-shadow: 3px 3px 0 var(--line);
      transition: box-shadow .15s, transform .15s;
    }
    .quiz-buy-direct:hover {
      box-shadow: 1px 1px 0 var(--line);
      transform: translate(2px, 2px);
    }
    .quiz-buy-note {
      font-size: 8.5pt;
      color: var(--muted);
      margin: 2.5mm 0 0;
    }

    /* ── Quiz: capa no cabeçalho ── */
    .quiz-header-book-link {
      display: inline-block;
      margin-bottom: 5mm;
      transition: transform .15s;
    }
    .quiz-header-book-link:hover { transform: scale(1.04); }
    .quiz-header-cover {
      width: 34mm;
      height: auto;
      display: block;
      margin: 0 auto;
      border-radius: 2mm;
      box-shadow: 3px 6px 18px rgba(24,49,83,.22);
    }

    /* ── Quiz: botão WhatsApp ── */
    .quiz-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 3mm;
      justify-content: center;
      margin-top: 5mm;
    }
    .quiz-share-btn.quiz-share-wa {
      background: #25D366;
      color: #fff;
      border-color: #1da851;
      display: inline-flex;
      align-items: center;
      gap: 2mm;
      padding: 2.5mm 5mm;
    }
    .quiz-share-btn.quiz-share-wa:hover { background: #1db954; }
    .quiz-share-btn.quiz-share-wa::before {
      content: '';
      display: inline-block;
      flex-shrink: 0;
      width: 16px;
      height: 16px;
      background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E") center/contain no-repeat;
    }

    /* ── Quiz: botão Continuar lendo ── */
    .quiz-continue-btn {
      display: inline-flex;
      align-items: center;
      background: var(--ink);
      color: #fff;
      font-weight: 900;
      font-size: 10.5pt;
      padding: 2.5mm 6mm;
      border-radius: 7mm;
      text-decoration: none;
      border: 2px solid var(--line);
      box-shadow: 3px 3px 0 var(--line);
      transition: box-shadow .15s, transform .15s;
    }
    .quiz-continue-btn:hover {
      box-shadow: 1px 1px 0 var(--line);
      transform: translate(2px, 2px);
    }

    /* ── Quiz: link "Ver o livro" ── */
    .quiz-buy-book-link {
      display: block;
      font-size: 9pt;
      color: var(--muted);
      text-decoration: underline;
      margin: 2.5mm 0 0;
    }
    .quiz-buy-book-link:hover { color: var(--ink); }
