/* 手机版式一 · 电脑版同款排法（对照表 §68，Claude 2026-11-06 出）
   只管管理端外壳 .workspace（企业管理台、平台控制台）在 ≤820 宽的显示；员工手机页（.phone / 员工工作台）不受影响。
   接入：放在所有样式最后加载；取代 product-narrow.css 里 §66 的 A 方案整段。 */
@media (max-width:820px){
  /* ---------- 外壳：左 46px 图标栏 + 主栏；右侧日历栏移到主栏下面 ---------- */
  body:has(> .workspace){background:var(--bg,#f4f6fb)}
  .workspace,.workspace.no-rail{display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;grid-template-rows:auto 1fr;
    width:100%!important;max-width:none!important;min-height:100vh;margin:0!important;border-radius:0!important;border:0!important;box-shadow:none!important}
  .workspace > .sidebar{grid-column:1;grid-row:1 / span 2;position:sticky;top:0;height:100vh;padding:8px 0!important;gap:8px;
    display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line,#e5e9f2)}
  .workspace > .sidebar .brand{width:30px!important;height:30px!important;border-radius:9px!important;flex:none}
  .workspace > .sidebar .brand :is(svg,.icon){width:17px;height:17px}
  .workspace > .sidebar .logo-note{display:none!important}
  .workspace > .sidebar .side-nav{display:flex;flex-direction:column;align-items:center;gap:4px;min-height:0;overflow-y:auto;scrollbar-width:none}
  .workspace > .sidebar :is(.nav-icon,.icon-btn){width:34px!important;height:34px!important;min-height:0!important;border-radius:9px!important;padding:0!important}
  .workspace > .sidebar :is(.nav-icon,.icon-btn) :is(svg,.icon){width:18px;height:18px}
  .workspace > .sidebar .tip{display:none!important}
  .workspace > .sidebar .side-foot{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:4px}
  .workspace > .sidebar .avatar{width:26px;height:26px;font-size:11px}
  .workspace > .main{grid-column:2;grid-row:1;min-width:0;padding:8px 12px 24px!important;font-size:12px}
  .workspace > .rail{display:block!important;grid-column:2;grid-row:2;min-width:0;margin:0 12px 80px;padding:10px!important;
    background:var(--card,#fff);border:1px solid var(--line,#e5e9f2);border-radius:12px;position:static!important;height:auto!important}

  /* ---------- 字号：19 / 13.5 / 12 / 11，最小 11 ---------- */
  .workspace .main :is(p,li,dd,dt,td,label,input,select,textarea){font-size:12px}
  .workspace .main :is(small,.small,.eyebrow,.muted.small,.subline,.note,.hint,.tag,.chip,.badge){font-size:11px}
  .workspace .main :is(h2,h3,.panel-head h2,.panel-head h3){font-size:13.5px;line-height:1.35}
  .workspace .main h4{font-size:12.5px}

  /* ---------- 顶部：面包屑 / 标题＋右侧小图标 / 小区名，各一行 ---------- */
  .workspace .topbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 6px;margin:0 0 8px!important;padding:0!important;flex-wrap:nowrap!important}
  .workspace .topbar > div:first-child{min-width:0}
  .workspace .topbar :is(.eyebrow,.subtitle){display:block;font-size:11px!important;line-height:1.5;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .topbar h1{font-size:19px!important;line-height:1.3;margin:1px 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}
  .workspace .topbar .subtitle .btn{display:inline!important;height:auto!important;min-height:0!important;padding:0!important;font-size:11px!important;line-height:inherit;background:none!important;border:0!important;box-shadow:none!important;vertical-align:baseline}
  .workspace .topbar .top-meta{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:4px!important;margin-top:16px;min-width:0;width:auto!important}
  .workspace .topbar .top-meta > *{flex:none}
  .workspace .topbar .top-meta .theme-toggle{display:none!important}
  .workspace .topbar .top-meta :is(.icon-btn,summary.icon-btn){width:28px!important;height:28px!important;min-height:0!important;padding:0!important;border-radius:8px!important;display:grid;place-items:center}
  .workspace .topbar .top-meta :is(.icon-btn,.btn) :is(svg,.icon){width:15px;height:15px}
  .workspace .topbar .top-meta .search{display:grid!important;place-items:center;width:28px!important;min-width:0!important;height:28px;padding:0!important;border-radius:8px;overflow:hidden}
  .workspace .topbar .top-meta .search > :not(svg):not(.icon):not(i){display:none!important}
  .workspace .topbar .top-meta{max-width:62%}
  /* 顶部有两个以上文字按钮时：标题行留给标题，按钮整排放在小区名下面、靠右（全站同一规则） */
  .workspace .topbar:has(.top-meta .btn ~ .btn){grid-template-columns:minmax(0,1fr)}
  .workspace .topbar:has(.top-meta .btn ~ .btn) .top-meta{max-width:100%;margin-top:4px;justify-content:flex-end}
  .workspace .topbar .top-meta:has(.btn ~ .btn) .btn{max-width:150px}
  .workspace .topbar .top-meta .btn{flex:none!important;min-width:0;max-width:112px;overflow:hidden;text-overflow:ellipsis;display:block;line-height:28px;
    height:28px;min-height:0!important;padding:0 8px!important;font-size:11.5px!important;border-radius:8px!important;white-space:nowrap}
  .workspace .topbar .top-meta .btn :is(svg,.icon,i){display:none}
  /* 顶部一个文字按钮加三个以上图标：图标留在标题行，文字按钮放第二行靠右（和小区名同一行），标题不被挤成“岗位能…” */
  .workspace .topbar .top-meta:has(> .btn):has(> :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details)):not(:has(.btn ~ .btn)){display:grid!important;grid-auto-flow:column;grid-auto-columns:auto;column-gap:0!important;row-gap:4px!important;align-items:center;justify-items:end;margin-top:14px}
  .workspace .topbar .top-meta:has(> .btn):has(> :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details)):not(:has(.btn ~ .btn)) > *{grid-row:1;margin-left:4px}
  .workspace .topbar .top-meta:has(> .btn):has(> :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details) ~ :is(.icon-btn,.search,details)):not(:has(.btn ~ .btn)) > .btn{grid-row:2;grid-column:1 / span 8;max-width:150px}
  .workspace .topbar .subtitle .btn{white-space:nowrap!important}

  /* ---------- 页签：一行，横滑 ---------- */
  .workspace :is(.module-tabs,.tabs,.work-group-tabs,[role=tablist]){display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;
    max-width:100%;min-width:0;gap:2px;padding:3px!important;margin:0 0 8px!important;border-radius:10px}
  .workspace :is(.module-tabs,.tabs,.work-group-tabs,[role=tablist])::-webkit-scrollbar{display:none}
  /* 旧式页签（考勤与替岗 .button-row.tabs，按钮带 aria-pressed）：按二级页签（chips）的样子显示 */
  .workspace .main .button-row.tabs{gap:2px!important;padding:3px!important;background:var(--soft,#eef2f9);border-radius:9px;border:0!important;width:max-content;max-width:100%}
  .workspace .main .button-row.tabs > button{background:transparent!important;border:0!important;box-shadow:none!important;color:var(--muted,#59677e)!important;font-size:11.5px!important;font-weight:400!important;padding:4px 9px!important;border-radius:9px!important;height:auto!important}
  .workspace .main .button-row.tabs > button[aria-pressed=true]{background:var(--card,#fff)!important;color:var(--text,#1a2235)!important;box-shadow:0 2px 6px rgba(0,0,0,.05)!important}
  .workspace :is(.module-tabs,.tabs,.work-group-tabs,[role=tablist]) > :is(a,button,[role=tab]){flex:none!important;white-space:nowrap!important;font-size:12px!important;padding:5px 9px!important;min-height:0!important;border-radius:8px}

  /* ---------- 统计卡：一排等宽（5 张及以上横滑） ---------- */
  .workspace :is(.grid-4,.grid-3,.grid-2):has(> .mini-metric),.workspace .kpis{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;
    grid-auto-columns:minmax(min-content,1fr);gap:6px!important;overflow-x:auto;scrollbar-width:none;margin-bottom:8px}
  .workspace .mini-metrics{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(min-content,1fr);gap:6px!important;overflow-x:auto;scrollbar-width:none;margin-bottom:8px}
  /* 5 张及以上：每张固定 96px，在本区横滑（不压成一个字宽） */
  .workspace :is(.grid-4,.grid-3,.grid-2,.kpis,.mini-metrics):has(> :nth-child(5)){grid-auto-columns:96px!important}
  .workspace .mini-metric{min-width:0;padding:8px!important;border-radius:11px!important}
  .workspace .mini-metric > :is(span,small),.workspace .kpis .kpi :is(.label,.trend){contain:inline-size}
  .workspace .mini-metric > span{display:block;font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .mini-metric > strong{display:block;font-size:15px!important;line-height:1.35;margin:3px 0 1px;white-space:nowrap}
  .workspace .mini-metric > small{display:block;font-size:10.5px!important;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .kpis .kpi{min-width:0;padding:8px!important;gap:4px;border-radius:11px!important}
  .workspace .kpis .kpi > div:first-child{flex:1 1 auto;min-width:0}
  .workspace .kpis .kpi .label{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .kpis .kpi .value{font-size:15px!important;white-space:nowrap;margin:2px 0}
  .workspace .kpis .kpi .trend{font-size:10.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  .workspace .kpis .kpi .ring{display:none}
  .workspace .kpis .kpi{min-height:0!important;align-items:center}
  .workspace .kpis > .kpi:only-child .ring{display:grid!important;flex:none;width:52px!important;height:52px!important}

  /* ---------- 工具行：搜索＋按钮一行，筛选标签下一行灰底横滑 ---------- */
  .workspace .filterbar{display:flex!important;flex-wrap:wrap!important;align-items:center;gap:6px!important;margin:0 0 8px!important}
  .workspace .filterbar > .spacer{display:none!important}
  .workspace .filterbar > .search{order:0;flex:1 1 0!important;min-width:0!important;width:auto!important;height:30px;min-height:0!important;padding:0 8px!important;gap:5px;border-radius:9px!important}
  .workspace .filterbar > .search input{min-width:4.5em;font-size:12px!important;padding:0!important}
  .workspace .filterbar > :is(.btn,details.menu,.menu,button:not(.chip)){order:1;flex:none}
  .workspace .filterbar > .chips{order:2;flex:1 1 100%!important;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;
    gap:2px;padding:3px!important;border-radius:9px;max-width:100%}
  /* 带标题筛选项的工具行（房屋类型、状态、截至日期…）：搜索框占一行，筛选项并排一行，“查询”按钮在行尾 */
  /* 搜索行里有两个文字按钮时（加上“…”超过两个），搜索和“…”占一行，文字按钮另起一行靠右，搜索框不被挤短 */
  .workspace .filterbar:has(> .btn:not(.icon-btn) ~ .btn:not(.icon-btn)):not(:has(> .pfield)) > .search{flex:1 1 calc(100% - 36px)!important}
  .workspace .filterbar:has(> .btn:not(.icon-btn) ~ .btn:not(.icon-btn)):not(:has(> .pfield)) > .btn:not(.icon-btn){order:1}
  .workspace .filterbar:has(> .btn:not(.icon-btn) ~ .btn:not(.icon-btn)):not(:has(> .pfield)) > .btn:not(.icon-btn):first-of-type{margin-left:auto}
  .workspace .filterbar:has(> .btn:not(.icon-btn) ~ .btn:not(.icon-btn)):not(:has(> .pfield)) > :is(details.menu,.menu){order:0}
  /* 搜索框样式里放“月份 / 查看范围”这类带字的控件（工作日程）：每个独占一行，字不折、里面的控件不再套一层边框 */
  .workspace .filterbar:has(> .search ~ .search) > .search{flex:1 1 100%!important}
  .workspace .filterbar > .search > span{flex:none;white-space:nowrap;font-size:11px!important;color:var(--muted,#59677e)}
  .workspace .filterbar > .search > :is(select,input){flex:1 1 0;min-width:0;height:28px!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;font-size:12px!important}
  .workspace .filterbar:has(> .pfield){align-items:flex-end;align-content:flex-start!important;height:auto!important;min-height:0!important}
  .workspace .filterbar:has(> .pfield) > .search{flex:1 1 100%!important}
  .workspace .filterbar > .pfield{order:0;flex:0 1 calc(50% - 3px);margin:0!important;min-width:0;display:flex!important;flex-direction:column;gap:3px;font-size:11px!important}
  .workspace .filterbar > .pfield :is(select,input){width:100%;min-width:0;height:30px;min-height:0;padding:4px 6px!important;font-size:11.5px!important}
  .workspace .filterbar:has(> .pfield) > :is(.btn,button:not(.chip)){align-self:flex-end;height:32px!important;min-height:0!important;margin:0!important}
  /* 不在工具行里的筛选小标签条：同样一行横滑 */
  .workspace .main .chips{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;gap:2px;max-width:100%;min-width:0}
  .workspace .main .chips > :is(button,a,.chip){flex:none!important;white-space:nowrap!important;min-height:0!important;height:auto!important}
  /* 旧式二级页签（休假与个人事项 [data-matter-tabs] 等，按钮没有 .chip 类）：按 chips 的样子显示，不撑成大方块 */
  .workspace .main .chips > button:not(.chip){background:transparent!important;border:0!important;box-shadow:none!important;color:var(--muted,#59677e)!important;font-size:11.5px!important;font-weight:400!important;padding:4px 9px!important;border-radius:9px!important}
  .workspace .main .chips > button:not(.chip).active{background:var(--card,#fff)!important;color:var(--text,#1a2235)!important;box-shadow:0 2px 6px rgba(0,0,0,.05)!important}
  .workspace .main .chips:has(> button:not(.chip)){background:var(--soft,#eef2f9);padding:3px!important;border-radius:9px;width:max-content}
  /* 旧式主次按钮（没有 .btn 类的 button.primary/.secondary）：统一 30 高 */
  .workspace .main :is(button.primary,button.secondary):not(.btn,.chip){min-height:0!important;height:30px!important;padding:0 12px!important;font-size:12px!important;border-radius:9px!important;white-space:nowrap;line-height:1}
  .workspace .main :is(.chips,.pchips):not(:has(> *)){display:none!important}
  .workspace .main .pchips{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;gap:6px}
  .workspace .main .pchips > *{flex:none;white-space:nowrap;font-size:12px!important;padding:5px 11px!important;min-height:0!important}
  .workspace .chips > .chip{flex:none;white-space:nowrap;font-size:11.5px!important;padding:4px 9px!important;min-height:0!important}
  .workspace :is(.filterbar,.panel-head,.actions) summary.icon-btn{width:30px!important;height:30px!important;min-height:0!important;padding:0!important;display:grid;place-items:center;border-radius:9px!important}

  /* ---------- 按钮、标签 ---------- */
  .workspace .main .btn{min-height:30px!important;height:auto;padding:5px 10px!important;font-size:12px!important;border-radius:9px!important;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .tag{padding:1px 6px!important;border-radius:6px;white-space:nowrap;flex:none}
  .workspace .main :is(.actions,.button-row){flex-wrap:nowrap;gap:6px;min-width:0}
  .workspace .main :is(.actions,.button-row) > :is(span,p,small,div):not(.btn):not(.spacer):not(.tag){flex:1 1 0;min-width:0}
  .workspace .main :is(.actions,.button-row) > :is(.btn,button,a.btn,label.btn){flex:none}
  /* 只有按钮的操作条：放不下时整颗按钮换到下一行（不伸出卡片、不切半个按钮） */
  .workspace .main :is(.actions,.button-row):not(:has(> :is(span,p,small,div):not(.btn):not(.spacer):not(.tag))){flex-wrap:wrap!important}
  .workspace .main :is(.actions,.button-row) > .icon-btn{width:30px!important;height:30px!important;min-height:0!important;padding:0!important;display:grid;place-items:center}
  .workspace .main :is(.actions,.button-row):has(> :is(span,p,small):not(.btn):not(.spacer):not(.tag)) > .spacer{flex:0 0 0!important;min-width:0!important;width:0!important}
  /* 返回条（第一个是“返回…”按钮）：右边的说明单行、放不下加省略号 */
  .workspace .main .actions:has(> a.btn:first-child) > :is(span,p,small):not(.btn):not(.spacer):not(.tag){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  /* 说明字＋两个以上按钮的操作条：说明字单独占一行，按钮在下一行靠右（不许把说明字挤成一列竖排） */
  .workspace .main :is(.actions,.button-row):not(.panel-head > *):not(:has(> :is(.btn,button) + :is(span,small,p):not(.spacer) + :is(.btn,button))):has(> :is(.btn,button) ~ :is(.btn,button)):has(> :is(span,p,small,div):not(.btn):not(.spacer):not(.tag)){flex-wrap:wrap!important;justify-content:flex-end;row-gap:6px}
  .workspace .main :is(.actions,.button-row):not(.panel-head > *):not(:has(> :is(.btn,button) + :is(span,small,p):not(.spacer) + :is(.btn,button))):has(> :is(.btn,button) ~ :is(.btn,button)) > :is(span,p,small,div):not(.btn):not(.spacer):not(.tag){flex:1 1 100%!important}

  /* 两段说明字＋按钮的操作条（房屋登记核验：说明 / 小区名 / 刷新）：第一段说明独占一行，第二段和按钮在下一行 */
  .workspace .main .actions:not(.panel-head > *):has(> :is(span,p,small):not(.btn):not(.spacer):not(.tag) ~ :is(span,p,small):not(.btn):not(.spacer):not(.tag)):has(> :is(.btn,button)){flex-wrap:wrap!important;row-gap:4px}
  .workspace .main .actions:not(.panel-head > *):has(> :is(span,p,small):not(.btn):not(.spacer):not(.tag) ~ :is(span,p,small):not(.btn):not(.spacer):not(.tag)):has(> :is(.btn,button)) > :is(span,p,small):not(.btn):not(.spacer):not(.tag):first-child{flex:1 1 100%!important}

  /* 卡片底部的确认按钮条（弹窗内容摊开在页面里时同样适用）：一行靠右，按钮间留 6px */
  .workspace .main .modal-actions{display:flex!important;justify-content:flex-end;align-items:center;flex-wrap:nowrap;gap:6px;margin-top:10px}
  .workspace .main .modal-actions > .btn{flex:none}

  /* 卡片标题右侧的翻页条（上一页 / 第 N 页 / 下一页）：始终一行，不拆 */
  .workspace .main .panel-head > :is(.actions,.button-row){flex:none!important;flex-wrap:nowrap!important;row-gap:0}
  .workspace .main .panel-head > :is(.actions,.button-row) > :is(span,p,small,div):not(.btn):not(.spacer):not(.tag){flex:none!important;white-space:nowrap}

  /* 带标题的查询表单（form.search：搜索 + 状态 + 查询）：两个框各占一半，查询按钮在行尾，三者一行 */
  .workspace .main form.search{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:6px!important;
    width:auto!important;height:auto!important;min-height:0!important;padding:8px!important;border-radius:12px!important}
  .workspace .main form.search > label{display:flex!important;flex-direction:column;gap:3px;min-width:0;font-size:11px!important}
  .workspace .main form.search :is(input,select){width:100%!important;min-width:0!important;height:30px;min-height:0!important;padding:4px 8px!important}
  .workspace .main form.search > button{height:30px;min-height:0!important;padding:0 10px!important;white-space:nowrap;align-self:end}
  /* 卡片标题右侧的长按钮：最多占一半宽，放不下加省略号 */
  .workspace .main .panel-head > :is(.btn,button){flex:0 1 auto!important;min-width:0;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

  /* 翻页条（上一页 / 第 N 页 / 下一页 [/ 刷新]）：一行，页码不占整行 */
  .workspace .main :is(.actions,.button-row):has(> :is(.btn,button) + :is(span,small,p):not(.spacer) + :is(.btn,button)){flex-wrap:nowrap!important;justify-content:flex-start}
  .workspace .main :is(.actions,.button-row):has(> :is(.btn,button) + :is(span,small,p):not(.spacer) + :is(.btn,button)) > :is(span,small,p):not(.spacer){flex:none!important;white-space:nowrap}

  /* 筛选行（.filter-row：月份 / 人员 / 查找 + 按钮）：字段两列，按钮接在后面（§68 表单两列） */
  .workspace .main .filter-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;align-items:end;min-width:0}
  .workspace .main .filter-row > label{display:flex!important;flex-direction:column;gap:3px;min-width:0;font-size:11px!important;white-space:nowrap}
  .workspace .main .filter-row > :is(.btn,button){height:32px;min-height:0!important;padding:0 8px!important;white-space:nowrap}

  /* ---------- 卡片 ---------- */
  .workspace .main .panel{padding:10px!important;border-radius:12px!important;min-width:0}
  .workspace .main .panel-head{display:flex!important;align-items:center;gap:6px;margin-bottom:8px!important;flex-wrap:nowrap!important;min-width:0}
  .workspace .main .panel-head > :first-child{flex:1 1 auto;min-width:0}
  .workspace .main .panel-head :is(h2,h3,.eyebrow){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
  .workspace .main :is(.stack,.record-list,.compact-list){gap:6px!important;min-width:0}
  .workspace .main .section-space{margin-top:8px!important}

  /* 列表卡：图标、标题与副标题、右侧金额和状态、箭头一行 */
  .workspace .main .record-card{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:8px!important;padding:8px 10px!important;border-radius:11px!important;min-width:0}
  .workspace .main .record-card > .icon-tile{width:28px!important;height:28px!important;border-radius:8px!important;flex:none}
  .workspace .main .record-card > .icon-tile :is(svg,.icon){width:15px;height:15px}
  .workspace .main .record-card > .meta{display:block!important;flex:1 1 0!important;min-width:0;width:auto!important}
  .workspace .main .record-card > .meta > :is(h3,strong){display:block;font-size:12.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
  .workspace .main .record-card > .meta > :is(.subline,small,p){display:block;font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:1px 0 0}
  .workspace .main .record-card > .record-end{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:max-content}
  .workspace .main .record-card > .record-end > strong{font-size:12.5px!important;white-space:nowrap}
  .workspace .main .record-card::after{flex:none}
  .workspace .main h1:not(.topbar h1){font-size:19px!important;line-height:1.3!important;margin:4px 0 6px!important}
  .workspace .main .list-item{display:flex!important;align-items:center;grid-template-columns:none!important;flex-wrap:nowrap!important;gap:8px!important;padding:7px 0!important;min-width:0}
  .workspace .main .list-item > :is(b,strong,.tag,.btn,button,time){flex:none;white-space:nowrap}
  .workspace .main .list-item > .icon-tile{width:26px!important;height:26px!important;border-radius:8px!important;flex:none}
  .workspace .main .list-item > .meta{display:block!important;flex:1 1 auto;min-width:0}
  .workspace .main .list-item > .meta > :is(strong,h3){display:block;font-size:12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .list-item > .meta > :is(small,p,.subline){display:block;font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .list-item > .spacer{display:none}

  /* ---------- 两栏页：右栏整块移到下面 ---------- */
  .workspace .main :is(.record-columns,.split-21,.dashboard-split,.fee-grid){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  .workspace .main .record-columns > .detail{display:block!important}
  /* 工作台：大卡 → 统计卡 → 其余卡（电脑版左窄栏和主栏按这个顺序叠） */
  .workspace .main .dashboard-split > .stack{display:contents!important}
  .workspace .main .dashboard-split .hero-stack{order:-2}
  .workspace .main .dashboard-split .kpis{order:-1;margin:0!important}
  .workspace .main .grid-2:not(:has(> .mini-metric)){grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  .workspace .main :is(.grid-3,.grid-4):not(:has(> .mini-metric)){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  /* 勾选卡（岗位、模块等可多选项）：保持电脑版两列，卡片紧凑 */
  .workspace .main :is(.grid-2,.grid-3,.grid-4):has(> .prop-card){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .workspace .main .prop-card{display:flex!important;align-items:flex-start;gap:7px;padding:8px!important;min-height:0!important;border-radius:10px!important;min-width:0}
  .workspace .main .prop-card > input{flex:none;margin:2px 0 0;width:15px;height:15px}
  .workspace .main .prop-card > .tag{flex:none;align-self:flex-start}
  .workspace .main .prop-card > .meta{flex:1 1 0;min-width:0}
  .workspace .main .prop-card > .meta > strong{display:block;font-size:12px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .prop-card > .meta > :is(.subline,small){display:block;font-size:11px!important;line-height:1.4}
  .workspace .main :is(.grid-2,.grid-3,.grid-4):has(> .prop-card) > .prop-card:last-child:nth-child(odd){grid-column:1 / -1}
  /* 空态、无权限、读取失败等占位卡：产品里一次只出一张，整宽显示 */
  .workspace .main :is(.grid-2,.grid-3,.grid-4):has(> .empty-filter){grid-template-columns:minmax(0,1fr)!important}
  .workspace .main .empty-filter{padding:16px 12px!important}

  /* 工作台大卡 */
  .workspace .main .hero{padding:11px!important;border-radius:13px!important;min-height:0!important}
  .workspace .main .hero h2{font-size:16px!important;margin:2px 0 4px!important}
  .workspace .main .hero p{font-size:11px!important}
  .workspace .main .hero .hero-value{font-size:24px!important}
  .workspace .main .hero .btn{min-height:28px!important;padding:3px 10px!important}
  /* 大卡上下两段：上面问候与标题，下面数字、说明和按钮一行 */
  .workspace .main .hero{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px}
  .workspace .main .hero > div:last-child{display:flex!important;flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;text-align:left}
  .workspace .main .hero .hero-value{flex:none;display:flex;align-items:baseline;gap:4px;white-space:nowrap}
  .workspace .main .hero .hero-value small{font-size:11px!important;white-space:nowrap}
  .workspace .main .hero > div:last-child > figure{flex:1 1 100%;margin:4px 0 0!important;min-width:0}
  .workspace .main .hero > div:last-child > figure figcaption{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .hero > div:last-child > figure figcaption small{font-size:10.5px!important}
  .workspace .main .hero > div:last-child > p{flex:1 1 0;min-width:0;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .hero > div:last-child > :is(.btn,a.btn){flex:none;margin:0!important}

  /* 提示条（.callout）：图标、说明、按钮一行；说明占剩余宽度，按钮不被挤掉 */
  .workspace .main .callout{display:flex!important;flex-wrap:wrap!important;align-items:center;gap:8px;padding:10px!important;min-width:0}
  .workspace .main .callout > .spacer{display:none!important}
  /* 说明至少留 170px；按钮放不下时整个按钮换到说明下面、靠右，不把说明挤成窄条 */
  .workspace .main .callout > :is(span,p,div):not(.spacer):not(.icon):not(.btn){flex:1 1 170px;min-width:0}
  .workspace .main .callout > :is(.btn,button,a.btn){flex:none;margin-left:auto}
  .workspace .main .callout > :is(svg,.icon,i){flex:none}

  /* 多步进度条（绩效“考勤快照→…→公示与申诉”等）：每步固定宽度、整条在卡片里横滑，步骤里的字不竖排 */
  .workspace .main .pipeline{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;gap:6px;grid-template-columns:none!important}
  .workspace .main .pipeline > .pipe{flex:0 0 96px;min-width:96px;padding:8px!important}
  .workspace .main .pipeline > .pipe :is(span,small){display:block;font-size:11px!important;line-height:1.4;writing-mode:horizontal-tb}
  .workspace .main .pipeline > .pipe b{display:block;font-size:18px!important;margin:3px 0}

  /* 时间轴（车位责任期间等）：在卡片里整块横滑，不伸出卡片 */
  .workspace .main .tl{overflow-x:auto;overscroll-behavior-x:contain;max-width:100%}
  .workspace .main .tl > *{min-width:520px}

  /* ---------- 表单：保持两列，整行字段占满 ---------- */
  .workspace .main :is(.fee-form,.sform,.form-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;min-width:0}
  .workspace .main :is(.fee-form,.sform,.form-grid) > :is(label,.field,.pfield){display:flex;flex-direction:column;gap:3px;min-width:0;font-size:11.5px}
  .workspace .main :is(.fee-form,.sform,.form-grid){align-items:end}
  /* 合计行：说明在左、金额在右，金额不拆行 */
  :where(body:not(:has([data-v17-product-phone]))) :is(.workspace .main,.glass-modal,.u5-glass-dialog,.v19-account-drawer) .bill-line{display:flex;align-items:center;gap:8px}
  :where(body:not(:has([data-v17-product-phone]))) :is(.workspace .main,.glass-modal,.u5-glass-dialog,.v19-account-drawer) .bill-line > :first-child{flex:1 1 0;min-width:0}
  :where(body:not(:has([data-v17-product-phone]))) :is(.workspace .main,.glass-modal,.u5-glass-dialog,.v19-account-drawer) .bill-line > strong{flex:none;white-space:nowrap}
  .workspace .main :is(.fee-form,.sform,.form-grid) > :is(.full,.wide,[data-full],fieldset,.callout,.radio-row,.choice-row,.upload,.dropzone,.actions,.button-row),
  .workspace .main :is(.fee-form,.sform,.form-grid) > label:has(textarea){grid-column:1 / -1}
  .workspace .main :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:30px;padding:5px 8px;font-size:12px!important;border-radius:8px}
  .workspace .main textarea{min-height:56px}
  /* 单选组：选项按电脑版并排；一行放不下时整个选项换到下一行（选项文字要看全，不截断） */
  .workspace .main .radio-row{display:flex!important;flex-wrap:wrap!important;gap:6px;min-width:0}
  .workspace .main .radio-row > label{flex:0 1 auto;max-width:100%;min-width:0;display:flex!important;flex-direction:row!important;align-items:center;gap:5px;padding:6px 9px!important;font-size:11.5px!important;white-space:normal}
  .workspace .main .radio-row > label > input{flex:none;margin:0}

  /* 收费与欠费统计块（首页）：年限条紧凑，金额不拆行 */
  .workspace .main .insight-chart{gap:4px!important;padding:10px!important}
  .workspace .main .insight-band{min-height:0!important;padding:7px 10px!important;margin:0!important;row-gap:4px!important}
  .workspace .main .insight-band b{white-space:nowrap}
  /* 输入框、下拉统一 32 高（产品个别页设成 44 高，手机上显得笨重） */
  .workspace .main :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){height:32px!important;min-height:0!important;padding-top:0!important;padding-bottom:0!important;line-height:normal!important;font-size:12px!important}

  /* ---------- 表格：全列保留，区内横滑，首列固定 ---------- */
  .workspace .main :is(.table-wrap,.table-scroll,.ledger-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
  .workspace .main :is(.table-wrap,.table-scroll,.ledger-table-wrap) table,.workspace .main table.dtable{width:max-content!important;min-width:100%;table-layout:auto!important;border-collapse:separate;border-spacing:0}
  .workspace .main :is(.table-wrap,.table-scroll,.ledger-table-wrap) :is(th,td){white-space:nowrap;padding:6px 8px!important;font-size:11.5px!important}
  .workspace .main :is(.table-wrap,.table-scroll,.ledger-table-wrap) :is(th,td):first-child{position:sticky;left:0;z-index:1;background:var(--card,#fff);box-shadow:1px 0 var(--line,#e5e9f2)}

  /* 企业卡（控制台企业列表）：一行一张，卡内“开通模块/已用账号/关联企业”三项并排 */
  .workspace .main .company-grid{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  .workspace .main :is(.company-head,.module-head){display:flex;align-items:center;gap:8px;min-width:0}
  .workspace .main :is(.company-head,.module-head) > .spacer{flex:1 1 0;min-width:0}
  .workspace .main :is(.company-head,.module-head) :is(h3,p,span.small){display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main :is(.company-head,.module-head) > details{flex:none}
  .workspace .main :is(.company-head,.module-head) > .icon-tile{flex:none;width:30px!important;height:30px!important}
  .workspace .main :is(.company-head,.module-head) summary.icon-btn{width:28px!important;height:28px!important;min-height:0!important;padding:0!important;display:grid;place-items:center}
  .workspace .main .module-card{padding:10px!important;min-width:0}
  .workspace .main .company-card .company-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .workspace .main .company-card .company-data small{white-space:nowrap}
  .workspace .main input[type=file]{font-size:11px!important}

  /* 课程卡（标准课库、培训）：封面字和课程名单行省略，不伸出卡片 */
  .workspace .main .course-card{min-width:0;overflow:hidden;padding:8px!important}
  .workspace .main .course-card .course-cover{min-width:0;overflow:hidden;height:auto!important;min-height:0!important;padding:10px!important;border-radius:10px!important}
  .workspace .main .course-card :is(h3,.standard-course-cover-title){white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;min-width:0;font-size:12.5px!important}
  .workspace .main .course-card .course-cover :is(svg,.icon){width:28px!important;height:28px!important}

  /* 顶栏通知浮层：脚本按电脑版右对齐 360 宽摆放，手机上会伸出左边；改成左右各留 12 */
  :where(body:not(:has([data-v17-product-phone]))) .ap-layer.ap-pop{left:12px!important;right:12px!important;width:auto!important;max-width:none!important;max-height:70vh;overflow:auto}

  /* 控制台“问题反馈”（45）：页面没有 .main，面板直接放在外壳里 */
  .workspace > section.feedback-list.panel{grid-column:2;min-width:0;margin:8px 12px 24px!important;padding:10px!important;border-radius:12px!important;align-self:start}
  .workspace > section.feedback-list .feedback-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px!important}
  .workspace > section.feedback-list .feedback-heading h1{font-size:19px!important;line-height:1.3;margin:0!important}
  .workspace > section.feedback-list .btn{min-height:30px!important;height:30px;padding:0 10px!important;font-size:12px!important;border-radius:9px!important}
  .workspace > section.feedback-list .feedback-filters{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;margin:0 0 8px!important}
  .workspace > section.feedback-list .feedback-filters > .field{display:flex!important;flex-direction:column;gap:3px;min-width:0;margin:0!important;font-size:11px!important}
  .workspace > section.feedback-list .feedback-filters :is(select,input){width:100%!important;min-width:0;height:32px!important;min-height:0!important;padding:4px 8px!important;font-size:12px!important;border-radius:9px!important;box-sizing:border-box}
  .workspace > section.feedback-list .empty-filter{padding:16px!important;font-size:12px!important}

  /* 旧式事项页（休假与个人事项等 .matter-page / .record-workspace）：外层和详情卡内边距收到 10，标题收到卡片标题大小 */
  .workspace .main section.matter-page{padding:10px!important;border-radius:12px!important}
  .workspace .main section.matter-page :is(h2){font-size:15px!important;line-height:1.35;margin:2px 0 6px!important}
  .workspace .main section.matter-page :is(h3){font-size:13.5px!important;margin:4px 0!important}
  .workspace .main :is(.record-workspace,.record-detail){padding:0!important;gap:8px!important}
  .workspace .main article.record-detail{padding:10px!important;border-radius:12px!important}

  /* 正文里嵌的第二个页头（培训与考试 .training-header.topbar）：不按顶栏排，按普通卡片头排：标题说明一行、按钮另起一行靠右 */
  .workspace .main .topbar:not(.main > .topbar){display:flex!important;flex-wrap:wrap!important;align-items:flex-start;gap:6px!important;position:static!important;height:auto!important;min-height:0!important;padding:0!important;margin:0 0 8px!important;grid-template-columns:none!important;background:none!important;box-shadow:none!important;border:0!important}
  .workspace .main .topbar:not(.main > .topbar) > div:first-child{flex:1 1 100%;min-width:0}
  .workspace .main .topbar:not(.main > .topbar) > div:first-child > *{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .workspace .main .topbar:not(.main > .topbar) h1{font-size:17px!important;margin:0 0 2px!important}
  .workspace .main .topbar:not(.main > .topbar) p{font-size:12px!important;line-height:1.5;margin:0!important}
  .workspace .main .topbar:not(.main > .topbar) > :is(.button-row,.actions,.top-meta){flex:1 1 100%;display:flex!important;justify-content:flex-end;gap:6px;max-width:none!important}
  .workspace .main .u5-learning-sections > button{display:flex!important;align-items:center;gap:6px}
  .workspace .main .u5-learning-sections > button :is(svg,.icon){width:16px!important;height:16px!important}

  /* 控制台旧面板（标准课库清单 .console-panel）：表格放进横滑、单元格不折行；表单的原生框线去掉 */
  .workspace .main section.console-panel{padding:10px!important;border-radius:12px!important;overflow-x:auto}
  .workspace .main section.console-panel h2{font-size:15px!important;margin:0 0 6px!important}
  .workspace .main section.console-panel > table{display:block;overflow-x:auto;max-width:100%;width:auto!important}
  .workspace .main section.console-panel > table :is(th,td){white-space:nowrap;padding:6px 8px!important;font-size:11.5px!important}
  .workspace .main section.console-panel fieldset{border:0!important;padding:0!important;margin:0 0 8px!important;min-width:0}

  /* 反馈窗打开时，右下“＋”快捷入口先藏起来，不压住反馈窗的提交按钮 */
  body:has(.feedback-overlay):not(:has([data-v17-product-phone])) .u5a-fab-wrap{display:none!important}

  /* 旧协同办理嵌入区（.office-page，岗位能力与离职交接、纸质签章等）：层层内边距收到 0/8，详情卡不另套框；办理按钮条不悬浮压住标题 */
  .workspace .main :is(.paper-linked,.office-page){padding:0!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important}
  .workspace .main .office-page :is(h1,h2){font-size:15px!important;line-height:1.35;margin:2px 0 4px!important}
  .workspace .main .office-page :is(.record-workspace,.detail){padding:0!important;gap:8px!important;border:0!important;box-shadow:none!important;background:none!important}
  .workspace .main .office-page form.editor{padding:10px!important;border-radius:12px!important}
  .workspace .main .office-page form.editor > :is(.actions,.button-row,.form-actions,div:has(> button)){position:static!important}
  .workspace .main .office-page .panel-toolbar{position:static!important;padding:8px 10px!important;margin:0 0 8px!important}
  /* 嵌入区自己的标题（合同与用印、案件持续办理等）是区块标题，不是第二个页面标题：15px，下距 8 */
  .workspace .main .office-page :is(h1,h2):not(.topbar h1){font-size:15px!important;margin:2px 0 4px!important}
  .workspace .main .office-page .page-head{margin:0 0 8px!important;gap:8px!important}
  /* 嵌入区旧表单：字段名 12px，名与框间 4，项距 10；无类名按钮 30 高 */
  .workspace .main .office-page form.editor{row-gap:0!important}
  .workspace .main .office-page form label:has(> :is(input:not([type=checkbox]):not([type=radio]),select,textarea)){display:flex!important;flex-direction:column;gap:4px!important;font-size:12px!important;line-height:1.4!important;margin:0 0 10px!important}
  .workspace .main .office-page form label > :is(input:not([type=checkbox]):not([type=radio]),select,textarea){margin:0!important}
  .workspace .main .office-page .person-search{padding:10px!important}
  .workspace .main .office-page :is(form,.button-row,.person-search) button:not([class]){min-height:0!important;height:30px!important;padding:0 12px!important;font-size:12px!important;border-radius:9px!important;line-height:1;white-space:nowrap}
  .workspace .main .office-page .button-row{gap:6px!important;padding-top:8px!important;align-items:center}
  /* 房屋居住责任的三格统计（.housing-summary）：一行三格 */
  .workspace .main .housing-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important}
  .workspace .main .housing-summary > span{display:flex!important;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:8px!important;font-size:11px!important;border-radius:10px}
  .workspace .main .housing-summary > span > b{font-size:15px!important;margin-top:auto}
  .workspace .main form.housing-query{gap:8px!important;padding:10px!important}
  .workspace .main form.housing-query > label{gap:4px!important;line-height:1.4}

  /* ---------- 业务目录：3 列 ---------- */
  .workspace .main .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .workspace .main .module-grid .business-entry{padding:8px!important;min-width:0}
  .workspace .main .module-grid .business-entry :is(h3,strong,p,small){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .module-grid .business-entry > :is(button,.btn,a.btn){width:100%;padding:4px 6px!important}

  /* ---------- 流程小标签：整颗换行，不截字 ---------- */
  .workspace .main .flow{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
  .workspace .main .flow > *{flex:none;white-space:nowrap;font-size:11px!important}

  /* 今日看板（考勤“已到岗/未打卡/请假/还没到班”等多列看板）：列宽固定，区内横滑 */
  .workspace .main .today-board{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:148px;gap:6px!important;overflow-x:auto;scrollbar-width:none}
  .workspace .main .today-board .status-col{min-width:0;padding:8px!important}
  .workspace .main .today-board .status-col > h3{font-size:12px!important;white-space:normal!important;align-items:flex-start;gap:5px;line-height:1.35;overflow-wrap:anywhere}
  .workspace .main .today-board .status-col > h3 > svg{flex:none;width:16px;height:16px;margin-top:1px}
  .workspace .main .today-board .pchip{display:flex!important;align-items:center;gap:6px;width:100%;min-width:0;padding:6px!important;text-align:left}
  .workspace .main .today-board .pchip > span:last-child{min-width:0;flex:1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .today-board .pchip small{display:block;font-size:10.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace .main .today-board .pchip .avatar{width:24px;height:24px;font-size:11px;flex:none}

  /* ---------- 工作台右侧日历（移到下面后） ---------- */
  .workspace > .rail .calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}
  .workspace > .rail .calendar :is(span,button){font-size:11px!important;min-width:0;padding:3px 0!important}

  /* ---------- 弹窗、抽屉：左右各留 12px，内容在弹窗里滚动，按钮一行靠右 ---------- */
  :where(body:not(:has([data-v17-product-phone]))) :is(.glass-overlay,.modal-overlay,.u5-glass-overlay){padding:12px!important;box-sizing:border-box}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer){box-sizing:border-box;width:100%!important;max-width:calc(100vw - 24px)!important;max-height:85vh;overflow:hidden;display:flex!important;flex-direction:column;
    margin-left:auto!important;margin-right:auto!important;padding:14px!important;border-radius:16px!important;zoom:1!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer{box-sizing:border-box;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;zoom:1!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer{padding:14px 12px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer :is(fieldset,.sform){gap:6px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer label.account-check{min-height:36px!important;height:auto!important;padding:2px 0!important;margin:0!important;gap:8px!important;align-items:center;font-size:12.5px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer :is(h3,legend){font-size:13.5px!important;margin:8px 0 2px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer p{margin:2px 0!important;font-size:12px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer > .panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px!important}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer > .panel-head h2{font-size:17px!important;line-height:1.3;margin:0!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  :where(body:not(:has([data-v17-product-phone]))) .v19-account-drawer > .panel-head .icon-btn{width:30px!important;height:30px!important;min-height:0!important;padding:0!important;flex:none;display:grid;place-items:center;border-radius:9px!important}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-heading{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 0 10px!important;margin:0!important}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-heading h2{font-size:16px!important;line-height:1.35;margin:0!important;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-heading .u5-icon-button{width:30px!important;height:30px!important;min-height:0!important;padding:0!important;flex:none;display:grid;place-items:center;border-radius:9px!important}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-heading .u5-icon-button svg{width:17px;height:17px}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:10px 0 0!important;font-size:12px}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-body > p{margin:0 0 8px!important;line-height:1.55}
  :where(body:not(:has([data-v17-product-phone]))) .u5-glass-dialog > .u5-dialog-body .alert{padding:9px 11px!important;border-radius:10px!important;line-height:1.55}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .modal-head{gap:8px;margin-bottom:10px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .modal-head h2{font-size:16px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .modal-head .icon-btn{width:30px!important;height:30px!important;min-height:0!important;padding:0!important;flex:none}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .modal-body{padding:10px!important;font-size:12px}
  /* 弹窗内容长时只在正文里滚动，标题和底部按钮始终看得到 */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) > :is(.modal-head,header){flex:none}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) > .modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) > :is(.modal-actions,.actions){flex:none}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(p,li,dd,dt,label,td,th,span){font-size:12px}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(small,.small,.eyebrow,.tag,.muted.small){font-size:11px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:32px;padding:6px 9px!important;font-size:12.5px!important;border-radius:9px}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.pfield,label){min-width:0}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.sform,.fee-form,.form-grid){gap:8px!important}
  /* 弹窗表单：手机上一项一行（弹窗本身就窄，两列会出现半宽孤项、字段名被截） */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.sform,.fee-form,.form-grid){grid-template-columns:minmax(0,1fr)!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.sform,.fee-form,.form-grid) > :is(label,.pfield,.field){display:flex;flex-direction:column;gap:3px;font-size:11.5px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .pchips{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) .pchips > *{flex:none;white-space:nowrap;font-size:12px!important;padding:5px 11px!important;min-height:0!important}
  /* 弹窗正文里嵌的旧表单（付款与报销、手工开账单等）：内层大标题收小、内层卡片内边距收小 */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body :is(h2,h3){font-size:15px!important;line-height:1.35;margin:6px 0 4px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body > :is(section,div,form):not(.table-wrap){padding:10px!important;border-radius:12px}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body > :is(section,div,form) > :is(section,div,form):is(.panel,.card,[class*=panel]){padding:10px!important}
  /* 弹窗里旧表单的无类名按钮（查找可选项、返回事项列表等）：统一成 30 高的次级按钮；工具条一行两端对齐 */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body button:not([class]){min-height:0!important;height:30px!important;padding:0 12px!important;font-size:12px!important;border-radius:9px!important;white-space:nowrap;line-height:1}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .panel-toolbar{display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .person-search{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px;margin-bottom:10px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .person-search > label:has(> :is(input:not([type=checkbox]):not([type=radio]),select,textarea)){margin-bottom:0!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .person-search > button{height:32px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body fieldset{border:0!important;padding:0!important;margin:0!important;min-width:0}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body legend{padding:0!important;margin:4px 0!important;font-size:12.5px!important;font-weight:600;color:var(--muted,#59677e)}
  /* 弹窗里“字段名包着输入框”的旧表单（登记收款等）：字段名 12px，名与框间 4px，项与项间 10px（用下外边距，块排和网格排的表单都一样） */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body label:has(> :is(input:not([type=checkbox]):not([type=radio]),select,textarea)){display:flex!important;flex-direction:column;gap:4px!important;font-size:12px!important;line-height:1.4!important;margin:0 0 10px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body label > :is(input:not([type=checkbox]):not([type=radio]),select,textarea){margin:0!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body :is(.ledger-field-grid,.ledger-form fieldset){gap:0!important;margin:0!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .ledger-form fieldset{display:grid!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body form.editor:not(.sform){row-gap:0!important}
  /* 字段放在带间距的网格里（.sform、.fields 等）：项距用网格的 10，字段名不再加下外边距 */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body :is(.sform,.fields,.fee-form,.form-grid){row-gap:10px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body :is(.sform,.fields,.fee-form,.form-grid) > label:has(> :is(input:not([type=checkbox]):not([type=radio]),select,textarea)){margin:0!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body :is(section,div).panel{padding:10px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .panel-head{margin:0 0 8px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .section-space{margin-top:0!important}
  /* 收费记录详情等：字段表行距 8，嵌套的期间收支块内边距 10、正文 12px */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body dl{gap:8px 10px!important;font-size:12px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .period-totals{padding:10px!important;margin:10px 0!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .period-totals :is(p,li,span){font-size:12px!important;line-height:1.6!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .button-row{display:flex!important;justify-content:flex-end;gap:6px;margin-top:12px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer) .modal-body .button-row > button:is(.primary,.secondary){min-height:0!important;height:32px!important;padding:0 14px!important;font-size:12.5px!important;border-radius:9px!important;white-space:nowrap;flex:none}
  /* 弹窗里的表格：和页面里一样按内容宽横滑、单元格不折行，第一列固定 */
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.table-wrap,.table-scroll,.ledger-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.table-wrap,.table-scroll,.ledger-table-wrap) table{width:max-content!important;min-width:100%;table-layout:auto!important;border-collapse:separate;border-spacing:0}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.table-wrap,.table-scroll,.ledger-table-wrap) :is(th,td){white-space:nowrap;padding:6px 8px!important;font-size:11.5px!important}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.table-wrap,.table-scroll,.ledger-table-wrap) :is(th,td):first-child{position:sticky;left:0;z-index:1;background:var(--card,#fff);box-shadow:1px 0 var(--line,#e5e9f2)}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.actions,.modal-actions){display:flex;justify-content:flex-end;flex-wrap:nowrap;gap:6px;margin-top:10px}
  :where(body:not(:has([data-v17-product-phone]))) :is(dialog,.modal,.glass-modal,.u5-glass-dialog,.drawer,.v19-account-drawer) :is(.actions,.modal-actions) .btn{min-height:32px!important;padding:6px 12px!important;font-size:12.5px!important;white-space:nowrap;flex:none}

  /* ---------- 标题、按钮、标签不折行（§66 第 3 条） ---------- */
  .workspace .main :is(h1,h2,h3,.btn,.chip,.tag,th){word-break:keep-all}

  /* ================= 老外壳（业务目录、旧企业运营入口）同样按版式一 ================= */
  /* 业务目录外壳 .v2-shell：左 46px 图标栏，主区按版式一的顶部、页签、卡片排法 */
  .workspace.v2-shell > .sidebar{display:none!important}
  .workspace.v2-shell > .u1-rail{grid-column:1;grid-row:1 / span 2;position:sticky;top:0;height:100vh;display:flex!important;flex-direction:column;align-items:center;
    gap:4px;padding:8px 0!important;width:46px;overflow-y:auto;scrollbar-width:none;border-right:1px solid var(--line,#e5e9f2)}
  .workspace.v2-shell > .u1-rail > *{flex:none;width:34px!important;height:34px!important;min-height:0!important;padding:0!important;border-radius:9px!important;display:grid;place-items:center}
  .workspace.v2-shell > .u1-rail :is(svg,.icon){width:18px;height:18px}
  .workspace.v2-shell > .main-area{grid-column:2;grid-row:1 / span 2;min-width:0;padding:8px 12px 24px!important;font-size:12px}
  .workspace.v2-shell > .main-area > .topbar{display:flex!important;align-items:center;gap:6px;min-height:0!important;height:auto!important;padding:0 0 6px!important;margin:0!important;border:0!important;flex-wrap:nowrap!important;background:none!important}
  .workspace.v2-shell > .main-area > .topbar > .sidebar-toggle{display:none!important}
  /* 目录展开状态（没有图标栏）：目录从左侧盖在页面上，宽 240、可滚；顶栏显示“收起目录”图标按钮，点了回到图标栏 */
  .workspace.v2-shell:not(:has(> .u1-rail)) > .sidebar{display:flex!important;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:240px;z-index:50;overflow-y:auto;padding:12px 10px!important;background:var(--card,#fff);box-shadow:8px 0 32px rgba(20,30,60,.18);font-size:12.5px}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .main-area{grid-column:1 / -1}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .sidebar :is(.platform-nav,.sidebar-foot){display:flex!important;flex-direction:column;gap:2px;flex:none;max-height:none!important;height:auto!important;overflow:visible!important}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .sidebar .sidebar-foot strong{overflow-wrap:anywhere;font-size:11px}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .sidebar .nav-toggle{display:none!important}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .sidebar .platform-nav :is(a,button){min-height:32px!important;padding:6px 8px!important;font-size:12.5px!important;text-align:left}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .main-area > .topbar > .sidebar-toggle{display:grid!important;place-items:center;flex:none;width:28px;height:28px;padding:0!important;font-size:0!important;border-radius:8px!important;position:fixed;left:200px;top:10px;z-index:51}
  .workspace.v2-shell:not(:has(> .u1-rail)) > .main-area > .topbar > .sidebar-toggle :is(svg,.icon){width:16px;height:16px}
  .workspace.v2-shell > .main-area > .topbar > .breadcrumbs{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:3px;font-size:11px!important;white-space:nowrap;overflow:hidden}
  .workspace.v2-shell > .main-area > .topbar > .breadcrumbs > *{font-size:11px!important;padding:0!important;min-height:0!important;white-space:nowrap}
  .workspace.v2-shell > .main-area > .topbar > .topbar-actions{flex:none;width:auto!important;max-width:none!important;display:flex!important;align-items:center;gap:4px}
  .workspace.v2-shell > .main-area > .topbar > .breadcrumbs{flex-wrap:nowrap!important;height:auto!important}
  .workspace.v2-shell > .main-area > .topbar > .topbar-actions > :is(.v2-theme,.appearance-control){display:none!important}
  .workspace.v2-shell > .main-area > .topbar > .topbar-actions :is(button,summary){height:28px!important;min-height:0!important;padding:0 8px!important;font-size:11.5px!important;border-radius:8px!important;white-space:nowrap}
  .workspace.v2-shell > .main-area > .topbar > .topbar-actions .command-trigger kbd{display:none}
  .workspace.v2-shell > .main-area > .topbar > .topbar-actions .u5a-notification-toggle{width:28px!important;padding:0!important}
  .workspace.v2-shell > .main-area > :is(.company-presentation,.scope-bar){display:flex!important;align-items:center;gap:6px;margin:0 0 4px!important;padding:0!important;min-height:0!important;font-size:11px!important;white-space:nowrap;overflow:hidden}
  .workspace.v2-shell > .main-area > :is(.company-presentation,.scope-bar) :is(span,b,small,button){font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0!important;min-height:0!important}
  .workspace.v2-shell > .main-area > .scope-bar > span{flex:1 1 0;min-width:0}
  .workspace.v2-shell > .main-area > .scope-bar > button{flex:none}
  .workspace.v2-shell > .main-area > .company-presentation .company-brand-logo{display:none}
  .workspace.v2-shell .page-head{margin:4px 0 8px!important;padding:0!important}
  .workspace.v2-shell .page-head h1{font-size:19px!important;line-height:1.3;margin:1px 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace.v2-shell .page-head :is(p,.eyebrow){font-size:11px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace.v2-shell .workspace-tools{display:flex!important;align-items:flex-end;gap:6px;flex-wrap:nowrap!important;margin:0 0 8px!important}
  .workspace.v2-shell .workspace-tools .work-group-tabs{flex:1 1 0;min-width:0;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;padding:3px!important;gap:2px}
  .workspace.v2-shell .workspace-tools .work-group-tabs > button{flex:none;white-space:nowrap;font-size:12px!important;padding:5px 9px!important;min-height:0!important}
  .workspace.v2-shell .workspace-tools .catalog-filter{flex:0 0 120px;min-width:0;margin:0 0 0 auto!important}
  .workspace.v2-shell .workspace-tools .catalog-filter label{display:block;font-size:0!important;line-height:0}
  .workspace.v2-shell .workspace-tools .catalog-filter{align-self:center}
  .workspace.v2-shell .workspace-tools .catalog-filter input{width:100%;min-width:0;height:30px!important;min-height:0!important;padding:4px 8px!important;font-size:11.5px!important;line-height:normal;border-radius:9px!important;box-sizing:border-box}
  .workspace.v2-shell .module-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .workspace.v2-shell .module-grid .business-entry{padding:8px!important;min-width:0;min-height:0!important;border-radius:11px!important;display:flex;flex-direction:column;gap:3px}
  .workspace.v2-shell .module-grid .business-entry :is(small,.module-card-top){font-size:10.5px!important}
  .workspace.v2-shell .module-grid .business-entry h2{font-size:12.5px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .workspace.v2-shell .module-grid .business-entry p{font-size:11px!important;margin:0!important;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .workspace.v2-shell .module-grid .business-entry > button{box-sizing:border-box;min-width:0!important;max-width:100%;width:100%;min-height:0!important;height:28px;padding:0 6px!important;font-size:11.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:auto}

  /* 旧企业运营入口 .jiexu-console：顶栏一行；标题和按钮一行；企业卡整宽 */
  .jiexu-console > header{display:flex!important;align-items:center;gap:8px;padding:8px 12px!important;flex-wrap:nowrap!important}
  .jiexu-console > header > div:first-child{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:6px}
  .jiexu-console > header strong{font-size:15px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .jiexu-console > header .console-account{flex:none;display:flex;align-items:center;gap:6px;font-size:11px!important}
  .jiexu-console > header .console-account > span{max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .jiexu-console :is(header,main) button{height:30px;min-height:0!important;padding:0 10px!important;font-size:12px!important;white-space:nowrap;border-radius:9px!important}
  .jiexu-console{grid-template-columns:minmax(0,1fr)!important}
  .jiexu-console > *{grid-column:1 / -1!important}
  .jiexu-console > main{padding:10px 12px 24px!important;max-width:none!important;margin:0!important;width:auto!important}
  .jiexu-console .console-section-heading{display:flex!important;align-items:center;gap:6px;flex-wrap:nowrap!important;margin-bottom:8px}
  .jiexu-console .console-section-heading h1{flex:1 1 0;min-width:0;font-size:19px!important;margin:0!important}
  .jiexu-console .u5-company-grid{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;margin-top:8px}
  .jiexu-console main > .console-account{display:flex!important;align-items:center;justify-content:center;gap:8px;margin-top:8px}
}

/* 管理端外壳以外（员工手机页、钉钉手机办理页、登录页）：接入时整块删除的 product-narrow.css 6 个窄屏块，原文逐条补回，
   只在页面里没有管理端外壳（.workspace）和平台旧入口（.jiexu-console）时生效，所以这些页面接入前后逐像素不变；
   前缀用 :where() 不加权重，与原文件优先级相同。管理端仍按上面版式一。 */
/* product-narrow.css 原 42–86 行 */
@media (max-width:640px) {
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-manager-summary] .grid-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-manager-summary] :is([data-summary-group="charging"],[data-summary-group="finance"]) .grid-4 { grid-template-columns:minmax(0,1fr); }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .estimate-workspace :is(.grid-2,.sform) { grid-template-columns:minmax(0,1fr); }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app :is(.chips,.tabs,.module-tabs,.work-group-tabs,.pw-tabs,.personnel-tabs,[role="tablist"]),
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #platform :is(.chips,.tabs,[role="tablist"]),
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #console :is(.chips,.tabs,[role="tablist"]) {
    display:flex!important;
    flex-wrap:nowrap!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:auto!important;
    box-sizing:border-box;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.chips,.tabs,.module-tabs,.work-group-tabs,.pw-tabs,.personnel-tabs,[role="tablist"]) > :is(button,a,[role="tab"],.chip,span) {
    flex:0 0 auto!important;
    white-space:nowrap!important;
    word-break:normal!important;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) {
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:10px!important;
    min-width:0;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > .icon-tile {
    grid-column:1;grid-row:1;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > .meta {
    display:contents!important;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > .meta > :is(strong,h3) {
    grid-column:2;grid-row:1;min-width:0;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > .meta > :is(small,p,.subline) {
    grid-column:1/-1;min-width:0;overflow-wrap:anywhere;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > :is(button,a,.actions) {
    grid-column:1/-1;justify-self:end;max-width:100%;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(#app,#platform,#console) :is(.list-item,.record-card):has(>.icon-tile):has(>.meta):has(>:is(button,a,.actions)) > .spacer {
    display:none!important;
  }

}
/* product-narrow.css 原 99–113 行 */
@media(max-width:780px){
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-cases] .sform,:where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(.v19-account-drawer,.glass-modal) .sform{grid-template-columns:minmax(0,1fr)!important}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-cases] .sform input,:where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-cases] .sform select,:where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(.v19-account-drawer,.glass-modal) .sform input,:where(body:not(:has(:is(.workspace,.jiexu-console)))) :is(.v19-account-drawer,.glass-modal) .sform select{min-width:0;width:100%}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-cases] .actions,:where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-cases] .callout{flex-wrap:wrap}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app :is([data-hr-list],[data-hr-detail],[data-hr-punch-exceptions]) .dtable{min-width:100%;width:max-content}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app :is([data-hr-list],[data-hr-detail],[data-hr-punch-exceptions]) .dtable td{white-space:nowrap}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item:has(>.icon-tile){display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important;min-width:0}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.icon-tile{grid-column:1;grid-row:1}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.meta{display:contents!important}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.meta>strong{grid-column:2;grid-row:1;min-width:0;white-space:normal;overflow-wrap:anywhere}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.meta>small{grid-column:1/-1;grid-row:2;min-width:0;overflow-wrap:anywhere}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.tag{grid-column:2;grid-row:3;justify-self:end}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.spacer{display:none!important}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-hr-detail] .list-item>.btn{grid-column:1/-1;grid-row:4;justify-self:end}

}
/* product-narrow.css 原 126–132 行 */
@media(max-width:780px){
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-controls]{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;min-width:0;max-width:100%}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-controls]>button{flex:0 0 auto;max-width:100%;white-space:nowrap}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-controls]>button.primary{flex:1 1 100%;width:100%;white-space:normal;overflow-wrap:anywhere}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-controls]>label{flex:1 1 100%;min-width:0;max-width:100%}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-controls]>label input{width:100%;min-width:0;max-width:100%;box-sizing:border-box}

}
/* product-narrow.css 原 139–152 行 */
@media (max-width: 780px) {
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .collection-directory-form {
    grid-template-columns: minmax(0, 1fr) !important;
    min-width: 0;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .collection-directory-form :is(label, input, select, .button-row) {
    min-width: 0;
    max-width: 100%;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .collection-directory-form :is(input, select) {
    width: 100%;
    box-sizing: border-box;
  }

}
/* product-narrow.css 原 154–172 行 */
@media (max-width: 780px) {
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-tabs] > button {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-form],
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-form] :is(fieldset, label, input, select, textarea) {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-form] :is(input:not([type=checkbox]):not([type=radio]), select, textarea) {
    width: 100%;
  }
  :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-form] fieldset {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

}
/* product-narrow.css 原 191–198 行 */
@media(max-width:780px){
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .billing-list-pagination{display:grid;grid-template-columns:repeat(3,max-content);gap:8px}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .billing-list-pagination .billing-page-count{grid-column:1/-1;grid-row:1;min-width:0}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .billing-list-pagination .billing-page-count>span{white-space:nowrap}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app [data-matter-tabs]+[data-matter-controls]{margin-top:12px}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .matter-list-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:12px 0}
 :where(body:not(:has(:is(.workspace,.jiexu-console)))) #app .matter-list-pagination{margin-top:12px}

}
