/* Redesigned /downloads overview page */

.downloads-page .navbar-container {
    max-width: 1200px;
    margin: 0 auto;
    height: 100%;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.downloads-page .nav-logo {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--text) !important;
    text-decoration: none !important;
    font-size: 1.9rem;
    font-weight: 700;
}

.downloads-page .nav-logo img {
    width: auto;
    height: 30px;
}

.downloads-page .nav-links {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 8px;
}

.downloads-page .nav-links a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    text-decoration: none !important;
}

.downloads-page .container {
    max-width: 1240px !important;
    margin: 104px auto 56px !important;
    padding: 0 24px 24px !important;
}

.downloads-page .page-header {
    position: relative;
    margin-bottom: 18px !important;
    padding: 26px 28px !important;
    border-radius: 26px !important;
    border: 1px solid var(--border) !important;
    background:
        radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--primary) 15%, transparent), transparent 40%),
        radial-gradient(circle at 92% 14%, color-mix(in srgb, var(--success) 14%, transparent), transparent 42%),
        var(--surface) !important;
    box-shadow: var(--shadow-soft) !important;
    overflow: hidden;
}

.downloads-page .page-header::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--border), transparent);
}

.downloads-page .page-header h1 {
    margin: 0 !important;
    color: var(--text) !important;
    font-size: clamp(32px, 4.4vw, 44px) !important;
    line-height: 1.1;
    letter-spacing: -0.024em;
}

.downloads-page .page-header p {
    margin-top: 10px !important;
    color: var(--text-2) !important;
    font-size: 1.03rem !important;
}

.downloads-page .download-grid {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 16px !important;
}

.downloads-page .download-section {
    grid-column: span 4;
    margin: 0 !important;
    padding: 18px !important;
    border-radius: 22px !important;
    border: 1px solid var(--border) !important;
    background: var(--surface) !important;
    box-shadow: var(--shadow-soft) !important;
}

.downloads-page .section-header {
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px dashed color-mix(in srgb, var(--border) 80%, transparent);
}

.downloads-page .section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px !important;
    color: var(--text) !important;
    font-size: 1.06rem !important;
    font-weight: 680 !important;
}

.downloads-page .section-desc {
    color: var(--text-3) !important;
    font-size: 0.86rem !important;
}

.downloads-page .download-item {
    position: relative;
    margin-bottom: 9px !important;
    padding: 12px !important;
    border-radius: 14px !important;
    border: 1px solid color-mix(in srgb, var(--border) 78%, transparent) !important;
    background: var(--surface-muted) !important;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.downloads-page .download-item:last-child {
    margin-bottom: 0 !important;
}

.downloads-page .download-item:not(.disabled):hover {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--primary) 40%, var(--border)) !important;
    box-shadow: 0 10px 24px color-mix(in srgb, var(--primary) 16%, transparent);
}

.downloads-page .item-left {
    min-width: 0;
    display: flex !important;
    align-items: center;
    gap: 10px;
}

.downloads-page .item-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 11px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: var(--app-icon-bg) !important;
    border: 1px solid var(--app-icon-border) !important;
    color: var(--app-icon-color) !important;
    flex: 0 0 auto;
}

.downloads-page .item-icon img {
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
    object-fit: cover;
}

.downloads-page .item-name {
    color: var(--text) !important;
    font-size: 0.98rem !important;
    font-weight: 620 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.downloads-page .item-meta {
    margin-top: 2px;
    color: var(--text-3) !important;
    font-size: 0.85rem !important;
}

.downloads-page .item-badge {
    margin-left: 6px;
    vertical-align: middle;
}

.downloads-page .item-btn {
    flex: 0 0 auto;
    min-width: 72px;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    border: 1px solid transparent !important;
    background: var(--primary) !important;
    color: #ffffff !important;
    font-size: 0.84rem !important;
    font-weight: 620 !important;
    text-align: center;
    text-decoration: none !important;
    box-shadow: none !important;
}

.downloads-page .item-btn:hover {
    background: var(--primary-hover) !important;
    color: #ffffff !important;
}

.downloads-page .download-item.disabled {
    opacity: 0.72;
}

.downloads-page .download-item.disabled .item-btn {
    background: color-mix(in srgb, var(--text-3) 18%, transparent) !important;
    color: var(--text-2) !important;
    border-color: color-mix(in srgb, var(--text-3) 26%, transparent) !important;
}

.downloads-page .back-link {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin-top: 18px !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    border: 1px solid var(--border) !important;
    background: var(--surface) !important;
    color: var(--text) !important;
    text-decoration: none !important;
    box-shadow: var(--shadow-soft) !important;
}

.downloads-page .back-link:hover {
    color: var(--primary) !important;
    border-color: color-mix(in srgb, var(--primary) 34%, var(--border)) !important;
}

@media (max-width: 1160px) {
    .downloads-page .download-section {
        grid-column: span 6;
    }
}

@media (max-width: 760px) {
    .downloads-page .navbar-container {
        padding: 0 14px;
    }

    .downloads-page .nav-logo {
        font-size: 1.5rem;
    }

    .downloads-page .nav-links {
        gap: 4px;
    }

    .downloads-page .nav-links a {
        padding: 0 10px;
    }

    .downloads-page .container {
        margin-top: 82px !important;
        padding: 0 14px 18px !important;
    }

    .downloads-page .page-header {
        padding: 20px !important;
        border-radius: 22px !important;
    }

    .downloads-page .download-section {
        grid-column: span 12;
        padding: 14px !important;
        border-radius: 18px !important;
    }

    .downloads-page .download-item {
        padding: 10px !important;
    }

    .downloads-page .item-name {
        max-width: 48vw;
    }
}

:root[data-theme="dark"] .downloads-page .page-header {
    border-color: rgba(148, 163, 184, 0.3) !important;
    background:
        radial-gradient(circle at 8% 14%, rgba(59, 130, 246, 0.2), transparent 44%),
        radial-gradient(circle at 92% 14%, rgba(14, 165, 233, 0.16), transparent 46%),
        linear-gradient(145deg, rgba(12, 20, 34, 0.95), rgba(19, 31, 52, 0.92)) !important;
}

:root[data-theme="dark"] .downloads-page .download-section {
    border-color: rgba(148, 163, 184, 0.26) !important;
    background: linear-gradient(155deg, rgba(13, 22, 38, 0.9), rgba(18, 30, 50, 0.86)) !important;
}

:root[data-theme="dark"] .downloads-page .download-item {
    background: rgba(30, 41, 59, 0.4) !important;
}
