/*
 * GIVEN ANALYTICS â€” ATLAS TERMINAL THEME
 * Version: 4.0.0
 * Ghost: >= 5.0.0
 * Style: Bloomberg Terminal Â· IBM Plex Â· Dark Gold
 */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;500;600&family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&display=swap');

/* â”€â”€ RESET â”€â”€ */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

/* â”€â”€ DESIGN TOKENS â”€â”€ */
:root {
    --bg:      #0A0C0F;
    --bg2:     #111418;
    --bg3:     #181C22;
    --bg4:     #1E232B;

    --border:  #2A3040;
    --border2: #3A4255;

    --gold:    #E8B84B;
    --gold2:   #C49A32;
    --gold3:   #8B6B1F;

    --teal:    #00D4AA;
    --teal2:   #00A882;
    --teal3:   #005C47;

    --red:     #FF4444;
    --blue:    #4A9EFF;

    --white:   #E8EAF0;
    --white2:  #D4DAE4;
    --white3:  #B8C0CC;
    --white4:  #8E96A8;

    --mono:    'IBM Plex Mono', monospace;
    --sans:    'IBM Plex Sans', sans-serif;
}

/* â”€â”€ BASE â”€â”€ */
html, body {
    background: var(--bg);
    color: var(--white);
    font-family: var(--mono);
    font-size: 11px;
    line-height: 1.4;
    overflow-x: hidden;
}

/* â”€â”€ TOPBAR â”€â”€ */
.topbar {
    height: 44px;
    background: #060809;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    flex-shrink: 0;
}
.topbar-left  { display: flex; align-items: center; gap: 4px; }
.topbar-right { display: flex; align-items: center; gap: 12px; }

.topbar-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    padding-right: 10px;
    flex-shrink: 0;
}
.topbar-logo-img {
    height: 34px;
    width: 34px;
    display: block;
    flex-shrink: 0;
    filter: drop-shadow(0 0 3px rgba(232,184,75,0.7)) drop-shadow(0 0 8px rgba(232,184,75,0.35));
}
.topbar-logo-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.topbar-logo-name {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.18em;
    color: #FFD166;
    text-transform: uppercase;
    font-family: var(--mono);
    line-height: 1;
}
.topbar-logo-sub {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: 0.25em;
    color: var(--teal);
    text-transform: uppercase;
    font-family: var(--mono);
    line-height: 1;
}
.topbar-sep {
    width: 1px;
    height: 14px;
    background: var(--border2);
    margin: 0 4px;
}
.topbar-item {
    font-size: 10px;
    letter-spacing: 0.1em;
    color: var(--teal);
    text-transform: uppercase;
    text-decoration: none;
    padding: 3px 10px;
    border: 1px solid rgba(0,212,170,0.2);
    background: rgba(0,212,170,0.04);
    transition: all 0.2s;
}
.topbar-item:hover  { color: #fff; border-color: rgba(0,212,170,0.5); background: rgba(0,212,170,0.1); }
.topbar-item.active { color: var(--gold); border-color: rgba(232,184,75,0.35); background: rgba(232,184,75,0.06); }

.live-indicator { display: flex; align-items: center; gap: 5px; font-size: 10px; letter-spacing: 0.15em; color: var(--teal); text-transform: uppercase; }
.live-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--teal); animation: blink 1.5s ease-in-out infinite; }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }

.topbar-time { font-size: 10px; color: var(--white3); letter-spacing: 0.05em; }
.topbar-cta {
    font-size: 10px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    padding: 3px 10px;
    background: var(--gold);
    color: #000;
    font-weight: 600;
    text-decoration: none;
    font-family: var(--mono);
    transition: background 0.2s;
}
.topbar-cta:hover { background: var(--white); }

/* â”€â”€ TICKER â”€â”€ */
.ticker-bar {
    height: 22px;
    background: var(--bg2);
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    overflow: hidden;
    flex-shrink: 0;
}
.ticker-label {
    padding: 0 10px;
    font-size: 9px;
    letter-spacing: 0.2em;
    color: var(--gold);
    text-transform: uppercase;
    border-right: 1px solid var(--border2);
    white-space: nowrap;
    background: var(--bg3);
    height: 100%;
    display: flex;
    align-items: center;
}
.ticker-scroll-wrap { overflow: hidden; flex: 1; height: 100%; }
.ticker-scroll {
    display: flex;
    animation: scroll-left 50s linear infinite;
    width: max-content;
    align-items: center;
    height: 100%;
}
.ticker-scroll:hover { animation-play-state: paused; }
.ticker-item { display: flex; align-items: center; padding: 0 14px; height: 100%; border-right: 1px solid var(--border); gap: 8px; white-space: nowrap; }
.ticker-sym { font-size: 9px; font-weight: 600; letter-spacing: 0.1em; color: var(--white2); }
.ticker-val { font-size: 9px; color: var(--teal); }
.ticker-dn  { font-size: 9px; color: var(--red); }
@keyframes scroll-left { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* â”€â”€ 3-COLUMN TERMINAL LAYOUT â”€â”€ */
.ga-terminal {
    display: grid;
    grid-template-columns: 220px 1fr 280px;
    height: calc(100vh - 50px);
    overflow: hidden;
}

/* â”€â”€ LEFT PANEL â”€â”€ */
.left-panel {
    border-right: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    background: var(--bg2);
}
.panel-header {
    padding: 6px 10px;
    background: var(--bg3);
    border-bottom: 1px solid var(--border);
    font-size: 9px;
    letter-spacing: 0.2em;
    color: var(--gold2);
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
}
.panel-header-badge { background: var(--teal3); color: var(--teal); padding: 1px 6px; font-size: 8px; letter-spacing: 0.1em; }
.panel-header-sub   { font-size: 8px; color: var(--white2); }

.sys-stats {
    padding: 10px;
    border-bottom: 1px solid var(--border);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    flex-shrink: 0;
}
.sys-stat { background: var(--bg3); padding: 8px; text-align: center; }
.sys-stat-num   { font-size: 20px; font-weight: 600; color: var(--gold); line-height: 1; display: block; }
.sys-stat-label { font-size: 8px; letter-spacing: 0.15em; color: var(--white2); text-transform: uppercase; margin-top: 3px; display: block; }

.layers-block { border-bottom: 1px solid var(--border); flex-shrink: 0; }
.layer-row {
    display: flex;
    align-items: center;
    padding: 7px 10px;
    border-bottom: 1px solid var(--border);
    gap: 8px;
    transition: background 0.15s;
}
.layer-row:last-child { border-bottom: none; }
.layer-row:hover { background: var(--bg3); }
.layer-row-num  { font-size: 9px; color: var(--gold3); font-weight: 600; width: 16px; flex-shrink: 0; }
.layer-row-name { font-size: 10px; font-weight: 500; color: var(--white); letter-spacing: 0.05em; text-transform: uppercase; flex: 1; }
.layer-bar-wrap { width: 60px; height: 3px; background: var(--bg4); position: relative; }
.layer-bar-fill { position: absolute; inset: 0; background: var(--teal); }
.layer-status   { font-size: 8px; letter-spacing: 0.1em; padding: 2px 5px; background: rgba(0,212,170,0.12); color: var(--teal); }

.price-block { padding: 10px; flex-shrink: 0; }
.price-amount-row { display: flex; align-items: baseline; justify-content: center; gap: 3px; margin-bottom: 4px; }
.price-sign { font-size: 18px; color: var(--gold); font-weight: 700; }
.price-num  { font-size: 48px; font-weight: 900; color: var(--gold); line-height: 1; }
.price-per  { font-size: 9px; color: var(--white2); letter-spacing: 0.1em; text-transform: uppercase; text-align: center; }
.price-cta {
    display: block;
    width: 100%;
    text-align: center;
    padding: 10px;
    background: var(--gold);
    color: #000;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    font-family: var(--mono);
    margin-top: 10px;
    transition: background 0.2s;
    border: none;
    cursor: pointer;
}
.price-cta:hover { background: var(--white); }
.price-sub { text-align: center; font-size: 8px; letter-spacing: 0.1em; color: var(--white2); text-transform: uppercase; margin-top: 6px; }

.nav-menu { flex: 1; padding: 4px 0; }
.nav-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    transition: background 0.15s;
    border-left: 2px solid transparent;
    text-decoration: none;
}
.nav-item:hover  { background: var(--bg3); }
.nav-item.active { background: var(--bg3); border-left-color: var(--gold); }
.nav-item-icon { width: 16px; text-align: center; font-size: 10px; color: var(--gold2); flex-shrink: 0; }
.nav-item-text { font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--white2); }
.nav-item.active .nav-item-text { color: var(--white); }

