
.tests-page,.progress-page{display:grid;gap:12px}
.tests-header,.progress-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.tests-header h1,.progress-header h1{margin:4px 0}
.tests-header p,.progress-header p{margin:0;color:var(--muted);font-size:12px}
.tests-selector-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
.tests-selector-row label{display:grid;gap:5px}
.tests-selector-row label span{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase}
.tests-selector-row select{width:100%;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text)}
.tests-overview-grid,.tests-comparison-grid,.progress-kpi-grid,.progress-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.tests-overview-grid article,.tests-comparison-grid article,.progress-kpi-grid article,.progress-stats-grid article{padding:12px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}
.tests-overview-grid span,.tests-comparison-grid span,.progress-kpi-grid span,.progress-stats-grid span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.45px}
.tests-overview-grid strong,.tests-comparison-grid strong,.progress-kpi-grid strong,.progress-stats-grid strong{display:block;font-size:19px;margin-top:4px}
.tests-comparison-grid small{display:block;margin-top:5px;color:var(--muted)}
.tests-comparison-grid small.good{color:#72e993}
.tests-comparison-grid small.bad{color:#ff8178}
.tests-progress-card{padding:13px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}
.tests-progress-card>div:first-child{display:flex;justify-content:space-between;gap:12px}
.tests-progress-card span{font-size:11px;color:var(--muted)}
.tests-progress-track{height:9px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:9px}
.tests-progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--success));transition:width .3s ease}
.physical-test-form{display:grid;gap:10px}
.physical-test-group{border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}
.physical-test-group-head{display:flex;justify-content:space-between;gap:12px;padding:14px;border-bottom:1px solid var(--line)}
.physical-test-group-title{font-size:17px;font-weight:900}
.physical-test-group-head small{display:block;color:var(--muted);margin-top:4px}
.physical-test-method{margin:12px;padding:11px;border-radius:14px;background:rgba(10,132,255,.08);border:1px solid rgba(10,132,255,.2);font-size:11px;color:#cfe4ff}
.physical-test-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:14px}
.physical-test-field{display:grid;gap:5px}
.physical-test-field.full{grid-column:1/-1}
.physical-test-field label{font-size:11px;color:var(--muted);text-transform:uppercase}
.physical-test-field input,.physical-test-field textarea{width:100%;padding:11px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);color:var(--text)}
.physical-test-field textarea{min-height:70px;resize:vertical}
.physical-test-field small{color:var(--muted);font-size:10px}
.physical-test-info{margin-top:5px;padding:9px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);font-size:10px;color:var(--muted)}
.tests-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.physical-record-banner{display:none;padding:13px;border-radius:16px;background:rgba(255,204,0,.14);border:1px solid rgba(255,204,0,.3);color:#ffdc6a;font-weight:900;text-align:center}
.physical-record-banner.show{display:block}
.physical-records-list{display:grid;gap:8px}
.physical-record-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}
.physical-record-row small{display:block;color:var(--muted);margin-top:4px}
.physical-record-row strong:last-child{text-align:right}
.progress-chart-tabs,.history-filter-tabs{display:flex;gap:8px;overflow:auto;scrollbar-width:none}
.progress-chart-tabs::-webkit-scrollbar,.history-filter-tabs::-webkit-scrollbar{display:none}
.progress-chart-tabs button,.history-filter-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:12px;padding:8px 11px;background:var(--surface);color:var(--muted);font-weight:800}
.progress-chart-tabs button.active,.history-filter-tabs button.active{background:var(--text);color:var(--bg)}
.progress-chart-card{padding:14px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}
.progress-chart-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}
.progress-chart-head strong{display:block;font-size:17px}
.progress-chart-head span{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.progress-chart-card svg{width:100%;height:250px}
.best-week-panel{padding:15px;border-radius:20px;background:linear-gradient(145deg,rgba(255,204,0,.13),rgba(255,255,255,.03));border:1px solid rgba(255,204,0,.25)}
.best-week-panel span{font-size:10px;color:#ffdc6a;font-weight:900;letter-spacing:.5px}
.best-week-panel strong{display:block;font-size:26px;margin-top:5px}
.best-week-panel p{margin:5px 0 0;color:var(--muted);font-size:12px}
.complete-history-timeline{display:grid;gap:10px}
.history-day-card{padding:13px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}
.history-day-head{display:flex;justify-content:space-between;gap:12px}
.history-day-head strong{font-size:15px}
.history-day-head span{font-size:11px;color:var(--muted)}
.history-entry-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.history-entry-row:last-child{border-bottom:0}
.history-entry-row small{display:block;color:var(--muted);margin-top:3px}
.history-entry-value{text-align:right;font-weight:900;font-size:12px}
.history-empty{padding:16px;border-radius:16px;border:1px dashed var(--line);color:var(--muted);text-align:center}
@media(min-width:760px){
  .tests-overview-grid,.tests-comparison-grid,.progress-kpi-grid{grid-template-columns:repeat(4,1fr)}
  .progress-stats-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:560px){
  .tests-selector-row,.tests-actions{grid-template-columns:1fr}
  .physical-test-fields{grid-template-columns:1fr}
  .physical-test-field.full{grid-column:1}
}
