
@font-face { font-family:"Geist"; src:url("/fonts/geist-variable.woff2") format("woff2"); font-weight:100 900; font-display:swap; }
@font-face { font-family:"Courier Prime"; src:url("/fonts/courier-prime.woff2") format("woff2"); font-weight:400; font-display:swap; }
@font-face { font-family:"Courier Prime"; src:url("/fonts/courier-prime-bold.woff2") format("woff2"); font-weight:700; font-display:swap; }
:root {
  --paper:#E8F2FD; --ink:#0A1F33; --accent:#0053FD; --border:rgba(0,83,253,.20);
  --fg-2:#234567; --fg-3:#3F5F7D; --surface:#F6FAFF; --tap:44px;
  --font-sans:"Geist",system-ui,sans-serif; --font-mono:"Courier Prime",monospace;
}
@media (prefers-color-scheme: dark) {
  :root {
    --paper:#170D02; --ink:#F0CE92; --accent:#FFAC02; --border:rgba(255,172,2,.22);
    --fg-2:#D7A24A; --fg-3:#C9A25A; --surface:#1E1305;
  }
}
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans); }
.pf-shell { display:flex; align-items:center; justify-content:space-between;
  padding:calc(12px + env(safe-area-inset-top,0px)) 20px 12px; border-bottom:1px solid var(--border); }
.pf-home, .pf-mark { font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.12em;
  text-decoration:none; color:var(--accent); font-weight:700; font-size:12px; min-height:var(--tap);
  display:inline-flex; align-items:center; }
.pf-landing, .pf-piece { max-width:44rem; margin:0 auto; padding:32px 20px 80px; }
.pf-kicker { font-family:var(--font-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent); }
.pf-lead, .pf-empty { color:var(--fg-3); }
.pf-list { display:flex; flex-direction:column; gap:1px; margin-top:28px; border:1px solid var(--border); background:var(--border); }
.pf-item { display:flex; flex-direction:column; gap:6px; padding:16px; background:var(--surface); text-decoration:none; color:inherit; min-height:var(--tap); }
.pf-item .t { font-weight:600; }
.pf-item .d { color:var(--fg-3); font-size:14px; }
.pf-foot { border-top:1px solid var(--border); padding:16px 20px; font-family:var(--font-mono); font-size:11px; color:var(--fg-3); }
.reading { line-height:1.7; }
