/* smit-progress.css — единый прогресс-бар (SmitProgress).
   Дорожка + заливка с порогом-цветом (ok<75 / warn<90 / err) + опц. метка и %.
   До этого пороговые бары верстали по-своему (ip-pool-bar, gauge-bar, NAS online). */
.smit-prog {
  display: inline-block; width: 100%; height: 14px;
  background: #e9ecef; border-radius: var(--radius-sm); overflow: hidden;
  vertical-align: middle; position: relative;
}
.smit-prog-fill {
  display: block; height: 100%; border-radius: var(--radius-sm);
  background: #6c757d; transition: width .3s ease;
}
.smit-prog-fill.ok   { background: #198754; }
.smit-prog-fill.warn { background: #fd7e14; }
.smit-prog-fill.err  { background: #dc3545; }
.smit-prog-fill.info { background: #3b82f6; }

/* размеры */
.smit-prog.sm { height: 6px; }
.smit-prog.lg { height: 20px; }

/* полосатый/анимированный (прогресс операции: бэкап, импорт) */
.smit-prog-fill.striped {
  background-image: linear-gradient(45deg, rgba(255,255,255,.18) 25%, transparent 25%,
    transparent 50%, rgba(255,255,255,.18) 50%, rgba(255,255,255,.18) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}
.smit-prog-fill.animated { animation: smit-prog-move 1s linear infinite; }
@keyframes smit-prog-move { from { background-position: 1rem 0; } to { background-position: 0 0; } }

/* строка-гейдж: метка + дорожка + % (как gauge в welcome) */
.smit-prog-row { display: flex; align-items: center; gap: .5rem; }
.smit-prog-row .smit-prog-label { font-size: .78rem; color: #6c757d; flex: 0 0 auto; }
.smit-prog-row .smit-prog { flex: 1 1 auto; }
.smit-prog-row .smit-prog-pct { font-size: .78rem; font-weight: 600; flex: 0 0 auto; text-align: right; min-width: 36px; }

/* ── тёмная тема ── */
[data-bs-theme="dark"] .smit-prog, .dark-theme .smit-prog { background: #2a2f37; }
[data-bs-theme="dark"] .smit-prog-row .smit-prog-label, .dark-theme .smit-prog-row .smit-prog-label,
[data-bs-theme="dark"] .smit-prog-row .smit-prog-pct, .dark-theme .smit-prog-row .smit-prog-pct { color: #9aa6b2; }

@media (prefers-reduced-motion: reduce) {
  .smit-prog-fill { transition: none; }
  .smit-prog-fill.animated { animation: none; }
}
