.downloads-panel[hidden], [data-download-count][hidden], .sidebar-download-status[hidden], .download-transfers[hidden] { display: none !important; }
.downloads-panel { position: fixed; top: 16px; right: 16px; bottom: 16px; width: 410px; max-width: calc(100vw - 32px); z-index: 120; display: flex; flex-direction: column; background: #1b2118; color: #edf3e7; border: 1px solid #425335; border-radius: 16px; box-shadow: 0 20px 80px #0009; padding: 23px; }
.downloads-panel-header { display: flex; justify-content: space-between; align-items: center; gap: 15px; }
.downloads-panel-header h2 { font-size: 26px; letter-spacing: -.8px; margin-top: 9px; font-weight: 500; }
.downloads-panel-header .icon-button { font-size: 23px; }
.download-storage { color: #a4b695; font-size: 11px; padding: 19px 0; border-bottom: 1px solid #39472e; }
.download-transfers { font-size: 11px; line-height: 1.6; color: #c5e478; padding: 12px 0 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.download-jobs { flex: 1; min-height: 0; overflow-y: auto; padding: 17px 2px; overscroll-behavior: contain; }
.download-job { border: 1px solid #3c4c30; border-radius: 10px; padding: 15px; margin-bottom: 12px; background: #222b1b; }
.download-job-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 7px; }
.download-job h3 { font-size: 13px; font-weight: 550; overflow-wrap: anywhere; }
.download-job-status { font-size: 9px; color: #a4b88e; background: #303e24; border-radius: 4px; padding: 3px 6px; }
.download-job-status.running { color: #d4edac; }
.download-job-status.failed, .download-job-status.interrupted { color: #f3c17c; background: #493b25; }
.download-job-status.cancelled { color: #b2b4ad; }
.download-current { color: #a7ba93; font-size: 11px; margin: 12px 0; min-height: 17px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.download-progress-row { display: flex; align-items: center; gap: 9px; }
.download-progress-row progress { flex: 1; width: 100%; height: 5px; border: 0; border-radius: 5px; background: #39472c; overflow: hidden; accent-color: #c5e478; }
.download-progress-row progress::-webkit-progress-bar { background: #39472c; }
.download-progress-row progress::-webkit-progress-value { background: #c5e478; }
.download-progress-row progress::-moz-progress-bar { background: #c5e478; }
.download-progress-row > span { color: #c5e478; font-size: 10px; min-width: 28px; text-align: right; }
.download-job-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px; color: #849a70; font-size: 9px; margin-top: 10px; }
.download-error { color: #f0bb7c; font-size: 10px; margin-top: 10px; line-height: 1.7; overflow-wrap: anywhere; }
.download-job-actions:empty { display: none; }
.download-job-actions { margin-top: 12px; display: flex; gap: 10px; }
.download-job-actions button { border: 1px solid #587241; color: #c5e478; border-radius: 6px; padding: 6px 10px; font-size: 10px; }
.download-job-actions button:hover { background: #35482a; }
.downloads-panel-footer { color: #81996b; border-top: 1px solid #39472e; padding-top: 15px; font-size: 10px; line-height: 1.7; }
.downloads-empty { padding: 55px 10px; text-align: center; }
.downloads-empty > span { color: #c5e478; font-size: 35px; }
.downloads-empty h3 { font-size: 17px; font-weight: 500; margin: 12px 0; }
.downloads-empty p { font-size: 12px; color: #97ad81; line-height: 1.8; }
.sidebar-download-status { padding: 15px 12px; text-align: left; border: 1px solid #425335; border-radius: 8px; margin-top: 16px; color: #bfcea9; font-size: 10px; }
#sidebarDownloadName { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sidebar-download-track { display: block; height: 3px; border-radius: 3px; background: #36432b; margin-top: 9px; overflow: hidden; }
#sidebarDownloadProgress { display: block; background: #c5e478; height: 100%; width: 0; }
#downloadsNav [data-download-count] { font-size: 10px; color: #c5e478; }
#downloadsNav [data-download-count]:not([hidden]) { display: inline-flex; }
@media (max-width: 850px) { .sidebar-download-status { display: none; } #downloadsNav { position: relative; } #downloadsNav [data-download-count] { position: absolute; right: 0; top: 0; font-size: 8px; padding: 2px 4px; background: #354629; border-radius: 4px; } }
@media (max-width: 600px) { .downloads-panel { inset: 118px 8px 8px; width: auto; max-width: none; padding: 19px; border-radius: 13px; } .downloads-panel-header h2 { font-size: 23px; } .download-job { padding: 13px; } .download-jobs { padding-top: 13px; } }
