/* 全新网盘系统 - 前台样式 */
body { font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif; background: #f5f7fa; }
.avatar-sm { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; }
.main-container { max-width: 1100px; }
.file-list .file-item { transition: all .15s; }
.file-list .file-item:hover { box-shadow: 0 2px 12px rgba(0,0,0,.08); transform: translateY(-1px); }
.file-icon { width: 48px; height: 48px; border-radius: 8px; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 22px; }
.file-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
.file-card { background: #fff; border-radius: 8px; overflow: hidden; transition: all .15s; cursor: pointer; }
.file-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.1); }
.file-card .thumb { height: 140px; background: #f0f0f0; display: flex; align-items: center; justify-content: center; font-size: 48px; }
.file-card .info { padding: 10px; }
.file-card .info h6 { margin: 0 0 4px; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plaza-tabs .nav-link { color: #555; }
.plaza-tabs .nav-link.active { color: #28a745; border-bottom-color: #28a745; }
.rank-item { display: flex; align-items: center; padding: 10px; border-bottom: 1px solid #f0f0f0; }
.rank-no { width: 40px; text-align: center; font-weight: bold; font-size: 18px; }
.rank-no.top1 { color: #ffd700; } .rank-no.top2 { color: #c0c0c0; } .rank-no.top3 { color: #cd7f32; }
.dropzone { border: 2px dashed #ddd; border-radius: 8px; padding: 40px; text-align: center; cursor: pointer; transition: all .2s; }
.dropzone:hover, .dropzone.dragover { border-color: #28a745; background: #f0fff4; }
.upload-progress { height: 6px; background: #e9ecef; border-radius: 3px; margin-top: 8px; }
.upload-progress .bar { height: 100%; background: #28a745; border-radius: 3px; transition: width .2s; }
@media (max-width: 768px) { .file-grid { grid-template-columns: repeat(2, 1fr); } }
