@import "./base.css"; #app { width: 100%; } a { color: var(--green-700); text-decoration: none; } a:hover { color: var(--green-800); } .page-title { margin: 0; font-size: clamp(24px, 3vw, 34px); line-height: 1.2; letter-spacing: 0.4px; } .page-subtitle { margin: 10px 0 0; color: var(--text-secondary); font-size: 15px; } .surface-card { background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid var(--border-soft); border-radius: 18px; box-shadow: var(--shadow-soft); } /* 按钮操作区统一规范:窄屏下操作按钮纵向全宽 */ .action-row .el-button, .edit-actions .el-button, .fragment-edit-actions .el-button { margin: 0; } @media (max-width: 768px) { .action-row, .edit-actions, .fragment-edit-actions { flex-direction: column; } .action-row .el-button, .edit-actions .el-button, .fragment-edit-actions .el-button { width: 100%; } } /* 移动端弹窗适配:覆盖 Element Plus 内联宽度并约束 footer */ @media (max-width: 768px) { .el-dialog { --el-dialog-width: calc(100% - 24px) !important; --el-dialog-margin-top: 5vh; max-height: calc(100vh - 60px); } .el-dialog__body { max-height: calc(100vh - 200px); overflow-y: auto; } .el-dialog__footer { display: flex; flex-wrap: wrap; gap: 8px; } .el-dialog__footer .el-button { flex: 1; margin-left: 0; } .el-message-box { max-width: calc(100% - 24px); } .el-message-box__btns { display: flex; flex-wrap: wrap; gap: 8px; } .el-message-box__btns .el-button { flex: 1; margin-left: 0; } } .fade-up-enter-active, .fade-up-leave-active { transition: opacity 0.22s ease, transform 0.22s ease; } .fade-up-enter-from, .fade-up-leave-to { opacity: 0; transform: translateY(8px); }