.nav{grid-template-columns:repeat(10,minmax(64px,1fr))}
.sector-flow-module{min-width:0;background:#fff}
.sector-flow-toolbar{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid #dce3ee}
.sector-flow-toolbar>div:first-child span,.sector-flow-toolbar>div:first-child strong{display:block;letter-spacing:0}
.sector-flow-toolbar>div:first-child span{color:#64748b;font-size:11px}
.sector-flow-toolbar>div:first-child strong{margin-top:2px;color:#0f2f55;font-size:14px}
.sector-flow-controls{display:flex;align-items:center;gap:9px}
.sector-flow-segment{display:flex;min-width:0;border:1px solid #cbd5e1;background:#fff}
.sector-flow-segment button{min-width:74px;min-height:34px;padding:6px 10px;border:0;border-right:1px solid #dce3ee;background:#fff;color:#475569;font:inherit;font-size:13px;letter-spacing:0;cursor:pointer}
.sector-flow-segment button:last-child{border-right:0}
.sector-flow-segment button.active{background:#174a82;color:#fff;font-weight:800}
.sector-flow-segment button:disabled{background:#f1f5f9;color:#9aa5b1;cursor:not-allowed}
.sector-flow-segment button:focus-visible,.sector-flow-bubble:focus-visible,.sector-flow-detail>header button:focus-visible{outline:2px solid #2d78b8;outline-offset:2px}
.sector-flow-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #dce3ee}
.sector-flow-summary>div{min-height:68px;padding:11px 16px;border-right:1px solid #dce3ee}
.sector-flow-summary>div:last-child{border-right:0}
.sector-flow-summary span,.sector-flow-summary strong{display:block;letter-spacing:0}
.sector-flow-summary span{color:#64748b;font-size:11px}
.sector-flow-summary strong{margin-top:4px;color:#111827;font-size:19px}
.sector-flow-summary strong.positive,.sector-flow-detail strong.positive{color:#c9271f}
.sector-flow-summary strong.negative,.sector-flow-detail strong.negative{color:#07804a}
.sector-flow-stage{position:relative;height:610px;overflow:hidden;background:#142129;color:#fff;isolation:isolate}
.sector-flow-stage-head{position:absolute;z-index:5;top:0;left:0;right:0;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid #34454f;background:rgba(20,33,41,.96)}
.sector-flow-stage-head span,.sector-flow-stage-head strong{display:block;letter-spacing:0}
.sector-flow-stage-head>div:first-child span{color:#9eb0ba;font-size:11px}
.sector-flow-stage-head>div:first-child strong{margin-top:2px;font-size:18px}
.sector-flow-legend{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px;color:#d4dde2;font-size:11px}
.sector-flow-legend span{display:inline-flex;align-items:center;gap:6px}
.sector-flow-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.sector-flow-legend .inflow:before{background:#ee3d32}
.sector-flow-legend .outflow:before{background:#0db46a}
.sector-flow-legend .spark:before{background:#ffe79b;box-shadow:0 0 8px #fff0b7}
.sector-flow-zone{position:absolute;z-index:2;left:12px;right:12px;display:flex;justify-content:center;flex-wrap:wrap;gap:7px 8px;padding:6px 10px}
.sector-flow-zone.inflow{top:68px;bottom:calc(50% + 20px);align-content:flex-end;align-items:flex-end}
.sector-flow-zone.outflow{top:calc(50% + 20px);bottom:10px;align-content:flex-start;align-items:flex-start}
.sector-flow-zero{position:absolute;z-index:1;top:50%;left:14px;right:14px;height:44px;display:grid;grid-template-columns:minmax(20px,1fr) 32px minmax(20px,1fr);align-items:center;gap:8px;transform:translateY(-50%);color:#9fb2bd;font-size:10px;font-weight:700}
.sector-flow-zero i{height:1px;background:#69808c;box-shadow:0 0 9px rgba(220,240,250,.25)}
.sector-flow-zero b{width:28px;height:28px;display:grid;place-items:center;border:1px solid #91a7b2;border-radius:50%;background:#142129;color:#fff;font-size:11px}
.sector-flow-zero span{position:absolute;left:0}
.sector-flow-zero .inflow-label{bottom:28px}
.sector-flow-zero .outflow-label{top:28px}
.sector-flow-bubble{--flow-size:88px;width:var(--flow-size);height:var(--flow-size);flex:0 0 var(--flow-size);position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;padding:7px;border:2px solid rgba(255,255,255,.4);border-radius:50%;box-shadow:inset 0 0 0 3px rgba(255,255,255,.08),0 7px 16px rgba(0,0,0,.24);color:#fff;font:inherit;text-align:center;letter-spacing:0;cursor:pointer;transition:transform .16s ease,filter .16s ease}
.sector-flow-bubble.inflow{background:linear-gradient(145deg,#f1493e,#bd211a)}
.sector-flow-bubble.outflow{background:linear-gradient(145deg,#12b868,#087545)}
.sector-flow-bubble:hover,.sector-flow-bubble.selected{transform:translateY(-3px);filter:brightness(1.11)}
.sector-flow-bubble b,.sector-flow-bubble strong,.sector-flow-bubble small{display:block;max-width:100%;letter-spacing:0}
.sector-flow-bubble b{font-size:13px;line-height:1.12;overflow-wrap:anywhere}
.sector-flow-bubble strong{font-size:12px;line-height:1.1}
.sector-flow-bubble small{color:rgba(255,255,255,.84);font-size:9px;line-height:1.1}
.sector-flow-bubble.compact b{font-size:11px}
.sector-flow-bubble.compact strong{font-size:10px}
.sector-flow-bubble.compact small{display:none}
.sector-flow-stage canvas{position:absolute;z-index:4;inset:0;width:100%;height:100%;pointer-events:none}
.sector-flow-empty{align-self:center;color:#b4c2ca;font-size:12px}
.sector-flow-detail{border-top:1px solid #dce3ee;background:#fff}
.sector-flow-detail>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #dce3ee}
.sector-flow-detail>header span,.sector-flow-detail>header h2{display:block;letter-spacing:0}
.sector-flow-detail>header span{color:#64748b;font-size:11px}
.sector-flow-detail>header h2{margin:2px 0 0;font-size:18px}
.sector-flow-detail>header button{width:34px;height:34px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:22px;line-height:1;cursor:pointer}
.sector-flow-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #dce3ee}
.sector-flow-detail-metrics>div{padding:10px 16px;border-right:1px solid #dce3ee}
.sector-flow-detail-metrics>div:last-child{border-right:0}
.sector-flow-detail-metrics span,.sector-flow-detail-metrics strong{display:block;letter-spacing:0}
.sector-flow-detail-metrics span{color:#64748b;font-size:11px}
.sector-flow-detail-metrics strong{margin-top:3px;color:#111827;font-size:16px}
.sector-flow-table-wrap{overflow:auto}
.sector-flow-table-wrap table{width:100%;border-collapse:collapse;font-size:13px}
.sector-flow-table-wrap th,.sector-flow-table-wrap td{padding:9px 14px;border-bottom:1px solid #edf0f5;text-align:right;white-space:nowrap}
.sector-flow-table-wrap th:first-child,.sector-flow-table-wrap td:first-child{text-align:left}
.sector-flow-table-wrap th{background:#f8fafc;color:#52616a;font-size:11px}
.sector-flow-table-wrap td a{color:#174a82;text-decoration:none;font-weight:700}
.sector-flow-table-wrap td.positive{color:#c9271f}
.sector-flow-table-wrap td.negative{color:#07804a}
.sector-flow-note{margin:0;padding:10px 16px 12px;color:#64748b;font-size:12px;line-height:1.55}
.sector-flow-note b{color:#8a5a00}
@media(max-width:980px){
  .nav{display:flex}
  .sector-flow-toolbar{align-items:stretch;flex-direction:column;gap:8px}
  .sector-flow-controls{justify-content:space-between}
  .sector-flow-stage{height:690px}
  .sector-flow-zone.inflow{bottom:calc(50% + 18px)}
  .sector-flow-zone.outflow{top:calc(50% + 18px)}
}
@media(max-width:640px){
  .sector-flow-toolbar{padding:9px 10px}
  .sector-flow-toolbar>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}
  .sector-flow-controls{display:grid;grid-template-columns:1fr;gap:7px}
  .sector-flow-segment{width:100%}
  .sector-flow-segment button{min-width:0;flex:1;padding:6px 4px;font-size:12px}
  .sector-flow-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sector-flow-summary>div:nth-child(2){border-right:0}
  .sector-flow-summary>div:nth-child(-n+2){border-bottom:1px solid #dce3ee}
  .sector-flow-summary>div{padding:9px 11px}
  .sector-flow-summary strong{font-size:16px}
  .sector-flow-stage{height:820px}
  .sector-flow-stage-head{align-items:flex-start;flex-direction:column;gap:5px;padding:9px 10px}
  .sector-flow-legend{justify-content:flex-start;gap:10px}
  .sector-flow-zone{left:4px;right:4px;gap:5px;padding:5px 3px}
  .sector-flow-zone.inflow{top:84px;bottom:calc(50% + 18px)}
  .sector-flow-zone.outflow{top:calc(50% + 18px);bottom:5px}
  .sector-flow-zero{left:7px;right:7px;gap:5px}
  .sector-flow-bubble{padding:5px}
  .sector-flow-bubble b{font-size:11px}
  .sector-flow-bubble strong{font-size:10px}
  .sector-flow-bubble small{display:none}
  .sector-flow-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sector-flow-detail-metrics>div:nth-child(2){border-right:0}
  .sector-flow-detail-metrics>div:nth-child(-n+2){border-bottom:1px solid #dce3ee}
  .sector-flow-table-wrap th,.sector-flow-table-wrap td{padding:8px 10px}
  .sector-flow-note{padding:9px 11px 11px}
}
@media(prefers-reduced-motion:reduce){
  .sector-flow-bubble{transition:none}
  .sector-flow-stage canvas{display:none}
}
