#app,body,html{height:100%;margin:0;padding:0}#app{min-height:100vh}:root{--color-primary:#2563eb;--color-primary-light:#3b82f6;--color-primary-soft:#eff6ff;--color-primary-hover:#1d4ed8;--color-bg:#f5f5f5;--color-bg-elevated:#fff;--color-border:#e8e8e8;--color-border-light:#f0f0f0;--color-text:#333;--color-text-secondary:#666;--color-text-muted:#999;--color-sidebar:#001529;--color-sidebar-hover:hsla(0,0%,100%,.08);--color-sidebar-active:#1890ff;--radius-sm:2px;--radius-md:2px;--radius-lg:0;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Microsoft YaHei","微软雅黑",sans-serif}*{box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}.admin-list,.admin-page,.article-list,.banner-list,.case-list,.category-list,.config-list,.contact-message-list,.dashboard,.file-list,.memorial-list,.menu-list,.order-list,.page,.permission-list,.plan-list,.product-showcase-list,.role-list,.service-item-list,.tribute-list,.user-list{background:var(--color-bg-elevated);border-radius:4px;padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.03);border:1px solid var(--color-border);min-height:calc(100vh - 128px)}.table-card{margin-bottom:0;border:1px solid var(--color-border-light);border-radius:4px}.table-card .el-card__body{padding:0}.table-card .el-table{margin-bottom:0;border:none;border-radius:0}.el-page-header{margin-bottom:24px;padding:0 0 16px;border-bottom:1px solid var(--color-border);display:flex;align-items:center}.el-page-header__left{display:none!important}.el-page-header__content{font-size:20px;font-weight:600;color:var(--color-text);padding:0}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px;background:#fafafa;border-radius:0;border:1px solid var(--color-border-light)}.toolbar .el-input,.toolbar .el-select{width:auto;min-width:160px}.toolbar .el-input{width:280px}.toolbar .ml-2,.toolbar .mr-2{margin-right:0;margin-left:0}.mb-4{margin-bottom:16px}.mr-1{margin-right:4px}.el-table{width:100%!important;margin-bottom:16px;border-radius:0;overflow:hidden;--el-table-border-color:var(--color-border);--el-table-header-bg-color:#fafafa;--el-table-row-hover-bg-color:#f5f5f5}.el-table th.el-table__cell{background-color:#fafafa!important;color:var(--color-text)!important;font-weight:600!important;font-size:13px!important;padding:14px 16px!important;border-bottom:1px solid var(--color-border)!important}.el-table td.el-table__cell{padding:14px 16px!important;font-size:14px;color:var(--color-text)}.el-table td.el-table__cell .cell:has(.el-switch),.el-table td.el-table__cell .cell:has(.el-tag),.el-table td.el-table__cell.col-fit .cell{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}.el-table td.el-table__cell.col-fit{text-align:center}.el-table .col-actions .cell{white-space:nowrap}.el-table .col-actions .el-button+.el-button{margin-left:4px}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background-color:#fafafa!important}.el-table__row:hover>td.el-table__cell{background-color:#f5f5f5!important}.el-table .el-button.is-text{padding:4px 8px;font-size:13px}.pagination{display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-light)}.el-pagination{font-weight:400}.el-pagination.is-background .el-pager li:not(.disabled).active{background-color:var(--color-primary)!important;color:#fff!important}.el-pagination.is-background .el-pager li:hover{color:var(--color-primary)!important}.el-button{border-radius:var(--radius-sm);font-weight:400;transition:background-color .2s,border-color .2s,color .2s}.el-button--primary{--el-button-bg-color:var(--color-primary);--el-button-border-color:var(--color-primary);--el-button-hover-bg-color:var(--color-primary-hover);--el-button-hover-border-color:var(--color-primary-hover)}.el-button--danger:hover,.el-button--primary:hover,.el-button--success:hover,.el-button--warning:hover{transform:none;box-shadow:none}.el-input__wrapper{border-radius:var(--radius-sm);box-shadow:0 0 0 1px var(--color-border) inset;transition:box-shadow .2s}.el-input__wrapper:hover{box-shadow:inset 0 0 0 1px #bbb}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--color-primary) inset}.el-select .el-input__wrapper{border-radius:var(--radius-sm)}.el-card{border-radius:0;border:1px solid var(--color-border);--el-card-padding:20px}.el-card,.el-card:hover,.el-dialog{box-shadow:none}.el-dialog{border-radius:0;border:1px solid var(--color-border);overflow:hidden}.el-dialog__header{padding:16px 20px;border-bottom:1px solid var(--color-border);margin-right:0}.el-dialog__title{font-size:16px;font-weight:600;color:var(--color-text)}.el-dialog__body{padding:20px}.el-dialog__footer{padding:12px 20px;border-top:1px solid var(--color-border)}.el-dialog.form-editor-dialog,.el-dialog.form-editor-dialog .el-dialog__body{overflow:visible}.el-tag{border-radius:var(--radius-sm);font-weight:400}.el-dropdown-menu{border-radius:0;box-shadow:none;border:1px solid var(--color-border);padding:4px 0}.el-dropdown-menu__item{border-radius:0;padding:10px 16px}.el-dropdown-menu__item:hover{background-color:#f5f5f5;color:var(--color-text)}.el-form-item__label{font-weight:400;color:var(--color-text)}.el-tabs__header{margin-bottom:16px}.el-tabs__item{font-weight:400;color:var(--color-text-secondary)}.el-tabs__item.is-active{color:var(--color-primary);font-weight:600}.el-tabs__active-bar{background-color:var(--color-primary);height:2px}.el-empty__description p{color:var(--color-text-muted)}@media(max-width:768px){.admin-list,.file-list,.menu-list,.page,.role-list,.user-list{padding:16px}.toolbar{flex-direction:column;align-items:stretch}.toolbar .el-input{width:100%}.pagination{justify-content:center}}.file-picker[data-v-46460957]{min-height:500px}.picker-layout[data-v-46460957]{display:flex;gap:16px;height:600px}.category-sidebar[data-v-46460957]{width:200px;border:1px solid #e4e7ed;border-radius:4px;background:#fff;overflow-y:auto}.category-header[data-v-46460957]{padding:12px 16px;font-weight:600;color:#303133;border-bottom:1px solid #e4e7ed;background:#f5f7fa}.category-item[data-v-46460957]{padding:12px 16px;cursor:pointer;transition:all .3s;border-bottom:1px solid #f5f7fa}.category-item[data-v-46460957]:hover{background:#f5f7fa;color:#409eff}.category-item.active[data-v-46460957]{background:#ecf5ff;color:#409eff;font-weight:500}.content-area[data-v-46460957]{flex:1;min-height:0;display:flex;flex-direction:column}.toolbar[data-v-46460957]{display:flex;align-items:center;gap:12px;padding:16px;background:#f5f7fa;border-radius:4px}.mb-3[data-v-46460957]{margin-bottom:12px}.mb-4[data-v-46460957]{margin-bottom:16px}.mr-1[data-v-46460957]{margin-right:4px}.file-list[data-v-46460957]{flex:1;min-height:280px;max-height:420px;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:16px;overflow-y:auto;border:1px solid #e4e7ed;border-radius:4px;background:#fff}.file-item[data-v-46460957]{cursor:pointer;border:2px solid transparent;border-radius:4px;overflow:hidden;transition:all .3s;background:#fff;display:flex;flex-direction:column}.file-item[data-v-46460957]:hover{border-color:#409eff;box-shadow:0 2px 8px rgba(64,158,255,.2)}.file-item.selected[data-v-46460957]{border-color:#409eff;box-shadow:0 2px 12px rgba(64,158,255,.4)}.file-preview[data-v-46460957]{position:relative;width:100%;height:100px;background:#f5f7fa;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}.file-icon[data-v-46460957],.selected-mask[data-v-46460957]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.selected-mask[data-v-46460957]{position:absolute;top:0;left:0;max-width:100%;max-height:100%;background:rgba(64,158,255,.4);z-index:10;pointer-events:none;box-sizing:border-box}.file-name[data-v-46460957]{padding:2px;font-size:12px;color:#606266;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#fff;border-top:1px solid #f5f7fa}.file-type[data-v-46460957]{padding:2px;font-size:12px;color:#909399;text-align:center;background:#fafafa}.empty-tip[data-v-46460957]{grid-column:1/-1;padding:40px}.pagination[data-v-46460957]{margin-top:16px;text-align:right;flex-shrink:0}.picker-footer[data-v-46460957]{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}.picker-footer__selected[data-v-46460957]{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.picker-footer__icon[data-v-46460957],.picker-footer__thumb[data-v-46460957]{width:48px;height:48px;border-radius:4px;flex-shrink:0}.picker-footer__icon[data-v-46460957]{background:#f5f7fa;display:flex;align-items:center;justify-content:center;color:#909399}.picker-footer__meta[data-v-46460957]{min-width:0}.picker-footer__name[data-v-46460957]{font-size:14px;color:#303133;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-footer__type[data-v-46460957]{font-size:12px;color:#909399;margin-top:2px}.picker-footer__hint[data-v-46460957]{flex:1;font-size:13px;color:#909399}.picker-footer__actions[data-v-46460957]{display:flex;gap:8px;flex-shrink:0}.rich-text-editor[data-v-7211807a]{width:100%;border:1px solid var(--color-border,#e8e8e8);border-radius:2px;overflow:visible;position:relative;z-index:1}.rich-text-editor__toolbar[data-v-7211807a]{border-bottom:1px solid var(--color-border-light,#f0f0f0);position:relative;z-index:2}.rich-text-editor__body[data-v-7211807a]{overflow:hidden}.rich-text-editor.is-disabled[data-v-7211807a]{opacity:.75}.rich-text-editor .w-e-bar,.rich-text-editor .w-e-bar-show,.rich-text-editor .w-e-drop-panel,.rich-text-editor .w-e-panel-container,.rich-text-editor .w-e-select-list{z-index:4000!important}.image-field__preview[data-v-5aa43d03]{display:flex;align-items:flex-start;gap:12px}.image-field__img[data-v-5aa43d03]{width:160px;height:100px;border-radius:4px;border:1px solid var(--color-border,#e8e8e8);overflow:hidden}.image-field__actions[data-v-5aa43d03]{display:flex;flex-direction:column;gap:8px}.image-field__empty[data-v-5aa43d03]{display:flex;align-items:center;gap:12px}.image-field__hint[data-v-5aa43d03]{font-size:12px;color:#909399}