:root{--ink:#111216;--muted:#6d7078;--paper:#f5f4ef;--card:#fff;--line:#deddd7;--blue:#0a65ff;--green:#067a55;--red:#c4403a;--warm:#ff5b35;--shadow:0 22px 70px rgba(30,28,21,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;font-feature-settings:"tnum" 1}button,a{font:inherit}a{color:inherit}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.sitebar{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:800;text-decoration:none;letter-spacing:-.04em;font-size:1.15rem}.back{color:var(--muted);text-decoration:none;font-size:.9rem}.hero{padding:76px 0 34px;display:grid;grid-template-columns:1.35fr .65fr;gap:48px;align-items:end}.kicker{font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--blue)}h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.88;letter-spacing:-.075em;margin:16px 0 24px;max-width:850px}.intro{font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.55;color:var(--muted);max-width:680px}.pulse-card{background:var(--ink);color:white;border-radius:28px;padding:26px;box-shadow:var(--shadow)}.pulse-card small{color:#aeb1b9}.pulse-card strong{display:block;font-size:2.4rem;letter-spacing:-.05em;margin:9px 0}.live-dot{display:inline-block;width:8px;height:8px;background:#44d69a;border-radius:50%;box-shadow:0 0 0 5px rgba(68,214,154,.12);margin-right:10px}.tabs{position:sticky;top:0;z-index:10;background:rgba(245,244,239,.88);backdrop-filter:blur(18px);border-block:1px solid var(--line)}.tabrow{height:68px;display:flex;gap:8px;align-items:center}.tab{border:0;background:transparent;color:var(--muted);padding:12px 18px;border-radius:999px;cursor:pointer;font-weight:700}.tab[aria-selected=true]{background:var(--ink);color:white}.panel{padding:46px 0 80px}.panel[hidden]{display:none}.section-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:28px}.section-head h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.055em;margin:0}.section-head p{color:var(--muted);max-width:480px;line-height:1.55;margin:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.metric,.chart-card,.table-card,.note{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:0 8px 30px rgba(40,36,25,.035)}.metric{padding:24px}.metric span{display:block;color:var(--muted);font-size:.82rem;margin-bottom:24px}.metric strong{font-size:clamp(1.65rem,3vw,2.6rem);letter-spacing:-.05em}.positive{color:var(--green)}.negative{color:var(--red)}.chart-card{padding:26px;margin-bottom:18px}.chart-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.chart-top h3{margin:0;font-size:1rem}.legend{display:flex;gap:18px;color:var(--muted);font-size:.8rem}.legend i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.bars{height:260px;display:flex;align-items:center;gap:10px;padding:8px 4px 30px;border-bottom:1px solid var(--line);position:relative}.bar-group{flex:1;height:100%;display:flex;justify-content:center;gap:5px;align-items:center;position:relative}.bar{width:min(34px,38%);border-radius:8px 8px 2px 2px;min-height:4px;transition:height .5s ease}.bar.fii{background:var(--warm)}.bar.dii{background:var(--blue)}.bar-label{position:absolute;bottom:-23px;font-size:.68rem;color:var(--muted);white-space:nowrap}.table-card{overflow:hidden}.table-title{padding:24px 26px 10px;margin:0;font-size:1rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:16px 26px;border-top:1px solid var(--line);white-space:nowrap}th{text-align:left;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.07em}td:not(:first-child),th:not(:first-child){text-align:right}.sector-name{font-weight:700}.change-pill{padding:5px 9px;border-radius:999px;background:#edf7f2}.change-pill.negative{background:#fff0ed}.source-note{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:.82rem;padding:18px 4px}.source-note a{color:var(--blue)}.note{padding:25px;display:grid;grid-template-columns:auto 1fr;gap:18px;margin-top:18px}.note b{font-size:1.3rem}.note p{margin:3px 0 0;color:var(--muted);line-height:1.55}.demo-banner{background:#fff3d8;border:1px solid #ead49a;border-radius:14px;padding:12px 16px;margin-bottom:18px;color:#6b5013;font-size:.86rem}.footer{border-top:1px solid var(--line);padding:28px 0 46px;color:var(--muted);font-size:.82rem;display:flex;justify-content:space-between;gap:20px}
.signal-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 18px}.signal-chip{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:15px}.signal-chip span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.signal-chip strong{display:block;font-size:1.45rem;margin-top:6px}.signal{display:inline-block;padding:6px 9px;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.04em}.signal.strong-buy{background:#dff8eb;color:#05633f}.signal.buy{background:#eaf8f0;color:#08754f}.signal.neutral{background:#fff5cc;color:#70570a}.signal.sell{background:#fff0e9;color:#a94722}.signal.strong-sell{background:#fee7e5;color:#a82c29}.spark{display:flex;align-items:end;gap:2px;width:92px;height:28px}.spark i{flex:1;background:#b9c9e8;border-radius:2px 2px 0 0;min-height:2px}.rank{font-weight:800;color:var(--blue)}
.bars{height:300px;align-items:flex-start;padding:0 28px 30px 4px;border-bottom:0}.bars::before{content:"";position:absolute;left:4px;right:28px;top:calc((100% - 30px)/2);height:1px;background:#8f908c;z-index:2}.bars::after{content:"0";position:absolute;right:5px;top:calc((100% - 30px)/2 - 8px);font-size:.66rem;color:var(--muted)}.bar-group{height:calc(100% - 30px);display:block}.bar{position:absolute;min-height:3px}.bar.fii{left:12%}.bar.dii{right:12%}.bar.up{bottom:50%;border-radius:8px 8px 2px 2px}.bar.down{top:50%;border-radius:2px 2px 8px 8px}.bar-label{bottom:-23px;left:50%;transform:translateX(-50%)}.sector-table th:nth-child(3),.sector-table td:nth-child(3),.sector-table td.sector-name{text-align:left!important}.signal.strong-bullish{background:#dff8eb;color:#05633f}.signal.bullish{background:#eaf8f0;color:#08754f}.signal.balanced{background:#fff5cc;color:#70570a}.signal.bearish{background:#fff0e9;color:#a94722}.signal.strong-bearish{background:#fee7e5;color:#a82c29}
@media(max-width:760px){.shell{width:min(100% - 24px,1180px)}.hero{grid-template-columns:1fr;padding-top:48px}.pulse-card{display:none}h1{font-size:3.8rem}.metrics{grid-template-columns:1fr}.signal-strip{grid-template-columns:repeat(2,1fr)}.section-head{display:block}.section-head p{margin-top:14px}.tabrow{overflow:auto}.tab{white-space:nowrap}.source-note,.footer{display:block}.source-note>*{display:block;margin-bottom:8px}th,td{padding:14px 16px}.note{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bar{transition:none}}

/* Compact report-first layout */
.shell{width:min(1460px,calc(100% - 32px))}
.flow-page{min-height:100vh}
.tabs{top:0}
.tabrow{height:64px;justify-content:flex-start}
.tab{font-size:1rem;padding:12px 22px}
.panel{padding:34px 0 72px}
.section-head{align-items:center;margin-bottom:24px}
.section-head h1{font-size:clamp(2rem,4vw,3.8rem);line-height:1;letter-spacing:-.055em;margin:7px 0 0}
.section-head p{text-align:right}
.eyebrow{font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.chart-top h3,.table-heading h3{font-size:1.05rem}
.legend{gap:24px;font-size:1rem;font-weight:800;color:var(--ink)}
.legend i{width:11px;height:11px;margin-right:8px}

/* One shared plot box means every bar starts from this exact zero axis. */
.bars{display:block;height:300px;padding:0 28px 34px 4px;border:0}
.bars::before,.bars::after{display:none}
.bar-plot{height:266px;display:flex;gap:10px;position:relative}
.zero-line{position:absolute;left:0;right:0;top:50%;height:1px;background:#8f908c;z-index:2;pointer-events:none}
.zero-line span{position:absolute;right:-22px;top:-8px;font-size:.72rem;color:var(--muted)}
.bar-group{flex:1;height:100%;display:block;position:relative}
.bar{position:absolute;min-height:3px;width:min(34px,38%)}
.bar.fii{left:12%}.bar.dii{right:12%}
.bar.up{bottom:50%;border-radius:8px 8px 2px 2px}
.bar.down{top:50%;border-radius:2px 2px 8px 8px}
.bar-label{bottom:-27px;left:50%;transform:translateX(-50%)}

.table-heading{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 12px}
.table-heading h3{margin:0}.table-heading p{margin:5px 0 0;color:var(--muted);font-size:.82rem}
.table-heading>span{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}
.daily-table th,.daily-table td{padding:14px 24px}
.daily-table th:nth-child(1),.daily-table td:nth-child(1){text-align:left}
.daily-table th:nth-child(4),.daily-table td:nth-child(4){width:64px;text-align:center}
.session-row{cursor:pointer;transition:background .15s}
.session-row:hover,.session-row:focus{background:#f7f8fb;outline:none}
.session-row[aria-expanded=true]{background:#f4f7fc}
.expand-session{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:var(--card);color:var(--blue);font-size:1.15rem;line-height:1;cursor:pointer}
.session-detail td{padding:0 24px 18px;background:#f4f7fc}
.flow-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.flow-breakdown>div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.flow-breakdown strong{display:block;margin-bottom:8px}
.flow-breakdown span{display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:.82rem;padding-top:6px}
.flow-breakdown b{color:var(--ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Fit the fortnightly report comfortably on desktop. */
.sector-card .table-wrap{overflow-x:auto}
.sector-table{width:100%;min-width:1030px;table-layout:fixed;font-size:.84rem}
.sector-table th,.sector-table td{padding:12px 9px}
.sector-table th:nth-child(1){width:54px}.sector-table th:nth-child(2){width:104px}
.sector-table th:nth-child(3){width:170px}.sector-table th:nth-child(4){width:88px}
.sector-table th:nth-child(5){width:132px}.sector-table th:nth-child(6){width:78px}
.sector-table th:nth-child(7){width:105px}.sector-table th:nth-child(n+8){width:82px}
.sector-table td:nth-child(3){white-space:normal;line-height:1.25}
.sector-table .spark{width:82px}

@media(max-width:760px){
  .shell{width:min(100% - 20px,1460px)}
  .tabrow{height:58px}.tab{font-size:.9rem;padding:10px 15px}
  .panel{padding-top:24px}.section-head p{text-align:left}
  .bar-plot{gap:4px}.bars{padding-right:22px}.bar{width:42%}
  .bar.fii{left:5%}.bar.dii{right:5%}.bar-label{font-size:.6rem}
  .daily-table th,.daily-table td{padding:13px 10px}
  .flow-breakdown{grid-template-columns:1fr}
}
