/* 墨线极简 · 公司运营中心。产品表面固定为白色，业务状态保留语义色。 */
:root {
  color-scheme: light;
  --bg: #ffffff;
  --panel: #ffffff;
  --surface: #ffffff;
  --ink: #202226;
  --muted: #6e747d;
  --line: #e5e8ec;
  --border: #e5e8ec;
  --accent: #b45133;
  --button: #24282e;
  --button-text: #ffffff;
  --accent-hover: #15181d;
  --soft: #faf4f1;
  --nav-bg: #ffffff;
  --nav-ink: #626973;
  --hover: #fafbfc;
  --danger: #ad4037;
  --danger-soft: #fff7f5;
  --danger-line: #f0d8d3;
  --warning: #956522;
  --warning-soft: #fff9ee;
  --success: #42664b;
  --success-bg: #f3f8f3;
  --featured-bg: #292d34;
  --featured-muted: #d1d5dc;
  --shadow: 0 10px 35px #2022260c;
  --radius: 5px;
  --page-pad: 28px;
  font: 14px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}
* { box-sizing: border-box; }
html { min-width: 320px; background: #fff; scrollbar-gutter: stable; }
body { margin: 0; background: #fff; }
button, input, select, textarea { font: inherit; color: inherit; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .5; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 2px solid #535d6b;
  outline-offset: 3px;
}
[hidden] { display: none !important; }
h1, h2, h3, p { margin: 0; }
h1 { overflow-wrap: anywhere; font-size: 27px; line-height: 1.3; font-weight: 550; letter-spacing: -.7px; }
h2 { overflow-wrap: anywhere; font-size: 19px; line-height: 1.45; font-weight: 550; letter-spacing: -.25px; }
h3 { font-size: 14px; line-height: 1.5; font-weight: 550; }
small { font-size: 13px; }
svg { width: 16px; height: 16px; flex: none; vertical-align: middle; stroke-width: 1.6; }
img.ui-icon { display: inline-block; width: 16px; height: 16px; object-fit: contain; flex: none; vertical-align: middle; pointer-events: none; }
.brand-mark img.ui-icon { filter: brightness(0) invert(1); }
input, select, textarea {
  width: 100%; min-width: 0; min-height: 39px; padding: 8px 10px;
  border: 1px solid #d5dae1; border-radius: 4px; background: #fff;
  font-size: 13px; line-height: 1.5;
}
input:focus, select:focus, textarea:focus { border-color: #737b86; }
textarea { min-height: 90px; resize: vertical; }
input[type=checkbox], input[type=radio] { width: 16px; height: 16px; min-height: 16px; padding: 0; accent-color: var(--accent); flex: none; }
input[type=file] { min-height: 40px; padding: 7px; font-size: 13px; }
input[type=file]::file-selector-button { border: 0; border-right: 1px solid var(--line); padding: 2px 11px 2px 2px; margin-right: 10px; background: #fff; color: #515965; font: inherit; }
input::placeholder, textarea::placeholder { color: #777e88; }
input[readonly] { background: #fafbfc; color: #616975; }
label { display: block; }
code, .mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; overflow-wrap: anywhere; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 12px; top: -100px; z-index: 99; background: #fff; border: 1px solid var(--line); padding: 8px 15px; }
.skip-link:focus { top: 12px; }

/* 横向主导航和按需换行的资料板块导航。 */
.app-shell { display: block; min-height: 100dvh; background: #fff; }
.app-header { display: flex; align-items: center; gap: 30px; padding: 15px var(--page-pad); min-height: 67px; border-bottom: 1px solid var(--line); background: #fff; }
.brand { display: flex; align-items: center; gap: 9px; flex: none; padding: 0; color: var(--ink); font-size: 17px; font-weight: 600; letter-spacing: -.45px; line-height: 1.4; white-space: nowrap; }
.brand:hover { text-decoration: none; }
.brand small { display: block; margin-top: 2px; color: var(--muted); font-size: 13px; font-weight: 400; letter-spacing: .1px; }
.brand-mark { display: grid; place-items: center; flex: none; width: 28px; height: 29px; border-radius: 3px; background: #25282d; color: #fff; font-size: 15px; font-weight: 500; }
.brand-mark svg { width: 17px; height: 17px; }
#primary-nav { display: flex; align-items: center; flex: 1; gap: 22px; min-width: 0; overflow-x: auto; scrollbar-width: none; }
#primary-nav::-webkit-scrollbar { display: none; }
#primary-nav .nav-button { flex: none; width: auto; margin: 0; padding: 8px 0 7px; border-radius: 0; border-bottom: 1px solid transparent; background: none; font-size: 13px; }
#primary-nav .nav-button:hover { color: #202226; background: none; text-decoration: none; }
#primary-nav .nav-button.active { color: #202226; background: none; border-bottom-color: #202226; font-weight: 550; }
.header-user, .topbar-right { display: flex; align-items: center; gap: 10px; flex: none; min-width: 0; color: #606771; font-size: 13px; }
.header-user .button, .header-user .icon-button { min-height: 30px; }
.header-user #user-name { max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.avatar { border: 0; padding: 0; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #f1f3f5; color: #58616d; font-size: 13px; flex: none; }
.app-layout, .app-body { display: block; min-width: 0; }
.sidebar { position: static; display: flex; align-items: center; flex-wrap: wrap; gap: 8px 18px; width: auto; height: auto; padding: 10px var(--page-pad); border: 0; border-bottom: 1px solid #edf0f2; background: #fff; overflow: visible; box-shadow: none; transform: none; }
.sidebar:empty { display: none; }
#main-navigation { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; flex: 1; min-width: 0; }
.sidebar .brand { display: none; }
.nav-label { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin: 0; color: #7c838d; font-size: 13px; font-weight: 400; letter-spacing: .1px; white-space: nowrap; }
.nav-button { display: inline-flex; align-items: center; justify-content: flex-start; gap: 6px; width: auto; min-height: 31px; margin: 0; padding: 5px 3px; border: 0; border-radius: 0; background: none; color: var(--nav-ink); font-size: 13px; text-align: left; line-height: 1.5; text-decoration: none; }
.nav-button:hover { color: #24282e; background: #fafbfc; text-decoration: none; }
.sidebar .nav-button.active { position: relative; color: var(--ink); font-weight: 550; }
.sidebar .nav-button.active::before { content: ""; width: 4px; height: 4px; flex: none; border-radius: 50%; background: var(--accent); }
.nav-button > span:first-child:has(svg) { display: inline-flex; }
.nav-button > span:first-child[aria-hidden=true] { font-size: 14px; line-height: 1; }
.nav-count { display: inline-block; min-width: 16px; padding: 0 3px; border-radius: 3px; background: #f5f6f8; color: #747c87; font-size: 13px; line-height: 18px; font-weight: 400; text-align: center; }
.nav-label .icon-button { width: 23px; min-width: 23px; height: 23px; min-height: 23px; padding: 0; font-size: 16px; }
.sidebar-bottom { display: flex; align-items: center; gap: 12px; margin-left: auto; padding: 0; }
.sidebar-bottom .nav-button { font-size: 13px; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 36px; height: auto; padding: 7px var(--page-pad); border-bottom: 1px solid #edf0f2; color: #727983; background: #fff; font-size: 13px; }
.app-header + .app-layout .topbar { border-bottom: 0; }
.main-content { min-width: 0; padding: 24px var(--page-pad) 32px; outline: none; }
.main-content > section { min-width: 0; }
.page-heading, .page-header, .page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.page-heading .muted, .page-header p, .page-head p { color: var(--muted); margin-top: 6px; font-size: 13px; line-height: 1.65; }
.page-actions, .actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.eyebrow { margin: 0 0 5px; color: #7a828d; font-size: 13px; line-height: 1.5; letter-spacing: .2px; }

/* 共用动作和文字。主要按钮用墨色，橙色只做定位和少量入口。 */
.button, .btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 35px; padding: 7px 12px; border: 1px solid #d8dde3; border-radius: 4px; background: #fff; color: #535c68; font-size: 13px; line-height: 1.5; white-space: nowrap; text-decoration: none; }
.button:hover, .btn:hover { background: #fafbfc; color: #252a31; border-color: #aeb6c1; text-decoration: none; }
.button.primary, .btn.primary { background: var(--button); border-color: var(--button); color: #fff; }
.button.primary:hover, .btn.primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); color: #fff; }
.button.soft, .btn.soft { background: var(--soft); border-color: #f1e7e1; color: #a34d31; }
.button.danger, .btn.danger { background: var(--danger-soft); border-color: var(--danger-line); color: var(--danger); }
.button.text, .btn.text { padding: 4px 2px; min-height: 28px; border-color: transparent; background: none; color: var(--accent); }
.button.text:hover, .btn.text:hover { color: #843a24; text-decoration: underline; }
.button.small, .btn.small { min-height: 29px; padding: 4px 8px; font-size: 13px; }
.button.text.small, .btn.text.small { padding: 3px 2px; }
.button svg, .btn svg { width: 14px; height: 14px; }
.icon-button { display: inline-flex; align-items: center; justify-content: center; gap: 0; flex: none; width: 30px; min-width: 30px; height: 30px; min-height: 30px; padding: 4px; border: 1px solid transparent; border-radius: 4px; background: none; color: #77808b; font-size: 19px; }
.icon-button:hover { background: #f4f6f8; color: #303741; }
.icon-button svg { width: 16px; height: 16px; }
.muted { color: var(--muted); font-size: 13px; }
.subline { display: block; margin-top: 3px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.tag, .badge { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; padding: 1px 6px; border-radius: 3px; background: #f5f6f8; color: #68717d; font-size: 13px; font-weight: 400; line-height: 20px; white-space: nowrap; }
.tag.good, .badge.good, .badge.success { background: var(--success-bg); color: var(--success); }
.tag.warn, .badge.warn, .badge.warning { background: var(--warning-soft); color: var(--warning); }
.tag.danger, .badge.danger, .badge.error { background: var(--danger-soft); color: var(--danger); }
.ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.num { text-align: right; font-variant-numeric: tabular-nums; }

/* 搜索和筛选都留在资料上方，不再放进大侧栏。 */
.toolbar, .filter-bar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 17px; }
.toolbar .search-field { position: relative; flex: 1; min-width: 240px; max-width: none; }
.search-field input { min-height: 45px; border-color: #cbd1d9; border-radius: 4px; padding: 10px 12px 10px 39px; font-size: 15px; line-height: 23px; }
.search-field:focus-within input { border-color: #4b5563; }
.search-symbol { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #5f6976; font-size: 20px; line-height: 1; pointer-events: none; }
.search-symbol svg { width: 18px; height: 18px; }
.toolbar select { width: auto; min-width: 110px; min-height: 38px; padding: 7px 25px 7px 10px; font-size: 13px; }
.toolbar .push { margin-left: auto; }
.result-count { flex: none; color: #717985; font-size: 13px; white-space: nowrap; }
.filter-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: 17px; }
.filter-tab { display: inline-flex; align-items: center; gap: 6px; min-height: 31px; padding: 5px 0; border: 0; border-radius: 0; background: none; color: #727a86; font-size: 13px; }
.filter-tab.active, .filter-tab[aria-pressed=true] { color: #24282e; font-weight: 550; }
.filter-tab.active::before, .filter-tab[aria-pressed=true]::before { content: ""; width: 4px; height: 4px; border-radius: 50%; background: var(--accent); }
.filter-bar { align-items: end; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.filter-bar .field { flex: 1 1 135px; max-width: 250px; gap: 5px; font-size: 13px; }
.filter-bar select, .filter-bar input { width: 100%; min-width: 0; min-height: 37px; font-size: 13px; }
.filter-bar > button { margin-bottom: 0; }

/* 目录搜索独立一行，范围和右侧筛选保留各自层级。 */
.library-search { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; min-width: 0; }
.library-search .search-field { position: relative; flex: 1; width: 100%; min-width: 0; }
.library-search input[type=search] { min-height: 46px; font-size: 16px; }
.library-search > select { width: auto; min-width: 115px; font-size: 13px; }
.library-tabs { display: flex; align-items: center; justify-content: space-between; gap: 12px 22px; flex-wrap: wrap; margin: 0 0 15px; }
.library-tabs > .filter-tabs, .library-tabs > .actions { display: flex; align-items: center; gap: 23px; flex-wrap: wrap; }
.library-tabs > .toolbar, .library-tabs .toolbar-controls, .library-tabs .library-filters { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin: 0 0 0 auto; }
.library-tabs select, .library-tabs .toolbar-controls select, .library-tabs .library-filters select { width: auto; min-height: 31px; padding: 4px 23px 4px 8px; border-color: #dfe4ea; font-size: 13px; }
.library-tabs > button { min-height: 30px; border: 0; background: none; color: #6e7887; font-size: 13px; }
.library-tabs > button.active, .library-tabs > button[aria-pressed=true] { color: #24282e; }
.account-quick-panel .credential-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; min-height: 47px; padding: 8px 10px; border: 1px solid #d9dfe6; border-radius: 4px; background: #fff; }
.account-quick-panel .credential-row > div { min-width: 0; }
.account-quick-panel .credential-row .credential-label { margin-bottom: 4px; }
.account-quick-panel .credential-row .credential-value { font-size: 13px; }
.account-quick-panel .credential-row:has(> .credential-copy) { display: block; padding: 0; border: 0; }
.account-quick-panel .credential-row:has(> .credential-copy) > .credential-label { margin-bottom: 5px; }

/* 表格：纯白细线；普通业务表可横向滚动，网址表在窄屏单独重排。 */
.panel, .card { padding: 18px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: none; }
.panel + .panel, .card + .card { margin-top: 16px; }
.panel-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.section { margin-bottom: 18px; }
.table-panel { padding: 0; border: 0; border-top: 1px solid #333840; border-bottom: 1px solid var(--line); border-radius: 0; background: #fff; overflow: visible; }
.table-scroll { max-width: 100%; overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; table-layout: fixed; text-align: left; font-size: 13px; }
.data-table thead { background: #fff; }
.data-table th { position: sticky; top: 0; z-index: 1; padding: 10px 10px; border-bottom: 1px solid var(--line); background: #fff; color: #737b86; font-size: 13px; font-weight: 400; line-height: 1.5; text-align: left; white-space: nowrap; }
.data-table th button { padding: 0; border: 0; background: none; color: inherit; font: inherit; text-align: left; }
.data-table td { height: 56px; padding: 9px 10px; border-bottom: 1px solid #e9ecf0; vertical-align: middle; line-height: 1.5; overflow-wrap: anywhere; }
.data-table tbody tr:last-child td { border-bottom: 0; }
.data-table tbody tr:hover { background: var(--hover); }
.data-table th:first-child, .data-table td:first-child { padding-left: 4px; }
.data-table th:last-child, .data-table td:last-child { padding-right: 4px; }
.data-table .button, .data-table .btn { min-height: 28px; }
.data-table .actions { gap: 8px; }
.card .data-table { table-layout: auto; }
.card .data-table th, .card .data-table td { height: auto; padding: 10px; }
.record-name { display: block; width: 100%; min-width: 0; padding: 0; border: 0; background: none; color: #2d3239; font-size: 14px; font-weight: 550; line-height: 1.5; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.record-name:hover { color: var(--accent); }
.row-domain, .resource-meta { display: block; color: #707986; font-size: 13px; line-height: 1.5; margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.inline-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 12px 0; border-top: 1px solid var(--line); color: #737b86; font-size: 13px; }
.pagination-controls { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pagination-controls label { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.pagination select { width: auto; min-height: 29px; padding: 3px 22px 3px 8px; font-size: 13px; }
.table-empty { padding: 44px 18px !important; color: var(--muted); text-align: center; }
.table-empty strong { display: block; margin-bottom: 7px; color: var(--ink); font-size: 14px; font-weight: 550; }
.loading { padding: 42px 18px; color: var(--muted); text-align: center; font-size: 13px; }
.empty-state { padding: 35px 18px; border: 1px dashed #dce1e7; border-radius: 5px; background: #fff; color: #707986; text-align: center; font-size: 13px; }
.empty-state h2 { color: #333a44; font-size: 17px; }
.empty-state p { margin: 7px 0 17px; color: var(--muted); }
.error-panel { padding: 17px; border: 1px solid var(--danger-line); border-radius: 5px; background: var(--danger-soft); color: var(--danger); }
.error-panel .button { margin-top: 10px; }
.notice { margin: 12px 0; padding: 10px 13px; border: 1px solid #e4e7eb; border-left: 2px solid #cfd4db; border-radius: 2px; background: #fff; color: #6b7480; font-size: 13px; line-height: 1.7; }

/* 网址目录的新结构。图标块只表达类型，不提供点击反馈。 */
.resource-table { width: 100%; min-width: 0; }
.resource-table th, .resource-table td { padding-top: 9px; padding-bottom: 9px; }
.resource-name { display: flex; align-items: center; gap: 11px; min-width: 0; }
.resource-name > div, .resource-name > span:not(.resource-icon) { min-width: 0; }
.resource-icon { display: inline-grid; place-items: center; flex: 0 0 28px; width: 28px; height: 28px; border: 1px solid #e9ecf0; border-radius: 7px; background: #f7f8fa; color: #606b79; cursor: default; pointer-events: none; user-select: none; }
.resource-icon svg, .resource-icon i, .resource-icon img.ui-icon { display: block; width: 16px; height: 16px; stroke-width: 1.55; }
.resource-name .record-name, .resource-name strong { font-size: 14px; font-weight: 550; }
.resource-purpose { color: #434b56; font-size: 13px; }
.resource-purpose .subline, .resource-tags { color: #727b87; font-size: 13px; }
.resource-tags { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-top: 3px; }
.resource-tags .tag { padding: 0; background: none; line-height: 1.5; }
.resource-recommended, .company-recommendation { color: #707986; border-left: 1px solid #dfe3e8; margin-left: 3px; padding-left: 8px; font-size: 13px; white-space: nowrap; }
.resource-accounts { font-size: 13px; }
.resource-accounts .button, .resource-accounts > button { min-height: 28px; padding: 4px 0; border: 0; border-radius: 0; background: none; color: var(--accent); font-size: 13px; white-space: nowrap; }
.resource-accounts svg { width: 13px; height: 13px; }
.resource-recorder { color: #626c78; font-size: 13px; }
.resource-recorder .subline, .resource-recorder small { display: block; margin-top: 2px; color: #737c89; font-size: 13px; }
.resource-actions { text-align: right; }
.data-table th.resource-actions { text-align: right; }
.resource-actions .button.text { color: #596371; }
.resource-favorite { width: 31px; }
.favorite-button, .resource-favorite .icon-button { width: 27px; min-width: 27px; height: 29px; min-height: 29px; padding: 4px; border: 0; background: none; color: #9da5af; }
.favorite-button[aria-pressed=true], .resource-favorite .icon-button[aria-pressed=true] { color: #b96a48; }
.favorite-button[aria-pressed=true] svg, .resource-favorite .icon-button[aria-pressed=true] svg { fill: #f7e7df; }
.resource-table .account-quick-row:hover { background: #fff; }
.resource-table .account-quick-row > td { height: auto; padding: 0; border-bottom: 1px solid #343a43; }
.account-quick-panel { padding: 17px 4px 18px 40px; background: #fff; min-width: 0; }
.account-quick-header, .account-quick-heading, .quick-panel-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 13px; }
.account-quick-header > div, .account-quick-heading > div, .quick-panel-header > div { display: flex; align-items: center; gap: 11px; flex-wrap: wrap; min-width: 0; }
.account-quick-header strong, .account-quick-heading strong, .quick-panel-header strong { overflow-wrap: anywhere; font-size: 13px; font-weight: 550; }
.account-quick-header label, .account-quick-heading label, .quick-panel-header label { display: flex; align-items: center; gap: 7px; color: #737c88; font-size: 13px; }
.account-quick-panel select { width: auto; max-width: 210px; min-height: 31px; padding: 4px 25px 4px 8px; font-size: 13px; }
.account-quick-fields, .credential-grid, .credential-pair { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: 20px; }
.credential-field, .account-quick-fields > div, .credential-pair > div { min-width: 0; }
.credential-label { display: block; margin-bottom: 5px; color: #727c89; font-size: 13px; line-height: 1.5; }
.credential-copy { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 41px; padding: 8px 10px; border: 1px solid #d9dfe6; border-radius: 4px; background: #fff; min-width: 0; }
.credential-value { min-width: 0; color: #343d48; font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
.copy-control { display: inline-flex; align-items: center; justify-content: center; gap: 5px; flex: none; min-height: 28px; padding: 4px 0 4px 10px; border: 0; border-left: 1px solid #e1e5ea; border-radius: 0; background: #fff; color: #56616f; font-size: 13px; line-height: 1.5; white-space: nowrap; }
.copy-control:hover { color: #202226; }
.copy-control svg { width: 13px; height: 13px; }
.account-quick-footer, .account-quick-meta { display: flex; justify-content: space-between; gap: 8px 18px; flex-wrap: wrap; margin-top: 10px; color: #727c89; font-size: 13px; line-height: 1.6; }

/* 资料详情保持页内工作区，账号切换与凭证分区固定。 */
.record-detail-page { min-width: 0; }
.record-back, .back-link { display: inline-flex; align-items: center; gap: 6px; padding: 2px 0; border: 0; background: none; color: #737c88; font-size: 13px; }
.record-detail-page > .page-heading { align-items: center; padding-top: 17px; margin-bottom: 21px; }
.record-detail-page > .page-heading h1 { font-size: 28px; }
.record-detail-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 0 22px; }
.record-detail-header .resource-icon { width: 33px; height: 33px; flex-basis: 33px; }
.record-detail-header h1 { font-size: 28px; }
.record-detail-header .resource-name { gap: 12px; }
.record-detail-description { margin-top: 6px; color: #717b88; font-size: 13px; }
.record-detail-summary { padding: 17px 0 22px; border-top: 1px solid var(--line); }
.account-workspace { display: grid; grid-template-columns: 182px minmax(0,1fr); align-items: start; gap: 31px; border-top: 1px solid #343a43; min-width: 0; }
.account-switcher { min-width: 0; padding: 18px 0 0; }
.account-switcher-header { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 4px; color: #737d89; font-size: 13px; }
.account-switcher h3 { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin-bottom: 7px; color: #737d89; font-size: 13px; font-weight: 400; }
.account-switcher h3 .tag { padding: 0; background: none; font-size: 13px; }
.account-choice { display: flex; align-items: flex-start; gap: 9px; width: 100%; padding: 13px 0; border: 0; border-bottom: 1px solid #e8ecf0; border-radius: 0; background: #fff; color: #646f7d; font-size: 13px; line-height: 1.5; text-align: left; overflow-wrap: anywhere; }
.account-choice > div, .account-choice > span { min-width: 0; }
.account-choice strong { font-weight: 500; }
.account-choice small { display: block; margin-top: 4px; color: #747f8d; font-size: 13px; }
.account-choice:hover { background: #fafbfc; }
.account-choice.active, .account-choice[aria-pressed=true], .account-choice[aria-selected=true] { color: var(--accent); font-weight: 550; }
.account-choice-number { flex: none; color: #7c8591; font: 11px/1.9 ui-monospace, SFMono-Regular, Menlo, monospace; }
.account-choice.active .account-choice-number { color: inherit; }
.account-switcher > .button, .account-switcher > .actions { margin-top: 11px; }
.account-content { min-width: 0; padding-top: 20px; }
.account-content-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 13px; margin-bottom: 18px; }
.account-content-header h2 { font-size: 20px; }
.account-permission { display: block; margin-top: 5px; color: #647963; font-size: 13px; }
.account-content .credential-row { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 0; border-top: 1px solid var(--line); min-width: 0; }
.account-content .credential-row > div { min-width: 0; }
.account-content .credential-row .credential-label { margin: 0 0 6px; }
.account-content .credential-row .credential-value { font-size: 18px; line-height: 1.5; }
.account-content .credential-row .copy-control { min-width: 98px; padding: 8px 11px; border: 1px solid #d7dde5; border-radius: 4px; font-size: 13px; }
.account-content .credential-row + .credential-row { border-bottom: 1px solid var(--line); }
.account-content .detail-list { gap: 17px 26px; }
.account-content .detail-list dd { font-size: 13px; }
.account-content .detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 29px; padding: 23px 0; }
.account-content .detail-grid h3 { font-size: 13px; margin-bottom: 15px; }
.account-content .detail-grid .detail-list { grid-template-columns: 1fr; gap: 12px; }
.account-content .detail-grid .detail-list > div { display: flex; align-items: baseline; justify-content: space-between; gap: 13px; }
.account-content .detail-grid .detail-list dd { text-align: right; }
.account-content .detail-grid .detail-list dt { margin: 0; flex: none; }
.record-provenance, .account-provenance { display: flex; align-items: baseline; justify-content: space-between; gap: 8px 20px; flex-wrap: wrap; margin-top: 21px; padding-top: 15px; border-top: 1px solid var(--line); color: #727d8c; font-size: 13px; line-height: 1.7; }

/* 登录、普通表单和可访问 dialog 保留全部业务能力。 */
.auth-root { display: grid; place-items: center; min-height: 100dvh; padding: 28px; background: #fff; }
.auth-card { width: min(100%,410px); padding: 31px; border: 1px solid #dde2e8; border-radius: 6px; background: #fff; box-shadow: 0 12px 38px #20222605; }
.auth-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 27px; color: #343b44; font-size: 16px; font-weight: 550; }
.auth-card h1 { margin-bottom: 7px; font-size: 23px; }
.auth-card .muted { margin-bottom: 23px; font-size: 13px; }
.auth-card .field { margin: 16px 0; }
.auth-card .button.primary { width: 100%; min-height: 41px; margin-top: 9px; font-size: 13px; }
.auth-footnote { margin-top: 18px; color: #7a8390; font-size: 13px; line-height: 1.8; }
.field { display: flex; flex-direction: column; gap: 6px; min-width: 0; color: #4f5967; font-size: 13px; line-height: 1.5; }
.field small { color: #737e8b; font-size: 13px; line-height: 1.65; }
.required { color: var(--danger); }
.field-row, .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px 18px; }
.field.span, .form-grid > .span { grid-column: 1 / -1; }
.form-section { margin-bottom: 23px; }
.form-section h3 { margin-bottom: 15px; padding-bottom: 11px; border-bottom: 1px solid var(--line); color: #3d4652; font-size: 14px; }
.checkbox { display: flex; flex-direction: row; align-items: center; gap: 8px; color: #566171; font-size: 13px; }
.checkbox-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.form-error { margin-top: 14px; padding: 10px 12px; border-radius: 4px; background: var(--danger-soft); color: var(--danger); font-size: 13px; line-height: 1.6; white-space: pre-wrap; }
.password-field { position: relative; display: flex; }
.password-field input { padding-right: 56px; }
.password-field button { position: absolute; right: 7px; top: 50%; transform: translateY(-50%); padding: 4px; border: 0; background: none; color: #6d7785; font-size: 13px; }
.help-text { margin-top: 11px; color: #737e8c; font-size: 13px; line-height: 1.7; }
.dialog-note { margin-bottom: 16px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 3px; background: #fafbfc; color: #6e7886; font-size: 13px; line-height: 1.7; }
dialog { width: min(660px,calc(100% - 32px)); max-height: calc(100dvh - 40px); padding: 0; border: 1px solid #dce1e8; border-radius: 6px; color: var(--ink); background: #fff; box-shadow: 0 18px 65px #18202e26; overflow: auto; }
dialog::backdrop { background: #18202e4d; }
dialog.wide { width: min(1020px,calc(100% - 32px)); }
.dialog-heading { position: sticky; top: 0; z-index: 3; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 21px; border-bottom: 1px solid var(--line); background: #fff; }
.dialog-heading h2 { font-size: 18px; }
.dialog-heading .icon-button { font-size: 23px; }
#dialog-content { padding: 21px; }
#dialog-content > p + h3, #dialog-content > .form-grid + h3 { margin-top: 23px; }
#dialog-content > h3 { margin-bottom: 12px; }
#dialog-content .panel h3 { margin-bottom: 9px; }
#dialog-content .panel p + p { margin-top: 6px; }
.dialog-footer { position: sticky; bottom: 0; z-index: 3; display: flex; justify-content: flex-end; gap: 8px; padding: 13px 21px; border-top: 1px solid var(--line); background: #fff; }
#dialog-error { margin: 0 21px 15px; }
.detail-summary { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 20px; }
.detail-tabs { display: flex; align-items: center; gap: 21px; margin-bottom: 19px; border-bottom: 1px solid var(--line); overflow-x: auto; }
.detail-tab { padding: 9px 1px; border: 0; border-bottom: 1px solid transparent; background: none; color: #737d8b; font-size: 13px; line-height: 1.5; white-space: nowrap; }
.detail-tab.active { border-color: #343a43; color: #252b34; font-weight: 550; }
.detail-grid { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(220px,1fr); gap: 20px; }
.detail-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px 21px; margin: 0; }
.detail-list > div { min-width: 0; }
.detail-list dt { margin-bottom: 5px; color: #737e8d; font-size: 13px; }
.detail-list dd { margin: 0; color: #444e5c; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.detail-list .span { grid-column: 1 / -1; }
.account-card { margin: 14px 0; padding: 17px 0; border: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); border-radius: 0; background: #fff; }
.account-card:first-child { margin-top: 0; }
.account-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 13px; margin-bottom: 17px; }
.secret-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 11px 12px; margin-top: 16px; border: 1px solid #dbe1e8; border-radius: 4px; background: #fff; }
.secret-value { font-family: ui-monospace,SFMono-Regular,Menlo,monospace; font-size: 16px; line-height: 1.6; letter-spacing: 1px; overflow-wrap: anywhere; }
.history-row { padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.65; overflow-wrap: anywhere; }
.history-row small { display: block; margin-top: 4px; color: #737e8c; font-size: 13px; }
.renewal-history { margin-top: 17px; padding-top: 13px; border-top: 1px solid var(--line); }
.renewal-history summary { color: #626d7c; font-size: 13px; font-weight: 500; cursor: pointer; }
.renewal-history .history-row:last-child { border-bottom: 0; }
.builder-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 20px 0 10px; }
.builder-row { display: grid; grid-template-columns: minmax(100px,1.4fr) minmax(110px,1fr) auto auto; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.builder-row input, .builder-row select { min-height: 35px; padding: 6px 9px; font-size: 13px; }
.builder-row .checkbox { font-size: 13px; }
.builder-row .icon-button { font-size: 15px; }
.toast { position: fixed; bottom: 22px; left: 50%; transform: translateX(-50%); z-index: 50; max-width: calc(100% - 32px); padding: 10px 16px; border-radius: 4px; background: #2c323b; color: #fff; box-shadow: var(--shadow); font-size: 13px; line-height: 1.7; }
.toast.error { background: #9b3f38; }
.mobile-only { display: none; }

/* 财务、采购仍沿用真实业务表格，摘要不做大面积彩色卡片。 */
.stats-row, .stats-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.stat-card { padding: 14px 16px; border: 1px solid var(--line); border-radius: 4px; background: #fff; }
.stat-card strong, .stat-value { display: block; margin: 5px 0; color: #343c48; font-size: 24px; font-weight: 550; line-height: 1.35; font-variant-numeric: tabular-nums; }
.stat-card.featured { border-color: #dce1e7; background: #fff; color: #303944; }
.stat-card.featured .muted { color: #6e7886; }
.cards-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.cards-grid > .card + .card, .cards-grid > .panel + .panel { margin-top: 0; }
.business-summary { display: flex; align-items: baseline; gap: 10px 25px; flex-wrap: wrap; margin: 0 0 16px; padding: 12px 0; border-top: 1px solid #dfe4ea; border-bottom: 1px solid #dfe4ea; }
.business-summary-item { display: inline-flex; align-items: baseline; gap: 8px; flex-wrap: wrap; color: #65707e; font-size: 13px; }
.business-summary-item strong { color: #333c48; font-size: 14px; font-weight: 550; font-variant-numeric: tabular-nums; }
.business-summary .muted { color: #707b89; font-size: 13px; }

/* 视频页面注入旧组件样式时，也以同一白底小圆角语言显示。 */
.main-content .video-workspace { color: var(--ink); font-size: 13px; --video-line: #e5e8ec; }
.main-content .video-workspace .video-grid { grid-template-columns: minmax(245px,310px) minmax(0,1fr); gap: 22px; }
.main-content .video-workspace .video-panel { padding: 17px; border-color: var(--line); border-radius: 4px; background: #fff; }
.main-content .video-workspace .video-stats { gap: 0; margin: 17px 0 21px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.main-content .video-workspace .video-stat { padding: 11px 15px; border: 0; border-right: 1px solid var(--line); border-radius: 0; background: #fff; }
.main-content .video-workspace .video-stat:first-child { padding-left: 0; }
.main-content .video-workspace .video-stat:last-child { border-right: 0; }
.main-content .video-workspace .video-stat strong { margin-top: 4px; color: #343c48; font-size: 21px; font-weight: 550; }
.main-content .video-workspace .video-banner { padding: 10px 12px; border: 1px solid #e5e8ec; border-left: 2px solid #cdd3db; border-radius: 2px; background: #fff; color: #667281; font-size: 13px; }
.main-content .video-workspace .video-muted { color: #727e8d; font-size: 13px; }
.main-content .video-workspace textarea, .main-content .video-workspace input { border-color: #d5dce5; border-radius: 4px; padding: 9px 10px; font-size: 13px; background: #fff; }
.main-content .video-workspace textarea { margin: 13px 0 5px; min-height: 180px; }
.main-content .video-workspace .video-actions { margin-top: 9px; gap: 7px; }
.main-content .video-workspace .video-actions button, .main-content .video-workspace .video-link { min-height: 30px; padding: 5px 9px; border-color: #d6dde6; border-radius: 4px; background: #fff; color: #5d6979; font-size: 13px; }
.main-content .video-workspace .video-primary { background: #252a31 !important; border-color: #252a31 !important; color: #fff !important; }
.main-content .video-workspace .video-task { padding: 14px 0; border-color: #e8ecf1; }
.main-content .video-workspace .video-task-title { color: #394352; font-size: 13px; font-weight: 550; }
.main-content .video-workspace .video-tag { border-radius: 3px; background: #f3f5f8; color: #637080; font-size: 13px; }
.main-content .video-workspace .video-tag.good { background: var(--success-bg); color: var(--success); }
.main-content .video-workspace .video-tabs { gap: 15px; margin-bottom: 12px; }
.main-content .video-workspace .video-tabs button { min-height: 30px; padding: 4px 0; border: 0; border-bottom: 1px solid transparent; border-radius: 0; background: #fff; color: #788393; font-size: 13px; }
.main-content .video-workspace .video-tabs button[aria-selected=true] { border-color: #3c4654; background: #fff; color: #303b49; }
.main-content .video-workspace .video-progress { height: 3px; border-radius: 2px; background: #edf0f4; }
.main-content .video-workspace .video-progress span { background: #69798d; }
.main-content .video-workspace .video-location { margin-top: 17px; }
dialog.video-dialog { padding: 23px; border: 1px solid #dce1e8; border-radius: 6px; background: #fff; box-shadow: 0 18px 65px #18202e26; }
dialog.video-dialog::backdrop { background: #18202e4d; }
dialog.video-dialog input, dialog.video-dialog select, dialog.video-dialog textarea { padding: 9px 10px; border-color: #d5dce5; border-radius: 4px; background: #fff; font-size: 13px; }
dialog.video-dialog button { min-height: 35px; padding: 7px 12px; border-color: #d8dde3; border-radius: 4px; background: #fff; color: #535d6b; font-size: 13px; }
dialog.video-dialog .video-primary { border-color: #252a31; background: #252a31; color: #fff; }
dialog.video-dialog .video-muted { color: #727d8b; font-size: 13px; }
dialog.video-dialog .video-output { border-color: var(--line); }

@media (min-width: 1500px) {
  .main-content { padding-left: 40px; padding-right: 40px; }
  .app-header, .sidebar, .topbar { padding-left: 40px; padding-right: 40px; }
}
@media (max-width: 1100px) {
  :root { --page-pad: 22px; }
  .app-header { gap: 22px; }
  #primary-nav { gap: 18px; }
  .brand { font-size: 16px; }
  .brand small { display: none; }
  .header-user #user-name { max-width: 80px; }
  .header-user .tag { display: none; }
  .main-content { padding-top: 22px; }
  .resource-table .resource-status, .resource-table .resource-membership { width: 100px; }
  .main-content .video-workspace .video-grid { grid-template-columns: minmax(235px,280px) minmax(0,1fr); }
}
@media (max-width: 900px) {
  .app-header { flex-wrap: wrap; gap: 12px 22px; padding-top: 13px; padding-bottom: 10px; }
  #primary-nav { order: 3; flex-basis: 100%; gap: 24px; }
  .header-user { margin-left: auto; }
  .sidebar { gap: 7px 14px; padding-top: 9px; padding-bottom: 9px; }
  #main-navigation { gap: 2px 13px; }
  .sidebar-bottom { flex-basis: 100%; margin-left: 0; }
  .page-heading, .page-header, .page-head { gap: 12px; }
  .toolbar { gap: 8px; }
  .toolbar .search-field { flex-basis: 100%; }
  .toolbar .push { margin-left: auto; }
  .data-table { min-width: 640px; }
  .resource-table { min-width: 0; }
  .detail-grid { grid-template-columns: 1fr; }
  .account-workspace { grid-template-columns: 155px minmax(0,1fr); gap: 24px; }
  .account-content .detail-grid { grid-template-columns: 1fr; gap: 20px; }
  .main-content .video-workspace .video-grid { grid-template-columns: 1fr; }
  .main-content .video-workspace .video-stats { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (min-width: 621px) and (max-width: 900px) {
  .resource-table .resource-purpose { font-size: 13px; }
  .resource-table .resource-recorder { font-size: 13px; }
  .resource-table .resource-meta { overflow-wrap: anywhere; white-space: normal; }
  .resource-table th, .resource-table td { padding-left: 7px; padding-right: 7px; }
  .resource-table .resource-name { gap: 8px; }
  .resource-table .record-name { font-size: 13px; white-space: normal; }
  .resource-table .inline-actions { gap: 2px; }
  .resource-table .resource-accounts > button { font-size: 13px; }
  .account-quick-fields, .credential-grid, .credential-pair { gap: 13px; }
}
@media (max-width: 620px) {
  :root { --page-pad: 15px; }
  html { scrollbar-gutter: auto; }
  .app-header { gap: 10px; padding: 13px 15px 8px; }
  .brand { gap: 8px; font-size: 16px; }
  .brand-mark { width: 25px; height: 27px; font-size: 14px; }
  .header-user { gap: 6px; }
  .header-user #user-name, .header-user #user-role { display: none; }
  .header-user .button { font-size: 13px; padding: 4px 7px; }
  .header-user .avatar { width: 27px; height: 27px; }
  #primary-nav { gap: 22px; flex-basis: 100%; }
  #primary-nav .nav-button { padding: 7px 0 8px; font-size: 13px; }
  .sidebar { padding: 8px 15px; gap: 7px 10px; }
  #main-navigation { gap: 3px 13px; }
  .nav-button { min-height: 31px; font-size: 13px; }
  .nav-label { font-size: 13px; }
  .sidebar-bottom { gap: 14px; }
  .topbar { padding: 7px 15px; }
  .topbar-right { gap: 7px; }
  .topbar #user-name { display: none; }
  .main-content { padding: 19px 15px 25px; }
  h1 { font-size: 24px; }
  h2 { font-size: 18px; }
  .page-heading, .page-header, .page-head { align-items: flex-start; flex-wrap: wrap; gap: 11px; margin-bottom: 18px; }
  .page-heading .muted, .page-header p, .page-head p { font-size: 13px; }
  .page-actions { gap: 6px; }
  .page-actions .button { font-size: 13px; padding: 6px 9px; }
  .button, .btn { min-height: 36px; }
  .toolbar { gap: 8px; margin-bottom: 15px; }
  .toolbar .search-field { min-width: 0; flex-basis: 100%; width: 100%; }
  .search-field input { min-height: 45px; padding-right: 10px; font-size: 16px; }
  .toolbar select { min-width: 0; flex: 1; min-height: 35px; font-size: 13px; }
  .toolbar .push { margin-left: 0; }
  .filter-tabs { gap: 15px; }
  .library-search { gap: 8px; margin-bottom: 14px; flex-wrap: wrap; }
  .library-search > select { min-width: 0; flex: 1; }
  .library-search .search-field { flex-basis: 100%; }
  .library-tabs { align-items: flex-start; gap: 10px; }
  .library-tabs > .filter-tabs, .library-tabs > .actions { gap: 15px; }
  .library-tabs > .toolbar, .library-tabs .toolbar-controls, .library-tabs .library-filters { width: 100%; margin-left: 0; }
  .library-tabs .toolbar-controls select, .library-tabs .library-filters select { flex: 1; min-width: 0; }
  .filter-tab { font-size: 13px; }
  .result-count { font-size: 13px; }
  .filter-bar { gap: 12px; }
  .filter-bar .field { flex-basis: 125px; max-width: none; font-size: 13px; }
  .filter-bar input, .filter-bar select { max-width: 100%; font-size: 16px; }
  .table-panel { overflow: visible; }
  .pagination { gap: 10px; padding: 11px 0; }
  .pagination-controls { gap: 6px; }
  .pagination .button { min-height: 31px; }
  .form-grid, .field-row, .checkbox-list, .detail-list { grid-template-columns: 1fr; }
  .detail-list .span, .field.span, .form-grid > .span { grid-column: auto; }
  .form-grid, .field-row { gap: 14px; }
  .field input, .field select, .field textarea, .auth-card input { font-size: 16px; }
  .checkbox { font-size: 13px; }
  .panel, .card { padding: 15px; }
  .panel.table-panel { padding: 0; }
  .detail-summary { flex-wrap: wrap; }
  .detail-tabs { gap: 18px; }
  .account-heading { flex-wrap: wrap; }
  .builder-row { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .builder-row .row-actions { justify-content: flex-end; }
  .builder-row input, .builder-row select { font-size: 16px; }
  .dialog-heading, #dialog-content { padding: 16px; }
  .dialog-heading h2 { font-size: 17px; }
  .dialog-footer { padding: 12px 16px; }
  #dialog-error { margin: 0 16px 14px; }
  dialog, dialog.wide { width: calc(100% - 22px); max-height: calc(100dvh - 24px); border-radius: 5px; }
  .auth-root { padding: 20px; }
  .auth-card { padding: 25px 23px; }
  .stats-row, .stats-grid { grid-template-columns: 1fr; }
  .cards-grid { grid-template-columns: 1fr; }
  .business-summary { gap: 8px 17px; }
  .business-summary-item { gap: 5px; }

  /* 给每个网址单元格语义 class，来源字段不通过 optional 隐藏。 */
  .resource-table, .resource-table tbody, .resource-table tbody > tr, .resource-table tbody > tr > td { display: block; width: 100%; min-width: 0; }
  .resource-table colgroup, .resource-table thead { display: none; }
  .resource-table tbody > tr { display: grid; grid-template-columns: minmax(0,1fr) 90px; align-items: start; gap: 5px 11px; padding: 13px 0; border-bottom: 1px solid var(--line); }
  .resource-table tbody > tr > td { height: auto; padding: 0; border: 0; }
  .resource-table tbody > tr > td.resource-favorite { grid-column: 1; grid-row: 1; width: 27px; z-index: 1; }
  .resource-table tbody > tr > td.resource-main, .resource-table tbody > tr > td.resource-title-cell { grid-column: 1; grid-row: 1; }
  .resource-table tbody > tr:has(.resource-favorite) > td.resource-main, .resource-table tbody > tr:has(.resource-favorite) > td.resource-title-cell { padding-left: 33px; }
  .resource-table tbody > tr > td:has(> .resource-name) { grid-column: 1; grid-row: 1; }
  .resource-table tbody > tr:has(.resource-favorite) > td:has(> .resource-name) { padding-left: 33px; }
  .resource-table .resource-name { align-items: center; gap: 8px; }
  .resource-table .resource-icon { width: 27px; height: 27px; flex-basis: 27px; border-radius: 6px; }
  .resource-table .record-name { font-size: 13px; line-height: 1.45; white-space: normal; }
  .resource-table .resource-meta, .resource-table .row-domain { margin-top: 2px; font-size: 13px; white-space: normal; overflow-wrap: anywhere; }
  .resource-table tbody > tr > td.resource-purpose { grid-column: 1; grid-row: 2; color: #566170; font-size: 13px; }
  .resource-table tbody > tr:has(.resource-favorite) > td.resource-purpose { padding-left: 33px; }
  .resource-table .resource-purpose .ellipsis { white-space: normal; }
  .resource-table .resource-purpose .subline, .resource-table .resource-tags { font-size: 13px; }
  .resource-table tbody > tr > td.resource-accounts { grid-column: 2; grid-row: 1; text-align: right; }
  .resource-table .resource-accounts > button { justify-content: flex-end; font-size: 13px; }
  .resource-table tbody > tr > td.resource-status, .resource-table tbody > tr > td.resource-membership { width: 100%; grid-column: 2; grid-row: 2; text-align: right; }
  .resource-table tbody > tr > td.resource-recorder { display: block; grid-column: 1; grid-row: 3; color: #707b89; font-size: 13px; }
  .resource-table tbody > tr:has(.resource-favorite) > td.resource-recorder { padding-left: 33px; }
  .resource-table .resource-recorder .subline, .resource-table .resource-recorder small { display: inline; margin-left: 6px; color: #707b89; font-size: 13px; }
  .resource-table tbody > tr > td.resource-actions { grid-column: 2; grid-row: 3; text-align: right; }
  .resource-table .resource-actions .inline-actions { gap: 2px; }
  .resource-table .resource-actions .button { min-height: 28px; padding: 3px 1px; border: 0; background: none; font-size: 13px; }
  .resource-table .resource-actions .icon-button { width: 24px; min-width: 24px; min-height: 27px; height: 27px; }
  .resource-table .resource-actions .button svg { width: 12px; height: 12px; }
  .resource-table tbody > tr > td.table-empty { grid-column: 1 / -1; }
  .resource-table tbody > tr.account-quick-row { display: block; padding: 0; }
  .resource-table tbody > tr.account-quick-row > td { padding: 0; }
  .account-quick-panel { padding: 15px 0 17px; border-top: 1px solid #343a43; }
  .account-quick-header, .account-quick-heading, .quick-panel-header { flex-wrap: wrap; gap: 10px; }
  .account-quick-header > div, .account-quick-heading > div, .quick-panel-header > div { gap: 8px; }
  .account-quick-header label, .account-quick-heading label, .quick-panel-header label { flex-wrap: wrap; gap: 7px; }
  .account-quick-panel select { max-width: 100%; font-size: 16px; }
  .account-quick-fields, .credential-grid, .credential-pair { grid-template-columns: 1fr; gap: 12px; }
  .credential-copy { padding: 8px 9px; }
  .credential-value { font-size: 13px; }
  .copy-control { padding-left: 8px; font-size: 13px; }
  .account-quick-footer, .account-quick-meta { gap: 5px; font-size: 13px; }

  .record-detail-page > .page-heading { padding-top: 15px; gap: 13px; }
  .record-detail-page > .page-heading h1, .record-detail-header h1 { font-size: 25px; }
  .record-detail-header { flex-wrap: wrap; padding: 15px 0 19px; }
  .account-workspace { display: block; }
  .account-switcher { padding: 14px 0; border-bottom: 1px solid var(--line); }
  .account-switcher-options, .account-choices, .account-switcher > nav:has(> .account-choice), .account-switcher > div:has(> .account-choice) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 13px; }
  .account-choice { padding: 9px 0; font-size: 13px; }
  .account-choice small { font-size: 13px; }
  .account-content { padding-top: 18px; }
  .account-content-header { gap: 11px; flex-wrap: wrap; }
  .account-content-header h2 { font-size: 19px; }
  .account-content .credential-row { padding: 15px 0; gap: 10px; }
  .account-content .credential-row .credential-value { font-size: 15px; }
  .account-content .credential-row .copy-control { min-width: 88px; padding: 8px; font-size: 13px; }
  .account-content .detail-grid { grid-template-columns: 1fr; gap: 21px; padding: 21px 0; }
  .account-content .detail-list { grid-template-columns: 1fr; }
  .record-provenance, .account-provenance { gap: 5px; font-size: 13px; }

  .main-content .video-workspace .video-panel { padding: 15px; }
  .main-content .video-workspace .video-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .main-content .video-workspace .video-stat { padding: 10px 12px; }
  .main-content .video-workspace .video-stat:nth-child(2) { border-right: 0; }
  .main-content .video-workspace .video-stat:nth-child(3), .main-content .video-workspace .video-stat:nth-child(4) { border-top: 1px solid var(--line); }
  .main-content .video-workspace .video-stat:nth-child(3) { padding-left: 0; }
  .main-content .video-workspace .video-stat strong { font-size: 20px; }
  .main-content .video-workspace .video-grid { gap: 17px; }
  .main-content .video-workspace .video-tabs { gap: 12px; }
  .main-content .video-workspace .video-subtitle { flex-wrap: wrap; }
  .main-content .video-workspace textarea, .main-content .video-workspace input { font-size: 16px; }
  dialog.video-dialog { padding: 18px; }
  dialog.video-dialog input, dialog.video-dialog select, dialog.video-dialog textarea { font-size: 16px; }
}
@media (pointer: coarse) {
  .app-header .nav-button, .sidebar .nav-button { min-height: 38px; }
  .copy-control, .account-content .credential-row .copy-control { min-height: 40px; }
  .resource-actions .button { min-height: 34px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation-duration: .01ms !important; }
}

/* 云白工作区：统一字号、操作层级与柔和状态色。 */
:root{--ink:#253148;--muted:#68778f;--line:#e1e7f1;--border:#e1e7f1;--accent:#5765d8;--button:#5965db;--accent-hover:#4553c7;--soft:#eef0ff;--nav-ink:#5c6c84;--hover:#f8faff;--danger:#b34c55;--danger-soft:#fff1f2;--danger-line:#f2d4d9;--warning:#aa6528;--warning-soft:#fff3e4;--success:#218372;--success-bg:#e9f7f3;--radius:12px;--page-pad:30px;font-size:17px;background:#f5f7fb}
body{background:#f5f7fb}h1{font-size:29px;font-weight:650;letter-spacing:-.6px}h2{font-size:21px;font-weight:630}h3{font-size:17px;font-weight:620}small{font-size:14px}.muted{font-size:14px;color:var(--muted)}.subline{font-size:14px;margin-top:5px}.button,.btn{min-height:40px;border-radius:9px;padding:8px 13px;font-size:15px;font-weight:500;border-color:#dce3ef;color:#52637e}.button.small,.btn.small{min-height:34px;font-size:14px;padding:5px 9px}.button.primary,.btn.primary{background:var(--button);border-color:var(--button);box-shadow:0 3px 8px #5363d815}.button.soft{border-color:#e0e4ff;color:var(--accent)}.button.text:hover{color:#4552bf}.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#7485ec}.tag,.badge{font-size:13px;line-height:23px;padding:2px 8px;border-radius:6px}.icon-button{width:34px;min-width:34px;height:34px;min-height:34px;border-radius:8px}.icon-button svg{width:18px;height:18px}input,select,textarea{font-size:16px;min-height:43px;border-color:#d8e0ed;border-radius:8px;padding:8px 11px}input:focus,select:focus,textarea:focus{border-color:#8a96e3}input[type=file]{font-size:14px}.field{font-size:15px;gap:7px}.field small,.help-text,.dialog-note,.notice{font-size:14px;line-height:1.7}.notice{background:#f5f7ff;border-color:#e2e7f5;border-left:3px solid #a5b0eb;border-radius:8px;padding:12px 15px}.checkbox{font-size:15px}.help-text{color:var(--muted)}
.app-shell{background:#f5f7fb}.app-header{min-height:81px;background:#fff;gap:26px;padding-top:15px;padding-bottom:15px;border-bottom-color:#dde4f0}.brand{font-size:21px;gap:11px;font-weight:650;padding-right:24px;border-right:1px solid #e3e8f1}.brand small{font-size:13px;letter-spacing:1px;margin-top:3px;color:#8b96ab}.brand-mark{width:42px;height:42px;border-radius:12px;background:#5c68db;color:#fff;font-size:33px;line-height:1;box-shadow:0 3px 9px #5764d525}#primary-nav{gap:22px}#primary-nav .nav-label{font-size:13px;color:#8591a6;margin-right:-5px}#primary-nav .nav-button{font-size:16px;padding:11px 0 13px;gap:7px;color:#63728a;border-bottom:3px solid transparent}#primary-nav .nav-button svg{width:19px;height:19px}#primary-nav .nav-button.active{color:#465aca;font-weight:650;border-bottom-color:#5967d9}.header-user{font-size:14px;gap:9px}.header-user .tag{font-size:13px}.avatar{width:34px;height:34px;font-size:15px;background:#edf0fa;color:#647191}.sidebar{padding:10px var(--page-pad);background:#eef2f8;border-bottom:1px solid #dee5f0;min-height:64px}#main-navigation{gap:6px 11px}.category-label{color:#7a8ba4;font-size:13px;margin-right:9px;white-space:nowrap}.nav-button{font-size:15px;padding:7px 10px;border-radius:8px;min-height:38px;color:#5f6e88}.sidebar .nav-button.active{background:#fff;color:#4e60c9;border:1px solid #dce3f8;box-shadow:0 2px 5px #42558208}.sidebar .nav-button.active::before{display:none}.nav-count{font-size:13px;min-width:21px;border-radius:5px;background:#e3e8f1;line-height:22px;color:#75829a;padding:0 4px}.nav-button.active .nav-count{background:#eef0ff;color:#5969cc}.sort-categories{margin-left:auto;border:1px solid #dce4f0;color:#65768e}.add-board{font-size:14px}.topbar{display:none}.main-content{padding:26px var(--page-pad) 36px;max-width:1920px;margin:auto}.page-heading{margin-bottom:19px;align-items:center}.page-heading .muted{font-size:15px;margin-top:6px}.page-actions{gap:8px}
.library-search{background:white;padding:15px 17px 12px;margin-bottom:0;border:1px solid var(--line);border-bottom:0;border-radius:13px 13px 0 0;gap:15px}.library-search input[type=search]{min-height:47px;font-size:17px;border-radius:9px;background:#fcfdff;border-color:#d7e0ee}.search-field input{padding-left:42px}.search-symbol{left:14px;color:#8a97b0}.result-count{font-size:13px;color:#7f8ca2}.library-tabs{background:#fff;border:1px solid var(--line);border-top:0;border-bottom:0;margin-bottom:0;padding:3px 17px 13px;gap:10px}.library-tabs .filter-tabs{gap:6px}.filter-tab{font-size:15px;padding:8px 12px;border-radius:8px;min-height:36px;color:#77859c}.filter-tab.active,.filter-tab[aria-pressed=true]{background:#eef0ff;color:#5366d4;font-weight:600}.filter-tab.active::before,.filter-tab[aria-pressed=true]::before{display:none}.library-tabs select{font-size:14px;min-height:36px;border-radius:8px;padding:6px 27px 6px 10px}.table-panel{border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden}.library-tabs+.table-panel{border-radius:0 0 13px 13px}.data-table{font-size:16px}.data-table thead,.data-table th{background:#f5f7fc}.data-table th{font-size:14px;color:#7e8ca3;font-weight:500;padding:12px 13px;border-color:#e4e9f2}.data-table td{height:74px;padding:13px;border-color:#e8edf5}.data-table th:first-child,.data-table td:first-child{padding-left:17px}.data-table th:last-child,.data-table td:last-child{padding-right:17px}.resource-table th,.resource-table td{padding-top:13px;padding-bottom:13px}.resource-name{gap:12px}.resource-icon{width:42px;height:42px;flex-basis:42px;border:0;border-radius:11px;background:#eef0ff;color:#6170d4;overflow:hidden}.resource-icon svg,.resource-icon i,.resource-icon img.ui-icon{width:23px;height:23px}.resource-icon>img:not(.ui-icon){width:100%;height:100%;object-fit:cover}.resource-name .record-name,.resource-name strong{font-size:17px;font-weight:620;color:#28354e}.resource-meta{font-size:14px;color:#8592a8;margin-top:3px}.resource-purpose{font-size:16px;color:#5c6c84}.resource-tags .tag{font-size:13px;background:transparent;padding:0}.resource-recommended{font-size:13px;color:#7483a0}.resource-accounts,.resource-recorder{font-size:14px}.resource-accounts .button,.resource-accounts>button{font-size:14px;color:#5a6bd1;padding:6px 0;min-height:34px}.resource-recorder .subline{font-size:13px;color:#8794aa}.resource-membership{font-size:14px}.resource-actions .button.text{font-size:14px;color:#6d7b93}.favorite-button,.resource-favorite .icon-button{width:29px;min-width:29px;height:32px}.favorite-button[aria-pressed=true]{color:#c4813b}.favorite-button[aria-pressed=true] svg{fill:#fff3df}.pagination{font-size:13px;padding:13px 17px;background:#fff}.pagination select{font-size:13px;min-height:31px;border-radius:6px}.table-empty{font-size:15px}.table-empty strong{font-size:18px}.table-scroll{scrollbar-color:#ccd5e6 transparent;scrollbar-width:thin}
.tone-indigo{background:#edefff!important;color:#6270d9!important}.tone-teal{background:#e8f6f2!important;color:#258975!important}.tone-warm{background:#fff3e6!important;color:#b37533!important}.tone-rose{background:#fceef3!important;color:#be668e!important}.tone-blue{background:#eaf3fd!important;color:#408ac1!important}.tone-slate{background:#eef2f6!important;color:#7488a2!important}.record-detail-header{margin-bottom:22px}.record-detail-header .resource-icon{width:56px;height:56px;flex-basis:56px;border-radius:14px}.record-detail-header .resource-icon svg{width:29px;height:29px}.record-detail-description{font-size:15px}.record-back{font-size:14px}.detail-tabs .detail-tab{font-size:16px}.account-switcher,.account-content{background:white}.account-choice{border-radius:9px;font-size:15px}.account-choice strong{font-size:16px}.account-choice small{font-size:13px}.account-choice.active{background:#eef0ff;border-color:#dce2ff}.credential-label{font-size:14px}.credential-value{font-size:18px}.credential-row{border-radius:10px;border-color:#e2e7f2}.copy-control{border-radius:8px;font-size:14px;color:#596bd1;background:#f0f2ff;min-height:35px}.account-content-header h2{font-size:21px}.account-permission{font-size:13px;color:#268372}.detail-list dt{font-size:14px;color:#8390a6}.detail-list dd{font-size:16px}.history-row{font-size:16px}.history-row small{font-size:13px}.account-quick-panel{padding:17px 23px 19px 55px;background:#f8faff}.account-quick-header strong{font-size:16px}.account-quick-header label{font-size:13px}.account-quick-panel select{font-size:15px;min-height:36px}.account-quick-footer{font-size:13px}.account-quick-panel .credential-value{font-size:16px}.account-quick-fields{gap:15px}.credential-copy{background:white;border-radius:8px}.panel,.card{padding:22px;border-color:#e1e7f1;border-radius:12px;box-shadow:0 2px 6px #33487703}.section{margin-bottom:22px}
#app-dialog{border:1px solid #dce3f0;border-radius:16px;box-shadow:0 24px 100px #27375d2b;max-width:min(640px,calc(100vw - 24px))}#app-dialog.wide{max-width:min(940px,calc(100vw - 24px))}.dialog-heading{padding:21px 24px;border-color:var(--line)}.dialog-heading h2{font-size:22px}#dialog-content{padding:23px 24px}.dialog-footer{padding:17px 24px;background:#fafbfe;border-color:var(--line)}.form-grid{gap:18px}.auth-card{border-radius:18px;border-color:#e1e7f2;box-shadow:0 14px 60px #32456609}.auth-card h1{font-size:28px}.auth-brand{font-size:20px}.auth-footnote{font-size:14px}.toast{font-size:15px;max-width:min(620px,calc(100vw - 24px));border-radius:10px;background:#27354d;color:#fff;padding:13px 20px;box-shadow:0 7px 24px #22344f24}
.record-context-menu{position:fixed;width:280px;padding:8px;z-index:50;background:#fff;border:1px solid #dce4f2;border-radius:14px;box-shadow:0 14px 45px #30436b1b}.context-title{padding:9px 11px 13px;color:#7989a5;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.record-context-menu>button{display:flex;align-items:center;gap:12px;width:100%;padding:11px;border:0;border-radius:8px;background:#fff;font-size:16px;color:#526581;text-align:left;min-height:45px}.record-context-menu>button svg{color:#7a8ca9;width:21px;height:21px}.record-context-menu>button:hover{background:#f2f5fc;color:#5368d0}.record-context-menu hr{border:0;border-top:1px solid #e8ecf4;margin:5px 7px}.move-preview{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #e0e6f3;border-radius:10px;background:#f6f8fd;margin-bottom:20px;flex-wrap:wrap;font-size:16px}.move-preview>span:first-child{color:#7184a1}.order-scopes{display:flex;gap:10px}.order-scopes>button{padding:12px 15px;flex:1;border:1px solid #e0e6f1;background:white;border-radius:10px;font-size:16px;text-align:left;color:#536580}.order-scopes>button[aria-pressed=true]{border-color:#a9b4f1;background:#f1f3ff;color:#5263c9}.order-scopes small{display:block;font-size:13px;font-weight:400;margin-top:4px;color:#8490a7}#order-status{font-size:13px;color:#8491a6;margin:16px 0 9px}.order-list{max-height:380px;overflow:auto;border:1px solid #e2e7f1;border-radius:10px}.order-item{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid #e9edf5;background:#fff;min-height:61px}.order-item:last-child{border:0}.order-handle{font-size:25px;color:#a7b2c5;cursor:grab}.order-index{font-size:13px;color:#8c9ab0}.order-item strong{flex:1;min-width:0;font-size:16px;font-weight:500}.order-item.dragging{opacity:.5}.order-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:13px}.order-footer .muted{font-size:13px}.avatar-editor-top{display:flex;align-items:center;gap:18px;margin-bottom:23px}.avatar-editor-top h3{font-size:18px;margin-bottom:5px}.avatar-large{width:86px;height:86px;flex-basis:86px;border-radius:20px}.avatar-large svg{width:42px;height:42px}.avatar-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:17px}.avatar-presets>button{cursor:pointer;width:100%;height:51px;pointer-events:auto}.avatar-presets>button:hover{outline:2px solid #a5afea;outline-offset:2px}.avatar-tones{display:flex;align-items:center;gap:13px;margin-bottom:20px}.avatar-tone{width:29px;height:29px;border:1px solid #d7dfed;border-radius:50%;padding:0}.avatar-upload{margin-top:23px;border-top:1px solid #e6ebf3;padding-top:18px}.export-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:21px}.export-card{padding:26px}.export-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;background:#eef0ff;color:#6574d7;margin-bottom:18px}.export-icon svg{width:25px;height:25px}.export-icon.teal{color:#308a77;background:#eaf7f2}.export-card h2{margin-bottom:8px}.export-card>.muted{line-height:1.8}.export-section{display:flex;align-items:flex-start;gap:12px;margin:0;padding:12px 0}.export-section strong{font-size:16px;font-weight:550}.export-section small{display:block;margin-top:4px;font-size:13px;color:#8b98ae}.export-section input{margin-top:4px}.export-points{padding-left:20px;font-size:15px;line-height:2;color:#6e7f98;margin:25px 0}.export-storage{margin-top:21px}.export-storage h3{margin-bottom:10px}.export-storage p{font-size:15px;line-height:1.9}.export-storage .muted{margin-top:8px}
.balance-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px}.balance-total{border:1px solid #dce3fb;border-radius:14px;background:linear-gradient(115deg,#edf1ff,#fff 85%);padding:21px 24px}.balance-total>span{font-size:15px;color:#6b7d9d}.balance-total>strong{font-size:34px;color:#364c8a;display:block;letter-spacing:-1px;margin:6px 0 10px;font-weight:650;line-height:1.4}.balance-total>small{font-size:13px;color:#8c99ad}.balance-total.secondary{background:#fff;border-color:var(--line)}.balance-total.secondary>strong{color:var(--ink)}.finance-wallets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:27px}.finance-wallet{background:white;border:1px solid var(--line);border-radius:12px;padding:17px;min-width:0}.finance-wallet.selected{border-color:#9aa9ef;box-shadow:0 0 0 2px #a6b5f315}.wallet-heading{display:flex;align-items:center;gap:9px;font-size:15px}.wallet-heading strong{font-weight:550;min-width:0;overflow-wrap:anywhere}.wallet-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#eef0ff;color:#6674d8;flex:none}.wallet-icon svg{width:18px;height:18px}.finance-wallet[data-kind=alipay] .wallet-icon{background:#eaf5fd;color:#3993c9}.finance-wallet[data-kind=wechat] .wallet-icon{background:#e6f7ef;color:#438d70}.wallet-balance{font-size:26px;font-weight:630;margin:14px 0 7px;letter-spacing:-.6px}.wallet-footer{font-size:13px;color:#8998b0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wallet-footer>span{margin-right:auto}.wallet-footer .button{font-size:13px;min-height:24px}.finance-section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 15px;gap:12px}.finance-section-heading .muted{margin-top:5px;font-size:14px}.finance-filter-panel{border:1px solid #e1e7f3;border-radius:12px;background:#fff;margin-bottom:18px;overflow:hidden}.date-shortcuts{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:16px 18px 8px}.date-shortcuts>span{font-size:14px;color:#8a98b0;margin-right:8px}.date-shortcuts>button{border:0;background:white;color:#73839d;padding:7px 11px;border-radius:7px;font-size:14px}.date-shortcuts>button[aria-pressed=true]{background:#edf0ff;color:#5d6dd0;font-weight:550}.finance-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:12px 18px 18px;align-items:end}.finance-filter-grid .field{font-size:13px;color:#7d8ca5}.finance-filter-grid input,.finance-filter-grid select{font-size:14px;min-height:40px}.finance-filter-grid .actions{align-self:end;min-height:40px}.ledger-summary{border-top:1px solid #e9edf6;background:#f8faff;padding:14px 18px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.ledger-summary>.muted{font-size:13px;white-space:nowrap}.ledger-summary-item{display:flex;align-items:center;gap:16px;font-size:13px;color:#8593a9;flex-wrap:wrap}.ledger-summary-item>strong{font-size:14px;color:#5d6f8e}.ledger-summary-item b{color:#586a86;font-size:14px;font-weight:550;margin-left:3px}.ledger-summary-item small{font-size:13px}.money-in,.ledger-summary-item b.money-in{color:#258a76}.finance-ledger{min-width:1080px}.finance-ledger td{font-size:15px}.finance-ledger td strong{font-size:16px;font-weight:550}.finance-ledger .subline{font-size:13px}.finance-ledger .actions{gap:4px}.finance-ledger .button.small{font-size:13px;padding-left:4px;padding-right:4px}.ledger-detail-amount{font-size:33px;font-weight:620;margin-bottom:24px;display:flex;align-items:center;gap:15px}.business-summary-item strong{font-size:26px}.filter-bar .field{font-size:14px}.filter-bar input,.filter-bar select{font-size:15px}.filter-bar{background:#fff;border:1px solid var(--line);padding:17px;border-radius:12px}.data-table:not(.resource-table):not(.finance-ledger){min-width:850px}
@media(max-width:1350px){.app-header{gap:19px}.brand{font-size:19px;padding-right:18px}.brand small{display:none}#primary-nav{gap:17px}#primary-nav .nav-button{font-size:15px}#primary-nav .nav-button svg{display:none}.header-user #user-name,.header-user #user-role{display:none}.category-label{display:none}.resource-table .resource-recorder{display:none}.resource-table col:nth-child(6){width:0!important}.resource-purpose{font-size:15px}.finance-wallets{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){:root{--page-pad:22px}.app-header{flex-wrap:wrap;gap:9px 16px}.brand{flex:1;border:0}.header-user{margin-left:auto}#primary-nav{order:3;flex-basis:100%;justify-content:flex-start;gap:24px}#primary-nav .nav-button{font-size:15px}.sidebar{padding-top:9px;padding-bottom:9px}#main-navigation{gap:6px}.nav-button{font-size:14px;padding:6px 9px}.sort-categories{margin-left:0}.finance-wallets{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-name .record-name{font-size:16px}.resource-table .resource-purpose{display:none}.resource-table col:nth-child(3){width:0!important}.resource-table col:nth-child(2){width:35%!important}.resource-table col:nth-child(4){width:22%!important}.export-grid{grid-template-columns:1fr 1fr}.finance-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){:root{--page-pad:16px}.app-header{padding-top:12px;padding-bottom:0}.brand{font-size:19px;gap:9px}.brand-mark{width:37px;height:37px;font-size:29px;border-radius:11px}#primary-nav{gap:20px;overflow:auto;flex-wrap:nowrap;padding-top:3px}#primary-nav .nav-button{font-size:14px;min-height:44px}.header-user .button{font-size:13px}.sidebar{display:block!important;padding:9px 13px;border:0;background:#edf1f8}.sidebar[hidden]{display:none!important}#main-navigation{display:flex;flex-wrap:nowrap;overflow:auto;white-space:nowrap;padding-bottom:2px;gap:7px}.nav-button{font-size:14px;padding:6px 10px}.nav-count{font-size:13px}.topbar{display:none}.mobile-only{display:none!important}.main-content{padding-top:21px}.page-heading{align-items:flex-start;gap:13px;flex-wrap:wrap}.page-heading h1{font-size:26px}.page-heading .muted{font-size:14px}.page-actions{gap:7px}.page-actions .button{font-size:13px;min-height:36px;padding:6px 10px}.library-search{padding:12px 12px 8px;gap:8px}.library-search .result-count{display:none}.library-search input[type=search]{font-size:16px;min-height:45px}.library-tabs{padding:3px 12px 12px;gap:10px}.library-tabs .filter-tabs{gap:2px}.filter-tab{font-size:13px;padding:7px 8px;min-height:32px}.library-tabs .library-filters{margin-left:0}.library-tabs select{font-size:13px;min-height:32px}.resource-table,.resource-table tbody,.resource-table tr,.resource-table td{display:block;width:100%}.resource-table colgroup,.resource-table thead{display:none}.resource-table tbody tr:not(.account-quick-row){display:grid;grid-template-columns:27px 1fr auto;gap:0;padding:16px 12px;border-bottom:1px solid #e5ebf3;background:#fff}.resource-table td{height:auto!important;border:0;padding:0!important}.resource-table .resource-favorite{grid-column:1;grid-row:1;padding-top:4px!important}.resource-table .resource-title-cell{grid-column:2;grid-row:1;padding-left:6px!important}.resource-name .record-name{font-size:17px;max-width:100%}.resource-icon{width:38px;height:38px;flex-basis:38px}.resource-meta{font-size:13px;max-width:195px}.resource-table .resource-purpose{display:block;grid-column:2/4;margin-top:10px;padding-left:6px!important;font-size:15px}.resource-table .resource-accounts{grid-column:2/4;margin-top:10px;padding-left:6px!important}.resource-table .resource-membership{grid-column:2/4;margin-top:8px;padding-left:6px!important}.resource-table .resource-recorder{display:none}.resource-table .resource-actions{grid-column:3;grid-row:1;margin-left:6px;padding-top:3px!important}.resource-actions .inline-actions{gap:3px;flex-wrap:nowrap}.resource-actions .button.text{font-size:13px}.resource-actions .icon-button{width:28px;min-width:28px}.account-quick-row{display:table-row!important}.account-quick-row>td{display:block!important}.account-quick-panel{padding:16px}.account-quick-header{align-items:flex-start;gap:8px}.account-quick-fields{grid-template-columns:1fr;gap:12px}.account-quick-header .actions{gap:2px}.account-quick-header .button{font-size:13px}.record-detail-header{gap:15px;flex-wrap:wrap}.record-detail-header h1{font-size:25px}.account-workspace{grid-template-columns:1fr}.account-switcher{padding:16px}.account-choices{display:flex;gap:8px;overflow:auto}.account-choice{min-width:150px}.account-content{padding:18px}.detail-list dd{font-size:15px}.form-grid{grid-template-columns:1fr}.field.span{grid-column:auto}.detail-grid{grid-template-columns:1fr}#app-dialog{max-height:calc(100dvh - 24px)}#dialog-content{padding:20px 17px}.dialog-heading,.dialog-footer{padding:17px}.dialog-heading h2{font-size:21px}.order-item{padding:10px;gap:7px}.order-item strong{font-size:14px}.avatar-presets{grid-template-columns:repeat(4,1fr)}.export-grid{grid-template-columns:1fr}.export-card{padding:21px}.balance-overview{grid-template-columns:1fr}.balance-total{padding:19px 20px}.balance-total>strong{font-size:30px}.finance-wallets{gap:10px}.finance-wallet{padding:13px}.wallet-heading{font-size:14px;gap:7px}.wallet-icon{width:27px;height:27px}.wallet-balance{font-size:23px}.wallet-footer{gap:4px}.wallet-footer>span{flex-basis:100%}.wallet-footer .button{font-size:13px}.finance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px 14px 15px}.date-shortcuts{padding:13px 12px 6px;gap:3px}.date-shortcuts>span{flex-basis:100%;margin:0 0 5px}.date-shortcuts>button{font-size:13px;padding:6px 9px}.finance-section-heading h2{font-size:21px}.finance-section-heading .muted{font-size:13px}.ledger-summary{padding:13px 14px;gap:8px}.ledger-summary>.muted{flex-basis:100%}.ledger-summary-item{gap:8px 13px;font-size:13px}.ledger-summary-item b{font-size:13px}.ledger-summary-item>strong{flex-basis:100%}.finance-page>.page-heading>.actions .button{font-size:13px;min-height:36px;padding:6px 10px}.record-context-menu{width:265px}.record-context-menu>button{font-size:15px}.resource-table .resource-tags .tag{font-size:13px}.pagination-controls{font-size:13px}.pagination{padding:11px 12px;gap:8px;font-size:13px}.tag{font-size:13px}.app-shell .menu-open .sidebar{transform:none!important}.finance-filter-grid input,.finance-filter-grid select{font-size:14px}.filter-bar .field{max-width:none;flex-basis:140px}.auth-card{margin:16px;padding:25px;max-width:440px}.auth-brand .brand-mark{margin-right:8px}.auth-root{padding:18px 0}.resource-table .account-quick-row:hover{background:white}.resource-table .resource-meta{max-width:170px}}
@media(max-width:390px){.brand{font-size:17px}.header-user{gap:5px}.header-user .avatar{width:30px;height:30px}.header-user .button{padding:3px}.resource-meta{max-width:145px!important}.resource-name{gap:8px}.resource-table .resource-actions .button.text{font-size:13px}.resource-icon{width:33px;height:33px;flex-basis:33px}.resource-table .resource-name .record-name{font-size:16px}.wallet-balance{font-size:20px}.finance-filter-grid{gap:10px}.wallet-heading{font-size:13px}.wallet-icon{display:none}.balance-total>strong{font-size:28px}.resource-table tbody tr:not(.account-quick-row){padding:14px 10px}.resource-table .resource-purpose{font-size:14px}.finance-page>.page-heading>.actions{gap:5px}}

.row-account-inline{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.row-account-inline select{width:auto;max-width:155px;min-height:31px;padding:4px 23px 4px 8px;font-size:13px;border-color:#dfe5f0;border-radius:7px}.row-copy-pair{display:flex;gap:4px;flex-wrap:nowrap}.row-copy-pair .copy-control{font-size:13px;min-height:29px;padding:4px 7px;border:1px solid #e2e7f7;white-space:nowrap;gap:4px}.row-copy-pair .copy-control svg{width:12px;height:12px}.inherited-fields{margin-top:18px}.inherited-fields h3{margin-bottom:7px}@media(min-width:1450px){.row-account-inline{flex-wrap:nowrap}.row-account-inline select{max-width:115px}.resource-table col:nth-child(4){width:19%!important}.resource-table col:nth-child(3){width:19%!important}}@media(max-width:760px){.row-account-inline{flex-wrap:nowrap;gap:7px}.row-account-inline select{font-size:14px;max-width:170px;min-height:35px}.row-copy-pair .copy-control{font-size:13px;min-height:34px;padding:5px 9px}}
/* 表格列保持一一对应，窄屏横向滚动，避免操作列错位。 */
@media(min-width:761px){.resource-table{min-width:1110px}.resource-table .resource-recorder{display:table-cell!important}.resource-table .resource-purpose{display:table-cell!important}.resource-table col:nth-child(1){width:3%!important}.resource-table col:nth-child(2){width:22%!important}.resource-table col:nth-child(3){width:22%!important}.resource-table col:nth-child(4){width:17%!important}.resource-table col:nth-child(5){width:12%!important}.resource-table col:nth-child(6){width:12%!important}.resource-table col:nth-child(7){width:12%!important}.resource-table .inline-actions{flex-wrap:nowrap;gap:7px}.resource-table .resource-actions>.muted{white-space:nowrap}.resource-table .resource-membership{font-size:14px}.resource-table .resource-recorder{font-size:14px}.resource-table td{height:78px}.resource-table .resource-name{gap:11px}.resource-table .row-account-inline select{max-width:155px}.resource-table .resource-actions .button{white-space:nowrap}}
.export-disabled{opacity:.45}

/* 清晰导航：返回入口与个人资料范围，保持原业务行为。 */
.record-detail-page > .record-back {
  min-height: 46px; padding: 10px 16px; gap: 10px; margin-bottom: 8px;
  border: 1px solid #ced3fa; border-radius: 12px; background: #eef0ff;
  color: #444dc0; font-size: 17px; line-height: 1.4; font-weight: 650;
  text-decoration: none; box-shadow: 0 2px 4px #343f8c06;
  transition: background .15s, border-color .15s, box-shadow .15s;
}
.record-detail-page > .record-back .ui-icon { width: 22px; height: 22px; stroke-width: 2; flex: 0 0 auto; }
.record-detail-page > .record-back:hover { background: #e4e8ff; border-color: #9ba5ed; color: #343da6; box-shadow: 0 3px 9px #4c58c414; }
.library-tabs > .filter-tabs { gap: 8px; flex-wrap: wrap; }
.library-tabs .filter-tab {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 44px; padding: 9px 15px; border: 1px solid #dce1ed;
  border-radius: 11px; background: #fff; color: #47536b;
  font-size: 16px; line-height: 1.4; font-weight: 600; white-space: nowrap;
  box-shadow: 0 1px 2px #26345104;
  transition: background .15s, border-color .15s, color .15s, box-shadow .15s;
}
.library-tabs .filter-tab .ui-icon { width: 19px; height: 19px; stroke-width: 1.9; color: #7379c9; flex: 0 0 auto; }
.library-tabs .filter-tab[data-action="scope:favorites"] .ui-icon { color: #a97520; }
.library-tabs .filter-tab[data-action="scope:recent"] .ui-icon { color: #258878; }
.library-tabs .filter-tab[data-action="scope:recommended"] .ui-icon { color: #4b76bf; }
.library-tabs .filter-tab:hover { background: #f5f6ff; border-color: #b8c0eb; color: #424bb4; }
.library-tabs .filter-tab.active, .library-tabs .filter-tab[aria-pressed="true"] {
  background: #565dd8; border-color: #565dd8; color: #fff;
  font-weight: 650; box-shadow: 0 3px 8px #565dd824;
}
.library-tabs .filter-tab.active .ui-icon, .library-tabs .filter-tab[aria-pressed="true"] .ui-icon { color: #fff; }
.library-tabs .filter-tab.active::before, .library-tabs .filter-tab[aria-pressed="true"]::before { content: none; display: none; }
.record-detail-page > .record-back:focus-visible, .library-tabs .filter-tab:focus-visible { outline: 3px solid #aab4ff; outline-offset: 3px; }
@media(max-width:760px) {
  .record-detail-page > .record-back { font-size: 16px; min-height: 44px; padding: 10px 14px; }
  .library-tabs > .filter-tabs { gap: 8px; }
  .library-tabs .filter-tab { font-size: 15px; min-height: 44px; padding: 9px 12px; gap: 7px; }
}
@media(max-width:560px) { .library-tabs > .filter-tabs { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); width: 100%; } }

/* 网址资料的选择栏沿用原列表宽度，勾选后才显示批量操作。 */
.resource-select-stack { display:flex; flex-direction:column; align-items:center; gap:3px; }
.resource-table input[data-record-check],.resource-table #record-page-check { display:block; width:17px; height:17px; min-height:17px; margin:0 auto; padding:0; accent-color:var(--accent); cursor:pointer; }
.resource-table input[data-record-check]:disabled { cursor:not-allowed; opacity:.45; }
.resource-table tr.record-selected>td { background:#f6f5ff; }
.record-batch-bar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 18px; padding:10px 17px; border-bottom:1px solid #e1e4f2; background:#f5f4ff; font-size:14px; }
.record-batch-bar[hidden] { display:none!important; }
.record-batch-count { color:#5860a5; }
.record-batch-page { color:var(--muted); font-size:13px; }
.record-batch-bar .actions { gap:8px; }
.record-batch-preview { max-height:290px; overflow-y:auto; border:1px solid var(--line); border-radius:8px; margin:16px 0; }
.record-batch-preview>div { display:flex; align-items:baseline; justify-content:space-between; gap:8px 18px; padding:10px 13px; border-bottom:1px solid var(--line); font-size:14px; }
.record-batch-preview>div:last-child { border-bottom:0; }
.record-batch-preview strong { font-weight:550; overflow-wrap:anywhere; }
.record-batch-preview span { color:var(--muted); font-size:13px; text-align:right; flex-shrink:0; }
.record-batch-confirm { margin-top:18px; }
.order-item .order-position-input { width:52px; min-width:52px; min-height:36px; height:36px; padding:5px 6px; text-align:center; border:1px solid #d8e0ed; border-radius:7px; background:#fff; color:var(--ink); font-size:14px; font-variant-numeric:tabular-nums; }
.order-item .order-position-input[aria-invalid=true] { border-color:#cc534c; background:#fff8f7; }
#order-position-error { color:#b74a42; font-size:14px; line-height:1.6; margin:10px 0 0; }
#order-position-error[hidden] { display:none; }
.order-position-help { font-size:13px; color:var(--muted); }
@media(max-width:760px) {
  .record-batch-bar { padding:10px 12px; gap:8px; }
  .record-batch-bar .actions { gap:5px; }
  .record-batch-bar .button.small { padding:5px 8px; min-height:32px; }
  .record-batch-preview>div { display:block; }
  .record-batch-preview span { display:block; text-align:left; margin-top:3px; }
}

.my-task-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}.my-task-counts .panel{padding:16px;display:grid;gap:8px}.my-task-counts strong{font-size:26px}.my-tasks>.page-actions{margin-bottom:12px}@media(max-width:800px){.my-task-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Amounts and quantities are typed deliberately; trackpad gestures only scroll. */
input[type="number"] { appearance:textfield; -moz-appearance:textfield; }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
