/* Ouroboros: source editorial styles scoped to the imported article body.
 * The native reader title, byline, navigation and lead cover retain site styles.
 */
.public-shell article.prose.ouroboros .ouroboros-body{
    --ob-ink:#0a0a0a;
    --ob-paper:#131210;
    --ob-raise:#191714;
    --ob-rule:#2c2822;
    --ob-text:#e7e3db;
    --ob-muted:#a39c91;
    --ob-brass:#d8b26a;
    --ob-verify:#7fb2a6;
    --ob-serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
    --ob-sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
    --ob-prose:39rem;
    --ob-wide:47rem;
    color-scheme:dark;
  }
  .public-shell article.prose.ouroboros .ouroboros-body *{box-sizing:border-box}
  .public-shell article.prose.ouroboros .ouroboros-body{-webkit-text-size-adjust:100%}
  .public-shell article.prose.ouroboros .ouroboros-body{
    margin:0;
    background:var(--ob-ink);
    color:var(--ob-text);
    font-family:var(--ob-serif);
    font-size:19px;
    line-height:1.72;
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased;
  }
  .public-shell article.prose.ouroboros .ouroboros-body{max-width:var(--ob-wide);margin:0 auto;padding:0 1.25rem 5rem}
  .public-shell article.prose.ouroboros .ouroboros-body p,.public-shell article.prose.ouroboros .ouroboros-body ul,.public-shell article.prose.ouroboros .ouroboros-body ol{max-width:var(--ob-prose)}
  .public-shell article.prose.ouroboros .ouroboros-body a{color:inherit}
  .public-shell article.prose.ouroboros .ouroboros-body a:focus-visible,.public-shell article.prose.ouroboros .ouroboros-body button:focus-visible,.public-shell article.prose.ouroboros .ouroboros-body input:focus-visible{
    outline:2px solid var(--ob-brass);outline-offset:3px;border-radius:2px;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .checked{
    display:flex;gap:.8rem;align-items:flex-start;
    margin:1.6rem 0 2.4rem;padding:.85rem 1rem;
    background:rgba(127,178,166,.07);
    border:1px solid rgba(127,178,166,.22);border-radius:3px;
    font-family:var(--ob-sans);font-size:.82rem;line-height:1.55;color:#bdb6ab;
    max-width:var(--ob-wide);
  }
  .public-shell article.prose.ouroboros .ouroboros-body .checked svg{flex:none;margin-top:.15rem}
  .public-shell article.prose.ouroboros .ouroboros-body .checked b{color:var(--ob-verify);font-weight:600}

  .public-shell article.prose.ouroboros .ouroboros-body .oneminute{
    margin:0 0 3rem;padding:1.5rem 1.5rem .4rem;
    background:var(--ob-paper);border:1px solid var(--ob-rule);border-left:3px solid var(--ob-brass);
    border-radius:3px;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .oneminute h2{
    font-family:var(--ob-sans);font-size:.92rem;font-weight:700;letter-spacing:.005em;
    margin:0 0 1rem;color:var(--ob-brass);
  }
  .public-shell article.prose.ouroboros .ouroboros-body .oneminute ul{margin:0;padding-left:1.1rem;font-size:.97rem;line-height:1.65}
  .public-shell article.prose.ouroboros .ouroboros-body .oneminute li{margin-bottom:.85rem}
  .public-shell article.prose.ouroboros .ouroboros-body .oneminute li::marker{color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .oneminute .howto{
    font-family:var(--ob-sans);font-size:.83rem;color:var(--ob-muted);
    border-top:1px solid var(--ob-rule);margin:0;padding:1rem 0 1.4rem;max-width:none;
  }
  .public-shell article.prose.ouroboros .ouroboros-body h2.section{
    font-family:var(--ob-serif);font-weight:600;font-size:1.72rem;line-height:1.25;
    letter-spacing:-.01em;margin:3.6rem 0 1.4rem;padding-top:1.9rem;
    border-top:1px solid var(--ob-rule);position:relative;max-width:28ch;
  }
  .public-shell article.prose.ouroboros .ouroboros-body h2.section .num{
    display:block;font-family:var(--ob-sans);font-size:.78rem;font-weight:700;
    color:var(--ob-brass);margin-bottom:.55rem;letter-spacing:.02em;
  }
  .public-shell article.prose.ouroboros .ouroboros-body h3{
    font-family:var(--ob-serif);font-weight:600;font-size:1.26rem;line-height:1.3;
    margin:2.6rem 0 .3rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .dateline{
    font-family:var(--ob-sans);font-size:.78rem;color:var(--ob-muted);
    margin:0 0 1.1rem;padding-bottom:.55rem;border-bottom:1px dotted var(--ob-rule);
    max-width:var(--ob-prose);
  }
  .public-shell article.prose.ouroboros .ouroboros-body p{margin:0 0 1.25rem}
  .public-shell article.prose.ouroboros .ouroboros-body .lede{font-size:1.08rem}
  .public-shell article.prose.ouroboros .ouroboros-body .lede .place{font-family:var(--ob-sans);font-size:.9rem;color:var(--ob-brass);display:block;margin-bottom:.5rem}
  .public-shell article.prose.ouroboros .ouroboros-body strong{font-weight:700;color:#f2eee6}
  .public-shell article.prose.ouroboros .ouroboros-body .takeaway{
    margin:2.2rem 0;padding:1.05rem 1.3rem;max-width:var(--ob-wide);
    background:var(--ob-paper);border:1px solid var(--ob-rule);border-radius:3px;
    font-size:1.05rem;line-height:1.55;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .takeaway p{margin:0;max-width:none}
  .public-shell article.prose.ouroboros .ouroboros-body .verdict{
    margin:2rem 0 2.6rem;padding:.9rem 1.2rem;max-width:var(--ob-wide);
    border-left:3px solid var(--ob-verify);background:rgba(127,178,166,.06);
    font-size:1rem;line-height:1.55;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .verdict p{margin:0;max-width:none}
  .public-shell article.prose.ouroboros .ouroboros-body .verdict b{color:var(--ob-verify);font-weight:700}
  .public-shell article.prose.ouroboros .ouroboros-body figure{margin:2.4rem 0;max-width:var(--ob-wide)}
  .public-shell article.prose.ouroboros .ouroboros-body figure img{display:block;width:100%;height:auto;border:1px solid var(--ob-rule);border-radius:2px;background:#000}
  .public-shell article.prose.ouroboros .ouroboros-body figcaption{
    font-family:var(--ob-sans);font-size:.8rem;line-height:1.55;color:var(--ob-muted);
    margin-top:.7rem;max-width:36rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body figcaption .fignum{color:var(--ob-brass);font-weight:700}
  .public-shell article.prose.ouroboros .ouroboros-body .cite{
    font-family:var(--ob-sans);font-size:.875rem;font-weight:700;vertical-align:.35em;
    color:var(--ob-brass);text-decoration:none;padding:0 .08em;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .cite::before{content:"["}
  .public-shell article.prose.ouroboros .ouroboros-body .cite::after{content:"]"}
  .public-shell article.prose.ouroboros .ouroboros-body .cite:hover{text-decoration:underline}
  .public-shell article.prose.ouroboros .ouroboros-body .cites{white-space:nowrap}
  .public-shell article.prose.ouroboros .ouroboros-body .tool{
    margin:2.4rem 0;padding:1.4rem 1.4rem 1.2rem;max-width:var(--ob-wide);
    background:var(--ob-paper);border:1px solid var(--ob-rule);border-radius:3px;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .tool-head{
    display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:baseline;justify-content:space-between;
    margin-bottom:1rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .tool-head h4{
    font-family:var(--ob-sans);font-size:.92rem;font-weight:700;margin:0;color:var(--ob-text);
  }
  .public-shell article.prose.ouroboros .ouroboros-body .progress{font-family:var(--ob-sans);font-size:.78rem;color:var(--ob-verify)}
  .public-shell article.prose.ouroboros .ouroboros-body .check{
    display:flex;gap:.8rem;align-items:flex-start;
    padding:.75rem 0;border-top:1px solid var(--ob-rule);cursor:pointer;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .check input{
    appearance:none;-webkit-appearance:none;flex:none;
    width:1.15rem;height:1.15rem;margin:.28rem 0 0;border:1px solid #4a453d;border-radius:3px;
    background:transparent;cursor:pointer;position:relative;transition:background .12s,border-color .12s;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .check input:checked{background:var(--ob-verify);border-color:var(--ob-verify)}
  .public-shell article.prose.ouroboros .ouroboros-body .check input:checked::after{
    content:"";position:absolute;left:.33rem;top:.1rem;width:.3rem;height:.62rem;
    border:solid #0d1412;border-width:0 2px 2px 0;transform:rotate(43deg);
  }
  .public-shell article.prose.ouroboros .ouroboros-body .check span{font-size:.98rem;line-height:1.55}
  .public-shell article.prose.ouroboros .ouroboros-body .check input:checked + span{color:var(--ob-muted)}
  .public-shell article.prose.ouroboros .ouroboros-body .tool-foot{
    display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;
    border-top:1px solid var(--ob-rule);padding-top:1rem;margin-top:.2rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body button{
    font-family:var(--ob-sans);font-size:.82rem;font-weight:600;
    background:transparent;color:var(--ob-text);
    border:1px solid #4a453d;border-radius:3px;padding:.5rem .9rem;cursor:pointer;
    transition:border-color .12s,color .12s;
  }
  .public-shell article.prose.ouroboros .ouroboros-body button:hover{border-color:var(--ob-brass);color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .primary{border-color:var(--ob-brass);color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .primary:hover{background:rgba(216,178,106,.1)}
  .public-shell article.prose.ouroboros .ouroboros-body .tool-note{font-family:var(--ob-sans);font-size:.76rem;color:var(--ob-muted);margin:0;max-width:none}
  .public-shell article.prose.ouroboros .ouroboros-body .next{
    display:block;margin:3.4rem 0 0;padding:1.3rem 1.4rem;max-width:var(--ob-wide);
    background:var(--ob-paper);border:1px solid var(--ob-rule);border-radius:3px;
    text-decoration:none;transition:border-color .15s;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .next:hover{border-color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .next .kicker{font-family:var(--ob-sans);font-size:.76rem;color:var(--ob-muted);display:block;margin-bottom:.35rem}
  .public-shell article.prose.ouroboros .ouroboros-body .next .title{font-size:1.3rem;font-weight:600;color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .next .blurb{font-family:var(--ob-sans);font-size:.85rem;color:var(--ob-muted);display:block;margin-top:.4rem}

  .public-shell article.prose.ouroboros .ouroboros-body .refs{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--ob-rule)}
  .public-shell article.prose.ouroboros .ouroboros-body .refs h2{font-family:var(--ob-serif);font-size:1.5rem;font-weight:600;margin:0 0 .8rem}
  .public-shell article.prose.ouroboros .ouroboros-body .refs .note{font-family:var(--ob-sans);font-size:.83rem;color:var(--ob-muted);max-width:36rem}
  .public-shell article.prose.ouroboros .ouroboros-body .refs ol{list-style:none;counter-reset:ref;padding:0;margin:1.6rem 0 0;max-width:var(--ob-wide)}
  .public-shell article.prose.ouroboros .ouroboros-body .refs li{
    counter-increment:ref;position:relative;padding:.95rem 0 .95rem 2.6rem;
    border-top:1px solid var(--ob-rule);
    font-family:var(--ob-sans);font-size:.87rem;line-height:1.6;color:#c9c3b9;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .refs li::before{
    content:"[" counter(ref) "]";position:absolute;left:0;top:.95rem;
    color:var(--ob-brass);font-weight:700;font-size:.8rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .refs li:target{background:rgba(216,178,106,.07)}
  .public-shell article.prose.ouroboros .ouroboros-body .refs .kind{
    display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.02em;
    color:var(--ob-verify);border:1px solid rgba(127,178,166,.35);border-radius:2px;
    padding:.08rem .38rem;margin-right:.5rem;vertical-align:.08em;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .refs a.src{color:var(--ob-brass);text-decoration:none;border-bottom:1px solid rgba(216,178,106,.35)}
  .public-shell article.prose.ouroboros .ouroboros-body .refs a.src:hover{border-bottom-color:var(--ob-brass)}
  .public-shell article.prose.ouroboros .ouroboros-body .refs a.back{color:var(--ob-muted);text-decoration:none;margin-left:.35rem}
  .public-shell article.prose.ouroboros .ouroboros-body .refs a.back:hover{color:var(--ob-brass)}

  .public-shell article.prose.ouroboros .ouroboros-body .colophon{
    margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--ob-rule);
    font-family:var(--ob-sans);font-size:.78rem;color:var(--ob-muted);
  }

  @media (max-width:620px){
    .public-shell article.prose.ouroboros .ouroboros-body{font-size:17.5px}
    .public-shell article.prose.ouroboros .ouroboros-body{padding:0 1rem 3.5rem}
    .public-shell article.prose.ouroboros .ouroboros-body .oneminute,.public-shell article.prose.ouroboros .ouroboros-body .tool,.public-shell article.prose.ouroboros .ouroboros-body .takeaway,.public-shell article.prose.ouroboros .ouroboros-body .next{padding-left:1.1rem;padding-right:1.1rem}
  }
  @media (prefers-reduced-motion:reduce){
    .public-shell article.prose.ouroboros .ouroboros-body *{transition:none!important;animation:none!important}
  }
  @media print{
    .public-shell article.prose.ouroboros .ouroboros-body{background:#fff;color:#111;font-size:11pt}
    .public-shell article.prose.ouroboros .ouroboros-body .tool-foot,.public-shell article.prose.ouroboros .ouroboros-body .next{display:none}
    .public-shell article.prose.ouroboros .ouroboros-body figure img{border:1px solid #ccc}
    .public-shell article.prose.ouroboros .ouroboros-body .oneminute,.public-shell article.prose.ouroboros .ouroboros-body .tool,.public-shell article.prose.ouroboros .ouroboros-body .takeaway,.public-shell article.prose.ouroboros .ouroboros-body .checked{border:1px solid #bbb;background:#fff}
    .public-shell article.prose.ouroboros .ouroboros-body a{color:#111}
  }

/* Reader integration: keep long-form styling inside this article body. */
.public-shell .ouroboros-cover { margin: 0; }
.public-shell .ouroboros-cover figcaption {
  padding: .65rem 0 0;
  font-family: var(--sans, system-ui, sans-serif);
  font-size: .8rem;
  line-height: 1.6;
  color: var(--ink-3, #6b6259);
}
.public-shell .ouroboros-cover .cite {
  font-size: .875rem; font-weight: 700; vertical-align: super;
  white-space: nowrap; text-decoration: none;
}
.public-shell .ouroboros-cover .cite::before { content: "["; }
.public-shell .ouroboros-cover .cite::after { content: "]"; }
.public-shell .ouroboros-cover .cite:hover { text-decoration: underline; }
.public-shell article.prose.ouroboros .ouroboros-body {
  box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
  padding: clamp(1rem, 3vw, 2.25rem);
  border-radius: 8px; overflow-wrap: break-word;
  color-scheme: dark;
}
.public-shell article.prose.ouroboros .ouroboros-body > :first-child { margin-top: 0; }
.public-shell article.prose.ouroboros .ouroboros-body > :last-child { margin-bottom: 0; }
.public-shell article.prose.ouroboros .ouroboros-body p {
  font-family: var(--ob-serif); font-size: inherit; line-height: inherit;
  color: inherit; text-align: left; hyphens: manual;
}
.public-shell article.prose.ouroboros .ouroboros-body :is(h2, h3, h4) { color: var(--ob-text); }
.public-shell article.prose.ouroboros .ouroboros-body h2::before { content: none; }
.public-shell article.prose.ouroboros .ouroboros-body [id] { scroll-margin-top: 7rem; }
.public-shell article.prose.ouroboros .ouroboros-body :is(p, li, blockquote)::first-letter {
  float: none; font-size: inherit; line-height: inherit;
  padding: 0; margin: 0; color: inherit; font-weight: inherit;
}
.public-shell article.prose.ouroboros .ouroboros-body :is(b, strong) { color: #f2eee6; font-weight: 700; }
.public-shell article.prose.ouroboros .ouroboros-body :is(ul, ol) {
  font-family: inherit; font-size: inherit; line-height: inherit; color: inherit;
}
.public-shell article.prose.ouroboros .ouroboros-body li { padding-left: 0; }
.public-shell article.prose.ouroboros .ouroboros-body img { max-width: 100%; margin: 0; box-shadow: none; }
.public-shell article.prose.ouroboros .ouroboros-body figcaption { font-style: normal; }
.public-shell article.prose.ouroboros .ouroboros-body figcaption :is(b, strong, .fignum) { color: var(--ob-brass); }
.public-shell article.prose.ouroboros .ouroboros-body p.checked {
  font-family: var(--ob-sans); font-size: .82rem; line-height: 1.55; color: #bdb6ab;
}
.public-shell article.prose.ouroboros .ouroboros-body .checked > span { min-width: 0; }
.public-shell article.prose.ouroboros .ouroboros-body .checked b { color: var(--ob-verify); font-weight: 600; }
.public-shell article.prose.ouroboros .ouroboros-body .oneminute h2 { color: var(--ob-brass); line-height: 1.5; }
.public-shell article.prose.ouroboros .ouroboros-body .oneminute ul { font-size: .97rem; line-height: 1.65; }
.public-shell article.prose.ouroboros .ouroboros-body .oneminute .howto {
  font-family: var(--ob-sans); font-size: .83rem; line-height: 1.65; color: var(--ob-muted);
}
.public-shell article.prose.ouroboros .ouroboros-body p.lede { font-size: 1.08rem; }
.public-shell article.prose.ouroboros .ouroboros-body p.dateline {
  font-family: var(--ob-sans); font-size: .78rem; line-height: 1.6; color: var(--ob-muted);
}
.public-shell article.prose.ouroboros .ouroboros-body :is(.takeaway, .verdict) {
  font-style: normal; color: var(--ob-text);
}
.public-shell article.prose.ouroboros .ouroboros-body :is(.takeaway, .verdict)::before,
.public-shell article.prose.ouroboros .ouroboros-body :is(.takeaway, .verdict)::after { content: none; }
.public-shell article.prose.ouroboros .ouroboros-body .verdict b { color: var(--ob-verify); }
.public-shell article.prose.ouroboros .ouroboros-body .cites { white-space: normal; }
.public-shell article.prose.ouroboros .ouroboros-body .cite { white-space: nowrap; }
.public-shell article.prose.ouroboros .ouroboros-body .cite:target { outline: 1px solid var(--ob-brass); outline-offset: 2px; }
.public-shell article.prose.ouroboros .ouroboros-body .tool-head h4 { line-height: 1.55; }
.public-shell article.prose.ouroboros .ouroboros-body .tool p.tool-note {
  font-family: var(--ob-sans); font-size: .76rem; line-height: 1.65; color: var(--ob-muted);
}
.public-shell article.prose.ouroboros .ouroboros-body .tool > .tool-note { margin-bottom: 1rem; }
.public-shell article.prose.ouroboros .ouroboros-body .tool .primary {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; max-width: 100%; padding: .5rem .9rem;
  border: 1px solid var(--ob-brass); border-radius: 3px;
  background: transparent; color: var(--ob-brass);
  font-family: var(--ob-sans); font-size: .82rem; font-weight: 600;
  line-height: 1.5; text-align: center; text-decoration: none;
}
.public-shell article.prose.ouroboros .ouroboros-body .next { font-style: normal; }
.public-shell article.prose.ouroboros .ouroboros-body .next .blurb { line-height: 1.6; }
.public-shell article.prose.ouroboros .ouroboros-body .next a {
  display: inline-flex; align-items: center; min-height: 44px;
  margin-top: .7rem; font-family: var(--ob-sans); font-size: .85rem;
  color: var(--ob-brass); text-underline-offset: 3px;
}
.public-shell article.prose.ouroboros .ouroboros-body .refs p.note {
  font-family: var(--ob-sans); font-size: .83rem; line-height: 1.65; color: var(--ob-muted);
}
.public-shell article.prose.ouroboros .ouroboros-body .refs ol { margin: 1.6rem 0 0; padding: 0; list-style: none; }
.public-shell article.prose.ouroboros .ouroboros-body .refs li { margin: 0; padding: .95rem 0 .95rem 2.6rem; }
.public-shell article.prose.ouroboros .ouroboros-body .refs a { overflow-wrap: anywhere; }
.public-shell article.prose.ouroboros .ouroboros-body p.colophon {
  font-family: var(--ob-sans); font-size: .78rem; line-height: 1.6; color: var(--ob-muted);
}

/* Supported native checklist with saved progress and a reset action. */
.public-shell article.prose.ouroboros .ouroboros-body .spine-island { margin: 1rem 0 0; }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-card {
  padding: 0; border: 0; border-radius: 0; background: transparent;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-head {
  display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: 1rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-title {
  font-family: var(--ob-sans); font-size: .92rem; line-height: 1.5; color: var(--ob-text);
}
.public-shell article.prose.ouroboros .ouroboros-body .has-checklist-heading .spine-island-title { display: none; }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-count {
  font-family: var(--ob-sans); font-size: .78rem; letter-spacing: normal; color: var(--ob-verify);
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-progress { height: 4px; background: var(--ob-rule); }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-progress-fill { background: var(--ob-verify); }
.public-shell article.prose.ouroboros .ouroboros-body :is(.spine-island-checks, .spine-checklist) {
  margin: 0; padding: 0; max-width: none; list-style: none;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks { gap: 0; }
.public-shell article.prose.ouroboros .ouroboros-body :is(.spine-island-checks, .spine-checklist) li {
  margin: 0; padding: 0; border-top: 1px solid var(--ob-rule);
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-checklist li { padding: .8rem 0 .8rem 1.5rem; font-size: .98rem; }
.public-shell article.prose.ouroboros .ouroboros-body .spine-checklist li::before { color: var(--ob-verify); }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks li::before { content: none; }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks label {
  display: flex; align-items: flex-start; gap: .8rem; min-height: 44px;
  padding: .8rem .2rem; border: 0; border-radius: 3px;
  font-family: var(--ob-serif); font-size: .98rem; line-height: 1.55;
  color: var(--ob-text); background: transparent; cursor: pointer;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks label span { min-width: 0; }
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks label.is-done {
  color: var(--ob-muted); background: rgba(127, 178, 166, .06);
  text-decoration: none;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks input[type="checkbox"] {
  appearance: auto; flex: none; width: 1.15rem; height: 1.15rem;
  margin: .25rem 0 0; accent-color: var(--ob-verify); cursor: pointer;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks label:focus-within {
  outline: 2px solid var(--ob-brass); outline-offset: 3px;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-actions {
  display: flex; flex-wrap: wrap; align-items: center; gap: .7rem;
  border-top: 1px solid var(--ob-rule); padding-top: 1rem; margin-top: .2rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .spine-island-reset {
  min-height: 44px; max-width: 100%; line-height: 1.5; white-space: normal;
}

@media (max-width: 480px) {
  .public-shell article.prose.ouroboros .ouroboros-body { padding: 1rem .8rem; font-size: 17px; }
  .public-shell article.prose.ouroboros .ouroboros-body :is(.oneminute, .tool, .takeaway, .next) {
    padding-left: .85rem; padding-right: .85rem;
  }
  .public-shell article.prose.ouroboros .ouroboros-body .checked { padding: .85rem .75rem; gap: .55rem; }
  .public-shell article.prose.ouroboros .ouroboros-body .verdict { padding: .85rem .9rem; }
  .public-shell article.prose.ouroboros .ouroboros-body h2.section { font-size: 1.5rem; }
  .public-shell article.prose.ouroboros .ouroboros-body .refs li { padding-left: 2rem; }
  .public-shell article.prose.ouroboros .ouroboros-body .spine-island-checks label { gap: .55rem; }
}
@media print {
  .public-shell article.prose.ouroboros .ouroboros-body {
    --ob-text: #111; --ob-muted: #444; --ob-brass: #453210; --ob-verify: #234c43;
    --ob-paper: #fff; --ob-rule: #bbb;
    padding: 0; color: #111; background: #fff; font-size: 11pt;
  }
  .public-shell article.prose.ouroboros .ouroboros-body :is(b, strong) { color: #111; }
  .public-shell article.prose.ouroboros .ouroboros-body .spine-island-actions { display: none; }
  .public-shell article.prose.ouroboros .ouroboros-body :is(.checked, .refs li) { color: #333; }
}
.public-shell .ps-article-page .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 1200 / 630;
}
.public-shell .ps-article-page .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-img {
  object-fit: contain;
}

/* Chapter 3: keep the question-and-evidence comparison within the reader. */
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap {
  width: 100%; max-width: var(--ob-wide); min-width: 0;
  margin: 2.2rem 0; overflow-x: auto;
}
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap table {
  width: 100%; min-width: 0; margin: 0; border: 0;
  border-collapse: collapse; table-layout: fixed;
  font-family: var(--ob-sans); font-size: .88rem; line-height: 1.55;
}
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap :is(th, td) {
  padding: .85rem 1rem; border: 0; border-bottom: 1px solid var(--ob-rule);
  background: transparent; text-align: left; vertical-align: top;
  font-family: var(--ob-sans); font-size: inherit; line-height: inherit;
  overflow-wrap: anywhere; white-space: normal;
}
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap thead th {
  border-bottom-color: var(--ob-brass); background: var(--ob-paper);
  color: var(--ob-brass); font-size: .8rem; font-weight: 700;
  letter-spacing: normal; text-transform: none;
}
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap tr > :first-child { width: 38%; }
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap tbody th {
  color: var(--ob-text); font-weight: 600;
}
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap tbody td { color: var(--ob-text); }
.public-shell article.prose.ouroboros .ouroboros-body .tablewrap tbody tr:last-child :is(th, td) { border-bottom: none; }
@media (max-width: 480px) {
  .public-shell article.prose.ouroboros .ouroboros-body .tablewrap :is(th, td) { padding: .75rem .5rem; }
  .public-shell article.prose.ouroboros .ouroboros-body .tablewrap tr > :first-child { width: 42%; }
}
.public-shell .ps-article-page[data-article-slug="the-hidden-hand-secret-societies-evidence"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 1400 / 880;
}
.public-shell .ps-article-page[data-article-slug="the-missing-chapter-lost-lands-archaeology"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 1400 / 929;
}
.public-shell .ps-article-page[data-article-slug="written-before-it-happened"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 600 / 488;
}
.public-shell .ps-article-page[data-article-slug="i-have-been-here-before"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 720 / 480;
}
.public-shell .ps-article-page[data-article-slug="the-house-that-would-not-stay-empty-sleep-paralysis-hauntings"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 1400 / 1124;
}
.public-shell article.prose.ouroboros .ouroboros-body .care {
  margin: 2rem 0;
  padding: 1.1rem 1.25rem;
  border-left: 3px solid var(--ob-verify);
  background: rgba(127,178,166,.06);
}
.public-shell article.prose.ouroboros .ouroboros-body .care h4 {
  margin: 0 0 .65rem;
  color: var(--ob-verify);
  font-family: var(--ob-sans);
  font-size: .95rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .care p { margin: 0; }
.public-shell article.prose.ouroboros .ouroboros-body .study-comparison .tablewrap {
  margin: 0;
}
.public-shell article.prose.ouroboros .ouroboros-body .study-comparison table {
  min-width: 36rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .study-comparison tr > :first-child {
  width: 32%;
}
.public-shell article.prose.ouroboros .ouroboros-body .table-hint {
  margin: 0 0 .65rem;
  color: var(--ob-muted);
  font-family: var(--ob-sans);
  font-size: .8rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .tool > h3 {
  margin-top: 0;
}
.public-shell article.prose.ouroboros .ouroboros-body .prediction-check {
  margin: 1rem 0 0;
  padding-left: 1.1rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .prediction-check li {
  margin-bottom: .9rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .prediction-check li::marker {
  color: var(--ob-brass);
}
.public-shell article.prose.ouroboros .ouroboros-body figure.emblem img {
  width: min(100%, 20rem);
  height: auto;
  margin-inline: auto;
  background: #faf9f6;
  padding: 1.25rem;
  box-sizing: border-box;
}

.public-shell .ps-article-page[data-article-slug="the-occult-honestly-seances-hidden-knowledge"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 880 / 500;
}
/* Chapter 8 compares three movements across three distinct fields. */
.public-shell article.prose.ouroboros .ouroboros-body .movements-comparison table {
  min-width: 34rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .movements-comparison tr > :first-child {
  width: 26%;
}

/* Chapter 9 keeps each site's evidence and its limits in separate columns. */
.public-shell article.prose.ouroboros .ouroboros-body .builders-comparison table {
  min-width: 32rem;
}
.public-shell article.prose.ouroboros .ouroboros-body .builders-comparison tr > :first-child {
  width: 22%;
}
.public-shell .ps-article-page[data-article-slug="not-from-here-ancient-astronaut-claims"] .ps-article-hero[data-has-cover="true"] .ouroboros-cover .ps-article-cover-frame {
  aspect-ratio: 800 / 533;
}