/* â”€â”€ CENTER PANEL â”€â”€ */
.center-panel { display: flex; flex-direction: column; overflow-y: auto; overflow-x: hidden; }

.hero-band {
    background: var(--bg2);
    border-bottom: 1px solid var(--border);
    padding: 14px 20px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    flex-shrink: 0;
}
.hero-overline {
    font-size: 9px;
    letter-spacing: 0.3em;
    color: var(--teal);
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}
.hero-overline::before { content: ''; display: inline-block; width: 20px; height: 1px; background: var(--teal); }
.hero-title {
    font-family: var(--sans);
    font-size: 26px;
    font-weight: 300;
    color: var(--white);
    line-height: 1.15;
    letter-spacing: -0.01em;
}
.hero-title strong { font-weight: 600; color: var(--gold); }
.hero-title--post  { font-size: 20px; font-weight: 600; }
.hero-sub { font-size: 12px; color: var(--white); margin-top: 10px; letter-spacing: 0.03em; line-height: 1.65; max-width: 520px; font-weight: 400; }
.hero-badge-row { display: flex; gap: 6px; margin-top: 10px; flex-wrap: wrap; }

/* Dual-audience CTA row */
.hero-audience-row { display: flex; gap: 8px; margin-top: 14px; flex-wrap: wrap; }
.hero-audience-btn {
    display: flex; flex-direction: column; gap: 2px;
    padding: 9px 14px;
    border: 1px solid var(--border2);
    background: var(--bg3);
    text-decoration: none;
    transition: border-color 0.15s, background 0.15s;
    min-width: 180px;
}
.hero-audience-btn:hover { border-color: var(--gold3); background: var(--bg4); }
.hero-audience-btn--inst { border-color: var(--gold3); }
.hero-audience-btn--inst:hover { border-color: var(--gold); background: rgba(232,184,75,0.05); }
.hero-audience-label { font-size: 10px; font-weight: 600; color: var(--white); letter-spacing: 0.06em; font-family: var(--sans); }
.hero-audience-sub   { font-size: 8px; color: var(--white3); letter-spacing: 0.08em; font-family: var(--mono); }

.badge { font-size: 8px; letter-spacing: 0.15em; text-transform: uppercase; padding: 3px 8px; border: 1px solid; }
.badge-gold  { border-color: var(--gold3); color: var(--gold2); }
.badge-teal  { border-color: var(--teal3); color: var(--teal2); }
.badge-muted { border-color: var(--border2); color: var(--white3); }

.hero-right { text-align: right; flex-shrink: 0; }
.current-regime-label { font-size: 8px; letter-spacing: 0.25em; color: var(--white2); text-transform: uppercase; margin-bottom: 4px; }
.current-regime-val   { font-family: var(--sans); font-size: 22px; font-weight: 600; color: var(--gold); letter-spacing: 0.05em; text-transform: uppercase; }
.regime-sub { font-size: 9px; color: var(--white2); margin-top: 3px; letter-spacing: 0.05em; }

