/* Overlap — the sceptic's desk on lucid.rodeo.
   Same article bones as /prereg/ and /strings/. Dark-first so a local
   file preview still reads. theme.css may retoken; these hold the page. */
:root{
  --olive-deep:#F2F2F4; --olive:#A8A8B0; --grass:#5A5A62;
  --sand:#2B2B2E; --khaki:#38383C; --dust:#444449; --bone:#F2F2F4; --bonedim:#A8A8B0;
  --camel:#E8B64C; --terracotta:#C9A0FF; --line:#55555C; --link:#6EC4FF;
  --font-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-head:"Space Grotesk","Atkinson Hyperlegible",system-ui,sans-serif;
  --font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --radius:14px;
  --f-rhyme:#6ee7b7; --f-partial:#5cc8ff; --f-fork:#e8b64c; --f-absent:#a8a8b0;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:var(--font-body); color:var(--bone); line-height:1.62;
  background:
    radial-gradient(120% 80% at 10% -20%, rgba(92,200,255,.10), transparent 55%),
    radial-gradient(90% 70% at 100% 0%, rgba(232,182,76,.07), transparent 50%),
    var(--sand);
  -webkit-text-size-adjust:100%;
  padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}
a{color:var(--link)}
a:focus-visible{outline:3px solid var(--camel); outline-offset:2px; border-radius:6px}
.wrap{max-width:820px; margin:0 auto; padding:1.4rem 1.2rem 3rem}
.crumb{font-family:var(--font-head); font-size:.82rem; letter-spacing:.04em; text-transform:uppercase; color:var(--bonedim)}
.crumb a{color:var(--bonedim); text-decoration:none}
.crumb a:hover{color:var(--link)}
h1{font-family:var(--font-head); font-weight:700; font-size:clamp(2rem,6.5vw,3rem); line-height:1.08; margin:.55rem 0 .35rem; letter-spacing:-.01em}
.kicker{font-family:var(--font-head); font-weight:700; font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--camel); margin:.8rem 0 0}
.lede{font-size:1.18rem; color:var(--olive); margin:.65rem 0 0; max-width:66ch}
main{margin-top:1.4rem}
.card{background:#141418; border:1px solid var(--line); border-radius:var(--radius); padding:1.15rem 1.25rem; margin:1.05rem 0}
h2{font-family:var(--font-head); font-weight:600; font-size:1.32rem; margin:1.6rem 0 .45rem; color:var(--olive-deep)}
.card h2{margin-top:.15rem}
h3{font-family:var(--font-head); font-weight:600; font-size:1.04rem; margin:1rem 0 .25rem; color:var(--olive-deep)}
p{margin:.55rem 0}
.quiet{color:var(--bonedim)}
.small{font-size:.88rem}
.pull{font-family:var(--font-head); font-size:1.22rem; line-height:1.38; color:var(--olive-deep); border-left:4px solid var(--camel); padding:.15rem 0 .15rem 1rem; margin:1.15rem 0}
ul,ol{margin:.4rem 0; padding-left:1.2rem}
li{margin:.35rem 0}
code{font-family:var(--font-mono); font-size:.9em; background:rgba(255,255,255,.06); padding:.05rem .32rem; border-radius:5px}

.toc{display:flex; flex-wrap:wrap; gap:.4rem .85rem; margin:.85rem 0 0; padding:0; list-style:none}
.toc a{font-family:var(--font-head); font-size:.86rem; color:var(--bonedim); text-decoration:none; border-bottom:1px solid transparent}
.toc a:hover{color:var(--link); border-bottom-color:var(--link)}

.legend{display:flex; flex-wrap:wrap; gap:.45rem .9rem; margin:.7rem 0 .15rem}
.legend .item{display:flex; align-items:center; gap:.4rem; font-size:.9rem; color:var(--bonedim)}
.dot{width:.62rem; height:.62rem; border-radius:50%; flex:none}
.d-rhyme{background:var(--f-rhyme)} .d-partial{background:var(--f-partial)}
.d-fork{background:var(--f-fork)} .d-absent{background:var(--f-absent)}

.tag{display:inline-block; font-family:var(--font-head); font-weight:600; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; border-radius:999px; padding:.14rem .5rem; border:1px solid; margin:0 .25rem .3rem 0}
.t-rhyme{color:var(--f-rhyme); border-color:var(--f-rhyme); background:rgba(110,231,183,.10)}
.t-partial{color:var(--f-partial); border-color:var(--f-partial); background:rgba(92,200,255,.10)}
.t-fork{color:var(--f-fork); border-color:var(--f-fork); background:rgba(232,182,76,.10)}
.t-absent{color:var(--f-absent); border-color:var(--f-absent); background:rgba(168,168,176,.08)}

.matrix{width:100%; border-collapse:collapse; font-size:.92rem; margin:.8rem 0  .3rem}
.matrix th,.matrix td{border-bottom:1px solid var(--line); padding:.55rem .4rem; text-align:left; vertical-align:top}
.matrix th{font-family:var(--font-head); font-weight:600; font-size:.72rem; letter-spacing:.04em; text-transform:uppercase; color:var(--bonedim)}
.matrix td.g{font-family:var(--font-head); font-weight:600; font-size:.72rem; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap}
.matrix td.g.rhyme{color:var(--f-rhyme)}
.matrix td.g.partial{color:var(--f-partial)}
.matrix td.g.fork{color:var(--f-fork)}
.matrix td.g.absent{color:var(--f-absent)}
.scroller{overflow-x:auto; -webkit-overflow-scrolling:touch}

.stack{display:grid; gap:.75rem; margin:.4rem 0}
.stack .row{display:grid; grid-template-columns:8.2rem 1fr; gap:.75rem; align-items:start}
@media(max-width:560px){.stack .row{grid-template-columns:1fr} .matrix{font-size:.84rem}}
.stack .lab{font-family:var(--font-head); font-weight:600; font-size:.74rem; letter-spacing:.05em; text-transform:uppercase; color:var(--camel); padding-top:.15rem}

.series{display:grid; gap:.8rem; margin:.6rem 0}
@media(min-width:680px){.series{grid-template-columns:1fr 1fr}}
a.issue{display:block; background:#141418; border:1px solid var(--line); border-radius:var(--radius); padding:1.05rem 1.15rem; color:inherit; text-decoration:none}
a.issue:hover{border-color:var(--camel); text-decoration:none}
a.issue .n{font-family:var(--font-head); font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--camel)}
a.issue h2{margin:.35rem 0 .3rem; font-size:1.2rem}
a.issue p{margin:0; color:var(--bonedim); font-size:.95rem}
a.issue .go{display:block; margin-top:.7rem; font-family:var(--font-head); font-size:.92rem; color:var(--link)}

.next{display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; margin-top:1.6rem; padding-top:1rem; border-top:1px solid var(--line); font-family:var(--font-head); font-size:.92rem}
footer{padding:1.6rem 0 .4rem; margin-top:1.4rem; border-top:1px solid var(--line); color:var(--bonedim); font-size:.86rem}
footer a{color:var(--bonedim)}
