.download-progress-dialog {
  box-sizing: border-box;
  position: fixed;
  inset: 0;
  margin: auto;
  width: min(460px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  overflow: auto;
  padding: 28px;
  border: 1px solid #3f3f46;
  border-radius: 20px;
  background: #18181b;
  color: #fafafa;
  font: inherit;
  box-shadow: 0 16px 64px rgba(0,0,0,.18);
}
.download-progress-dialog::backdrop { background: rgba(0,0,0,.65); }
.download-progress-package { margin-bottom: 10px; font-size: 11px; font-weight: 700; letter-spacing: .1em; color: #a1a1aa; }
.download-progress-dialog h2 { margin: 0 0 22px; color: inherit; font-size: 26px; line-height: 1.2; letter-spacing: -.03em; }
.download-progress-dialog h2:focus { outline: none; }
.download-progress-phase { margin: 0 0 18px; font-size: 14px; font-weight: 600; line-height: 1.5; }
.download-progress-count { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; color: #a1a1aa; font-variant-numeric: tabular-nums; }
.download-progress-track { height: 8px; margin-top: 10px; overflow: hidden; border-radius: 4px; background: #3f3f46; }
.download-progress-track > div { height: 100%; width: 0; border-radius: inherit; background: #86efac; }
#download-progress-reminder { margin: 22px 0; font-size: 13px; line-height: 1.6; color: #a1a1aa; }
.download-progress-dialog button { width: 100%; min-height: 44px; padding: 11px 16px; border: 1px solid #52525b; border-radius: 12px; background: transparent; color: inherit; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.download-progress-dialog button:active { transform: scale(.98); }
.download-progress-dialog button:focus-visible { outline: 3px solid #86efac; outline-offset: 3px; }
html[data-theme="light"] .download-progress-dialog { background: #fff; color: #18181b; border-color: #d4d4d8; }
html[data-theme="light"] .download-progress-package, html[data-theme="light"] .download-progress-count, html[data-theme="light"] #download-progress-reminder { color: #606069; }
html[data-theme="light"] .download-progress-track { background: #e4e4e7; }
html[data-theme="light"] .download-progress-track > div { background: #347e2a; }
html[data-theme="light"] .download-progress-dialog button { border-color: #d4d4d8; }
@media (hover: hover) and (pointer: fine) { .download-progress-dialog button:hover { background: rgba(128,128,128,.1); } }
@media (max-width: 480px) { .download-progress-dialog { padding: 24px; } .download-progress-dialog h2 { font-size: 24px; } }
@media (prefers-reduced-motion: no-preference) { .download-progress-dialog button { transition: transform 120ms ease, background-color 120ms ease; } }
