/* seed.christcode.ai additions (night register, tokens from styles.css) */
.coverplate img{aspect-ratio:16/9;object-position:50% 38%}
.moonclock{margin:26px auto 0;text-align:center}
.moonclock div{display:inline-flex;flex-direction:column;gap:4px;border:1px solid var(--line);background:var(--bg2);border-radius:10px;padding:12px 22px}
.moonclock b{font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.26em;color:var(--gold);text-transform:uppercase}
.moonclock span{font-family:var(--serif);font-size:1.7rem;color:var(--ink);line-height:1.1}
.cycle{display:block;width:100%;height:auto;padding:18px 8px;background:var(--bg2)}
.cycle .c-line{stroke:var(--ink-faint);stroke-width:1.4;stroke-dasharray:4 6}
.cycle .c-node circle{fill:var(--card);stroke:var(--line);stroke-width:1.4}
.cycle .c-node.new circle{fill:#15120e;stroke:var(--gold)}
.cycle .c-node.full circle{fill:var(--gold-pale);stroke:var(--gold)}
.cycle text{font-family:var(--mono);font-size:12px;letter-spacing:.18em;fill:var(--ink);text-anchor:middle}
.cycle text.s{font-family:var(--serif);font-style:italic;font-size:15px;letter-spacing:0;fill:var(--ink-soft)}
.cycle .c-node.new text:not(.s){fill:var(--gold)}
.cycle .lbl{font-family:var(--serif);font-style:italic;font-size:15px;fill:var(--ink-faint);letter-spacing:0}
.tests{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin:40px 0 10px}
.tests.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.test{border:1px solid var(--line-soft);background:var(--card);border-radius:10px;padding:22px 24px;display:flex;flex-direction:column}
.test b{font-family:var(--mono);font-size:10px;letter-spacing:.24em;color:var(--gold);font-weight:500;text-transform:uppercase}
.test h3{font-family:var(--serif);font-weight:500;font-size:1.45rem;line-height:1.15;margin:8px 0 10px;color:var(--ink)}
.test p{font-size:15px;color:var(--ink-soft);margin-bottom:10px}
.test p i{color:var(--ink)}
.test p.do{color:var(--gold-pale);font-family:var(--serif);font-size:1.1rem;line-height:1.35}
.test.good{border-color:var(--gold)}
.test .cite,.pcard .cite{display:block;margin-top:auto;padding-top:10px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--ink-faint);text-transform:uppercase}
.rituals{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:40px 0 10px}
.rituals .pcard{margin:0;display:flex;flex-direction:column}
.more{margin-top:18px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.route li b{min-width:150px}
.reader{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;margin:40px 0 10px;align-items:start}
.b-form{display:grid;gap:14px;position:sticky;top:24px}
.b-form label{display:grid;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.b-form small{font-size:9.5px;letter-spacing:.14em;color:var(--ink-faint);margin-left:6px}
.b-form input,.b-form textarea{font:inherit;font-family:var(--sans,Inter),sans-serif;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 12px;resize:vertical;width:100%}
.b-form input:focus,.b-form textarea:focus{outline:none;border-color:var(--gold)}
.b-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.b-actions .cta{margin:0;cursor:pointer;border:none;font:inherit}
.b-actions .cta[disabled]{opacity:.6;cursor:wait}
.b-note{font-size:14px;color:var(--ink-faint);margin:0}
.reading{background:var(--card);border:1px solid var(--gold);border-radius:12px;padding:28px 28px 24px}
.reading[hidden]{display:none}
.r-k{font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:22px 0 8px}
.r-k:first-child{margin-top:0}
.r-grid{display:flex;flex-wrap:wrap;gap:10px}
.r-grid div{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:8px;padding:8px 14px;min-width:92px}
.r-grid b{font-family:var(--serif);font-size:1.7rem;font-weight:500;color:var(--ink);line-height:1.1}
.r-grid span{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}
.r-angle{font-family:var(--serif);font-size:1.75rem;line-height:1.2;color:var(--ink);margin:0 0 8px}
.r-world{font-family:var(--serif);font-style:italic;font-size:1.2rem;color:var(--gold-pale);margin:0}
.r-conv,.r-num{font-size:16px;color:var(--ink-soft);margin:0}
.r-out{margin:0;padding-left:0;list-style:none;display:grid;gap:10px}
.r-out li{font-size:15.5px;color:var(--ink-soft)}
.r-out b{display:block;font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}
.r-mk4{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0}
.r-mk4 dt{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);padding-top:3px}
.r-mk4 dd{margin:0;font-size:15.5px;color:var(--ink)}
.r-say{font-family:var(--serif);font-size:1.35rem;color:var(--gold-pale);margin:0}
.r-verse{margin:22px 0 20px;border-left:2px solid var(--gold);padding-left:14px}
.r-verse p{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--ink-soft);margin:0 0 4px}
.r-verse cite,.ps-verse cite{font-family:var(--mono);font-style:normal;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
#printsheet{display:none}
@media(max-width:860px){.reader{grid-template-columns:1fr}.b-form{position:static}}

@media(max-width:640px){.wrap{padding:0 16px}.cycle .lbl{display:none}.moonclock span{font-size:1.4rem}}
@media print{
  body *{visibility:hidden}
}
@page{size:letter;margin:.45in}
@media print{
  body{background:#fff!important}
  body>*:not(#printsheet){display:none!important}
  #printsheet,#printsheet *{visibility:visible}
  #printsheet{display:block;color:#1d1912;font-family:var(--serif),Georgia,serif;font-size:10.5pt;line-height:1.35}
  #printsheet h3{font-family:var(--mono),monospace;font-size:7.5pt;letter-spacing:.2em;text-transform:uppercase;color:#604905;margin:0 0 5px;font-weight:500}
  .ps-head{display:flex;justify-content:space-between;font-family:var(--mono),monospace;font-size:7.5pt;letter-spacing:.18em;text-transform:uppercase;color:#857f73;border-bottom:1px solid #cfc9bd;padding-bottom:5px}
  .ps-name{font-size:20pt;font-weight:500;margin:8px 0 2px}
  .ps-grid{font-family:var(--mono),monospace;font-size:8pt;letter-spacing:.06em;color:#604905}
  .ps-conv{margin:8px 0 10px}
  .ps-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:10px}
  .ps-cols ol{margin:0;padding-left:16px}
  .ps-cols li{margin-bottom:4px}
  #p-out{list-style:none;padding:0}
  #p-out b{font-family:var(--mono),monospace;font-weight:500;font-size:7.5pt;letter-spacing:.14em;text-transform:uppercase;display:block;color:#3e3b32}
  #p-mk4{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0}
  #p-mk4 dt{font-family:var(--mono),monospace;font-size:7pt;letter-spacing:.12em;text-transform:uppercase;color:#857f73;padding-top:2px}
  #p-mk4 dd{margin:0}
  .ps-num{margin:8px 0 0;font-size:9.5pt;color:#3e3b32}
  .ps-say{font-size:13pt;margin:0 0 8px}
  .ps-days{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
  .ps-days span{border:1px solid #cfc9bd;border-radius:3px;padding:3px 5px;font-family:var(--mono),monospace;font-size:7pt;letter-spacing:.08em}
  .ps-days span::before{content:"\25A2  "}
  .ps-cut{border-top:1.5px dashed #857f73;margin:14px 0 12px;text-align:center;height:0}
  .ps-cut span{position:relative;top:-.7em;background:#fff;padding:0 10px;font-family:var(--mono),monospace;font-size:7.5pt;letter-spacing:.18em;text-transform:uppercase;color:#857f73}
  .ps-bury{break-inside:avoid;page-break-inside:avoid}
  .ps-slip{border:1px solid #cfc9bd;border-radius:6px;padding:16px 20px;text-align:center}
  .ps-sk{font-family:var(--mono),monospace;font-size:7.5pt;letter-spacing:.22em;text-transform:uppercase;color:#604905}
  .ps-angle{font-size:19pt;line-height:1.2;margin:10px 0 6px}
  .ps-world{font-style:italic;font-size:12pt;color:#3e3b32;margin:0 0 8px}
  .ps-sf{font-family:var(--mono),monospace;font-size:7pt;letter-spacing:.14em;text-transform:uppercase;color:#857f73}
  .ps-verse{margin:8px auto 0;max-width:5.5in}
  .ps-verse p{font-style:italic;font-size:9.5pt;color:#3e3b32;margin:0 0 2px}
}
@media(max-width:640px){.kicker-row .kicker{white-space:normal;text-align:center;line-height:1.8}.module .kicker{white-space:normal}}
.module .more{margin-bottom:48px}
.r-grid b,.ps-grid,.ps-days{font-variant-numeric:lining-nums}
@media print{html,body{background:#fff!important;background-image:none!important}body::before,body::after{display:none!important}}