.section-label {
    font-size: 9px;
    letter-spacing: 0.25em;
    color: var(--white4);
    text-transform: uppercase;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.section-label::after { content: ''; flex: 1; height: 1px; background: var(--border); }

/* Regime cards */
.regime-section { padding: 12px 20px; border-bottom: 1px solid var(--border); flex-shrink: 0; }
.regime-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.reg-card {
    background: var(--bg3);
    border: 1px solid var(--border);
    padding: 10px;
    position: relative;
    transition: border-color 0.2s;
}
.reg-card:hover { border-color: var(--border2); }
.reg-card.active { border-color: var(--gold); background: rgba(232,184,75,0.05); }
.reg-card.active::before {
    content: 'CURRENT';
    position: absolute;
    top: -7px; right: 8px;
    font-size: 7px;
    letter-spacing: 0.2em;
    background: var(--gold);
    color: #000;
    padding: 1px 5px;
    font-weight: 600;
}
.reg-name { font-family: var(--sans); font-size: 14px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; margin-bottom: 6px; }
.reg-card.active     .reg-name { color: var(--gold); }
.reg-card:not(.active) .reg-name { color: var(--white2); }
.reg-row  { display: flex; justify-content: space-between; align-items: center; margin-bottom: 3px; }
.reg-key  { font-size: 8px; color: var(--white2); letter-spacing: 0.05em; text-transform: uppercase; }
.reg-up   { font-size: 8px; color: var(--teal); font-weight: 500; }
.reg-dn   { font-size: 8px; color: var(--red); font-weight: 500; }
.reg-desc { font-size: 8px; color: var(--white2); line-height: 1.5; margin-top: 6px; border-top: 1px solid var(--border); padding-top: 6px; font-family: var(--sans); font-weight: 300; }

/* Math framework */
.math-section { padding: 12px 20px; border-bottom: 1px solid var(--border); flex-shrink: 0; }
.math-grid    { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.math-card    { background: var(--bg3); border: 1px solid var(--border); padding: 12px; }
.math-card-num   { font-size: 28px; font-weight: 600; color: var(--gold); line-height: 1; margin-bottom: 4px; }
.math-card-title { font-size: 10px; font-weight: 600; color: var(--white); letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 6px; }
.math-card-body  { font-size: 9px; color: var(--white2); line-height: 1.6; font-family: var(--sans); font-weight: 300; }

/* Quote + disclaimer */
.quote-band {
    padding: 12px 20px;
    background: rgba(232,184,75,0.04);
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 16px;
}
.quote-mark { font-size: 32px; color: var(--gold3); line-height: 1; flex-shrink: 0; font-family: Georgia, serif; }
.quote-text { font-family: var(--sans); font-size: 12px; font-weight: 300; color: var(--white2); line-height: 1.6; font-style: italic; }
.quote-text strong { color: var(--gold); font-weight: 500; font-style: normal; }

.disclaimer-band {
    padding: 8px 20px;
    background: var(--bg3);
    border-top: 1px solid var(--border);
    display: flex;
    gap: 12px;
    align-items: flex-start;
    flex-shrink: 0;
}
.disc-tag  { font-size: 8px; letter-spacing: 0.15em; color: var(--gold2); text-transform: uppercase; white-space: nowrap; border: 1px solid var(--gold3); padding: 2px 6px; margin-top: 1px; flex-shrink: 0; }
.disc-text { font-size: 8.5px; color: var(--white2); line-height: 1.5; font-family: var(--sans); }

/* Post feed */
/* â”€â”€ Bloomberg live surface â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Today's Brief â€” pinned top strip */
.ga-today-brief { padding: 10px 20px; flex-shrink: 0; border-bottom: 1px solid var(--border); }
.ga-today-brief-label { display: flex; align-items: center; gap: 6px; font-size: 8px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold2); margin-bottom: 6px; }
.live-dot-sm { width: 5px; height: 5px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 4px var(--teal); animation: blink 1.5s ease-in-out infinite; flex-shrink: 0; }
.ga-today-brief-card { display: block; text-decoration: none; background: rgba(232,184,75,0.04); border: 1px solid var(--gold3); padding: 12px 14px; transition: border-color 0.15s; }
.ga-today-brief-card:hover { border-color: var(--gold); background: rgba(232,184,75,0.07); }
.ga-today-brief-title { font-family: var(--sans); font-size: 13px; font-weight: 600; color: var(--white); margin-bottom: 4px; line-height: 1.3; }
.ga-today-brief-sub   { font-family: var(--sans); font-size: 10px; color: var(--white3); line-height: 1.5; margin-bottom: 6px; }
.ga-today-brief-meta  { display: flex; align-items: center; justify-content: space-between; }
.ga-today-brief-read  { font-size: 8px; letter-spacing: 0.15em; color: var(--gold); text-transform: uppercase; font-weight: 700; }

/* IN-HERO VIDEO BRIEFING — lives inside .hero-right, below the regime info */
.hero-right { min-width: 320px; max-width: 480px; }
.hero-video-wrap { margin-top: 12px; text-align: left; }
.hero-video-head { display: flex; align-items: center; gap: 6px; font-size: 8px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); font-weight: 700; margin-bottom: 6px; }
.hero-video-head .live-dot-sm { width: 6px; height: 6px; }
.hero-video-title { color: var(--gold); }
.hero-video-date { color: var(--white2); font-weight: 500; letter-spacing: 0.1em; }
.hero-video-dur { margin-left: auto; color: var(--white3); font-family: var(--mono, monospace); letter-spacing: 0.08em; font-size: 9px; }
.hero-video-card { background: #000; border: 1px solid var(--gold3); overflow: hidden; transition: border-color 0.2s, box-shadow 0.2s; }
.hero-video-card:hover { border-color: var(--gold); box-shadow: 0 0 0 1px rgba(232,184,75,0.15); }
.hero-video-el { width: 100%; display: block; background: #000; aspect-ratio: 16 / 9; }
.hero-video-empty .hero-video-card { opacity: 0.4; border-style: dashed; }
.hero-video-empty .hero-video-el { display: none; }

/* Section header with archive link */
.ga-section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.ga-archive-link   { font-size: 8px; letter-spacing: 0.15em; color: var(--gold3); text-decoration: none; text-transform: uppercase; transition: color 0.15s; }
.ga-archive-link:hover { color: var(--gold); }

/* Empty state */
.ga-empty { font-size: 11px; color: var(--white4); padding: 20px 0; text-align: center; font-style: italic; }

/* Pagination */
.pagination { display: flex; gap: 12px; padding: 12px 0; justify-content: center; }
.pagination a { font-size: 9px; color: var(--gold); text-decoration: none; letter-spacing: 0.15em; text-transform: uppercase; border: 1px solid var(--gold3); padding: 4px 10px; }
.pagination a:hover { background: rgba(232,184,75,0.08); }

.ga-posts-section { padding: 12px 20px; flex-shrink: 0; }
.ga-posts-grid    { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 8px; }
.ga-post-item {
    background: var(--bg3);
    border: 1px solid var(--border2);
    padding: 14px;
    transition: all 0.2s;
    text-decoration: none;
    display: block;
}
.ga-post-item:hover { border-color: var(--gold); background: var(--bg4); }
.ga-post-item::after { content: 'READ \2192'; display: block; font-size: 9px; letter-spacing: 0.2em; color: var(--gold); font-weight: 700; margin-top: 8px; }
.ga-post-tag     { font-size: 8px; letter-spacing: 0.15em; color: var(--gold); text-transform: uppercase; display: block; margin-bottom: 6px; }
.ga-post-title   { font-family: var(--sans); font-size: 13px; font-weight: 600; color: var(--white); line-height: 1.3; margin-bottom: 6px; }
.ga-post-excerpt { font-size: 9px; color: var(--white2); line-height: 1.5; font-family: var(--sans); font-weight: 300; }
.ga-post-meta    { font-size: 8px; color: var(--white2); margin-top: 6px; letter-spacing: 0.05em; }
.ga-empty        { padding: 2rem; color: var(--white4); font-size: 10px; letter-spacing: 0.1em; }

/* Post content area */
.feature-image-wrap { padding: 0 20px 12px; border-bottom: 1px solid var(--border); }
.feature-image-wrap img { width: 100%; border: 1px solid var(--border); display: block; }

.ga-post-content { padding: 20px; overflow-y: auto; flex: 1; }
.ga-post-content p          { font-family: var(--sans); font-size: 14px; color: var(--white2); line-height: 1.8; margin-bottom: 1.2rem; font-weight: 300; }
.ga-post-content h1         { font-family: var(--sans); font-size: 26px; font-weight: 600; color: var(--gold); margin: 0 0 1.5rem; letter-spacing: 0.02em; }
.ga-post-content h2         { font-family: var(--sans); font-size: 18px; font-weight: 600; color: var(--white); margin: 2rem 0 1rem; border-left: 2px solid var(--gold3); padding-left: 10px; }
.ga-post-content h3         { font-family: var(--sans); font-size: 14px; font-weight: 600; color: var(--gold); margin: 1.5rem 0 0.75rem; letter-spacing: 0.05em; text-transform: uppercase; }
.ga-post-content strong     { color: var(--white); font-weight: 600; }
.ga-post-content a          { color: var(--gold); text-decoration: none; border-bottom: 1px solid var(--gold3); }
.ga-post-content blockquote { border-left: 2px solid var(--gold); padding: 0.75rem 1.5rem; margin: 1.5rem 0; background: rgba(232,184,75,0.04); }
.ga-post-content blockquote p { color: var(--white); font-style: italic; margin-bottom: 0; }
.ga-post-content code       { font-family: var(--mono); font-size: 0.85em; background: var(--bg3); padding: 0.15em 0.4em; color: var(--gold); }
.ga-post-content pre        { background: var(--bg3); border: 1px solid var(--border); padding: 1.5rem; overflow-x: auto; margin: 1.5rem 0; }
.ga-post-content hr         { border: none; border-top: 1px solid var(--border); margin: 2rem 0; }
.ga-post-content ul, .ga-post-content ol { font-family: var(--sans); font-size: 14px; color: var(--white2); line-height: 1.8; margin: 0 0 1.2rem 1.5rem; font-weight: 300; }

.ga-disclaimer-box { margin-top: 2rem; padding: 12px 16px; border: 1px solid var(--gold3); background: rgba(232,184,75,0.03); }
.ga-disclaimer-box p { font-family: var(--mono); font-size: 9px; color: var(--white2); line-height: 1.6; margin: 0; }

/* Post navigation */
.post-nav { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--border); flex-shrink: 0; }
.post-nav-item { padding: 12px 20px; text-decoration: none; display: block; transition: background 0.15s; }
.post-nav-item:hover { background: var(--bg3); }
.post-nav-prev { border-right: 1px solid var(--border); }
.post-nav-next { text-align: right; }
.post-nav-label { font-size: 8px; color: var(--white2); letter-spacing: 0.15em; text-transform: uppercase; margin-bottom: 4px; }
.post-nav-title { font-family: var(--sans); font-size: 12px; color: var(--white2); }

/* Ghost Koenig cards */
.kg-card { margin: 1.5rem 0; }
.kg-image-card img { width: 100%; border: 1px solid var(--border); }
.kg-width-wide     { margin-left: -10%; margin-right: -10%; }
.kg-width-full     { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); width: 100vw; }
.kg-callout-card   { border-left: 2px solid var(--gold); padding: 0.75rem 1.5rem; background: rgba(232,184,75,0.04); margin: 1.5rem 0; }
.kg-callout-text   { color: var(--white); font-family: var(--sans); }
.kg-signup-card    { background: var(--bg2); border: 1px solid var(--border); padding: 2rem; text-align: center; margin: 2rem 0; }
.kg-signup-card-button { background: var(--gold); color: #000; font-family: var(--mono); font-size: 10px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; padding: 8px 20px; border: none; cursor: pointer; }
.kg-video-card video { width: 100%; border: 1px solid var(--border); }
.kg-audio-card audio { width: 100%; }
.kg-bookmark-card { border: 1px solid var(--border); padding: 12px; background: var(--bg2); }
.kg-bookmark-title { font-family: var(--sans); font-weight: 600; color: var(--white); }
.kg-bookmark-description { font-size: 10px; color: var(--white2); margin-top: 4px; }

/* â”€â”€ RIGHT PANEL â”€â”€ */
.right-panel {
    border-left: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: var(--bg2);
}
.signal-feed { flex: 1; overflow-y: auto; }
.signal-item { padding: 8px 12px; border-bottom: 1px solid var(--border); transition: background 0.15s; }
.signal-item:hover { background: var(--bg3); }
.signal-item-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 3px; }
/* Ticker rows subordinate — reference data, not hero */
.signal-sym   { font-size: 10px; font-weight: 500; color: #B8C0CC; letter-spacing: 0.05em; }
.signal-score { font-size: 8px; padding: 1px 6px; font-weight: 400; opacity: 0.65; }
.score-5 { background: rgba(0,212,170,0.08); color: #00A882; }
.score-4 { background: rgba(74,158,255,0.08); color: #3A7ECC; }
.score-3 { background: rgba(232,184,75,0.08); color: #8B6B1F; }
.signal-layers { display: flex; gap: 3px; opacity: 0.65; }
.sig-layer { font-size: 7px; padding: 1px 5px; letter-spacing: 0.05em; text-transform: uppercase; }
.sig-on    { background: rgba(0,212,170,0.06); color: #00A882; border: 1px solid rgba(0,84,71,0.5); }
.sig-off   { background: var(--bg4); color: #7A8290; border: 1px solid var(--border); }
.signal-time { font-size: 8px; color: var(--white2); margin-top: 3px; }

.how-block { border-top: 1px solid var(--border); flex-shrink: 0; }
.how-step { display: flex; gap: 10px; padding: 8px 12px; border-bottom: 1px solid var(--border); }
.how-step:last-child { border-bottom: none; }
.how-num   { font-size: 18px; font-weight: 600; color: var(--gold3); line-height: 1; flex-shrink: 0; width: 20px; }
.how-title { font-size: 10px; font-weight: 600; color: var(--white); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 2px; }
.how-desc  { font-size: 8.5px; color: var(--white2); line-height: 1.5; font-family: var(--sans); font-weight: 300; }

/* â”€â”€ FOOTER â”€â”€ */
.footer-bar {
    height: 20px;
    background: #050607;
    border-top: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    flex-shrink: 0;
}
.footer-left { display: flex; gap: 16px; align-items: center; }
.footer-item { font-size: 8px; letter-spacing: 0.15em; color: var(--white4); text-transform: uppercase; }
.footer-sep  { width: 1px; height: 10px; background: var(--border); }

/* â”€â”€ PAGINATION â”€â”€ */
.pagination { padding: 1rem; display: flex; gap: 8px; justify-content: center; border-top: 1px solid var(--border); }
.pagination a { font-size: 9px; letter-spacing: 0.1em; color: var(--white3); text-decoration: none; border: 1px solid var(--border); padding: 4px 10px; text-transform: uppercase; transition: all 0.2s; }
.pagination a:hover { color: var(--white); border-color: var(--border2); }

/* â”€â”€ ERROR PAGES â”€â”€ */
.ga-error-screen { height: calc(100vh - 50px); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 4rem; }
.ga-error-code   { font-size: 80px; font-weight: 600; color: var(--gold3); line-height: 1; }
.ga-error-title  { font-family: var(--sans); font-size: 28px; font-weight: 600; color: var(--white); margin: 1rem 0; }
.ga-error-sub    { color: var(--white3); font-family: var(--sans); font-size: 14px; }

/* â”€â”€ SCROLLBAR â”€â”€ */
::-webkit-scrollbar       { width: 4px; }
::-webkit-scrollbar-track { background: var(--bg2); }
::-webkit-scrollbar-thumb { background: var(--border2); }

/* â”€â”€ MOBILE â”€â”€ */
/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   MOBILE â€” Bloomberg Terminal Â· Responsive
   Strategy:
   Â· Hide left + right panels â€” surface via slide-in drawer + bottom sheet
   Â· Show topbar (condensed) + ticker + center content only
   Â· Fixed bottom CTA bar â€” always-visible $97 access button
   Â· Mobile nav drawer â€” slides in from left
   Â· Signal feed accessible via bottom sheet tap
   Â· Touch-friendly tap targets (min 44px)
   Â· Ticker pauses on touch
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* â”€â”€ MOBILE DRAWER TOGGLE BUTTON â”€â”€ */
.mob-menu-btn {
    display: none; /* shown via media query */
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 28px;
    background: none;
    border: 1px solid var(--border2);
    cursor: pointer;
    flex-shrink: 0;
    gap: 4px;
    flex-direction: column;
    padding: 6px 5px;
}
.mob-menu-btn span {
    display: block;
    width: 14px;
    height: 1px;
    background: var(--gold);
    transition: all 0.2s;
}

/* â”€â”€ MOBILE DRAWER (left panel) â”€â”€ */
.mob-drawer {
    position: fixed;
    top: 0; left: 0; bottom: 0;
    width: 280px;
    background: var(--bg2);
    border-right: 1px solid var(--border);
    z-index: 500;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform 0.3s cubic-bezier(0.16,1,0.3,1);
    display: none; /* shown via media query */
}
.mob-drawer.open { transform: translateX(0); }

.mob-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    z-index: 499;
    opacity: 0;
    transition: opacity 0.3s ease;
    display: none; /* shown via media query */
    pointer-events: none;
}
.mob-overlay.open { opacity: 1; pointer-events: all; }

/* â”€â”€ MOBILE SIGNAL SHEET (bottom sheet) â”€â”€ */
.mob-sheet {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    background: var(--bg2);
    border-top: 1px solid var(--gold);
    z-index: 500;
    max-height: 70vh;
    overflow-y: auto;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.16,1,0.3,1);
    display: none; /* shown via media query */
}
.mob-sheet.open { transform: translateY(0); }
.mob-sheet-handle {
    padding: 8px;
    text-align: center;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 14px;
}
.mob-sheet-title {
    font-size: 9px;
    letter-spacing: 0.2em;
    color: var(--gold);
    text-transform: uppercase;
}
.mob-sheet-close {
    background: none;
    border: none;
    color: var(--white4);
    font-size: 14px;
    cursor: pointer;
    font-family: var(--mono);
    padding: 4px 8px;
}

/* â”€â”€ MOBILE BOTTOM BAR â”€â”€ */
.mob-bottom-bar {
    display: none; /* shown via media query */
    position: fixed;
    bottom: 0; left: 0; right: 0;
    height: 52px;
    background: #060809;
    border-top: 1px solid var(--gold);
    z-index: 498;
    align-items: stretch;
}
.mob-bottom-cta {
    flex: 1;
    background: var(--gold);
    color: #000;
    font-family: var(--mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}
.mob-bottom-cta:hover { background: var(--white); }
.mob-bottom-signals {
    width: 52px;
    background: var(--bg3);
    border-left: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    gap: 2px;
    transition: background 0.2s;
}
.mob-bottom-signals:hover { background: var(--bg4); }
.mob-bottom-signals-label {
    font-size: 7px;
    letter-spacing: 0.1em;
    color: var(--teal);
    text-transform: uppercase;
}
.mob-bottom-signals-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--teal);
    animation: blink 1.5s ease-in-out infinite;
}

@media (max-width: 900px) {

    /* â”€â”€ BASE â”€â”€ */
    html, body { overflow-y: auto; height: auto; }

    /* â”€â”€ TOPBAR â”€â”€ */
    .topbar { padding: 0 10px; height: 44px; }
    .topbar-logo { gap: 8px; }
    .topbar-logo-img  { height: 28px; width: 28px; }
    .topbar-logo-name { font-size: 11px; }
    .topbar-logo-sub  { display: none; }
    .topbar-sep  { display: none; }
    .topbar-time { display: none; }
    .topbar-right .topbar-sep { display: none; }
    .live-indicator .live-text { display: none; }

    /* Hide desktop nav items â€” replaced by drawer */
    .topbar-item { display: none; }

    /* Hide desktop CTA â€” replaced by bottom bar */
    .topbar-cta { display: none; }

    /* Show hamburger */
    .mob-menu-btn { display: flex; }

    /* Live indicator â€” dot only on mobile */
    .live-text { display: none; }

    /* â”€â”€ TICKER â”€â”€ */
    .ticker-bar { height: 20px; }
    .ticker-label { font-size: 8px; padding: 0 8px; }
    .ticker-item  { padding: 0 10px; gap: 6px; }
    .ticker-sym, .ticker-val, .ticker-dn { font-size: 8px; }

    /* â”€â”€ TERMINAL LAYOUT â”€â”€ */
    /* Hide left + right panels â€” they live in drawer/sheet on mobile */
    .ga-terminal {
        display: block;
        height: auto;
        overflow: visible;
    }
    .left-panel  { display: none; }  /* hidden in main layout â€” shown in drawer */
    .right-panel { display: none; }  /* hidden in main layout â€” shown in sheet */

    /* Left panel visible inside mobile drawer */
    .mob-drawer .left-panel {
        display: flex;
        flex-direction: column;
        border: none;
        height: 100%;
        overflow-y: auto;
    }

    /* Reorder drawer contents â€” nav first, everything else below */
    .mob-drawer .nav-menu          { order: 1; border-bottom: 1px solid var(--border); padding-bottom: 8px; margin-bottom: 4px; flex: 0; }
    .mob-drawer .nav-menu + .panel-header,
    .mob-drawer .left-panel > .panel-header:last-of-type { order: 1; display: none; } /* hide "Navigate" header â€” nav speaks for itself */
    .mob-drawer .sys-stats         { order: 2; }
    .mob-drawer .layers-block      { order: 3; }
    .mob-drawer .price-block       { order: 5; }
    /* Panel headers â€” match their sibling order */
    .mob-drawer .left-panel > .panel-header:nth-child(1) { order: 2; } /* System Status */
    .mob-drawer .left-panel > .panel-header:nth-child(3) { order: 3; } /* Five Layers */
    .mob-drawer .left-panel > .panel-header:nth-child(5) { order: 4; } /* Access */

    /* Nav items bigger touch targets in drawer */
    .mob-drawer .nav-item { padding: 10px 12px; font-size: 12px; }

    /* Right panel visible inside mobile sheet */
    .mob-sheet .right-panel {
        display: flex;
        flex-direction: column;
        border: none;
        max-height: calc(70vh - 40px);
        overflow-y: auto;
    }

    /* â”€â”€ CENTER PANEL â€” full width â”€â”€ */
    .center-panel {
        display: flex;
        flex-direction: column;
        overflow: visible;
        padding-bottom: 60px; /* space for bottom bar */
    }

    /* â”€â”€ HERO â”€â”€ */
    .hero-band {
        flex-direction: column;
        gap: 12px;
        padding: 12px 14px;
    }
    .hero-title { font-size: 20px; }
    .hero-title--post { font-size: 17px; }
    .hero-sub { font-size: 11px; max-width: 100%; }
    .hero-right {
        text-align: left;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        padding: 10px 12px;
        background: rgba(232,184,75,0.04);
        border: 1px solid var(--border);
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }
    .hero-video-wrap { margin-top: 4px; }
    .current-regime-label { margin-bottom: 0; }
    .current-regime-val   { font-size: 16px; }

    /* â”€â”€ REGIME CARDS â€” 2 col on mobile â”€â”€ */
    .regime-section { padding: 10px 14px; }
    .regime-cards   { grid-template-columns: 1fr 1fr; gap: 4px; }
    .reg-card       { padding: 8px; }
    .reg-name       { font-size: 11px; }
    .reg-desc       { display: none; } /* hide descriptions on mobile â€” too dense */

    /* â”€â”€ MATH GRID â€” single col â”€â”€ */
    .math-section { padding: 10px 14px; }
    .math-grid    { grid-template-columns: 1fr; gap: 6px; }
    .math-card    { display: flex; align-items: center; gap: 12px; padding: 10px; }
    .math-card-num { font-size: 22px; margin-bottom: 0; flex-shrink: 0; width: 48px; }
    .math-card-title { margin-bottom: 2px; }

    /* â”€â”€ QUOTE â”€â”€ */
    .quote-band { padding: 10px 14px; }
    .quote-text { font-size: 11px; }

    /* â”€â”€ POST FEED â”€â”€ */
    .ga-posts-section { padding: 10px 14px; }
    .ga-posts-grid    { grid-template-columns: 1fr; gap: 6px; }

    /* â”€â”€ POST CONTENT â”€â”€ */
    .ga-post-content { padding: 14px; }
    .ga-post-content p    { font-size: 13px; }
    .ga-post-content h2   { font-size: 17px; }
    .ga-post-content h3   { font-size: 14px; }

    /* â”€â”€ POST NAV â”€â”€ */
    .post-nav { grid-template-columns: 1fr; }
    .post-nav-next { text-align: left; border-top: 1px solid var(--border); }
    .post-nav-prev { border-right: none; border-bottom: 1px solid var(--border); }

    /* â”€â”€ DISCLAIMER â”€â”€ */
    .disclaimer-band { padding: 8px 14px; }

    /* â”€â”€ FOOTER â”€â”€ */
    .footer-bar { height: auto; padding: 8px 12px; flex-direction: column; gap: 4px; align-items: flex-start; }
    .footer-left { flex-wrap: wrap; gap: 8px; }
    .footer-sep  { display: none; }

    /* â”€â”€ MOBILE DRAWER â€” activated â”€â”€ */
    .mob-drawer { display: block; }  /* now visible, transform controls slide */
    .mob-overlay { display: block; }   /* now visible, opacity controls fade */

    /* â”€â”€ MOBILE SHEET â€” activated â”€â”€ */
    .mob-sheet { display: block; }     /* now visible, transform controls slide */

    /* â”€â”€ MOBILE BOTTOM BAR â€” activated â”€â”€ */
    .mob-bottom-bar { display: flex; } /* bottom CTA + signals button */

    /* â”€â”€ TOUCH TARGETS â€” min 44px â”€â”€ */
    .nav-item { padding: 11px 10px; }
    .price-cta { padding: 14px; }
    .topbar-cta { min-height: 36px; display: flex; align-items: center; }

    /* â”€â”€ SCROLLBAR hidden on mobile â”€â”€ */
    ::-webkit-scrollbar { width: 0; }
}

@media (max-width: 480px) {
    .hero-title { font-size: 18px; }
    .regime-cards { grid-template-columns: 1fr; }
    .hero-badge-row { gap: 4px; }
    .badge { font-size: 7px; padding: 2px 6px; }
    .topbar-logo-name { font-size: 10px; letter-spacing: 0.12em; }
}

/* -- Intelligence Archive page -------------------------------------------- */
.intel-archive { padding: 4px 0; }
.intel-section { margin-bottom: 20px; }
.intel-section-label { font-size: 8px; letter-spacing: 0.25em; text-transform: uppercase; color: var(--gold2); font-weight: 700; margin-bottom: 10px; border-bottom: 1px solid var(--border); padding-bottom: 5px; }
.intel-filter-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.intel-filter-btn { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; background: var(--bg3); border: 1px solid var(--border2); text-decoration: none; transition: all 0.15s; }
.intel-filter-btn:hover { border-color: var(--gold3); background: var(--bg4); }
.intel-filter-btn--inst { border-color: var(--gold3); }
.intel-filter-btn--inst:hover { border-color: var(--gold); background: rgba(232,184,75,0.05); }
.intel-filter-icon { font-size: 14px; color: var(--gold3); line-height: 1; margin-bottom: 2px; }
.intel-filter-name { font-family: var(--sans); font-size: 12px; font-weight: 600; color: var(--white); }
.intel-filter-sub  { font-size: 8px; color: var(--white4); letter-spacing: 0.05em; line-height: 1.4; }
.intel-regime-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.intel-regime-btn  { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px; border: 1px solid; text-decoration: none; transition: all 0.15s; }
.intel-regime-name { font-family: var(--sans); font-size: 11px; font-weight: 600; }
.intel-regime-def  { font-size: 8px; opacity: 0.7; letter-spacing: 0.05em; }
.intel-regime-expansion   { border-color: #16A34A; color: #16A34A; background: rgba(22,163,74,0.05); }
.intel-regime-expansion:hover   { background: rgba(22,163,74,0.1); }
.intel-regime-acceleration { border-color: var(--gold2); color: var(--gold); background: rgba(232,184,75,0.05); }
.intel-regime-acceleration:hover { background: rgba(232,184,75,0.1); }
.intel-regime-stagflation  { border-color: #EAB308; color: #EAB308; background: rgba(234,179,8,0.05); }
.intel-regime-stagflation:hover  { background: rgba(234,179,8,0.1); }
.intel-regime-contraction  { border-color: var(--blue); color: var(--blue); background: rgba(74,158,255,0.05); }
.intel-regime-contraction:hover  { background: rgba(74,158,255,0.1); }
.intel-full-archive-btn { display: inline-block; padding: 8px 16px; border: 1px solid var(--gold3); color: var(--gold); text-decoration: none; font-size: 10px; letter-spacing: 0.15em; text-transform: uppercase; font-weight: 700; transition: all 0.15s; }
.intel-full-archive-btn:hover { border-color: var(--gold); background: rgba(232,184,75,0.06); }
.intel-disclaimer { font-size: 8px; color: var(--white4); line-height: 1.6; margin-top: 16px; border-top: 1px solid var(--border); padding-top: 10px; }
.intel-disclaimer a { color: var(--gold3); text-decoration: none; }

/* -- LIVE DASHBOARD TILES -- */
.live-dashboard-row {
  display: flex;
  gap: 12px;
  margin: 20px 0 28px;
  flex-wrap: wrap;
}
.live-tile {
  flex: 1;
  min-width: 140px;
  background: #0A0D14;
  border: 1px solid #1E2A3A;
  border-left: 3px solid #E8B84B;
  padding: 14px 16px;
  border-radius: 3px;
}
.live-tile-label {
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #8A92A0;
  margin-bottom: 6px;
  font-family: 'IBM Plex Sans', sans-serif;
}
.live-tile-value {
  font-size: 26px;
  font-weight: 700;
  color: #E8EAF0;
  line-height: 1;
  margin-bottom: 4px;
  font-family: 'IBM Plex Sans', sans-serif;
}
.live-tile-denom { font-size: 14px; color: #8A92A0; font-weight: 400; }
.live-tile-unit  { font-size: 14px; color: #8A92A0; font-weight: 400; }
.live-tile-band {
  font-size: 11px;
  font-weight: 600;
  color: #E8B84B;
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.live-tile-stat {
  font-size: 10px;
  color: #6A7A8A;
  line-height: 1.4;
}
#ga-tile-turnpressure .live-tile-value { color: #E8B84B; }
#ga-tile-vix .live-tile-value { color: #FF6B6B; }
#ga-tile-curve .live-tile-value { color: #00D4AA; }
#ga-tile-fg .live-tile-value { color: #FF6B6B; }
#ga-tile-vvix .live-tile-value { color: #E8B84B; }
#ga-tile-move .live-tile-value { color: #00D4AA; }
@media (max-width: 768px) {
  .live-dashboard-row { gap: 8px; }
  .live-tile { min-width: calc(50% - 8px); }
  .live-tile-value { font-size: 22px; }
}

/* Email capture reassurance line */
.email-capture-reassurance {
    font-size: 11px;
    color: #B4BBC6;
    line-height: 1.5;
    margin-top: 8px;
    padding: 8px 0 4px;
    border-top: 1px solid rgba(198,150,44,0.15);
}

/* -- Email Capture Block — Bloomberg Terminal Style -- */
.email-capture-block {
    padding: 10px;
    border-bottom: 1px solid var(--border);
}
.email-capture-desc {
    font-size: 9px;
    letter-spacing: 0.08em;
    color: var(--white2);
    text-transform: uppercase;
    line-height: 1.6;
    margin-bottom: 8px;
}
.email-capture-form {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.email-capture-input {
    width: 100%;
    background: var(--bg3);
    border: 1px solid var(--border);
    color: var(--white);
    font-family: var(--mono);
    font-size: 10px;
    padding: 8px 10px;
    outline: none;
    box-sizing: border-box;
    letter-spacing: 0.05em;
    transition: border-color 0.2s;
}
.email-capture-input::placeholder {
    color: var(--white3);
    font-size: 9px;
    letter-spacing: 0.08em;
}
.email-capture-input:focus {
    border-color: var(--gold);
}
.email-capture-btn {
    display: block;
    width: 100%;
    background: var(--gold);
    color: #000;
    border: none;
    font-family: var(--mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    padding: 10px;
    cursor: pointer;
    transition: background 0.2s;
}
.email-capture-btn:hover { background: var(--white); }
.email-capture-msg {
    font-size: 9px;
    color: var(--teal);
    letter-spacing: 0.05em;
    min-height: 14px;
}
.email-capture-reassurance {
    font-size: 9px;
    color: var(--white3);
    line-height: 1.6;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(198,150,44,0.15);
    letter-spacing: 0.03em;
}
.email-capture-legal {
    font-size: 8px;
    color: var(--gold3);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    margin-top: 6px;
}


.footer-link { text-decoration: none; color: inherit; transition: color 0.15s; } .footer-link:hover { color: #E8B84B; }

/* Bull/Bear Score Section */
.bull-bear-section { margin: 0 0 32px; }
.bull-bear-grid { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.bull-bear-card { flex: 1; min-width: 140px; background: #111418; border: 1px solid #2A3040; padding: 12px 14px; }
.bull-bear-label { font-size: 9px; font-weight: 700; letter-spacing: 0.15em; color: #B8C0CC; text-transform: uppercase; margin-bottom: 6px; }
.bull-bear-bar-wrap { height: 4px; background: #1A2030; border-radius: 2px; margin-bottom: 6px; overflow: hidden; }
.bull-bear-bar-fill { height: 100%; border-radius: 2px; transition: width 0.6s ease; }
.bull-bear-score { font-size: 20px; font-weight: 700; line-height: 1; }
.bull-bear-tag { font-size: 9px; letter-spacing: 0.1em; margin-top: 2px; }
@media (max-width: 768px) { .bull-bear-card { min-width: calc(50% - 4px); } }

/* ── QUESTIONS TO ASK YOURSELF BOXES ── */
.qa-box {
    background: #0D1117;
    border: 1px solid #2A3040;
    border-left: 3px solid #E8B84B;
    border-radius: 4px;
    padding: 14px 18px;
    margin: 16px 0 8px 0;
    font-family: 'IBM Plex Mono', monospace;
}
.qa-box--brief { border-left-color: #00D4AA; }
.qa-box-title {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #E8B84B;
    margin-bottom: 10px;
    text-transform: uppercase;
}
.qa-box--brief .qa-box-title { color: #00D4AA; }
.qa-box-tag {
    font-size: 8px;
    color: #8E96A8;
    background: #1E2533;
    border-radius: 2px;
    padding: 2px 6px;
    margin-left: 8px;
    letter-spacing: 0.12em;
    font-weight: 400;
    text-transform: uppercase;
    vertical-align: middle;
}
.qa-list {
    margin: 0 0 10px 0;
    padding-left: 16px;
    list-style: none;
}
.qa-list li {
    font-size: 11px;
    color: #B8C0CC;
    line-height: 1.7;
    padding: 2px 0;
}
.qa-list li::before {
    content: '— ';
    color: #7A8290;
}
.qa-box-link {
    font-size: 10px;
    color: #8E96A8;
    text-decoration: none;
    letter-spacing: 0.06em;
    transition: color 0.15s;
}
.qa-box-link:hover { color: #E8B84B; }

/* ── NEW HERE ONBOARDING CARD ── */
.new-here-card {
    margin: 0 0 8px 0;
    background: linear-gradient(135deg, #0D1117 0%, #131920 100%);
    border: 1px solid #E8B84B;
    border-radius: 6px;
    padding: 0;
    overflow: hidden;
}
.new-here-inner {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
}
.new-here-icon { font-size: 22px; flex-shrink: 0; margin-top: 2px; }
.new-here-content { flex: 1; }
.new-here-title {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 12px;
    font-weight: 700;
    color: #E8B84B;
    letter-spacing: 0.08em;
    margin-bottom: 4px;
}
.new-here-sub {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #B8C0CC;
    line-height: 1.6;
    margin-bottom: 10px;
}
.new-here-links { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.new-here-btn {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    font-weight: 700;
    color: #0D1117;
    background: #E8B84B;
    border-radius: 3px;
    padding: 5px 12px;
    text-decoration: none;
    letter-spacing: 0.06em;
    transition: opacity 0.15s;
}
.new-here-btn:hover { opacity: 0.85; }
.new-here-link {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #8E96A8;
    text-decoration: none;
    letter-spacing: 0.05em;
}
.new-here-link:hover { color: #E8B84B; }
.new-here-close {
    background: none;
    border: none;
    color: #8E96A8;
    cursor: pointer;
    font-size: 14px;
    flex-shrink: 0;
    padding: 0;
    line-height: 1;
}
.new-here-close:hover { color: #E8B84B; }

/* ── ORIENTATION STRIP ── */
.orientation-strip {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #D4DAE4;
    letter-spacing: 0.08em;
    padding: 7px 16px;
    background: #0d1014;
    border-bottom: 1px solid #1E232B;
    line-height: 1.5;
    text-align: center;
    font-weight: 500;
}

/* ── REGIME HORIZON NOTE ── */
.regime-horizon-note {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #D4DAE4;
    letter-spacing: 0.06em;
    margin-top: 6px;
    line-height: 1.5;
}

/* ── REGIME CARDS NOTE ── */
.regime-cards-note {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #D4DAE4;
    letter-spacing: 0.06em;
    margin-top: 12px;
    line-height: 1.6;
    padding: 0 2px;
}

/* ── SIGNAL FEED NOTE ── */
.signal-feed-note {
    font-family: 'IBM Plex Mono', monospace;
    font-size: 10px;
    color: #D4DAE4;
    letter-spacing: 0.05em;
    padding: 6px 12px 8px;
    line-height: 1.6;
    border-bottom: 1px solid #1E232B;
    margin-bottom: 4px;
}

/* ── SIGNAL FEED — existing .signal-sym at line 530 handles font size ── */

/* ============================================================
   RESULTS PAGE (page-results.hbs)
   ============================================================ */
.results-page { max-width:1200px; margin:0 auto; padding:40px 24px 80px; font-family:'IBM Plex Mono',monospace; color:#E8EAF0; }
.results-header { border:1px solid #8B6B1F; border-radius:4px; padding:28px 32px; margin-bottom:32px; background:#111418; }
.results-header h1 { font-size:1.4rem; font-weight:600; color:#E8B84B; margin:0 0 8px; letter-spacing:0.04em; }
.results-header .edu-badge { display:inline-block; background:#1a1200; border:1px solid #E8B84B; color:#E8B84B; font-size:0.72rem; padding:2px 10px; border-radius:2px; letter-spacing:0.1em; margin-bottom:16px; }
.results-header p { color:#D4DAE4; font-size:0.84rem; line-height:1.75; margin:8px 0; font-family:'IBM Plex Sans',sans-serif; }
.results-header p strong { color:#E8EAF0; }
.results-header .launch-note { color:#B8C0CC; font-size:0.76rem; margin-top:16px; padding-top:16px; border-top:1px solid #1e2228; }
.results-header .launch-note strong { color:#E8B84B; }
.counter-bar { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:1px; background:#1e2228; border:1px solid #1e2228; border-radius:4px; margin-bottom:32px; overflow:hidden; }
.counter-cell { background:#111418; padding:20px 16px; text-align:center; }
.counter-cell .label { color:#B8C0CC; font-size:0.67rem; letter-spacing:0.12em; text-transform:uppercase; display:block; margin-bottom:8px; font-weight:500; }
.counter-cell .value { color:#E8B84B; font-size:1.5rem; font-weight:700; display:block; }
.counter-cell .sub { color:#B8C0CC; font-size:0.67rem; display:block; margin-top:4px; }
.counter-cell.open-count .value { color:#00D4AA; }
.results-page .section-header { display:flex; align-items:center; gap:12px; margin:40px 0 16px; }
.results-page .section-header h2 { font-size:0.85rem; font-weight:600; color:#E8B84B; letter-spacing:0.12em; text-transform:uppercase; margin:0; }
.results-page .section-header .divider { flex:1; height:1px; background:#1e2228; }
.section-note { color:#D4DAE4; font-size:0.76rem; font-family:'IBM Plex Sans',sans-serif; margin-bottom:20px; line-height:1.7; }
.distribution-area { background:#111418; border:1px solid #1e2228; border-radius:4px; padding:28px; margin-bottom:32px; min-height:180px; display:flex; align-items:center; justify-content:center; }
.distribution-placeholder { text-align:center; }
.distribution-placeholder .threshold { color:#E8B84B; font-size:1.8rem; font-weight:700; margin-bottom:8px; }
.distribution-placeholder .threshold-label { color:#D4DAE4; font-size:0.82rem; font-family:'IBM Plex Sans',sans-serif; }
.distribution-placeholder .progress-bar { width:240px; height:4px; background:#1e2228; border-radius:2px; margin:16px auto 0; overflow:hidden; }
.distribution-placeholder .progress-fill { height:100%; background:#E8B84B; border-radius:2px; }
.window-table-wrap { background:#111418; border:1px solid #1e2228; border-radius:4px; overflow:hidden; margin-bottom:32px; }
.window-table { width:100%; border-collapse:collapse; font-size:0.76rem; }
.window-table th { background:#0A0C0F; color:#B8C0CC; font-size:0.65rem; letter-spacing:0.1em; text-transform:uppercase; padding:12px 14px; text-align:left; border-bottom:1px solid #1e2228; white-space:nowrap; font-weight:600; }
.window-table td { padding:12px 14px; border-bottom:1px solid #0d1014; vertical-align:middle; color:#E8EAF0; }
.window-table tr:last-child td { border-bottom:none; }
.window-table tr:hover td { background:#0d1014; }
.badge-open { display:inline-block; background:rgba(0,212,170,0.12); color:#00D4AA; border:1px solid rgba(0,212,170,0.3); font-size:0.64rem; padding:2px 8px; border-radius:2px; font-weight:600; }
.badge-closed { display:inline-block; background:rgba(200,204,216,0.08); color:#D4DAE4; border:1px solid #2a3040; font-size:0.64rem; padding:2px 8px; border-radius:2px; }
.results-page .regime-tag { font-size:0.68rem; color:#E8B84B; letter-spacing:0.06em; font-weight:500; }
.diff-pos { color:#00D4AA; font-weight:700; }
.diff-neg { color:#FF4444; font-weight:700; }
.diff-nil { color:#B8C0CC; }
.pattern-label { color:#D4DAE4; font-size:0.7rem; }
.loading-row td { color:#B8C0CC; font-style:italic; }
.subscriber-gate { background:linear-gradient(to bottom,transparent,#0A0C0F 60%); margin-top:-80px; padding-top:80px; padding-bottom:40px; text-align:center; position:relative; }
.gate-card { background:#111418; border:1px solid #E8B84B; border-radius:4px; padding:32px; max-width:480px; margin:0 auto; }
.gate-card h3 { color:#E8B84B; font-size:1rem; margin:0 0 8px; }
.gate-card p { color:#D4DAE4; font-size:0.82rem; font-family:'IBM Plex Sans',sans-serif; line-height:1.65; margin:0 0 20px; }
.gate-card .cta-btn { display:inline-block; background:#E8B84B; color:#0A0C0F; font-weight:700; font-size:0.82rem; padding:12px 28px; border-radius:3px; text-decoration:none; letter-spacing:0.06em; }
.gate-card .price-note { color:#B8C0CC; font-size:0.72rem; margin-top:12px; display:block; }
.results-footer-disclaimer { border-top:1px solid #1e2228; padding-top:32px; margin-top:48px; color:#D4DAE4; font-size:0.76rem; font-family:'IBM Plex Sans',sans-serif; line-height:1.85; }
.results-footer-disclaimer strong { color:#E8EAF0; }
@media(max-width:768px) { .counter-bar { grid-template-columns:repeat(2,1fr); } .window-table { display:block; overflow-x:auto; } .results-header { padding:20px; } }

/* ── Atlas Engine Block ─────────────────────────────────────────────────── */
.atlas-engine-block {
  border: 1px solid var(--gold3);
  border-left: 3px solid var(--gold);
  background: rgba(232,184,75,0.03);
  padding: 16px 20px;
  margin-bottom: 20px;
  font-family: var(--mono);
}
.atlas-engine-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 10px;
}
.atlas-engine-body {
  font-size: 11px;
  color: var(--white);
  line-height: 1.9;
  font-family: var(--sans);
  font-weight: 300;
}
.atlas-engine-note {
  font-size: 8px;
  color: var(--white3);
  letter-spacing: 0.1em;
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid var(--border);
  text-transform: uppercase;
}

/* ── Historical Base Rate Context ───────────────────────────────────────── */
.atlas-base-rate {
  font-size: 9px;
  color: var(--white3);
  line-height: 1.7;
  font-family: var(--sans);
  font-weight: 300;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--border);
  font-style: italic;
}

/* ── TRACK RECORD BANNER ── */
.track-record-start-banner{display:flex;align-items:center;gap:12px;padding:10px 16px;background:rgba(0,212,170,0.04);border:1px solid rgba(0,212,170,0.25);border-left:3px solid var(--teal);margin-bottom:20px;font-family:var(--mono);flex-wrap:wrap}
.trb-badge{font-size:8px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--teal);white-space:nowrap}
.trb-date{font-size:13px;font-weight:700;color:var(--white);white-space:nowrap}
.trb-desc{font-size:9px;color:var(--white3);line-height:1.6;font-family:var(--sans);font-weight:300}

/* ── BRIEFS ARCHIVE PAGE ── */
.briefs-page{max-width:900px;margin:0 auto;padding:40px 24px 80px;font-family:var(--mono)}
.briefs-header{margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.briefs-overline{font-size:8px;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold2);margin-bottom:8px}
.briefs-title{font-family:var(--sans);font-size:1.6rem;font-weight:600;color:var(--white);margin:0 0 10px}
.briefs-sub{font-family:var(--sans);font-size:13px;color:var(--white3);line-height:1.7;margin:0 0 12px;font-weight:300}
.briefs-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:8px;color:var(--white4);letter-spacing:0.1em}
.briefs-sep{color:var(--border2)}
.briefs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;background:var(--border);border:1px solid var(--border);margin-bottom:40px}
.brief-card{display:block;background:var(--bg2);padding:18px 20px;text-decoration:none;transition:background 0.15s}
.brief-card:hover{background:var(--bg3)}
.brief-card-date{font-size:8px;color:var(--gold2);letter-spacing:0.15em;text-transform:uppercase;margin-bottom:6px}
.brief-card-title{font-family:var(--sans);font-size:13px;font-weight:600;color:var(--white);line-height:1.35;margin-bottom:6px}
.brief-card-excerpt{font-size:9px;color:var(--white3);line-height:1.5;margin-bottom:8px;font-family:var(--sans);font-weight:300}
.brief-card-read{font-size:8px;color:var(--gold);letter-spacing:0.12em;text-transform:uppercase;font-weight:700}
.briefs-empty{padding:40px;text-align:center;background:var(--bg2)}
.briefs-empty-title{font-size:14px;color:var(--white);margin-bottom:8px}
.briefs-empty-sub{font-size:11px;color:var(--white3);font-family:var(--sans)}
.briefs-disclaimer{font-size:9px;color:var(--white4);line-height:1.7;border-top:1px solid var(--border);padding-top:20px;font-family:var(--sans)}
.briefs-disclaimer a{color:var(--gold3);text-decoration:none}
