/* 桌面控制台和运营后台布局 —— 1440×900 基准；响应式断点见文件末尾（≥1280 完整侧栏，1024–1279 图标栏，<1024 抽屉） */
body.c-body { font-size: var(--tk-font-size-sm); }
.c-app { display: grid; grid-template-columns: var(--tk-size-sidebar) 1fr; min-height: 100vh; }
.c-sidecol { background: var(--tk-bg-surface); border-right: 1px solid var(--tk-border-default); }
.c-side { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; gap: var(--tk-space-2); padding: var(--tk-space-4) var(--tk-space-3); overflow-y: auto; }
.c-brand { display: flex; align-items: center; gap: var(--tk-space-2); height: 40px; padding: 0 var(--tk-space-2); margin-bottom: var(--tk-space-2); color: var(--tk-text-primary); text-decoration: none !important; }
.c-brand img { width: 28px; height: 28px; }
.c-brand b { font-size: var(--tk-font-size-md); font-weight: var(--tk-font-weight-semibold); }
.c-brand span { font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); padding: 1px 6px; border-radius: var(--tk-radius-sm); background: var(--tk-bg-subtle); }
.c-side__foot { margin-top: auto; padding-top: var(--tk-space-3); border-top: 1px solid var(--tk-border-default); }
.c-main { min-width: 0; display: flex; flex-direction: column; }
.c-top { position: sticky; top: 0; z-index: var(--tk-z-sticky); height: var(--tk-size-topbar); display: flex; align-items: center; gap: var(--tk-space-3); padding: 0 var(--tk-space-8); background: color-mix(in srgb, var(--tk-bg-canvas) 85%, transparent); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); border-bottom: 1px solid var(--tk-border-default); }
.c-org { display: inline-flex; align-items: center; gap: var(--tk-space-2); height: 36px; padding: 0 var(--tk-space-3); border-radius: var(--tk-radius-md); border: 0; background: transparent; cursor: pointer; font-weight: var(--tk-font-weight-medium); }
.c-org:hover { background: var(--tk-bg-subtle); }
.c-org .tk-icon { width: 16px; height: 16px; color: var(--tk-text-secondary); }
.c-bell { position: relative; }
.c-bell .tk-badge { position: absolute; top: 4px; right: 2px; min-width: 16px; height: 16px; font-size: 10px; padding: 0 4px; }
.c-content { width: 100%; max-width: calc(var(--tk-size-content-max) + 2 * var(--tk-space-8)); padding: var(--tk-space-6) var(--tk-space-8) var(--tk-space-8); display: flex; flex-direction: column; gap: var(--tk-space-6); }
.c-pagehead { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--tk-space-4); }
.c-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--tk-space-6); }
.c-span-4 { grid-column: span 4; } .c-span-5 { grid-column: span 5; } .c-span-7 { grid-column: span 7; } .c-span-8 { grid-column: span 8; } .c-span-12 { grid-column: span 12; }
.c-footer { margin-top: auto; padding: var(--tk-space-6) var(--tk-space-8); border-top: 1px solid var(--tk-border-default); display: flex; flex-wrap: wrap; gap: var(--tk-space-2) var(--tk-space-5); font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); }
.c-footer a { color: var(--tk-text-secondary); }
@media (max-width: 1279px) { .c-span-4, .c-span-5, .c-span-7, .c-span-8 { grid-column: span 12; } }
.c-crumb { display: flex; align-items: center; gap: var(--tk-space-1); font-size: var(--tk-font-size-sm); color: var(--tk-text-secondary); margin-bottom: var(--tk-space-2); }
.c-crumb a { color: var(--tk-text-secondary); }
.c-crumb .tk-icon { width: 14px; height: 14px; }
.c-sticky { position: sticky; top: calc(var(--tk-size-topbar) + var(--tk-space-6)); }
.c-kv { display: grid; grid-template-columns: 112px 1fr; gap: var(--tk-space-3) var(--tk-space-4); margin: 0; font-size: var(--tk-font-size-sm); }
.c-kv dt { color: var(--tk-text-secondary); }
.c-kv dd { margin: 0; min-width: 0; }
.c-sum { display: flex; flex-direction: column; gap: var(--tk-space-3); }
.c-sum__row { display: flex; justify-content: space-between; align-items: baseline; font-size: var(--tk-font-size-sm); }
.c-sum__row span:first-child { color: var(--tk-text-secondary); }
.c-sum__total { padding-top: var(--tk-space-3); border-top: 1px solid var(--tk-border-default); }
.c-filters { display: flex; gap: var(--tk-space-3); align-items: center; flex-wrap: wrap; }
.c-filters .tk-select, .c-filters .tk-input { width: auto; min-width: 160px; height: var(--tk-size-control-sm); font-size: var(--tk-font-size-sm); }
.c-pager { display: flex; justify-content: space-between; align-items: center; padding: var(--tk-space-3) var(--tk-space-5); font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); }
.c-pager nav { display: flex; gap: var(--tk-space-1); }
.c-pager .tk-btn { min-width: 32px; padding: 0 var(--tk-space-2); }
body[data-verified] .nav-kyc-tag { display: none; }

