@font-face{font-family:Vazirmatn;src:url("../fonts/Vazirmatn-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url("../fonts/Vazirmatn-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url("../fonts/Vazirmatn-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url("../fonts/Vazirmatn-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url("../fonts/Vazirmatn-ExtraBold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}

/* ─── Shell (app chrome + admin) ─── */
.hnw-shell{
  --shell-bg:#070b14;
  --shell-elev:#0b1220;
  --shell-card:#121a2a;
  --shell-border:#1e2c40;
  --shell-text:#e8eef6;
  --shell-muted:#8b9cb3;
  --shell-accent:#4d8dff;
  --shell-green:#2ee59d;
  --shell-red:#ff3b4e;
  min-height:100vh;
  background:var(--shell-bg);
  color:var(--shell-text);
  font-family:"Vazirmatn",Tahoma,system-ui,sans-serif;
}
.hnw-shell[data-theme="light"]{
  --shell-bg:#f3f5f8;
  --shell-elev:#f7f9fc;
  --shell-card:#ffffff;
  --shell-border:#e6ebf2;
  --shell-text:#121826;
  --shell-muted:#5b6b80;
  --shell-accent:#1d4ed8;
  --shell-green:#0b7a4b;
  --shell-red:#c81e2c;
}

.hnw-chrome{
  position:sticky;top:0;z-index:40;
  border-bottom:1px solid var(--shell-border);
  background:color-mix(in srgb,var(--shell-bg) 88%,transparent);
  backdrop-filter:blur(12px);
}
.hnw-chrome__in{
  max-width:1180px;margin-inline:auto;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:.75rem;padding:.7rem 1rem;
}
.hnw-chrome a{color:inherit;text-decoration:none}
.hnw-chrome__brand{display:flex;align-items:center;gap:.55rem;font-weight:700;font-size:.92rem}
.hnw-chrome__brand small{color:var(--shell-muted);font-weight:500;font-size:.72rem}
.hnw-chrome__nav{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}
.hnw-chrome__nav a,.hnw-chrome__nav button{
  display:inline-flex;align-items:center;gap:.4rem;height:38px;padding:0 .85rem;
  border-radius:999px;border:1px solid transparent;background:transparent;
  color:var(--shell-muted);font:inherit;font-size:.82rem;cursor:pointer;
}
.hnw-chrome__nav a.is-on,.hnw-chrome__nav button.is-on{
  background:var(--shell-card);color:var(--shell-text);border-color:var(--shell-border);
}
.hnw-chrome__cta{
  background:var(--shell-green)!important;color:#062016!important;font-weight:700!important;
}
.hnw-shell[data-theme="light"] .hnw-chrome__cta{color:#062016!important}

/* ─── Board ─── */
.hnw-board{
  --hnw-bg:#0a101c;
  --hnw-surface:#121a2a;
  --hnw-surface-2:#0e1624;
  --hnw-border:#1e2c40;
  --hnw-text:#e8eef6;
  --hnw-muted:#8b9cb3;
  --hnw-faint:#6b7c93;
  --hnw-green:#2ee59d;
  --hnw-amber:#f0b429;
  --hnw-red:#ff3b4e;
  --hnw-blue:#4d8dff;
  --hnw-accent:var(--hnw-blue);
  --hnw-radius:14px;
  --hnw-font:"Vazirmatn",Tahoma,system-ui,sans-serif;
  --hnw-max:1180px;
  --hnw-shadow:0 0 0 1px color-mix(in srgb,var(--hnw-border) 80%,transparent);
  direction:rtl;
  text-align:right;
  color:var(--hnw-text);
  background:var(--hnw-bg);
  font-family:var(--hnw-font);
  line-height:1.6;
  box-sizing:border-box;
  max-width:var(--hnw-max);
  margin-inline:auto;
  padding:1rem 1rem 2.4rem;
  -webkit-font-smoothing:antialiased;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  gap:.85rem;
}
.hnw-board[data-theme="light"]{
  --hnw-bg:#eef2f7;
  --hnw-surface:#ffffff;
  --hnw-surface-2:#f5f7fb;
  --hnw-border:#d5dde8;
  --hnw-text:#121826;
  --hnw-muted:#5b6b80;
  --hnw-faint:#7a8798;
  --hnw-green:#0b7a4b;
  --hnw-red:#c81e2c;
  --hnw-amber:#9a6700;
  --hnw-blue:#1d4ed8;
  --hnw-shadow:0 1px 2px rgba(16,24,40,.04),0 0 0 1px var(--hnw-border);
}

/* WordPress theme reset — keep the board intact on any theme */
.hnw-board,.hnw-board *,.hnw-board *::before,.hnw-board *::after{box-sizing:border-box}
.hnw-board h1,.hnw-board h2,.hnw-board h3,.hnw-board h4,.hnw-board h5,.hnw-board p,
.hnw-board ul,.hnw-board ol,.hnw-board li,.hnw-board figure,.hnw-board figcaption,
.hnw-board header,.hnw-board footer,.hnw-board section,.hnw-board article,.hnw-board aside,
.hnw-board button,.hnw-board a,.hnw-board span,.hnw-board small,.hnw-board b,.hnw-board strong{
  font-family:var(--hnw-font)!important;
  text-shadow:none;
}
.hnw-board h1,.hnw-board h2,.hnw-board h3,.hnw-board h4,.hnw-board p,.hnw-board ul,.hnw-board ol,.hnw-board figure{
  margin:0;padding:0;border:0;background:transparent;box-shadow:none;color:inherit;
}
.hnw-board ul,.hnw-board ol{list-style:none}
.hnw-board a{color:var(--hnw-accent);text-decoration:none}
.hnw-board a:hover{text-decoration:underline}
.hnw-board button{font:inherit;color:inherit;cursor:pointer}
.hnw-board img{max-width:100%;display:block}

.hnw-kicker,.hnw-label,.hnw-card>h3,.hnw-sec-h{
  margin:0;
  font-size:.68rem;
  font-weight:600;
  letter-spacing:.16em;
  color:var(--hnw-muted);
  text-transform:uppercase;
}
.hnw-h1{
  margin:.15rem 0 .3rem;
  font-size:clamp(1.25rem,2.4vw,1.9rem);
  font-weight:800;
  line-height:1.25;
  letter-spacing:-.02em;
  color:var(--hnw-text);
}
.hnw-lead{margin:0;color:var(--hnw-muted);font-size:.9rem;max-width:70ch;line-height:1.75}
.hnw-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.hnw-live{
  display:inline-flex;align-items:center;gap:.4rem;
  background:color-mix(in srgb,var(--hnw-green) 14%,transparent);
  color:var(--hnw-green);
  border:1px solid color-mix(in srgb,var(--hnw-green) 40%,transparent);
  border-radius:999px;padding:.12rem .7rem;font-size:.68rem;font-weight:700;letter-spacing:.14em;
}
.hnw-live i{
  width:.5rem;height:.5rem;border-radius:50%;background:var(--hnw-green);
  animation:hnw-pulse 1.6s ease-out infinite;
}
@keyframes hnw-pulse{
  0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--hnw-green) 55%,transparent)}
  70%{box-shadow:0 0 0 8px transparent}
  100%{box-shadow:0 0 0 0 transparent}
}
.hnw-updated{color:var(--hnw-muted);font-size:.78rem}

.hnw-card{
  background:var(--hnw-surface);
  border:1px solid var(--hnw-border);
  border-radius:var(--hnw-radius);
  padding:1.05rem 1.15rem 1.15rem;
  position:relative;
  box-shadow:var(--hnw-shadow);
}
.hnw-card>h3,.hnw-sec-h{margin:0 0 .75rem}
.hnw-value{
  margin:0;
  font-size:clamp(1.55rem,2.8vw,2.15rem);
  font-weight:800;
  font-variant-numeric:tabular-nums;
  line-height:1.08;
  letter-spacing:-.03em;
  color:var(--hnw-text);
}
.hnw-sub,.hnw-hint{margin:.35rem 0 0;color:var(--hnw-muted);font-size:.82rem}
.hnw-desc{margin:.7rem 0 0;color:var(--hnw-muted);font-size:.88rem;line-height:1.8}
.hnw-meta{font-size:.75rem;color:var(--hnw-muted)}
.hnw-mod{margin-top:0}

/* Top bar inside the board */
.hnw-topbar{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem;
  margin-bottom:0;
  padding:.15rem 0 .55rem;
  border-bottom:1px solid var(--hnw-border);
}
.hnw-topbar__brand{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem .7rem}
.hnw-topbar__brand strong{font-size:.92rem;font-weight:800;letter-spacing:.04em}
.hnw-topbar__brand span{color:var(--hnw-muted);font-size:.78rem}
.hnw-topbar__links{display:flex;flex-wrap:wrap;gap:.15rem .85rem;color:var(--hnw-muted);font-size:.78rem}
.hnw-topbar__links a{color:var(--hnw-muted)}
.hnw-topbar__links a:hover{color:var(--hnw-text);text-decoration:none}

/* CLOSED status banner — matches the red-outlined original */
.hnw-banner{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;
  padding:1.05rem 1.25rem;
  border-radius:var(--hnw-radius);
  background:var(--hnw-surface);
  border:1px solid var(--hnw-border);
  margin-bottom:0;
}
.hnw-banner.is-CLOSED{
  border-color:color-mix(in srgb,var(--hnw-red) 70%,var(--hnw-border));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--hnw-red) 28%,transparent);
}
.hnw-banner.is-RESTRICTED{
  border-color:color-mix(in srgb,var(--hnw-amber) 70%,var(--hnw-border));
}
.hnw-banner.is-OPEN{
  border-color:color-mix(in srgb,var(--hnw-green) 70%,var(--hnw-border));
}
.hnw-banner .hnw-kicker{margin-bottom:.35rem}
.hnw-since{margin:0;color:var(--hnw-muted);font-size:.86rem}
.hnw-banner-status{text-align:center}
.hnw-closed-pill{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:7.5rem;padding:.28rem 1.35rem;
  border:1.5px solid var(--hnw-red);
  border-radius:999px;
  color:var(--hnw-red);
  font-size:clamp(1.7rem,4.2vw,2.7rem);
  font-weight:800;letter-spacing:-.03em;line-height:1.05;
  background:color-mix(in srgb,var(--hnw-red) 8%,transparent);
}
.hnw-banner.is-RESTRICTED .hnw-closed-pill{border-color:var(--hnw-amber);color:var(--hnw-amber);background:color-mix(in srgb,var(--hnw-amber) 10%,transparent)}
.hnw-banner.is-OPEN .hnw-closed-pill{border-color:var(--hnw-green);color:var(--hnw-green);background:color-mix(in srgb,var(--hnw-green) 10%,transparent)}
.hnw-sources{margin:.4rem 0 0;color:var(--hnw-muted);font-size:.75rem}

