/**
 * Console Theme - Custom Overrides
 * 自定义样式覆盖（最后加载，优先级最高）
 * 
 * 注意：此文件用于覆盖默认样式和添加特定页面样式
 * 主要样式定义在 design-tokens.css, base.css, layout.css, components.css
 */

/* ========== WHMCS/Bootstrap 样式重置和覆盖 ========== */

/* 重置 WHMCS 默认布局，使用我们的布局系统 */
body.theme-console {
  padding: 0 !important;
  margin: 0 !important;
}

body.theme-console #header,
body.theme-console .header {
  display: none !important;
}

body.theme-console #main-body,
body.theme-console section#main-body {
  margin: 0 !important;
  padding: 0 !important;
}

body.theme-console .container {
  max-width: 100% !important;
  padding: 0 !important;
}

body.theme-console .row {
  margin: 0 !important;
}

body.theme-console .col-lg-4,
body.theme-console .col-lg-8,
body.theme-console .col-xl-3,
body.theme-console .col-xl-9,
body.theme-console .col-12 {
  padding: 0 !important;
}

/* 隐藏 WHMCS 默认侧边栏，使用我们的布局侧边栏 */
body.theme-console .sidebar:not(.layout-sidebar) {
  display: none !important;
}

body.theme-console .primary-content {
  margin: 0 !important;
  padding: 0 !important;
}

/* 修复导航栏样式冲突 */
body.theme-console .navbar {
  background: transparent !important;
  padding: 0 !important;
}

body.theme-console .navbar-nav {
  display: flex !important;
  flex-direction: row !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.theme-console .navbar-nav li {
  margin: 0 !important;
  padding: 0 !important;
}

/* 修复面包屑样式 */
body.theme-console .master-breadcrumb {
  display: none !important;
}

body.theme-console .breadcrumb-wrapper .breadcrumb {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* 修复域名搜索组件位置 */
body.theme-console .home-domain-search {
  margin: var(--spacing-xl) 0 !important;
  padding: var(--spacing-xl) !important;
}

/* 修复模态框样式 - 兼容 Bootstrap Modal */
body.theme-console .modal {
  z-index: var(--z-index-modal) !important;
}

/* 产生密码弹窗：默认隐藏，仅在有 .show 时显示，避免首页一直显示 */
body.theme-console #modalGeneratePassword:not(.show) {
  display: none !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
body.theme-console #modalGeneratePassword.show {
  display: flex !important;
}

body.theme-console .modal.fade {
  opacity: 0;
  transition: opacity var(--transition-duration-base);
}

body.theme-console .modal.fade.show {
  opacity: 1;
}

body.theme-console .modal-dialog {
  position: relative;
  width: auto;
  margin: var(--spacing-xl) auto;
  max-width: 520px;
}

body.theme-console .modal-content {
  position: relative;
  background: var(--color-bg-base);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-xl);
  border: none;
  display: flex;
  flex-direction: column;
  max-height: 90vh;
  overflow: hidden;
}

body.theme-console .modal-backdrop {
  z-index: var(--z-index-modal-backdrop) !important;
}

body.theme-console .modal-backdrop.fade {
  opacity: 0;
  transition: opacity var(--transition-duration-base);
}

body.theme-console .modal-backdrop.fade.show {
  opacity: 1;
}

/* 修复按钮组样式 */
body.theme-console .btn-group {
  display: inline-flex !important;
}

/* ========== 特定页面样式 ========== */

/* Dashboard 仪表盘 */
.dashboard-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--spacing-lg);
  margin-bottom: var(--spacing-xl);
}

.stat-card {
  background: var(--color-bg-base);
  border-radius: var(--border-radius-base);
  padding: var(--spacing-xl);
  box-shadow: var(--shadow-base);
}

.stat-card-title {
  font-size: var(--font-size-sm);
  color: var(--color-text-secondary);
  margin-bottom: var(--spacing-sm);
}

.stat-card-value {
  font-size: var(--font-size-xxxl);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-primary);
}

/* ========== WHMCS 兼容性覆盖 ========== */

/* 兼容 WHMCS 原有类名 */
.panel {
  background: var(--color-bg-base);
  border-radius: var(--border-radius-base);
  box-shadow: var(--shadow-base);
  padding: var(--spacing-xl);
}

/* ========== 打印样式 ========== */
@media print {
  .layout-header,
  .layout-sidebar,
  .layout-footer,
  .breadcrumb-wrapper {
    display: none;
  }
  
  .layout-content {
    margin: 0;
  }
}
