/* ===================================================================
   signal.css — The Signal Report (blog) reading register.
   Loads AFTER /site.css and reuses its :root tokens + footer styles.
   Blog pages are deliberately quiet: no walker, no games, no reticle —
   a professional reading surface in the same brutalist dark+lime skin.
   =================================================================== */

/* the home page disables text selection site-wide; a publication must not (and iOS long-press
   link previews / image callouts are expected reading behaviour — restore those too) */
.sig-main, .sig-main *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}

/* site.css's footer has no horizontal frame of its own (the home page wraps it) — give it one here */
footer{max-width:1140px;margin:0 auto;padding:30px 28px}

/* ---- masthead (slim, static — no scrollspy/burger dependencies) ---- */
.sig-mast{border-bottom:1px solid var(--line);background:var(--bg)}
.sig-mast .bar{max-width:1140px;margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.sig-home{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-decoration:none;white-space:nowrap;transition:color .2s;
  display:inline-flex;align-items:center;min-height:44px;padding:0 14px;margin-left:-14px}   /* 44px touch target */
.sig-home:hover{color:var(--lime)}
.sig-cta{font-size:.78rem;font-weight:800;color:#0f0e13;background:var(--lime);padding:0 16px;border-radius:6px;text-decoration:none;white-space:nowrap;
  display:inline-flex;align-items:center;min-height:42px}
.sig-cta:hover{filter:brightness(1.08)}

/* ---- wordmark block ---- */
.sig-head{max-width:860px;margin:0 auto;padding:58px 28px 30px}
.sig-kick{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.68rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--lime)}
.sig-kick .dim{color:var(--muted)}
.sig-title{font-size:clamp(2.4rem,7vw,4.6rem);line-height:.95;font-weight:900;letter-spacing:-.04em;text-transform:uppercase;margin:14px 0 10px}
.sig-title .lime{color:var(--lime)}
.sig-tag{color:var(--muted);font-size:1.02rem;max-width:56ch}
.sig-tag b{color:var(--ink)}

/* ---- report index cards ---- */
.sig-list{max-width:860px;margin:0 auto;padding:8px 28px 70px;display:flex;flex-direction:column;gap:14px}
.rep-card{display:block;border:1px solid var(--line-2);border-radius:10px;background:var(--card);padding:22px 24px;text-decoration:none;color:inherit;transition:border-color .2s var(--ease),transform .2s var(--ease)}
.rep-card:hover,.rep-card:focus-visible{border-color:var(--lime);transform:translateX(4px);outline:none}
.rep-kick{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.66rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--lime)}
.rep-kick .dim{color:var(--muted)}
.rep-card h2{font-size:1.35rem;font-weight:900;letter-spacing:-.01em;margin:8px 0 6px;color:var(--ink)}
.rep-card p{color:var(--muted);font-size:.95rem;line-height:1.6}
.rep-more{display:inline-block;margin-top:12px;font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.68rem;font-weight:800;letter-spacing:.16em;color:var(--lime)}

/* ---- article ---- */
.post{max-width:720px;margin:0 auto;padding:54px 28px 30px}
.post-kicker{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.68rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--lime)}
.post-kicker .dim{color:var(--muted)}
.post h1{font-size:clamp(2rem,6vw,3.4rem);line-height:1.02;font-weight:900;letter-spacing:-.03em;margin:16px 0 14px}
.post .dek{font-size:1.14rem;color:var(--faint);line-height:1.6;max-width:58ch}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:22px 0 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.post-meta b{color:var(--ink)}
.post-meta a{color:var(--lime);text-decoration:none}
.post-body{max-width:720px;margin:0 auto;padding:10px 28px 26px}
.post-body p{font-size:1.04rem;line-height:1.78;color:var(--faint);margin:0 0 1.25em;max-width:68ch}
.post-body p b,.post-body p strong{color:var(--ink)}
.post-body h2{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.8rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin:2.2em 0 .9em;display:flex;align-items:center;gap:10px}
.post-body h2::before{content:"";width:9px;height:9px;background:var(--lime);flex:0 0 auto}
.post-body a{color:var(--lime);text-decoration:none;border-bottom:1px solid rgba(214,255,63,.4);transition:border-color .2s}
.post-body a:hover{border-bottom-color:var(--lime)}
.post-body ul,.post-body ol{margin:0 0 1.25em;padding-left:1.3em;color:var(--faint);line-height:1.7;max-width:66ch}
.post-body li{margin-bottom:.55em;font-size:1.02rem}
.post-body li::marker{color:var(--lime)}
.post-body blockquote{border-left:3px solid var(--lime);margin:1.6em 0;padding:.2em 0 .2em 1.2em;color:var(--ink);font-size:1.08rem}

/* ---- sources (citation-forward: the whole point) ---- */
.sources{border:1px solid var(--line-2);border-radius:10px;background:var(--card);padding:20px 22px;margin:2.2em 0}
.sources h2{margin-top:0!important}
.sources ol{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.78rem;line-height:1.7;padding-left:1.5em;margin:0}
.sources li{margin-bottom:.5em;color:var(--muted)}

/* ---- author box (E-E-A-T: who wrote this and why trust it) ---- */
.author-box{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--line-2);border-radius:10px;background:var(--card);padding:20px 22px;margin:2.4em 0 0}
.author-box img{width:64px;height:64px;border-radius:8px;object-fit:cover;object-position:center 18%;border:1px solid var(--line-2);flex:0 0 auto}
.author-box .who{font-weight:900;color:var(--ink)}
.author-box p{font-size:.9rem;color:var(--muted);line-height:1.6;margin:4px 0 8px}
.author-box .links{display:flex;flex-wrap:wrap;gap:0 10px;font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.author-box .links a{color:var(--lime);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;padding:0 6px;margin-left:-6px}   /* 44px touch target */
.author-box .links a:hover{text-decoration:underline}

/* ---- article footer nav ---- */
.post-end{max-width:720px;margin:0 auto;padding:0 28px 70px}
.post-end .back{font-family:ui-monospace,'Roboto Mono',Menlo,monospace;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-decoration:none;
  display:inline-flex;align-items:center;min-height:44px}   /* 44px touch target */
.post-end .back:hover{color:var(--lime)}

@media(max-width:600px){
  .sig-head{padding:40px 20px 22px}
  .sig-list{padding:6px 20px 54px}
  .post{padding:40px 20px 22px}
  .post-body{padding:8px 20px 20px}
  .post-end{padding:0 20px 54px}
  .sig-mast .bar{padding:12px 20px}
  .author-box{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){ .rep-card{transition:none} .rep-card:hover{transform:none} }
