/* ==========================================================================
   layout-consistency.css — 全站布局统一层（2026-10-13）
   作用范围：body[data-lm-surface="workspace"]，即除首页（主页/日程）外的所有页面。
   统一标准（与知识库 / 我的项目页面对齐）：
     1. 页面外壳同宽居中 —— 各页分区左右边界一致
     2. 页头同节奏 —— 标题在左、操作按钮在右，标题字号与下方间距一致
     3. 面板/卡片 —— 1px 细边框（统一颜色）+ 16px 圆角
     4. 小控件（输入框/按钮等）—— 8px 圆角；侧栏导航条目保持组件自身 12px
   本文件在 index.html 中最后加载，靠加载顺序覆盖各模块样式。
   ========================================================================== */

/* ---- 统一变量 ---- */
body[data-lm-surface]{
  --ui-line:#e3e8f1;        /* 统一边框颜色 */
  --ui-radius-lg:16px;      /* 面板/卡片圆角 */
  --ui-radius-sm:8px;       /* 小控件圆角 */
  --ui-page-max:1760px;     /* 页面内容最大宽度（足够宽，避免宽屏下居中留白） */
  --ui-head-size:27px;      /* 页头标题字号（同 interface-glass 既有约定） */
}
body.night[data-lm-surface]{--ui-line:#3a424e}

/* ---- 1. 页面外壳：统一最大宽度并居中，分区左右边界对齐 ---- */
body[data-lm-surface="workspace"] :is(
  .kb-page,.rs-root,.cp-root,.hw-root,.la-root,.cl-root,.th-root,.tl-root,.lo-root,
  .ach-root,.lm45-project-shell,.pc-root
){
  max-width:var(--ui-page-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ---- 1b. 页面左右留白：收紧 .main 内边距（42px→18px），内容区更靠左；
        94+18=112px 与顶栏文字左缘对齐，所有页面同步移动、保持一致 ---- */
body[data-lm-surface="workspace"] .main{padding-left:18px!important;padding-right:18px!important}

/* ---- 2. 页头：标题左、操作右，行高与间距一致 ---- */
body[data-lm-surface="workspace"] .pagehead{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-end!important;
  gap:12px!important;
  margin-bottom:22px!important;
}
body[data-lm-surface="workspace"] .pagehead h1{font-size:var(--ui-head-size)!important}
body[data-lm-surface="workspace"] .pagehead .actions{display:flex;gap:9px;margin-top:0!important}

/* 各模块私有 hero（.rs-hero / .th-hero / .pc-hero）与 .pagehead 的统一规格见第 6 节 */

/* ---- 3. 面板 / 卡片：1px 细边框 + 16px 圆角 ---- */
body[data-lm-surface="workspace"] :is(
  .panel,.card,
  .data-metric,.stats .stat,
  .la-metrics>div,.cl-metrics>div,.lo-metrics>div,.tl-metrics>div,.rs-metrics>div,
  .hw-metrics>div,.cp-metrics>div,.th-metric,.report-kpi,
  .pc-document,.pc-detail-panel,
  .kb-graph-panel,
  .hw-analysis,.hw-class,.cp-analysis,.la-main,.th-list-controls,
  .kb-asset,.kb-book,.kb-corpus-item,.kb-file-panel,.kb-note
){
  border:1px solid var(--ui-line)!important;
  border-radius:var(--ui-radius-lg)!important;
}

/* 侧栏选中态的强调边框由第 3b 节统一处理，此处不再单独覆盖 */

/* ---- 3b. 「班级」页左侧「班级文件夹」列表：与知识库「资料类型」/ 成果库「成果分类」逐项一致 ----
        目标基准（组件 .lm-folder-nav>button）：
          侧栏列 200px + 28px 间距；条目 padding 13px 15px / gap 8px / 下间距 9px；
          1px #bdd3e550 边框 / 12px 圆角 / #ffffffad 底 / 14px 字 / 行高 1.6；
          选中 #edf6ff + #91b5d6 + #3279c9；计数为 11px 纯文字。
        改前：列 210px + 24px；条目 padding 15px 14px / 圆角 18px / 字号 15px /
              最小高 54px / 计数为胶囊徽标 / 带 18px 文件夹图标。
        另：「新建文件夹」「管理文件夹」两个整行按钮已移除，改为标题「班级文件夹」
            右侧的 ＋ 与「文件夹+齿轮」小图标（自定义悬停气泡显示名称）；
            条目统一 50px 高、单行显示，超长名称右侧省略号截断，
            悬停气泡显示全名（3b-3c）。 ---- */

/* 3b-1. 列宽与间距三档断点，同知识库与成果库 */
@media(min-width:1001px){
  body .lm45-project-shell{grid-template-columns:200px minmax(0,1fr)!important;gap:28px!important}
}
@media(max-width:1000px) and (min-width:651px){
  body .lm45-project-shell{grid-template-columns:170px minmax(0,1fr)!important;gap:18px!important}
}
@media(max-width:650px){
  body .lm45-project-shell{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
}

/* 3b-2. 侧栏容器：去掉内边距与自身的框，与 .lm-folder-nav 一致 */
body .lm45-project-folders.lm46-folders{
  display:block!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

/* 3b-3. 列表标题「班级文件夹」：对齐 .lm-folder-nav h3（13px / #596e84 / 下间距 16px）
        标题右侧依次放两个小图标按钮：＋（新建文件夹）、齿轮（管理文件夹） */
body .lm46-folders .kb-rail-label{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  margin:0 0 16px!important;
  padding:0!important;
  font-size:13px!important;
  font-weight:400!important;
  color:#596e84!important;
}
body.night .lm46-folders .kb-rail-label{color:#b8c0cb!important}

/* 3b-3b. 标题右侧的小图标按钮（＋ 新建文件夹 / 齿轮 管理文件夹）
         精确度 (0,3,2) 高于第 4 节全局「小控件 8px」按钮规则的 (0,2,3) */
body .lm46-folders .kb-rail-label>button[data-lm46-manage]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:none!important;
  width:20px!important;
  height:20px!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:#8a9bb0!important;
  cursor:pointer!important;
  line-height:1!important;
  box-shadow:none!important;
}
body .lm46-folders .kb-rail-label>button[data-lm46-manage]:hover,
body .lm46-folders .kb-rail-label>button[data-lm46-manage]:focus-visible{
  background:#edf6ff!important;
  color:#3279c9!important;
}
body .lm46-folders .kb-rail-label>button[data-lm46-manage] .ico{
  display:block!important;
  width:15px!important;
  height:15px!important;
  color:currentColor!important;
}
body.night .lm46-folders .kb-rail-label>button[data-lm46-manage]{color:#9aa6b4!important}
body.night .lm46-folders .kb-rail-label>button[data-lm46-manage]:hover,
body.night .lm46-folders .kb-rail-label>button[data-lm46-manage]:focus-visible{
  background:#3b424b!important;
  color:#d4e6fa!important;
}

/* 3b-3c. 悬停提示气泡：标题右侧两个小图标 + 文件夹条目（内容过长被截断时显示全名）
         用自定义气泡替代原生 title——悬停立即显示，不受浏览器约 1 秒延迟影响 */
body .lm46-folders :is(.kb-rail-label>button[data-lm46-manage],button[data-lm46-folder]){
  position:relative!important;
}
body .lm46-folders :is(.kb-rail-label>button[data-lm46-manage],button[data-lm46-folder])::after{
  content:attr(data-tip);
  position:absolute;
  left:0;
  top:calc(100% + 6px);
  z-index:90;
  max-width:min(420px,80vw);
  width:max-content;
  padding:6px 9px;
  border-radius:6px;
  background:#33404f;
  color:#fff;
  font-size:12px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:normal;
  white-space:normal;
  text-align:left;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-2px);
  transition:opacity .12s ease,transform .12s ease,visibility .12s;
  box-shadow:0 6px 18px rgba(20,32,48,.2);
}
body .lm46-folders :is(.kb-rail-label>button[data-lm46-manage],button[data-lm46-folder]):hover::after,
body .lm46-folders :is(.kb-rail-label>button[data-lm46-manage],button[data-lm46-folder]):focus-visible::after{
  opacity:1;
  visibility:visible;
  transform:none;
}

/* 3b-4. 条目：与 .lm-folder-nav>button 完全一致
        选择器精确度 (0,4,2) 高于第 4 节全局「小控件 8px」规则的 (0,2,3)，
        否则圆角会被压成 8px */
body[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  width:100%!important;
  height:50px!important;          /* 格子高度统一（同知识库/成果库条目） */
  padding:13px 15px!important;
  margin:0 0 9px!important;
  border:1px solid #bdd3e550!important;
  border-radius:12px!important;
  background:#ffffffad!important;
  color:#596e84!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.6!important;
  text-align:left!important;
}
body[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button:hover,
body[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button.active{
  background:#edf6ff!important;
  border-color:#91b5d6!important;
  color:#3279c9!important;
}
/* 条目文字：单行显示，超出宽度在右侧以省略号截断（全名见悬停气泡） */
body .lm46-folders>button>span{
  flex:1!important;
  min-width:0!important;
  line-height:1.6!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
/* 计数：去掉胶囊底，改为 11px 纯文字（同 .lm-folder-nav small） */
body .lm46-folders>button>small{
  font-size:11px!important;
  line-height:1.6!important;
  background:none!important;
  border-radius:0!important;
  padding:0!important;
  color:inherit!important;
}
/* 条目内的文件夹图标：保留显示（18px，蓝色描边，与文字间距 8px） */
body .lm46-folders>button>.ico{display:block!important;width:18px!important;height:18px!important;flex:none!important}

/* 3b-5. 另两处列表条目字号显式声明 14px，保证三处完全一致 */
body[data-lm-surface="workspace"] .main .lm-folder-nav>button{font-size:14px!important;line-height:1.6!important}

/* 3b-6. 夜间模式：与 .lm-folder-nav 同步（精确度需高于 3b-4） */
body.night[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button{
  background:#303237!important;
  color:#e0e3e8!important;
  border-color:#52565e!important;
}
body.night[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button.active{
  background:#3b424b!important;
  color:#d4e6fa!important;
}

/* 3b-7. 窄屏（≤650px）：与知识库一致——横向排列、自动宽度、11px 字号 */
@media(max-width:650px){
  body .lm45-project-folders.lm46-folders{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  body[data-lm-surface="workspace"] .main .lm45-project-folders.lm46-folders>button{
    width:auto!important;height:auto!important;margin:0!important;font-size:11px!important;padding:8px 10px!important
  }
  body[data-lm-surface="workspace"] .main .lm-folder-nav>button{
    font-size:11px!important;padding:8px 10px!important;margin:0!important;width:auto!important
  }
}

/* ---- 4. 小控件：8px 圆角 ---- */
body[data-lm-surface="workspace"] :is(
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
  select,textarea
){
  border-radius:var(--ui-radius-sm)!important;
}
/* 按钮统一 8px，但保留胶囊/页签/浮动按钮等既定形态 */
body[data-lm-surface="workspace"] button:not(
  [class*=pill],[class*=chip],[class*=badge],
  [role=tab],[role=tablist] *,
  .pc-connections button,.ln-floating button,.ln-floating *,
  .module-tabs button,.pc-document-tabs button,.report-switch button
){
  border-radius:var(--ui-radius-sm)!important;
}
/* 4b. 侧栏导航条目例外：恢复组件自身的 12px 圆角
      （结构性导航条目不属于「小控件」，上面的 8px 规则不得压过它；
        选择器精确度 (0,3,2) 高于上面的 (0,2,3)，两处侧栏同时生效） */
body[data-lm-surface="workspace"] .main .lm-folder-nav>button{
  border-radius:12px!important;
}

/* ==========================================================================
   5. 成果库「成果分类」列表 = 知识库「资料类型」列表同款
      事实：两处本就是同一个组件 .lm-folder-nav，条目基础样式完全一致
      （.lm-folder-nav>button：padding 13px 15px / 圆角 12px / 下间距 9px / gap 8px /
       边框 #bdd3e550 / 选中 #edf6ff+#91b5d6+#3279c9 / 计数 small 11px）。
      唯一差异：navigation-polish.css 把 .lm-ach-workspace 的侧栏列宽改成了 220px，
      而知识库 .lm-library-workspace 是 200px。
      因此本节只做一件事——把成果库的网格参数改回与知识库完全一致；
      条目样式一律交回组件基础规则，两处自然逐项相同。
   ========================================================================== */

@media(min-width:1001px){
  body .lm-ach-workspace{grid-template-columns:200px minmax(0,1fr)!important;gap:28px!important}
}
@media(max-width:1000px) and (min-width:651px){
  body .lm-ach-workspace{grid-template-columns:170px minmax(0,1fr)!important;gap:18px!important}
}
@media(max-width:650px){
  body .lm-ach-workspace{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
}

/* ==========================================================================
   6. 页面左上角标题：全站统一「字号 / 字重 / 位置」
      覆盖四种头部组件（首页不受影响）：
        .pagehead —— 知识库、成果库、班级教学、我的等（pagehead() 模板）
        .rs-hero  —— 教研台、语料处理、作业发布、学情分析、学习（.rs-root 系列）
        .th-hero  —— 我的项目（教学项目中枢）
        .pc-hero  —— 资源预检
      统一规格：字号 27px / 字重 600 / 行高 1.2 / 字距 -.02em / 标题下间距 7px；
                头部块上留白 20px、下留白 22px、左右 0，块下外边距 22px。
      改前差异：字号 知识库 38px、成果库 29px、我的项目 28px、教研台 24px；
                字重 550 / 620 / 500 / 650 各不相同；
                头部上留白 20px（知识库·成果库）/ 12px（我的项目）/ 8px（教研台，来自 .rs-root）；
                教研台另有 2px 左缩进；副标题字号 13 / 12 / 11px 不一。
   ========================================================================== */

/* 6a. 头部块：上/下留白与左右缩进统一 */
body[data-lm-surface="workspace"] :is(.pagehead,.rs-hero,.th-hero,.pc-hero){
  padding-top:20px!important;
  padding-bottom:22px!important;
  padding-left:0!important;
  padding-right:0!important;
  margin-top:0!important;
  margin-bottom:22px!important;
}
/* 教研台根容器自带 8px 上留白，改由头部统一计算，避免叠加 */
body[data-lm-surface="workspace"] .rs-root{padding-top:0!important}

/* 6b. 标题本体：字号 / 字重 / 字距 / 行高 / 下间距 全站一致 */
body[data-lm-surface="workspace"] :is(.pagehead,.rs-hero,.th-hero,.pc-hero) h1{
  font-size:var(--ui-head-size)!important;   /* 27px */
  font-weight:600!important;
  letter-spacing:-.02em!important;
  line-height:1.2!important;
  margin:0 0 7px!important;
}

/* 6c. 紧贴标题的副标题同步统一，避免标题区高度不一 */
body[data-lm-surface="workspace"] :is(.pagehead,.rs-hero,.th-hero,.pc-hero)>div:first-child>p{
  font-size:13px!important;
  line-height:1.6!important;
  margin:0!important;
}

/* ---- 7. 「首页 › 全部数据」视图：去除外层整体边框（界面细化层本意即为无边框，
        此前第 3 节统一面板边框时误将 .all-data / .report-main / .report-secondary
        （均为布局容器，无边框本意）一并加上 1px 边框，现已从第 3 节列表移除。
        内部指标卡 / 图表面板（.data-metric / .panel / .lm48-kpis article）边框保留 ---- */
body[data-lm-surface="workspace"] .all-data{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

/* ---- 8. 顶栏吸顶：页面滚动时顶栏（返回 / 「全部·进行中…」页签 / 已保存 / 昼夜按钮）
        固定在视口顶部，不随内容滚走。仅 workspace 表面（首页 主页/日程 不受影响）；
        顶栏在 interface-glass.css 已有玻璃拟态背景 + 背景模糊，吸顶后呈磨砂效果。
        z-index 取 40：高于正文与侧栏（≤35），低于各弹窗遮罩（≥42） ---- */
body[data-lm-surface="workspace"] .topbar{
  position:sticky!important;
  top:0!important;
  z-index:40!important;
}

/* ---- 9. 顶栏各要素垂直对齐：以顶栏内容中心线（84px 的中点）为基准。
        返回按钮 / 页签组 / 已保存 / 昼夜按钮均已在线上；仅左上角 logo
        （.rail-brand，位于 rail 顶部 16px+内边距 12px 处）中心偏低约 8px，
        上移使其与顶栏中心线对齐 ---- */
body .rail-brand{
  margin-top:-8px!important;
}

/* ---- 10. 夜间模式 logo：直接使用透明底 logo 图（黑色圆角方块 + 白色 lm 图形），
        容器背景设为透明，让黑色方块直接浮在夜间深色导航栏上（用户指定的呈现）；
        图片不加任何滤镜/反色。浅色模式保持原样（白色容器 + 黑色方块） ---- */
body.night .rail-brand{
  background:transparent!important;
}
body.night .rail-brand img{
  filter:none!important;
}

/* ---- 11. 「知识库 › 概览」四个指标格（.lo-metrics>div：资料总数 / 涉及班级 /
        涉及课程 / 未关联教学）与「成果库」四个指标格（.lm-work-metrics article：
        成果记录 / 教学案例 / 待审定 / 已审定）逐项对齐：
          格子 padding 20px / 圆角 18px / 底 #ffffffed / 阴影 0 5px 24px #2b3f5308 /
          无边框 / 最小高 132px；4 列 + 间隔 16px；
          标签 11px #6c8096；数字 28px/400 #2c394b（与标签间距 15px）；
          说明文字 11px #6c8096。
        夜间同规格：底 #303237 / 数字 #e0e3e8 / 标签与说明 #b8c0cb。 ---- */
body[data-lm-surface="workspace"] .main .lo-metrics,
body[data-lm-surface="workspace"] .main .lm-work-metrics{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin:0 0 24px!important;
  padding:0!important;
  border:0!important;
}
body[data-lm-surface="workspace"] .main .lo-metrics>div,
body[data-lm-surface="workspace"] .main .lm-work-metrics>article{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  min-width:0!important;
  min-height:132px!important;
  padding:20px!important;
  background:#ffffffed!important;
  border:0!important;
  border-radius:18px!important;
  box-shadow:0 5px 24px #2b3f5308!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body[data-lm-surface="workspace"] .main .lo-metrics>div>small,
body[data-lm-surface="workspace"] .main .lm-work-metrics>article>span{
  font-size:11px!important;
  color:#6c8096!important;
  margin:0!important;
  line-height:1.5!important;
}
body[data-lm-surface="workspace"] .main .lo-metrics>div>strong,
body[data-lm-surface="workspace"] .main .lm-work-metrics>article>strong{
  font-size:28px!important;
  font-weight:400!important;
  line-height:1.2!important;
  color:#2c394b!important;
  margin:15px 0 0!important;
}
body[data-lm-surface="workspace"] .main .lo-metrics>div>span{
  font-size:11px!important;
  color:#6c8096!important;
  margin:8px 0 0!important;
  line-height:1.5!important;
}
/* 夜间同规格 */
body.night[data-lm-surface="workspace"] .main .lo-metrics>div,
body.night[data-lm-surface="workspace"] .main .lm-work-metrics>article{
  background:#303237!important;
}
body.night[data-lm-surface="workspace"] .main .lo-metrics>div>strong,
body.night[data-lm-surface="workspace"] .main .lm-work-metrics>article>strong{
  color:#e0e3e8!important;
}
body.night[data-lm-surface="workspace"] .main .lo-metrics>div>small,
body.night[data-lm-surface="workspace"] .main .lo-metrics>div>span,
body.night[data-lm-surface="workspace"] .main .lm-work-metrics>article>span{
  color:#b8c0cb!important;
}
@media(max-width:1000px){
  body[data-lm-surface="workspace"] .main .lo-metrics,
  body[data-lm-surface="workspace"] .main .lm-work-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
  }
}
@media(max-width:650px){
  body[data-lm-surface="workspace"] .main .lo-metrics,
  body[data-lm-surface="workspace"] .main .lm-work-metrics{gap:10px!important}
  body[data-lm-surface="workspace"] .main .lo-metrics>div,
  body[data-lm-surface="workspace"] .main .lm-work-metrics>article{
    padding:16px!important;
    min-height:120px!important;
  }
}

/* ==========================================================================
   12. 指标格统一（第二批）——「知识库 › 资料关联概览」与「班级 › 教学总览」
       目标：与「成果库 › 成果记录」(.lm-work-metrics>article) 完全同规格。
       A. .lo-metrics>div  —— 资料总数 / 涉及班级 / 涉及课程 / 未关联教学
       B. .th-metrics>.th-metric —— 班级 / 学生名册 / 已排课次
       统一规格：无边框 / 圆角 18px / 底 #ffffffed / 阴影 0 5px 24px #2b3f5308 /
                padding 20px / 最小高 132px / 内容左对齐、垂直居中；
                标签 11px #6c8096；数字 28px/400 #2c394b（与标签间距 15px）；
                说明小字 11px #6c8096。
       容器：gap 16px / 下间距 24px；.th-metrics 原有的 padding 6px 0 22px 与
             底部 1px 分隔线一并去掉。列数不动（班级页 3 列由 navigation-polish.css
             控制，此处只统一外观）。
       说明：本文件为最后加载的样式层，等精确度时按源顺序胜出；对
             project-folders.css 的班级页数字规则（精确度 0,6,2）另用同精确度覆盖。
   ========================================================================== */

/* 12-1. 容器 */
body[data-lm-surface="workspace"] .main .lo-metrics{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin:0 0 24px!important;
  padding:0!important;
  border:0!important;
}
body[data-lm-surface="workspace"] .main .th-metrics{
  gap:16px!important;
  margin:0 0 24px!important;
  padding:0!important;
  border:0!important;
}

/* 12-2. 格子本体 */
body[data-lm-surface="workspace"] .main :is(.lo-metrics>div,.th-metrics>.th-metric){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
  min-width:0!important;
  min-height:132px!important;
  padding:20px!important;
  background:#ffffffed!important;
  border:0!important;
  border-radius:18px!important;
  box-shadow:0 5px 24px #2b3f5308!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* 12-3. 标签（.lo-metrics 用 small；.th-metric 用 span，内含 14px 小图标） */
body[data-lm-surface="workspace"] .main :is(.lo-metrics>div>small,.th-metrics>.th-metric>span){
  font-size:11px!important;
  color:#6c8096!important;
  margin:0!important;
  line-height:1.5!important;
}

/* 12-4. 数字 */
body[data-lm-surface="workspace"] .main :is(.lo-metrics>div,.th-metrics>.th-metric)>strong{
  font-size:28px!important;
  font-weight:400!important;
  line-height:1.2!important;
  color:#2c394b!important;
  margin:15px 0 0!important;
}
/* 班级页：project-folders.css 对其数字有 32px 的高精确度规则，此处同精确度后加载覆盖 */
body[data-lm-surface="workspace"] .main .lm45-hub .lm45-project-main>.th-metrics .th-metric>strong{
  font-size:28px!important;
  font-weight:400!important;
  line-height:1.2!important;
  color:#2c394b!important;
  margin:15px 0 0!important;
}

/* 12-5. 说明小字（.lo-metrics 用 span；.th-metric 用 small） */
body[data-lm-surface="workspace"] .main :is(.lo-metrics>div>span,.th-metrics>.th-metric>small){
  font-size:11px!important;
  color:#6c8096!important;
  margin:8px 0 0!important;
  line-height:1.5!important;
}

/* 12-6. 夜间同规格 */
body.night[data-lm-surface="workspace"] .main :is(.lo-metrics>div,.th-metrics>.th-metric){
  background:#303237!important;
}
body.night[data-lm-surface="workspace"] .main :is(.lo-metrics>div,.th-metrics>.th-metric)>strong{
  color:#e0e3e8!important;
}
body.night[data-lm-surface="workspace"] .main .lm45-hub .lm45-project-main>.th-metrics .th-metric>strong{
  color:#e0e3e8!important;
}
body.night[data-lm-surface="workspace"] .main :is(.lo-metrics>div>small,.lo-metrics>div>span,.th-metrics>.th-metric>span,.th-metrics>.th-metric>small){
  color:#b8c0cb!important;
}

/* 12-7. 响应式 */
@media(max-width:1000px){
  body[data-lm-surface="workspace"] .main .lo-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
  }
}
@media(max-width:650px){
  body[data-lm-surface="workspace"] .main .lo-metrics,
  body[data-lm-surface="workspace"] .main .th-metrics{gap:10px!important}
  body[data-lm-surface="workspace"] .main :is(.lo-metrics>div,.th-metrics>.th-metric){
    padding:16px!important;
    min-height:120px!important;
  }
}
