.download-library { padding-bottom: 80px; }
.download-filters { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 24px; padding: 24px; background: #f5f7f9; }
.download-filters label { display: grid; gap: 10px; color: #0b1c2c; font-size: 14px; }
.download-filters input, .download-filters select { width: 100%; min-width: 0; height: 48px; padding: 0 14px; border: 1px solid #dce1e6; border-radius: 0; background: #fff; color: #0b1c2c; font: inherit; }
.download-filters input:focus-visible, .download-filters select:focus-visible, .download-actions a:focus-visible { outline: 2px solid #165dff; outline-offset: 3px; }
.download-count { margin: 24px 0; color: #657282; font-size: 14px; }
.download-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.download-card { display: flex; flex-wrap: wrap; gap: 18px; align-items: flex-start; padding: 26px; background: #fff; border: 1px solid #e2e6ea; }
.download-card[hidden], .download-empty[hidden] { display: none !important; }
.download-file-icon { color: #165dff; font-size: 30px; line-height: 1.4; }
.download-card-copy { flex: 1; min-width: 0; }
.download-type { color: #657282; font-size: 12px; }
.download-card h3 { margin: 8px 0 12px; color: #0b1c2c; font-size: 19px; font-weight: 600; overflow-wrap: anywhere; }
.download-card p { margin: 0; color: #657282; font-size: 13px; }
.download-actions { width: 100%; display: flex; align-items: center; justify-content: flex-end; gap: 22px; margin-top: 6px; font-size: 14px; }
.download-actions a { color: #165dff; text-decoration: none; }
.download-actions .download-button { display: inline-flex; align-items: center; gap: 12px; padding: 12px 18px; background: #165dff; color: #fff; }
.download-empty { padding: 32px 0; color: #657282; }
@media (max-width: 700px) { .download-filters, .download-grid { grid-template-columns: 1fr; } .download-filters { gap: 16px; padding: 20px; } .download-card { padding: 22px; } .download-library { padding-bottom: 48px; } }
