/* Just Signal — SHARED report stylesheet (finding #4).
   Single source of truth for EVERY report renderer: app.html (rp), the local
   MCP package (lib.js), and the remote MCP endpoint (api/mcp.php) all link
   this file. Edit here; every published report updates. */

:root{--font-brand:'Orbitron',monospace;--font-ui:'Syne',sans-serif;--font-body:'Inter',sans-serif;--font-mono:'Syne Mono',monospace;--bg:#f9f7f4;--surface:#ffffff;--surface2:#f4f1ec;--border:#e8e2d9;--border2:#d4cbbf;--accent:#b05730;--accent-dark:#8c3f18;--accent-soft:rgba(176,87,48,0.08);--gold:#8a5a18;--green:#2d7a54;--red:#b83228;--text:#1a1612;--text2:#5a5248;--text3:#6b6560;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:860px;margin:0 auto;padding:0 24px;}
.rp-header{border-bottom:1px solid var(--border);background:var(--surface);position:sticky;top:0;z-index:50;}
.rp-header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:860px;margin:0 auto;}
.rp-logo{font-family:var(--font-brand);font-weight:900;font-size:17px;letter-spacing:3px;color:var(--accent);}
.rp-nav{display:flex;gap:8px;}
.rp-nav a{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;color:var(--text2);padding:8px 14px;border-radius:5px;border:1px solid transparent;transition:all .15s;}
.rp-nav a:hover{color:var(--accent);border-color:var(--border2);}
.rp-nav a.primary{background:var(--accent);color:#fff;border-color:var(--accent);}
.rp-nav a.primary:hover{background:var(--accent-dark);}
.rp-crumb{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;color:var(--text3);padding:20px 0 0;}
.rp-crumb a:hover{color:var(--accent);}
.rp-crumb span{color:var(--border2);margin:0 6px;}
.rp-head{padding:24px 0 32px;border-bottom:1px solid var(--border);margin-bottom:36px;}
.rp-meta-row{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap;}
.rp-date{font-family:var(--font-mono);font-size:13px;letter-spacing:1px;color:var(--accent);}
.rp-sector{font-family:var(--font-mono);font-size:11px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;}
.rp-signal{font-family:var(--font-mono);font-size:11px;letter-spacing:1px;padding:4px 11px;border-radius:11px;text-transform:uppercase;font-weight:700;}
.rp-signal.bullish{background:rgba(45,122,84,.12);color:var(--green);}
.rp-signal.neutral{background:var(--surface2);color:var(--text3);}
.rp-signal.bearish{background:rgba(184,50,40,.12);color:var(--red);}
.rp-title{font-family:var(--font-brand);font-weight:900;font-size:clamp(26px,5vw,40px);line-height:1.15;letter-spacing:-.5px;color:var(--text);}
.rp-transmission{display:flex;flex-wrap:wrap;gap:16px 30px;margin-top:22px;padding:14px 18px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;font-family:var(--font-mono);}
.rp-tx{display:flex;flex-direction:column;gap:3px;}
.rp-tx-k{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);}
.rp-tx-v{font-size:13px;color:var(--text);}
.rp-section{margin-bottom:44px;}
.rp-section>h2{font-family:var(--font-brand);font-weight:700;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border);}
.rp-lead{font-size:19px;color:var(--text);line-height:1.6;font-weight:500;}
.rp-count{float:right;font-family:var(--font-mono);font-size:11px;color:var(--text3);letter-spacing:1px;-webkit-text-fill-color:initial;}
/* Trend block */
.trend{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:28px 26px;margin-bottom:24px;}
.trend-top{display:flex;align-items:flex-start;gap:14px;margin-bottom:14px;}
.trend-num{font-family:var(--font-brand);font-weight:900;font-size:14px;color:#fff;background:var(--accent);min-width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.trend-titles{flex:1;}
.trend-title{font-family:var(--font-brand);font-weight:700;font-size:20px;line-height:1.25;color:var(--text);}
.trend-cat{font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;margin-top:5px;}
.trend-sig{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;padding:4px 10px;border-radius:10px;text-transform:uppercase;font-weight:700;white-space:nowrap;}
.trend-sig.bullish{background:rgba(45,122,84,.12);color:var(--green);}
.trend-sig.neutral{background:var(--surface2);color:var(--text3);}
.trend-sig.bearish{background:rgba(184,50,40,.12);color:var(--red);}
.trend-hook{font-size:16px;font-style:italic;color:var(--accent-dark);border-left:3px solid var(--accent);padding-left:16px;margin:16px 0 20px;line-height:1.55;}
.trend h4{font-family:var(--font-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin:20px 0 8px;}
.trend p{font-size:15.5px;color:var(--text2);margin-bottom:12px;}
.trend p:last-child{margin-bottom:0;}
.asset-tag{display:inline-block;font-family:var(--font-mono);font-size:12px;color:var(--accent);background:var(--accent-soft);padding:5px 12px;border-radius:6px;margin-top:8px;}
/* Targets */
.targets{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 4px;}
.day0{font-family:var(--font-mono);font-size:12px;margin:10px 0 4px;padding:8px 12px;border-radius:8px;background:rgba(0,200,120,0.08);border:1px solid rgba(0,200,120,0.25);}
.day0.rel{background:var(--surface2);border:1px solid var(--border);}
.day0 .day0-tag{font-size:9px;letter-spacing:1px;opacity:.7;padding:1px 6px;border:1px solid currentColor;border-radius:4px;margin-right:6px;}
.day0 .day0-src{opacity:.6;font-size:10px;}
.target{background:var(--surface2);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:8px;padding:16px 14px;}
.target-h{font-family:var(--font-mono);font-size:10px;letter-spacing:1.5px;color:var(--text3);text-transform:uppercase;margin-bottom:6px;}
.target-v{font-family:var(--font-brand);font-weight:700;font-size:21px;color:var(--accent);margin-bottom:5px;}
.target-n{font-size:12px;color:var(--text2);line-height:1.45;}
/* Risk list */
.risks{list-style:none;margin-top:6px;}
.risks li{padding:10px 0 10px 24px;position:relative;border-bottom:1px solid var(--border);font-size:14px;color:var(--text2);line-height:1.5;}
.risks li:last-child{border-bottom:none;}
.risks li::before{content:'\26A0';position:absolute;left:0;color:var(--gold);font-size:12px;}
/* Futurism */
.fut{margin-top:22px;border-top:1px dashed var(--border2);padding-top:20px;}
.fut-label{font-family:var(--font-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:12px;}
.fut-label::before{content:'\1F52E  ';}
.fut-narr{font-size:15px;color:var(--text);line-height:1.6;margin-bottom:20px;}
.horizons{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;}
.horizon{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:14px;}
.horizon-h{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;color:var(--accent);text-transform:uppercase;margin-bottom:7px;}
.horizon-t{font-family:var(--font-ui);font-weight:600;font-size:14px;color:var(--text);margin-bottom:6px;line-height:1.3;}
.horizon-d{font-size:12.5px;color:var(--text2);line-height:1.45;}
.sector{border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:12px;background:var(--surface);}
.sector-top{display:flex;align-items:center;gap:10px;margin-bottom:6px;flex-wrap:wrap;}
.impact{font-family:var(--font-mono);font-size:9px;letter-spacing:1px;padding:3px 8px;border-radius:9px;text-transform:uppercase;font-weight:700;}
.impact.crit{background:rgba(184,50,40,.14);color:var(--red);}
.impact.high{background:rgba(176,87,48,.14);color:var(--accent);}
.impact.med{background:var(--surface2);color:var(--text3);}
.sector-name{font-family:var(--font-ui);font-weight:600;font-size:15px;color:var(--text);}
.sector-cagr{font-family:var(--font-mono);font-size:11px;color:var(--green);margin-left:auto;}
.sector-desc{font-size:13px;color:var(--text2);line-height:1.5;margin-bottom:10px;}
.players{display:flex;flex-wrap:wrap;gap:7px;}
.player{font-family:var(--font-mono);font-size:11px;color:var(--accent);background:var(--accent-soft);padding:4px 10px;border-radius:6px;border:1px solid var(--border);transition:all .15s;}
.player:hover{background:var(--accent);color:#fff;}
.player .tk{font-weight:700;}
.instruments{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:6px;}
.instrument{border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:var(--surface);transition:all .15s;}
.instrument:hover{border-color:var(--accent);}
.instr-top{display:flex;align-items:center;gap:8px;margin-bottom:6px;}
.instr-type{font-family:var(--font-mono);font-size:9px;letter-spacing:1px;color:var(--text3);text-transform:uppercase;}
.instr-access{font-family:var(--font-mono);font-size:9px;letter-spacing:.5px;padding:2px 7px;border-radius:8px;text-transform:uppercase;font-weight:700;margin-left:auto;}
.instr-access.public{background:rgba(45,122,84,.12);color:var(--green);}
.instr-access.accredited{background:rgba(138,90,24,.14);color:var(--gold);}
.instr-name{font-family:var(--font-ui);font-weight:600;font-size:13.5px;color:var(--accent);margin-bottom:5px;}
.instr-thesis{font-size:12px;color:var(--text2);line-height:1.45;}
/* CTA / disclaimer / footer */
.rp-cta{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:40px 32px;text-align:center;margin:50px 0;}
.rp-cta h3{font-family:var(--font-brand);font-weight:700;font-size:22px;color:var(--text);margin-bottom:12px;}
.rp-cta p{font-size:15px;color:var(--text2);margin-bottom:24px;max-width:46ch;margin-left:auto;margin-right:auto;}
.rp-cta a{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-brand);font-weight:700;font-size:15px;letter-spacing:1px;color:#fff;background:var(--accent);padding:16px 34px;border-radius:6px;transition:background .15s,transform .15s;}
.rp-cta a:hover{background:var(--accent-dark);transform:translateY(-2px);}
.rp-disclaimer{font-family:var(--font-mono);font-size:12px;color:var(--text3);line-height:1.7;padding:24px;background:var(--surface2);border-radius:8px;margin-bottom:40px;}
.rp-footer{border-top:1px solid var(--border);background:var(--surface);text-align:center;padding:40px 24px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--text3);line-height:1.9;}
.rp-footer .phil{color:var(--accent);}
.rp-footer a{color:var(--gold);}
@media (max-width:600px){.targets,.horizons{grid-template-columns:1fr;}.rp-logo{font-size:15px;}.rp-nav a{padding:8px 10px;font-size:11px;}.trend{padding:22px 18px;}}
@media (pointer:coarse){.rp-nav a,.rp-cta a{min-height:44px;display:inline-flex;align-items:center;}}
