.siri-dl-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    background: #fff;
    border: 1px solid #e9ecef;
    border-left: 4px solid #2c7be5;
    border-radius: 8px;
    padding: 16px 20px;
    margin: 16px 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.2s, transform 0.2s;
}
.siri-dl-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}
.siri-dl-card.siri-dl-error {
    border-left-color: #dc3545;
    color: #dc3545;
    padding: 12px 16px;
    background: #fff5f5;
    border-radius: 6px;
}
.siri-dl-card-head {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
}
.siri-dl-icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f1f3f5;
    object-fit: contain;
}
.siri-dl-icon-local {
    background: linear-gradient(135deg, #ffd43b, #fab005);
    color: #fff;
    font-weight: 700;
    font-size: 12px;
}
.siri-dl-card-title {
    flex: 1;
    min-width: 0;
}
.siri-dl-title {
    font-size: 15px;
    font-weight: 600;
    color: #212529;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.siri-dl-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 12px;
    color: #6c757d;
}
.siri-dl-meta > span {
    display: inline-flex;
    align-items: center;
}
.siri-dl-meta > span::before {
    content: "";
    display: inline-block;
    width: 3px;
    height: 3px;
    background: #adb5bd;
    border-radius: 50%;
    margin-right: 6px;
}
.siri-dl-meta > span:first-child::before {
    display: none;
}
.siri-dl-btn {
    background: linear-gradient(135deg, #2c7be5, #1971c2);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 8px 20px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s, transform 0.15s;
    white-space: nowrap;
    flex-shrink: 0;
}
.siri-dl-btn:hover:not(:disabled) {
    background: linear-gradient(135deg, #1971c2, #1864ab);
    transform: translateY(-1px);
}
.siri-dl-btn:active:not(:disabled) {
    transform: translateY(0);
}
.siri-dl-btn:disabled {
    background: #adb5bd;
    cursor: not-allowed;
    opacity: 0.8;
}
@media (max-width: 576px) {
    .siri-dl-card {
        flex-direction: column;
        align-items: stretch;
        padding: 14px;
    }
    .siri-dl-btn {
        width: 100%;
        text-align: center;
    }
    .siri-dl-title {
        white-space: normal;
    }
}

.siri-dl-perm {
    display: inline-flex !important;
    align-items: center;
    padding: 1px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.4;
}
.siri-dl-perm::before {
    display: none !important;
}
.siri-dl-perm-login {
    background: #e7f5ff;
    color: #1971c2;
}
.siri-dl-perm-comment {
    background: #fff4e6;
    color: #d9480f;
}
.siri-dl-perm-points {
    background: #f0fdf4;
    color: #166534;
}

/* --- 音乐试听 --- */
.siri-dl-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.siri-dl-icon-audio{background:linear-gradient(135deg,#2c7be5,#1971c2);color:#fff;font-size:16px}
.siri-dl-btn-preview{background:#fff;color:#2c7be5;border:1px solid #2c7be5;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:5px}
.siri-dl-btn-preview:hover:not(:disabled){background:#e7f1ff}
.siri-dl-btn-preview:disabled{opacity:.6;cursor:wait}
.siri-dl-btn-preview.siri-dl-preview-active{background:#2c7be5;color:#fff}
.siri-dl-preview-note{font-size:12px;line-height:1}
.siri-dl-audio-row{display:flex;align-items:center;gap:12px;margin-top:-4px;padding:10px 14px;border:1px dashed rgba(44,123,229,.4);border-radius:8px;background:#fff;width:100%;box-sizing:border-box}
.siri-dl-audio-row audio{flex:1;min-width:0;height:36px}
.siri-dl-audio-note{font-size:12px;color:#2c7be5;white-space:nowrap;flex-shrink:0}
@media (max-width:576px){
    .siri-dl-card-actions{width:100%}
    .siri-dl-card-actions .siri-dl-btn{flex:1;width:auto}
    .siri-dl-card-actions .siri-dl-btn-preview{flex:1;justify-content:center}
    .siri-dl-audio-row{flex-direction:column;align-items:stretch;gap:6px}
    .siri-dl-audio-note{text-align:center}
}

/* --- MIDI 合成试听 --- */
.siri-dl-midi-row .siri-dl-midi-icon{font-size:16px;flex-shrink:0;line-height:1}
.siri-dl-midi-row .siri-dl-midi-progress{flex:1;min-width:0;height:6px;border-radius:3px;background:rgba(44,123,229,.15);overflow:hidden}
.siri-dl-midi-row .siri-dl-midi-progress i{display:block;height:100%;width:0;background:#2c7be5;border-radius:3px;transition:width .2s linear}
.siri-dl-midi-row .siri-dl-midi-time{font-size:12px;color:#2c7be5;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}
