/* ============================================================
   Moonton IT-Design System · Design Tokens
   From: arco-preview/src/index.css + Feishu Spec 1.0 shadows
   ============================================================ */
:root {
  /* Brand */
  --brand-primary: #1677FF;
  --brand-primary-hover: #006AFF;
  --brand-primary-active: #0075C2;
  --brand-primary-light: #ECF4FF;
  --brand-primary-disable: rgba(22, 119, 255, 0.4);
  --brand-success: #00B42A;
  --brand-warning: #FF7D00;
  --brand-danger: #F53F3F;

  /* Text */
  --text-primary: rgba(17, 17, 17, 0.8);
  --text-regular: rgba(17, 17, 17, 0.6);
  --text-secondary: rgba(17, 17, 17, 0.4);
  --text-placeholder: rgba(17, 17, 17, 0.3);

  /* Surface */
  --bg-page: #F5F6F7;
  --bg-white: #FFFFFF;
  --bg-button: #F2F3F5;
  --border-default: #E5E6EB;
  --tab-inactive: #EDEEF5;

  /* Layout */
  --header-h: 60px;
  --sider-w: 200px;
  --sider-w-collapsed: 64px;

  /* Radius */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;

  /* Shadow — 6 档,以飞书规范 1.0 为准 */
  --shadow-1: 0 0 0 1px rgba(0,0,0,0.04), 0 2px 2px rgba(0,0,0,0.08);
  --shadow-2-light: 0 2px 8px rgba(0,0,0,0.12);
  --shadow-2-heavy: 0 4px 16px rgba(0,0,0,0.16);
  --shadow-stroke: 0 0 0 1px #E3E4E5;
  --shadow-top: 0 1px 0 rgba(0,0,0,0.12);
  --shadow-bottom: 0 -1px 0 #E3E4E5;

  /* legacy shadows(arco-preview 兼容) */
  --shadow-header: 0px 4px 10px 0px rgba(78, 89, 105, 0.06);
  --shadow-fixed-col: -6px 0 12px -6px rgba(78, 89, 105, 0.08);
}

/* ============================================================
   dumi theme override — brand color + header logo
   ============================================================ */
