.perf-page{padding-bottom:8px}.perf-title-row{align-items:flex-start;gap:10px;display:flex}.perf-title-row>:first-child{flex:1;min-width:0}.perf-title-row>button{margin:18px 14px 0 0}.perf-controls{border-bottom:1px solid var(--ex-rule);justify-content:space-between;align-items:end;gap:20px;min-height:48px;margin:14px;display:flex}.perf-controls label{color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:9px;padding-bottom:8px;font-size:11px;font-weight:600;display:flex}.perf-controls select{border:1px solid var(--ex-rule);background:var(--ex-paper);min-height:34px;color:var(--ex-ink);border-radius:0;padding:0 30px 0 10px;font:600 13px/1 inherit}.perf-toggle{align-self:stretch;align-items:stretch;gap:16px;display:flex}.perf-toggle button{color:var(--ex-text-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:0;font:600 12px/1 inherit}.perf-toggle button.is-active{border-bottom-color:var(--ex-teal);color:var(--ex-ink)}.perf-summary{grid-template-columns:1fr 1fr;gap:34px;margin:20px 14px 24px;display:grid}.perf-summary section{border-top:1px solid var(--ex-rule)}.perf-summary h2{color:var(--ex-text-muted);text-transform:uppercase;letter-spacing:.1em;margin:0;padding:10px 0 6px;font-size:10.5px;font-weight:600}.perf-summary ol{margin:0;padding:0;list-style:none}.perf-summary li{border-top:1px solid var(--ex-rule);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:32px;font-size:13px;display:grid}.perf-summary b,.perf-team-heading span,.perf-ranking b{font-variant-numeric:tabular-nums}.perf-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 18px;margin:0 14px;display:grid}.perf-card,.perf-detail{border-top:1px solid var(--ex-rule);min-width:0}.perf-team-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;font-size:13px;display:grid}.perf-team-heading strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.perf-team-heading span{color:var(--ex-text-secondary);font-weight:600}.perf-chart{width:100%;height:210px}.perf-chart-detail{height:430px}.perf-chart-wrap{min-width:0}.perf-plot{cursor:default;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;position:relative}.perf-plot:focus{outline:none}.perf-plot:focus-visible{outline:2px solid var(--ex-teal);outline-offset:2px}.perf-plot svg{display:block;overflow:visible}.perf-tick{fill:var(--text-3);font-variant-numeric:tabular-nums;font-size:10px}.perf-zero{stroke:var(--text-2);stroke-width:1px;stroke-dasharray:4 4}.perf-line{stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;transition-property:stroke-dashoffset;transition-timing-function:cubic-bezier(.35,.1,.25,1)}.perf-plot.is-drawn .perf-line{stroke-dashoffset:0}.perf-dot{opacity:0;transition:opacity .2s linear}.perf-plot.is-drawn .perf-dot{opacity:1}.perf-dot-on{stroke:var(--ex-paper);stroke-width:2px;pointer-events:none}@media (prefers-reduced-motion:reduce){.perf-line,.perf-dot{transition:none!important}}.perf-readout{height:58px;color:var(--ex-text-secondary);font-variant-numeric:tabular-nums;flex-direction:column;gap:1px;margin:0;padding:6px 0 0;font-size:11px;line-height:16px;display:flex;overflow:hidden}.perf-readout>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.perf-readout strong,.perf-readout b{color:var(--ex-ink);font-weight:600}.perf-readout-hint{color:var(--ex-text-muted)}.perf-hint-hover{display:none}@media (hover:hover) and (pointer:fine){.perf-hint-touch{display:none}.perf-hint-hover{display:inline}}.perf-chart-wrap-detail .perf-readout{height:66px;padding-left:38px;font-size:13px;line-height:18px}@media (max-width:560px){.perf-readout{font-size:12px}.perf-chart-wrap-detail .perf-readout{padding-left:0;font-size:12.5px}}.perf-drawer{border-bottom:1px solid var(--ex-rule);padding:6px 0 4px;animation:.18s ease-out perf-drawer-in}@keyframes perf-drawer-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.perf-drawer{animation:none}}.perf-rank-drawers{grid-template-columns:1fr}.perf-rank-detail{grid-template-columns:minmax(230px,30%) minmax(0,1fr);align-items:start;gap:28px;margin:0 14px;display:grid}.perf-ranking{border-top:1px solid var(--ex-rule)}.perf-ranking button{border:0;border-bottom:1px solid var(--ex-rule);width:100%;min-height:42px;color:var(--ex-ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:25px auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 8px 0 4px;display:grid}.perf-ranking button:hover{background:var(--wash)}.perf-ranking button.is-selected{box-shadow:inset 3px 0 var(--ex-teal);background:var(--wash)}.perf-ranking button:focus-visible{outline:2px solid var(--ex-teal);outline-offset:-2px}.perf-rank{color:var(--ex-text-muted);text-align:center;font-size:11px}.perf-rank-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.perf-detail .perf-team-heading{padding:0 6px;font-size:16px}@media (min-width:901px){.perf-detail{top:calc(var(--nav-shown-h,0px) + 14px);position:sticky}}@media (max-width:900px){.perf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.perf-rank-detail{grid-template-columns:1fr}.perf-chart-detail{height:360px}}@media (max-width:560px){.perf-summary,.perf-grid{grid-template-columns:1fr;gap:18px}.perf-chart{height:230px}.perf-chart-detail{height:300px}.perf-title-row>button{margin-right:10px}}
