.page-header[data-v-7336cfd4]{margin-bottom:24px;padding:24px;background:linear-gradient(135deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.7));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;border:1px solid hsla(0,0%,100%,.3);box-shadow:0 8px 32px rgba(0,0,0,.1)}.page-header .page-header-content[data-v-7336cfd4]{display:flex;align-items:center;gap:16px}.page-header .page-header-icon[data-v-7336cfd4]{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.15)}.page-header .page-header-icon-primary[data-v-7336cfd4]{background:linear-gradient(135deg,#409eff,#73b9ff)}.page-header .page-header-icon-success[data-v-7336cfd4]{background:linear-gradient(135deg,#67c23a,#85d47a)}.page-header .page-header-icon-warning[data-v-7336cfd4]{background:linear-gradient(135deg,#e6a23c,#eebe77)}.page-header .page-header-icon-danger[data-v-7336cfd4]{background:linear-gradient(135deg,#f56c6c,#f78989)}.page-header .page-header-icon-info[data-v-7336cfd4]{background:linear-gradient(135deg,#909399,#b1b3b8)}.page-header .page-header-text[data-v-7336cfd4]{flex:1}.page-header .page-header-text .page-title[data-v-7336cfd4]{margin:0 0 4px 0;font-size:24px;font-weight:600;color:#303133;line-height:1.2}.page-header .page-header-text .page-description[data-v-7336cfd4]{margin:0;font-size:14px;color:#606266;line-height:1.4}.app-container[data-v-f89b4e90]{padding:20px;box-sizing:border-box;min-height:100%}.filter-container-card[data-v-f89b4e90]{margin-bottom:20px}.filter-container[data-v-f89b4e90]{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filter-item[data-v-f89b4e90]{width:200px}.filter-button[data-v-f89b4e90]{margin-left:0}.photo-card[data-v-f89b4e90]{margin-bottom:20px}.photo-container[data-v-f89b4e90]{min-height:300px}.photo-grid[data-v-f89b4e90]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.photo-item[data-v-f89b4e90]{position:relative;border:2px solid #eee;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s;background:#fff}.photo-item[data-v-f89b4e90]:hover{border-color:#409eff;box-shadow:0 4px 12px rgba(0,0,0,.1)}.photo-item.selected[data-v-f89b4e90]{border-color:#409eff;background:#ecf5ff}.photo-checkbox[data-v-f89b4e90]{position:absolute;top:8px;left:8px;z-index:10}.photo-wrapper[data-v-f89b4e90]{width:100%;height:150px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f5f5f5}.photo-image[data-v-f89b4e90]{max-width:100%;max-height:100%;-o-object-fit:cover;object-fit:cover}.photo-info[data-v-f89b4e90]{padding:10px}.photo-name[data-v-f89b4e90]{font-size:14px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.photo-meta[data-v-f89b4e90]{display:flex;justify-content:space-between;font-size:12px;color:#999;margin-bottom:5px}.photo-training[data-v-f89b4e90]{color:#409eff}.photo-time[data-v-f89b4e90]{font-size:12px;color:#999}.photo-actions[data-v-f89b4e90]{position:absolute;top:8px;right:8px;display:flex;gap:5px;opacity:0;transition:opacity .3s}.photo-item:hover .photo-actions[data-v-f89b4e90]{opacity:1}.pagination-container[data-v-f89b4e90]{margin-top:20px;display:flex;justify-content:flex-end}.upload-demo[data-v-f89b4e90]{width:100%}.preview-dialog .el-dialog{background:#1a1a1a;border-radius:12px;overflow:hidden}.preview-dialog .el-dialog__header{background:#2c3e50;padding:15px 20px;border-bottom:1px solid #333}.preview-dialog .el-dialog__title{color:#fff;font-size:16px;font-weight:500}.preview-dialog .el-dialog__headerbtn{top:10px}.preview-dialog .el-dialog__headerbtn .el-dialog__close{color:#fff}.preview-dialog .el-dialog__headerbtn .el-dialog__close:hover{color:#409eff}.preview-dialog .el-dialog__body{background:#1a1a1a;padding:20px;min-height:60vh;max-height:80vh}.preview-container{display:flex;justify-content:center;align-items:center;width:100%;min-height:50vh;background:#1a1a1a}.preview-image{display:block;max-width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain}.preview-header{text-align:center;padding:10px 20px;background:#1a1a1a;border-bottom:1px solid #333}.preview-filename{color:#fff;font-size:14px;font-weight:500}