[v-cloak] { display: none; }

body {
  margin: 0;
  background: #f5f7fa;
  font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
}

/* 登录/注册 */
.auth-wrap {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #e0eafc 0%, #cfdef3 100%);
}
.auth-card { width: 380px; padding: 8px 12px 16px; }
.auth-title { text-align: center; margin: 8px 0 20px; color: #303133; }
.auth-btn { width: 100%; margin-top: 4px; }
.auth-switch { text-align: center; margin-top: 14px; color: #909399; font-size: 13px; }

/* 主布局 */
.main-layout { min-height: 100vh; }
.main-header {
  background: #fff;
  border-bottom: 1px solid #e4e7ed;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.logo { font-size: 18px; font-weight: 600; color: #303133; }
.header-right { display: flex; align-items: center; gap: 12px; }
.username { color: #606266; }

.el-aside { background: #fff; border-right: 1px solid #e4e7ed; min-height: calc(100vh - 60px); }
.el-menu { border-right: none; }

.toolbar { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
.search-input { width: 240px; }
.tip { color: #909399; font-size: 13px; }
.pager { margin-top: 16px; justify-content: flex-end; }
.pwd-panel { max-width: 460px; background: #fff; padding: 24px 24px 8px; border-radius: 6px; }
.code { font-family: Consolas, Monaco, monospace; margin-right: 6px; }