/* Duration — huge naked numbers like the original */
.hnw-duration{margin-bottom:0;text-align:center}
.hnw-duration>h3{text-align:right}
.hnw-clock{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  margin:.35rem 0 .2rem;
}
.hnw-clock span{
  display:block;text-align:center;padding:.35rem .2rem .5rem;
  position:relative;background:transparent;border:0;
}
.hnw-clock span+span::before{
  content:"";position:absolute;inset-inline-start:0;top:18%;bottom:22%;width:1px;
  background:var(--hnw-border);
}
.hnw-clock b{
  display:block;
  font-size:clamp(2.6rem,7vw,4.5rem);
  font-weight:800;font-variant-numeric:tabular-nums;
  letter-spacing:-.04em;line-height:1;color:var(--hnw-text);
}
.hnw-clock small{
  display:block;margin-top:.35rem;color:var(--hnw-muted);
  font-size:.72rem;letter-spacing:.16em;font-weight:600;
}

/* Traffic overview */
.hnw-traffic{padding:0;overflow:hidden;margin-bottom:0}
.hnw-traffic>header{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;
  padding:.85rem 1.1rem 0;
}
.hnw-traffic>header h3{margin:0}
.hnw-tabs{display:flex;gap:.3rem;background:var(--hnw-surface-2);padding:.22rem;border-radius:999px;border:1px solid var(--hnw-border)}
.hnw-tabs button{
  border:0;background:transparent;color:var(--hnw-muted);
  padding:.28rem .75rem;border-radius:999px;font-size:.72rem;font-weight:600;
}
.hnw-tabs button.is-on{background:var(--hnw-surface);color:var(--hnw-text);box-shadow:var(--hnw-shadow)}
.hnw-traffic-grid{
  display:grid;grid-template-columns:180px minmax(0,1fr) 170px;
  gap:.4rem;align-items:stretch;padding:.7rem .7rem 1rem;
}
.hnw-traffic-stat{padding:.7rem .8rem}
.hnw-traffic-stat .hnw-value{font-size:1.55rem}
.hnw-traffic-stat .hnw-kicker{margin-bottom:.45rem}
.hnw-vbar{
  width:10px;height:88px;border-radius:99px;background:var(--hnw-border);
  overflow:hidden;margin-top:.7rem;display:flex;align-items:flex-end;
}
.hnw-vbar i{display:block;width:100%;background:var(--hnw-red);border-radius:99px}
.hnw-traffic-map{min-height:210px}
.hnw-traffic-map svg{width:100%;height:100%;display:block}
.hnw-map-sea{fill:#0c1a2e}
.hnw-board[data-theme="light"] .hnw-map-sea{fill:#d5e4f2}
.hnw-map-land{fill:#1a2740;stroke:#2a3c58;stroke-width:1}
.hnw-board[data-theme="light"] .hnw-map-land{fill:#cbb892;stroke:#a8946a}
.hnw-ship{fill:var(--hnw-green)}
.hnw-ship.wait{fill:var(--hnw-amber)}
.hnw-lane-a{stroke:var(--hnw-red);stroke-width:2.2;fill:none}
.hnw-lane-b{stroke:#6b7c93;stroke-width:1.6;fill:none;opacity:.85}
.hnw-board[data-theme="light"] .hnw-lane-b{stroke:#7a8798}

/* KPI 3×2 */
.hnw-kpis{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;
  margin-bottom:0;
}
.hnw-kpis .hnw-card{min-height:0}
.hnw-clamp{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;
}
.hnw-kpis .hnw-value{font-size:1.7rem}
.hnw-bar{height:6px;background:var(--hnw-border);border-radius:99px;overflow:hidden;margin-top:.65rem}
.hnw-bar i{display:block;height:100%;background:var(--hnw-red);border-radius:99px}
.hnw-bars7{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;align-items:end;height:72px;margin-top:.7rem}
.hnw-bars7 i{display:block;background:var(--hnw-red);border-radius:4px 4px 0 0;min-height:8%}
.hnw-bars7-l{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;margin-top:.25rem;color:var(--hnw-faint);font-size:.62rem;text-align:center}

.hnw-pill{
  display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;
  padding:.12rem .6rem;font-size:.7rem;font-weight:700;border:1px solid var(--hnw-border);
  color:var(--hnw-text);background:transparent;
}
.hnw-pill.ext{color:var(--hnw-red);border-color:color-mix(in srgb,var(--hnw-red) 45%,transparent);background:color-mix(in srgb,var(--hnw-red) 12%,transparent)}
.hnw-pill.ok{color:var(--hnw-green);border-color:color-mix(in srgb,var(--hnw-green) 40%,transparent);background:color-mix(in srgb,var(--hnw-green) 10%,transparent)}
.hnw-pill.warn{color:var(--hnw-amber);border-color:color-mix(in srgb,var(--hnw-amber) 45%,transparent);background:color-mix(in srgb,var(--hnw-amber) 12%,transparent)}
.hnw-pill.is-on{background:color-mix(in srgb,var(--hnw-text) 8%,transparent)}
.hnw-parties{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}
.hnw-kpi-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.55rem}
.hnw-kpi-head h3{margin:0}

.hnw-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:.85rem;margin-bottom:0}
.hnw-split.even{grid-template-columns:1fr 1fr}
.hnw-split.solo{grid-template-columns:1fr}

/* Brent */
.hnw-brent-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;align-items:flex-start}
.hnw-range{display:flex;flex-wrap:wrap;gap:.2rem}
.hnw-range button{
  border:1px solid var(--hnw-border);background:transparent;color:var(--hnw-muted);
  border-radius:6px;padding:.15rem .45rem;font-size:.68rem;font-weight:600;
}
.hnw-range button.is-on{color:var(--hnw-text);background:var(--hnw-surface-2)}
.hnw-spark,.hnw-chart{width:100%;display:block}
.hnw-spark{height:78px}
.hnw-chart{height:228px}
.hnw-spark path.area,.hnw-chart path.area{fill:color-mix(in srgb,var(--hnw-amber) 16%,transparent);stroke:none}
.hnw-thru path.area{fill:color-mix(in srgb,var(--hnw-green) 22%,transparent)}
.hnw-delta.up{color:var(--hnw-red)}
.hnw-delta.down{color:var(--hnw-green)}

/* Featured */
.hnw-featured{padding:0;overflow:hidden}
.hnw-featured img{width:100%;height:200px;object-fit:cover;background:#0c1a2e}
.hnw-featured-body{padding:1rem 1.15rem 1.15rem}
.hnw-featured-body h3{
  margin:.4rem 0 .45rem;font-size:1.08rem;font-weight:800;letter-spacing:0;color:var(--hnw-text);text-transform:none;
}
.hnw-more{display:inline-block;margin-top:.7rem;font-size:.8rem;font-weight:700}

/* Lists */
.hnw-stats{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem}
.hnw-list{display:flex;flex-direction:column;gap:.7rem}
.hnw-item{
  border:1px solid var(--hnw-border);border-radius:calc(var(--hnw-radius) - 6px);
  padding:.85rem 1rem;background:var(--hnw-surface-2);
}
.hnw-item header{display:flex;flex-wrap:wrap;gap:.4rem .65rem;align-items:center;margin-bottom:.3rem}
.hnw-item h4{margin:.15rem 0;font-size:.96rem;font-weight:700;line-height:1.45;color:var(--hnw-text)}
.hnw-item p{margin:.25rem 0 0;color:var(--hnw-muted);font-size:.84rem;line-height:1.7}

.hnw-heat{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.7rem}
.hnw-heat article{padding:1rem;border-radius:calc(var(--hnw-radius) - 6px);border:1px solid var(--hnw-border);background:var(--hnw-surface-2)}
.hnw-heat .pct{font-size:1.55rem;font-weight:800;margin:.25rem 0;font-variant-numeric:tabular-nums}
.hnw-sev-CRITICAL{border-inline-start:3px solid var(--hnw-red)}
.hnw-sev-HIGH{border-inline-start:3px solid var(--hnw-amber)}
.hnw-sev-MODERATE{border-inline-start:3px solid var(--hnw-blue)}

.hnw-impact-row{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding:.45rem 0;border-bottom:1px solid var(--hnw-border)}
.hnw-impact-row:last-child{border-bottom:0}
.hnw-impact-row b{font-variant-numeric:tabular-nums}
.hnw-sev-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;margin-inline-end:.4rem;vertical-align:middle}
.hnw-sev-dot.CRITICAL{background:var(--hnw-red)}
.hnw-sev-dot.HIGH{background:var(--hnw-amber)}
.hnw-sev-dot.MODERATE{background:var(--hnw-blue)}

.hnw-route{padding:.7rem 0;border-bottom:1px solid var(--hnw-border)}
.hnw-route:last-child{border-bottom:0}
.hnw-route h4{margin:0 0 .25rem;font-size:.92rem;font-weight:700}
.hnw-cost{color:var(--hnw-amber);font-weight:700;font-size:.82rem}

.hnw-news a{color:var(--hnw-text)}
.hnw-news a:hover{color:var(--hnw-accent)}
.hnw-time{color:var(--hnw-faint);font-size:.72rem;white-space:nowrap}

.hnw-articles{display:flex;flex-direction:column;gap:0}
.hnw-articles a{
  display:block;padding:.85rem 0;border-bottom:1px solid var(--hnw-border);color:inherit;text-decoration:none;
}
.hnw-articles a:hover{text-decoration:none;color:var(--hnw-accent)}
.hnw-articles h4{margin:.2rem 0 0;font-size:.98rem;font-weight:700;color:var(--hnw-text)}

.hnw-foot{
  display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;
  margin-top:0;padding-top:.8rem;border-top:1px solid var(--hnw-border);
  color:var(--hnw-muted);font-size:.78rem;
}
.hnw-hidden{display:none!important}
.hnw-linkish{background:none;border:0;color:var(--hnw-accent);padding:0;font-size:.8rem;font-weight:700}

/* ─── Ops admin ─── */
.hnw-ops{max-width:1180px;margin:0 auto;padding:1rem 1rem 2rem;color:var(--shell-text)}
.hnw-ops__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1rem}
.hnw-ops__head h1{margin:.15rem 0;font-size:1.45rem;font-weight:800;letter-spacing:-.02em}
.hnw-ops__head p{margin:0;color:var(--shell-muted);font-size:.88rem;max-width:58ch;line-height:1.7}
.hnw-ops__kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}
.hnw-ops__kpi{
  background:var(--shell-card);border:1px solid var(--shell-border);border-radius:14px;padding:.9rem 1rem;
}
.hnw-ops__kpi span{display:block;color:var(--shell-muted);font-size:.68rem;letter-spacing:.14em;font-weight:600}
.hnw-ops__kpi b{display:block;margin-top:.3rem;font-size:1.25rem;font-weight:800;letter-spacing:-.02em}
.hnw-ops__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem}
.hnw-ops .hnw-card h2{margin:0 0 .7rem;font-size:.95rem;font-weight:700}
.hnw-themes{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.hnw-theme{
  border:1px solid var(--shell-border);border-radius:14px;overflow:hidden;cursor:pointer;
  background:transparent;padding:0;text-align:right;color:inherit;font:inherit;
}
.hnw-theme.is-on{border-color:var(--shell-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--shell-accent) 35%,transparent)}
.hnw-theme__swatch{height:72px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;padding:10px}
.hnw-theme__swatch i{display:block;border-radius:6px}
.hnw-theme--dark .hnw-theme__swatch{background:#0a101c}
.hnw-theme--dark .hnw-theme__swatch i{background:#121a2a;border:1px solid #1e2c40}
.hnw-theme--light .hnw-theme__swatch{background:#eef2f7}
.hnw-theme--light .hnw-theme__swatch i{background:#fff;border:1px solid #d5dde8}
.hnw-theme figcaption{padding:.7rem .85rem .85rem}
.hnw-theme figcaption strong{display:block;font-size:.88rem}
.hnw-theme figcaption span{display:block;color:var(--shell-muted);font-size:.75rem;margin-top:.15rem}
.hnw-field{display:block;margin:.7rem 0;font-size:.78rem;color:var(--shell-muted)}
.hnw-field input[type=text],.hnw-field input[type=number],.hnw-field textarea,.hnw-field select{
  display:block;width:100%;margin-top:.3rem;border-radius:10px;
  border:1px solid var(--shell-border);background:var(--shell-bg);color:var(--shell-text);
  padding:.55rem .7rem;font:inherit;font-size:.88rem;
}
.hnw-field input[type=color]{display:block;width:100%;height:40px;margin-top:.3rem;border:1px solid var(--shell-border);border-radius:10px;background:var(--shell-bg);cursor:pointer}
.hnw-field input[type=range]{width:100%;margin-top:.45rem}
.hnw-switch{display:flex;align-items:center;gap:.55rem;font-size:.88rem;color:var(--shell-text);margin:.55rem 0}
.hnw-mods{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}
.hnw-mods li{
  display:flex;align-items:center;gap:.5rem;
  background:var(--shell-bg);border:1px solid var(--shell-border);border-radius:10px;padding:.35rem .5rem;
}
.hnw-mods li span{flex:1;font-size:.85rem}
.hnw-mods button{
  width:36px;height:36px;border-radius:8px;border:1px solid var(--shell-border);
  background:transparent;color:var(--shell-muted);display:grid;place-items:center;cursor:pointer;
}
.hnw-btn{
  display:inline-flex;align-items:center;gap:.4rem;height:38px;padding:0 .9rem;border-radius:999px;
  border:1px solid var(--shell-border);background:var(--shell-card);color:var(--shell-text);
  font:inherit;font-size:.82rem;cursor:pointer;
}
.hnw-btn.primary{background:var(--shell-green);color:#062016;border-color:transparent;font-weight:700}

@media (max-width:960px){
  .hnw-kpis,.hnw-heat,.hnw-ops__kpis,.hnw-ops__grid,.hnw-split,.hnw-themes{grid-template-columns:1fr 1fr}
  .hnw-traffic-grid{grid-template-columns:1fr}
  .hnw-vbar{height:8px;width:100%;align-items:stretch}
  .hnw-vbar i{height:100%;width:var(--w,10%)}
}
@media (max-width:640px){
  .hnw-board{padding:.75rem .7rem 1.6rem}
  .hnw-kpis,.hnw-heat,.hnw-ops__kpis,.hnw-ops__grid,.hnw-split,.hnw-themes,.hnw-clock{grid-template-columns:1fr}
  .hnw-clock span+span::before{display:none}
  .hnw-h1{font-size:1.3rem}
  .hnw-value{font-size:1.5rem}
  .hnw-card{padding:.9rem}
  .hnw-chrome__in{padding:.65rem .75rem}
  .hnw-topbar__links{display:none}
}
.hnw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.hnw-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.hnw-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.hnw-status .hnw-word{display:block;font-size:clamp(2rem,5vw,3.2rem);font-weight:800;letter-spacing:-.03em;line-height:1}
.hnw-status.is-CLOSED .hnw-word{color:var(--hnw-red)}
.hnw-status.is-RESTRICTED .hnw-word{color:var(--hnw-amber)}
.hnw-status.is-OPEN .hnw-word{color:var(--hnw-green)}
@media (max-width:960px){
  .hnw-grid-4,.hnw-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .hnw-grid,.hnw-grid-3,.hnw-grid-4{grid-template-columns:1fr}
}

/* ─── v2.2 visual overhaul ─── */
.hnw-board[data-theme="light"]{
  --hnw-radius:20px;
  --hnw-shadow:0 8px 28px rgba(16,24,40,.06),0 0 0 1px #e6ebf2;
  --hnw-bg:#f4f6fa;
}
.hnw-board[data-theme="light"] .hnw-card{
  box-shadow:var(--hnw-shadow);
  border-color:#e6ebf2;
}

.hnw-dot{
  display:inline-block;width:.55rem;height:.55rem;border-radius:50%;
  margin-inline-end:.45rem;vertical-align:middle;flex-shrink:0;
}
.hnw-dot.red{background:var(--hnw-red)}
.hnw-dot.green{background:var(--hnw-green)}
.hnw-dot.amber{background:var(--hnw-amber)}
.hnw-dot.blue{background:var(--hnw-blue)}
.hnw-pulse{animation:hnw-pulse 1.6s ease-out infinite}

.hnw-card>h3,.hnw-kpi-head h3,.hnw-sec-h{
  display:flex;align-items:center;text-transform:none;letter-spacing:0;
  font-size:.82rem;font-weight:700;color:var(--hnw-muted);
}

/* Status banner — centered like original, with blinking dots + glow */
.hnw-banner{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;gap:.45rem;
  padding:1.35rem 1.2rem 1.2rem;
  position:relative;overflow:hidden;
}
.hnw-banner.is-CLOSED{
  border-color:color-mix(in srgb,var(--hnw-red) 55%,var(--hnw-border));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--hnw-red) 25%,transparent),0 0 36px color-mix(in srgb,var(--hnw-red) 18%,transparent);
}
.hnw-banner.is-RESTRICTED{
  border-color:color-mix(in srgb,var(--hnw-amber) 60%,var(--hnw-border));
  box-shadow:0 0 0 1px color-mix(in srgb,var(--hnw-amber) 30%,transparent),0 0 40px color-mix(in srgb,var(--hnw-amber) 22%,transparent);
}
.hnw-banner.is-OPEN{
  border-color:color-mix(in srgb,var(--hnw-green) 55%,var(--hnw-border));
  box-shadow:0 0 28px color-mix(in srgb,var(--hnw-green) 16%,transparent);
}
.hnw-banner-status{
  display:flex;align-items:center;justify-content:center;gap:.85rem;
}
.hnw-blink{
  width:.55rem;height:.55rem;border-radius:50%;
  background:currentColor;color:var(--hnw-red);
  animation:hnw-blink 1.1s step-end infinite;
}
.hnw-banner.is-RESTRICTED .hnw-blink{color:var(--hnw-amber)}
.hnw-banner.is-OPEN .hnw-blink{color:var(--hnw-green)}
@keyframes hnw-blink{
  0%,100%{opacity:1}
  50%{opacity:.15}
}
.hnw-closed-pill{
  min-width:8.5rem;padding:.4rem 1.6rem;
  font-size:clamp(1.45rem,3.6vw,2.15rem);
  letter-spacing:.08em;
}

/* Clock — LTR so days stay on the LEFT even on RTL pages */
.hnw-duration{text-align:center}
.hnw-duration>h3{justify-content:center;text-align:center}
.hnw-clock{
  direction:ltr;
  display:flex !important;
  align-items:flex-end;
  justify-content:center;
  gap:.15rem 0;
  margin:.55rem 0 .15rem;
  grid-template-columns:none;
}
.hnw-clock span{
  display:flex;flex-direction:column;align-items:center;
  min-width:4.6rem;padding:.2rem .55rem .15rem;
  position:relative;background:transparent;border:0;
}
.hnw-clock span+span::before{display:none}
.hnw-clock b{
  display:block;
  font-size:clamp(2.2rem,6.2vw,3.6rem);
  font-weight:800;font-variant-numeric:tabular-nums;
  letter-spacing:-.04em;line-height:1;
}
.hnw-clock small{
  margin-top:.4rem;letter-spacing:.12em;font-size:.68rem;
}
.hnw-colon{
  display:block;
  font-size:clamp(1.8rem,5vw,2.8rem);
  font-weight:400;line-height:1;
  padding-bottom:1.55rem;
  color:var(--hnw-muted);
  animation:none;
}
@media (max-width:640px){
  .hnw-clock{flex-wrap:wrap}
  .hnw-clock span{min-width:3.4rem}
}

/* Traffic map — animated lanes */
.hnw-traffic-grid{
  display:grid;grid-template-columns:160px minmax(0,1fr) 160px;
  gap:.4rem;align-items:stretch;padding:.7rem .7rem 1rem;
}
.hnw-traffic-map{min-height:240px;border-radius:12px;overflow:hidden}
.hnw-map-svg{width:100%;height:100%;display:block}
.hnw-sea-a{stop-color:#071525}
.hnw-sea-b{stop-color:#0c2238}
.hnw-board[data-theme="light"] .hnw-sea-a{stop-color:#c9d9ea}
.hnw-board[data-theme="light"] .hnw-sea-b{stop-color:#dfe8f3}
.hnw-map-land{fill:#152238;stroke:#24364f;stroke-width:1}
.hnw-board[data-theme="light"] .hnw-map-land{fill:#d8dde6;stroke:#c3cad6}
.hnw-island{fill:#1b2c44}
.hnw-board[data-theme="light"] .hnw-island{fill:#c5ccd6}
.hnw-lane{
  fill:none;stroke-width:2.4;stroke-dasharray:11 10;
  animation:hnw-flow 3.2s linear infinite;
}
.hnw-lane-out{stroke:#f0c14b}
.hnw-lane-in{stroke:#e8b43a;opacity:.85;animation-direction:reverse}
.hnw-board[data-theme="light"] .hnw-lane-out{stroke:#c81e2c}
.hnw-board[data-theme="light"] .hnw-lane-in{stroke:#9a6700}
@keyframes hnw-flow{to{stroke-dashoffset:-42}}
.hnw-ship.go{fill:#f0c14b}
.hnw-ship.wait{fill:#ffb020;animation:hnw-pulse 1.8s ease-out infinite}
.hnw-board[data-theme="light"] .hnw-ship.go{fill:#c81e2c}
.hnw-map-lab{
  fill:#9eb0c6;font-size:12px;font-family:Vazirmatn,Tahoma,sans-serif;
  text-anchor:middle;
}
.hnw-map-lab.faint{fill:#7c8ea4;font-size:11px}
.hnw-map-lab.tiny{fill:#8b9cb3;font-size:10px}
.hnw-map-lab.flow{fill:#f0c14b;font-size:11px;font-weight:700}
.hnw-map-lab.flow.in{fill:#e8b43a}
.hnw-board[data-theme="light"] .hnw-map-lab{fill:#3d4c63}
.hnw-board[data-theme="light"] .hnw-map-lab.flow{fill:#c81e2c}
.hnw-narrow-pill{fill:color-mix(in srgb,#0b1220 70%,transparent);stroke:#2a3c58;stroke-width:1}
.hnw-board[data-theme="light"] .hnw-narrow-pill{fill:#fff;stroke:#d5dde8}

/* KPI 4-col — insurance is a card, not a full-width empty strip */
.hnw-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.85rem;
}
.hnw-kpis .hnw-card{min-height:210px}
.hnw-span-2{grid-column:span 2}
.hnw-wait-lines{margin-top:.7rem;display:flex;flex-direction:column;gap:.35rem}
.hnw-wait-lines p{
  display:flex;align-items:center;justify-content:space-between;
  margin:0;font-size:.82rem;color:var(--hnw-muted);
  border-bottom:1px solid var(--hnw-border);padding-bottom:.28rem;
}
.hnw-wait-lines b{color:var(--hnw-text);font-variant-numeric:tabular-nums}

/* Full-width interactive charts */
.hnw-chart-card{width:100%}
.hnw-chart-wrap{position:relative;width:100%;min-height:220px}
.hnw-chart-pad{padding:.4rem 1rem 1rem}
.hnw-chart-wrap canvas{width:100% !important}

/* News */
.hnw-news-grid{display:flex;flex-direction:column;gap:.7rem}
.hnw-news-item a{
  display:grid;grid-template-columns:92px minmax(0,1fr);gap:.85rem;
  color:inherit;text-decoration:none;
}
.hnw-news-item a:hover{text-decoration:none}
.hnw-news-item h4{margin:.2rem 0;font-size:.95rem;font-weight:800;line-height:1.5;color:var(--hnw-text)}
.hnw-news-item p{margin:0;color:var(--hnw-muted);font-size:.8rem;line-height:1.65}
.hnw-news-thumb{
  width:92px;height:72px;border-radius:10px;
  background:linear-gradient(135deg,#1a2740,#24364f);
  background-size:cover;background-position:center;
}
.hnw-board[data-theme="light"] .hnw-news-thumb{background:linear-gradient(135deg,#dbe3ee,#c9d3e0)}

@media (max-width:1100px){
  .hnw-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hnw-span-2{grid-column:span 2}
}
@media (max-width:960px){
  .hnw-traffic-grid{grid-template-columns:1fr}
  .hnw-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .hnw-kpis,.hnw-span-2{grid-template-columns:1fr;grid-column:auto}
  .hnw-news-item a{grid-template-columns:1fr}
  .hnw-news-thumb{width:100%;height:140px}
}
@media (prefers-reduced-motion:reduce){
  .hnw-lane,.hnw-blink,.hnw-colon,.hnw-live i,.hnw-pulse,.hnw-ship.wait{animation:none}
}


/* === v2.4 Persian mockup layout === */
.hnw-board.hnw-fa{
  --hnw-bg:#f3f5f8;
  --hnw-surface:#ffffff;
  --hnw-border:#eceff3;
  --hnw-text:#1c2430;
  --hnw-muted:#8b95a3;
  --hnw-red:#e11d48;
  --hnw-green:#16a34a;
  --hnw-blue:#2563eb;
  --hnw-amber:#d4a24a;
  --hnw-pink:#ec4899;
  --hnw-radius:22px;
  --hnw-shadow:0 1px 2px rgba(16,24,40,.04);
  background:transparent;
  color:var(--hnw-text);
  gap:16px;
  padding:18px 16px 32px;
  max-width:1120px;
}
.hnw-board.hnw-fa[data-theme="dark"]{
  --hnw-bg:#0b1220;
  --hnw-surface:#141c2b;
  --hnw-border:#243044;
  --hnw-text:#e8eef6;
  --hnw-muted:#8b9cb3;
  --hnw-shadow:none;
  background:var(--hnw-bg);
}
.hnw-board.hnw-fa .hnw-card{
  background:var(--hnw-surface);
  border:1px solid var(--hnw-border);
  border-radius:var(--hnw-radius);
  box-shadow:var(--hnw-shadow);
  padding:18px 20px 20px;
}
.hnw-board.hnw-fa .hnw-card>h3,
.hnw-board.hnw-fa .hnw-duration-meta h3{
  display:flex;align-items:center;gap:8px;
  margin:0 0 12px;padding:0;
  font-size:.92rem;font-weight:700;letter-spacing:0;
  text-transform:none;color:var(--hnw-text);
}
.hnw-board.hnw-fa .hnw-pulse{animation:none}
.hnw-board.hnw-fa .hnw-dot{
  width:8px;height:8px;border-radius:50%;display:inline-block;flex:0 0 8px;
  box-shadow:0 0 0 0 currentColor;animation:none;
}
.hnw-board.hnw-fa .hnw-dot.pink{background:var(--hnw-pink)}
.hnw-board.hnw-fa .hnw-dot.hnw-pulse{
  animation:hnw-title-blink 1.35s ease-in-out infinite;
}
@keyframes hnw-title-blink{
  0%,100%{opacity:1;box-shadow:0 0 0 0 color-mix(in srgb,currentColor 55%,transparent)}
  50%{opacity:.28;box-shadow:0 0 0 7px transparent}
}

/* header */
.hnw-fa .hnw-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--hnw-surface);border:1px solid var(--hnw-border);
  border-radius:var(--hnw-radius);padding:16px 22px;box-shadow:var(--hnw-shadow);
}
.hnw-fa .hnw-head-live{display:flex;flex-direction:column;gap:2px}
.hnw-fa .hnw-head-title{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:1rem;color:var(--hnw-text);
}
.hnw-fa .hnw-head time{color:var(--hnw-muted);font-size:.78rem;padding-inline-start:16px}
.hnw-fa .hnw-status-pill{
  display:inline-flex;align-items:center;justify-content:center;
  background:#fb7185;color:#fff;border-radius:999px;
  padding:8px 16px;font-size:.82rem;font-weight:800;white-space:nowrap;
}
.hnw-fa .hnw-status-pill.is-OPEN{background:#22c55e;color:#fff}
.hnw-fa .hnw-status-pill.is-RESTRICTED{background:#f59e0b;color:#fff}
.hnw-fa[data-theme="dark"] .hnw-status-pill{background:color-mix(in srgb,var(--hnw-red) 70%,#1a0b10);color:#fff}

/* duration */
.hnw-fa .hnw-duration-row{
  display:grid!important;grid-template-columns:.5fr 1.5fr 1.5fr!important;gap:16px!important;align-items:stretch!important;
}
.hnw-board .hnw-duration-row>.hnw-card{min-width:0!important;width:100%!important;box-sizing:border-box!important}
.hnw-fa .hnw-duration-meta{display:flex;flex-direction:column;justify-content:center;min-height:112px}
.hnw-fa .hnw-duration-meta .hnw-meta{margin:0;color:var(--hnw-muted);font-size:.82rem;padding-inline-start:16px}
.hnw-fa .hnw-duration-clock{display:flex;align-items:center;justify-content:center;min-height:112px}
.hnw-fa .hnw-clock{
  direction:ltr!important;display:flex!important;align-items:flex-end;justify-content:center;
  gap:14px;grid-template-columns:unset;margin:0;
}
.hnw-fa .hnw-clock span{
  display:flex;flex-direction:column;align-items:center;min-width:4.2rem;
  background:transparent;border:0;padding:0;
}
.hnw-fa .hnw-clock span+span::before{display:none}
.hnw-fa .hnw-clock b{
  font-size:clamp(2rem,5vw,2.85rem);font-weight:500;letter-spacing:-.03em;
  color:var(--hnw-text);line-height:1;font-variant-numeric:tabular-nums;
}
.hnw-fa .hnw-clock small{
  margin-top:8px;font-size:.78rem;letter-spacing:0;font-weight:500;color:var(--hnw-muted)
}
.hnw-fa .hnw-colon,
.hnw-board.hnw-fa .hnw-colon{
  animation:none!important;font-style:normal;font-size:2rem;font-weight:400;
  color:#c5ccd6;padding-bottom:1.35rem;line-height:1;opacity:.95;
}

/* kpis */
.hnw-fa .hnw-kpi3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.hnw-fa .hnw-kpi-num{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin:4px 0 8px}
.hnw-fa .hnw-value{margin:0;font-size:clamp(1.8rem,3.4vw,2.55rem);font-weight:600;letter-spacing:-.03em;line-height:1}
.hnw-fa .hnw-redhint{color:var(--hnw-red);font-size:.8rem;font-weight:700;white-space:nowrap}
.hnw-fa .hnw-avgblue{color:var(--hnw-blue);font-size:.8rem;font-weight:700;margin:0}
.hnw-fa .hnw-hint{color:var(--hnw-muted);font-size:.75rem;margin:0}
.hnw-fa .hnw-bar{height:6px;background:#edf0f4;border-radius:99px;overflow:hidden;margin:10px 0 6px}
.hnw-fa .hnw-bar.red i{display:block;height:100%;background:var(--hnw-red);border-radius:99px}
.hnw-fa .hnw-wait-table{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:12px;direction:ltr}
.hnw-fa .hnw-wait-table li{display:grid;grid-template-columns:2.8rem 1fr auto;align-items:center;gap:10px}
.hnw-fa .hnw-wait-table b{font-size:.82rem;font-weight:600;color:var(--hnw-muted);text-align:left}
.hnw-fa .hnw-wait-table li>i{
  display:block;height:3px;border-radius:99px;justify-self:stretch;
  transform-origin:left;
  animation:hnw-grow .85s ease both,hnw-wait-live 2.6s ease-in-out infinite;
}
.hnw-fa .hnw-wait-table li>i.amber{background:#eab308}
.hnw-fa .hnw-wait-table li>i.blue{background:#38bdf8}
.hnw-fa .hnw-wait-table li>i.green{background:#4ade80}
@keyframes hnw-grow{from{transform:scaleX(.12)}to{transform:scaleX(1)}}
@keyframes hnw-wait-live{0%,100%{opacity:1;filter:saturate(1)}50%{opacity:.45;filter:saturate(1.4)}}
.hnw-fa .hnw-wait-table span{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--hnw-text);white-space:nowrap}

/* Brent lives beside duration and clock. */
.hnw-board .hnw-duration-row>.hnw-brent-card{width:100%!important;height:150px!important;margin:0!important;padding:14px 18px 12px}
.hnw-fa .hnw-brent-card{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto 1fr;column-gap:10px;overflow:hidden}
.hnw-fa .hnw-brent-card>h3{grid-column:1/-1;margin-bottom:2px}
.hnw-fa .hnw-brent-card .hnw-kpi-num{grid-column:1;grid-row:2;margin:0;justify-content:flex-start;align-items:baseline}
.hnw-fa .hnw-brent-card .hnw-value{font-size:2rem}
.hnw-fa .hnw-brent-change{grid-column:2;grid-row:2;margin:0;direction:ltr;font-size:.72rem;font-weight:700;align-self:center}
.hnw-fa .hnw-brent-change.up{color:var(--hnw-red)}
.hnw-fa .hnw-brent-change.down{color:var(--hnw-green)}
.hnw-board .hnw-duration-row .hnw-brent-card .hnw-chart-wrap{grid-column:1/-1;width:100%!important;min-width:0!important;height:62px!important;min-height:0;margin-top:0}

/* Full-width operational Strait schematic. */
.hnw-fa .hnw-mid{display:grid;grid-template-columns:1fr;gap:16px;align-items:stretch}
.hnw-fa .hnw-map-card{padding:10px;min-height:410px;overflow:hidden;order:0}
.hnw-fa .hnw-map-title{padding:4px 10px 8px;margin:0!important;justify-content:flex-start}
.hnw-fa .hnw-live-badge{margin-inline-start:auto;color:var(--hnw-green);border:1px solid color-mix(in srgb,var(--hnw-green) 40%,transparent);background:color-mix(in srgb,var(--hnw-green) 10%,transparent);border-radius:99px;padding:2px 9px;font-size:.65rem}
.hnw-fa .hnw-map-svg{width:100%;height:auto;aspect-ratio:1360/600;min-height:340px;border-radius:16px;display:block;background:#07101d}
.hnw-fa .hnw-map-sea{fill:#07101d}
.hnw-fa .hnw-sea-a{stop-color:#07101d}.hnw-fa .hnw-sea-b{stop-color:#0b1627}
.hnw-fa .hnw-map-grid{fill:none;stroke:#213047;stroke-width:1;stroke-dasharray:6 12;opacity:.48}
.hnw-fa .hnw-map-land{fill:#111b2c;stroke:#25354d;stroke-width:1.4}
.hnw-fa .hnw-island{fill:#111b2c;stroke:#25354d;stroke-width:1.2}
.hnw-fa .hnw-lane-red{fill:none;stroke:#e11d48;stroke-width:3;stroke-linecap:round;stroke-dasharray:40 12 8 12;animation:hnw-map-flow 3.2s linear infinite}
.hnw-fa .hnw-lane-in{animation-direction:reverse}
.hnw-fa .hnw-lane-glow{fill:none;stroke:#e11d48;stroke-width:8;opacity:.11}
.hnw-fa .hnw-gate path{fill:none;stroke:#e11d48;stroke-width:1.2;stroke-dasharray:6 6;opacity:.85;animation:hnw-gate-pulse 2s ease-in-out infinite}
.hnw-fa .hnw-ship.go{fill:#ff435d;filter:drop-shadow(0 0 5px rgba(225,29,72,.85))}
.hnw-fa .hnw-map-country{fill:#718096;font-size:19px;font-weight:800;letter-spacing:7px;text-anchor:middle}
.hnw-fa .hnw-map-label{fill:#627187;font-size:14px;text-anchor:middle}.hnw-fa .hnw-map-label.small{font-size:10px}
.hnw-fa .hnw-map-flow{fill:#ff435d;font-size:11px}.hnw-fa .hnw-map-flow.in{opacity:.82}
.hnw-fa .hnw-narrow rect{fill:#0d1727;stroke:#293952}.hnw-fa .hnw-narrow text{fill:#9aa9bd;font-size:13px;text-anchor:middle}
@keyframes hnw-map-flow{to{stroke-dashoffset:-72}}
@keyframes hnw-gate-pulse{0%,100%{opacity:.85}50%{opacity:.28}}
.hnw-fa[data-theme="light"] .hnw-sea-a{stop-color:#edf3f9}.hnw-fa[data-theme="light"] .hnw-sea-b{stop-color:#dfe9f4}
.hnw-fa[data-theme="light"] .hnw-map-grid{stroke:#b9c8d8;opacity:.55}
.hnw-fa[data-theme="light"] .hnw-map-land,.hnw-fa[data-theme="light"] .hnw-island{fill:#f7f9fc;stroke:#b7c4d4}
.hnw-fa[data-theme="light"] .hnw-map-country{fill:#627087}.hnw-fa[data-theme="light"] .hnw-map-label{fill:#64748b}
.hnw-fa[data-theme="light"] .hnw-narrow rect{fill:#fff;stroke:#cbd5e1}.hnw-fa[data-theme="light"] .hnw-narrow text{fill:#475569}

.hnw-fa .hnw-chart-wrap{position:relative;width:100%;margin-top:8px;flex:1}
.hnw-fa .hnw-chart-wrap canvas{width:100%!important}

/* full-width sections: six news items in two columns, then regional impact */
.hnw-fa .hnw-bottom{display:grid;grid-template-columns:1fr;gap:16px}
.hnw-fa .hnw-news-card{order:1;padding:8px 10px}
.hnw-fa .hnw-regions-card{order:2;padding:22px 24px 24px}
.hnw-fa .hnw-news-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,auto);grid-auto-flow:column;gap:0 16px}
.hnw-fa .hnw-news-list li{border-bottom:1px solid var(--hnw-border);min-width:0}
.hnw-fa .hnw-news-list li:nth-child(3),.hnw-fa .hnw-news-list li:nth-child(6),.hnw-fa .hnw-news-list li:last-child{border-bottom:0}
.hnw-fa .hnw-news-list a{
  display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;
  padding:12px 8px;text-decoration:none;color:inherit;
}
.hnw-fa .hnw-news-thumb{
  width:64px;height:52px;border-radius:8px;object-fit:cover;background:#d7dce3;display:block;
}
.hnw-fa .hnw-news-thumb.is-empty{background:#d7dce3;border:0}
.hnw-fa .hnw-news-list h4{margin:0;font-size:.88rem;font-weight:700;line-height:1.55;color:var(--hnw-text)}
.hnw-fa .hnw-news-list p{margin:4px 0 0;font-size:.75rem;color:var(--hnw-muted);line-height:1.6}

.hnw-fa .hnw-region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:8px}
.hnw-fa .hnw-region{
  min-height:118px;border-radius:14px;padding:14px 16px;display:block;position:relative;overflow:hidden;
  border:1.5px solid transparent;transition:transform .22s ease,box-shadow .22s ease;
}
.hnw-fa .hnw-region:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.09)}
.hnw-fa .hnw-region.is-CRITICAL{background:#ffe4e6;border-color:#ff334f}
.hnw-fa .hnw-region.is-HIGH{background:#fff4da;border-color:#f59e0b}
.hnw-fa .hnw-region.is-MODERATE{background:#e6fbdc;border-color:#65a30d}
.hnw-fa .hnw-region header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 4px}
.hnw-fa .hnw-region-name{font-size:.78rem;font-weight:700;color:#9f1239}
.hnw-fa .hnw-region.is-HIGH .hnw-region-name{color:#92400e}
.hnw-fa .hnw-region.is-MODERATE .hnw-region-name{color:#166534}
.hnw-fa .hnw-region b{font-size:1.05rem;color:currentColor;background:transparent;border-radius:0;padding:0;font-weight:800;height:auto}
.hnw-fa .hnw-region.is-CRITICAL b{color:#e11d48}.hnw-fa .hnw-region.is-HIGH b{color:#b45309}.hnw-fa .hnw-region.is-MODERATE b{color:#4d7c0f}
.hnw-fa .hnw-region-level{display:block;font-size:.68rem;font-weight:800;color:#e11d48;margin-bottom:5px}
.hnw-fa .hnw-region.is-HIGH .hnw-region-level{color:#b45309}.hnw-fa .hnw-region.is-MODERATE .hnw-region-level{color:#4d7c0f}
.hnw-fa .hnw-region p{margin:0;color:#7f1d1d;font-size:.72rem;line-height:1.75}
.hnw-fa .hnw-region.is-HIGH p{color:#78350f}.hnw-fa .hnw-region.is-MODERATE p{color:#365314}
.hnw-fa[data-theme="dark"] .hnw-region.is-CRITICAL{background:rgba(225,29,72,.17);border-color:#9f2341}
.hnw-fa[data-theme="dark"] .hnw-region.is-HIGH{background:rgba(245,158,11,.15);border-color:#8a6208}
.hnw-fa[data-theme="dark"] .hnw-region.is-MODERATE{background:rgba(101,163,13,.15);border-color:#4d7c0f}
.hnw-fa[data-theme="dark"] .hnw-region p{color:#fda4af}.hnw-fa[data-theme="dark"] .hnw-region.is-HIGH p{color:#fcd34d}.hnw-fa[data-theme="dark"] .hnw-region.is-MODERATE p{color:#bef264}
.hnw-fa .hnw-region-legend{
  display:flex;align-items:center;justify-content:flex-end;gap:10px;
  margin:14px 0 0;font-size:.72rem;color:var(--hnw-muted)
}
.hnw-fa .hnw-region-legend i{width:8px;height:8px;border-radius:50%;display:inline-block}
.hnw-fa .hnw-region-legend i.crit{background:#e11d48}
.hnw-fa .hnw-region-legend i.high{background:#eab308}
.hnw-fa .hnw-region-legend i.mod{background:#22c55e}

.hnw-fa .hnw-topbar,.hnw-fa .hnw-banner,.hnw-fa .hnw-foot,.hnw-fa .hnw-lead{display:none}

@media (max-width:900px){
  .hnw-fa .hnw-duration-row{grid-template-columns:1fr 1fr!important}
  .hnw-board .hnw-duration-row>.hnw-brent-card{grid-column:1/-1!important}
  .hnw-fa .hnw-kpi3,.hnw-fa .hnw-mid,.hnw-fa .hnw-bottom{grid-template-columns:1fr}
  .hnw-fa .hnw-map-card,.hnw-fa .hnw-brent-card,.hnw-fa .hnw-news-card,.hnw-fa .hnw-regions-card{order:0}
}
@media (max-width:600px){
  .hnw-fa .hnw-duration-row{grid-template-columns:1fr!important}
  .hnw-board .hnw-duration-row>.hnw-brent-card{grid-column:auto!important}
  .hnw-fa .hnw-news-list,.hnw-fa .hnw-region-grid{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}
  .hnw-fa .hnw-news-list li:nth-child(3){border-bottom:1px solid var(--hnw-border)}
  .hnw-fa .hnw-news-list li:nth-child(6){border-bottom:0}
  .hnw-fa .hnw-map-card{min-height:280px}.hnw-fa .hnw-map-svg{min-height:230px}
}
@media (prefers-reduced-motion:reduce){
  .hnw-fa .hnw-dot.hnw-pulse,.hnw-fa .hnw-wait-table li>i,.hnw-fa .hnw-ship.wait,.hnw-fa .hnw-lane-red,.hnw-fa .hnw-gate path{animation:none}
  .hnw-fa .hnw-ship.go{display:none}
}
