.chart-cell h3{margin-bottom:.25rem;font-size:1rem;font-weight:700}.chart-cell .chart-note{font-size:var(--fs-caption);color:var(--muted);max-width:52ch;margin-bottom:1rem}.databars{width:100%;font-family:var(--font-mono);font-size:.8125rem}.databars th,.databars td{vertical-align:middle;padding:.32rem .4rem;transition:background-color .15s}.databars tbody tr:nth-child(odd) th,.databars tbody tr:nth-child(odd) td{background:var(--light)}.databars tbody tr:hover th,.databars tbody tr:hover td{background:var(--row-hover)}.db-label{text-align:left;width:32%;min-width:7.5rem;color:var(--text);white-space:nowrap;text-overflow:ellipsis;padding-right:.75rem;font-weight:400;overflow:hidden}.db-bar{position:relative}.databar-fill{border-radius:0 4px 4px 0;min-width:2px;height:12px;display:block}.db-num{text-align:right;width:3.25rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-left:.75rem}.databars tr.group-start th,.databars tr.group-start td{padding-top:.7rem}.fx{border:1px solid var(--border);background:var(--light);font-family:var(--font-mono);color:var(--muted);white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;margin:.75rem 0 0;padding:.4rem .65rem;font-size:.75rem;display:flex;overflow-x:auto}.fx .fx-badge{color:var(--blue);flex:none;font-style:italic;font-weight:500}.fx code{font-family:inherit}.stat-num{font-family:var(--font-mono);color:var(--text);font-size:clamp(2.1rem,4vw,2.9rem);font-weight:500;line-height:1.1}.stat-num .stat-unit{color:var(--muted);font-size:1rem}.hero-body{gap:0 var(--pad-x);padding:clamp(2.5rem, 7vh, 4.5rem) var(--pad-x) 3.25rem;grid-template-areas:"copy""ws""actions";display:grid}.hero-copy{grid-area:copy}.hero-actions{grid-area:actions}.hero-ws-zone{grid-area:ws;min-width:0}@media (width>=80rem){.hero-body{min-height:calc(92vh - var(--header-h));grid-template-columns:minmax(30rem,44rem) minmax(0,1fr);grid-template-areas:"copy ws""actions ws";align-content:center;align-items:start}.hero-actions{align-self:end}}.hero-body h1{font-size:var(--fs-display);letter-spacing:-.02em;max-width:16ch}.hero-sub{max-width:56ch;margin-top:1.25rem;font-size:1.1875rem}.hero-ctas{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;min-height:3.25rem;margin-top:2.25rem;display:flex}.hero-fine{font-family:var(--font-mono);color:var(--muted);margin-top:1rem;font-size:.75rem}.ws-recalc{border:1px solid var(--border);font-family:var(--font-mono);color:var(--muted);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:.4rem;margin-top:.85rem;padding:.3rem .7rem;font-size:.6875rem;transition:background-color .18s,color .18s,transform .12s;display:inline-flex}.ws-recalc:hover{background:var(--row-hover);color:var(--text)}.ws-recalc:active{transform:scale(.95)}.ws-stage{--ws-head-h:2.5rem;--ws-rh:2.75rem;--ws-let-h:1.5rem;--ws-num-w:2rem;z-index:0;max-width:60rem;padding:var(--ws-let-h) 0 0 var(--ws-num-w);margin-top:2.5rem;transition:padding .7s cubic-bezier(.22,.61,.36,1);position:relative}@media (width>=80rem){.ws-stage{margin-top:1rem}}.ws-stage.is-app{padding:0}.ws-canvas{z-index:-1;pointer-events:none;width:136%;height:178%;position:absolute;top:-42%;left:-18%}@media (width<=48rem){.ws-canvas{display:none}}.ws-letters,.ws-nums{color:var(--muted);font-size:.6875rem;transition:opacity .45s;position:absolute}.ws-letters{top:0;left:var(--ws-num-w);height:var(--ws-let-h);grid-template-columns:24% 34% 22% 20%;display:grid;right:0}.ws-letters span{text-align:center;line-height:var(--ws-let-h)}.ws-nums{top:var(--ws-let-h);width:var(--ws-num-w);left:0}.ws-nums span{height:var(--ws-rh);line-height:var(--ws-rh);text-align:center;display:block}.ws-nums span:first-child{height:var(--ws-head-h);line-height:var(--ws-head-h)}.ws-stage.is-app .ws-letters,.ws-stage.is-app .ws-nums{opacity:0}.ws{background:var(--card);border:1px solid var(--border);transition:border-radius .7s cubic-bezier(.22,.61,.36,1),box-shadow .7s,border-color .7s;position:relative;overflow:hidden}.ws.is-app{border-radius:var(--radius);box-shadow:var(--shadow-md);border-color:#0000}.ws-table{table-layout:fixed;width:100%}.ws-table th,.ws-table td{height:var(--ws-rh);border-right:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;text-align:left;padding:0 .8rem;font-size:.875rem;font-weight:400;transition:background-color .5s,border-color .7s,color .7s;overflow:hidden}.ws-table th{height:var(--ws-head-h);font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);background:var(--light);font-size:.6875rem;font-weight:500}.ws-table th:last-child,.ws-table td:last-child{border-right:0}.ws-table tbody tr:last-child td{border-bottom:0}.ws-td-file{font-family:var(--font-mono);color:var(--muted);font-size:.75rem}.ws.is-app th{background:color-mix(in srgb, var(--blue) 8%, var(--card));color:var(--blue);border-bottom-color:color-mix(in srgb, var(--blue) 22%, var(--border))}.ws.is-app th,.ws.is-app td{border-right-color:#0000}.ws.is-app td{border-bottom-color:color-mix(in srgb, var(--border) 55%, var(--card))}.ws-table tr.toned[data-tone=green] td{background:color-mix(in srgb, var(--green) 7%, var(--card))}.ws-table tr.toned[data-tone=amber] td{background:color-mix(in srgb, var(--amber) 8%, var(--card))}.ws-table tr.toned[data-tone=blue] td{background:color-mix(in srgb, var(--blue) 6%, var(--card))}.ws.is-app tbody tr:hover td{background:var(--row-hover)}.ws-ring{z-index:2;border:2px solid var(--blue);opacity:0;pointer-events:none;border-radius:3px;position:absolute}@media (width<=40rem){.ws-table th,.ws-table td{padding:0 .5rem;font-size:.75rem}.ws-td-file{font-size:.6875rem}}html[data-hero=pending] .ws-stage.is-app{padding:var(--ws-let-h) 0 0 var(--ws-num-w)}html[data-hero=pending] .ws-stage.is-app .ws-letters,html[data-hero=pending] .ws-stage.is-app .ws-nums{opacity:1}html[data-hero=pending] .ws.is-app{border-color:var(--border);box-shadow:none;border-radius:0}html[data-hero=pending] .ws.is-app th{background:var(--light);color:var(--muted);border-bottom-color:var(--border)}html[data-hero=pending] .ws.is-app th,html[data-hero=pending] .ws.is-app td{border-right-color:var(--border)}html[data-hero=pending] .ws.is-app td{border-bottom-color:var(--border)}html[data-hero=pending] .ws-table tr.toned td{background:var(--card)}html[data-hero=pending] .ws .c-txt{visibility:hidden}html[data-hero=pending] .ws .dot{transform:scale(0)}html[data-hero=pending] .funnel-cell .databar-fill{width:0!important}