/* Hero 已改自定义 HomeHero.tsx · body.mt-home-active 时全屏铺满渐变 */
body.mt-home-active,
body.mt-home-active .dumi-default-doc-layout {
  background:
    radial-gradient(circle at 20% 20%, rgba(22,119,255,0.10), transparent 40%),
    radial-gradient(circle at 80% 30%, rgba(0,180,255,0.08), transparent 40%),
    linear-gradient(180deg, #F5F9FF 0%, #ECF4FF 40%, #F5F6F7 100%) !important;
}
/* 首页 · 打掉 dumi 的多层内容 padding/margin/margin-bottom */
body.mt-home-active .dumi-default-doc-layout > main {
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}
/* content 保留左右 padding 给正文 · 但取消白底/圆角/阴影/margin-bottom · 让首页贯穿 */
body.mt-home-active .dumi-default-content {
  padding: 0 48px !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  max-width: 100% !important;
}
body.mt-home-active .dumi-default-content > article {
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 1200px !important;
}
body.mt-home-active .dumi-default-content > article > :first-child {
  margin-top: 0 !important;
}
/* HomeHero 破 content 的 48 左右 padding 让蓝色背景铺满 viewport */
body.mt-home-active .mt-home-hero {
  margin-left: -48px !important;
  margin-right: -48px !important;
}
@media (max-width: 640px) {
  body.mt-home-active .dumi-default-content {
    padding: 0 24px !important;
  }
  body.mt-home-active .mt-home-hero {
    margin-left: -24px !important;
    margin-right: -24px !important;
  }
}
/* 首页 header 半透明 · 融入渐变 */
body.mt-home-active .dumi-default-header {
  background: rgba(245, 249, 255, 0.72) !important;
  backdrop-filter: blur(12px) !important;
}
.dumi-default-hero-actions a {
  color: #fff !important;
}
.dumi-default-hero-actions a:not(:first-child) {
  color: var(--brand-primary) !important;
}

/* Header 全部文字统一 16px · logo 图 24 · Logo 文字单行不加粗 */
.dumi-default-logo,
.dumi-default-logo *,
.dumi-default-header,
.dumi-default-header a,
.dumi-default-header nav a,
.dumi-default-header li,
.dumi-default-navbar,
.dumi-default-navbar a {
  font-size: 16px !important;
}
.dumi-default-logo {
  white-space: nowrap !important;
  font-weight: 400 !important;
}
.dumi-default-logo img {
  height: 24px !important;
  margin-inline-end: 8px !important;
}
@media (max-width: 640px) {
  .dumi-default-logo img {
    height: 20px !important;
  }
}

/* Nav 靠右 · 与右侧 aside(搜索+图标)紧挨 */
.dumi-default-header-right {
  justify-content: flex-end !important;
  gap: 24px;
}
.dumi-default-header-left {
  flex: none !important;   /* 让左侧只占 logo 需要的宽度,腾出空间给右侧 */
}

/* ============================================================
   Sidebar · 全局统一为 14px · 去 UPPERCASE · 对齐 AntD 视觉
   ============================================================ */
.dumi-default-sidebar {
  padding-inline-start: 16px !important;
  padding-inline-end: 16px !important;
}

/* 分组标题 · 中英文不用 UPPERCASE · secondary 灰 semi-bold · 14px */
.dumi-default-sidebar > dl > dt {
  font-size: 14px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  color: var(--text-regular) !important;
  margin: 20px 12px 8px !important;
  line-height: 22px !important;
}
.dumi-default-sidebar > dl:first-child > dt {
  margin-top: 4px !important;
}

/* 分组之间靠留白分隔 · 不要 border-top */
.dumi-default-sidebar > dl + dl {
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* nav item · 14px · 圆角胶囊 · 内 padding · hover/active 底色 */
.dumi-default-sidebar > dl > dd {
  padding: 2px 0 !important;
}
.dumi-default-sidebar > dl > dd > a {
  font-size: 14px !important;
  line-height: 22px !important;
  padding: 6px 12px !important;
  border-radius: 6px !important;
  color: var(--text-primary) !important;
  font-weight: 400 !important;
}
.dumi-default-sidebar > dl > dd > a:hover {
  background: var(--bg-page) !important;
  color: var(--text-primary) !important;
}
.dumi-default-sidebar > dl > dd > a.active {
  background: var(--brand-primary-light) !important;
  color: var(--brand-primary) !important;
  font-weight: 500 !important;
}

/* 侧边栏细滚动条 */
.dumi-default-sidebar {
  scrollbar-width: thin !important;
}
.dumi-default-sidebar::-webkit-scrollbar {
  width: 4px !important;
}
.dumi-default-sidebar::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.15) !important;
  border-radius: 2px !important;
}

/* ============================================================
   全屏布局 · 内容区撑满 viewport(去掉 dumi 默认 1392 max-width)
   与 Ant Design 官网观感一致
   ============================================================ */
.dumi-default-doc-layout > main {
  max-width: 100% !important;
  padding: 0 32px !important;
}

/* Header 也撑满,内层容器铺满 */
.dumi-default-header-content,
.dumi-default-header > div {
  max-width: 100% !important;
  padding: 0 32px !important;
}

/* 宽屏进一步加 padding · 避免贴边 */
@media (min-width: 1600px) {
  .dumi-default-doc-layout > main,
  .dumi-default-header-content,
  .dumi-default-header > div {
    padding: 0 48px !important;
  }
}

@media (min-width: 2000px) {
  .dumi-default-doc-layout > main,
  .dumi-default-header-content,
  .dumi-default-header > div {
    padding: 0 64px !important;
  }
}

/* 移动端保持 24 */
@media (max-width: 640px) {
  .dumi-default-doc-layout > main,
  .dumi-default-header-content,
  .dumi-default-header > div {
    padding: 0 16px !important;
  }
}

/* ============================================================
   Arco overrides · 与 arco-preview/src/index.css 保持一致
   (docs 站每个组件 Live Demo 都要用这套 override 才能显示正确的圆角/颜色)
   ============================================================ */

