.kj-premium-v2-root {
  background: #071426;
  padding: 0;
}

.kj-book-page {
  background: #071426;
  color: #f8f1df;
  padding: 64px 28px;
  font-family: Georgia, 'Times New Roman', serif;
  page-break-after: always;
}

.kj-book-inner {
  max-width: 840px;
  margin: 0 auto;
  background: #0d1c33;
  border: 1px solid rgba(214, 179, 90, 0.48);
  border-radius: 20px;
  padding: 58px 56px 70px 56px;
  box-shadow: 0 18px 45px rgba(0,0,0,0.34);
}

.kj-book-page h1,
.kj-book-page h2,
.kj-book-page h3 {
  color: #d6b35a;
}

.kj-book-page h1 {
  text-align: center;
  font-size: 42px;
  line-height: 1.15;
  margin: 14px 0 22px;
}

.kj-book-page h2 {
  text-align: center;
  font-size: 34px;
  margin: 0 0 16px;
  letter-spacing: 0.5px;
}

.kj-book-page h3 {
  font-size: 22px;
  margin-top: 30px;
  margin-bottom: 10px;
}

.kj-book-subtitle {
  color: #eadfbf;
  text-align: center;
  font-size: 18px;
  line-height: 1.55;
  margin: 0 auto 30px;
  max-width: 680px;
}

.kj-book-body {
  font-size: 17px;
  line-height: 1.8;
}

.kj-book-body p {
  margin: 0 0 18px;
}

.kj-kicker {
  text-align: center;
  letter-spacing: 4px;
  color: #d6b35a;
  font-size: 13px;
  margin-bottom: 30px;
}

.kj-cover-inner {
  min-height: 720px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.kj-cover-details {
  max-width: 460px;
  margin: 30px auto;
  padding: 24px 28px;
  background: rgba(255,255,255,0.045);
  border: 1px solid rgba(214,179,90,0.35);
  border-radius: 16px;
}

.kj-cover-details p {
  margin: 9px 0;
  font-size: 17px;
}

.kj-prepared {
  text-align: center;
  color: #eadfbf;
  font-style: italic;
  margin-top: 22px;
}

.kj-toc {
  max-width: 520px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 2;
}

.kj-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 28px 0;
}

.kj-mini-card {
  border: 1px solid rgba(214,179,90,0.35);
  background: rgba(255,255,255,0.045);
  border-radius: 15px;
  padding: 22px 18px;
  text-align: center;
}

.kj-mini-card h3 {
  margin: 0 0 8px;
}

.kj-mini-card p {
  font-size: 20px;
  color: #fff6d8;
  margin-bottom: 8px;
}

.kj-mini-card span {
  color: #eadfbf;
  font-size: 14px;
}

.kj-reflection-box,
.kj-affirmation-box {
  margin-top: 28px;
  border-left: 4px solid #d6b35a;
  background: rgba(255,255,255,0.055);
  padding: 20px 24px;
  border-radius: 12px;
}

.kj-reflection-box h3,
.kj-affirmation-box h3 {
  margin-top: 0;
}

@media (max-width: 760px) {
  .kj-book-page {
    padding: 28px 12px;
  }

  .kj-book-inner {
    padding: 30px 22px;
  }

  .kj-book-page h1 {
    font-size: 32px;
  }

  .kj-book-page h2 {
    font-size: 28px;
  }

  .kj-card-grid {
    grid-template-columns: 1fr;
  }
}


