.progress-analysis .progress-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.progress-controls .field:first-child{flex:1;min-width:200px}.progress-metrics{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.progress-delta{font-weight:600;font-size:16px}.plot-scroll{overflow-x:auto;padding-bottom:8px}.progress-plot{position:relative;min-width:300px;aspect-ratio:640/260}.progress-plot svg{display:block;width:100%;height:100%;overflow:visible}.progress-plot text{fill:#b5b7bc;font-size:13px;font-family:inherit}.progress-plot .plot-value{fill:#f4f4f5;font-weight:600}.plot-grid{stroke:#41434a;stroke-width:1;stroke-dasharray:3 4}.plot-line{fill:none;stroke:#fb665d;stroke-width:3}.plot-dot{fill:#fb665d;stroke:#151619;stroke-width:2}.plot-hit{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;background:transparent;border:0;border-radius:50%;cursor:pointer}.plot-hit:focus-visible{outline:3px solid #fff;background:#ffffff22}.plot-hit:hover{background:#ffffff18}.progress-detail{background:#ffffff06;border:1px solid #ffffff18;border-radius:12px;padding:16px;margin:12px 0}.progress-detail h3{margin-top:0}.progress-table{overflow:auto;margin:12px 0}.progress-table table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.progress-table th,.progress-table td{padding:10px 14px;border-bottom:1px solid #ffffff18}.progress-records{margin:16px 0}.progress-analysis summary{cursor:pointer}.progress-analysis .btn{min-height:44px}@media(max-width:600px){.progress-controls .field{width:100%}.progress-metrics .btn{flex:1 1 45%;font-size:12px}.progress-table th,.progress-table td{padding:8px}.progress-detail{padding:12px}}
