/* P0015 v001: riquadro di avanzamento della pagina di attesa (fasi reali, tempo trascorso, tempi tipici). */
.download-card .repair-progress{margin:14px 0 4px}
.repair-steps{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.repair-steps li{position:relative;padding-top:13px;font-size:12px;font-weight:700;line-height:1.25;color:var(--muted)}
.repair-steps li::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;border-radius:999px;background:#e1e5e2}
.repair-steps li.done{color:var(--sea)}
.repair-steps li.done::before{background:var(--sea)}
.repair-steps li.current{color:var(--ink)}
.repair-steps li.current::before{background:linear-gradient(90deg,var(--sea),var(--accent))}
.repair-activity{height:4px;border-radius:999px;background:#e1e5e2;overflow:hidden;margin:0 0 12px}
.repair-activity span{display:block;width:30%;height:100%;border-radius:999px;background:var(--accent);animation:fr-p0015-slide 1.6s ease-in-out infinite}
@keyframes fr-p0015-slide{0%{transform:translateX(-100%)}100%{transform:translateX(340%)}}
.download-card .repair-progress p{margin:0 0 6px}
.download-card .repair-progress .repair-elapsed{color:var(--ink);font-weight:800;font-size:15px;font-variant-numeric:tabular-nums}
.download-card .repair-progress .repair-hint{font-size:13px}
@media(max-width:480px){.repair-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}}
@media(prefers-reduced-motion:reduce){.repair-activity span{animation:none;width:100%;opacity:.35}}
