/* ============================================================
   Cobra Compact Density —— 桌面端紧凑布局
   把网页风（24/16/14 间距）压到桌面工具风（12/8/13 间距）
   目标：1280×800 笔记本一屏可见更多信息，不影响可读性
   ============================================================ */

/* ──────────── 全局字号 / 行高 ──────────── */
html, body {
  font-size: 13px !important;
  line-height: 1.5 !important;
}

/* ──────────── Header 顶部条 —— 从 56px 缩到 44px ──────────── */
.ant-layout-header,
header.header {
  height: 44px !important;
  line-height: 44px !important;
  padding: 0 16px !important;
}
.ant-layout-header .ant-breadcrumb,
header .ant-breadcrumb { font-size: 12px; }
.ant-layout-header .ant-tabs-nav { margin: 0 !important; min-height: 32px !important; }
.ant-layout-header .ant-tabs-tab { padding: 4px 12px !important; font-size: 12px !important; }

/* ──────────── 侧栏 sider —— 宽度收窄 / menuitem 高度变小 ──────────── */
.ant-layout-sider:not(.ant-layout-sider-collapsed) {
  flex: 0 0 188px !important;
  max-width: 188px !important;
  min-width: 188px !important;
  width: 188px !important;
}
.logo {
  height: 92px !important;
  padding: 6px 0 !important;
}
.ant-menu .ant-menu-item,
.sider-menu .ant-menu-item {
  height: 36px !important;
  line-height: 36px !important;
  margin: 2px 6px !important;
  padding: 0 12px !important;
  font-size: 13px !important;
}
.ant-menu .ant-menu-item .anticon,
.sider-menu .ant-menu-item .anticon {
  font-size: 14px !important;
  margin-right: 8px !important;
}
.ant-menu-item-group-title,
.sider-menu .ant-menu-item-group-title {
  padding: 8px 16px 4px !important;
  line-height: 1 !important;
  font-size: 10px !important;
}

/* ──────────── 主内容区 —— padding 收紧 ──────────── */
.ant-layout-content {
  padding: 12px !important;
}
.main-content { padding: 12px !important; }

/* 通用卡片 padding 收紧 */
.ant-card { border-radius: 8px !important; }
.ant-card-head {
  min-height: 38px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
}
.ant-card-head-title { padding: 10px 0 !important; font-size: 13px !important; }
.ant-card-body { padding: 14px !important; }
.ant-card-small > .ant-card-body { padding: 10px 12px !important; }

/* ──────────── 表格 table —— 行高 / 表头 / padding 全部压缩 ──────────── */
.ant-table { font-size: 12.5px !important; }
.ant-table-thead > tr > th {
  padding: 8px 10px !important;
  font-size: 11px !important;
  letter-spacing: .3px !important;
}
.ant-table-tbody > tr > td {
  padding: 7px 10px !important;
  font-size: 12.5px !important;
}
.ant-table-tbody > tr {
  height: 38px !important;
}
.ant-table-cell { vertical-align: middle !important; }
.ant-pagination {
  margin: 10px 0 0 !important;
  font-size: 12px !important;
}
.ant-pagination .ant-pagination-item,
.ant-pagination .ant-pagination-prev,
.ant-pagination .ant-pagination-next,
.ant-pagination .ant-pagination-jump-prev,
.ant-pagination .ant-pagination-jump-next {
  min-width: 26px !important;
  height: 26px !important;
  line-height: 24px !important;
  font-size: 12px !important;
}

/* ──────────── 表单 form item ──────────── */
.ant-form-vertical .ant-form-item,
.ant-form-item {
  margin-bottom: 12px !important;
}
.ant-form-item-label {
  padding: 0 0 4px !important;
  line-height: 1.4 !important;
}
.ant-form-item-label > label {
  font-size: 12px !important;
  height: 22px !important;
}
.ant-form-item-control-input { min-height: 32px !important; }