/* ---- 通用页面块 ---- */
.c-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--tk-space-6); margin: 0; }
.c-stat { padding: var(--tk-space-5); }
.c-stat dt { color: var(--tk-text-secondary); font-size: var(--tk-font-size-xs); display: flex; gap: 6px; align-items: center; }
.c-stat dd { margin: 6px 0 0; }
.c-stat .c-stat__foot { display: block; margin-top: 4px; font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); }
.c-tablecard { overflow: hidden; }
.c-tablecard .tk-table td:first-child, .c-tablecard .tk-table th:first-child { padding-left: var(--tk-space-5); }
.c-tablecard .tk-table td:last-child, .c-tablecard .tk-table th:last-child { padding-right: var(--tk-space-5); }
.c-tablecard .tk-table th.is-act, .c-tablecard .tk-table td.is-act { text-align: right; white-space: nowrap; }
.c-tablecard__bar { display: flex; align-items: center; justify-content: space-between; gap: var(--tk-space-4); padding: var(--tk-space-4) var(--tk-space-5); flex-wrap: wrap; }
.c-sub { display: block; font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); margin-top: 2px; }
.c-row { display: flex; align-items: center; gap: var(--tk-space-3); }
.c-stack { display: flex; flex-direction: column; gap: var(--tk-space-4); }
.c-overlay { position: fixed; inset: 0; z-index: var(--tk-z-modal); display: grid; place-items: center; background: rgb(23 25 34 / .45); }
.c-overlay[hidden] { display: none; }
.c-lead { color: var(--tk-text-secondary); margin-top: 4px; }

