.mexa-shell {
    --mexa-ink:#071b32;
    --mexa-deep:#072b48;
    --mexa-blue:#075985;
    --mexa-green:#008a68;
    --mexa-green-soft:#eaf8f3;
    --mexa-gold:#b97808;
    --mexa-gold-soft:#fff7e6;
    --mexa-red:#b53e4b;
    --mexa-red-soft:#fff0f1;
    --mexa-line:#c8d7e3;
    --mexa-panel:#ffffff;
    --mexa-muted:#526b80;
    width:min(1600px,calc(100% - 2rem));
    margin:1rem auto 3rem;
    color:var(--mexa-ink);
}
.mexa-shell *, .mexa-shell *::before, .mexa-shell *::after { box-sizing:border-box; }
.mexa-sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.mexa-topline { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.65rem; color:#34526b; font-size:.76rem; font-weight:750; letter-spacing:.04em; }
.mexa-topline a { color:var(--mexa-blue); text-decoration:none; }
.mexa-kicker, .mexa-eyebrow { color:var(--mexa-green); font-size:.69rem; font-weight:850; letter-spacing:.16em; line-height:1.35; text-transform:uppercase; }

.mexa-landing-hero { padding:clamp(1.4rem,4vw,4rem); border-top:5px solid #19b38d; color:white; background:linear-gradient(118deg,#061d34 0%,#073d5d 62%,#08755f 145%); }
.mexa-landing-hero .mexa-kicker { color:#6ae4c4; }
.mexa-landing-hero h1 { max-width:58rem; margin:.35rem 0 .8rem; color:white; font:750 clamp(2.7rem,6vw,6.2rem)/.92 "Source Serif 4",serif; letter-spacing:-.04em; }
.mexa-landing-hero > p { max-width:64rem; margin:0; color:#d9e9f2; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.65; }
.mexa-dashboard-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(24rem,.75fr); gap:clamp(1.5rem,4vw,4rem); align-items:end; padding:clamp(1.4rem,4vw,3.5rem); border-top:5px solid #19b38d; color:white; background:linear-gradient(118deg,#061d34 0%,#073d5d 62%,#08755f 145%); }
.mexa-dashboard-hero .mexa-kicker { color:#6ae4c4; }
.mexa-dashboard-hero h1 { max-width:52rem; margin:.35rem 0 .75rem; color:white; font:750 clamp(2.7rem,5.5vw,5.6rem)/.92 "Source Serif 4",serif; letter-spacing:-.04em; }
.mexa-dashboard-hero p { max-width:55rem; margin:0; color:#d9e9f2; font-size:clamp(1rem,1.4vw,1.18rem); line-height:1.6; }
.mexa-dashboard-hero .mexa-finder { width:100%; margin:0; }
.mexa-publication-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; padding:1px; border-right:1px solid var(--mexa-line); border-bottom:1px solid var(--mexa-line); border-left:1px solid var(--mexa-line); background:var(--mexa-line); }
.mexa-publication-strip article { min-width:0; padding:.85rem 1rem; border-top:3px solid var(--mexa-green); background:white; }
.mexa-publication-strip article:last-child { border-top-color:var(--mexa-gold); }
.mexa-publication-strip span, .mexa-publication-strip strong, .mexa-publication-strip small { display:block; }
.mexa-publication-strip span { color:var(--mexa-muted); font-size:.63rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.mexa-publication-strip strong { margin:.25rem 0 .18rem; font:750 clamp(1.15rem,1.8vw,1.55rem)/1.1 "Source Serif 4",serif; }
.mexa-publication-strip small { color:#536d81; line-height:1.35; }
.mexa-publication-strip small b { color:var(--mexa-blue); }
.mexa-finder { max-width:60rem; margin:2rem 0 1rem; padding:1rem; border:1px solid rgb(255 255 255/.26); background:rgb(255 255 255/.08); }
.mexa-finder > label { display:block; margin-bottom:.45rem; color:white; font-size:.74rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.mexa-finder__box { position:relative; min-width:0; }
.mexa-finder input, .mexa-report-search input { width:100%; min-height:3.25rem; padding:.75rem .9rem; border:1px solid #89a6ba; border-radius:0; color:var(--mexa-ink); background:white; font:inherit; }
.mexa-finder input:focus, .mexa-report-search input:focus { border-color:#1ab18b; outline:3px solid rgb(26 177 139/.2); outline-offset:1px; }
.mexa-search-results { position:absolute; z-index:20; top:calc(100% + .3rem); left:0; right:0; max-height:25rem; overflow:auto; border:1px solid var(--mexa-line); color:var(--mexa-ink); background:white; box-shadow:0 20px 50px rgb(3 23 42/.25); scrollbar-width:none; }
.mexa-search-results::-webkit-scrollbar { display:none; }
.mexa-search-results:empty { display:none; }
.mexa-result { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:center; width:100%; padding:.78rem; border:0; border-bottom:1px solid var(--mexa-line); color:var(--mexa-ink); background:white; text-align:left; cursor:pointer; }
.mexa-result:hover, .mexa-result:focus-visible, .mexa-result.is-active { background:var(--mexa-green-soft); box-shadow:inset 4px 0 var(--mexa-green); }
.mexa-result strong, .mexa-result span { display:block; }
.mexa-result span span { margin-top:.22rem; color:var(--mexa-muted); font-size:.72rem; }
.mexa-result__meta { color:var(--mexa-blue); font-size:.7rem; font-weight:800; white-space:nowrap; }
.mexa-result-empty { margin:0; padding:.9rem; color:var(--mexa-muted); font-size:.82rem; }
.mexa-coverage { display:flex; flex-wrap:wrap; gap:.65rem 1.5rem; margin-top:1.25rem; color:#d4e5ee; font-size:.78rem; }
.mexa-coverage span { display:inline-flex; align-items:center; gap:.35rem; }
.mexa-coverage strong { color:white; }

.mexa-section { margin-top:1.1rem; border:1px solid var(--mexa-line); border-top:4px solid var(--mexa-blue); background:white; }
.mexa-section__head { display:flex; align-items:end; justify-content:space-between; gap:2rem; padding:1.1rem 1.2rem; border-bottom:1px solid var(--mexa-line); }
.mexa-section__head h2 { max-width:60rem; margin:.2rem 0 0; font:750 clamp(1.65rem,3vw,3rem)/1.03 "Source Serif 4",serif; letter-spacing:-.02em; }
.mexa-section__head > p { max-width:47rem; margin:0; color:var(--mexa-muted); line-height:1.55; }
.mexa-question-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-question-grid article { min-width:0; padding:1.15rem; background:white; }
.mexa-question-grid article > span { color:var(--mexa-green); font:800 1rem "Source Serif 4",serif; }
.mexa-question-grid h3 { margin:.45rem 0; font:750 1.3rem/1.15 "Source Serif 4",serif; }
.mexa-question-grid p { margin:0; color:#405a70; line-height:1.55; }
.mexa-method-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-top:1.1rem; padding:1px; background:var(--mexa-line); }
.mexa-method-strip div { padding:1rem; background:white; }
.mexa-method-strip strong, .mexa-method-strip span { display:block; }
.mexa-method-strip strong { font:750 1.05rem "Source Serif 4",serif; }
.mexa-method-strip span { margin-top:.3rem; color:var(--mexa-muted); font-size:.78rem; line-height:1.45; }

.mexa-market-strip { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1px; margin-top:1.1rem; padding:1px; background:var(--mexa-line); }
.mexa-market-strip article { min-width:0; padding:.9rem; border-top:3px solid #7e98ad; background:white; }
.mexa-market-strip article:nth-child(3), .mexa-market-strip article:nth-child(6) { border-top-color:var(--mexa-green); }
.mexa-market-strip article:nth-child(4) { border-top-color:var(--mexa-red); }
.mexa-market-strip span, .mexa-market-strip strong, .mexa-market-strip small { display:block; }
.mexa-market-strip span { color:var(--mexa-muted); font-size:.63rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.mexa-market-strip strong { margin:.32rem 0; font:750 clamp(1.55rem,2.3vw,2.35rem)/1 "Source Serif 4",serif; }
.mexa-market-strip small { color:#536d81; line-height:1.35; }
.mexa-dashboard-board { overflow:hidden; }
.mexa-mode-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; padding:1px; background:var(--mexa-line); }
.mexa-mode-nav a { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.22rem .8rem; min-width:0; padding:.75rem .85rem; color:var(--mexa-ink); background:white; text-decoration:none; }
.mexa-mode-nav a:hover, .mexa-mode-nav a:focus-visible { background:var(--mexa-green-soft); }
.mexa-mode-nav a.is-active { color:white; background:var(--mexa-deep); box-shadow:inset 4px 0 var(--mexa-green); }
.mexa-mode-nav strong { font-size:.82rem; }
.mexa-mode-nav span { color:var(--mexa-blue); font-size:.78rem; font-weight:900; }
.mexa-mode-nav a.is-active span { color:#7ce7ca; }
.mexa-mode-nav small { grid-column:1/-1; overflow:hidden; color:var(--mexa-muted); font-size:.68rem; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.mexa-mode-nav a.is-active small { color:#c9dce8; }
.mexa-ranking-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:1px; padding:1px; border-top:1px solid var(--mexa-line); background:var(--mexa-line); }
.mexa-ranking-head > div { align-self:stretch; min-width:12rem; padding:.65rem .85rem; background:white; }
.mexa-ranking-head > div:first-child { flex:1; }
.mexa-ranking-head strong, .mexa-ranking-head span { display:block; }
.mexa-ranking-head span { margin-top:.16rem; color:var(--mexa-muted); font-size:.7rem; }
.mexa-ranking-sort-form { display:none; }
.mexa-ranking-grid { border-top:1px solid var(--mexa-line); }
.mexa-ranking-grid__header, .mexa-ranking-grid__row { display:grid; grid-template-columns:3.2rem minmax(13rem,2.1fr) repeat(4,minmax(5.7rem,.9fr)) minmax(4.8rem,.7fr) minmax(7rem,.9fr) minmax(9.5rem,1.3fr) minmax(7rem,.9fr); }
.mexa-ranking-grid__header { color:#34526b; background:#edf6fb; font-size:.65rem; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.mexa-ranking-grid__header > * { display:flex; align-items:center; justify-content:flex-end; min-width:0; padding:.68rem .72rem; border-right:1px solid var(--mexa-line); color:inherit; text-align:right; text-decoration:none; overflow-wrap:anywhere; }
.mexa-ranking-grid__header > :nth-child(-n+2) { justify-content:flex-start; text-align:left; }
.mexa-ranking-grid__header > *:last-child { border-right:0; }
.mexa-ranking-grid__header a:hover, .mexa-ranking-grid__header a:focus-visible, .mexa-ranking-grid__header a.is-active { color:white; background:var(--mexa-blue); }
.mexa-ranking-grid__header i { margin-left:.28rem; font-style:normal; }
.mexa-ranking-grid__row { border-top:1px solid var(--mexa-line); background:white; }
.mexa-ranking-grid__row:hover { box-shadow:inset 4px 0 var(--mexa-green); }
.mexa-ranking-grid__row > div { min-width:0; padding:.78rem .72rem; border-right:1px solid #e4ecf2; text-align:right; overflow-wrap:anywhere; }
.mexa-ranking-grid__row > div:last-child { border-right:0; }
.mexa-ranking-grid__row > :nth-child(-n+2) { text-align:left; }
.mexa-ranking-grid__row small { display:block; margin-top:.18rem; color:var(--mexa-muted); font-size:.68rem; line-height:1.3; }
.mexa-ticker-cell a, .mexa-ticker-cell a > * { display:block; }
.mexa-ticker-cell a { color:var(--mexa-blue); text-decoration:none; }
.mexa-ticker-cell a > span { margin:.12rem 0; color:var(--mexa-ink); font-weight:700; }
.mexa-rank-cell strong { color:#36546b; }
.mexa-value { color:var(--mexa-ink); }
.mexa-value.is-positive { color:#00745a; }
.mexa-value.is-negative { color:#a73342; }
.mexa-state { display:inline-block; padding:.24rem .38rem; border-left:3px solid #8295a6; color:#34526b; background:#edf3f7; font-size:.7rem; line-height:1.25; white-space:normal; }
.mexa-state[data-state="forming"], .mexa-state[data-state="strengthening"] { border-left-color:var(--mexa-green); color:#00624c; background:var(--mexa-green-soft); }
.mexa-state[data-state="breaking"], .mexa-state[data-state="weakening"] { border-left-color:var(--mexa-red); color:#8d2735; background:var(--mexa-red-soft); }
.mexa-pagination { display:grid; grid-template-columns:1fr auto 1fr; gap:1rem; align-items:center; padding:.8rem 1rem; border-top:1px solid var(--mexa-line); background:white; }
.mexa-pagination a { color:var(--mexa-blue); font-weight:850; text-decoration:none; }
.mexa-pagination a:last-child { text-align:right; }
.mexa-dashboard-empty { padding:3rem 1rem; text-align:center; }
.mexa-dashboard-empty h3 { margin:0; font:750 1.7rem "Source Serif 4",serif; }
.mexa-dashboard-empty p { color:var(--mexa-muted); }
.mexa-sector-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-sector-columns > div { min-width:0; padding:1rem; background:white; }
.mexa-sector-columns h3 { margin:0 0 .65rem; font:750 1.25rem "Source Serif 4",serif; }
.mexa-sector-columns article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:center; margin-top:.45rem; padding:.72rem .8rem; border:1px solid var(--mexa-line); background:white; }
.mexa-sector-columns article > div:last-child { text-align:right; }
.mexa-sector-columns strong, .mexa-sector-columns small { display:block; }
.mexa-sector-columns small { margin-top:.16rem; color:var(--mexa-muted); font-size:.69rem; }

.mexa-report-nav { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem 1rem; border:1px solid var(--mexa-line); border-top:4px solid var(--mexa-green); background:white; }
.mexa-wordmark { color:var(--mexa-deep); font:800 1.35rem "Source Serif 4",serif; letter-spacing:.08em; text-decoration:none; }
.mexa-report-search { width:min(34rem,70%); }
.mexa-report-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(20rem,.6fr); border:1px solid var(--mexa-line); border-top:0; background:white; }
.mexa-report-hero > div { min-width:0; padding:clamp(1.25rem,3vw,2.6rem); }
.mexa-report-hero h1 { margin:.28rem 0; font:750 clamp(2.5rem,5vw,5.4rem)/.92 "Source Serif 4",serif; letter-spacing:-.04em; }
.mexa-company { margin:.55rem 0; color:var(--mexa-muted); font-size:1.05rem; }
.mexa-headline { max-width:58rem; margin:1.2rem 0 0; padding-left:1rem; border-left:4px solid var(--mexa-green); color:#193b55; font:700 clamp(1.15rem,1.8vw,1.5rem)/1.4 "Source Serif 4",serif; }
.mexa-verdict { padding:1.4rem; border-left:1px solid var(--mexa-line); background:linear-gradient(145deg,#eef8f5,#f7fbfd); }
.mexa-verdict[data-tone="partial"] { background:linear-gradient(145deg,#fff8e8,#f7fbfd); }
.mexa-verdict[data-tone="weak"] { background:linear-gradient(145deg,#fff0f1,#f7fbfd); }
.mexa-verdict > span { display:block; color:var(--mexa-muted); font-size:.68rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.mexa-verdict strong { display:block; margin:.4rem 0; font:750 clamp(2rem,4vw,3.6rem)/1 "Source Serif 4",serif; }
.mexa-verdict p { margin:.75rem 0 0; color:#35536a; line-height:1.55; }

.mexa-key-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; padding:1px; background:var(--mexa-line); }
.mexa-key-grid article { min-width:0; padding:1rem; border-top:3px solid #7e98ad; background:white; }
.mexa-key-grid article[data-tone="leading"], .mexa-key-grid article[data-tone="recovering"] { border-top-color:var(--mexa-green); }
.mexa-key-grid article[data-tone="fading"] { border-top-color:var(--mexa-gold); }
.mexa-key-grid article[data-tone="lagging"] { border-top-color:var(--mexa-red); }
.mexa-key-grid span, .mexa-reading-grid span, .mexa-peer-grid span, .mexa-asymmetry span, .mexa-watch-grid span { display:block; color:var(--mexa-muted); font-size:.66rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.mexa-key-grid strong { display:block; margin:.35rem 0; font:750 clamp(1.65rem,2.5vw,2.5rem)/1 "Source Serif 4",serif; }
.mexa-key-grid small, .mexa-asymmetry small { display:block; color:#536d81; line-height:1.4; overflow-wrap:anywhere; }
.mexa-help { display:inline-grid; place-items:center; width:1.2rem; height:1.2rem; margin-left:.2rem; padding:0; border:1px solid #8fa8bb; border-radius:50%; color:var(--mexa-blue); background:white; font:800 .69rem/1 sans-serif; cursor:pointer; vertical-align:middle; }
.mexa-help:hover, .mexa-help:focus-visible { color:white; background:var(--mexa-blue); }
.mexa-reading-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-peer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr)); gap:1px; background:var(--mexa-line); }
.mexa-watch-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-reading-grid article, .mexa-peer-grid article, .mexa-watch-grid article { min-width:0; padding:1rem; border-top:3px solid #dbe8f0; background:white; }
.mexa-reading-grid strong, .mexa-peer-grid strong, .mexa-watch-grid strong { display:block; margin:.35rem 0; font:750 1.35rem/1.15 "Source Serif 4",serif; }
.mexa-reading-grid p, .mexa-peer-grid p, .mexa-watch-grid p { margin:.35rem 0 0; color:var(--mexa-muted); font-size:.82rem; line-height:1.45; }

.mexa-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; padding:1rem; }
.mexa-chart-grid--wide { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
.mexa-chart-panel { min-width:0; overflow:hidden; border:1px solid var(--mexa-line); background:white; }
.mexa-chart-panel--single { margin:1rem; }
.mexa-chart-panel > header { min-height:5rem; padding:.8rem .9rem; border-bottom:1px solid var(--mexa-line); background:white; }
.mexa-chart-panel h3 { margin:0; font:750 1.2rem "Source Serif 4",serif; }
.mexa-chart-panel header p { margin:.3rem 0 0; color:var(--mexa-muted); font-size:.78rem; line-height:1.4; }
.mexa-hover-strip { min-height:2.55rem; padding:.65rem .8rem; border-left:3px solid var(--mexa-blue); color:#174664; background:#eef8ff; font-size:.76rem; font-weight:750; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mexa-chart { width:100%; height:350px; min-width:0; overflow:hidden; padding:.55rem; }
.mexa-chart .uplot { max-width:100%; max-height:100%; }
.mexa-chart-message { display:grid; place-items:center; height:100%; margin:0; padding:1.5rem; color:var(--mexa-muted); background:white; text-align:center; font-weight:750; }
.mexa-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:.55rem 1rem; padding:.6rem .9rem .9rem; color:#35536a; font-size:.72rem; font-weight:800; }
.mexa-legend span { display:inline-flex; align-items:center; gap:.35rem; }
.mexa-legend span::before { content:""; width:1.2rem; height:.2rem; background:var(--mexa-legend-colour,#087fbd); }
.mexa-legend span.is-blue { --mexa-legend-colour:#087fbd; }
.mexa-legend span.is-green { --mexa-legend-colour:#008a68; }
.mexa-legend span.is-gold { --mexa-legend-colour:#d97706; }
.mexa-legend span.is-red { --mexa-legend-colour:#b53e4b; }

.mexa-answer-grid { display:grid; grid-template-columns:minmax(18rem,1.25fr) repeat(2,minmax(14rem,.8fr)) minmax(18rem,1.15fr); gap:1px; background:var(--mexa-line); }
.mexa-answer-grid > article { min-width:0; padding:1rem; background:white; }
.mexa-answer-verdict { border-top:4px solid var(--mexa-blue); }
.mexa-answer-verdict[data-direction="both"], .mexa-answer-verdict[data-direction="upside"] { border-top-color:var(--mexa-green); }
.mexa-answer-verdict[data-direction="downside"], .mexa-answer-verdict[data-direction="separate"] { border-top-color:var(--mexa-red); }
.mexa-answer-verdict > span, .mexa-probability-card header span, .mexa-regime-card > span, .mexa-beta-visuals header span, .mexa-scenario-card > header > span { color:var(--mexa-muted); font-size:.66rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.mexa-answer-verdict > strong { display:block; max-width:25rem; margin:.45rem 0; font:750 clamp(1.5rem,2.2vw,2.25rem)/1.08 "Source Serif 4",serif; }
.mexa-answer-verdict p, .mexa-probability-card p, .mexa-regime-card p, .mexa-beta-map-card p { margin:.55rem 0; color:#34526b; line-height:1.48; }
.mexa-answer-verdict small, .mexa-regime-card small { color:var(--mexa-muted); font-weight:750; }
.mexa-probability-card header { display:flex; align-items:start; justify-content:space-between; gap:.7rem; }
.mexa-probability-card header strong { font:750 2.1rem/1 "Source Serif 4",serif; }
.mexa-probability-track { position:relative; height:.62rem; margin:.75rem 0; overflow:hidden; border:1px solid #b6d7cd; border-radius:999px; background:#e5f4ef; }
.mexa-probability-track i { display:block; width:var(--mexa-meter,0%); height:100%; border-radius:inherit; background:var(--mexa-green); }
.mexa-probability-track.is-down { border-color:#e1bbc1; background:#fae8ea; }
.mexa-probability-track.is-down i { background:var(--mexa-red); }
.mexa-regime-card { border-top:4px solid var(--mexa-gold); }
.mexa-regime-card > strong { display:block; margin:.42rem 0; font:750 1.45rem/1.1 "Source Serif 4",serif; }
.mexa-regime-pills { display:flex; flex-wrap:wrap; gap:.35rem; }
.mexa-regime-pills b { padding:.3rem .45rem; border:1px solid #e3b65d; color:#6b4703; background:#fff8e7; font-size:.68rem; }
.mexa-regime-mini { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:.55rem 0; background:var(--mexa-line); }
.mexa-regime-mini div { padding:.45rem; background:white; }
.mexa-regime-mini span, .mexa-regime-mini b { display:block; }
.mexa-regime-mini span { color:var(--mexa-muted); font-size:.62rem; font-weight:800; text-transform:uppercase; }
.mexa-regime-mini b { margin-top:.2rem; color:var(--mexa-blue); font:750 1.3rem "Source Serif 4",serif; }

.mexa-beta-visuals { display:grid; grid-template-columns:minmax(22rem,1.25fr) minmax(18rem,.85fr) minmax(18rem,.9fr); gap:1rem; padding:1rem; border-top:1px solid var(--mexa-line); }
.mexa-beta-visuals > article { min-width:0; border:1px solid var(--mexa-line); background:white; }
.mexa-beta-visuals article > header { display:flex; align-items:start; justify-content:space-between; gap:.7rem; padding:.75rem .8rem; border-bottom:1px solid var(--mexa-line); }
.mexa-beta-visuals article > header strong { color:var(--mexa-blue); text-align:right; }
.mexa-beta-map { --mexa-map-inset:1.2rem; position:relative; min-height:15rem; margin:.85rem; overflow:hidden; border:1px solid #8fb3cb; background:linear-gradient(90deg,#f1fbf8 0 33.333%,#ffffff 33.333% 66.666%,#fff8e7 66.666% 100%); }
.mexa-beta-map::before, .mexa-beta-map::after { content:""; position:absolute; background:#85a9c1; }
.mexa-beta-map::before { top:0; bottom:0; left:50%; width:1px; }
.mexa-beta-map::after { top:50%; right:0; left:0; height:1px; }
.mexa-beta-map > i { position:absolute; z-index:2; left:clamp(var(--mexa-map-inset),var(--mexa-beta-x,50%),calc(100% - var(--mexa-map-inset))); bottom:clamp(var(--mexa-map-inset),var(--mexa-fit-y,50%),calc(100% - var(--mexa-map-inset))); width:1rem; height:1rem; border:3px solid white; border-radius:50%; background:var(--mexa-blue); box-shadow:0 0 0 2px var(--mexa-blue),0 5px 13px rgb(7 41 70/.28); transform:translate(-50%,50%); }
.mexa-beta-map__label { position:absolute; z-index:1; color:#34526b; font-size:.62rem; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.mexa-beta-map__label.is-independent { bottom:.5rem; left:50%; transform:translateX(-50%); }
.mexa-beta-map__label.is-dependent { top:.5rem; left:50%; transform:translateX(-50%); }
.mexa-beta-map__label.is-defensive { top:50%; left:.35rem; transform:translateY(-50%) rotate(-90deg); transform-origin:center; }
.mexa-beta-map__label.is-amplified { top:50%; right:.2rem; transform:translateY(-50%) rotate(90deg); transform-origin:center; }
.mexa-beta-map-card > p { padding:0 .85rem .85rem; }
.mexa-scenario-card > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.25rem .7rem; padding:1rem .85rem; border-bottom:1px solid var(--mexa-line); }
.mexa-scenario-card > div > span { color:#34526b; font-weight:750; }
.mexa-scenario-card > div > strong { grid-row:1/span 2; grid-column:2; align-self:center; color:var(--mexa-blue); font:750 2rem/1 "Source Serif 4",serif; }
.mexa-scenario-card > div > small { color:var(--mexa-muted); }
.mexa-scenario-card > footer { padding:.7rem .85rem; color:#604c1a; background:#fff8e7; font-size:.72rem; font-weight:750; }
.mexa-evidence-stack > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.35rem .7rem; padding:.78rem .85rem; border-bottom:1px solid var(--mexa-line); }
.mexa-evidence-stack > div > span { color:#34526b; font-size:.75rem; font-weight:750; }
.mexa-evidence-stack > div > b { color:var(--mexa-blue); }
.mexa-evidence-stack .mexa-probability-track { grid-column:1/-1; width:100%; margin:0; }
.mexa-table-meter { width:5rem; height:.3rem; margin:.28rem 0 0 auto; overflow:hidden; border-radius:999px; background:#e3f2ed; }
.mexa-table-meter i, .mexa-table-meter b { display:block; width:var(--mexa-meter,0%); height:100%; background:var(--mexa-green); }
.mexa-lead-lag { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; margin:0 1rem 1rem; background:var(--mexa-line); }
.mexa-lead-lag article { min-width:0; padding:.72rem; background:white; }
.mexa-lead-lag span, .mexa-lead-lag strong { display:block; text-align:center; }
.mexa-lead-lag span { min-height:2rem; color:var(--mexa-muted); font-size:.68rem; font-weight:800; }
.mexa-lead-lag strong { margin-top:.35rem; color:var(--mexa-blue); }
.mexa-lead-lag article > div { position:relative; height:.48rem; overflow:hidden; border-radius:999px; background:linear-gradient(90deg,#f8e2e5 0 50%,#e1f4ed 50% 100%); }
.mexa-lead-lag article > div::after { content:""; position:absolute; top:0; bottom:0; left:50%; width:1px; background:white; }
.mexa-lead-lag article > div i { position:absolute; top:0; bottom:0; width:var(--mexa-diverging-width,0%); background:var(--mexa-diverging-colour,var(--mexa-green)); }
.mexa-lead-lag article > div[data-sign="positive"] i { left:50%; }
.mexa-lead-lag article > div[data-sign="negative"] i { right:50%; }

.mexa-data-grid { border-top:1px solid var(--mexa-line); font-size:.8rem; }
.mexa-data-grid--horizons .mexa-data-grid__header, .mexa-data-grid--horizons .mexa-data-grid__row { grid-template-columns:repeat(7,minmax(0,1fr)); }
.mexa-data-grid--conditions .mexa-data-grid__header, .mexa-data-grid--conditions .mexa-data-grid__row { grid-template-columns:1.35fr repeat(5,minmax(0,1fr)); }
.mexa-data-grid__header, .mexa-data-grid__row { display:grid; }
.mexa-data-grid__header { color:#34526b; background:#edf6fb; font-size:.67rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.mexa-data-grid__header > *, .mexa-data-grid__row > * { min-width:0; padding:.68rem .72rem; border-right:1px solid #dce5ec; text-align:right; overflow-wrap:anywhere; }
.mexa-data-grid__header > *:first-child, .mexa-data-grid__row > *:first-child { text-align:left; }
.mexa-data-grid__header > *:last-child, .mexa-data-grid__row > *:last-child { border-right:0; }
.mexa-data-grid__row { border-top:1px solid #dce5ec; background:white; }
.mexa-data-grid__row .mexa-table-meter { display:block; margin:.28rem 0 0 auto; }

.mexa-bridge-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; padding:1rem; }
.mexa-bridge { min-width:0; border:1px solid var(--mexa-line); background:white; }
.mexa-bridge > header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.6rem; padding:.8rem; border-bottom:1px solid var(--mexa-line); background:#f7fafc; }
.mexa-bridge > header span { color:var(--mexa-muted); font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.mexa-bridge > header strong { color:var(--mexa-blue); }
.mexa-bridge__parts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-bridge__parts div { min-width:0; padding:.75rem; background:white; }
.mexa-bridge__parts span, .mexa-bridge__parts strong { display:block; }
.mexa-bridge__parts span { min-height:2rem; color:var(--mexa-muted); font-size:.65rem; font-weight:800; text-transform:uppercase; }
.mexa-bridge__parts strong { margin-top:.3rem; font:750 1.3rem "Source Serif 4",serif; }
.mexa-bridge > p { margin:0; padding:.85rem; color:#405a70; line-height:1.5; }
.mexa-note { padding:1rem; border-left:4px solid var(--mexa-gold); color:#604c1a; background:var(--mexa-gold-soft); }

.mexa-asymmetry { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-asymmetry article { min-width:0; padding:1rem; background:white; }
.mexa-asymmetry strong { display:block; margin:.35rem 0; font:750 clamp(1.45rem,2vw,2rem)/1.1 "Source Serif 4",serif; }
.mexa-period-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--mexa-line); }
.mexa-period-columns > div { min-width:0; padding:1rem; background:white; }
.mexa-period-columns h3 { margin:0 0 .65rem; font:750 1.25rem "Source Serif 4",serif; }
.mexa-period-columns article { margin-top:.65rem; padding:.8rem; border:1px solid var(--mexa-line); border-left:4px solid var(--mexa-green); background:white; }
.mexa-period-columns > div:last-child article { border-left-color:var(--mexa-red); }
.mexa-period-columns article header { display:flex; justify-content:space-between; gap:.8rem; color:#294a64; font-size:.76rem; font-weight:800; }
.mexa-period-columns article p { margin:.4rem 0; color:#34526b; }
.mexa-period-columns article small { color:var(--mexa-muted); line-height:1.45; }

.mexa-methodology { display:grid; grid-template-columns:minmax(16rem,.45fr) minmax(0,1fr); gap:2rem; margin-top:1.1rem; padding:1.2rem; border-top:4px solid var(--mexa-green); color:white; background:var(--mexa-deep); }
.mexa-methodology .mexa-eyebrow { color:#61dfbe; }
.mexa-methodology h2 { margin:.25rem 0; color:white; font:750 2rem "Source Serif 4",serif; }
.mexa-methodology dl { margin:0; }
.mexa-methodology dl div { display:grid; grid-template-columns:9rem minmax(0,1fr); gap:1rem; padding:.55rem 0; border-bottom:1px solid rgb(255 255 255/.16); }
.mexa-methodology dt { color:#8ee8d0; font-weight:800; }
.mexa-methodology dd { margin:0; color:#d8e8f1; line-height:1.45; }
.mexa-empty { padding:clamp(2rem,7vw,6rem) 1rem; text-align:center; }
.mexa-empty h2 { margin:.3rem 0; font:750 clamp(2rem,4vw,3.6rem)/1 "Source Serif 4",serif; }
.mexa-empty p { max-width:44rem; margin:.75rem auto 1.2rem; color:var(--mexa-muted); line-height:1.6; }
.mexa-button { display:inline-flex; align-items:center; min-height:2.5rem; padding:.55rem .8rem; border:1px solid var(--mexa-blue); color:var(--mexa-blue); background:white; font-weight:800; text-decoration:none; }
.mexa-button:hover, .mexa-button:focus-visible { color:white; background:var(--mexa-blue); }


@media (max-width:1100px) {
    .mexa-dashboard-hero { grid-template-columns:1fr; }
    .mexa-question-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-method-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-market-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .mexa-mode-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-report-hero { grid-template-columns:1fr; }
    .mexa-verdict { border-top:1px solid var(--mexa-line); border-left:0; }
    .mexa-chart-grid, .mexa-chart-grid--wide { grid-template-columns:1fr; }
    .mexa-watch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-answer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-beta-visuals { grid-template-columns:1fr; }
}
@media (max-width:1180px) {
    .mexa-ranking-sort-form { display:grid; grid-template-columns:auto minmax(0,1fr) minmax(8rem,.45fr) auto; gap:.55rem; align-items:center; padding:.75rem; border-top:1px solid var(--mexa-line); background:white; }
    .mexa-ranking-sort-form label { color:#34526b; font-size:.72rem; font-weight:850; text-transform:uppercase; }
    .mexa-ranking-sort-form select, .mexa-ranking-sort-form button { min-width:0; min-height:2.45rem; padding:.45rem .55rem; border:1px solid #8fa8bb; color:var(--mexa-ink); background:white; font:inherit; }
    .mexa-ranking-sort-form button { color:white; background:var(--mexa-blue); font-weight:800; cursor:pointer; }
    .mexa-ranking-grid__header { display:none; }
    .mexa-ranking-grid__row { grid-template-columns:repeat(3,minmax(0,1fr)); margin:.7rem; border:1px solid var(--mexa-line); }
    .mexa-ranking-grid__row > div { border-right:1px solid #e4ecf2; border-bottom:1px solid #e4ecf2; text-align:left; }
    .mexa-ranking-grid__row > div::before { content:attr(data-label); display:block; margin-bottom:.25rem; color:var(--mexa-muted); font-size:.6rem; font-weight:850; letter-spacing:.05em; text-transform:uppercase; }
    .mexa-ranking-grid__row > div:nth-child(3n) { border-right:0; }
    .mexa-ranking-grid__row > div:nth-last-child(-n+3) { border-bottom:0; }
    .mexa-ranking-grid__row > .mexa-rank-cell { grid-column:1; }
    .mexa-ranking-grid__row > .mexa-ticker-cell { grid-column:2/-1; border-right:0; }
}
@media (max-width:720px) {
    .mexa-shell { width:100%; margin:.5rem auto 2rem; }
    .mexa-landing-hero { padding:1rem; }
    .mexa-landing-hero h1 { font-size:clamp(2.4rem,13vw,4rem); }
    .mexa-section__head { align-items:start; flex-direction:column; gap:.75rem; }
    .mexa-dashboard-hero { padding:1rem; }
    .mexa-dashboard-hero h1 { font-size:clamp(2.4rem,13vw,4rem); }
    .mexa-question-grid, .mexa-method-strip, .mexa-peer-grid, .mexa-watch-grid, .mexa-bridge-grid, .mexa-asymmetry, .mexa-period-columns, .mexa-methodology, .mexa-sector-columns, .mexa-answer-grid { grid-template-columns:1fr; }
    .mexa-market-strip, .mexa-mode-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-ranking-head > div { min-width:calc(50% - 1px); }
    .mexa-ranking-head > div:first-child { flex-basis:100%; }
    .mexa-report-nav { align-items:stretch; flex-direction:column; }
    .mexa-report-search { width:100%; }
    .mexa-report-hero > div, .mexa-verdict { padding:1rem; }
    .mexa-chart-grid { padding:.55rem; }
    .mexa-chart-panel--single { margin:.55rem; }
    .mexa-chart { height:330px; padding:.2rem; }
    .mexa-bridge__parts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-methodology dl div { grid-template-columns:1fr; gap:.25rem; }
    .mexa-lead-lag { grid-template-columns:repeat(2,minmax(0,1fr)); margin:.55rem; }
    .mexa-key-grid article, .mexa-reading-grid article { padding:.65rem .42rem; }
    .mexa-key-grid span, .mexa-reading-grid span { font-size:.56rem; letter-spacing:.02em; }
    .mexa-key-grid strong { font-size:clamp(1.05rem,5vw,1.45rem); }
    .mexa-reading-grid strong { font-size:clamp(.92rem,4vw,1.2rem); overflow-wrap:anywhere; }
    .mexa-key-grid small, .mexa-reading-grid p { font-size:.65rem; }
    .mexa-ranking-sort-form { grid-template-columns:1fr 1fr; }
    .mexa-ranking-sort-form label { grid-column:1/-1; }
    .mexa-ranking-sort-form button { grid-column:1/-1; }
    .mexa-ranking-grid__row { grid-template-columns:repeat(2,minmax(0,1fr)); margin:.55rem; }
    .mexa-ranking-grid__row > div:nth-child(n) { border-right:1px solid #e4ecf2; border-bottom:1px solid #e4ecf2; }
    .mexa-ranking-grid__row > div:nth-child(2n) { border-right:0; }
    .mexa-ranking-grid__row > div:nth-last-child(-n+2) { border-bottom:0; }
    .mexa-ranking-grid__row > .mexa-rank-cell { grid-column:1; }
    .mexa-ranking-grid__row > .mexa-ticker-cell { grid-column:2; }
    .mexa-data-grid__header { display:none; }
    .mexa-data-grid--horizons .mexa-data-grid__row, .mexa-data-grid--conditions .mexa-data-grid__row { grid-template-columns:repeat(2,minmax(0,1fr)); margin:.55rem; border:1px solid var(--mexa-line); }
    .mexa-data-grid__row > * { border-right:1px solid #dce5ec; border-bottom:1px solid #dce5ec; text-align:left; }
    .mexa-data-grid__row > *::before { content:attr(data-label); display:block; margin-bottom:.2rem; color:var(--mexa-muted); font-size:.59rem; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
    .mexa-data-grid__row > *:nth-child(2n) { border-right:0; }
    .mexa-data-grid__row > *:nth-last-child(-n+2) { border-bottom:0; }
}
@media (max-width:460px) {
    .mexa-publication-strip { grid-template-columns:1fr; }
    .mexa-data-grid--horizons .mexa-data-grid__row, .mexa-data-grid--conditions .mexa-data-grid__row { grid-template-columns:1fr; }
    .mexa-data-grid__row > *, .mexa-data-grid__row > *:nth-child(2n) { border-right:0; }
    .mexa-data-grid__row > *:nth-last-child(-n+2) { border-bottom:1px solid #dce5ec; }
    .mexa-data-grid__row > *:last-child { border-bottom:0; }
    .mexa-market-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .mexa-key-grid small, .mexa-reading-grid p { display:none; }
    .mexa-ranking-grid__row { grid-template-columns:1fr; }
    .mexa-ranking-grid__row > div:nth-child(n), .mexa-ranking-grid__row > .mexa-rank-cell, .mexa-ranking-grid__row > .mexa-ticker-cell { grid-column:1; border-right:0; border-bottom:1px solid #e4ecf2; }
    .mexa-ranking-grid__row > div:last-child { border-bottom:0; }
}
@media (prefers-reduced-motion:reduce) {
    .mexa-shell * { scroll-behavior:auto!important; transition:none!important; }
}
