:root{
  --green:#7dff96; --dim:#55cd73; --bg:#000; --amber:#c4734f;
  --mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);overflow-x:hidden;}
body{
  font-family:var(--mono);
  color:var(--green);
  line-height:1.6;
  font-size:17px;
  padding:clamp(1rem,4vw,3rem);
  min-height:100vh;
  text-shadow:0 0 2px rgba(125,255,150,.35);
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:1;
  background:repeating-linear-gradient(rgba(0,0,0,0) 0 2px, rgba(0,0,0,.16) 2px 4px);
  mix-blend-mode:multiply;
}
.wrap{max-width:760px;margin:0 auto;position:relative;z-index:2}
a{color:var(--green);text-decoration:none;border-bottom:1px solid rgba(125,255,150,.25)}
a:hover,a:focus{color:#fff;border-bottom-color:#fff;outline:none;background:rgba(125,255,150,.12)}
.dim{color:var(--dim)}
.amber{color:var(--amber)}
.ready{color:var(--dim);letter-spacing:.18em;margin:.2rem 0 1.3rem}
h1.collection{font-size:clamp(1.5rem,6vw,2.3rem);margin:.2rem 0 0;font-weight:700;letter-spacing:.05em}
.byline{color:var(--dim);margin:.1rem 0 .2rem}
.epigraph{color:var(--green);margin:.9rem 0 .2rem}
.hint{color:var(--dim);margin:.2rem 0 1.2rem}
.section{color:var(--amber);margin:1.5rem 0 .35rem;font-weight:700;letter-spacing:.12em;font-size:1em}
a:focus-visible{outline:2px solid var(--green);outline-offset:2px}
ol.poemlist{list-style:none;margin:0;padding:0}
ol.poemlist li{padding:.13rem 0 .13rem 3.4ch;text-indent:-3.4ch;overflow-wrap:anywhere}
.num{color:var(--dim);display:inline-block;width:2.4ch;text-align:right;margin-right:.9ch}
.prose{max-width:62ch;margin:1.1rem 0}
.prose p{margin:0 0 1rem}
.cursor{display:inline-block;width:.62ch;height:1.05em;background:var(--green);
  vertical-align:-2px;animation:blink 1.05s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.cmd{display:flex;align-items:center;gap:.6ch;margin-top:1.7rem;
  border-top:1px solid rgba(125,255,150,.2);padding-top:1rem}
.cmd .ps1{color:var(--dim)}
.cmd input{flex:1;background:transparent;border:0;color:var(--green);font:inherit;
  text-shadow:inherit;caret-color:var(--green)}
.cmd input:focus{outline:none}
.out{white-space:pre-wrap;color:var(--dim);margin:.5rem 0 0;min-height:1.2em}
pre.poem{white-space:pre-wrap;font-family:inherit;font-size:clamp(1rem,3.6vw,1.18rem);
  margin:1.1rem 0 1.4rem}
.poem-title{font-size:clamp(1.35rem,5.5vw,2rem);margin:.2rem 0 0;font-weight:700}
.meta{color:var(--dim);margin:.1rem 0 1rem}
.actions{display:flex;flex-wrap:wrap;gap:1.3rem;margin:1.2rem 0;
  border-top:1px solid rgba(125,255,150,.2);padding-top:1rem}
.linkbtn{background:none;border:0;padding:0;font:inherit;text-shadow:inherit;
  color:var(--green);cursor:pointer;border-bottom:1px solid rgba(125,255,150,.25)}
.linkbtn:hover{color:#fff;border-bottom-color:#fff;background:rgba(125,255,150,.12)}
.linkbtn:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.nav{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem;color:var(--dim);flex-wrap:wrap}
.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;z-index:5;background:#000;padding:.4rem}
@media (max-width:480px){
  body{font-size:15px;padding:1rem .85rem}
  ol.poemlist li{padding-left:3.1ch;text-indent:-3.1ch}
  .num{width:2.1ch;margin-right:.7ch}
}
@media (prefers-reduced-motion:reduce){.cursor{animation:none}}
