@page { size: Letter; margin: 0; }
* { box-sizing: border-box; }
:root { --ink:#0b1020; --paper:#f4f1e8; --lime:#c8ff45; --violet:#8d7cff; --red:#ff5c67; --muted:#697083; --line:#c9c7bf; }
html,body { margin:0; padding:0; background:#d9d8d2; color:var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif; }
a { color:inherit; }
.page { position:relative; width:8.5in; height:11in; padding:.52in .58in .48in; background:var(--paper); overflow:hidden; break-after:page; page-break-after:always; }
.page:last-child { break-after:auto; }
.running { display:flex; justify-content:space-between; padding-bottom:10px; border-bottom:1px solid var(--ink); font-size:8px; letter-spacing:1.7px; font-weight:800; }
.folio { position:absolute; left:.58in; right:.58in; bottom:.25in; display:flex; justify-content:space-between; border-top:1px solid var(--ink); padding-top:7px; font-size:8px; letter-spacing:.7px; text-transform:uppercase; }
.folio b { font-size:11px; }
.eyebrow,.kicker { color:#5c43e8; font-size:9px; letter-spacing:2px; font-weight:900; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h2 { margin:.08in 0 .2in; max-width:6.8in; font-family: Georgia, "Times New Roman", serif; font-size:37px; line-height:.98; letter-spacing:-1.1px; }
h3 { font-size:10px; letter-spacing:1.3px; }
p { font-size:10.7px; line-height:1.43; }
.lead { font-family:Georgia,serif; font-size:17px; line-height:1.33; }
.cover { color:white; background:radial-gradient(circle at 78% 18%,#5b43cc 0,#251f5b 25%,transparent 47%),linear-gradient(145deg,#080d1c 0%,#10162c 70%,#19223b 100%); padding:.62in; }
.brand { display:flex; width:max-content; align-items:center; gap:9px; color:white; font-size:9px; letter-spacing:2px; font-weight:800; text-decoration:none; }
.brand-mark { display:grid; place-items:center; width:25px; height:25px; color:#091020; background:var(--lime); border-radius:50%; font-family:Georgia,serif; font-size:16px; }
.issue { position:absolute; right:.62in; top:.7in; font-size:9px; letter-spacing:1.7px; }
.cover-copy { margin-top:1.28in; width:6.65in; }
.cover .kicker { color:var(--lime); margin-bottom:12px; }
.cover h1 { font-family:Georgia,serif; font-size:58px; line-height:.94; letter-spacing:-2.5px; margin:0 0 20px; }
.dek { width:6.3in; color:#d6d9e6; font-size:15px; line-height:1.42; }
.cover-learning { width:5.8in; margin-top:18px; color:#c7ccdc; font-size:10px; line-height:1.4; letter-spacing:.15px; }
.cover-learning a { color:var(--lime); font-weight:800; text-decoration:none; }
.cover-chart { position:absolute; left:.62in; right:.62in; bottom:1.25in; border:1px solid #535b78; padding:15px 17px; background:#0e1427cc; }
.chart-title { margin-bottom:10px; color:#9da6c3; font-size:8px; letter-spacing:1.5px; }
.bar-row { display:grid; grid-template-columns:.75in 1fr .75in; align-items:center; gap:10px; margin:8px 0; font-size:8px; font-weight:800; }
.bar-row i { display:block; height:7px; background:#343c57; }
.bar-row i:before { content:""; display:block; width:var(--w); height:100%; background:linear-gradient(90deg,var(--lime),var(--violet)); }
.bar-row b { color:#d2d6e5; font-size:7px; text-align:right; }
.cover-footer { position:absolute; left:.62in; right:.62in; bottom:.5in; display:flex; justify-content:space-between; border-top:1px solid #525a73; padding-top:10px; color:#aab0c3; font-size:8px; letter-spacing:1px; }
.editor-grid { display:grid; grid-template-columns:1.5fr .8fr; gap:.42in; margin-top:.5in; }
.editor-grid blockquote { margin:.25in 0 0; padding:.18in; background:var(--ink); color:white; }
blockquote p { margin-bottom:8px; font-family:Georgia,serif; font-size:16px; line-height:1.25; }
blockquote cite { color:var(--lime); font-size:7px; font-style:normal; letter-spacing:1px; }
.contents { border-left:4px solid var(--violet); padding-left:18px; }
.contents ol { list-style:none; padding:0; margin:15px 0; }
.contents li { display:flex; gap:11px; padding:11px 0; border-top:1px solid var(--line); }
.contents li b { color:#5c43e8; font-family:Georgia,serif; font-size:20px; }
.contents li span { font-size:10px; font-weight:800; line-height:1.3; }
.contents small { color:var(--muted); font-size:8px; font-weight:500; }
.signal-strip { position:absolute; left:.58in; right:.58in; bottom:.62in; display:grid; grid-template-columns:repeat(4,1fr); border-top:4px solid var(--ink); border-bottom:1px solid var(--ink); }
.signal-strip div { padding:12px; border-right:1px solid var(--line); }
.signal-strip div:last-child { border:0; }
.signal-strip b { display:block; font-family:Georgia,serif; font-size:25px; }
.signal-strip span { font-size:7px; text-transform:uppercase; letter-spacing:.7px; }
.product-head { display:grid; grid-template-columns:1.5fr .7fr; gap:.3in; align-items:end; margin-top:.35in; }
.product-head h2 { font-size:35px; margin-bottom:.05in; }
.verdict { padding:13px; border:1px solid var(--ink); margin-bottom:.1in; }
.verdict span,.verdict small { display:block; font-size:7px; letter-spacing:1px; }
.verdict b { display:block; margin:7px 0; font-size:13px; }
.verdict.up { background:var(--lime); }.verdict.down { background:#ffd5d8; }.verdict.neutral { background:#ddd8ff; }
.timeline { display:grid; grid-template-columns:1fr 18px 1fr 18px 1fr 18px 1fr; align-items:center; padding:12px 0; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); font-size:7px; letter-spacing:.6px; }
.timeline i { display:block; height:1px; background:var(--ink); position:relative; }
.timeline i:after { content:"›"; position:absolute; right:-2px; top:-8px; font-size:14px; }
.timeline b { font-size:8px; }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:.38in; margin-top:.28in; }
.two-col article + article { border-left:1px solid var(--line); padding-left:.3in; }
.two-col h3 { padding-bottom:8px; border-bottom:3px solid var(--violet); }
.quote { margin:14px 0; padding:14px; background:white; border-left:4px solid var(--violet); }
.quote p { color:var(--ink); font-size:14px; }
.quote cite { color:#5c43e8; }
.quote.small p { font-size:12px; }
.pain { margin-top:14px; padding:12px; background:var(--ink); color:white; }
.pain span { color:var(--lime); font-size:7px; letter-spacing:1.3px; }
.pain b { display:block; margin:5px 0; font-family:Georgia,serif; font-size:15px; }
.pain p { margin:0; color:#d2d5df; font-size:8.5px; }
.metric { margin:15px 0; display:grid; grid-template-columns:1.15in 1fr; align-items:center; background:#ddd8ff; padding:12px; }
.metric.warning { background:#ffe0c3; }
.metric b { font-family:Georgia,serif; font-size:27px; }
.metric span { font-size:8px; line-height:1.35; }
.bottom-line { position:absolute; left:.58in; right:.58in; bottom:.59in; padding:11px 14px; background:#e3e0d7; border-top:1px solid var(--ink); font-size:9px; line-height:1.35; }
.forecast h2,.playbook h2,.sources h2 { margin-top:.08in; }
.forecast .lead { width:6.6in; font-size:14px; }
.ranking { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin:.28in 0; }
.rank-card { min-height:2.2in; padding:12px 10px; border:1px solid var(--ink); background:white; }
.rank-card > b { display:block; font-family:Georgia,serif; font-size:35px; color:#5c43e8; }
.rank-card h3 { margin:6px 0 18px; font-size:10px; }
.rank-card strong { display:block; padding-top:8px; border-top:3px solid var(--lime); font-size:9px; }
.rank-card p { margin-top:10px; font-size:8.5px; }
.scenario-grid { display:grid; grid-template-columns:1.25fr .8fr; gap:.25in; }
.scenario-grid article { padding:16px; border:1px solid var(--ink); }
.scenario-grid ul { padding-left:16px; }
.scenario-grid li { margin:7px 0; font-size:9px; line-height:1.35; }
.scenario-grid .winner { color:white; background:var(--ink); }
.winner span { color:var(--lime); font-size:7px; letter-spacing:1.4px; }
.winner h3 { margin:12px 0; font-family:Georgia,serif; font-size:26px; letter-spacing:-.5px; }
.jobs-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.jobs-grid article { padding:14px; border:1px solid var(--ink); background:white; min-height:1.3in; }
.jobs-grid span { color:#5c43e8; font-size:7px; letter-spacing:1.2px; font-weight:800; }
.jobs-grid h3 { margin:7px 0; font-family:Georgia,serif; font-size:17px; letter-spacing:0; }
.jobs-grid p { font-size:9px; margin:0; }
.rules { margin-top:.28in; padding:.2in; background:var(--ink); color:white; }
.rules h3 { color:var(--lime); }
.rules ol { margin:0; padding-left:22px; display:grid; grid-template-columns:1fr 1fr; column-gap:.35in; }
.rules li { padding:7px 5px; font-size:9px; }
.rules li b,.rules li span { display:block; }.rules li span { color:#bfc4d3; margin-top:3px; font-size:8px; }
.use-case-radar .lead { width:6.7in; margin-bottom:.23in; font-size:14px; }
.radar-grid { display:grid; gap:9px; }
.radar-card { display:grid; grid-template-columns:1.16in 1fr; min-height:1.63in; border:1px solid var(--ink); background:white; }
.radar-meta { display:flex; flex-direction:column; padding:13px 11px; color:white; background:var(--ink); }
.radar-meta span { min-height:24px; color:var(--lime); font-size:7px; font-weight:900; letter-spacing:1.2px; }
.radar-meta b { margin-top:auto; font-family:Georgia,serif; font-size:31px; line-height:1; }
.radar-meta small { margin-top:4px; color:#bfc4d3; font-size:6.5px; text-transform:uppercase; letter-spacing:.6px; }
.radar-card.emerging .radar-meta { background:#4637a1; }
.radar-card.fringe .radar-meta { color:var(--ink); background:var(--lime); }
.radar-card.fringe .radar-meta span,.radar-card.fringe .radar-meta small { color:var(--ink); }
.radar-copy { position:relative; padding:12px 15px; }
.radar-copy h3 { margin:0 0 6px; font-family:Georgia,serif; font-size:20px; line-height:1; letter-spacing:-.3px; }
.radar-thesis { margin:0 0 9px; font-size:9px; line-height:1.3; }
.example-row { display:grid; grid-template-columns:.68in 1fr; padding:4px 0; border-top:1px solid var(--line); }
.example-row b,.case-study b,.fringe-cases b { color:#5c43e8; font-size:6.8px; letter-spacing:.8px; }
.example-row span { font-size:8px; }
.radar-note { margin:7px 0 0; color:var(--muted); font-size:7px; line-height:1.3; }
.case-study { display:grid; grid-template-columns:.9in 1fr; padding:5px 0; border-top:1px solid var(--line); }
.case-study p { margin:0; font-size:7.8px; line-height:1.27; }
.fringe-cases { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.fringe-cases div { min-height:.58in; padding:7px; background:#efede5; }
.fringe-cases b,.fringe-cases span { display:block; }
.fringe-cases span { margin-top:5px; font-size:7.4px; line-height:1.25; }
.radar-bottom { margin-top:11px; padding:13px 15px; color:white; background:linear-gradient(120deg,var(--ink),#392d86); }
.radar-bottom span { display:block; color:var(--lime); font-size:7px; font-weight:900; letter-spacing:1.2px; }
.radar-bottom strong { display:block; margin:5px 0 3px; font-family:Georgia,serif; font-size:18px; }
.radar-bottom p { margin:0; color:#d0d4df; font-size:8px; }
.radar-bottom a { display:inline-block; margin-top:7px; color:var(--lime); font-size:7px; font-weight:900; letter-spacing:.45px; text-decoration:none; text-transform:uppercase; }
.sources > p { width:6.7in; }
.evidence-ledger { margin:.15in 0 .08in; padding:11px; color:white; background:var(--ink); }
.ledger-title { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; }
.ledger-title span { color:var(--lime); font-size:7px; font-weight:900; letter-spacing:1.1px; }
.ledger-title b { color:#c9cddd; font-size:7px; font-weight:500; }
.ledger-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#3e455b; }
.ledger-grid div { min-height:.48in; padding:7px 8px; background:#151b2e; }
.ledger-grid b { display:block; font-family:Georgia,serif; font-size:18px; line-height:1; }
.ledger-grid span { display:block; margin-top:4px; color:#c9cddd; font-size:6.8px; line-height:1.25; }
.source-columns { display:grid; grid-template-columns:1fr 1fr; gap:.35in; margin-top:.08in; }
.source-columns h3 { margin:8px 0 4px; color:#5c43e8; }
.source-columns p { margin-bottom:5px; font-size:7.8px; line-height:1.32; }
.method-box { margin-top:.08in; padding:9px 11px; border:1px solid var(--ink); }
.method-box b { font-size:8px; letter-spacing:1.3px; }.method-box p { margin:5px 0 0; font-size:8.5px; }
.signoff { position:absolute; left:.58in; right:.58in; bottom:.62in; padding:.25in; color:white; background:linear-gradient(120deg,var(--ink),#392d86); }
.signoff span { color:var(--lime); font-size:8px; letter-spacing:1.5px; }.signoff h3 { margin:7px 0 2px; font-family:Georgia,serif; font-size:24px; letter-spacing:0; }.signoff p { margin:0; font-size:8px; }
.signoff a { color:white; text-decoration:none; }
code { font-size:8px; }
