/* Report tab. Scoped under .tab-report; shell comes from app.css. Light theme only. */

.tab-report{display:flex;flex-direction:column;gap:10px;min-width:0}
/* Eight figures: four by two on desktop, two by four on a phone, no orphan column. */
.tab-report .statrow{grid-template-columns:repeat(4,1fr)}
@media(max-width:700px){.tab-report .statrow{grid-template-columns:1fr 1fr}}
.tab-report .rp-h1row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.tab-report .rp-h1{font-family:var(--display);font-size:20px;font-weight:800;margin:0;letter-spacing:-.01em;overflow-wrap:break-word;min-width:0}
.tab-report .rp-lede{font-size:14px;font-weight:600;margin-top:6px;overflow-wrap:break-word}
.tab-report .rp-meta{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;font-size:12px;color:var(--ink2);margin-top:6px;min-width:0}
.tab-report .rp-meta .srclink{overflow-wrap:break-word;word-break:break-word;min-width:0}
.tab-report .rp-dot{color:var(--ink3)}
.tab-report .rp-share{gap:6px;flex-wrap:wrap;align-items:center}

/* Fund flow: four equal columns of node cards, ribbons in an SVG behind them. */
.tab-report .rp-flow{position:relative;min-width:0}
.tab-report .rp-flow-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.tab-report .rp-flow-cols{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px 28px;min-width:0}
.tab-report .rp-col{display:flex;flex-direction:column;gap:8px;min-width:0;justify-content:center}
.tab-report .rp-col-title{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--soft);font-weight:700;align-self:flex-start}
.tab-report .rp-node{border:2px solid var(--border-strong);border-radius:8px;background:var(--panel);padding:6px 8px;min-width:0;border-left-width:6px}
.tab-report .rp-node-name{font-size:12.5px;font-weight:700;overflow-wrap:break-word;word-break:break-word}
.tab-report .rp-node-sub{font-size:10.5px;color:var(--ink3);overflow-wrap:break-word;word-break:break-word;margin-top:1px}
.tab-report .rp-node-v{font-size:12px;color:var(--ink2);margin-top:2px}
.tab-report .rp-node-venue{border-left-color:var(--crit)}
.tab-report .rp-node-bridge{border-left-color:var(--high)}
.tab-report .rp-node-mixer{border-left-color:#7c2d12}
.tab-report .rp-node-contract{border-left-color:var(--med)}
.tab-report .rp-node-wallet{border-left-color:#94a3b8}
.tab-report .rp-node-subject{border-color:var(--ink);border-left-color:var(--ink);background:var(--bg2)}
.tab-report .rp-empty{font-size:12px;color:var(--ink3);padding:6px 0}

/* Timing lanes. Name column, track, three numbers. The track is a positioned strip; marks sit
   at a percentage from the log axis. */
.tab-report .rp-lanes{display:flex;flex-direction:column;min-width:0;overflow-x:auto}
.tab-report .rp-lane{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(260px,3fr) 78px 78px 72px;gap:0 10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line2);min-width:720px}
.tab-report .rp-lane-axis{border-bottom:2px solid var(--border-strong);position:sticky;top:0;background:var(--panel);z-index:2;padding:4px 0}
.tab-report .rp-lane-axis .rp-lane-name,.tab-report .rp-lane-h{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--soft);font-weight:700}
.tab-report .rp-lane-h{text-align:right}
.tab-report .rp-lane-axis .rp-lane-track{height:16px}
.tab-report .rp-tick{position:absolute;top:0;transform:translateX(-50%);font:600 10px/16px var(--mono);color:var(--ink3)}
.tab-report .rp-tick:first-child{transform:none}
.tab-report .rp-lane-name{min-width:0;font-size:12.5px;overflow-wrap:break-word;word-break:break-word}
.tab-report .rp-lane-sub{display:block;font-size:11px;color:var(--ink3)}
.tab-report .rp-lane-addr .srclink{font-size:11px}
.tab-report .rp-lane-track{position:relative;height:22px;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),var(--line2) calc(10% - 1px) 10%)}
.tab-report .rp-span{position:absolute;top:10px;height:2px;background:#cbd5e1}
.tab-report .rp-mark{position:absolute;top:50%;width:8px;height:8px;transform:translate(-50%,-50%);display:block}
.tab-report .rp-mark-in{border-radius:50%;background:var(--ok);border:1px solid #fff}
.tab-report .rp-mark-out{background:var(--crit);transform:translate(-50%,-50%) rotate(45deg);border:1px solid #fff}
.tab-report .rp-mark-g{width:9px;height:9px;opacity:.85}
.tab-report .rp-lane-num{font-size:12px;text-align:right;white-space:nowrap}
.tab-report .rp-group{border-bottom:1px solid var(--line);min-width:0}
.tab-report .rp-group:last-child{border-bottom:0}
.tab-report summary.rp-lane-sum{cursor:pointer;list-style:none;background:var(--bg2);min-height:44px}
.tab-report summary.rp-lane-sum::-webkit-details-marker{display:none}
.tab-report .rp-caret{display:inline-block;width:0;height:0;border-left:5px solid var(--ink2);border-top:4px solid transparent;border-bottom:4px solid transparent;margin-right:6px;vertical-align:middle;transition:transform .12s}
.tab-report .rp-group[open] .rp-caret{transform:rotate(90deg)}
.tab-report .rp-lane-sum b{font-size:12.5px}
.tab-report .rp-lane-row{padding-left:18px}
.tab-report .rp-evidence{font-size:12px;color:var(--ink2);padding:6px 0 10px 18px;overflow-wrap:break-word;min-width:720px}

@media(max-width:900px){
  .tab-report .rp-flow-cols{grid-template-columns:1fr 1fr}
  .tab-report .rp-flow-svg{display:none}
}
@media(max-width:700px){
  .tab-report .rp-h1{font-size:18px}
  .tab-report .rp-share .btn{min-height:44px}
}
@media(max-width:520px){
  .tab-report .rp-flow-cols{grid-template-columns:1fr}
}

.tab-report .rp-fund-btn,.tab-triage .rp-fund-btn{margin-left:8px;vertical-align:middle}
.tab-report .rp-funding{color:var(--ink)}
.rp-examples{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:12.5px;margin-top:8px}
.rp-examples-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--soft);font-weight:700}
.rp-example{color:var(--accent-ink);text-decoration:underline;text-underline-offset:2px;font-weight:600;min-height:44px;display:inline-flex;align-items:center}
@media(min-width:701px){.rp-example{min-height:0}}
