@charset "UTF-8";
*, *::before, *::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  background: none;
  text-decoration: none;
  outline: none;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "onum", "kern", "liga", "clig", "calt";
}

:root {
  --c-bg-dark: hsla(212, 32%, 12%, 1.00);
  --c-bg: hsla(209, 31%, 17%, 1.00);
  --c-bg-light: hsla(210, 30%, 20%, 1.00);
  --c-border-light: hsla(210, 30%, 25%, 1.00);
  --c-border-dark: hsla(210, 30%, 15%, 1.00);
  --c-border-pdf-light: hsla(210, 30%, 25%, 1.00);
  --c-text: hsla(208, 38%, 81%, 1.00);
  --c-text-dark: hsla(205, 22%, 52%, 1.00);
  --c-text-title: hsla(104, 100%, 100%, 1.00);
  --c-bg-player: hsla(209, 31%, 32%, 1.00);
  --f-family: "Libre Baskerville", serif;
  --f-sans: -apple-system, system-ui, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  --f-title: "Halant", serif;
  --f-mono: Courier New, Courier, Lucida Sans Typewriter, Lucida Typewriter, monospace;
  --f-size: 18px;
  --f-height: 36px;
  --f-weight: 400;
  --f-scale-s: 0.848400;
  --f-scale-m: 1.414;
  --f-scale-l: 1.999;
  --f-scale-xl: 2.827;
  --f-scale-xxl: 3.998;
  --l-column: 24rem;
  --l-spacer-small: 0.5rem;
  --l-spacer: 1rem;
  --l-spacer-medium: 2rem;
  --l-spacer-large: 3rem;
  --l-spacer-xlarge: 4rem;
  font-size: var(--f-height);
}
@media (max-width: 799px) {
  :root {
    --l-spacer-large: 2rem;
    --l-spacer-xlarge: 3rem;
  }
}
@media (max-width: 699px) {
  :root {
    --l-spacer-large: 1.5rem;
    --l-spacer-medium: 1.5rem;
    --l-spacer-xlarge: 2.5rem;
    --f-size: 16px;
    --f-height: 32px;
  }
}
@media (max-width: 549px) {
  :root {
    --f-size: 15px;
    --f-height: 30px;
    --l-spacer-large: 1rem;
    --l-spacer-medium: 1rem;
    --l-spacer-small: 0.25rem;
    --l-spacer-xlarge: 2rem;
    --f-scale-s: 0.889;
    --f-scale-m: 1.333;
    --f-scale-l: 1.777;
    --f-scale-xl: 2.369;
    --f-scale-xxl: 3.157;
  }
}

body {
  font-size: var(--f-size);
  line-height: var(--f-height);
  font-family: var(--f-family);
  font-weight: var(--f-weight);
  background: var(--c-bg-dark);
  color: var(--c-text);
}

#book-pages {
  margin: 0 auto;
  max-width: var(--l-column);
}

body {
  padding: 0 var(--l-spacer-small);
}

html {
  scroll-behavior: smooth;
}

:focus {
  border: 1px dashed white;
}

/* SCREEN (optional) */
body.page-template-page-secret-print {
  background: var(--c-bg-dark);
  color: #e6edf3;
}
body.page-template-page-secret-print .tip {
  margin-bottom: 2rem;
}
body.page-template-page-secret-print .content-break,
body.page-template-page-secret-print .tip-meta {
  padding-top: 2rem;
}
body.page-template-page-secret-print img {
  max-width: 100%;
  height: auto;
}
body.page-template-page-secret-print .book-contents h1 {
  display: block;
  padding-top: 2rem;
}