/* ──────────── 输入框 / Select / DatePicker —— 高度 32px ──────────── */
.ant-input,
.ant-input-affix-wrapper,
.ant-select-selector,
.ant-picker,
.ant-input-number,
.cobra-field-input {
  min-height: 32px !important;
  border-radius: 5px !important;
  font-size: 13px !important;
}
.ant-input:not(textarea),
.ant-input-affix-wrapper,
.ant-select-single .ant-select-selector,
.ant-picker {
  height: 32px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.ant-select-single .ant-select-selector .ant-select-selection-item,
.ant-select-single .ant-select-selector .ant-select-selection-placeholder {
  line-height: 30px !important;
  font-size: 13px !important;
}
.ant-input { padding: 4px 10px !important; }
textarea.ant-input { min-height: 64px !important; padding: 6px 10px !important; }

/* ──────────── 按钮 —— 28px ──────────── */
.ant-btn {
  height: 28px !important;
  padding: 0 12px !important;
  font-size: 12.5px !important;
  border-radius: 5px !important;
  line-height: 26px !important;
}
.ant-btn-sm { height: 24px !important; padding: 0 8px !important; font-size: 11.5px !important; line-height: 22px !important; }
.ant-btn-lg { height: 34px !important; padding: 0 16px !important; font-size: 14px !important; line-height: 32px !important; }
.ant-btn .anticon { font-size: 13px !important; }

/* 表格行内 action 按钮 —— 更小 */
.ant-table .ant-btn { height: 24px !important; padding: 0 9px !important; font-size: 11.5px !important; line-height: 22px !important; }

/* ──────────── Tag / Badge —— 圆形小徽章 ──────────── */
.ant-tag {
  padding: 0 8px !important;
  height: 20px !important;
  line-height: 18px !important;
  font-size: 11px !important;
  border-radius: 999px !important;
}

/* ──────────── Radio Button Group —— 紧凑 ──────────── */
.ant-radio-button-wrapper {
  height: 28px !important;
  line-height: 26px !important;
  padding: 0 12px !important;
  font-size: 12.5px !important;
}

/* ──────────── Divider —— 间距收紧 ──────────── */
.ant-divider-horizontal {
  margin: 12px 0 !important;
}
.ant-divider-horizontal.ant-divider-with-text {
  margin: 14px 0 8px !important;
  font-size: 12px !important;
}

/* ──────────── Modal —— 圆角 / 头部紧凑 ──────────── */
.ant-modal-header { padding: 12px 16px !important; }
.ant-modal-title { font-size: 14px !important; }
.ant-modal-body { padding: 16px !important; }
.ant-modal-footer { padding: 10px 16px !important; }
.ant-modal-close-x { width: 42px !important; height: 42px !important; line-height: 42px !important; font-size: 14px !important; }

/* ──────────── Page Title (业务自定义) ──────────── */
.page-title { font-size: 16px !important; margin-bottom: 8px !important; }

/* ──────────── 自定义包裹（业务页常见） ──────────── */
.proxy-page > div,
.glass-card,
.section-block,
.form-block {
  padding: 12px 14px !important;
}

/* ──────────── 代理页表格 —— 横向滚动，操作列不溢出 ──────────── */
.proxy-page .sa-agents-section .ant-table-wrapper,
.proxy-page .ant-table-wrapper {
  overflow-x: auto !important;
  max-width: 100% !important;
}
.proxy-page .sa-agents-section .ant-table-content table,
.proxy-page .ant-table-content table {
  min-width: 1100px !important;
}
.proxy-page .ant-table-cell:last-child .ant-space {
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
.proxy-page .ant-table-cell:last-child {
  white-space: nowrap !important;
  min-width: 280px !important;
}

/* ──────────── 滚动条 —— 更纤细 ──────────── */
::-webkit-scrollbar { width: 6px !important; height: 6px !important; }

/* ──────────── 内嵌灰条 ──────────── */
form > div[style*="padding:8px 12px"],
form > div[style*="padding: 8px 12px"] {
  padding: 6px 10px !important;
  margin: 0 0 8px !important;
}

/* ──────────── 服务器状态卡 —— 宽度配合新侧栏 188px ──────────── */
.cobra-server-status {
  width: 168px !important;
  left: 10px !important;
  font-size: 10.5px !important;
  padding: 6px 10px !important;
}
.cobra-server-status::before { font-size: 8px !important; }

/* ──────────── 描述列表 ──────────── */
.ant-descriptions-item-label,
.ant-descriptions-item-content { padding: 6px 12px !important; font-size: 12.5px !important; }

/* ──────────── Upload 上传区 ──────────── */
.ant-upload.ant-upload-select-picture-card,
.ant-upload-list-picture-card .ant-upload-list-item {
  width: 96px !important;
  height: 96px !important;
}

/* ──────────── 工具栏 / 搜索条整行 —— 间距 ──────────── */
.toolbar, .toolbar-row, .filter-bar {
  gap: 8px !important;
  margin-bottom: 10px !important;
}

/* ──────────── 让侧栏底部 SERVER 状态卡和 logo 之间不冲突 ──────────── */
.ant-layout-sider .ant-layout-sider-children { padding-bottom: 60px !important; }
