@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Source+Serif+4:ital,opsz,wght@0,8..60,300;0,8..60,400;0,8..60,600;1,8..60,300;1,8..60,400&family=DM+Mono:wght@400;500&display=swap');

:root {
  --ink:#1a1410;--ink2:#3d3228;--ink3:#6b5c4e;--ink4:#9a8778;
  --paper:#faf8f4;--paper2:#f2ede4;--paper3:#e8e0d0;
  --red:#b91c1c;--red-l:#fef2f2;
  --amber:#92400e;--amber-l:#fffbeb;
  --blue:#1e3a5f;--blue-l:#eff6ff;
  --rule:#c8b89a;--gold:#b5860d;
  --nav-h:56px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:17px;scroll-behavior:smooth;}
body{font-family:'Source Serif 4',Georgia,serif;font-weight:300;background:var(--paper);color:var(--ink);line-height:1.75;-webkit-font-smoothing:antialiased;}

/* ── NAV ──────────────────────────────────── */
.site-nav{position:sticky;top:0;z-index:100;background:#1a1410;border-bottom:2px solid var(--gold);display:flex;align-items:center;height:var(--nav-h);padding:0 1.5rem;gap:0;overflow-x:auto;scrollbar-width:none;}
.site-nav::-webkit-scrollbar{display:none;}
.nav-brand{font-family:'Playfair Display',serif;font-size:.85rem;font-weight:700;color:#e8c060;white-space:nowrap;margin-right:1.5rem;text-decoration:none;letter-spacing:-.01em;flex-shrink:0;}
.nav-links{display:flex;gap:0;flex-shrink:0;}
.nav-links a{font-family:'DM Mono',monospace;font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:#8a7a60;text-decoration:none;padding:.5rem .7rem;white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;}
.nav-links a:hover{color:#e8c060;border-bottom-color:#e8c060;}
.nav-links a.active{color:#e8e0d0;border-bottom-color:var(--gold);}
.nav-links a.home-link{color:#c8b890;}

/* ── BREADCRUMB ────────────────────────────── */
.breadcrumb{font-family:'DM Mono',monospace;font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);padding:.6rem 2rem;background:var(--paper2);border-bottom:1px solid var(--rule);}
.breadcrumb a{color:var(--ink4);text-decoration:none;}
.breadcrumb a:hover{color:var(--ink2);}
.breadcrumb span{margin:0 .4rem;color:var(--rule);}

/* ── MASTHEAD ─────────────────────────────── */
.masthead{background:var(--ink);color:var(--paper);text-align:center;padding:2.5rem 2rem 2rem;border-bottom:4px double var(--gold);}
.masthead-pub{font-family:'DM Mono',monospace;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;}
.masthead-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.2rem);font-weight:900;line-height:1.08;letter-spacing:-.02em;margin-bottom:.4rem;}
.masthead-title em{font-style:italic;color:#e8c060;}
.masthead-sub{font-family:'Source Serif 4',serif;font-style:italic;font-size:1rem;color:#b0a080;max-width:560px;margin:.6rem auto 1.2rem;line-height:1.5;}
.masthead-meta{font-family:'DM Mono',monospace;font-size:.56rem;letter-spacing:.12em;text-transform:uppercase;color:#6a5a40;border-top:1px solid #3a3020;padding-top:.8rem;}

/* ── PAGE HEADER (inner pages) ──────────────── */
.page-header{background:var(--ink);color:var(--paper);padding:2rem 2rem 1.75rem;border-bottom:3px solid var(--gold);}
.page-header-inner{max-width:780px;margin:0 auto;}
.page-kicker{font-family:'DM Mono',monospace;font-size:.56rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem;}
.page-title{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:900;line-height:1.1;color:var(--paper);margin-bottom:.4rem;}
.page-subtitle{font-family:'Source Serif 4',serif;font-style:italic;font-size:.95rem;color:#b0a080;line-height:1.5;}

/* ── LAYOUT ─────────────────────────────────── */
.container{max-width:780px;margin:0 auto;padding:0 2rem;}
.page-content{padding:2rem 0 4rem;}

/* ── BODY TEXT ───────────────────────────────── */
h2{font-family:'Playfair Display',serif;font-size:1.55rem;font-weight:700;color:var(--ink);margin:2.5rem 0 .6rem;padding-bottom:.4rem;border-bottom:2px solid var(--rule);line-height:1.2;}
h2 .snum{font-family:'DM Mono',monospace;font-size:.62rem;color:var(--red);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:.15rem;}
h3{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;font-style:italic;color:var(--ink2);margin:1.5rem 0 .4rem;}
p{font-size:.97rem;color:var(--ink);margin-bottom:1rem;line-height:1.75;}
p+p{text-indent:1.4em;}
.no-indent{text-indent:0!important;}

/* ── STAT GRID ───────────────────────────────── */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin:1.75rem 0;}
.stat-cell{background:var(--paper);padding:1rem;text-align:center;}
.stat-num{font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:900;color:var(--red);line-height:1;display:block;}
.stat-label{font-family:'DM Mono',monospace;font-size:.54rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ink4);margin-top:.25rem;display:block;line-height:1.3;}

/* ── FINDING BOXES ───────────────────────────── */
.finding{background:var(--red-l);border:1px solid #fca5a5;border-left:4px solid var(--red);padding:1.1rem 1.4rem;margin:1.25rem 0;}
.note-box{background:var(--amber-l);border:1px solid #fcd34d;border-left:4px solid var(--amber);padding:1.1rem 1.4rem;margin:1.25rem 0;}
.info-box{background:var(--blue-l);border:1px solid #93c5fd;border-left:4px solid var(--blue);padding:1.1rem 1.4rem;margin:1.25rem 0;}
.finding-label{font-family:'DM Mono',monospace;font-size:.56rem;text-transform:uppercase;letter-spacing:.13em;color:var(--red);margin-bottom:.3rem;font-weight:500;display:block;}
.note-box .finding-label{color:var(--amber);}
.info-box .finding-label{color:var(--blue);}
.finding p,.note-box p,.info-box p{font-size:.92rem;margin-bottom:0;text-indent:0;color:var(--ink2);}
.finding strong,.note-box strong,.info-box strong{color:var(--ink);}

/* ── PULLQUOTE ───────────────────────────────── */
.pullquote{border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);padding:1.25rem 0;margin:2rem 0;text-align:center;}
.pullquote p{font-family:'Playfair Display',serif;font-size:1.25rem;font-style:italic;font-weight:400;line-height:1.4;color:var(--ink);margin:0;text-indent:0;}
.pullquote cite{font-family:'DM Mono',monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);display:block;margin-top:.6rem;}

/* ── DATA TABLE ──────────────────────────────── */
.data-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.83rem;}
.data-table thead th{background:var(--ink);color:var(--paper);font-family:'DM Mono',monospace;font-size:.54rem;text-transform:uppercase;letter-spacing:.07em;padding:.55rem .75rem;text-align:left;}
.data-table tbody tr:nth-child(even){background:var(--paper2);}
.data-table td{padding:.5rem .75rem;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.4;}
.data-table td:first-child{font-weight:600;color:var(--ink2);}
.money{color:var(--red);font-family:'DM Mono',monospace;font-size:.78rem;font-weight:500;}

/* ── PREDICTION MATRIX ───────────────────────── */
.pred-matrix{margin:1.5rem 0;}
.tier-head{font-family:'DM Mono',monospace;font-size:.56rem;text-transform:uppercase;letter-spacing:.12em;padding:.4rem .9rem;font-weight:500;}
.tier-head.t1{background:#fef2f2;color:var(--red);border-left:3px solid var(--red);}
.tier-head.t2{background:var(--amber-l);color:var(--amber);border-left:3px solid var(--amber);}
.tier-head.t3{background:var(--blue-l);color:var(--blue);border-left:3px solid var(--blue);}
.pred-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:center;padding:.8rem .9rem;border-bottom:1px solid var(--rule);}
.pred-row:first-of-type{border-top:1px solid var(--rule);}
.pred-title{font-weight:600;font-size:.9rem;color:var(--ink);}
.pred-sub{font-size:.77rem;color:var(--ink3);margin-top:.1rem;font-style:italic;}
.pred-bar-wrap{display:flex;align-items:center;gap:.5rem;min-width:130px;}
.pred-bar-bg{flex:1;height:5px;background:var(--paper3);border-radius:3px;}
.pred-bar-fill{height:5px;border-radius:3px;}
.tier-1 .pred-bar-fill{background:var(--red);}
.tier-2 .pred-bar-fill{background:var(--amber);}
.tier-3 .pred-bar-fill{background:var(--blue);}
.pred-pct{font-family:'DM Mono',monospace;font-size:.66rem;color:var(--ink3);min-width:30px;text-align:right;}

/* ── TICKER PANEL ────────────────────────────── */
.ticker-panel{background:#0f1117;border:1px solid #2a3040;border-left:4px solid var(--gold);padding:.9rem 1.1rem .8rem;margin:1.5rem 0;}
.ticker-panel-label{font-family:'DM Mono',monospace;font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem;display:flex;align-items:center;gap:.4rem;}
.ticker-panel-label::before{content:'◈';font-size:.58rem;}
.ticker-panel-label::after{content:'';flex:1;height:1px;background:#2a3040;}
.ticker-grid{display:flex;flex-wrap:wrap;gap:.45rem;}
.ticker-chip{display:inline-flex;flex-direction:column;background:#1a1f2e;border:1px solid #2a3a50;border-radius:3px;padding:.4rem .65rem;min-width:84px;}
.ticker-chip:hover{background:#222840;border-color:var(--gold);}
.ticker-sym{font-family:'DM Mono',monospace;font-size:.74rem;font-weight:500;color:#7ecfff;letter-spacing:.04em;line-height:1;}
.ticker-sym.crypto{color:#f0a050;}
.ticker-sym.etf{color:#80e080;}
.ticker-name{font-family:'DM Mono',monospace;font-size:.5rem;color:#5a7090;margin-top:.18rem;line-height:1.2;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ticker-type{font-family:'DM Mono',monospace;font-size:.43rem;color:#3a5060;text-transform:uppercase;letter-spacing:.08em;margin-top:.12rem;}
.ticker-disclaimer{font-family:'DM Mono',monospace;font-size:.48rem;color:#3a4050;margin-top:.6rem;letter-spacing:.05em;line-height:1.5;border-top:1px solid #1e2535;padding-top:.45rem;}

/* ── SECTION NAV (PREV/NEXT) ─────────────────── */
.section-nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-top:1px solid var(--rule);margin-top:3rem;gap:1rem;}
.sec-nav-btn{font-family:'DM Mono',monospace;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);text-decoration:none;display:flex;align-items:center;gap:.4rem;padding:.5rem .8rem;border:1px solid var(--rule);transition:all .15s;}
.sec-nav-btn:hover{background:var(--paper2);color:var(--ink);border-color:var(--rule);}
.sec-nav-btn.prev::before{content:'←';}
.sec-nav-btn.next::after{content:'→';}
.sec-nav-btn.disabled{opacity:.3;pointer-events:none;}

/* ── INDEX CARDS ─────────────────────────────── */
.section-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--rule);margin:2rem 0;}
.section-card{background:var(--paper);padding:1.25rem;text-decoration:none;display:block;transition:background .15s;border-left:3px solid transparent;}
.section-card:hover{background:var(--paper2);border-left-color:var(--red);}
.card-num{font-family:'DM Mono',monospace;font-size:.54rem;color:var(--red);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.3rem;}
.card-title{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.25;margin-bottom:.3rem;}
.card-desc{font-size:.8rem;color:var(--ink3);line-height:1.5;}
.card-arrow{font-family:'DM Mono',monospace;font-size:.62rem;color:var(--gold);margin-top:.5rem;display:block;}

/* ── METHOD BOX ──────────────────────────────── */
.method-section{background:var(--paper2);border-top:2px solid var(--rule);border-bottom:2px solid var(--rule);padding:1.25rem 1.5rem;margin:2rem 0;font-size:.82rem;color:var(--ink3);line-height:1.6;}
.method-section strong{color:var(--ink2);}

/* ── FOOTER ──────────────────────────────────── */
.site-footer{background:var(--ink);padding:2rem;text-align:center;margin-top:0;}
.site-footer p{font-family:'DM Mono',monospace;font-size:.54rem;letter-spacing:.1em;text-transform:uppercase;color:#5a4a30;line-height:2;margin:0;}
.site-footer a{color:#8a7a50;text-decoration:none;}

/* ── DECK ────────────────────────────────────── */
.deck{background:var(--paper2);border-left:4px solid var(--red);padding:1.25rem 1.5rem;margin:2rem 0;font-size:1.05rem;font-style:italic;line-height:1.6;color:var(--ink2);}
.deck strong{font-style:normal;font-weight:600;color:var(--ink);}

/* ── UPDATE BADGE ───────────────────────────── */
.update-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;background:var(--red);color:white;padding:.26rem .85rem;margin-bottom:1rem;}
.update-kicker{font-family:'DM Mono',monospace;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.6rem;}
.update-title em{font-style:italic;color:#e8c060;}

/* ── GREEN / PURPLE BOXES ────────────────────── */
.green-box{background:var(--green-l,#f0fdf4);border:1px solid #86efac;border-left:4px solid var(--green,#166534);padding:1.1rem 1.4rem;margin:1.25rem 0;}
.purple-box{background:#faf5ff;border:1px solid #d8b4fe;border-left:4px solid #6b21a8;padding:1.1rem 1.4rem;margin:1.25rem 0;}
.green-box .finding-label{color:var(--green,#166534);}
.purple-box .finding-label{color:#6b21a8;}
.green-box p,.purple-box p{font-size:.92rem;margin-bottom:0;text-indent:0;color:var(--ink2);}
.green-box strong,.purple-box strong{color:var(--ink);}

/* ── TIMELINE ────────────────────────────────── */
.timeline{margin:1.5rem 0;padding-left:1.25rem;position:relative;}
.timeline::before{content:'';position:absolute;left:.4rem;top:.5rem;bottom:.5rem;width:1px;background:var(--rule);}
.tl-item{position:relative;margin-bottom:1.2rem;padding-left:.85rem;}
.tl-item::before{content:'';position:absolute;left:-.82rem;top:.45rem;width:8px;height:8px;border-radius:50%;background:var(--red);border:2px solid var(--paper);box-shadow:0 0 0 1px var(--red);}
.tl-item.amber::before{background:var(--amber);box-shadow:0 0 0 1px var(--amber);}
.tl-item.blue::before{background:var(--blue);box-shadow:0 0 0 1px var(--blue);}
.tl-item.green::before{background:#166534;box-shadow:0 0 0 1px #166534;}
.tl-date{font-family:'DM Mono',monospace;font-size:.54rem;color:var(--ink4);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.1rem;display:block;}
.tl-title{font-family:'Playfair Display',serif;font-size:.97rem;font-weight:700;color:var(--ink);}
.tl-body{font-size:.87rem;color:var(--ink2);line-height:1.6;margin-top:.2rem;}

/* ── UPDATES SUMMARY STRIP ───────────────────── */
.summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule);margin:2rem 0;}
.strip-cell{background:var(--paper);padding:1rem;text-align:center;}
.strip-num{font-family:'Playfair Display',serif;font-size:1.65rem;font-weight:900;color:var(--red);line-height:1;display:block;}
.strip-label{font-family:'DM Mono',monospace;font-size:.52rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink4);margin-top:.25rem;display:block;line-height:1.3;}

/* ── UPDATE ENTRY SECTION ─────────────────────── */
.update-entry{border-top:2px solid var(--rule);padding-top:1.75rem;margin-top:2.5rem;}
.update-entry:first-of-type{border-top:none;padding-top:0;margin-top:0;}
.update-tag{display:inline-flex;align-items:center;gap:.4rem;font-family:'DM Mono',monospace;font-size:.54rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.5rem;}
.tag-new{color:var(--red);border:1px solid var(--red);padding:.12rem .45rem;border-radius:2px;}
.tag-updated{color:var(--amber);border:1px solid var(--amber);padding:.12rem .45rem;border-radius:2px;}
.tag-confirmed{color:#166534;border:1px solid #86efac;padding:.12rem .45rem;border-radius:2px;}
.tag-date{color:var(--ink4);}

/* ── BOARD TABLE OUTCOME CELLS ───────────────── */
.outcome{font-family:'DM Mono',monospace;font-size:.74rem;font-weight:500;}
.outcome.red{color:var(--red);}
.outcome.green{color:#166534;}
.outcome.amber{color:var(--amber);}

/* ── NEW TICKER SYM ─────────────────────────── */
.ticker-sym.new-sym{color:#ff9060;}

/* ── NEW SECTION CARD VARIANT ────────────────── */
.section-card.updates{border-left-color:var(--red);}
.section-card.updates .card-num{color:var(--red);}
.section-card.updates:hover{border-left-color:var(--gold);}

/* ── RESPONSIVE ──────────────────────────────── */
@media(max-width:640px){
  .container{padding:0 1rem;}
  .site-nav{padding:0 .75rem;}
  .nav-brand{font-size:.75rem;margin-right:.75rem;}
  .pred-row{grid-template-columns:1fr;}
  .pred-bar-wrap{min-width:auto;}
  .section-nav{flex-direction:column;align-items:stretch;}
}
@media print{
  .site-nav,.breadcrumb,.section-nav{display:none;}
  body{font-size:10.5pt;}
}
