:root{
  --bg:#07131f;
  --surface:#0b1d2b;
  --surface-2:#102536;
  --ink:#edf3f5;
  --muted:#93a8b2;
  --line:#294354;
  --gold:#e7c178;
  --red:#df626c;
  --green:#54ad84;
  --amber:#d7a64b;
  --blue:#7897da;
  --paper:#edf0ec;
  --paper-ink:#14242d;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}
button,a{font:inherit;color:inherit}
button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
i,em{font-style:normal}
[hidden]{display:none!important}
main{overflow:hidden}

.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:0 4vw;border-bottom:1px solid var(--line);background:rgba(7,19,31,.96);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border:1px solid rgba(231,193,120,.72);border-radius:8px;background:#102b3d;box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);font-size:0}
.brand-mark svg{width:29px;height:29px;overflow:visible}
.brand-mark .coast{fill:none;stroke:var(--gold);stroke-width:2.2;stroke-linecap:round}
.brand-mark .route-mark{fill:none;stroke:#59bfd6;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand-mark circle{fill:var(--red);stroke:#fff;stroke-width:1}
.brand span:last-child{min-width:0}
.brand strong,.brand small{display:block}
.brand strong{color:var(--gold);font-size:12px;letter-spacing:0}
.brand small{color:var(--muted);font-size:13px}
nav{display:flex;gap:6px}
nav a,.view-tabs button,.filter button{border:0;border-radius:999px;background:transparent;padding:9px 13px;color:var(--muted);font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}
nav a:hover,nav a.active,.view-tabs button.active,.filter button.active{background:#193044;color:#fff}
.top-actions{justify-self:end;display:flex;align-items:center;gap:16px;min-width:0}
.language-switcher{display:flex;flex-shrink:0;padding:3px;border:1px solid var(--line);border-radius:999px;background:#081825}
.language-switcher button{min-width:34px;padding:5px 8px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:12px;font-weight:800;cursor:pointer}
.language-switcher button.active{background:var(--gold);color:#12222c}
.freshness{color:var(--muted);font-size:13px;white-space:nowrap}
.freshness span{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}
.freshness b{color:var(--ink)}

.atlas-shell{min-height:calc(100vh - 72px);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(360px,.78fr);border-bottom:1px solid var(--line)}
.map-column{min-width:0;padding:30px 28px 24px 4vw}
.map-title-row,.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.eyebrow{margin:0 0 7px;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:0}
.map-title-row h1,.section-head h2,.intel-panel h2,.logic-card h2,.strait-card h2{margin:0;line-height:1.08;overflow-wrap:break-word}
.map-title-row h1{font-size:clamp(30px,3.5vw,54px)}
.view-tabs{display:flex;padding:4px;border:1px solid var(--line);border-radius:999px;background:#081825}
.map-stage{position:relative;margin-top:22px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#07131f;box-shadow:0 24px 70px rgba(0,0,0,.25)}
#map{display:block;width:100%;height:auto;max-height:60vh}
.province{stroke:#dce7e8;stroke-width:1.8;vector-effect:non-scaling-stroke;transition:fill .25s,opacity .25s}
.province:hover{filter:brightness(1.22);cursor:pointer}
.province.houthi{fill:#9e3441}.province.contested{fill:#c99743}.province.government{fill:#355f58}
.country{fill:#52646b;stroke:#f7fbfc;stroke-width:1.5;stroke-opacity:.86;vector-effect:non-scaling-stroke}
.country.focus-saudi{fill:#4f9a78}.country.focus-yemen{fill:#a63845}.country.focus-iran{fill:#637bb5}
.place-label,.country-label{fill:#f7fbfc;font-weight:800;paint-order:stroke;stroke:#07131f;stroke-width:4px;stroke-linejoin:round}
.place-label{font-size:11px}.country-label{font-size:14px;letter-spacing:0}
.place-dot{stroke:#fff;stroke-width:1.5}.place-dot.hot{fill:var(--red);filter:url(#glow)}.place-dot.origin{fill:#f0c779}.place-dot.capital{fill:#fff}.place-dot.port{fill:#75bdd2}.place-dot.front{fill:var(--amber)}.place-dot.strait{fill:var(--red)}
.route{fill:none;stroke-width:2.5;stroke-dasharray:7 6;opacity:.9}.route.attack{stroke:var(--red)}.route.support{stroke:var(--blue)}.route.shipping{stroke:#59bfd6;stroke-width:4;stroke-dasharray:4 9}
.route-label{fill:#cbd9df;font-size:12px;font-weight:700;paint-order:stroke;stroke:#07131f;stroke-width:4px}
.map-legend{position:absolute;left:16px;bottom:34px;display:flex;flex-wrap:wrap;gap:14px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:rgba(7,19,31,.9);color:#c5d2d8;font-size:12px;backdrop-filter:blur(8px)}
.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:10px;height:10px;border-radius:2px}.map-legend .houthi{background:#9e3441}.map-legend .contested{background:#c99743}.map-legend .government{background:#355f58}.map-legend .event{border-radius:50%;background:var(--red);box-shadow:0 0 8px var(--red)}
.map-credit{position:absolute;right:15px;bottom:9px;color:#73909d;font-size:11px}
.tooltip{position:fixed;z-index:100;max-width:260px;padding:11px 13px;border:1px solid #4b6572;border-radius:6px;background:#07131f;color:#fff;box-shadow:0 15px 50px rgba(0,0,0,.45);pointer-events:none;font-size:13px}
.tooltip b{display:block;margin-bottom:3px;color:var(--gold)}
.period-control{display:grid;grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:24px;margin-top:18px}
.period-copy strong,.period-copy span{display:block}.period-copy strong{font-size:17px}.period-copy span{margin-top:3px;color:var(--muted);font-size:14px}
.period-buttons{display:flex;align-items:center;gap:4px}.period-buttons button{min-width:58px;padding:9px 10px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.period-buttons button.active{border-color:var(--gold);background:var(--gold);color:#12222c;font-weight:800}

.intel-panel{min-width:0;padding:28px clamp(22px,3vw,46px) 28px 26px;border-left:1px solid var(--line);background:#091a28}
.status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;color:var(--muted);font-size:12px}
.status{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #78343b;border-radius:4px;background:rgba(214,80,89,.08);color:#f4b5ba}
.status i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 10px var(--red)}
.intel-panel h2{max-width:20ch;font-size:clamp(25px,2.3vw,36px)}
.lead{display:-webkit-box;max-width:68ch;margin:12px 0 0;overflow:hidden;color:#aec0c8;font-size:15px;line-height:1.55;-webkit-line-clamp:4;-webkit-box-orient:vertical}
.hero-media{margin:16px 0 14px}
.hero-figure,.brief-media{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#081825}
.hero-figure img,.brief-media img{display:block;width:100%;height:100%;object-fit:cover;background:#102b3d}
.hero-figure img{max-height:180px;aspect-ratio:16/9}
.brief-media img{aspect-ratio:4/3}
.hero-figure figcaption,.brief-media figcaption{display:flex;justify-content:space-between;gap:10px;padding:7px 9px;color:#7892a0;font-size:11px;line-height:1.35}
.hero-figure a,.brief-media a{color:var(--gold);text-decoration:none}
.brief-list{display:grid;gap:10px;margin-top:18px}
.brief{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;min-width:0;padding:12px;border:1px solid rgba(40,64,82,.95);border-radius:8px;background:#0d2131}
.brief--text{grid-template-columns:minmax(0,1fr)}
.brief-media-slot{min-width:0}.brief-media-slot[hidden]{display:none!important}
.brief-media{height:100%}.brief-media img{min-height:82px}
.brief-body{min-width:0}
.brief-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.brief time{flex:0 0 auto;color:var(--gold);font-size:11px;font-weight:800;line-height:1.2}
.brief .tag{min-width:0;overflow:hidden;color:#f29aa2;font-size:10px;font-weight:800;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}
.brief h3{margin:0;font-size:15px;line-height:1.3;overflow-wrap:anywhere}
.brief p{display:-webkit-box;margin:5px 0 0;overflow:hidden;color:var(--muted);font-size:13px;line-height:1.45;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.source-jump{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding:11px 13px;border:1px solid rgba(231,193,120,.3);border-radius:8px;background:rgba(231,193,120,.055);color:var(--gold);font-size:13px;font-weight:700;text-decoration:none}

.metrics{display:grid;grid-template-columns:repeat(4,1fr);padding:0 4vw;background:var(--paper);color:var(--paper-ink)}
.metrics article{display:flex;align-items:center;gap:16px;padding:28px 22px;border-right:1px solid #cad1cf}.metrics article:last-child{border:0}.metrics span{color:#8d3a43;font:700 12px ui-monospace,SFMono-Regular,Menlo,monospace}.metrics p{margin:0;color:#54636a;font-size:13px}.metrics b{display:block;color:var(--paper-ink);font-size:22px}
.section{padding:86px 6vw}.section-head h2,.logic-card h2,.strait-card h2{font-size:clamp(30px,4vw,52px)}
.filter{display:flex;flex-wrap:wrap;justify-content:flex-end}
.timeline{margin-top:48px;border-top:1px solid var(--line)}
.timeline-item{display:grid;grid-template-columns:120px 120px minmax(230px,1fr) 1.2fr;align-items:start;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.timeline-item.hidden{display:none}.timeline-item time{color:var(--gold);font:800 15px ui-monospace,SFMono-Regular,Menlo,monospace}.timeline-item .phase{width:max-content;padding:4px 8px;border:1px solid #385265;border-radius:999px;color:#b6c5cc;font-size:12px}.timeline-item h3{margin:0;font-size:19px}.timeline-item p{margin:0;color:var(--muted)}
.split-section{display:grid;grid-template-columns:1.5fr .7fr;background:var(--paper);color:var(--paper-ink)}
.logic-card,.strait-card{padding:74px 6vw}.logic-card{border-right:1px solid #cbd1cf}.logic-card .eyebrow,.strait-card .eyebrow{color:#863741}
.logic-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:38px;border-top:1px solid #bdc8c7;border-left:1px solid #bdc8c7}.logic-grid div{padding:26px;border-right:1px solid #bdc8c7;border-bottom:1px solid #bdc8c7}.logic-grid span{color:#863741;font:700 12px ui-monospace,SFMono-Regular,Menlo,monospace}.logic-grid h3{margin:8px 0 5px}.logic-grid p,.strait-card>p{margin:0;color:#526269}
.strait-card{background:#dbe2df}.strait-visual{position:relative;height:300px;margin:30px 0;overflow:hidden;border-radius:80px 80px 24px 24px;background:#113044;color:#fff}.strait-visual:before,.strait-visual:after{content:"";position:absolute;top:0;width:36%;height:100%;background:#b89e6f}.strait-visual:before{left:0;clip-path:polygon(0 0,100% 8%,72% 53%,100% 100%,0 100%)}.strait-visual:after{right:0;clip-path:polygon(12% 0,100% 0,100% 100%,5% 100%,34% 55%)}.africa,.yemen{position:absolute;z-index:2;font-size:12px;font-weight:800}.africa{left:9%;top:42%}.yemen{right:9%;top:43%}.shipping-line{position:absolute;left:50%;top:10%;bottom:10%;width:3px;background:#5fc0d8}.shipping-line i{position:absolute;left:-4px;width:11px;height:11px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}.shipping-line i:nth-child(1){top:20%}.shipping-line i:nth-child(2){top:48%}.shipping-line i:nth-child(3){top:75%}.strait-visual b,.strait-visual small{position:absolute;z-index:2;left:50%;transform:translateX(-50%);white-space:nowrap}.strait-visual b{bottom:36px;color:var(--gold);font-size:20px}.strait-visual small{bottom:18px;color:#9fc0ca}
.actors-section{background:#091825}.actors-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:42px}.actor{position:relative;overflow:hidden;padding:28px 30px;border:1px solid var(--line);background:#0d2131}.actor:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--actor)}.actor-head{display:flex;align-items:center;gap:14px}.actor-code{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--actor);color:var(--actor);font-weight:900}.actor h3{margin:0;font-size:20px}.actor dl{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;margin:24px 0 0}.actor dt{color:#7f9aa7;font-size:12px;font-weight:800}.actor dd{margin:0;color:#c2d0d6;font-size:14px}
.scenarios{background:#06111b}.not-probability,.cutoff{color:var(--muted);font-size:13px}.scenario-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:38px}.scenario-grid article{padding:24px;border:1px solid var(--line);border-top:4px solid var(--risk);background:#0a1c2a}.scenario-grid span{color:var(--risk);font-size:11px;font-weight:900}.scenario-grid h3{font-size:19px}.scenario-grid p{color:var(--muted);font-size:14px}.risk-red{--risk:var(--red)}.risk-green{--risk:var(--green)}.risk-amber{--risk:var(--amber)}
.sources-section{background:var(--paper);color:var(--paper-ink)}.sources-section .eyebrow{color:#863741}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:38px 0;background:#bbc7c6}.method-grid article{padding:24px;background:#f4f6f3}.method-number{color:#863741;font-weight:800}.method-grid h3{margin:8px 0}.method-grid p{margin:0;color:#5d6c72}.source-list{border-top:1px solid #bcc8c7}.source-item{display:grid;grid-template-columns:130px 150px minmax(0,1fr) 34px;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid #bcc8c7;text-decoration:none}.source-item:hover{background:rgba(255,255,255,.45)}.source-item .org{font-weight:850}.source-item time{color:#6b7a7f;font-size:14px}.source-item .title{font-weight:650}.source-item .arrow{font-size:20px}.cnn-note{margin-top:26px;padding:18px 20px;border-left:4px solid #687f8a;background:#f4f6f3;color:#536269}
footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px 6vw;background:#050d14;color:#6f8995;font-size:13px}footer b,footer span{display:block}footer b{color:#cbd7dc}footer p{margin:0}.error-state{fill:#e9f0f2;font-size:18px}.error-sub{fill:#93a8b2;font-size:13px}

html[dir="rtl"] body{font-family:"Segoe UI",Tahoma,Arial,sans-serif}html[dir="rtl"] #map{direction:ltr}html[dir="rtl"] .actor:before{left:auto;right:0}html[dir="rtl"] .cnn-note{border-left:0;border-right:4px solid #687f8a}html[dir="rtl"] .source-item .arrow{transform:scaleX(-1)}

@media(max-width:1100px){
  .topbar{grid-template-columns:1fr auto}.topbar nav{display:none}
  .atlas-shell{display:flex;min-height:auto;flex-direction:column}.intel-panel{order:-1;border-left:0;border-bottom:1px solid var(--line);padding:28px 5vw}.intel-panel h2{max-width:32ch}.lead{max-width:80ch}.brief-list{grid-template-columns:repeat(2,minmax(0,1fr))}.map-column{padding:30px 5vw}
  .metrics{grid-template-columns:repeat(2,1fr)}.metrics article:nth-child(2){border-right:0}.metrics article:nth-child(-n+2){border-bottom:1px solid #cad1cf}
  .split-section{grid-template-columns:1fr}.logic-card{border-right:0;border-bottom:1px solid #cbd1cf}.scenario-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:720px){
  html{scroll-padding-top:64px}
  .topbar{min-height:60px;padding:max(8px,env(safe-area-inset-top)) 12px 8px;gap:8px}.brand{gap:8px;overflow:hidden}.brand-mark{width:34px;height:34px;flex-basis:34px}.brand strong{overflow:hidden;font-size:10px;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.brand small,.freshness{display:none}.top-actions{gap:0}.language-switcher{padding:2px}.language-switcher button{min-width:29px;min-height:30px;padding:4px 5px;font-size:11px}
  .intel-panel{padding:22px 14px 24px}.status-row{margin-bottom:14px}.status{max-width:75%;padding:6px 8px;font-size:11px}.intel-panel .eyebrow{font-size:11px;letter-spacing:0}.intel-panel h2{max-width:none;font-size:clamp(24px,7.1vw,30px);line-height:1.13}.lead{margin-top:10px;font-size:14px;line-height:1.48;-webkit-line-clamp:4}.hero-media{margin:12px 0 10px}.hero-figure img{max-height:170px}.hero-figure figcaption{align-items:flex-start;flex-direction:column}
  .brief-list{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:15px}.brief{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:12px}.brief--text{grid-template-columns:minmax(0,1fr)}.brief-media{height:88px}.brief-media img{width:88px;height:88px;min-height:0;aspect-ratio:1}.brief-media figcaption{display:none}.brief-meta{flex-wrap:wrap;gap:5px 8px}.brief .tag{white-space:normal}.brief h3{font-size:17px;line-height:1.28}.brief p{font-size:13px;line-height:1.42;-webkit-line-clamp:3}.source-jump{margin-top:12px}
  .map-column{padding:24px 12px 20px}.map-title-row{align-items:flex-start;flex-direction:column;gap:14px}.map-title-row h1{font-size:clamp(29px,8.8vw,37px);line-height:1.06}.view-tabs{width:100%;padding:3px}.view-tabs button{flex:1;min-width:0;padding:8px 7px;font-size:13px}.map-stage{margin-top:12px}#map{max-height:none}.map-legend{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin:0;padding:10px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;font-size:11px}.map-legend span{min-width:0;gap:5px}.map-credit{position:static;padding:0 10px 10px;background:transparent;font-size:10px;line-height:1.35}.place-label{font-size:10px;stroke-width:5px}.place.mobile-secondary .place-label{display:none}.route-label{font-size:10px;stroke-width:5px}.country-label{font-size:11px;stroke-width:5px}
  .period-control{grid-template-columns:1fr;gap:12px;margin-top:14px}.period-copy strong{font-size:16px}.period-copy span{font-size:13px;line-height:1.45}.period-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%}.period-buttons button{min-width:0;min-height:38px;padding:7px 2px;font-size:12px;line-height:1.1}html[dir="rtl"] .period-buttons{direction:ltr}
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 14px}.metrics article{align-items:flex-start;gap:9px;padding:18px 8px;border-right:0;border-bottom:1px solid #cad1cf}.metrics article:nth-child(odd){border-right:1px solid #cad1cf}.metrics article:nth-last-child(-n+2){border-bottom:0}.metrics b{font-size:19px}.metrics p{font-size:12px;line-height:1.4}
  .section{padding:56px 16px}.section-head{align-items:flex-start;flex-direction:column;gap:14px}.section-head h2,.logic-card h2,.strait-card h2{font-size:clamp(29px,8vw,38px)}.filter{justify-content:flex-start}.filter button{padding:8px 10px;font-size:13px}
  .timeline{margin-top:30px}.timeline-item{grid-template-columns:78px minmax(0,1fr);gap:8px;padding:20px 0}.timeline-item .phase,.timeline-item h3,.timeline-item p{grid-column:2}.timeline-item h3{font-size:17px;line-height:1.25}.timeline-item p{font-size:14px;overflow-wrap:anywhere}
  .logic-card,.strait-card{padding:50px 16px}.logic-grid{grid-template-columns:1fr;margin-top:28px}.logic-grid div{padding:20px}.strait-visual{height:245px;margin:24px 0;border-radius:64px 64px 20px 20px}.strait-visual b{bottom:34px;font-size:17px}.strait-visual small{bottom:14px;max-width:84%;text-align:center;white-space:normal}
  .actors-grid,.scenario-grid,.method-grid{grid-template-columns:1fr;margin-top:28px}.actor{padding:22px 18px}.actor dl{grid-template-columns:70px minmax(0,1fr);gap:8px}.scenario-grid article,.method-grid article{padding:20px}.logic-grid p,.actor dd,.scenario-grid p,.method-grid p{overflow-wrap:anywhere}
  .source-item{grid-template-columns:minmax(0,1fr) 28px;gap:4px;padding:16px 0}.source-item .org,.source-item time,.source-item .title{grid-column:1}.source-item .arrow{grid-column:2;grid-row:1/4}.source-item .title{overflow-wrap:anywhere}
  footer{align-items:flex-start;flex-direction:column;gap:14px;padding:28px 16px}
}

@media(max-width:360px){
  .topbar{padding-left:10px;padding-right:10px}.brand-mark{width:32px;height:32px;flex-basis:32px}.brand strong{font-size:9px;letter-spacing:0}.language-switcher button{min-width:27px;padding:4px}.brief{grid-template-columns:76px minmax(0,1fr)}.brief-media,.brief-media img{width:76px;height:76px}.brief h3{font-size:16px}.map-legend{font-size:10px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.province{transition:none}}

/* 2026 editorial redesign — inspired by data-led financial newsrooms */
:root{
  --bg:#f3f4f1;
  --surface:#ffffff;
  --surface-2:#f7f8f5;
  --ink:#0b0d0e;
  --muted:#687077;
  --line:#cfd3d0;
  --gold:#16a979;
  --red:#c53e4c;
  --green:#16c98d;
  --amber:#c98d1d;
  --blue:#4c6fd5;
  --paper:#ffffff;
  --paper-ink:#0b0d0e;
}
.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}
body{background:var(--bg);color:var(--ink);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;letter-spacing:-.012em}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(22,201,141,.45);outline-offset:2px}
.signal-strip{position:relative;z-index:60;height:30px;overflow:hidden;border-bottom:1px solid #0e9d70;background:var(--green);color:#072219}
.signal-track{display:flex;align-items:center;width:max-content;min-width:0;height:100%;flex:none;backface-visibility:hidden;will-change:transform;animation:signal-scroll 44s linear infinite}
.signal-item{display:flex;align-items:center;gap:8px;padding:0 24px;border-right:1px solid rgba(0,0,0,.16);font-size:11px;font-weight:850;letter-spacing:.025em;text-transform:uppercase;white-space:nowrap}
.signal-item time{opacity:.68}.signal-item b{max-width:42ch;overflow:hidden;text-overflow:ellipsis}
@keyframes signal-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

.topbar{top:0;grid-template-columns:minmax(245px,.8fr) minmax(320px,1.35fr) minmax(245px,.8fr);grid-template-areas:"brand search actions" "nav nav nav";gap:0 24px;min-height:0;padding:14px 2.5vw 0;border-bottom:1px solid #121314;background:rgba(255,255,255,.97);color:var(--ink);box-shadow:0 7px 22px rgba(0,0,0,.035);backdrop-filter:blur(16px)}
.brand{grid-area:brand}.brand-mark{width:48px;height:48px;flex-basis:48px;border:0;border-radius:50%;background:#0b0d0e;box-shadow:none}.brand-mark svg{width:34px;height:34px}.brand-mark .coast{stroke:#fff}.brand-mark .route-mark{stroke:var(--green)}.brand-mark circle{fill:var(--green)}
.brand strong{color:#0b0d0e;font-size:14px;font-weight:950;letter-spacing:-.02em}.brand small{color:#5e6569;font-size:12px}
.global-search{grid-area:search;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;min-height:48px;padding:0 14px;border:1px solid #bfc4c1;border-radius:999px;background:#f6f7f5;transition:border-color .2s,box-shadow .2s}
.global-search:focus-within{border-color:#111;box-shadow:0 0 0 3px rgba(22,201,141,.18)}
.global-search>span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#0b0d0e;color:#fff;font-size:22px;line-height:1;transform:rotate(-15deg)}
.global-search input{min-width:0;border:0;outline:0;background:transparent;color:#111;font-size:15px}.global-search input::placeholder{color:#747b7f}.global-search kbd{padding:3px 7px;border:1px solid #c9cecb;border-radius:5px;background:#fff;color:#6e7478;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace}
.top-actions{grid-area:actions}.language-switcher{border-color:#c9cecb;background:#f6f7f5}.language-switcher button{color:#5f666a}.language-switcher button.active{background:#0b0d0e;color:#fff}.freshness{color:#666d71}.freshness b{color:#111}.freshness span{background:var(--green);box-shadow:none}
.topbar nav{grid-area:nav;justify-content:space-between;margin-top:13px;border-top:1px solid #d4d7d5}
.topbar nav a{flex:1;border-radius:0;padding:12px 14px;text-align:center;color:#242729;font-size:13px;letter-spacing:.035em;text-transform:uppercase}
.topbar nav a:hover,.topbar nav a.active{background:#0b0d0e;color:#fff}

.search-panel{position:fixed;z-index:80;top:116px;left:50%;width:min(860px,calc(100vw - 32px));max-height:min(68vh,640px);padding:22px;overflow:auto;transform:translateX(-50%);border:1px solid #111;border-radius:14px;background:#fff;color:#111;box-shadow:0 26px 90px rgba(0,0,0,.24)}
.search-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:1px solid #d3d7d4}.search-panel-head strong{font-size:20px}.search-panel-head button{width:38px;height:38px;border:1px solid #bfc5c1;border-radius:50%;background:#fff;font-size:25px;cursor:pointer}.search-results{display:grid;gap:0}.search-result{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 4px;border-bottom:1px solid #d9dcda;color:#111;text-decoration:none}.search-result:hover{background:#f3f5f2}.search-result .result-type{color:#0b8f67;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.search-result h3{margin:0;font-size:17px;line-height:1.25}.search-result p{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:#687077;font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.search-result .result-mark{font-size:20px}.search-empty{padding:34px 0;color:#6b7377;text-align:center}

.atlas-shell{min-height:calc(100vh - 116px);grid-template-columns:minmax(0,1.58fr) minmax(360px,.72fr);gap:22px;padding:28px 2.5vw 34px;border-bottom:1px solid #cfd3d0;background:#fff}
.map-column{padding:0}.map-title-row h1{font-size:clamp(34px,4.2vw,62px);letter-spacing:-.055em}.eyebrow{color:#0b8f67;font-size:11px;letter-spacing:.08em}.view-tabs{border-color:#c5cac7;background:#f5f6f4}.view-tabs button{color:#5f666a}.view-tabs button.active{background:#0b0d0e;color:#fff}
.map-stage{margin-top:18px;border-color:#aeb9b5;border-radius:13px;background:#e3ece9;box-shadow:0 18px 50px rgba(26,55,48,.11)}
.province{stroke:#f8faf9;stroke-width:2}.province.houthi{fill:#b83f4d}.province.contested{fill:#d29a32}.province.government{fill:#3f7167}
.country{fill:#9aaca7;stroke:#f7faf8;stroke-width:2}.country.focus-saudi{fill:#6d9488}.country.focus-yemen{fill:#b54854}.country.focus-iran{fill:#667db8}
.place-label,.country-label{fill:#10211e;stroke:#f5f8f6;stroke-width:5px}.route-label{fill:#243b37;stroke:#f5f8f6;stroke-width:5px}
.map-stage .map-legend{border-color:#b9c3bf;background:rgba(255,255,255,.92);color:#27332f;box-shadow:0 8px 24px rgba(20,45,39,.1)}.map-stage .map-credit{color:#53645f}
.map-legend .houthi{background:#b83f4d}.map-legend .contested{background:#d29a32}.map-legend .government{background:#3f7167}
.tooltip{border-color:#aeb9b5;background:#fff;color:#13201d;box-shadow:0 16px 48px rgba(20,42,36,.22)}.tooltip b{color:#087e5a}
.period-control{padding:14px 16px;border:1px solid #ccd1ce;border-radius:10px;background:#f7f8f5}.period-copy span{color:#687077}.period-buttons button{border-color:#c5cac7;color:#62696d}.period-buttons button:hover{border-color:#111}.period-buttons button.active{border-color:#0b0d0e;background:#0b0d0e;color:#fff}
.intel-panel{padding:20px;border:1px solid #111;border-radius:13px;background:#fff;color:#111;box-shadow:0 14px 38px rgba(0,0,0,.05)}
.status-row{margin-bottom:17px;color:#747b7f}.status{border-color:#edc4c8;border-radius:999px;background:#fff3f4;color:#a42935}.status i{box-shadow:none}.intel-panel h2{font-size:clamp(28px,2.5vw,40px);letter-spacing:-.04em}.lead{color:#596166;font-size:15px;-webkit-line-clamp:5}.hero-figure,.brief-media{border-color:#cbd0cd;background:#f5f6f4}.hero-figure figcaption,.brief-media figcaption{color:#737a7e}.hero-figure a,.brief-media a{color:#087e5a}
.brief-list{gap:9px}.brief{border-color:#cbd0cd;border-radius:10px;background:#fff;transition:transform .18s,box-shadow .18s,border-color .18s}.brief:hover{transform:translateY(-2px);border-color:#0b0d0e;box-shadow:0 10px 28px rgba(0,0,0,.08)}.brief time{color:#0b8f67}.brief .tag{color:#a93440}.brief p{color:#687077}.source-jump{border-color:#0b0d0e;background:#0b0d0e;color:#fff}.source-jump:hover{background:#16c98d;color:#05261c}
.brief[role="button"]{cursor:pointer}.brief.expanded{border-color:#0b0d0e}.brief.expanded p{display:block;-webkit-line-clamp:unset}.brief.expanded .brief-media{height:auto}.brief.expanded .brief-media img{min-height:120px}

.metrics{padding:0 2.5vw;border-top:1px solid #cfd3d0;border-bottom:1px solid #cfd3d0;background:#f3f4f1}.metrics article{padding:24px 20px;border-color:#c8cdca}.metrics span{color:#0b8f67}.metrics p{color:#60676b}.metrics b{color:#111}
.section{padding:82px 5vw}.chronology{background:#edf1ee;color:#111}.chronology .eyebrow{color:#087e5a}.chronology .filter{gap:6px}.chronology .filter button{border:1px solid #c1c9c5;background:#fff;color:#505b57}.chronology .filter button:hover{border-color:#16231f;color:#111}.chronology .filter button.active{border-color:#0b0d0e;background:#0b0d0e;color:#fff}.timeline{display:grid;gap:12px;border:0}.timeline-item{padding:22px;border:1px solid #c9d0cc;border-left:4px solid #16a979;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(28,52,45,.045);transition:transform .18s,border-color .18s,box-shadow .18s}.timeline-item:hover{transform:translateY(-2px);border-color:#83938d;box-shadow:0 13px 32px rgba(28,52,45,.09)}.timeline-item time{color:#087e5a}.timeline-item .phase{border-color:#b8c3be;background:#f2f5f3;color:#43504b;font-weight:700}.timeline-item h3{color:#111}.timeline-item p{color:#59635f}
.split-section{background:#fff}.logic-card{border-color:#cfd3d0}.logic-card .eyebrow,.strait-card .eyebrow,.sources-section .eyebrow{color:#0b8f67}.logic-grid{border-color:#cdd2cf}.logic-grid div{border-color:#cdd2cf}.logic-grid span{color:#0b8f67}.logic-grid p,.strait-card>p{color:#646c70}.strait-card{background:#e9eeea}.strait-visual{background:#0b2435}.strait-visual:before,.strait-visual:after{background:#b8ad8f}
.actors-section{background:#fff;color:#111}.actor{border-color:#cbd0cd;border-radius:12px;background:#f7f8f5}.actor h3{color:#111}.actor dt{color:#70777b}.actor dd{color:#4f575b}.actor-code{border-radius:50%}
.scenarios{background:#eff1ee;color:#111}.not-probability,.cutoff{color:#666d71}.scenario-grid article{border-color:#c7ccc9;border-top-color:var(--risk);border-radius:10px;background:#fff}.scenario-grid p{color:#687077}
.sources-section{background:#fff}.method-grid{background:#cbd0cd}.method-grid article{background:#f5f6f4}.method-number{color:#0b8f67}.source-list{border-color:#c7ccc9}.source-item{border-color:#c7ccc9}.source-item:hover{background:#eff5f1}.cnn-note{border-left-color:#16c98d;background:#eff5f1}
footer{border-top:1px solid #222;background:#0b0d0e;color:#8f979b}footer b{color:#fff}

html[dir="rtl"] .global-search>span{transform:rotate(15deg)}html[dir="rtl"] .search-result .result-mark{transform:scaleX(-1)}

@media(max-width:1100px){
  .topbar{grid-template-columns:minmax(230px,1fr) minmax(300px,1.4fr) auto;grid-template-areas:"brand search actions" "nav nav nav"}.topbar nav{display:flex}
  .atlas-shell{display:flex;padding:24px 3vw 30px}.intel-panel{order:0;padding:20px;border:1px solid #111}.brief-list{grid-template-columns:repeat(2,minmax(0,1fr))}.map-column{padding:0}
}

@media(max-width:760px){
  html{scroll-padding-top:112px}.signal-strip{height:27px}.signal-item{padding:0 16px;font-size:10px}.signal-track{animation-duration:36s}
  .topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions" "search search" "nav nav";gap:10px 12px;padding:10px 12px 0}.brand-mark{width:40px;height:40px;flex-basis:40px}.brand small{display:block;font-size:10px}.brand strong{font-size:11px}.freshness{display:none}.global-search{min-height:43px}.global-search kbd{display:none}.topbar nav{display:flex;margin-top:0;overflow:auto;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.topbar nav a{flex:0 0 auto;min-width:100px;padding:10px 14px;font-size:11px}
  .search-panel{top:148px;width:calc(100vw - 20px);max-height:68vh;padding:16px;border-radius:12px}.search-result{grid-template-columns:1fr auto;gap:8px;padding:14px 2px}.search-result .result-type{grid-column:1}.search-result>div{grid-column:1}.search-result .result-mark{grid-column:2;grid-row:1/3}.search-panel-head strong{font-size:17px}
  .atlas-shell{min-height:0;padding:16px 12px 24px;gap:14px}.intel-panel{order:-1;padding:17px}.intel-panel h2{font-size:clamp(27px,8vw,34px)}.lead{-webkit-line-clamp:4}.brief-list{grid-template-columns:1fr}.map-title-row h1{font-size:clamp(34px,10vw,44px)}.map-stage{border-radius:10px}.period-control{padding:12px}
  .metrics{padding:0 12px}.metrics article{padding:18px 8px}
  .section{padding:60px 16px}.chronology .section-head{gap:18px}.filter{position:sticky;top:145px;z-index:5;width:100%;overflow:auto;flex-wrap:nowrap;justify-content:flex-start;padding:7px;border:1px solid #bec7c2;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 7px 24px rgba(20,42,36,.09);scrollbar-width:none;backdrop-filter:blur(12px)}.filter::-webkit-scrollbar{display:none}.filter button{flex:0 0 auto}.timeline-item{padding:18px 14px;border-left-width:4px}
  .logic-card,.strait-card{padding:54px 16px}.actor{border-radius:10px}.scenario-grid article{border-radius:9px}
}

.ui-icon{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.search-result .result-mark,.source-item .arrow{display:grid;place-items:center;width:32px;height:32px;border:1px solid #c8ceca;border-radius:50%;color:#111;font-size:0}
.source-item:hover .arrow{border-color:#111;background:#111;color:#fff}
@media(max-width:760px){.topbar nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0;overflow:hidden}.topbar nav a{min-width:0;padding:10px 4px;font-size:10px;letter-spacing:0;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.signal-track{animation-duration:72s}}