/* PRINT */
@media print {
  /* 0) Always keep backgrounds */
  html, body, * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  /* 1) Zero outer spacing so content can touch edges */
  html, body {
    margin: 0 !important;
    padding: 0 !important;
  }
  /* 2) Dark canvas on the root and the print template */
  html,
  body,
  body.page-template-page-secret-print {
    background: var(--c-bg-dark) !important;
    color: #e6edf3 !important;
  }
  /* 3) Make the container full width */
  body.page-template-page-secret-print #book-pages {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* 4) Remove card styling so the dark body shows edge-to-edge */
  body.page-template-page-secret-print .book-page {
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important; /* avoid white “paper” rims from margins */
    padding: 0 !important;
  }
  /* 5) Typical paged-media fixes */
  body.page-template-page-secret-print .content-break,
  body.page-template-page-secret-print .tip {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  body.page-template-page-secret-print h2,
  body.page-template-page-secret-print h3 {
    break-after: avoid;
  }
  body.page-template-page-secret-print a::after {
    content: "" !important;
  }
  body.page-template-page-secret-print nav,
  body.page-template-page-secret-print footer,
  body.page-template-page-secret-print .share,
  body.page-template-page-secret-print .cookie-banner {
    display: none !important;
  }
  li.list-content-break {
    padding-top: 4em;
    page-break-before: always; /* forces new page before this item */
  }
}
/* Page box; Chromium ignores page background, but margin=0 removes white gutters */
@page {
  size: A4;
  margin-top: 2cm; /* creates fixed padding on every page */
}
@page {
  @top-center {
    content: ""; /* you can also inject running headers here */
  }
}
img {
  display: block;
  width: 100%;
  height: auto;
}
.tip-content img {
  padding-left: var(--l-spacer-large);
  padding-right: var(--l-spacer-large);
}

.book-page {
  border-radius: 2px;
  background: var(--c-bg);
}
.book-page:not(:last-child) {
  margin-bottom: var(--l-spacer-large);
}
.book-page h2 {
  font-family: var(--f-title);
  font-size: calc(var(--f-size) * var(--f-scale-l));
  line-height: 1.3rem;
  padding-top: 0.35rem;
  padding-bottom: 0.35rem;
  color: white;
  font-weight: bold;
  padding-right: var(--l-spacer-large);
  padding-left: var(--l-spacer-large);
  margin-top: var(--l-spacer-large);
  margin-bottom: var(--l-spacer-small);
  position: relative;
}
.book-page h2::before {
  transform: translateX(-150%);
  position: absolute;
}
@media (min-width: 700px) {
  .book-page h2::before {
    content: attr(data-emoji);
  }
}
.book-page h3 {
  color: white;
  font-weight: bold;
  font-size: var(--f-size);
  line-height: 1rem;
  padding-right: var(--l-spacer-large);
  padding-left: var(--l-spacer-large);
  margin-top: var(--l-spacer-medium);
  margin-bottom: var(--l-spacer-small);
}
.book-page code {
  background: var(--c-bg-dark);
  padding: 2px 4px;
}
.book-page p a {
  color: white;
  border-bottom: 1px solid white;
}
.book-page p strong {
  font-weight: bold;
}
.book-page ul li.yay,
.book-page ul li.nay {
  list-style: none;
}
.book-page ul li.nay {
  margin-bottom: var(--l-spacer-small);
}
.book-page ul li.yay::before {
  content: "✅";
  transform: translateX(-140%);
  position: absolute;
}
.book-page ul li.nay::before {
  content: "🚫";
  transform: translateX(-140%);
  position: absolute;
}

.archive-page {
  display: block;
  padding-top: var(--l-spacer-large);
  padding-bottom: var(--l-spacer-large);
}
.archive-page ol.contents {
  list-style-type: upper-alpha;
}
.archive-page ol.contents-tips {
  padding-left: var(--l-spacer-xlarge);
}
@media (max-width: 699px) {
  .archive-page ol.contents-tips {
    padding-left: var(--l-spacer-xlarge);
  }
}
.archive-page ol.contents-tips li:last-child {
  display: none;
}
.archive-page .tip-content img {
  padding: none;
  background: none;
}
.archive-page img.fire {
  padding: 0;
  margin: var(--l-spacer-large) auto var(--l-spacer-medium) auto;
  max-width: 60px;
  height: auto;
}

.meta-title {
  text-align: center;
}

.meta-intro p {
  text-align: center;
}
.meta-intro .tip-title > h1 {
  display: block;
  text-align: center !important;
}

.meta-intro img.isbn {
  padding: 0;
  margin: 0 auto;
  max-width: 120px;
  height: auto;
}

.book-contents img.fire {
  padding: 0;
  margin: var(--l-spacer-large) auto 0 auto;
  max-width: 60px;
  height: auto;
}

.foreward img {
  padding: 0;
  height: auto;
}
.foreward img.foreward-rob {
  border-radius: 9999px;
  max-width: 80px;
}
.foreward img.foreward-signature {
  max-width: 100px;
}

.standalone-page h1 {
  position: relative;
}
.standalone-page h1::before {
  transform: translateX(-130%);
  position: absolute;
}
.standalone-page .tip-content ul li a,
.standalone-page .tip-content ol li a {
  color: white;
  border-bottom: 1px solid white;
}

.private a {
  color: --c-text-title;
  border-bottom: 1px dashed;
  border-bottom-color: --c-text-title;
}

.tip {
  padding: var(--l-spacer-large) 0 var(--l-spacer-medium);
}

.tip-meta,
.tip-title,
.tip-share,
.tip-content .tip-audio,
.tip-content > p,
.tip-content > blockquote,
.tip-content > ul,
.tip-content > ol,
.tip-content > a:not(.tip-image) {
  padding-right: var(--l-spacer-large);
  padding-left: var(--l-spacer-large);
}

.tip-meta {
  font-size: calc(var(--f-size) * var(--f-scale-s));
  line-height: 1rem;
  font-family: var(--f-sans);
  color: var(--c-text-dark);
}

.tip-title {
  font-size: calc(var(--f-size) * var(--f-scale-xl));
  line-height: 1.6rem;
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  font-family: var(--f-title);
  color: var(--c-text-title);
  font-weight: 700;
}
@media (max-width: 549px) {
  .tip-title {
    line-height: 1.4rem;
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
  }
}

.tip-content {
  margin-top: var(--l-spacer);
}
.tip-content > p, .tip-content > blockquote, .tip-content > ol, .tip-content > ul {
  margin-bottom: var(--l-spacer);
}
.tip-content ol.with-links li a,
.tip-content ul.with-links li a {
  color: var(--c-text-title);
  text-decoration: underline;
}
.tip-content p.testimonial {
  font-family: var(--f-sans);
  font-size: calc(var(--f-size) * var(--f-scale-m));
  line-height: 1rem;
  background: white;
  color: var(--c-bg-dark);
  margin: var(--l-spacer-medium) var(--l-spacer-large);
  border-radius: 2px;
}
.tip-content .testimonial-text {
  display: block;
  padding: var(--l-spacer-medium) 0 var(--l-spacer-small) 0;
}
.tip-content .testimonial-author {
  color: var(--c-bg-light);
  font-size: calc(var(--f-size) * var(--f-scale-s));
  line-height: 1rem;
  display: block;
  padding: 0 0 var(--l-spacer-medium) 0;
}

.embed-container {
  background: var(--c-bg-light);
  position: relative;
  padding-bottom: 66.67%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  height: auto;
  margin-bottom: var(--l-spacer);
}

.embed-container iframe,
.embed-container object,
.embed-container video,
.embed-container embed {
  padding-right: var(--l-spacer-large);
  padding-left: var(--l-spacer-large);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.tip-audio {
  margin-bottom: var(--l-spacer);
}

.tip-image {
  display: block;
  margin-top: var(--l-spacer-medium);
  margin-bottom: var(--l-spacer-medium);
}

.tip-content > img {
  margin-top: var(--l-spacer-medium);
  margin-bottom: var(--l-spacer-medium);
}

.resources {
  padding: var(--l-spacer-large);
  margin-top: var(--l-spacer-medium);
  background: var(--c-bg-light);
  list-style: none;
}
.resources li:not(:last-child) {
  margin-bottom: var(--l-spacer);
  padding-bottom: var(--l-spacer);
  border-bottom: 1px solid var(--c-border-dark);
  box-shadow: 0 1px var(--c-border-light);
}
.resources a {
  color: var(--c-text-title);
}

.tip-credits .tip-meta {
  display: none;
}
.tip-credits .tip-share {
  display: none;
}

.kindle-show {
  display: none;
}

.tip-share {
  margin: var(--l-spacer-medium) 0 0;
}
.tip-share:hover .tip-share-links {
  opacity: 1;
}

.blog .tip-share-links {
  transition: opacity 500ms;
  opacity: 0.3;
}

.archive .tip-share-links {
  transition: opacity 500ms;
  opacity: 0.3;
}

.tip-share-links button {
  display: none;
}

.tip-share-links ul {
  list-style: none;
  text-align: center;
  display: flex;
  justify-content: center;
}

.tip-share-links li {
  font-size: calc(var(--f-size) * var(--f-scale-s));
  line-height: 1rem;
  font-family: var(--f-sans);
  color: var(--c-text-dark);
  padding: 0 var(--l-spacer-small);
}

.private {
  font-size: calc(var(--f-size) * var(--f-scale-s));
  line-height: 1rem;
  font-family: var(--f-sans);
  color: var(--c-text-dark);
  color: var(--c-text-dark);
  text-align: center;
  padding: var(--l-spacer-small) 0;
}

.archive-header {
  padding: var(--l-spacer-xlarge) var(--l-spacer-large) var(--l-spacer-large);
}
.archive-header .archive-meta {
  font-size: calc(var(--f-size) * var(--f-scale-s));
  line-height: 1rem;
  font-family: var(--f-sans);
  color: var(--c-text-dark);
}
.archive-header .archive-title {
  font-size: calc(var(--f-size) * var(--f-scale-xl));
  line-height: 1.6rem;
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  font-family: var(--f-title);
  color: var(--c-text-title);
  font-weight: 700;
}
@media (max-width: 549px) {
  .archive-header .archive-title {
    line-height: 1.4rem;
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
  }
}
.archive-header .archive-description {
  font-family: var(--f-sans);
  font-size: calc(var(--f-size) * var(--f-scale-m));
  color: var(--c-text-light);
  line-height: 1rem;
}
.archive-header .archive-description a {
  color: var(--c-text-light);
  border-bottom: 1px solid;
  border-bottom-color: var(--c-text-light);
}

.footer-fire {
  text-align: center;
}
.footer-fire img {
  margin: var(--l-spacer-large) auto;
  max-width: 120px;
  height: auto;
}
