:root{
    --ink:#1b1b1a; --paper:#fdfcf8; --muted:#6f6a60; --rule:#d9d4c7;
    --crimson:#9e1b1b; --navy:#1f3a5f; --slate:#7b8794; --gold:#b8860b;
    --teal:#2a7f7f; --green:#2e7d4f; --grid:#ece8dd;
  }
  *{box-sizing:border-box}
  body{margin:0; background:var(--paper); color:var(--ink);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.5; -webkit-font-smoothing:antialiased;}
  .wrap{max-width:920px; margin:0 auto; padding:0 22px 70px;}
  .pdfbar{text-align:right; padding:14px 0 0;}
  .pdfbtn{display:inline-block; font-size:12px; font-weight:700; letter-spacing:0.3px;
    color:var(--slate); text-decoration:none; border:1px solid var(--rule); border-radius:3px;
    padding:6px 12px;}
  .pdfbtn:hover{color:var(--crimson); border-color:var(--crimson);}
  .masthead{text-align:center; padding:30px 0 14px; border-bottom:3px double var(--ink);}
  .masthead h1{font-family:Georgia,"Times New Roman",serif; font-weight:700;
    font-size:clamp(38px,8vw,72px); letter-spacing:-0.5px; margin:0; line-height:0.95;}
  .masthead h1 .reg{color:var(--crimson); font-size:0.4em; vertical-align:top; margin-left:2px;}
  .masthead .tag{font-family:Georgia,serif; font-style:italic; color:var(--muted); margin-top:8px; font-size:15px;}
  .dateline{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px;
    font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted);
    padding:9px 0; border-bottom:1px solid var(--rule);}
  .dateline .lead{font-family:Georgia,serif; font-style:italic; text-transform:none; letter-spacing:0; color:var(--crimson); font-size:14px;}
  .tape{display:flex; flex-wrap:wrap; gap:0; border-bottom:1px solid var(--rule); padding:4px 0; font-variant-numeric:tabular-nums;}
  .tape .t{flex:1 1 110px; padding:8px 10px; border-right:1px solid var(--rule);}
  .tape .t:last-child{border-right:none}
  .tape .nm{font-size:10px; letter-spacing:.06em; text-transform:uppercase; color:var(--muted)}
  .tape .px{font-size:17px; font-weight:600; font-family:Georgia,serif}
  .tape .ch{font-size:12px; font-weight:600}
  .tape .t.stale{background:repeating-linear-gradient(135deg,transparent,transparent 6px,#f3efe4 6px,#f3efe4 7px);}
  .tape .asof{display:block; font-size:9px; letter-spacing:.04em; color:var(--slate); font-style:italic; margin-top:1px;}
  .up{color:var(--green)} .dn{color:var(--crimson)} .fl{color:var(--muted)}
  .index{padding:16px 0; border-bottom:1px solid var(--rule); columns:2; column-gap:30px;}
  .index a{display:block; color:var(--ink); text-decoration:none; font-size:14px; padding:3px 0; border-bottom:1px dotted transparent;}
  .index a:hover{border-bottom-color:var(--crimson); color:var(--crimson)}
  .index .num{color:var(--crimson); font-family:Georgia,serif; font-weight:700; margin-right:8px;}
  .note{font-size:12.5px; color:var(--muted); padding:14px 0; border-bottom:1px solid var(--rule); font-style:italic; line-height:1.45}
  .edge{border:1px solid var(--ink); border-top:4px solid var(--crimson); background:#fffdf7; padding:18px 20px; margin:18px 0 4px;}
  .edge h3{font-family:Georgia,serif; font-size:20px; margin:0 0 3px; font-weight:700;}
  .edge .stamp{font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--crimson); font-weight:700; margin-bottom:10px;}
  .edge p{font-size:14.5px; margin:0 0 10px; line-height:1.55;}
  .edge p:last-child{margin-bottom:0}
  .section{padding-top:30px;}
  .section h2{font-family:Georgia,serif; font-size:25px; font-weight:700; margin:0 0 4px;
    border-bottom:2px solid var(--ink); padding-bottom:6px; display:flex; justify-content:space-between; align-items:baseline;}
  .section h2 .back{font-size:11px; font-weight:400; font-style:italic; color:var(--slate);}
  .section h2 .back a{color:var(--slate); text-decoration:none}
  .section h2 .back a:hover{color:var(--crimson)}
  .item{padding:20px 0; border-bottom:1px solid var(--rule);}
  .item .eyebrow{font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:var(--crimson); font-weight:700; margin-bottom:5px;}
  .item .webtag{display:inline-block; margin-left:7px; font-size:9px; letter-spacing:.08em; color:#8a8275; border:1px solid var(--rule); border-radius:9px; padding:1px 7px; vertical-align:middle;}
  .item .mkttag{display:inline-block; margin-left:7px; font-size:9px; letter-spacing:.08em; color:var(--teal); border:1px solid var(--teal); border-radius:9px; padding:1px 7px; vertical-align:middle;}
  .item .lead{font-family:Georgia,serif; font-size:18px; font-weight:700; margin:0 0 5px; line-height:1.3;}
  .item .body{font-size:14.5px; color:#2c2a26; margin:0 0 12px;}
  .chartbox{position:relative; background:#fff; border:1px solid var(--rule); border-radius:2px; padding:26px 12px 10px;}
  .chartbox .cap{position:absolute; top:9px; left:14px; font-size:11.5px; font-weight:700; color:var(--ink); font-family:Georgia,serif;}
  .chartbox .mark{position:absolute; top:9px; right:14px; font-size:10px; color:#cdc7b8; font-family:Georgia,serif; font-style:italic;}
  .chartbox img{display:block; width:100%; height:auto;}
  .src{font-size:11px; color:var(--muted); margin-top:7px; font-style:italic;}
  .src a{color:var(--slate); text-decoration:none; border-bottom:1px dotted var(--rule);}
  .src a:hover{color:var(--crimson); border-bottom-color:var(--crimson);}
  .foot{padding:34px 0 0; text-align:center; color:var(--muted); font-size:12px; line-height:1.6;}
  .foot .rule{border:none; border-top:1px solid var(--rule); margin:0 0 20px;}
  .foot strong{color:var(--ink)}
  @media (max-width:560px){ .index{columns:1} .tape .t{flex:1 1 50%; border-bottom:1px solid var(--rule)} }
  /* PDF/print: keep each item, its chart, and the Edge whole — never split across a page. */
  @media print {
    .item, .chartbox, .edge, .index, .tape { break-inside:avoid; page-break-inside:avoid; }
    .section h2 { break-after:avoid; page-break-after:avoid; }
    .item .lead { break-after:avoid; }
    .wrap { padding-bottom:0; }
    .pdfbar { display:none; }
  }
