.ps-feature-downloads { min-width: 0; padding: 1rem; }
.ps-feature-downloads__header { display: flex; align-items: center; gap: .7rem; margin-bottom: 1.15rem; }
.ps-feature-downloads__icon { display: grid; flex: 0 0 auto; place-items: center; width: 2.35rem; height: 2.35rem; border-radius: .75rem; color: var(--ps-primary); background: color-mix(in srgb, var(--ps-primary) 12%, transparent); }
.ps-feature-downloads__icon svg { width: 1.3rem; height: 1.3rem; }
.ps-feature-downloads__header > div { flex: 1; min-width: 0; }
.ps-feature-downloads__header h2 { margin: 0; font-size: .95rem; line-height: 1.4; color: var(--ps-text-primary); }
.ps-feature-downloads__header p { margin: .2rem 0 0; color: var(--ps-text-secondary); font-size: .74rem; line-height: 1.5; }
.ps-feature-downloads__toggle { flex: 0 0 auto; min-height: 2.5rem; padding: .45rem .8rem; border: 1px solid var(--ps-border); border-radius: .65rem; color: var(--ps-text-primary); background: var(--ps-bg-base); font-size: .78rem; font-weight: 700; cursor: pointer; }
.ps-feature-downloads__toggle:hover:not(:disabled) { border-color: var(--ps-primary); }
.ps-feature-downloads__toggle:focus-visible { outline: 2px solid var(--ps-primary); outline-offset: 3px; }
.ps-feature-downloads__toggle:disabled { cursor: default; opacity: .65; }
.ps-feature-downloads__summary { display: flex; justify-content: space-between; gap: .75rem; color: var(--ps-text-secondary); font-size: .78rem; font-variant-numeric: tabular-nums; }
.ps-feature-downloads__summary strong { color: var(--ps-text-primary); }
.ps-feature-downloads__progress { display: block; width: 100%; height: .45rem; margin: .65rem 0 .7rem; overflow: hidden; border: 0; border-radius: 999px; background: var(--ps-bg-hover, #e5e7eb); accent-color: var(--ps-primary); }
.ps-feature-downloads__progress::-webkit-progress-bar { border-radius: 999px; background: var(--ps-bg-hover, #e5e7eb); }
.ps-feature-downloads__progress::-webkit-progress-value { border-radius: 999px; background: var(--ps-primary); transition: width .2s ease; }
.ps-feature-downloads__progress::-moz-progress-bar { border-radius: 999px; background: var(--ps-primary); }
.ps-feature-downloads__details { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; color: var(--ps-text-secondary); font-size: .73rem; line-height: 1.5; }
.ps-feature-downloads__details p { margin: 0; }
.ps-feature-downloads__details > span { flex: 0 0 auto; color: var(--ps-text-primary); font-variant-numeric: tabular-nums; }
.ps-feature-downloads__current { display: grid; gap: .2rem; padding: .65rem .75rem; margin-top: .75rem; border-radius: .6rem; background: var(--ps-bg-base); font-size: .68rem; line-height: 1.5; }
.ps-feature-downloads__current > :first-child { color: var(--ps-text-secondary); }
.ps-feature-downloads__current > :last-child { overflow-wrap: anywhere; color: var(--ps-text-primary); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.ps-feature-downloads__scope { margin: .75rem 0 0; color: var(--ps-text-secondary); font-size: .65rem; line-height: 1.6; }
.ps-feature-downloads__error { margin: .6rem 0 0; color: var(--ps-text-danger, #b54736); font-size: .73rem; line-height: 1.5; overflow-wrap: anywhere; }
.ps-feature-downloads [hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) { .ps-feature-downloads__progress::-webkit-progress-value { transition: none; } }
