/* Maritime Bridge Charter & Fuel Atlas v2: map-first, responsive, data-first UI */
#mb-charter-atlas .mb-atlas-hero{background:linear-gradient(115deg,#06293f,#0b5060 72%,#106f77)}
#mb-charter-atlas .mb-atlas-hero-inner{display:block;padding:25px 0 22px}
#mb-charter-atlas .mb-atlas-hero-image{display:none}
#mb-charter-atlas .mb-atlas-hero h1{font-size:clamp(27px,3.4vw,45px);margin:8px 0}
#mb-charter-atlas .mb-atlas-hero p{font-size:12px;line-height:1.55;max-width:900px;margin:6px 0}
#mb-charter-atlas .mb-atlas-breadcrumb{margin:0 0 12px}
#mb-charter-atlas .mb-atlas-hero-actions{margin:14px 0 5px}
#mb-charter-atlas .mb-atlas-hero-actions a{padding:9px 13px;font-size:11px}
#mb-charter-atlas .mb-atlas-metrics{margin:24px auto 22px}
#mb-charter-atlas .mb-atlas-hero .mb-atlas-kicker{font-size:10px}
#mb-charter-atlas [hidden]{display:none!important}
.mb-v2-first{background:linear-gradient(135deg,#f0f9fa,#f7fbfc 55%,#e8f3f5);padding:24px 0 30px;scroll-margin-top:72px}
.mb-v2-first *, .mb-v2-first *::before,.mb-v2-first *::after{box-sizing:border-box}
.mb-v2-first :is(input,select,button,a):focus-visible{outline:3px solid #0eb5b6;outline-offset:2px}
.mb-v2-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:3px 0 20px}
.mb-v2-intro h2{margin:5px 0 8px;color:#0b3a50;font-size:clamp(25px,3vw,39px)}
.mb-v2-intro p{max-width:95ch;color:#526f7b;font-size:13px;line-height:1.65;margin:0}
.mb-v2-stat{display:flex;flex-direction:column;gap:4px;min-width:210px;padding:14px 18px;border-radius:13px;border:1px solid #c8e1e1;background:#fff;box-shadow:0 5px 25px #1d4d5a0a}
.mb-v2-stat strong{font-size:20px;color:#0e6571;letter-spacing:-.04em}
.mb-v2-stat span{font-size:10px;color:#5d7b84;line-height:1.5}
.mb-v2-control-deck{display:grid;grid-template-columns:1.05fr 1.7fr 1fr 1fr 1.4fr auto;gap:9px;align-items:end;background:#fff;border:1px solid #d2e4e6;border-radius:18px;padding:17px;box-shadow:0 9px 25px #0d324010}
.mb-v2-field{min-width:0;display:flex;flex-direction:column;gap:6px}
.mb-v2-field label{font-size:10px;letter-spacing:.025em;font-weight:850;color:#4a6976}
.mb-v2-field :is(input,select){width:100%;background:#f8fbfb;border:1px solid #c8dcdf;border-radius:9px;color:#0d3d51;padding:9px 10px;min-height:42px;font:600 12px system-ui,-apple-system,sans-serif}
.mb-v2-field :is(input,select):hover{border-color:#0a9ba0}
.mb-v2-reset{min-height:42px;border:1px solid #b9d7db;border-radius:9px;background:#e9f4f5;color:#0b6774;padding:9px 12px;font-size:11px;font-weight:850;cursor:pointer}
.mb-v2-sensitivity{display:flex;gap:23px;flex-wrap:wrap;align-items:center;padding:12px 16px 5px}
.mb-v2-sensitivity>div{display:flex;align-items:center;gap:12px;min-width:255px}
.mb-v2-sensitivity label{font-size:11px;color:#456a78;font-weight:750}
.mb-v2-sensitivity label strong{color:#087887}
.mb-v2-sensitivity input{width:115px;accent-color:#0a9296}
.mb-v2-sensitivity p{font-size:11px;color:#758a94;margin:0}
.mb-v2-toolbar{display:flex;justify-content:space-between;align-items:center;gap:13px;margin:14px 0 11px}
.mb-v2-toolbar>div:first-child{display:flex;flex-direction:column;gap:5px}
.mb-v2-toolbar strong{font-size:15px;color:#133f51}
.mb-v2-toolbar small{font-size:11px;color:#67818b}
.mb-v2-switch{display:inline-flex;background:#fff;border:1px solid #bfd8dc;border-radius:10px;overflow:hidden}
.mb-v2-switch button{font-size:12px;font-weight:850;background:#fff;border:0;color:#386978;padding:10px 18px;cursor:pointer}
.mb-v2-switch button[aria-pressed=true]{background:#086d7e;color:#fff}
.mb-v2-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,.82fr);gap:13px;align-items:stretch}
.mb-v2-map-column{min-width:0;display:flex;flex-direction:column;gap:8px}
.mb-v2-map{height:clamp(450px,58vh,760px);border:1px solid #c3dfe1;background:#cfe9eb;border-radius:17px;overflow:hidden;position:relative;z-index:0;box-shadow:0 14px 35px #11465c1a}
.mb-v2-map .leaflet-tooltip{font:700 12px system-ui,-apple-system,sans-serif!important;color:#11556a}
.mb-v2-map-error{padding:24px;font-size:14px;color:#506c79}
.mb-v2-legend{display:flex;flex-wrap:wrap;align-items:center;gap:11px;padding:10px 13px;border:1px solid #d5e5e6;background:#fff;border-radius:11px;font-size:10px;color:#5b7782}
.mb-v2-legend>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.mb-v2-legend i{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #fff;box-shadow:0 0 0 1px #b4c6ca}
.mb-v2-low{background:#19a99a}.mb-v2-mid{background:#e5aa51}.mb-v2-high{background:#d87068}
.mb-v2-legend small{color:#6b8290;font-size:10px}
.mb-v2-detail{background:white;border:1px solid #cde1e5;border-radius:17px;padding:clamp(15px,2.1vw,23px);height:clamp(450px,58vh,760px);overflow-y:auto;box-shadow:0 14px 35px #11465c12;scrollbar-color:#abd8d9 #f1f7f7}
.mb-v2-overline{text-transform:uppercase;letter-spacing:.085em;font-size:9px;color:#12818c;font-weight:900}
.mb-v2-port-head{padding-bottom:15px;border-bottom:1px solid #d6e7e9}
.mb-v2-port-head h3{font-size:clamp(22px,2.3vw,31px);color:#0b3950;margin:5px 0}
.mb-v2-port-head p{font-size:11px;color:#627b86;margin:0}
.mb-v2-price-feature{display:flex;flex-direction:column;gap:7px;margin:12px 0;padding:16px;background:linear-gradient(135deg,#0b5265,#083548);border:1px solid #186f7c;border-radius:14px}
.mb-v2-price-feature .mb-v2-overline{color:#96ddd7}
.mb-v2-price-feature strong{font-size:clamp(30px,3.8vw,49px);line-height:1.1;color:#f5fbfa;letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.mb-v2-price-feature small{font-size:11px;color:#d2e9ed}
.mb-v2-range{font-size:10px;color:#a5e5df}
.mb-v2-fuel-feature{padding:12px 0}
.mb-v2-fuel-list{display:flex;flex-direction:column;margin:11px 0;gap:7px}
.mb-v2-fuel-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #d5e5e7;border-radius:9px;background:#f8fbfb;padding:10px 12px;font-size:13px;font-weight:800;color:#305a69}
.mb-v2-fuel-row strong{color:#0a6672;font-size:15px;font-variant-numeric:tabular-nums}
.mb-v2-fuel-row.is-selected{background:#e9f7f4;border-color:#7bcbc5}
.mb-v2-runrate{font-size:11px;line-height:1.55;color:#59717a}
.mb-v2-reference{border-top:1px solid #d8e7e9;padding-top:14px}
.mb-v2-reference p{font-size:10px;color:#667f88;line-height:1.62}
.mb-v2-compare{margin-top:16px;border-top:1px solid #d8e7e9;padding-top:11px}
.mb-v2-compare h4{color:#1d5366;font-size:13px;margin:5px 0 10px}
.mb-v2-compare-row{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid #e4eeef;padding:8px 0}
.mb-v2-compare-row button{background:transparent;border:0;padding:2px 0;text-align:left;text-decoration:underline;text-decoration-color:#9dd2d5;color:#0a717a;font-size:11px;cursor:pointer}
.mb-v2-compare-row strong{white-space:nowrap;font-size:11px;color:#2b6774;font-variant-numeric:tabular-nums}
.mb-v2-table-scroll{background:#fff;border:1px solid #cfe1e4;border-radius:15px;overflow-x:auto}
.mb-v2-table{width:100%;border-collapse:collapse;min-width:1040px;font-size:12px}
.mb-v2-table th{padding:12px 13px;background:#e8f3f5;color:#436a78;text-align:left;font-size:11px}
.mb-v2-table td{padding:10px 13px;border-top:1px solid #e1ecee;color:#2d5767}
.mb-v2-port-link{border:0;background:none;color:#007687;font-weight:850;cursor:pointer;text-decoration:underline;text-align:left;padding:0}
.mb-v2-data-cell{color:#066b77!important;font-variant-numeric:tabular-nums;font-weight:850;white-space:nowrap}
.mb-v2-data-status{color:#97743f!important;font-size:10px}
.mb-v2-page{display:flex;gap:12px;align-items:center;margin:12px 0;color:#657f88;font-size:12px}
.mb-v2-page button{background:#dff3f2;border:1px solid #aad5d6;padding:10px 15px;border-radius:8px;color:#136475;font-weight:800;cursor:pointer}
.mb-v2-detail-list{height:auto;max-height:none;margin-top:15px;display:grid;grid-template-columns:1fr 1fr;column-gap:16px}
.mb-v2-detail-list .mb-v2-port-head{grid-column:1/-1}
.mb-v2-detail-list .mb-v2-reference,.mb-v2-detail-list .mb-v2-compare{grid-column:1/-1}
.mb-v2-detail-list .mb-v2-price-feature{align-self:start}
.mb-v2-disclosure{margin-top:15px;padding:16px 20px;background:#fff;border:1px solid #d4e5e7;border-left:4px solid #8bc5c6;border-radius:11px;font-size:11px;line-height:1.75;color:#5a7480}
.mb-v2-disclosure strong{color:#24576b}
.mb-v2-muted{font-size:13px;color:#607b85;line-height:1.6}
.mb-v2-taxonomy{background:#fff;border:1px solid #d6e7e9;border-radius:15px;padding:18px}
.mb-v2-taxonomy h3{color:#125060;font-size:16px;margin:0 0 12px}
.mb-v2-class-chip{display:inline-flex;margin:5px;padding:8px 12px;border:1px solid #b9d8dc;border-radius:9px;background:#f2f9f9;color:#1a6572;font-weight:750;font-size:11px;cursor:pointer}
.mb-v2-class-chip.is-active{background:#0e7380;color:#fff}
@media(max-width:1150px){.mb-v2-control-deck{grid-template-columns:repeat(3,minmax(0,1fr))}.mb-v2-field-search{grid-column:span 2}.mb-v2-layout{grid-template-columns:minmax(0,1.3fr) minmax(300px,.9fr)}}
@media(max-width:800px){.mb-v2-layout{grid-template-columns:1fr}.mb-v2-map{height:430px}.mb-v2-detail{height:auto;max-height:none}.mb-v2-intro{align-items:flex-start;flex-direction:column}.mb-v2-stat{width:100%}.mb-v2-control-deck{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-v2-detail-list{grid-template-columns:1fr}}
@media(max-width:520px){.mb-v2-first{padding:18px 0}.mb-v2-control-deck{padding:12px;gap:8px}.mb-v2-field-search{grid-column:1/-1}.mb-v2-sensitivity{padding:13px 3px}.mb-v2-sensitivity>div{width:100%;justify-content:space-between}.mb-v2-map{height:370px}.mb-v2-price-feature strong{font-size:35px}.mb-v2-legend{font-size:9px}}
@media(prefers-reduced-motion:reduce){.mb-v2-first *{scroll-behavior:auto!important}}

.mb-v2-methodology{background:#fff;border:1px solid #cfe4e7;border-radius:12px;margin-top:12px;padding:14px}
.mb-v2-methodology>summary{font-size:13px;color:#0e6b79;font-weight:850;cursor:pointer}
.mb-v2-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.mb-v2-method-grid article{border-top:2px solid #70c2c3;padding:12px}
.mb-v2-method-grid h3{font-size:14px;color:#0a4960;margin:0 0 9px}
.mb-v2-method-grid p{font-size:12px;line-height:1.8;color:#59747e;margin:0}
@media(max-width:850px){.mb-v2-method-grid{grid-template-columns:1fr}}

/* Mobile port sheet: compact headline and quick price scan, no full-screen modal. */
.mb-v2-port-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.mb-v2-port-head-copy{flex:1;min-width:0}
.mb-v2-port-head-copy h3{overflow-wrap:anywhere;line-height:1.12;margin:5px 0}
.mb-v2-dismiss{display:none;width:40px;height:40px;flex:none;border:1px solid #d0e4e6;border-radius:50%;
background:#f0f7f8;color:#315f6c;font-size:27px;line-height:1;cursor:pointer;align-items:center;justify-content:center}
.mb-v2-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}
.mb-v2-quick-grid .mb-v2-price-feature{min-width:0;margin:0;padding:15px 12px;gap:9px;justify-content:center}
.mb-v2-quick-grid .mb-v2-price-feature strong{font-size:clamp(23px,2.3vw,33px);white-space:nowrap}
.mb-v2-quick-grid .mb-v2-price-feature .mb-v2-overline{font-size:9px}
.mb-v2-quick-grid .mb-v2-price-feature small{font-size:10px}
.mb-v2-primary-fuel{display:flex;flex-direction:column;justify-content:center;min-width:0;gap:9px;
border:1px solid #9bd7d2;border-radius:14px;padding:15px 12px;background:#e7f6f2;color:#0a5c65}
.mb-v2-primary-fuel .mb-v2-overline{font-size:9px;line-height:1.3}
.mb-v2-primary-fuel strong{font-size:clamp(23px,2.2vw,32px);letter-spacing:-.04em;line-height:1.1;white-space:nowrap;font-variant-numeric:tabular-nums}
.mb-v2-primary-fuel small{font-size:10px;color:#527b80}
.mb-v2-compact-note{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:12px 0 7px}
.mb-v2-compact-note small{font-size:10px;color:#65818b;line-height:1.5}
.mb-v2-estimate-chip{display:inline-flex;align-items:center;white-space:nowrap;background:#fff4e8;
color:#895f34;border:1px solid #ead6ba;border-radius:99px;padding:5px 8px;font-size:10px;font-weight:850}
.mb-v2-detail-sections{display:flex;flex-direction:column;gap:7px;margin-top:9px}
.mb-v2-disclosure-details{min-width:0;border:1px solid #d5e6e9;border-radius:11px;background:#f9fcfd;overflow:hidden}
.mb-v2-disclosure-details>summary{display:flex;justify-content:space-between;gap:10px;align-items:center;
cursor:pointer;list-style:none;padding:12px 13px;color:#235c6d;font-size:12px;font-weight:850}
.mb-v2-disclosure-details>summary::-webkit-details-marker{display:none}
.mb-v2-disclosure-details>summary::after{content:"+";font-size:20px;font-weight:500;line-height:1;color:#1b7581}
.mb-v2-disclosure-details[open]>summary::after{content:"−"}
.mb-v2-disclosure-details[open]>summary{border-bottom:1px solid #d5e6e9}
.mb-v2-disclosure-details .mb-v2-fuel-list{padding:8px 12px;margin:0;gap:6px}
.mb-v2-disclosure-details .mb-v2-fuel-row{padding:8px 9px}
.mb-v2-disclosure-details .mb-v2-extra-body>.mb-v2-runrate{margin:5px 13px 13px}
.mb-v2-disclosure-details .mb-v2-compare{margin:0;border:0;padding:4px 12px 10px}
.mb-v2-disclosure-details .mb-v2-reference{border:0;padding:8px 13px}
.mb-v2-disclosure-details .mb-v2-reference p{font-size:11px;line-height:1.7;margin:6px 0}
.mb-v2-detail-list{display:block}
@media(max-width:800px){
 #mb-v2-map-panel #mb-v2-detail{position:fixed;z-index:1090;left:8px;right:8px;
 bottom:max(8px,env(safe-area-inset-bottom));width:auto;height:auto;
 max-height:min(72dvh,600px);max-height:min(72svh,600px);
 overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
 border:1px solid #afd7dc;border-radius:20px;padding:14px 15px 17px;
 box-shadow:0 -15px 55px #092d4f45;background:#fff}
 #mb-v2-map-panel #mb-v2-detail:not([data-open="true"]){display:none!important}
 #mb-v2-map-panel .mb-v2-dismiss{display:inline-flex;position:sticky;top:0;z-index:2}
 #mb-v2-map-panel #mb-v2-detail::before{content:"";display:block;width:36px;height:4px;
 border-radius:9px;background:#c4d7dd;margin:0 auto 10px}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-port-head{padding-bottom:10px}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-port-head h3{font-size:clamp(20px,5.5vw,27px)}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-quick-grid .mb-v2-price-feature strong,
 #mb-v2-map-panel #mb-v2-detail .mb-v2-primary-fuel strong{font-size:clamp(23px,5.5vw,31px)}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-compact-note{margin:8px 0 4px}
 #mb-v2-list-panel .mb-v2-detail-list{padding:15px}
}
@media(max-width:355px){
 #mb-v2-map-panel #mb-v2-detail{left:5px;right:5px;padding:12px}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-quick-grid{gap:6px}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-price-feature,
 #mb-v2-map-panel #mb-v2-detail .mb-v2-primary-fuel{padding:12px 8px}
 #mb-v2-map-panel #mb-v2-detail .mb-v2-price-feature strong,
 #mb-v2-map-panel #mb-v2-detail .mb-v2-primary-fuel strong{font-size:22px}
}

/* Deep link into port history and country economic landing pages. */
.mb-v2-port-profile-link{display:flex;justify-content:center;align-items:center;gap:8px;padding:12px;
border-radius:10px;background:#0c7d85;color:#fff!important;text-decoration:none!important;
font-size:12px;font-weight:850;line-height:1.45;margin:10px 0 8px;transition:background .2s}
.mb-v2-port-profile-link:hover{background:#075a67}
.mb-v2-row-history{display:block;margin-top:4px;font-size:10px;color:#0d7d85;text-decoration:underline}
.mb-v2-research-nav{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:12px;color:#57727d;margin:0 0 14px}
.mb-v2-research-nav a{font-weight:850;text-decoration:underline;text-underline-offset:3px}
.mb-v2-research-nav span:last-child{font-size:11px}