.kj-print-toolbar { position: sticky; top: 10px; z-index: 50; max-width: 840px; margin: 0 auto; padding: 12px 16px; background:#fffdf9; color:#172238; border:1px solid #c69a45; border-radius:12px; display:flex; gap:14px; align-items:center; font-family:Arial,sans-serif; }
.kj-print-toolbar button { background:#0d1c33; color:#fff; border:0; border-radius:8px; padding:12px 18px; cursor:pointer; font-weight:700; }
.kj-print-toolbar span { font-size:13px; }
.kj-art-page { padding:0; background:#fff; }
.kj-art-wrap { width:100%; max-width:960px; margin:0 auto; }
.kj-art-wrap img { width:100%; height:auto; display:block; }
.kj-divider-page { padding:0; background:#fff; }
.kj-divider-wrap { position:relative; width:100%; max-width:1200px; margin:0 auto; }
.kj-divider-wrap img { width:100%; height:auto; display:block; }
.kj-divider-wrap h2 { position:absolute; inset:auto 8% 8% 8%; margin:0; padding:16px 20px; background:rgba(7,20,38,.72); color:#f7e5ac; font-size:34px; letter-spacing:2px; border:1px solid rgba(214,179,90,.65); }
.kj-placement-table { width:100%; border-collapse:collapse; margin:25px 0; }
.kj-placement-table th,.kj-placement-table td { border:1px solid rgba(214,179,90,.35); padding:10px 12px; text-align:left; }
.kj-placement-table th { color:#d6b35a; background:rgba(255,255,255,.04); }
.kj-writing-lines { min-height:180px; margin:10px 0 28px; background:repeating-linear-gradient(to bottom, transparent 0, transparent 31px, rgba(214,179,90,.35) 32px); }
.kj-writing-lines-large { min-height:320px; }

@media print {
  @page { size: 8in 11in; margin: 0; }
  body * { visibility:hidden !important; }
  #kj-premium-v2-root, #kj-premium-v2-root * { visibility:visible !important; }
  #kj-premium-v2-root { position:absolute; left:0; top:0; width:100%; background:#fff !important; }
  .no-print { display:none !important; }
  .kj-book-page { width:8in; min-height:11in; box-sizing:border-box; margin:0; padding:.35in; break-after:page; page-break-after:always; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .kj-art-page,.kj-divider-page { padding:0; display:flex; align-items:center; justify-content:center; background:#fff !important; }
  .kj-art-wrap img,.kj-divider-wrap img { width:8in; max-height:11in; object-fit:contain; }
  .kj-book-inner { max-width:none; min-height:10.3in; box-sizing:border-box; box-shadow:none; border-radius:0; }
}

.kj-symbol-card img { width:110px; height:110px; object-fit:contain; display:block; margin:0 auto 10px; }
.kj-symbol-card span { display:block; text-align:center; color:#eadfbf; font-weight:700; }
.kj-centred-symbol { display:flex; justify-content:center; margin:10px 0 28px; }
.kj-two-symbols { display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:start; margin:20px 0 35px; }
.kj-two-symbols .kj-symbol-card img { width:220px; height:220px; }
.kj-highlight-box { margin:22px 0; padding:18px 22px; border:1px solid rgba(214,179,90,.45); background:rgba(255,255,255,.04); border-radius:12px; }
.kj-library-page ul { columns:2; column-gap:35px; }
@media(max-width:760px){ .kj-two-symbols{grid-template-columns:1fr;} .kj-library-page ul{columns:1;} }

@media print {
  html, body { height:auto !important; overflow:visible !important; }
  body { margin:0 !important; background:#fff !important; }
  #kj-premium-v2-root { position:static !important; width:8in !important; max-width:8in !important; height:auto !important; overflow:visible !important; }
  #kj-premium-v2-output { display:block !important; height:auto !important; overflow:visible !important; }
  .kj-book-page { display:block !important; position:relative !important; overflow:visible !important; break-after:page !important; page-break-after:always !important; }
  .kj-book-page:last-child { break-after:auto !important; page-break-after:auto !important; }
  .kj-art-page img, .kj-divider-page img { break-inside:avoid !important; page-break-inside:avoid !important; }
}


/* v1.0.4 targeted content */
.kj-big3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0 34px}
.kj-big3-card{text-align:center;border:1px solid rgba(214,179,90,.4);background:rgba(255,255,255,.04);border-radius:16px;padding:18px 15px 20px}
.kj-big3-card img{width:145px;height:145px;object-fit:contain;display:block;margin:0 auto 8px}
.kj-big3-card .kj-big3-label{color:#d6b35a;font-family:Arial,sans-serif;letter-spacing:2px;font-size:12px}
.kj-big3-card h3{margin:8px 0 10px}.kj-big3-card p{font-size:14px;line-height:1.55}
.kj-life-path-symbol img,.kj-chinese-symbol img{width:260px!important;height:260px!important}
.kj-colour-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:28px 0}
.kj-colour-card{text-align:center;padding:12px 8px;border:1px solid rgba(214,179,90,.35);border-radius:12px;background:rgba(255,255,255,.035)}
.kj-colour-swatch{width:68px;height:68px;display:block;border-radius:50%;margin:0 auto 10px;border:2px solid rgba(255,255,255,.45)}
.kj-keepsake-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}
.kj-keepsake-card{border:1px solid rgba(214,179,90,.35);border-radius:14px;background:rgba(255,255,255,.04);padding:18px;text-align:center}
.kj-keepsake-card h3{margin:6px 0 8px}.kj-crystal-icon,.kj-oil-icon{font-size:42px;line-height:1;color:#d6b35a;text-shadow:0 0 18px rgba(214,179,90,.35)}
@media(max-width:760px){.kj-big3-grid,.kj-colour-grid,.kj-keepsake-card-grid{grid-template-columns:1fr}}
@media print{
  .kj-book-page{min-height:0!important;height:auto!important;overflow:visible!important}
  .kj-book-inner{min-height:0!important;height:auto!important;overflow:visible!important}
  .kj-book-page h2,.kj-book-page h3{break-after:avoid-page!important;page-break-after:avoid!important}
  .kj-book-body p,.kj-book-body li{orphans:3;widows:3}
  .kj-mini-card,.kj-big3-card,.kj-reflection-box,.kj-affirmation-box,.kj-highlight-box,.kj-keepsake-card,.kj-colour-card,table,img{break-inside:avoid-page!important;page-break-inside:avoid!important}
  .kj-art-page,.kj-divider-page{width:8in!important;height:11in!important;min-height:11in!important;overflow:hidden!important}
  .kj-art-page .kj-art-wrap,.kj-divider-page .kj-divider-wrap{width:8in!important;height:11in!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .kj-art-page img,.kj-divider-page img{width:8in!important;height:11in!important;max-height:11in!important;object-fit:contain!important}
}


/* v1.0.6 astrology foundation */
.kj-wheel-wrap{max-width:700px;margin:18px auto;text-align:center}.kj-book-wheel{display:block;width:100%;height:auto;max-width:650px;margin:auto}.kj-chart-caption{text-align:center;font-size:20px;color:#d6b35a;letter-spacing:.6px}
.kj-energy-row{margin:16px 0}.kj-energy-label{display:flex;justify-content:space-between;font-weight:700;margin-bottom:6px}.kj-energy-track{height:16px;background:rgba(255,255,255,.09);border:1px solid rgba(214,179,90,.28);border-radius:999px;overflow:hidden}.kj-energy-track span{display:block;height:100%;background:linear-gradient(90deg,#9b7a3b,#e1c476);border-radius:999px}
.kj-aspects-table{width:100%;border-collapse:collapse;margin:22px 0}.kj-aspects-table th,.kj-aspects-table td{border:1px solid rgba(214,179,90,.28);padding:11px;text-align:left}.kj-aspects-table th{color:#d6b35a;background:rgba(214,179,90,.08)}.kj-aspect-symbol{text-align:center!important;font-size:22px;color:#e5c873}
.kj-aspect-def-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.kj-aspect-def{border:1px solid rgba(214,179,90,.34);border-radius:14px;padding:20px;background:rgba(255,255,255,.035)}.kj-aspect-def-symbol{font-size:42px;color:#d6b35a}.kj-major-aspect{padding:18px 0;border-bottom:1px solid rgba(214,179,90,.22)}.kj-major-aspect h3 span{font-size:14px;color:#d6b35a;font-weight:400}
@media(max-width:700px){.kj-aspect-def-grid{grid-template-columns:1fr}}
@media print{.kj-chart-page,.kj-energy-page,.kj-aspects-page,.kj-aspect-def-page,.kj-strong-aspects-page{break-inside:avoid-page;page-break-inside:avoid}.kj-book-wheel{max-width:6.6in}.kj-aspect-def,.kj-major-aspect,.kj-energy-row{break-inside:avoid-page;page-break-inside:avoid}}


/* v1.0.7 chart, elemental crystal and print refinements */
.kj-big3-card img{
  width:96px !important;
  height:96px !important;
  max-width:96px !important;
  object-fit:contain !important;
}
.kj-element-crystal-image{
  max-width:720px;
  margin:24px auto 30px;
  text-align:center;
}
.kj-element-crystal-image img{
  width:100%;
  height:auto;
  display:block;
  margin:0 auto;
  border-radius:14px;
}
@media print{
  @page{size:8in 11in;margin:0}
  #kj-premium-v2-root{
    width:8in !important;
    max-width:8in !important;
    margin:0 !important;
    padding:0 !important;
  }
  .kj-book-page{
    width:8in !important;
    max-width:8in !important;
    margin:0 !important;
    padding:.28in !important;
    box-sizing:border-box !important;
    min-height:0 !important;
    height:auto !important;
    overflow:visible !important;
    break-before:page !important;
    page-break-before:always !important;
    break-after:page !important;
    page-break-after:always !important;
  }
  .kj-book-page:first-of-type{
    break-before:auto !important;
    page-break-before:auto !important;
  }
  .kj-book-inner{
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:.32in !important;
    box-sizing:border-box !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
  }
  .kj-book-body{
    font-size:14px !important;
    line-height:1.55 !important;
  }
  .kj-book-page h1{font-size:31px !important}
  .kj-book-page h2{font-size:27px !important}
  .kj-book-page h3{font-size:18px !important;margin-top:20px !important}
  .kj-book-subtitle{font-size:15px !important;margin-bottom:20px !important}
  .kj-big3-grid{gap:10px !important;margin:18px 0 22px !important}
  .kj-big3-card{padding:12px 9px 14px !important}
  .kj-big3-card img{width:78px !important;height:78px !important;max-width:78px !important}
  .kj-big3-card p{font-size:11.5px !important;line-height:1.4 !important}
  .kj-wheel-wrap{max-width:6.45in !important;margin:8px auto 12px !important}
  .kj-book-wheel{max-width:6.35in !important}
  .kj-element-crystal-image{
    max-width:6.4in !important;
    margin:14px auto 18px !important;
    break-inside:avoid-page !important;
    page-break-inside:avoid !important;
  }
  .kj-element-crystal-image img{
    max-height:7.4in !important;
    object-fit:contain !important;
  }
  .kj-reflection-box,.kj-affirmation-box,.kj-highlight-box,
  .kj-big3-card,.kj-aspect-def,.kj-major-aspect,
  .kj-energy-row,.kj-element-crystal-image,table{
    break-inside:avoid-page !important;
    page-break-inside:avoid !important;
  }
  .kj-art-page,.kj-divider-page{
    padding:0 !important;
    width:8in !important;
    height:11in !important;
    min-height:11in !important;
    overflow:hidden !important;
  }
  .kj-art-page .kj-art-wrap,.kj-divider-page .kj-divider-wrap{
    width:8in !important;
    height:11in !important;
    max-width:8in !important;
    margin:0 !important;
  }
  .kj-art-page img,.kj-divider-page img{
    width:8in !important;
    height:11in !important;
    object-fit:contain !important;
    display:block !important;
  }
}


/* v1.0.8 definitive print-flow correction */
@media print {
  @page {
    size: 8in 11in;
    margin: 0;
  }

  html,
  body {
    width: 8in !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    overflow: visible !important;
    background: #071426 !important;
  }

  #kj-premium-v2-root,
  #kj-premium-v2-output {
    position: static !important;
    display: block !important;
    width: 8in !important;
    max-width: 8in !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #071426 !important;
  }

  /*
   * Normal written chapters now flow naturally.
   * Removing simultaneous break-before and break-after prevents the
   * blank pages shown in Chrome print preview.
   */
  .kj-book-page {
    display: block !important;
    position: relative !important;
    width: 8in !important;
    max-width: 8in !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: .28in !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    background: #071426 !important;
    break-before: auto !important;
    page-break-before: auto !important;
    break-after: auto !important;
    page-break-after: auto !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .kj-book-inner {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: .34in !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    background: #0d1c33 !important;
    border: 1px solid rgba(214,179,90,.48) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  /*
   * These are intentionally full-page assets and should begin and end
   * on their own physical page.
   */
  .kj-cover-page,
  .kj-art-page,
  .kj-divider-page {
    width: 8in !important;
    height: 11in !important;
    min-height: 11in !important;
    max-height: 11in !important;
    padding: 0 !important;
    overflow: hidden !important;
    break-before: page !important;
    page-break-before: always !important;
    break-after: page !important;
    page-break-after: always !important;
  }

  .kj-cover-page:first-child {
    break-before: auto !important;
    page-break-before: auto !important;
  }

  .kj-cover-page .kj-book-inner,
  .kj-cover-inner {
    width: 8in !important;
    height: 11in !important;
    min-height: 11in !important;
    padding: .65in !important;
    border: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  .kj-art-page .kj-art-wrap,
  .kj-divider-page .kj-divider-wrap {
    width: 8in !important;
    height: 11in !important;
    max-width: 8in !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .kj-art-page img,
  .kj-divider-page img {
    width: 8in !important;
    height: 11in !important;
    max-width: 8in !important;
    max-height: 11in !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
  }

  /*
   * Keep important components intact, while allowing long written
   * chapters to continue onto the next page instead of creating a
   * mostly empty page.
   */
  h1,
  h2,
  h3 {
    break-after: avoid-page !important;
    page-break-after: avoid !important;
  }

  p,
  li {
    orphans: 3 !important;
    widows: 3 !important;
  }

  .kj-mini-card,
  .kj-big3-card,
  .kj-reflection-box,
  .kj-affirmation-box,
  .kj-highlight-box,
  .kj-aspect-def,
  .kj-major-aspect,
  .kj-energy-row,
  .kj-element-crystal-image,
  .kj-colour-card,
  table,
  img {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  .kj-book-body {
    font-size: 13px !important;
    line-height: 1.48 !important;
  }

  .kj-book-page h1 {
    font-size: 29px !important;
  }

  .kj-book-page h2 {
    font-size: 25px !important;
    margin-bottom: 12px !important;
  }

  .kj-book-page h3 {
    font-size: 17px !important;
    margin-top: 17px !important;
    margin-bottom: 7px !important;
  }

  .kj-book-subtitle {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin-bottom: 16px !important;
  }

  .kj-big3-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 9px !important;
    margin: 14px 0 18px !important;
  }

  .kj-big3-card {
    padding: 9px 7px 10px !important;
  }

  .kj-big3-card img {
    width: 66px !important;
    height: 66px !important;
    max-width: 66px !important;
  }

  .kj-big3-card p {
    font-size: 10.5px !important;
    line-height: 1.34 !important;
    margin-bottom: 4px !important;
  }

  .kj-wheel-wrap {
    max-width: 6.3in !important;
    margin: 6px auto 10px !important;
  }

  .kj-book-wheel {
    max-width: 6.15in !important;
  }

  .kj-element-crystal-image {
    max-width: 6.15in !important;
    margin: 10px auto 14px !important;
  }

  .kj-element-crystal-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 6.8in !important;
    object-fit: contain !important;
  }

  .kj-aspects-table th,
  .kj-aspects-table td,
  .kj-placement-table th,
  .kj-placement-table td {
    padding: 7px 8px !important;
    font-size: 11px !important;
  }

  .kj-writing-lines {
    min-height: 120px !important;
  }

  .kj-writing-lines-large {
    min-height: 210px !important;
  }
}


/* v1.0.9 deeper reading and robust browser-PDF pagination */
.kj-deep-reading-page .kj-book-body {
  max-width: 760px;
  margin: 0 auto;
}
.kj-deep-reading-page ul,
.kj-deep-reading-page ol {
  margin: 10px 0 22px 22px;
}
.kj-deep-reading-page li {
  margin-bottom: 8px;
}

@media print {
  @page {
    size: 8in 11in;
    margin: .18in;
  }

  html,
  body {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #071426 !important;
  }

  #kj-premium-v2-root,
  #kj-premium-v2-output {
    position: static !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #071426 !important;
  }

  .kj-book-page {
    width: auto !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: .18in !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    break-before: auto !important;
    page-break-before: auto !important;
    break-after: auto !important;
    page-break-after: auto !important;
    background: #071426 !important;
  }

  .kj-book-inner {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: .30in !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    background: #0d1c33 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  /* One deliberate page break after full-page material only. */
  .kj-cover-page,
  .kj-art-page,
  .kj-divider-page {
    break-before: auto !important;
    page-break-before: auto !important;
    break-after: page !important;
    page-break-after: always !important;
  }

  .kj-cover-page {
    min-height: 10.15in !important;
    height: 10.15in !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  .kj-cover-page .kj-book-inner,
  .kj-cover-inner {
    min-height: 10.15in !important;
    height: 10.15in !important;
    padding: .58in !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .kj-art-page,
  .kj-divider-page {
    min-height: 10.15in !important;
    height: 10.15in !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .kj-art-page .kj-art-wrap,
  .kj-divider-page .kj-divider-wrap {
    width: 100% !important;
    height: 10.15in !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .kj-art-page img,
  .kj-divider-page img {
    width: 100% !important;
    height: 10.15in !important;
    max-height: 10.15in !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
  }

  .kj-deep-reading-page {
    break-before: page !important;
    page-break-before: always !important;
  }

  .kj-deep-reading-page .kj-book-inner {
    padding: .34in !important;
  }

  .kj-deep-reading-page .kj-book-body {
    font-size: 12.7px !important;
    line-height: 1.47 !important;
  }

  .kj-deep-reading-page h2 {
    font-size: 24px !important;
    margin-bottom: 8px !important;
  }

  .kj-deep-reading-page h3 {
    font-size: 16.5px !important;
    margin-top: 15px !important;
    margin-bottom: 6px !important;
  }

  .kj-deep-reading-page p {
    margin-bottom: 10px !important;
  }

  .kj-deep-reading-page ul,
  .kj-deep-reading-page ol {
    margin-top: 5px !important;
    margin-bottom: 12px !important;
  }

  .kj-deep-reading-page li {
    margin-bottom: 4px !important;
  }

  .kj-reflection-box,
  .kj-affirmation-box {
    margin-top: 14px !important;
    padding: 12px 16px !important;
  }

  .kj-cover-details {
    margin: 18px auto !important;
    padding: 16px 20px !important;
  }

  .kj-cover-details p {
    margin: 5px 0 !important;
    font-size: 13px !important;
  }

  .kj-prepared {
    margin-top: 12px !important;
  }
}


/* v1.0.10 FINAL ISOLATED 8 x 11 PRINT SYSTEM */
@media print {
  @page {
    size: 8in 11in;
    margin: 0;
  }

  html,
  body {
    width: 8in !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #071426 !important;
    overflow: visible !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Print only the generated book—not the WordPress theme, admin bar or footer. */
  body * {
    visibility: hidden !important;
  }

  #kj-premium-v2-output,
  #kj-premium-v2-output * {
    visibility: visible !important;
  }

  #kj-premium-v2-output {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 8in !important;
    max-width: 8in !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #071426 !important;
    overflow: visible !important;
  }

  .kj-print-bar,
  .kj-print-actions,
  button {
    display: none !important;
  }

  .kj-book-page {
    position: relative !important;
    width: 8in !important;
    max-width: 8in !important;
    min-height: 11in !important;
    height: auto !important;
    margin: 0 !important;
    padding: .28in !important;
    box-sizing: border-box !important;
    background: #071426 !important;
    overflow: visible !important;
    break-after: page !important;
    page-break-after: always !important;
    break-before: auto !important;
    page-break-before: auto !important;
    box-decoration-break: clone !important;
    -webkit-box-decoration-break: clone !important;
  }

  .kj-book-page:last-child {
    break-after: auto !important;
    page-break-after: auto !important;
  }

  .kj-book-inner {
    width: 100% !important;
    max-width: none !important;
    min-height: 10.44in !important;
    height: auto !important;
    margin: 0 !important;
    padding: .34in !important;
    box-sizing: border-box !important;
    background: #0d1c33 !important;
    border: 1px solid rgba(214,179,90,.52) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    box-decoration-break: clone !important;
    -webkit-box-decoration-break: clone !important;
  }

  /* Cover fills one exact page. */
  .kj-cover-page {
    width: 8in !important;
    height: 11in !important;
    min-height: 11in !important;
    max-height: 11in !important;
    padding: .28in !important;
    overflow: hidden !important;
  }

  .kj-cover-page .kj-book-inner,
  .kj-cover-inner {
    width: 100% !important;
    height: 10.44in !important;
    min-height: 10.44in !important;
    max-height: 10.44in !important;
    margin: 0 !important;
    padding: .58in !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  /* Divider and artwork pages fill one exact page. */
  .kj-art-page,
  .kj-divider-page {
    width: 8in !important;
    height: 11in !important;
    min-height: 11in !important;
    max-height: 11in !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .kj-art-page .kj-art-wrap,
  .kj-divider-page .kj-divider-wrap {
    width: 8in !important;
    height: 11in !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .kj-art-page img,
  .kj-divider-page img {
    width: 8in !important;
    height: 11in !important;
    max-width: 8in !important;
    max-height: 11in !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
  }

  /* Typography compact enough to fit intentional pages without becoming tiny. */
  .kj-book-body {
    font-size: 12.4px !important;
    line-height: 1.46 !important;
  }

  .kj-book-page h1 {
    font-size: 28px !important;
    margin: 0 0 10px !important;
  }

  .kj-book-page h2 {
    font-size: 24px !important;
    margin: 0 0 9px !important;
  }

  .kj-book-page h3 {
    font-size: 16px !important;
    margin: 14px 0 5px !important;
  }

  .kj-book-page p {
    margin: 0 0 9px !important;
  }

  .kj-book-page ul,
  .kj-book-page ol {
    margin: 5px 0 11px 20px !important;
  }

  .kj-book-page li {
    margin: 0 0 4px !important;
  }

  .kj-book-subtitle {
    font-size: 13.5px !important;
    line-height: 1.35 !important;
    margin-bottom: 14px !important;
  }

  h1, h2, h3 {
    break-after: avoid-page !important;
    page-break-after: avoid !important;
  }

  p, li {
    orphans: 3 !important;
    widows: 3 !important;
  }

  .kj-reflection-box,
  .kj-affirmation-box,
  .kj-highlight-box,
  .kj-mini-card,
  .kj-big3-card,
  .kj-aspect-def,
  .kj-major-aspect,
  .kj-energy-row,
  .kj-element-crystal-image,
  .kj-two-symbols,
  .kj-colour-card,
  table,
  img {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  .kj-reflection-box,
  .kj-affirmation-box {
    padding: 11px 14px !important;
    margin-top: 12px !important;
  }

  .kj-two-symbols {
    gap: 18px !important;
    margin: 10px auto 16px !important;
  }

  .kj-two-symbols img {
    max-height: 2.05in !important;
    width: auto !important;
    object-fit: contain !important;
  }

  .kj-cover-details {
    margin: 16px auto !important;
    padding: 15px 20px !important;
  }

  .kj-cover-details p {
    margin: 4px 0 !important;
    font-size: 12.5px !important;
  }

  .kj-prepared {
    margin-top: 10px !important;
  }

  .kj-big3-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
  }

  .kj-big3-card img {
    width: 62px !important;
    height: 62px !important;
  }

  .kj-wheel-wrap {
    max-width: 6.2in !important;
    margin: 5px auto 8px !important;
  }

  .kj-book-wheel {
    max-width: 6.1in !important;
  }

  .kj-placement-table th,
  .kj-placement-table td,
  .kj-aspects-table th,
  .kj-aspects-table td {
    padding: 6px 7px !important;
    font-size: 10.6px !important;
  }
}


/* v1.0.19 final print-layout refinements */
@media print {
  /* Keep a genuine bottom safety area so copy never sits on the gold border. */
  .kj-print-paginated-page .kj-book-inner,
  .kj-book-page:not(.kj-art-page):not(.kj-divider-page) .kj-book-inner {
    padding-bottom: .50in !important;
  }

  /* Birth flower and birthstone must remain side by side in the PDF. */
  .kj-two-symbols {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .24in !important;
    width: 100% !important;
    align-items: start !important;
  }
  .kj-two-symbols .kj-symbol-card {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .kj-two-symbols .kj-symbol-card img {
    width: 1.95in !important;
    height: 1.95in !important;
    max-width: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  /* Portrait artwork gets an even dark margin on every side. */
  .kj-art-page {
    padding: .24in !important;
    background: #071426 !important;
  }
  .kj-art-page .kj-art-wrap {
    width: 7.52in !important;
    height: 10.52in !important;
    background: #071426 !important;
  }
  .kj-art-page img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  /* Divider artwork is a deliberate banner page: no white gaps and title over image. */
  .kj-divider-page {
    padding: 0 !important;
    background: #071426 !important;
  }
  .kj-divider-page .kj-divider-wrap {
    position: relative !important;
    width: 8in !important;
    height: 11in !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    background: #071426 !important;
  }
  .kj-divider-page img {
    width: 8in !important;
    height: 4.35in !important;
    margin-top: 2.55in !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  .kj-divider-page h2 {
    position: absolute !important;
    left: .62in !important;
    right: .62in !important;
    top: 5.35in !important;
    bottom: auto !important;
    margin: 0 !important;
    padding: .17in .24in !important;
    text-align: center !important;
    background: rgba(7,20,38,.82) !important;
    color: #f7e5ac !important;
    border: 1px solid rgba(214,179,90,.72) !important;
    font-size: 22px !important;
    letter-spacing: 1.4px !important;
  }

  /* Slightly tighten only pages where the paginator explicitly asks for it. */
  .kj-tight-print-page .kj-book-body {
    font-size: 11.9px !important;
    line-height: 1.40 !important;
  }
  .kj-tight-print-page .kj-book-page h3,
  .kj-tight-print-page h3 {
    margin-top: 10px !important;
  }
  .kj-tight-print-page p { margin-bottom: 7px !important; }
  .kj-tight-print-page ul,
  .kj-tight-print-page ol { margin-bottom: 8px !important; }
}


/* v1.0.20 border-safety spacing */
@media print {
  /* Give every standard text page a safer inset so copy never crowds the gold rule. */
  .kj-book-page:not(.kj-art-page):not(.kj-divider-page):not(.kj-cover-page) .kj-book-inner {
    padding: .42in .46in .60in !important;
  }

  /* Continuation pages need the same safety inset as their opening page. */
  .kj-print-paginated-page .kj-book-inner {
    padding: .42in .46in .60in !important;
  }

  /* Keep dense copy away from the bottom edge without changing artwork pages. */
  .kj-book-body,
  .kj-book-inner > :last-child {
    margin-bottom: 0 !important;
  }
}


/* v1.0.21 print spacing adjustments */
.kj-book-inner p:last-child,
.kj-book-inner ul:last-child,
.kj-book-inner ol:last-child{
    margin-bottom:32px !important;
}

.kj-book-inner{
    min-height:auto !important;
    box-sizing:border-box;
}

.kj-reflection-box,
.kj-affirmation-box{
    margin-bottom:24px;
}

@media print{
    .kj-book-inner{
        padding:60px 58px 78px 58px !important;
    }
}

/* v1.0.31 — visual border clearance only.
 * Do not alter pagination or content measurements. The written-page inner
 * panel is extended downward into the existing outer footer area so the
 * gold bottom rule sits below the final line of copy.
 */
@media print {
  .kj-book-page:not(.kj-cover-page):not(.kj-art-page):not(.kj-divider-page) .kj-book-inner,
  .kj-print-paginated-page .kj-book-inner {
    min-height: 10.60in !important;
  }
}

/* v1.0.32 cover generator buttons — screen only */
.kj-print-toolbar.no-print {
    flex-wrap: wrap;
    gap: 10px;
}
.kj-print-toolbar.no-print button {
    white-space: normal;
}
@media (max-width: 760px) {
    .kj-print-toolbar.no-print button {
        width: 100%;
    }
}


/* v1.0.57 Zodiac flower and crystal correspondences */
.kj-zodiac-correspondence-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin:22px 0 26px;
}
.kj-correspondence-card{
  border:1px solid rgba(201,155,69,.75);
  padding:20px 22px;
  background:rgba(255,255,255,.025);
  box-sizing:border-box;
}
.kj-correspondence-card h3{
  margin-top:0;
}
.kj-correspondence-card ul{
  margin:12px 0 0;
  padding-left:20px;
}
.kj-correspondence-card li{
  margin:7px 0;
}
@media (max-width:760px){
  .kj-zodiac-correspondence-grid{
    grid-template-columns:1fr;
  }
}

/* Gelato Book Builder – v1.0.63 */
.kj-gelato-builder{max-width:920px;margin:18px auto 30px;padding:22px;border:1px solid #c69a45;background:#fffdf9;box-shadow:0 8px 24px rgba(0,0,0,.08);color:#0b1a31}
.kj-gelato-builder[hidden]{display:none!important}
.kj-gelato-builder h3{margin:0 0 8px;color:#9b6d1c;font-family:Georgia,serif}
.kj-gelato-builder p{margin:0 0 16px}
.kj-gelato-builder label{display:block;margin:14px 0;font-size:15px}
.kj-gelato-builder label strong{display:block;margin-bottom:6px}
.kj-gelato-builder input[type=file]{display:block;width:100%;box-sizing:border-box;padding:10px;border:1px solid #c9c2b7;background:#fff}
.kj-gelato-builder button{margin-top:8px;padding:11px 18px;border:0;border-radius:4px;background:#0b1a31;color:#fff;cursor:pointer;font-weight:700}
.kj-gelato-builder button:disabled{opacity:.6;cursor:wait}
#kj-gelato-status{margin-top:14px;font-weight:600}


/* =========================================================
   PROJECT ATLAS – MERCURY PRODUCTION PROOF v0.2
   Locked direction: cream editorial + navy framed hero page
   ========================================================= */
.kj-atlas-editorial-page,
.kj-atlas-hero-page {
  width: 8in;
  height: 11in;
  min-height: 11in;
  max-height: 11in;
  box-sizing: border-box;
  overflow: hidden;
  break-after: page;
  page-break-after: always;
  position: relative;
}

.kj-atlas-editorial-page {
  padding: .34in;
  background: #f4eedf;
  color: #253044;
}
.kj-atlas-editorial-border {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1.4px solid #b08a42;
  position: relative;
  padding: .18in;
}
.kj-atlas-editorial-border::before {
  content: '';
  position: absolute;
  inset: .09in;
  border: .55px solid rgba(176,138,66,.55);
  pointer-events: none;
}
.kj-atlas-editorial-border::after {
  content: '✦';
  position: absolute;
  left: 50%;
  bottom: .12in;
  transform: translateX(-50%);
  color: #b08a42;
  background: #f4eedf;
  padding: 0 .10in;
  font-size: 12px;
}
.kj-atlas-editorial-content {
  position: relative;
  z-index: 1;
  height: 100%;
  box-sizing: border-box;
  padding: .28in .43in .30in;
  font-family: Georgia, 'Times New Roman', serif;
}
.kj-atlas-glyph {
  text-align: center;
  color: #b08a42;
  font-size: 29px;
  line-height: 1;
  margin: .02in 0 .06in;
}
.kj-atlas-editorial-page h2 {
  color: #14213a !important;
  font-size: 29px !important;
  line-height: 1.05 !important;
  letter-spacing: 3.8px !important;
  margin: 0 0 .05in !important;
  text-align: center !important;
  font-weight: 500 !important;
}
.kj-atlas-deck {
  color: #977331;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 10.5px !important;
  margin: 0 0 .23in !important;
}
.kj-atlas-lead {
  font-size: 16px !important;
  line-height: 1.58 !important;
  text-align: center;
  font-style: italic;
  color: #2b3444;
  margin: 0 auto .24in !important;
  max-width: 5.7in;
}
.kj-atlas-editorial-page h3 {
  color: #9c7632 !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  letter-spacing: 1.6px !important;
  margin: .16in 0 .06in !important;
}
.kj-atlas-editorial-page p {
  color: #333a45 !important;
  font-size: 12.3px !important;
  line-height: 1.52 !important;
  margin: 0 0 .11in !important;
}
.kj-atlas-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .12in;
  margin: .18in 0 .20in;
  padding: .14in 0;
  border-top: .7px solid rgba(176,138,66,.65);
  border-bottom: .7px solid rgba(176,138,66,.65);
}
.kj-atlas-facts div { text-align: center; }
.kj-atlas-facts span,
.kj-atlas-reflection span {
  display: block;
  color: #a17a32;
  font-size: 8.5px;
  letter-spacing: 1.2px;
  margin-bottom: .04in;
}
.kj-atlas-facts strong {
  color: #1b2942;
  font-weight: 500;
  font-size: 11px;
}
.kj-atlas-reflection {
  margin-top: .20in;
  padding: .14in .17in .12in;
  background: rgba(209,192,151,.18);
  border-left: 2px solid #b08a42;
}
.kj-atlas-reflection p {
  font-style: italic;
  margin: 0 !important;
  color: #253044 !important;
}
.kj-atlas-closing {
  text-align: center;
  font-style: italic;
  color: #9c7632 !important;
  margin-top: .22in !important;
  font-size: 11.5px !important;
}

.kj-atlas-hero-page {
  background: #071426;
  padding: .33in;
  color: #f7e7b4;
}
.kj-atlas-hero-frame {
  position: relative;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1.6px solid #c7a251;
  border-radius: 48% 48% 12px 12px / 11% 11% 12px 12px;
  padding: .13in;
  overflow: hidden;
  background: #0a1930;
  box-shadow: inset 0 0 0 .06in #071426, inset 0 0 0 calc(.06in + 1px) rgba(199,162,81,.55);
}
.kj-atlas-hero-emblem {
  position: absolute;
  top: .11in;
  left: 50%;
  transform: translateX(-50%);
  color: #d0ae63;
  font-size: 13px;
  letter-spacing: 5px;
  z-index: 5;
  text-shadow: 0 1px 4px #071426;
}
.kj-atlas-hero-art {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 46% 46% 6px 6px / 10% 10% 6px 6px;
  filter: saturate(.92) contrast(1.03);
}
.kj-atlas-museum-panel {
  position: absolute;
  right: .34in;
  bottom: 1.02in;
  width: 2.15in;
  box-sizing: border-box;
  background: rgba(244,238,223,.96);
  color: #263044;
  border: 1.2px solid #b08a42;
  border-radius: 7px;
  padding: .15in .16in .14in;
  text-align: center;
  box-shadow: 0 8px 22px rgba(0,0,0,.30);
  z-index: 6;
}
.kj-atlas-museum-panel::before {
  content: '';
  position: absolute;
  inset: .055in;
  border: .5px solid rgba(176,138,66,.52);
  border-radius: 4px;
  pointer-events: none;
}
.kj-atlas-panel-glyph { color:#a27b34; font-size:21px; line-height:1; margin-bottom:.03in; }
.kj-atlas-panel-kicker { color:#8b692e; font-size:8.5px; letter-spacing:1.5px; }
.kj-atlas-panel-sign { color:#14213a; font-size:20px; line-height:1.15; margin:.04in 0; font-family:Georgia,'Times New Roman',serif; }
.kj-atlas-panel-meta { color:#4a4d53; font-size:9.7px; line-height:1.35; }
.kj-atlas-panel-rule { height:1px; background:rgba(176,138,66,.55); margin:.09in .15in; }
.kj-atlas-panel-label { color:#8b692e; font-size:7.8px; letter-spacing:1px; margin-top:.055in; }
.kj-atlas-panel-copy { color:#343b48; font-size:8.7px; line-height:1.35; }
.kj-atlas-cartouche {
  position:absolute;
  left:50%;
  bottom:.20in;
  transform:translateX(-50%);
  min-width:2.35in;
  padding:.08in .24in .07in;
  border:1px solid #c7a251;
  background:#071426;
  color:#e2c477;
  text-align:center;
  z-index:7;
}
.kj-atlas-cartouche span { display:block; font-size:11px; letter-spacing:2.2px; }
.kj-atlas-cartouche small { display:block; margin-top:.02in; color:#d8c99d; font-size:8px; letter-spacing:1px; font-style:italic; }

@media print {
  .kj-atlas-editorial-page,
  .kj-atlas-hero-page {
    width: 8in !important;
    height: 11in !important;
    min-height: 11in !important;
    max-height: 11in !important;
    overflow: hidden !important;
    break-after: page !important;
    page-break-after: always !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}