/* ---- 响应式：1024–1279 侧栏收成图标栏；<1024 侧栏抽屉 ---- */
.c-menu { display: none; }
@media (max-width: 1279px) {
  .c-app { grid-template-columns: 72px 1fr; }
  .c-side { padding: var(--tk-space-4) var(--tk-space-2); align-items: stretch; }
  .c-brand { justify-content: center; padding: 0; }
  .c-brand b, .c-brand span, .tk-nav__group, .c-side .tk-nav__item .tk-tag, .c-side .tk-nav__item .tk-icon--sm { display: none; }
  .c-side .tk-nav__group { display: block; height: 1px; padding: 0; margin: var(--tk-space-2) var(--tk-space-3); background: var(--tk-border-default); font-size: 0; }
  .c-side .tk-nav__item { justify-content: center; padding: 0; font-size: 0; height: 44px; }
  .c-side .tk-nav__item .tk-icon { width: 20px; height: 20px; }
  .c-top, .c-content, .c-footer { padding-left: var(--tk-space-6); padding-right: var(--tk-space-6); }
}
@media (max-width: 1023px) {
  .c-app { grid-template-columns: 1fr; }
  .c-menu { display: inline-flex; }
  .c-sidecol { position: fixed; inset: 0 auto 0 0; width: var(--tk-size-sidebar); z-index: var(--tk-z-modal); transform: translateX(-100%); transition: transform var(--tk-motion-duration-base); box-shadow: var(--tk-shadow-lg); }
  body.nav-open .c-sidecol { transform: none; }
  body.nav-open::after { content: ""; position: fixed; inset: 0; background: rgb(23 25 34 / .45); z-index: calc(var(--tk-z-modal) - 1); }
  /* 抽屉内恢复完整文字 */
  .c-side { padding: var(--tk-space-4) var(--tk-space-3); }
  .c-brand { justify-content: flex-start; padding: 0 var(--tk-space-2); }
  .c-brand b, .c-brand span { display: revert; }
  .c-side .tk-nav__group { display: block; height: auto; margin: 0; background: none; font-size: var(--tk-font-size-xs); padding: var(--tk-space-4) var(--tk-space-3) var(--tk-space-1); }
  .c-side .tk-nav__item { justify-content: flex-start; padding: 0 var(--tk-space-3); font-size: inherit; height: 40px; }
  .c-side .tk-nav__item .tk-tag { display: inline-flex; }
  .c-side .tk-nav__item .tk-icon--sm { display: inline-block; }
  .c-side .tk-nav__item .tk-icon { width: 20px; height: 20px; }
  .tk-demo-flag { display: none; }
  .c-top, .c-content, .c-footer { padding-left: var(--tk-space-4); padding-right: var(--tk-space-4); }
  .c-stats { grid-template-columns: 1fr 1fr; gap: var(--tk-space-4); }
  .c-tablecard { overflow-x: auto; }
}
body[data-kyc]:not([data-kyc="none"]) .nav-kyc-tag { display: none; }
.c-tablecard td.is-act > * { vertical-align: middle; }
.c-sub a, .tk-caption a { text-decoration: underline; text-underline-offset: 2px; }

/* ---- 运营后台 ---- */
.a-badge { background: var(--tk-text-primary) !important; color: var(--tk-bg-surface) !important; }
.nav-count { margin-left: auto; background: var(--tk-bg-subtle); color: var(--tk-text-secondary); }
.tk-nav__item[aria-current="page"] .nav-count { background: var(--tk-bg-brand); color: var(--tk-text-on-brand); }
.a-role { display: inline-flex; align-items: center; gap: var(--tk-space-2); font-size: var(--tk-font-size-sm); }
.a-role b { font-weight: 500; display: block; line-height: 1.2; }
.a-split { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--tk-space-6); align-items: start; }
.a-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--tk-space-2); font-size: var(--tk-font-size-sm); }
.a-checks li { display: flex; align-items: center; gap: var(--tk-space-2); }
.a-checks .tk-icon { width: 16px; height: 16px; flex: none; }
.a-checks .ok .tk-icon { color: var(--tk-text-success); } .a-checks .bad .tk-icon { color: var(--tk-text-danger); } .a-checks .warn .tk-icon { color: var(--tk-text-warning); }
.a-audit { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--tk-space-3); font-size: var(--tk-font-size-xs); color: var(--tk-text-secondary); border-left: 2px solid var(--tk-border-default); padding-left: var(--tk-space-3); }
.a-audit b { color: var(--tk-text-primary); font-weight: 500; }
.tk-table tr.is-sel td { background: var(--tk-bg-brand-subtle); }
.tk-table tr.is-sel td:first-child { box-shadow: inset 3px 0 0 var(--tk-bg-brand); }
.a-seg { font-size: var(--tk-font-size-xs); }
@media (max-width: 1279px) { .a-split { grid-template-columns: 1fr !important; } }
@media (min-width: 1024px) and (max-width: 1279px) {
  .c-side .nav-count { position: absolute; top: 4px; right: 6px; min-width: 16px; height: 16px; font-size: 10px; padding: 0 4px; }
  .c-side .tk-nav__item { position: relative; }
  .c-side__foot .tk-caption { display: none; }
}