/* --- Brand color override --- */
.arco-btn-primary:not(.arco-btn-disabled) {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}
.arco-btn-primary:not(.arco-btn-disabled):hover {
  background-color: var(--brand-primary-hover) !important;
  border-color: var(--brand-primary-hover) !important;
}
.arco-btn-primary.arco-btn-disabled,
.arco-btn-primary.arco-btn-disabled:hover {
  background-color: var(--brand-primary-disable) !important;
  border-color: transparent !important; /* 禁用无描边:半透明填充 + 半透明边框会叠色成一圈,故边框透明 */
  color: #fff !important;
  cursor: not-allowed;
}
.arco-btn-secondary,
.arco-btn-outline {
  color: var(--brand-primary);
  border-color: var(--brand-primary);
}
.arco-link {
  color: var(--brand-primary);
}
/* 链接按钮(默认文本按钮):走 moonton 品牌蓝 #1677FF,而不是 Arco 默认 #165DFF。
   用 !important 才压得过 arco.css(同特异度、后加载)。 */
.arco-btn-text:not(.arco-btn-disabled) {
  color: var(--brand-primary) !important;
}
.arco-btn-text:not(.arco-btn-disabled):hover {
  color: var(--brand-primary-hover) !important;
  background-color: var(--bg-button) !important;
}
/* 中性文本按钮(表格操作列):默认浅灰 --text-regular #11111199,hover 转深 --text-primary #111111cc。
   多一个 class → 特异度更高,压过上面的品牌蓝规则。 */
.moonton-btn-neutral.arco-btn-text:not(.arco-btn-disabled) {
  color: var(--text-regular) !important;
}
.moonton-btn-neutral.arco-btn-text:not(.arco-btn-disabled):hover {
  color: var(--text-primary) !important;
}
/* 中性文本按钮禁用:更浅的灰 --text-secondary,而不是 Arco 默认的蓝灰 */
.moonton-btn-neutral.arco-btn-text.arco-btn-disabled {
  color: var(--text-secondary) !important;
}
.arco-checkbox-checked .arco-checkbox-mask,
.arco-radio-checked .arco-radio-mask {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* --- Border radius unification --- */
.arco-btn,
.arco-btn-size-default,
.arco-btn-size-large {
  border-radius: var(--radius-md) !important;
}
.arco-btn-size-mini,
.arco-btn-size-small {
  border-radius: var(--radius-sm) !important;
}
.arco-btn-shape-circle,
.arco-btn-shape-round {
  border-radius: 999px !important;
}
/* 不 override shape-square — 圆角由 size 联动 */

/* Form controls · 6px */
.arco-input,
.arco-input-inner-wrapper,
.arco-select-view,
.arco-textarea,
.arco-picker,
.arco-cascader,
.arco-input-tag,
.arco-input-number {
  border-radius: var(--radius-md) !important;
}

/* Modal / Drawer · 8px */
.arco-modal,
.arco-drawer-content {
  border-radius: var(--radius-lg) !important;
}

/* Tags · 4px */
.arco-tag {
  border-radius: var(--radius-sm) !important;
}

/* --- Table override --- */
.arco-table-container,
.arco-table-element {
  border: none !important;
}
.arco-table-element {
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
.arco-table-th {
  background: var(--bg-page) !important;
  color: var(--text-primary) !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  height: 40px !important;
  border-color: var(--bg-page) !important;
  border-bottom: 1px solid var(--bg-page) !important;
}
.arco-table-th::before { display: none !important; }
.arco-table-td {
  height: 40px !important;
  font-size: 14px !important;
  color: var(--text-primary) !important;
  border-bottom: 1px solid var(--border-default) !important;
  border-right: 0 !important;
  border-left: 0 !important;
  background: var(--bg-white);
}
.arco-table-tr:hover .arco-table-td {
  background: var(--bg-page) !important;
}
.arco-table-col-fixed-right,
.arco-table-th.arco-table-col-fixed-right,
.arco-table-td.arco-table-col-fixed-right {
  box-shadow: var(--shadow-fixed-col);
}
.arco-table a {
  font-size: 14px;
  text-decoration: none;
}
