/* Partner Ledger — Coinbase palette (baizhi Design Prompt)
   Source: https://baizhi.cloud/landing/design-prompt/detail/coinbase
   Coinbase Blue = sole action color. Green/red = semantic text only.
*/

:root{
  /* —— baizhi Coinbase tokens —— */
  --coinbase-blue:#0052ff;
  --coinbase-blue-active:#003ecc;
  --on-primary:#ffffff;
  --canvas:#ffffff;
  --surface-soft:#f7f7f7;
  --surface-strong:#eef0f3;
  --surface-dark:#0a0b0d;
  --surface-dark-elevated:#16181c;
  --ink:#0a0b0d;
  --body:#5b616e;
  --hairline:#dee1e6;
  --semantic-up:#05b169;
  --semantic-down:#cf202f;

  /* —— Brand / action —— */
  --primary:var(--coinbase-blue);
  --primary-active:var(--coinbase-blue-active);
  --primary-disabled:#a8b8cc;
  --accent-yellow:#f4b000; /* illustrative only — never CTA */

  /* Surfaces extras */
  --hairline-soft:#eef0f3;
  --body-strong:var(--ink);
  --muted:#7c828a;
  --muted-soft:#a8acb3;
  --on-dark:#ffffff;
  --on-dark-soft:#a8acb3;

  /* —— App aliases —— */
  --bg:var(--surface-soft);
  --bg-elevated:var(--canvas);
  --grouped:var(--canvas);
  --grouped-inset:var(--canvas);
  --surface-pearl:var(--surface-soft);
  --surface-tile-dark:var(--surface-dark);
  --separator:var(--hairline);
  --divider-soft:rgba(10,11,13,.04);
  --fill:var(--surface-strong);
  --fill-secondary:rgba(10,11,13,.035);
  --line:var(--hairline);

  --label:var(--ink);
  --secondary-label:var(--body);
  --tertiary-label:var(--muted);
  --text:var(--label);
  --panel:var(--bg-elevated);

  --accent:var(--primary);
  --accent2:var(--primary);
  --accent-soft:rgba(0,82,255,.10);
  --accent-focus:var(--primary);
  --accent-on-dark:#6b9fff;
  --blue:var(--accent);

  --money-up:var(--semantic-up);     /* 赚了：仅文本绿 */
  --money-down:var(--semantic-down); /* 真亏/删除：仅文本红 */
  --money-move:var(--ink);           /* 该收/该付：结构墨色，不用红/绿装饰 */
  --danger:var(--semantic-down);
  --warning:var(--accent-yellow);
  --success:var(--semantic-up);
  --gold:var(--accent-yellow);

  /* Shell — light Coinbase rail (not dark hero) */
  --sidebar-w:232px;
  --sidebar-bg:var(--canvas);
  --sidebar-text:var(--body);
  --sidebar-text-active:var(--ink);
  --sidebar-text-dim:var(--muted);
  --app-max:1400px;
  --content-max-readable:1200px;
  --tabbar-h:56px;
  --topbar-h:64px;

  /* Shape — Coinbase: pill CTA / xl card / md input */
  --radius:12px;
  --radius-input:12px;
  --radius-sm:8px;
  --radius-inner:16px;
  --radius-md:12px;
  --radius-lg:16px;
  --radius-xl:24px;
  --radius-card:24px;
  --radius-pill:100px;
  --pad-card:20px;
  --gap-page:24px;
  --page-head-mb:16px;
  --content-max-narrow:640px;
  --content-pad-inline:24px;
  --nav-item-h:36px;
  --nav-gap:20px;
  --nav-radius:12px;
  --shell-pad:20px;
  --spring:cubic-bezier(.32,.72,0,1);
  --spring-out:cubic-bezier(.22,1,.36,1);
  --press:100ms;
  --shadow-soft:0 4px 12px rgba(0,0,0,.04);
  --shadow-sheet:0 24px 80px rgba(0,0,0,.28);
  --shadow-card:none;
  /* Display/Body: DM Sans; Mono: JetBrains Mono; CJK: system */
  --font:"DM Sans",-apple-system,system-ui,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  --font-display:"DM Sans",-apple-system,system-ui,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  --font-mono:"JetBrains Mono","Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{
  margin:0;min-height:100vh;background:var(--bg);color:var(--label);
  font:16px/1.5 var(--font);font-optical-sizing:auto;letter-spacing:0;
  font-weight:400;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
.staging-banner{
  position:sticky;top:0;z-index:200;
  padding:8px 12px;background:var(--surface-dark);color:#fff;text-align:center;
  font-size:12px;font-weight:600;letter-spacing:0;
}
/* 仅遮罩真正打开时锁滚；日结 locked 业务态不再锁 body */
body.daily-close-modal-open,body.entry-sheet-open{overflow:hidden}
a{color:var(--accent);text-decoration:none}
a:active{opacity:.85;color:var(--primary-active)}
/* Display weight 400 — institutional calm, not trading urgency */
h1,h2,h3{margin:0;color:var(--label);font-family:var(--font-display);font-weight:400}
h1{font-size:clamp(1.75rem,2.4vw,2.25rem);line-height:1.1;letter-spacing:-.02em}
h2{font-size:1.25rem;line-height:1.2;letter-spacing:-.015em}
h3{font-size:1.125rem;line-height:1.25;letter-spacing:-.01em;font-weight:600}
p{margin:0;color:var(--body)}
strong,b{font-weight:600;color:var(--ink)}
small{display:block;color:var(--tertiary-label);font-size:13px;line-height:1.5;font-weight:400}
code{font-family:var(--font-mono)}
.money-up,.money-down,.money-move,.positive,.negative,
.metric-value,.my-settle-hero>b,.settle-card>b,
[class*="number"],.tabular-nums{font-variant-numeric:tabular-nums}
.metric-value,.my-settle-hero>b,.settle-card>b,
.daily-close-mine-number,.daily-close-result-number,
.home-balance-card strong,.home-balance-card b{font-family:var(--font-mono);font-weight:500}

/* ===== App shell — light Coinbase rail ===== */
.app-frame{
  display:flex;min-height:100vh;width:100%;
  max-width:var(--app-max);margin:0 auto;
  background:var(--bg);
}
.sidebar{
  position:sticky;top:0;align-self:flex-start;
  width:var(--sidebar-w);height:100vh;
  padding:22px 16px 18px;
  display:flex;flex-direction:column;gap:28px;
  background:var(--sidebar-bg);
  border-right:1px solid var(--hairline);
  z-index:40;
}
.sidebar-brand{
  display:flex;align-items:center;gap:12px;padding:4px 8px;
  color:var(--ink);font-family:var(--font-display);
  font-size:16px;font-weight:400;letter-spacing:-.02em;line-height:1.2;
  transition:opacity var(--press) ease-out;
}
.sidebar-brand:active{opacity:.55;transform:none}
.sidebar-mark{
  width:28px;height:28px;border-radius:10px;
  background:var(--primary);
  box-shadow:none;
  flex:0 0 auto;
  position:relative;
}
.sidebar-mark::after{
  content:"";position:absolute;inset:8px;border-radius:3px;
  background:var(--on-primary);opacity:.92;
}
.sidebar-nav{
  display:flex;flex-direction:column;gap:22px;
  overflow:auto;flex:1;padding:0 0 8px;
  scrollbar-width:thin;
}
.nav-group{display:flex;flex-direction:column;gap:2px}
.nav-group-home{padding:0;margin:0;border:0}
.sidebar .nav-label{
  padding:0 12px 8px;color:var(--muted);
  font-size:12px;font-weight:600;letter-spacing:.02em;
  text-transform:none;
}
.sidebar-nav a{
  display:flex;align-items:center;gap:10px;
  min-height:40px;padding:8px 12px;border-radius:12px;
  color:var(--sidebar-text);font-weight:500;font-size:14px;letter-spacing:0;
  transition:background .12s ease,color .12s ease;
  box-shadow:none;border:0;position:relative;
}
.sidebar-nav a:hover{background:var(--surface-soft);color:var(--sidebar-text-active)}
.sidebar-nav a:active{transform:none;background:var(--surface-strong)}
.sidebar-nav a.active{
  background:var(--surface-soft);color:var(--primary);font-weight:600;
  box-shadow:none;border:0;
}
.sidebar-nav a.active::before{display:none}
.sidebar .nav-badge{
  margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:var(--radius-pill);
  background:var(--primary);color:var(--on-primary);font-size:11px;font-weight:600;
  display:inline-flex;align-items:center;justify-content:center;
}
.sidebar-foot{
  margin-top:auto;padding:12px 14px;
  border-radius:16px;background:var(--surface-soft);
  border:0;
}
.sidebar-foot .user-name{
  font-size:13px;font-weight:600;letter-spacing:0;color:var(--ink);
}
.sidebar-foot .user-meta{
  margin-top:2px;color:var(--muted);font-size:12px;font-weight:400;
}

.app-column{
  flex:1;min-width:0;display:flex;flex-direction:column;
  background:var(--bg);
}
.topbar{
  position:sticky;top:0;z-index:30;height:var(--topbar-h);
  display:none;align-items:center;justify-content:space-between;gap:12px;
  padding:0 var(--content-pad-inline);
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid var(--hairline);
}
.topbar-title{font-size:17px;font-weight:600;letter-spacing:-.02em}
.topbar-user{color:var(--tertiary-label);font-size:12px;font-weight:400}

/* 期间控件：单行约 40px，嵌在标题区，随内容滚动（非 sticky） */
.period-control{
  display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-height:48px;
}
.period-control-nav{display:flex;align-items:center;gap:8px;min-width:0}
.period-chips{display:flex;gap:8px;padding:0;background:transparent;border-radius:0;flex:0 0 auto}
.period-chip-form{margin:0}
.period-chip{
  min-width:44px;min-height:44px;padding:0 16px;border:1px solid var(--hairline);border-radius:var(--radius-pill);
  background:var(--bg-elevated);color:var(--label);font-size:14px;font-weight:400;
  box-shadow:none;cursor:pointer;
}
.period-chip.is-active{background:var(--bg-elevated);color:var(--accent);border-color:var(--accent-focus);box-shadow:inset 0 0 0 1px var(--accent-focus)}
.period-chip:focus-visible{outline:2px solid var(--accent-focus);outline-offset:2px}
.global-date-form{margin:0}
.global-date-nav{
  width:44px;height:44px;padding:0;border:0;border-radius:12px;
  background:var(--fill-secondary);color:var(--label);
  font-size:14px;font-weight:600;line-height:1;cursor:pointer;
  transition:transform var(--press) ease-out,background var(--press) ease-out;
}
.global-date-nav:hover{background:var(--fill)}
.global-date-nav:active{transform:scale(.96)}
.global-date-nav:focus-visible{outline:2px solid var(--accent-focus);outline-offset:2px}
.global-date-label{
  min-width:4.5rem;max-width:11rem;text-align:center;display:flex;flex-direction:column;gap:0;
}
.global-date-label strong{
  font-size:14px;font-weight:600;letter-spacing:-.02em;line-height:1.15;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.global-date-label span{display:none}
.period-control-embedded{
  padding:0;border-radius:0;background:transparent;border:0;
}
.page-head-period{
  align-items:center;justify-content:flex-end;
}
.period-embed-fallback{
  margin:0 0 12px;
}
.period-embed-fallback .period-control{
  padding:4px 10px;border-radius:var(--radius-inner);background:var(--grouped);
  border:1px solid var(--separator);
}

main.content{
  width:100%;
  max-width:calc(var(--content-max-readable) + 2 * var(--content-pad-inline));
  margin:0;
  padding:24px var(--content-pad-inline) calc(48px + env(safe-area-inset-bottom,0px));
  background:var(--bg);
}
/* Settings: narrower column, left-aligned in the fused workspace (never centered strip) */
main.content.page-width-narrow{
  max-width:calc(var(--content-max-narrow) + 2 * var(--content-pad-inline));
  margin:0;
}
.content-canvas{width:100%;max-width:100%;display:grid;gap:var(--gap-page)}
body.is-auth{
  background:
    radial-gradient(ellipse 80% 50% at 50% 28%, rgba(255,255,255,.85) 0%, transparent 70%),
    var(--bg);
}
body.is-auth main.content{
  width:min(400px,100%);
  max-width:400px;
  min-height:calc(100vh - 80px);
  margin:0 auto;
  display:grid;
  align-content:center;
  justify-items:stretch;
  padding:40px 16px 56px;
}

/* Mobile tab bar — light Coinbase dock */
.tabbar{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:50;
  height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));
  padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border-top:1px solid var(--hairline);
  justify-content:space-around;align-items:flex-start;gap:4px;
}
.tabbar a{
  flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;
  padding:6px 4px;border-radius:12px;color:var(--muted);
  font-size:11px;font-weight:500;letter-spacing:0;
  transition:color .12s ease,background .12s ease;
}
.tabbar a:active{transform:none;opacity:.75}
.tabbar a.active{color:var(--primary);background:transparent}
.tabbar .tab-ico{
  width:28px;height:28px;border-radius:10px;display:grid;place-items:center;
  font-size:12px;font-weight:600;background:transparent;color:inherit;
}
.tabbar a.active .tab-ico{background:var(--accent-soft);color:var(--primary)}
.tabbar a[href*="bookkeeping"] .tab-ico{
  background:var(--primary);color:var(--on-primary);border-radius:var(--radius-pill);font-size:18px;line-height:1;
}
.tabbar a[href*="bookkeeping"].active .tab-ico{background:var(--primary);color:var(--on-primary)}

.more-sheet[hidden]{display:none!important}
.more-sheet{
  position:fixed;inset:0;z-index:60;background:rgba(10,11,13,.36);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:flex;align-items:flex-end;justify-content:center;
  animation:scrim-in .28s var(--spring-out);
}
.more-sheet-panel{
  width:min(520px,100%);max-height:78vh;overflow:auto;
  background:var(--surface-soft);
  border-radius:24px 24px 0 0;padding:10px 14px 28px;
  box-shadow:var(--shadow-sheet);
  animation:sheet-up .4s var(--spring);
}
.more-sheet-handle{width:36px;height:4px;border-radius:999px;background:var(--hairline);margin:6px auto 16px}
.more-sheet .nav-group{
  background:var(--canvas);border-radius:16px;padding:6px;margin-bottom:10px;
  border:1px solid var(--hairline);
}
.more-sheet .nav-label{
  padding:8px 12px 4px;font-size:12px;font-weight:600;letter-spacing:.02em;
  text-transform:none;color:var(--muted);
}
.more-sheet a{
  display:flex;align-items:center;gap:8px;
  min-height:44px;padding:10px 12px;font-size:15px;font-weight:500;
  border-radius:12px;color:var(--ink);
}
.more-sheet a:hover{background:var(--surface-soft);color:var(--ink)}
.more-sheet .nav-badge{
  margin-left:auto;min-width:18px;height:18px;padding:0 6px;border-radius:var(--radius-pill);
  background:var(--primary);color:var(--on-primary);font-size:11px;font-weight:600;
  display:inline-flex;align-items:center;justify-content:center;
}

/* Staging banner */
body > div[style*="b45309"]{
  position:relative;z-index:100;letter-spacing:.01em;
}

/* ===== Page chrome (DESIGN.md shell) ===== */
.page-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  margin:0 0 var(--page-head-mb);padding-top:0;
}
.page-head h1{
  margin:0;font-family:var(--font-display);
  font-size:clamp(1.75rem,2.4vw,2.25rem);line-height:1.1;
  letter-spacing:-.02em;font-weight:400;
}
.page-head p,.section-head p{margin-top:4px;color:var(--tertiary-label);font-size:14px;line-height:1.4;font-weight:400}
.page-head-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.eyebrow{
  display:inline-block;margin-bottom:4px;color:var(--tertiary-label);
  font-size:11px;font-weight:600;letter-spacing:.04em;
}
.section-head{
  display:flex;align-items:end;justify-content:space-between;gap:12px;
  margin:0 0 8px;padding:0;
}
.section-head h2{font-size:1.0625rem;letter-spacing:-.015em;font-weight:600}
.section-head span{color:var(--tertiary-label);font-size:12px;font-weight:400}

/* Grouped inset sections (iOS Settings) */
.group{
  background:var(--grouped);border-radius:var(--radius-card);
  border:1px solid var(--separator);overflow:hidden;
  box-shadow:none;margin:0 0 var(--gap-page);
}
.group > .section-head,.group-head{
  padding:12px 14px 8px;margin:0;background:transparent;
}
.group-body{padding:0 8px 10px}
.group + .group{margin-top:0}

/* Bare section = layout only (NOT a card). Explicit surfaces below. */
section{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  margin:0 0 var(--gap-page);
  border-radius:0;
}
/* Auto-surface removed — pages must use explicit .surface */
/* Explicit card surfaces */
.surface,.today-ledger,.settle-cards-section,.bug-period-panel,.bug-settlement-section,.bug-record-section,.telegram-inventory-summary,.daily-close-wait-card,.home-ops,.home-partner-balances,
.status-lights-section,.member-result-section,.recent-settlements-section,
.stock-reconcile-section,.unified-detail-workspace,.login,.setup-account,
.narrow,.home-todos,.home-activity,.history-filter-band,
.bookkeeping-panel,.bookkeeping-side,
.cardnet-products-section,.cardnet-tasks-section,.cardnet-payouts,.cardnet-overview,.sync-panel,
.resource-entry-section,.resource-list-section,
.correction-blockers,.correction-add-section,
.settings-group,.audit-feed,
.catalog-create,.catalog-list-section,
.statement-ledger,.daily-close-result-card,.daily-close-mine-card,
.daily-close-transfer-card,.daily-close-people-card,.daily-close-details-card,
.daily-close-confirm-card,.daily-close-activity-card{
  background:var(--grouped);
  border:1px solid var(--separator);
  border-radius:var(--radius-card);
  box-shadow:none;
  padding:var(--pad-card);
  margin:0 0 var(--gap-page);
}
.audit-feed,.settings-group,.statement-ledger.feed,.surface.feed{padding:0;overflow:hidden}
.empty-state,.settlement-empty,.audit-empty{
  padding:28px 16px;text-align:center;color:var(--tertiary-label);
  border:1px dashed var(--separator);border-radius:var(--radius-card);
  background:var(--fill-secondary);margin:0 0 var(--gap-page);
}
/* Page roots + nested shells: never a second card wrapper */
.page-root,.daily-close-page,.statement-page,.bookkeeping-page,.catalog-page,
.history-archive-section,
.statement-page > .statement-team-metrics,
.daily-close-page > .daily-close-simple-body,
.daily-close-simple-report,
.daily-close-hero-pair{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0 0 var(--gap-page)!important;
  overflow:visible!important;
}
.daily-close-hero-pair{margin:0!important}
.daily-close-page,
.daily-close-page > .daily-close-simple-body,
.daily-close-simple-report{margin:0!important}
.daily-close-page .page-head{margin:0 0 var(--page-head-mb)!important;padding-top:0}
.home-hero{margin:0 0 var(--gap-page)!important}
/* KPI grids: transparent shell — cards breathe, never nested in one cramped box */
.source-cards,.metrics,.today-core-metrics,.settle-cards-grid,
.status-lights-grid,.member-result-grid{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0 0 28px!important;
  overflow:visible!important;
}
section:hover,.source-cards article:hover,.surface:hover{transform:none!important;box-shadow:none!important}

/* Shared status pills (paid / unpaid / unknown) */
.status-pill,.daily-close-paid-badge,.daily-close-unpaid-badge,.daily-close-unknown-badge{
  display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600
}
.status-pill.is-paid,.daily-close-paid-badge{background:var(--fill-secondary);color:var(--label)}
.status-pill.is-unpaid,.daily-close-unpaid-badge{background:var(--fill-secondary);color:var(--tertiary-label)}
.status-pill.is-unknown,.daily-close-unknown-badge{background:var(--fill-secondary);color:var(--tertiary-label)}

/* ===== Controls — Coinbase Blue pill primary + surface-strong secondary ===== */
button,.button-link,.allocation-button{
  appearance:none;-webkit-appearance:none;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  height:44px;padding:12px 20px;border:0;border-radius:var(--radius-pill);
  background:var(--primary);color:var(--on-primary);
  font:inherit;font-size:16px;font-weight:600;letter-spacing:0;line-height:1.15;cursor:pointer;
  box-shadow:none;
  transition:background var(--press) ease-out,transform var(--press) ease-out,opacity var(--press) ease-out;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
button:hover,.button-link:hover{background:var(--primary);filter:none;transform:none;box-shadow:none}
button:active,.button-link:active,.allocation-button:active{background:var(--primary-active);transform:none;filter:none}
button:disabled,.button-link:disabled,.allocation-button:disabled{
  background:var(--primary-disabled);color:var(--on-primary);cursor:not-allowed;opacity:1;
}
button:focus-visible,.button-link:focus-visible{
  outline:2px solid var(--primary);outline-offset:2px;
}
button.secondary,.button-link.secondary,.secondary-link{
  background:var(--surface-strong);color:var(--ink);
  box-shadow:none;
}
button.secondary:active,.button-link.secondary:active{background:var(--hairline)}
button.small,.small{height:32px;padding:0 14px;font-size:14px}
/* Trading red/green never as button fill — outline only */
button.danger-button,.danger-button{
  background:transparent;color:var(--semantic-down);
  box-shadow:inset 0 0 0 1px var(--semantic-down);
}
button.danger-button:active,.danger-button:active{background:rgba(207,32,47,.08)}
.danger-outline{background:transparent;color:var(--semantic-down);box-shadow:inset 0 0 0 1px rgba(207,32,47,.4)}
.small-link{color:var(--primary);font-weight:600;font-size:14px}
.unread-badge,.nav-badge{background:var(--primary);color:var(--on-primary)}

input,select,textarea{
  width:100%;height:48px;padding:14px 16px;
  border:1px solid var(--hairline);border-radius:var(--radius-input);
  background:var(--canvas);color:var(--ink);font:inherit;font-weight:400;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
textarea{height:auto;min-height:96px;padding:12px 14px;resize:vertical;border-radius:var(--radius-md)}
input:focus,select:focus,textarea:focus{
  outline:none;border:2px solid var(--primary);
  box-shadow:none;background:var(--canvas);padding:13px 15px;
}
textarea:focus{padding:11px 13px}
label{display:grid;gap:6px;margin:0 0 12px;color:var(--secondary-label);font-size:14px;font-weight:600}
form{margin:0}

/* Notices */
.notice{
  margin:0 0 14px;padding:12px 14px;border-radius:var(--radius-inner);
  border:1px solid transparent;font-weight:600;
}
.notice.success{background:var(--accent-soft);border-color:transparent;color:var(--primary)}
.notice.error{background:var(--surface-strong);border-color:transparent;color:var(--semantic-down)}
.notice.warn{background:var(--surface-strong);border-color:transparent;color:var(--ink)}

/* Metrics / cards — Apple KPI tiles */
.source-cards,.metrics,.today-core-metrics,.settle-cards-grid,
.status-lights-grid,.member-result-grid,.balance-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;
}
.source-cards article,.metrics article,.today-core-metrics article,
.status-light,.settle-card,.member-result-grid article{
  position:relative;min-width:0;overflow:visible;
  background:#fff;border:1px solid var(--hairline);
  border-radius:var(--radius-card);padding:16px 16px 14px;
  box-shadow:none;
  transition:transform var(--press) ease-out,background .15s ease;
}
.source-cards article:active,.status-light:active,.settle-card:active,
.member-result-grid article:active{transform:scale(.985)}
.source-cards strong,.metrics strong,.today-core-metrics strong,
.settle-card>b,.member-result-grid b{
  display:block;margin-top:14px;font-size:clamp(1.75rem,2.4vw,2.1rem);line-height:1.05;
  letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:600;
}
.source-cards article>small,.metrics article>small,.today-core-metrics article>small{
  margin-top:10px;font-size:13px;line-height:1.4;
}
.metric-topline{
  display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:2px;
}
.metric-topline>span{margin:0;color:var(--secondary-label);font-size:14px;font-weight:600;letter-spacing:-.01em}

/* Detail popovers: NEVER take layout space; only on hover/focus */
.metric-detail-wrap{position:relative;z-index:20;outline:none;flex:0 0 auto}
.metric-detail-trigger{
  display:inline-flex!important;align-items:center;justify-content:center;
  min-height:28px;padding:0 10px;border:0;border-radius:980px;
  background:var(--fill);color:var(--blue)!important;
  font-size:12px!important;font-weight:600;line-height:1;white-space:nowrap;cursor:default;
}
.metric-detail-popover{
  position:absolute!important;right:0;top:calc(100% + 8px);z-index:80;
  width:min(360px,calc(100vw - 48px));max-height:min(520px,70vh);overflow:auto;
  padding:14px 16px;border:1px solid var(--separator);border-radius:var(--radius-inner);
  background:#fff;color:var(--label);box-shadow:none;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transform:translateY(6px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.metric-detail-wrap:hover .metric-detail-popover,
.metric-detail-wrap:focus-within .metric-detail-popover,
.metric-detail-wrap:hover,.metric-detail-wrap:focus-within{z-index:90}
.metric-detail-wrap:hover .metric-detail-popover,
.metric-detail-wrap:focus-within .metric-detail-popover{
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  transform:none;
}
.metric-detail-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--separator)}
.metric-detail-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(60,60,67,.06)}
.metric-detail-row:last-child{border-bottom:0}
.metric-detail-note{margin:10px 0 0;color:var(--tertiary-label);font-size:12px;line-height:1.45}
.workflow-summary,.sales-income-summary,.inventory-cost-summary{overflow:visible}
.workflow-summary article:hover,.workflow-summary article:focus-within{z-index:60}
.positive{color:var(--money-up)!important}
.negative{color:var(--money-down)!important}
.money-move{color:var(--money-move)!important}
.muted-text,.empty{color:var(--tertiary-label)}
.error-text{color:var(--danger);font-weight:600}
.success-text{color:var(--money-up);font-weight:600}

/* Tables */
.table-wrap,.table-panel{
  overflow:auto;border-radius:var(--radius-card);border:1px solid var(--separator);
  background:#fff;margin-top:0;
}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:13px}
th,td{padding:8px 10px;border-bottom:1px solid var(--separator);text-align:left;vertical-align:top}
th{color:var(--secondary-label);font-size:12px;font-weight:600}
th{background:var(--surface-soft);color:var(--secondary-label);font-size:12px;font-weight:600;letter-spacing:0;position:sticky;top:0}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:var(--accent-soft)}
td small{margin-top:3px}

/* Status pills */
.status{
  display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;
  font-size:11px;font-weight:600;background:var(--fill);color:var(--secondary-label);
}
.status.done{background:var(--accent-soft);color:var(--accent)}
.status.waiting{background:var(--fill-secondary);color:var(--tertiary-label)}
.status.cancelled{background:var(--fill-secondary);color:var(--money-down)}

/* Segmented tabs */
.detail-tabs{
  display:flex;gap:2px;padding:3px;margin:0 0 14px;overflow-x:auto;
  border:0;border-radius:10px;background:var(--fill);box-shadow:none;
}
.detail-tabs button{
  flex:0 0 auto;min-width:0;height:34px;padding:0 12px;border:0;border-radius:8px;
  background:transparent;color:var(--secondary-label);font-size:13px;font-weight:600;
  box-shadow:none;
}
.detail-tabs button:hover{background:transparent;filter:none}
.detail-tabs button:active{transform:scale(.97)}
.detail-tabs button[aria-selected="true"]{
  background:#fff;color:var(--label);
  box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 1px rgba(0,0,0,.04);
}
.detail-tab-count{
  margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--fill);
  font-size:11px;font-weight:600;color:var(--tertiary-label);
}
.detail-tab-alert{
  margin-left:6px;padding:1px 6px;border-radius:999px;
  background:var(--fill-secondary);color:var(--tertiary-label);font-size:10px;font-weight:600;
}
.detail-tab-panel[hidden],.detail-tab-panel[aria-hidden="true"]{display:none}
.detail-panel-note{margin:0 0 10px;color:var(--tertiary-label);font-size:13px}

/* ===== Dashboard v2 display logic ===== */
.dash-hero{padding:8px 0 0;margin-bottom:8px;background:transparent!important;border:0!important}
.dash-date-context{
  margin:0 0 16px;padding:14px 16px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid var(--hairline);color:var(--label);
  display:grid;gap:4px;
}
.dash-date-context span{font-size:13px;line-height:1.45;font-weight:550}
.my-settle-hero{
  display:grid;grid-template-columns:1fr auto;gap:10px 20px;align-items:center;
  margin:0 0 16px;padding:22px 24px;border-radius:var(--radius-card);
  background:#fff;border:1px solid var(--separator);
}
.my-settle-hero.earn,.my-settle-hero.loss,.my-settle-hero.flat{background:var(--bg-elevated)}
.my-settle-hero h2{margin:4px 0;font-size:1.35rem}
.my-settle-hero>b{
  font-size:clamp(2rem,4vw,2.75rem);letter-spacing:-.04em;font-variant-numeric:tabular-nums;line-height:1;
  font-weight:700;color:var(--label);
}
.my-settle-hero>b.money-up,.money-up{color:var(--money-up)!important}
.my-settle-hero>b.loss-muted,.loss-muted{color:var(--secondary-label)!important} /* D6.1 承担亏损克制色 */
.my-settle-hero.flat>b{color:var(--label)!important}
.my-settle-cash{grid-column:1 / -1;margin:0;padding-top:8px;border-top:1px solid var(--separator)}
.my-settle-cash p{margin:0;font-size:13px;font-weight:600}
.my-settle-cash .money-move{
  color:var(--money-move)!important;padding-left:8px;border-left:3px solid var(--money-move);
}
.settle-cards-grid{
  display:grid;grid-template-columns:1fr;gap:10px;
}
@media(min-width:900px){
  .settle-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.settle-card{
  padding:14px 16px;border-radius:var(--radius-card);border:1px solid var(--hairline);
  background:var(--bg-elevated);display:grid;gap:6px;
}
.settle-card > b{font-size:1.25rem;color:var(--money-move)!important;font-variant-numeric:tabular-nums}
.settle-card-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.settle-card-top span{font-size:13px;color:var(--secondary-label);font-weight:600}
.settle-formula{font-size:11px;color:var(--tertiary-label);white-space:normal;word-break:break-word}
.settle-story p{margin:4px 0;font-size:13px;color:var(--secondary-label)}
.today-transfer-preview{margin-top:12px;padding-top:12px;border-top:1px solid var(--hairline)}
.today-transfer-preview p{margin:6px 0 0}
.today-ledger-head,.home-day-lines .section-head{align-items:flex-start}
.today-core-metrics{margin-top:12px}
.home-day-line-list{display:grid;gap:8px}
.home-day-line{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  padding:10px 0;border-bottom:1px solid var(--hairline);
}
.home-day-line:last-child{border-bottom:0}
.home-day-line small{display:block;color:var(--tertiary-label);font-size:12px;margin-top:2px}
.dash-gap-strip{
  background:rgba(255,159,10,.12)!important;border-color:rgba(255,159,10,.35)!important;
}
.dash-date-context.warn{
  background:rgba(255,159,10,.1);border-color:rgba(255,159,10,.35);
}
.source-cards.cardnet-gap-triple{
  display:grid;grid-template-columns:1fr;gap:10px;margin:0 0 16px;
}
@media(min-width:800px){
  .source-cards.cardnet-gap-triple{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.source-cards.cardnet-gap-triple article{
  padding:14px 16px;border-radius:var(--radius-card);border:1px solid var(--hairline);
  background:var(--bg-elevated);display:grid;gap:4px;
}
.source-cards.cardnet-gap-triple article.is-gap{
  background:rgba(255,159,10,.1);border-color:rgba(255,159,10,.35);
}
.source-cards.cardnet-gap-triple span{font-size:13px;color:var(--secondary-label)}
.source-cards.cardnet-gap-triple strong{font-size:1.35rem;font-variant-numeric:tabular-nums}
.my-transfer-lines{grid-column:1/-1;margin:0;padding-top:8px;border-top:1px solid var(--separator)}
.my-transfer-lines p{margin:6px 0 0;font-weight:600}
.dash-gap-strip{
  margin:0 0 16px;padding:14px 16px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid var(--hairline);color:var(--label);
  display:grid;gap:4px;
}
.dash-gap-strip span{font-size:13px;line-height:1.45}
.settle-card.is-me{box-shadow:inset 0 0 0 2px var(--accent)}
@media(max-width:700px){
  .my-settle-hero{grid-template-columns:1fr}
  .my-settle-hero>b{justify-self:start}
}
.dash-hero .page-head{margin:0 0 16px}
.dash-status-strip{
  display:flex;gap:8px;overflow-x:auto;padding:0 0 2px;margin:0 0 18px;
  scrollbar-width:none;
}
.dash-status-strip::-webkit-scrollbar{display:none}
.dash-chip{
  flex:0 0 auto;display:flex;flex-direction:column;gap:2px;
  min-width:148px;padding:10px 12px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid transparent;
  transition:transform var(--press) ease-out;
}
.dash-chip:active{transform:scale(.98)}
.dash-chip.ok{background:var(--accent-soft)}
.dash-chip.warn{background:var(--fill-secondary)}
.dash-chip.danger{background:var(--fill-secondary)}
.dash-chip strong{font-size:13px;letter-spacing:-.01em}
.dash-chip small{font-size:11px}
.dash-chip a{margin-top:4px;font-size:12px;font-weight:600;color:var(--blue)}

.settle-cards-section{padding:18px}
.settle-cards-section > .section-head{padding:0;margin-bottom:12px}
.settle-card{border-left:0;position:relative;overflow:hidden}
.settle-card.pay{background:var(--bg-elevated)}
.settle-card.recv{background:var(--bg-elevated);justify-content:space-between;gap:8px;align-items:center}
.settle-card-top span{font-size:12px;font-weight:600;color:var(--tertiary-label)}
.settle-formula{
  display:block;margin:10px 0 8px;padding:8px 10px;border-radius:10px;
  background:rgba(255,255,255,.65);color:var(--secondary-label);
  font-size:11px;line-height:1.45;white-space:normal;
}
.settle-card details summary{
  cursor:pointer;color:var(--blue);font-size:12px;font-weight:600;
  list-style:none;
}
.settle-card details summary::-webkit-details-marker{display:none}
.settle-story p{margin:6px 0 0;color:var(--tertiary-label);font-size:12px;line-height:1.5}

.today-transfer-preview{
  margin-top:12px;padding:12px 14px;border-radius:var(--radius-inner);
  background:rgba(0,82,255,.06);border:1px solid rgba(0,82,255,.12);
}
.today-transfer-preview p{margin:6px 0 0;font-weight:600}
.today-transfer-preview b{font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.settlement-pending{
  margin-top:12px;padding:12px 14px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);color:var(--tertiary-label);font-weight:600;
}

.today-ledger{padding:16px}
.today-ledger-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:12px}
.today-ledger-head .payout-state{max-width:280px;text-align:right;color:var(--tertiary-label);font-size:12px;font-weight:600;line-height:1.35}
.today-core-metrics{background:transparent;padding:0;gap:10px;border:0}

.member-result-grid article{display:grid;gap:4px}
.member-result-grid article > div{display:flex;justify-content:space-between;gap:8px}

.settled-history-list{display:grid;gap:8px}
.settled-history-row{
  display:grid;grid-template-columns:1.2fr repeat(3,.8fr) 1.4fr auto;
  gap:10px;align-items:center;padding:12px 14px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);
}
.settled-history-row span{color:var(--tertiary-label);font-size:11px;font-weight:600}
.settled-history-members{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}
/* Detail always spans full row — actions column must not steal its track */
.history-archive-detail{grid-column:1/-1;margin-top:4px}
.settled-history-actions{justify-self:end;margin-top:0}
.history-archive-detail > summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:13px}

/* Login */
.login,.setup-account,.auth-card{
  width:100%;max-width:400px;margin:0 auto;padding:28px 24px;
  background:var(--bg-elevated);border:1px solid var(--hairline);
  border-radius:var(--radius-card);box-shadow:none;
}
.login h1,.setup-account h1{
  margin:0;
  font-size:30px;font-weight:700;line-height:1.15;
  letter-spacing:-.03em;color:var(--label);
}
.login-lead,.login p,.setup-account p{
  margin:8px 0 22px;font-size:16px;line-height:1.45;font-weight:400;
  color:var(--tertiary-label);
}
.login .notice{margin:0 0 16px}
.login-form{display:grid;gap:14px}
.login-form label{display:grid;gap:6px;font-size:13px;font-weight:500;color:var(--secondary-label)}
.login-form input{
  width:100%;height:48px;font-size:16px;
}
.login-password-row{
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;
}
.login-password-row input{min-width:0}
.login-toggle{
  height:36px;padding:0 10px;margin:0;
  border:0;background:transparent;box-shadow:none;
  color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;
}
.login-toggle:hover{background:transparent;color:var(--accent)}
.login-toggle:active{transform:none;opacity:.7}
.login-form > button[type="submit"],
.setup-account form > button{
  width:100%;height:48px;font-size:16px;font-weight:600;margin-top:4px;
}
.login-form > button[type="submit"][disabled]{opacity:.72;cursor:wait}
body.is-auth .sidebar,body.is-auth .tabbar,body.is-auth .topbar{display:none!important}
body.is-auth .app-frame{display:block}

/* Daily close — sheet */
.daily-close-banner{
  position:relative;z-index:30;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  min-height:40px;padding:8px var(--content-pad-inline);
  background:var(--bg-elevated);
  border-bottom:1px solid var(--hairline);color:var(--label);
}
.daily-close-banner[hidden]{display:none}
.daily-close-banner-text{
  display:flex;align-items:baseline;gap:8px;min-width:0;flex:1 1 auto;
}
.daily-close-banner span{font-size:11px;color:var(--tertiary-label);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.daily-close-banner [data-close-banner-title]{font-size:13px;font-weight:600;white-space:nowrap}
.daily-close-overlay{
  position:fixed;inset:0;z-index:200;display:grid;place-items:end center;
  padding:0;background:rgba(0,0,0,.36);
  backdrop-filter:blur(10px) saturate(120%);
  -webkit-backdrop-filter:blur(10px) saturate(120%);
  animation:scrim-in .28s var(--spring-out);
}
.daily-close-overlay[hidden]{display:none}
.daily-close-dialog{
  display:flex;flex-direction:column;
  width:min(720px,100%);max-height:min(92vh,920px);
  margin:0;padding:0;overflow:hidden;
  border:1px solid rgba(255,255,255,.35);
  border-radius:18px 18px 0 0;
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(180%) blur(28px);
  -webkit-backdrop-filter:saturate(180%) blur(28px);
  box-shadow:var(--shadow-sheet);
  animation:sheet-up .42s var(--spring);
}
@media(min-width:820px){
  .daily-close-overlay{place-items:center;padding:24px}
  .daily-close-dialog{border-radius:var(--radius-card);max-height:min(88vh,860px)}
}
.daily-close-head{
  display:flex;justify-content:space-between;gap:16px;align-items:flex-start;
  padding:20px 20px 14px;border-bottom:1px solid var(--separator);background:transparent;
}
.daily-close-phase{
  flex:0 0 auto;padding:6px 10px;border-radius:999px;
  background:var(--fill);font-size:12px;font-weight:600;color:var(--secondary-label);
}
.daily-close-scroll{overflow:auto;padding:16px 20px 12px;flex:1}
.daily-close-wait{
  display:flex;gap:14px;align-items:center;padding:18px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);
}
.daily-close-loader{
  width:28px;height:28px;border-radius:50%;
  border:2.5px solid var(--hairline);border-top-color:var(--accent);
  animation:spin .8s linear infinite;
}
.daily-close-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.daily-close-metrics article{
  padding:12px;border-radius:var(--radius-inner);background:var(--fill-secondary);border:1px solid transparent;
}
.daily-close-metrics strong{display:block;margin:6px 0;font-size:1.35rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.daily-close-accounting-note{
  margin:0 0 14px;padding:12px 14px;border-radius:var(--radius-inner);
  background:var(--bg-elevated);border:1px solid var(--hairline);color:var(--label);
  font-size:12px;line-height:1.55;
}
.daily-close-accounting-note[hidden]{display:none}
.daily-close-accounting-note p{margin:0 0 6px}
.daily-close-accounting-note p:last-child{margin:0}
.daily-close-section-head{display:flex;justify-content:space-between;gap:10px;align-items:end;margin:16px 0 8px}
.daily-close-section-head p{color:var(--tertiary-label);font-size:12px;margin-top:2px}
.daily-close-members,.daily-close-transfers,.daily-close-confirmations{display:grid;gap:8px}
.daily-close-member,.daily-close-transfer,.daily-close-confirmation{
  display:flex;justify-content:space-between;gap:12px;align-items:center;
  padding:12px 14px;border-radius:var(--radius-inner);background:var(--fill-secondary);
  transition:transform var(--press) ease-out;
}
.daily-close-member:active,.daily-close-transfer:active{transform:scale(.99)}
.daily-close-member-result{display:grid;justify-items:end;gap:4px}
.daily-close-transfer{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) auto auto;align-items:center}
.daily-close-confirmation.confirmed{background:rgba(0,82,255,.12)}
.daily-close-blockers{
  margin:12px 0;padding:12px 14px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid var(--hairline);
}
.daily-close-actions{
  display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));
  background:rgba(248,248,250,.9);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-top:1px solid var(--separator);
}
.daily-close-actions form{display:inline-flex}
.daily-close-actions button,.daily-close-actions .button-link{min-height:40px}
.daily-close-explain{
  height:28px;padding:0 10px;border-radius:999px;background:#fff;color:var(--blue);
  font-size:12px;font-weight:600;border:1px solid var(--separator);
}
.daily-close-explain:active{transform:scale(.96)}
.daily-close-explain-wrap{position:relative}
.daily-close-explain-popover{
  position:absolute;right:0;top:calc(100% + 7px);z-index:30;width:min(500px,calc(100vw - 64px));
  padding:12px 14px;border:1px solid var(--separator);border-radius:var(--radius-inner);background:#fff;
  color:var(--label);box-shadow:none;font-size:12px;line-height:1.7;text-align:left;
  opacity:0;visibility:hidden;pointer-events:none;transform:translateY(4px);
  transition:opacity .14s ease,visibility .14s,transform .14s;white-space:pre-line;
}
.daily-close-explain-wrap.open .daily-close-explain-popover,
.daily-close-explain-wrap:focus-within .daily-close-explain-popover{
  opacity:1;visibility:visible;pointer-events:auto;transform:none;
}
.daily-close-empty{color:var(--tertiary-label);padding:8px}

.daily-close-page{display:grid;gap:10px;width:100%;max-width:none;margin:0}
.daily-close-page [hidden]{display:none!important}
.daily-close-simple-head{margin:0 0 10px;padding-top:0}
.daily-close-simple-head h1{font-size:clamp(1.45rem,2.4vw,1.85rem);line-height:1.15}
.daily-close-simple-head p{margin-top:4px;font-size:13px;line-height:1.4}
.daily-close-simple-head .page-head-actions{align-items:center}
.daily-close-simple-body{display:grid;gap:10px}
.daily-close-clear-state{
  display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--hairline);
  border-radius:var(--radius-card);background:var(--bg-elevated);
}
.daily-close-clear-state>span{
  width:36px;height:36px;display:grid;place-items:center;border-radius:50%;
  background:var(--accent);color:#fff;font-size:18px;font-weight:600;
}
.daily-close-clear-state div{flex:1}.daily-close-clear-state p{margin-top:2px;color:var(--secondary-label);font-size:13px}
.daily-close-wait-card{
  min-height:180px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;
  gap:16px;align-items:center;padding:24px;border:1px solid var(--hairline);
  border-radius:var(--radius-card);background:var(--bg-elevated);
}
.daily-close-wait-card h2{margin-bottom:5px}.daily-close-wait-card p{color:var(--tertiary-label)}
.daily-close-wait-card form{margin:0}
/* Dense stack — D2.1: mine before team in DOM; desktop side-by-side keeps that read order */
.daily-close-simple-report{display:flex;flex-direction:column;gap:10px;width:100%}
.daily-close-hero-pair{
  display:grid;grid-template-columns:1fr;gap:10px;width:100%;
}
.daily-close-hero-pair > .daily-close-mine-card{order:1}
.daily-close-hero-pair > .daily-close-result-card{order:2}
@media(min-width:960px){
  .daily-close-hero-pair{grid-template-columns:1fr 1fr;gap:10px}
}
.daily-close-result-card,.daily-close-mine-card,.daily-close-transfer-card,.daily-close-people-card,
.daily-close-details-card,.daily-close-confirm-card{
  border:1px solid var(--separator);border-radius:var(--radius-inner);background:#fff;box-shadow:none;
  width:100%;
}
.daily-close-result-card{
  padding:14px 16px;text-align:left;overflow:hidden;
  background:var(--bg-elevated);
}
.daily-close-page[data-result="loss"] .daily-close-result-card{
  background:var(--bg-elevated);
}
.daily-close-mine-card{
  padding:14px 16px;text-align:left;
  background:var(--bg-elevated);
  border-color:rgba(0,82,255,.16);
}
.daily-close-mine-number{
  display:block;color:var(--label);font-size:clamp(1.85rem,3.2vw,2.4rem);
  line-height:1.05;letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-weight:700;
}
.daily-close-mine-number.positive{color:var(--money-up)}
.daily-close-mine-number.negative{color:var(--secondary-label)} /* 承担亏损：克制，非报警红 */
.daily-close-mine-card>p{margin:2px 0 0;color:var(--secondary-label);font-size:12px}
.daily-close-mine-cash{margin-top:8px;padding-top:8px;border-top:1px solid var(--separator)}
.daily-close-mine-cash p{
  margin:0;color:var(--tertiary-label);font-size:12px;font-weight:500;
  padding-left:8px;border-left:3px solid var(--money-move);
}
.daily-close-mine-cash p.is-pay,
.daily-close-mine-cash p.is-receive{color:var(--money-move);font-weight:600}
.daily-close-result-kicker{
  display:block;margin-bottom:2px;color:var(--secondary-label);font-size:12px;font-weight:600;
}
.daily-close-result-number{
  display:block;color:var(--accent);font-size:clamp(1.65rem,2.8vw,2.1rem);
  line-height:1.05;letter-spacing:-.04em;font-variant-numeric:tabular-nums;
}
.daily-close-result-number.negative{color:var(--danger)}
.daily-close-result-card>p{margin:2px 0 8px;color:var(--secondary-label);font-size:12px}
.daily-close-result-parts{
  display:flex;align-items:center;justify-content:flex-start;gap:14px;
  margin:0;padding-top:8px;border-top:1px solid var(--separator);
}
.daily-close-result-parts>span{color:var(--tertiary-label);font-size:16px}
.daily-close-result-parts div{display:grid;gap:1px;min-width:0}
.daily-close-result-parts div>span{color:var(--tertiary-label);font-size:11px}
.daily-close-result-parts strong{font-size:1rem;font-variant-numeric:tabular-nums}
/* Transfer = dense action list, full width, no nested padding tax */
.daily-close-transfer-card{
  padding:12px 14px;
  border-color:rgba(0,82,255,.18);
}
.daily-close-people-card{padding:12px 14px}
.daily-close-simple-section-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;
}
.daily-close-simple-section-head h2{font-size:1.05rem;letter-spacing:-.015em}
.daily-close-simple-section-head .eyebrow{margin-bottom:2px;font-size:11px}
.daily-close-simple-section-head p{display:none}
.daily-close-transfer-count,.daily-close-progress{
  flex:0 0 auto;padding:3px 8px;border-radius:999px;background:var(--fill);
  color:var(--secondary-label);font-size:11px;font-weight:600;
}
.daily-close-transfers{display:grid;gap:6px}
.daily-close-members{
  display:grid;grid-template-columns:1fr;gap:8px;
}
@media(min-width:900px){
  .daily-close-members{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
}
.daily-close-transfer-simple{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 14px;align-items:center;
  min-height:48px;padding:10px 12px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid var(--separator);
}
.daily-close-transfer-simple.is-unpaid{
  background:var(--fill-secondary);border-color:var(--hairline);
}
.daily-close-transfer-simple.is-paid{
  background:var(--bg-elevated);border-color:var(--hairline);opacity:.94;
}
.daily-close-transfer-simple.is-unknown{
  background:var(--fill-secondary);border-color:var(--separator);
}
.daily-close-transfer-route{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}
.daily-close-transfer-route strong{font-size:.95rem}
.daily-close-transfer-route span{color:var(--tertiary-label);font-size:12px}
.daily-close-transfer-simple>b{
  color:var(--label);font-size:1.25rem;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums;justify-self:end;
}
.daily-close-transfer-simple.is-unpaid>b{color:var(--money-move)}
.daily-close-transfer-simple.is-paid>b{color:var(--money-move)}
.daily-close-transfer-simple>.daily-close-inline-details{grid-column:1/-1;margin-top:2px}
.daily-close-paid-hint{display:none}
.daily-close-transfer-status{grid-column:1/-1;margin-top:0}
.daily-close-transfer-status:empty{display:none}
/* Open settle: unpaid is the default — don't spend a whole row on it */
.daily-close-page:not([data-mode="settled"]) .daily-close-transfer-simple.is-unpaid .daily-close-transfer-status{display:none}
.daily-close-page:not([data-mode="settled"]) .daily-close-transfer-simple .daily-close-inline-details{display:none}
.daily-close-unpaid-badge,.daily-close-paid-badge,.daily-close-unknown-badge{
  display:inline-block;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:600;
}
.daily-close-details-card>summary{padding:12px 14px!important}
.daily-close-details-content{padding:0 14px 14px!important}
/* Settled: transfer first */
.daily-close-page[data-mode="settled"] .daily-close-transfer-card{order:-1}
.daily-close-page[data-mode="settled"] .daily-close-hero-pair{order:0}
.daily-close-page[data-mode="settled"] .daily-close-result-card>p{display:none}
.daily-close-page[data-mode="settled"] .daily-close-people-card{order:1}
.daily-close-page[data-mode="settled"] .daily-close-details-card{order:2}
.daily-close-mark-form{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:end}
.daily-close-reason-field{display:grid;gap:4px;font-size:.8rem;color:var(--secondary-label);flex:1;min-width:12rem}
.daily-close-reason-field input{width:100%}
.daily-close-activity-card{
  margin-top:18px;padding:18px 20px;border-radius:18px;
  background:var(--grouped);border:1px solid var(--separator);
}
.recent-activity-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.recent-activity-item{display:grid;grid-template-columns:3.2rem minmax(0,1fr);gap:10px;align-items:start}
.recent-activity-time{color:var(--tertiary-label);font-variant-numeric:tabular-nums;font-size:.85rem;padding-top:.15rem}
.recent-activity-item strong{display:block;font-size:.95rem}
.recent-activity-item small{display:block;color:var(--secondary-label);margin-top:2px;line-height:1.35}
.recent-activity-empty{color:var(--tertiary-label);margin:0}
.daily-close-transfer-empty{
  display:flex;gap:9px;align-items:center;padding:16px;border-radius:var(--radius-card);
  background:var(--fill-secondary);color:var(--label);
}
.daily-close-transfer-empty span{
  width:24px;height:24px;display:grid;place-items:center;border-radius:50%;
  background:var(--accent);color:#fff;font-weight:600;
}
.daily-close-member-simple{
  display:flex;justify-content:space-between;gap:10px;align-items:flex-start;
  padding:10px 12px;border-radius:var(--radius-inner);background:var(--fill-secondary);border:1px solid transparent;
}
.daily-close-member-simple.is-me{background:var(--accent-soft);border-color:transparent}
.daily-close-member-main{display:grid;gap:4px;min-width:0;flex:1}
.daily-close-member-main>strong{display:flex;align-items:center;gap:6px;font-size:.95rem}
.daily-close-member-earn{
  display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;
  color:var(--secondary-label);font-size:11px;font-weight:600;
}
.daily-close-member-earn b{font-size:1.05rem;font-variant-numeric:tabular-nums}
.daily-close-member-earn.earn b{color:var(--money-up)}
.daily-close-member-earn.loss b{color:var(--danger)}
.daily-close-me-badge{
  padding:1px 6px;border-radius:999px;background:var(--blue);color:#fff;font-size:10px;font-weight:800;
}
.daily-close-member-result{display:grid;justify-items:end;gap:1px;flex:0 0 auto;padding-top:2px}
.daily-close-member-result span{color:var(--tertiary-label);font-size:11px}
.daily-close-member-result strong{
  font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--money-move);
}
.daily-close-member-result strong.positive,
.daily-close-member-result strong.negative,
.daily-close-member-result strong.money-move{color:var(--money-move)!important}
.daily-close-member-earn b{font-size:1.15rem;font-variant-numeric:tabular-nums}
.daily-close-member-earn.earn b{color:var(--money-up)}
.daily-close-member-earn.loss b{color:var(--secondary-label)}
.daily-close-transfer-simple > b{
  color:var(--money-move);font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums;
}
.daily-close-transfer-hint{
  margin:0 0 10px;padding:8px 10px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);color:var(--secondary-label);font-size:12px;line-height:1.45;
}
.daily-close-gap-strip{
  margin:0 0 12px;padding:12px 14px;border-radius:var(--radius-inner);
  background:rgba(255,159,10,.12);border:1px solid rgba(255,159,10,.35);color:var(--label);
  display:grid;gap:4px;
}
.daily-close-gap-strip span{font-size:13px;line-height:1.45;color:var(--secondary-label)}
.daily-close-paid-hint{font-size:11px;color:var(--tertiary-label);font-weight:500}
.daily-close-copy-transfers{
  height:32px;padding:0 12px;font-size:13px;margin:0;
}
.daily-close-activity-card details > summary{
  cursor:pointer;list-style:none;font-weight:600;color:var(--label);
}
.daily-close-activity-card details > summary::-webkit-details-marker{display:none}
.daily-close-phase.can-confirm{
  background:var(--accent-soft);color:var(--accent);
}
.daily-close-inline-details{font-size:12px;color:var(--secondary-label)}
.daily-close-inline-details summary{cursor:pointer;color:var(--blue);font-weight:600;list-style:none}
.daily-close-inline-details summary::-webkit-details-marker{display:none}
.daily-close-inline-details summary::after{content:" ›"}
.daily-close-inline-details[open] summary::after{content:"⌄"}
.daily-close-inline-details p,
.daily-close-explain-steps{
  margin:8px 0 2px;padding:10px 11px;border-radius:10px;background:#fff;
  color:var(--secondary-label);font-size:12px;line-height:1.55;
}
.daily-close-explain-steps{display:grid;gap:6px;list-style:none;counter-reset:dc-step}
.daily-close-explain-steps li{position:relative;padding-left:22px}
.daily-close-explain-steps li::before{
  counter-increment:dc-step;content:counter(dc-step);
  position:absolute;left:0;top:1px;width:16px;height:16px;border-radius:50%;
  display:grid;place-items:center;background:var(--fill);color:var(--secondary-label);
  font-size:10px;font-weight:800;line-height:16px;text-align:center;
}
.daily-close-details-card{grid-column:1/-1;overflow:hidden}
.daily-close-details-card>summary{
  cursor:pointer;padding:16px 20px;color:var(--secondary-label);font-weight:600;list-style:none;
}
.daily-close-details-card>summary::-webkit-details-marker{display:none}
.daily-close-details-card>summary::after{content:"＋";float:right;color:var(--tertiary-label)}
.daily-close-details-card[open]>summary::after{content:"－"}
.daily-close-details-content{padding:0 20px 20px;border-top:1px solid var(--separator)}
.daily-close-details-content .daily-close-accounting-note{margin:16px 0 12px}
.daily-close-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.daily-close-detail-grid>div{padding:13px;border-radius:var(--radius-inner);background:var(--fill-secondary)}
.daily-close-detail-grid p{margin-top:5px;color:var(--secondary-label);font-size:12px;line-height:1.55}
.daily-close-confirm-card{padding:12px 14px}
.daily-close-confirm-card .daily-close-blockers{margin:0 0 10px}
.daily-close-confirmations{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0 12px}
.daily-close-confirmation-simple{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 7px;align-items:center;
  padding:11px 12px;border-radius:var(--radius-inner);background:var(--fill-secondary);
}
.daily-close-confirmation-simple>span:last-child{grid-column:2;color:var(--tertiary-label);font-size:11px}
.daily-close-confirmation-simple.confirmed{background:rgba(0,82,255,.1)}
.daily-close-confirmation-mark{
  grid-row:1/3;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;
  background:var(--fill);color:var(--tertiary-label);font-weight:800;
}
.daily-close-confirmation-simple.confirmed .daily-close-confirmation-mark{background:var(--accent);color:#fff}
.daily-close-confirm-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.daily-close-confirm-actions form{display:inline-flex;margin:0}
.daily-close-confirm-actions button{min-height:44px}
.daily-close-simple-footer{display:flex;justify-content:center;gap:10px;padding:2px 0 8px;color:var(--tertiary-label);font-size:13px}

/* Kill old hover-lift dashboard motion */
.metrics article:hover,.cardnet-product-row:hover,.review-list article:hover,
.breakdown-card:hover,.settlement-facts article:hover,.due-settlement-list article:hover,
.selected-day-summary article:hover,.balance-grid article:hover,
.member-result-grid article:hover,.member-result-grid article:focus{
  transform:none!important;box-shadow:none!important;
}

/* Dialogs (native) */
dialog.entry-dialog,.entry-dialog{
  border:0;border-radius:18px;padding:0;width:min(520px,calc(100vw - 24px));
  background:rgba(255,255,255,.96);
  box-shadow:var(--shadow-sheet);
}
dialog::backdrop{background:rgba(0,0,0,.36);backdrop-filter:blur(8px)}

@keyframes sheet-up{
  from{opacity:0;transform:translateY(36px) scale(.98)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes scrim-in{from{opacity:0}to{opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}

/* Responsive */
@media(max-width:1100px){
  .source-cards,.metrics,.today-core-metrics,.settle-cards-grid,
  .sales-income-summary,.inventory-cost-summary{grid-template-columns:1fr 1fr}
  .source-cards article:last-child,
  .sales-income-summary article:last-child,
  .inventory-cost-summary article:last-child{grid-column:1/-1}
}
@media(max-width:900px){
  .sidebar{display:none}
  .topbar{display:flex}
  .tabbar{display:flex}
  main.content{
    max-width:none;margin:0;
    padding:16px 16px calc(88px + env(safe-area-inset-bottom,0px));
  }
  :root{--content-pad-inline:16px}
  .page-head-period{width:100%;justify-content:stretch}
  .page-head-period .period-control{flex:1 1 auto}
  .page-head-period .button-link{width:auto;flex:0 0 auto}
  .source-cards,.metrics,.today-core-metrics,.settle-cards-grid,
  .status-lights-grid,.member-result-grid,.daily-close-metrics,
  .sales-income-summary,.inventory-cost-summary{grid-template-columns:1fr}
  .source-cards article:last-child,
  .sales-income-summary article:last-child,
  .inventory-cost-summary article:last-child{grid-column:auto}
  .settled-history-row{grid-template-columns:1fr 1fr;gap:8px}
  .history-archive-detail,.settled-history-date,
  .settled-history-members,.settled-history-actions{grid-column:1/-1}
  .settled-history-actions{justify-self:stretch}
  .settled-history-actions .button-link{width:100%;text-align:center}
  .page-head{flex-direction:column;align-items:stretch}
  .page-head-actions{width:100%}
  .page-head-actions button,.page-head-actions .button-link{width:100%}
  .daily-close-simple-head .page-head-actions{flex-direction:row;flex-wrap:wrap}
  .daily-close-simple-head .page-head-actions .button-link{width:auto}
  /* Mobile density: keep history + phase; demote secondary nav links */
  .daily-close-simple-head .page-head-actions .button-link[data-nav-secondary]{display:none}
  .daily-close-hero-pair{grid-template-columns:1fr}
  .daily-close-members{grid-template-columns:1fr}
}
@media(max-width:460px){
  .daily-close-transfer{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr);gap:6px}
  .daily-close-transfer>b{grid-column:1/-1}
  .daily-close-actions{display:grid;grid-template-columns:1fr}
  .daily-close-actions>*{width:100%}
  .daily-close-actions button,.daily-close-actions .button-link{width:100%}
  .daily-close-page{gap:10px}
  .daily-close-clear-state{align-items:flex-start;flex-wrap:wrap;padding:12px 14px}
  .daily-close-clear-state .button-link{width:100%;text-align:center}
  .daily-close-wait-card{grid-template-columns:auto minmax(0,1fr);padding:14px}
  .daily-close-wait-card form{grid-column:1/-1}
  .daily-close-wait-card button{width:100%}
  .daily-close-result-card,.daily-close-mine-card{padding:12px 14px}
  .daily-close-result-parts{gap:10px}
  .daily-close-result-parts div{min-width:0;flex:1}
  .daily-close-transfer-card,.daily-close-people-card,.daily-close-confirm-card{padding:12px}
  .daily-close-transfer-simple{grid-template-columns:1fr auto;gap:2px 10px}
  .daily-close-transfer-simple>b{grid-row:auto;font-size:1.2rem;justify-self:end}
  .daily-close-transfer-simple>.daily-close-inline-details{grid-column:1/-1}
  .daily-close-detail-grid{grid-template-columns:1fr}
  .daily-close-confirmations{gap:6px}
  .daily-close-confirmation-simple{grid-template-columns:auto 1fr;padding:9px}
  .daily-close-confirm-actions{display:grid;grid-template-columns:1fr}
  .daily-close-confirm-actions>*,
  .daily-close-confirm-actions button,
  .daily-close-confirm-actions .button-link{width:100%;text-align:center}
}

@media (prefers-reduced-transparency: reduce){
  .tabbar,.daily-close-banner,.daily-close-dialog,.daily-close-actions,.login{
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  .sidebar{background:var(--sidebar-bg)}
  .topbar{background:var(--bg)}
  .tabbar{background:#fff}
  .daily-close-dialog{background:#fff}
  .daily-close-overlay{background:rgba(0,0,0,.5)}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;
  }
  button:active,.button-link:active,.sidebar-nav a:active,.tabbar a:active{transform:none}
  .daily-close-dialog,.daily-close-overlay,.more-sheet,.more-sheet-panel{animation:none}
}
@media (prefers-contrast: more){
  :root{--separator:#1c1c1e;--fill:#d1d1d6}
  .sidebar,.topbar,.tabbar,.group,section{border-color:#1c1c1e}
  button,.button-link{outline:1px solid currentColor}
}

/* Hide legacy dashboard contract */
.legacy-dashboard-contract,[hidden].legacy-dashboard-contract{display:none!important}

/* Wave C: foolproof UX */
.statement-basis-hint{
  margin:8px 0 0;padding:0 2px;color:var(--secondary-label);font-size:12px;line-height:1.45;
}
.basis-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-pill);background:var(--fill-secondary);color:var(--tertiary-label);font-size:11px;font-weight:600;vertical-align:middle;}
.page-lock-note,.dash-date-context{
  display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;
  margin:0 0 14px;padding:12px 14px;border-radius:var(--radius-inner);
  background:var(--fill-secondary);border:1px solid var(--hairline);color:var(--label);
}
.page-lock-note.sticky-note{position:sticky;top:52px;z-index:20;backdrop-filter:blur(12px)}
.page-lock-note strong,.dash-date-context strong{margin-right:4px}
.daily-close-banner-actions{display:flex;gap:10px;align-items:center;flex:0 0 auto}
.payment-steps{
  list-style:none;margin:0;padding:0;display:grid;gap:4px;min-width:132px;
}
.payment-steps li{
  display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--tertiary-label);
}
.payment-steps li span{
  width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;
  background:var(--fill);font-size:10px;font-weight:600;
}
.payment-steps li.done{color:var(--accent)}
.payment-steps li.done span{background:var(--accent-soft);color:var(--accent)}
.payment-steps li.current{color:var(--label)}
.payment-steps li.current span{background:var(--blue);color:#fff}
.reconcile-mismatch.is-focus,.reconcile-mismatch{background:var(--fill-secondary)}
.close-wizard-steps{
  list-style:none;margin:0;padding:10px 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
  border-bottom:1px solid var(--separator);background:rgba(248,248,250,.7);
}
.close-wizard-steps li{
  display:flex;align-items:center;justify-content:center;gap:6px;
  padding:8px;border-radius:999px;font-size:12px;font-weight:600;color:var(--tertiary-label);background:transparent;
}
.close-wizard-steps li span{
  width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;
  background:var(--fill);font-size:11px;
}
.close-wizard-steps li.done{color:var(--accent)}
.close-wizard-steps li.done span{background:var(--accent-soft);color:var(--accent)}
.close-wizard-steps li.current{color:var(--label);background:rgba(0,82,255,.1)}
.close-wizard-steps li.current span{background:var(--blue);color:#fff}
.close-wizard-panel{margin-bottom:8px}
/* Audit feed — dense timeline, one row style for link + plain */
.audit-page-head{margin:0 0 12px!important;padding-top:0}
.audit-page-head h1{font-size:clamp(1.45rem,2.4vw,1.85rem);line-height:1.15}
.audit-page-head p{margin-top:4px;font-size:13px}
.audit-feed{
  background:var(--grouped)!important;border:1px solid var(--separator)!important;
  border-radius:var(--radius-inner)!important;padding:0!important;margin:0!important;
  box-shadow:none!important;overflow:hidden;
}
.audit-day+.audit-day{border-top:8px solid var(--bg)}
.audit-day-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:8px 14px;background:rgba(0,82,255,.05);border-bottom:1px solid var(--separator);
}
.audit-day-head div{display:flex;align-items:baseline;gap:8px;min-width:0}
.audit-day-head strong{font-size:14px;font-weight:600;letter-spacing:-.01em}
.audit-day-head span,.audit-day-head small{color:var(--tertiary-label);font-size:12px;font-weight:600}
.audit-list{display:flex;flex-direction:column}
.audit-entry{
  display:grid;grid-template-columns:3.25rem minmax(0,1fr) auto;
  gap:2px 10px;align-items:start;
  margin:0;padding:9px 14px;border:0;border-radius:0;background:transparent;
  border-bottom:1px solid var(--separator);box-shadow:none;
  color:inherit;text-decoration:none;
}
.audit-entry:last-child{border-bottom:0}
.audit-entry time{
  grid-column:1;grid-row:1;padding-top:1px;
  color:var(--tertiary-label);font-size:12px;font-weight:600;
  font-variant-numeric:tabular-nums;letter-spacing:-.01em;
}
.audit-body{grid-column:2;min-width:0;display:grid;gap:2px}
.audit-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px;min-width:0}
.audit-actor{font-size:13px;font-weight:600;color:var(--label)}
.audit-action{font-size:13px;font-weight:600;color:var(--label)}
.audit-entry p{
  margin:0;color:var(--secondary-label);font-size:12px;line-height:1.35;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.audit-cta{
  grid-column:3;grid-row:1/-1;align-self:center;
  color:var(--tertiary-label);font-size:18px;font-weight:500;line-height:1;padding-left:4px;
}
.audit-entry.is-link{cursor:pointer}
.audit-entry.is-link:hover{background:rgba(0,82,255,.04)}
.audit-entry.is-link:active{background:rgba(0,82,255,.08);transform:none}
.audit-entry.is-link .audit-cta{color:var(--blue)}
.audit-empty{margin-top:8px}
@media(max-width:560px){
  .audit-entry{grid-template-columns:2.75rem minmax(0,1fr) auto;padding:8px 12px;gap:2px 8px}
  .audit-day-head{padding:8px 12px}
}

/* ===== Home + 记一笔 ===== */
.home-hero{
  background:transparent;
  border:0;border-radius:0;
  padding:0;margin:0 0 8px;
  display:grid;gap:20px;box-shadow:none;
}
.home-page-stack{display:grid;gap:var(--gap-page);align-items:stretch}
.home-page-stack > *{margin:0!important;width:100%;max-width:100%}
.home-ops{/* pad via .surface */}
.home-partner-balances{
  background:var(--bg-elevated)!important;border:1px solid var(--hairline)!important;
  border-radius:var(--radius-card)!important;padding:var(--pad-card)!important;
}
.home-todos,.home-activity{
  background:var(--bg-elevated)!important;border:1px solid var(--hairline)!important;
  border-radius:var(--radius-card)!important;padding:var(--pad-card)!important;
}
.home-ops .section-head{margin:0 0 10px}
.home-ops-metrics{padding:0}
.home-ops-structure{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;
}
.home-ops-structure article{
  background:var(--fill-secondary);border-radius:var(--radius-inner);padding:14px 16px;
}
.home-ops-structure h3{
  margin:0 0 10px;font-size:13px;font-weight:600;color:var(--secondary-label);
}
.home-ops-structure ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.home-ops-structure li{margin:0}
.home-structure-link{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  padding:6px 0;font-size:14px;font-weight:600;color:inherit;
  border-radius:8px;
}
.home-structure-link:hover{background:var(--accent-soft)}
.home-structure-link span{color:var(--secondary-label)}
.home-structure-link strong{
  font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--label);
}
.home-me-settle{
  display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;
  padding:16px 18px;border-radius:var(--radius-card);border:1px solid var(--separator);
  background:var(--grouped);color:inherit;text-decoration:none;
}
.home-me-settle.pay,.home-me-settle.recv{background:var(--bg-elevated)}
.home-me-settle strong{display:block;margin-top:2px;font-size:1.05rem}
.home-me-settle b{
  font-size:1.6rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums;
}
@media(max-width:720px){
  .home-ops-structure{grid-template-columns:1fr}
  .home-me-settle{grid-template-columns:1fr}
}
.home-entry-shortcut{
  display:flex;align-items:center;gap:12px;
  min-height:56px;padding:16px 32px;border-radius:var(--radius-pill);
  border:0;background:var(--primary);color:var(--on-primary);text-decoration:none;margin:0;
}
.home-entry-shortcut:hover{filter:none;background:var(--primary)}
.home-entry-shortcut:active{transform:none;background:var(--primary-active)}
.home-entry-shortcut strong{display:block;font-size:16px;font-weight:600;color:var(--on-primary)}
.home-entry-shortcut small{display:block;margin-top:1px;color:rgba(255,255,255,.78);font-size:12px;font-weight:400}
.home-entry-shortcut-mark{
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.2);color:#fff;font-size:1.2rem;font-weight:400;line-height:1;
}
.home-entry-shortcut-go{
  margin-left:auto;color:#fff;font-size:14px;font-weight:400;white-space:nowrap;
}

/* 一键记账页 */
.bookkeeping-page{display:grid;gap:10px}
.bookkeeping-page > .page-head{margin:0 0 2px!important;padding-top:0}
.bookkeeping-page > .page-head h1{font-size:clamp(1.4rem,2.2vw,1.75rem);line-height:1.15}
.bookkeeping-page > .page-head p{margin-top:4px;font-size:13px}
.bookkeeping-date-banner{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding:12px 16px;border-radius:var(--radius-card);
  background:var(--bg-elevated);
  border:1px solid var(--hairline);
}
.bookkeeping-date-banner > div:first-child{
  display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px;
}
.bookkeeping-date-label{
  display:inline;font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--secondary-label);text-transform:uppercase;
}
.bookkeeping-date-value{
  display:inline;font-size:1.25rem;line-height:1.15;font-weight:600;color:var(--label);letter-spacing:-.02em;
}
.bookkeeping-date-banner small{display:inline;margin:0;color:var(--secondary-label);font-size:12px}
.bookkeeping-date-nav{display:flex;align-items:center;gap:6px}
.bookkeeping-date-nav input[type=date]{min-height:36px;min-width:140px}
.bookkeeping-date-nav .button-link{min-width:36px;min-height:36px;padding:0;display:inline-grid;place-items:center}
.bookkeeping-money-row input[readonly]{background:var(--fill);color:var(--label);opacity:.95}
.bookkeeping-lock-bar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
}
.bookkeeping-lock-bar span{display:block;margin-top:2px;font-size:13px}
.bookkeeping-lock-actions{display:flex;gap:10px;align-items:center}
.bookkeeping-type.is-paused{
  opacity:.72;color:var(--tertiary-label);
  box-shadow:inset 0 0 0 1px var(--hairline);
}
.bookkeeping-type.is-paused.is-active{color:var(--secondary-label);background:var(--fill)}
.bookkeeping-lock-hint{
  margin:0 0 10px;padding:10px 12px;border-radius:var(--radius-inner);
  background:rgba(255,159,10,.12);border:1px solid rgba(255,159,10,.35);
  color:var(--label);font-size:13px;font-weight:600;
}
.bookkeeping-form.is-lock-paused [data-fields="product"]{opacity:.72}
.bookkeeping-form.is-lock-paused [data-fields="product"] input:disabled,
.bookkeeping-form.is-lock-paused [data-fields="product"] select:disabled{
  cursor:not-allowed;background:var(--fill);
}
.bookkeeping-form.is-lock-paused .bookkeeping-actions button:disabled{
  opacity:.55;cursor:not-allowed;filter:grayscale(.15);
}
.bookkeeping-layout{
  display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:12px;align-items:start;
}
.bookkeeping-panel,.bookkeeping-side{
  background:var(--grouped);border:1px solid var(--separator);border-radius:var(--radius-inner);
  padding:14px;
}
.bookkeeping-side-toggle{
  display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:0 0 10px;
  border-radius:var(--radius-inner);background:var(--fill);
}
.bookkeeping-side-btn{
  min-height:40px;border:0;border-radius:var(--radius-input);background:transparent;
  color:var(--secondary-label);font-size:15px;font-weight:600;box-shadow:none;cursor:pointer;
}
.bookkeeping-side-btn.is-active{
  background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.06);
}
.bookkeeping-type-row{
  display:flex;flex-wrap:wrap;gap:6px;padding:4px;border-radius:var(--radius-inner);background:var(--fill-secondary);
  margin:0 0 14px;
}
.bookkeeping-type-row[hidden]{display:none!important}
.bookkeeping-type{
  flex:1 1 120px;min-height:36px;padding:0 12px;border:0;border-radius:var(--radius-input);
  background:transparent;color:var(--secondary-label);font-size:14px;font-weight:600;
  box-shadow:none;cursor:pointer;
}
.bookkeeping-type.is-active{
  background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.06);
}
.bookkeeping-form{display:grid;gap:0}
.bookkeeping-money-row{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
}
.bookkeeping-calc-hint{
  margin:-6px 0 12px;color:var(--tertiary-label);font-size:12px;font-weight:600;
}
.bookkeeping-account{
  display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;align-items:baseline;
  margin:0 0 14px;padding:12px 14px;border-radius:var(--radius-inner);background:var(--fill-secondary);
  border:1px solid var(--separator);pointer-events:none;user-select:none;
}
.bookkeeping-account span{color:var(--tertiary-label);font-size:12px;font-weight:600}
.bookkeeping-account strong{font-size:15px}
.bookkeeping-account small{grid-column:2;color:var(--tertiary-label);font-size:11px;font-weight:600}
.bookkeeping-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.bookkeeping-actions button{flex:1 1 140px}
@media(max-width:560px){
  .bookkeeping-money-row{grid-template-columns:1fr}
}
.bookkeeping-recent{display:grid;gap:0}
.bookkeeping-recent-row{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 2px;border-bottom:1px solid var(--separator);
}
.bookkeeping-recent-row:last-child{border-bottom:0}
.bookkeeping-recent-row strong{display:block;font-size:14px}
.bookkeeping-recent-row small{display:block;margin-top:2px;color:var(--tertiary-label);font-size:12px}
.bookkeeping-recent-row b{font-variant-numeric:tabular-nums;white-space:nowrap}
.bookkeeping-recent-empty{
  padding:28px 8px;text-align:center;color:var(--secondary-label);
}
.bookkeeping-recent-empty p{margin:0 0 6px;font-weight:600}
.bookkeeping-more{display:inline-block;margin-top:12px;font-weight:600}
@media(max-width:960px){
  .bookkeeping-layout{grid-template-columns:1fr}
}
.home-activity .section-head{margin:0 0 10px}
.home-todo-list{display:grid;gap:10px}
.home-todo{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 16px;border-radius:var(--radius-inner);background:var(--fill-secondary);
}
.home-todo.warn,.home-todo.danger{background:var(--fill-secondary)}
.home-todo.danger strong{color:var(--money-down)}
.home-todo.warn strong{color:var(--label)}
.home-todo strong{display:block;font-size:14px}
.home-todo small{margin-top:2px}
.home-todo-empty{
  padding:18px 4px;color:var(--tertiary-label);display:grid;gap:8px;
}
.home-todo-empty a{font-weight:600}
.home-balance-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
}
.home-balance-card{
  display:grid;gap:4px;padding:16px;border-radius:var(--radius-card);
  background:var(--bg);border:1px solid var(--hairline);text-decoration:none;color:inherit;
  box-shadow:none;
}
.home-balance-card span{font-size:12px;font-weight:600;color:var(--secondary-label)}
.home-balance-card strong{font-size:13px;font-weight:600}
.home-balance-card b{font-size:1.15rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.home-balance-card.is-me{border-color:var(--accent-focus);background:var(--bg-elevated);box-shadow:inset 0 0 0 1px var(--accent-focus)}
.home-balance-card.pay strong,.home-balance-card.pay b{color:var(--money-move)}
.home-balance-card.recv strong,.home-balance-card.recv b{color:var(--money-move)}
@media(max-width:720px){
  .home-balance-grid{grid-template-columns:1fr}
}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.check-label{
  display:flex!important;align-items:center;gap:8px;grid-template-columns:none;
  font-size:14px;font-weight:600;color:var(--secondary-label);margin:0 0 14px;
}
.check-label input{width:auto;min-height:0;margin:0}

.entry-sheet[hidden]{display:none!important}
.entry-sheet{
  position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.32);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:flex;align-items:flex-end;justify-content:center;
  animation:scrim-in .28s var(--spring-out);
}
.entry-sheet-panel{
  width:min(560px,100%);max-height:88vh;overflow:auto;
  background:rgba(242,242,247,.98);
  border-radius:18px 18px 0 0;padding:10px 16px 28px;
  box-shadow:var(--shadow-sheet);
  animation:sheet-up .4s var(--spring);
}
.entry-sheet-handle{width:36px;height:5px;border-radius:999px;background:rgba(60,60,67,.18);margin:4px auto 12px}
.entry-sheet-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;
}
.entry-side-toggle{
  display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;margin:0 0 14px;
  background:var(--fill);border-radius:var(--radius-inner);
}
.entry-side-btn{
  min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--secondary-label);
  font-weight:600;box-shadow:none;
}
.entry-side-btn.is-active{background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.entry-subtype-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.entry-chip{
  min-height:34px;padding:0 14px;border:0;border-radius:999px;
  background:var(--fill);color:var(--secondary-label);font-size:13px;font-weight:600;box-shadow:none;
}
.entry-chip.is-active{background:var(--accent-soft);color:var(--accent2)}
.entry-form-actions{margin-top:8px}
.entry-form-actions button{width:100%}
.entry-toast{margin:0 0 10px;padding:10px 12px;border-radius:var(--radius-inner);font-size:13px;font-weight:600}
.entry-toast.is-ok{background:var(--accent-soft);color:var(--accent)}
.entry-toast.is-err{background:var(--fill-secondary);color:var(--money-down)}

@media(max-width:460px){
  .form-row{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  .entry-sheet,.entry-sheet-panel{animation:none}
}

/* ===== 对账单（明细为主） ===== */
.statement-page{display:grid;gap:22px}
.statement-team-metrics{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;
  padding:0;
}
.statement-team-metrics article{
  background:var(--grouped);border:1px solid var(--separator);border-radius:var(--radius-inner);
  padding:10px 12px;
}
.statement-team-metrics span{
  display:block;color:var(--secondary-label);font-size:12px;font-weight:600;
}
.statement-team-metrics strong{
  display:block;margin:4px 0 0;font-size:1.2rem;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}
.statement-team-metrics small{display:block;margin-top:2px;font-size:11px;color:var(--tertiary-label)}
.statement-page > .page-head{margin-bottom:0}
.statement-page > .page-head p{margin-top:4px}
.statement-ledger{
  background:var(--grouped);border:1px solid var(--hairline);border-radius:var(--radius-card);
  padding:16px 16px 10px;margin:0;
  box-shadow:none;
}
.statement-ledger .section-head{margin-bottom:14px}
.statement-filters{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  margin:0 0 16px;padding:12px;border-radius:var(--radius-inner);background:var(--fill-secondary);
}
.statement-filter-chips{
  display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px;
  max-width:100%;
}
.statement-filter-chips::-webkit-scrollbar{display:none}
.statement-chip{
  display:inline-flex;align-items:center;min-height:32px;padding:0 12px;flex:0 0 auto;
  border-radius:999px;background:transparent;color:var(--secondary-label);
  font-size:13px;font-weight:600;white-space:nowrap;
}
.statement-chip.is-active{background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.statement-filter-user select,.statement-filter-q input{
  min-height:36px;border:1px solid var(--separator);border-radius:10px;
  background:#fff;padding:0 12px;font:inherit;color:var(--label);
}
.statement-filter-q{flex:1 1 160px;min-width:140px}
.statement-filter-q input{width:100%}
.statement-lines{display:grid;gap:0;margin:0 -4px}
.statement-line{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 12px;border-bottom:1px solid rgba(60,60,67,.08);
}
.statement-line:last-child{border-bottom:0}
.statement-line.is-editable{
  cursor:pointer;border-radius:var(--radius-inner);transition:background var(--press) ease-out;
}
.statement-line.is-editable:hover,.statement-line.is-editable:focus-visible{
  background:rgba(0,82,255,.06);outline:none;
}
.statement-line-main{display:flex;align-items:flex-start;gap:10px;min-width:0}
.statement-line-main > div{min-width:0}
.statement-line-main strong{
  display:block;font-size:15px;letter-spacing:-.01em;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.statement-line-main small{margin-top:2px}
.statement-line-kind{
  flex:0 0 auto;min-width:52px;padding:4px 8px;border-radius:8px;
  background:var(--fill);color:var(--secondary-label);
  font-size:11px;font-weight:600;text-align:center;letter-spacing:.02em;
}
.statement-line.income .statement-line-kind{background:var(--accent-soft);color:var(--accent)}
.statement-line.expense .statement-line-kind{background:var(--fill-secondary);color:var(--money-down)}
.statement-line-meta{text-align:right;flex:0 0 auto}
.statement-line-meta b{
  display:block;font-size:1.05rem;letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
}
.statement-line-meta span{
  display:block;margin-top:2px;color:var(--tertiary-label);
  font-size:12px;font-weight:600;
}
.statement-line-meta time{
  font-variant-numeric:tabular-nums;font-weight:600;color:var(--secondary-label);
}
.statement-lines-empty{
  padding:28px 8px 32px;text-align:center;color:var(--tertiary-label);
  display:grid;gap:8px;
}
.statement-lines-empty a{font-weight:600}
.statement-settle{margin:0}
.statement-settle-cta{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 18px;border-radius:var(--radius-card);border:1px solid rgba(0,82,255,.16);
  background:var(--bg-elevated);
  color:var(--label);text-decoration:none;
}
.statement-settle-cta:hover{border-color:rgba(0,82,255,.28)}
.statement-settle-cta strong{display:block;font-size:15px;letter-spacing:-.02em}
.statement-settle-cta small{display:block;margin-top:4px;color:var(--secondary-label);font-size:12px;font-weight:600}
.statement-settle-cta>span{flex:0 0 auto;color:var(--blue);font-size:13px;font-weight:600;white-space:nowrap}
.statement-edit-dialog{
  border:0;border-radius:18px;padding:0;width:min(420px,92vw);
  box-shadow:var(--shadow-sheet);background:rgba(242,242,247,.98);
}
.statement-edit-dialog::backdrop{background:rgba(0,0,0,.32);backdrop-filter:blur(6px)}
.statement-edit-form{padding:18px 18px 20px;display:grid;gap:12px}
.statement-edit-form header h3{margin:0;font-size:1.15rem}
.statement-edit-form header p{margin:4px 0 0;color:var(--tertiary-label);font-size:13px}
.statement-edit-form label{
  display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--secondary-label);
}
.statement-edit-form input{
  min-height:40px;border:1px solid var(--separator);border-radius:10px;
  padding:0 12px;font:inherit;background:#fff;color:var(--label);
}
.statement-edit-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.statement-edit-actions button{flex:1 1 auto;min-width:88px}
.statement-edit-error{margin:0;color:#9b1c1c;font-size:13px;font-weight:600}
.visually-hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
@media(max-width:720px){
  .statement-team-metrics{grid-template-columns:1fr}
  .statement-filters{align-items:stretch}
  .statement-filter-user,.statement-filter-q{flex:1 1 100%}
  .statement-filter-user select{width:100%}
  .statement-line{align-items:flex-start;flex-direction:column;gap:8px}
  .statement-line-meta{text-align:left;width:100%;display:flex;justify-content:space-between;align-items:baseline}
}

.cardnet-product-meta{
  margin:0 0 14px;padding:10px 12px;border-radius:var(--radius-inner);background:var(--fill-secondary);
  color:var(--secondary-label);font-size:13px;font-weight:600;line-height:1.45;
}
/* ===== 商品库 ===== */
.catalog-page{display:grid;gap:22px}
.entry-date-eyebrow{
  display:inline-block;padding:3px 8px;border-radius:8px;
  background:rgba(0,82,255,.1);color:var(--blue);font-weight:600;
}
.catalog-create,.catalog-list-section{
  background:var(--grouped);border:1px solid var(--separator);border-radius:var(--radius-xl);
  padding:22px 24px;margin:0;
}
.catalog-create-form{
  display:grid;grid-template-columns:1.4fr 1fr auto;gap:12px;align-items:end;
  margin:0 0 14px;padding:12px;border-radius:var(--radius-inner);background:var(--fill-secondary);
}
.catalog-create-form label{
  display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--secondary-label);margin:0;
}
.catalog-create-form input{
  min-height:42px;border:1px solid var(--separator);border-radius:var(--radius-inner);
  padding:0 12px;font:inherit;background:#fff;color:var(--label);
}
.catalog-create-form button{min-height:42px;white-space:nowrap}
.catalog-list{display:grid;gap:0;margin-top:4px}
.catalog-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 4px;border-bottom:1px solid rgba(60,60,67,.08);
}
.catalog-row:last-child{border-bottom:0}
.catalog-row-main{min-width:0}
.catalog-row-main strong{display:block;font-size:15px;letter-spacing:-.01em}
.catalog-row-main small{display:block;margin-top:3px;color:var(--tertiary-label);font-size:13px}
.catalog-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.catalog-badge{
  display:inline-flex;align-items:center;min-height:22px;padding:0 8px;
  border-radius:8px;font-size:11px;font-weight:600;
}
.catalog-badge.in-catalog{background:var(--accent-soft);color:var(--accent)}
.catalog-badge.temp{background:var(--fill);color:var(--secondary-label)}
.catalog-empty{
  padding:22px 4px 8px;color:var(--tertiary-label);display:grid;gap:6px;
}
.catalog-empty small{font-size:13px}
@media(max-width:720px){
  .catalog-create-form{grid-template-columns:1fr}
  .catalog-create-form button{width:100%}
  .catalog-row{align-items:flex-start;flex-direction:column}
}


/* ===== Batch A/B density: settings + channel/inventory/resources/corrections ===== */
.settings-page-head{margin:0 0 10px!important;padding-top:0}
.settings-page-head h1{font-size:clamp(1.4rem,2.2vw,1.75rem);line-height:1.15}
.settings-page-head p{margin-top:4px;font-size:13px}
.settings-group{
  background:var(--grouped)!important;border:1px solid var(--separator)!important;
  border-radius:var(--radius-inner)!important;padding:0!important;margin:0!important;
  box-shadow:none!important;overflow:hidden;
}
.settings-block{padding:14px 16px;border-bottom:1px solid var(--separator)}
.settings-block:last-child{border-bottom:0}
.settings-block h2{margin:0 0 10px;font-size:1.05rem;letter-spacing:-.015em}
.settings-block label{margin:0 0 10px}
.settings-block button{margin-top:2px}
.settings-block-logout form{margin:0}
.form-tip{margin:8px 0 0;color:var(--tertiary-label);font-size:12px;line-height:1.4}
.settlement-empty,.audit-empty{
  padding:28px 16px;text-align:center;color:var(--tertiary-label);
  border:1px dashed var(--separator);border-radius:var(--radius-inner);background:var(--fill-secondary);
}

.history-filter-band{
  padding:10px 12px!important;margin:0 0 12px!important;border-radius:var(--radius-inner)!important;
}
.history-archive-detail{
  margin-top:8px;padding:10px 12px;border-radius:var(--radius-inner);background:var(--fill-secondary);
  display:grid;gap:10px;
}
.history-snapshot-breakdown,.history-snapshot-partners,
.history-snapshot-transfers,.history-snapshot-confirmations{
  display:grid;gap:6px;font-size:13px;
}
.history-snapshot-partners{display:flex;flex-wrap:wrap;gap:8px}
.history-snapshot-partners span,.history-snapshot-transfers article{
  padding:6px 10px;border-radius:10px;background:#fff;border:1px solid var(--separator);
  font-size:12px;
}

.daily-close-activity-card{
  margin-top:10px!important;padding:12px 14px!important;border-radius:var(--radius-inner)!important;
}

/* Cardnet */
.workflow-tabs{
  display:flex;flex-wrap:wrap;gap:4px;margin:0 0 12px;padding:4px;
  border-radius:var(--radius-inner);background:var(--fill);
}
.workflow-tabs a{
  flex:1 1 auto;min-height:34px;padding:6px 12px;border-radius:var(--radius-input);
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--secondary-label);font-size:13px;font-weight:600;text-decoration:none;
}
.workflow-tabs a.active{background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.06)}
.cardnet-product-meta{margin:0 0 10px;padding:8px 10px;border-radius:10px;font-size:12px}
.cardnet-products{display:grid;gap:8px}
.cardnet-product-row{
  display:grid;gap:10px;padding:12px;border-radius:var(--radius-inner);
  background:var(--grouped);border:1px solid var(--separator);
}
.cardnet-product-main{display:flex;align-items:center;gap:10px;min-width:0}
.cardnet-product-main img{
  width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--fill);flex:0 0 auto;
}
.cardnet-product-main strong{display:block;font-size:14px}
.cardnet-product-main small{display:block;margin-top:2px;color:var(--tertiary-label);font-size:11px}
.cardnet-product-data{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:6px 10px;
}
.cardnet-product-data span{
  display:grid;gap:1px;padding:6px 8px;border-radius:8px;background:var(--fill-secondary);
  color:var(--tertiary-label);font-size:11px;font-weight:600;
}
.cardnet-product-data strong{color:var(--label);font-size:13px;font-variant-numeric:tabular-nums}
.cardnet-product-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}
.cardnet-product-actions details{
  flex:1 1 220px;padding:8px 10px;border-radius:10px;background:var(--fill-secondary);border:1px solid var(--separator);
}
.cardnet-product-actions summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--blue)}
.cardnet-edit-form{display:grid;gap:8px;margin-top:8px}
.cardnet-edit-form label{margin:0;font-size:12px}
.sync-panel{padding:14px!important;margin:0 0 12px!important;border-radius:var(--radius-inner)!important}
.sync-meta{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:10px 0;
}
.sync-meta span{
  display:grid;gap:2px;padding:8px 10px;border-radius:10px;background:var(--fill-secondary);
  color:var(--tertiary-label);font-size:11px;font-weight:600;
}
.sync-meta strong{color:var(--label);font-size:13px}
.credential-box{margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--fill-secondary)}
.credential-box summary{cursor:pointer;font-weight:600;font-size:13px}
.cardnet-alerts,.cardnet-statistics{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:8px 0 12px;
}
.cardnet-alerts article,.cardnet-statistics article{
  padding:10px 12px;border-radius:var(--radius-inner);background:var(--fill-secondary);border:1px solid transparent;
}
.cardnet-alerts article strong,.cardnet-statistics article strong{
  display:block;font-size:1.05rem;font-variant-numeric:tabular-nums;
}
.cardnet-alerts article span,.cardnet-statistics article span,.cardnet-statistics article small{
  color:var(--secondary-label);font-size:12px;
}
.cardnet-products-section,.cardnet-tasks-section,.cardnet-payouts,.cardnet-overview{
  padding:14px!important;margin:0 0 12px!important;border-radius:var(--radius-inner)!important;
}
.cardnet-payouts .table-wrap th,.cardnet-payouts .table-wrap td,
.cardnet-tasks-section .table-wrap th,.cardnet-tasks-section .table-wrap td{padding:8px 10px;font-size:13px}

/* Telegram inventory */
#telegram-inventory-page > .page-head{margin:0 0 10px!important;padding-top:0}
.section-head-time{color:var(--tertiary-label);font-size:12px;font-weight:600}
.telegram-inventory-summary{
  margin:0 0 12px!important;gap:8px!important;padding:0!important;border:0!important;background:transparent!important;
}
.balance-grid.telegram-inventory-summary article,
.balance-grid article{
  padding:10px 12px;border-radius:var(--radius-inner);background:var(--grouped);border:1px solid var(--separator);
  display:grid;gap:2px;
}
.balance-grid article span{color:var(--secondary-label);font-size:12px;font-weight:600}
.balance-grid article strong{font-size:1.25rem;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.balance-grid article small{color:var(--tertiary-label);font-size:11px}
#telegram-inventory-page .table-wrap th,
#telegram-inventory-page .table-wrap td{padding:8px 10px;font-size:13px}
#telegram-inventory-page td small{display:block;margin-top:2px;color:var(--tertiary-label);font-size:11px}
@media(max-width:900px){
  #telegram-inventory-page .table-wrap td:nth-child(1) small,
  #telegram-inventory-page .table-wrap td:nth-child(2) small{display:none}
}

/* Resources */
.resource-entry-section{padding:14px!important;margin:0 0 12px!important;border-radius:var(--radius-inner)!important}
.resource-entry-section .section-head{margin:0 0 10px}
.resource-entry-section label{margin:0 0 10px}
.resource-search{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.resource-search input{min-height:34px;min-width:160px}
.resource-table th,.resource-table td{padding:8px 10px;font-size:13px}
.resource-long{
  max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.resource-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}
.resource-actions details{
  padding:6px 8px;border-radius:8px;background:var(--fill-secondary);border:1px solid var(--separator);
}
.resource-actions summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--blue)}
.resource-edit-form{display:grid;gap:8px;margin-top:8px;min-width:min(280px,70vw)}
.resource-edit-form label{margin:0;font-size:12px}

/* Corrections */
.daily-close-correction-head{margin:0 0 10px!important}
.correction-blockers,.correction-add-section{
  padding:12px 14px!important;margin:0 0 10px!important;border-radius:var(--radius-inner)!important;
}
.correction-add-form{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;align-items:end;
}
.correction-add-form label{margin:0;font-size:12px}
.correction-add-form .correction-reason,
.correction-add-form .correction-description{grid-column:1/-1}
.correction-add-form button{min-height:40px}
.correction-ledger-groups{display:grid;gap:8px}
.correction-ledger-groups details{
  border:1px solid var(--separator);border-radius:var(--radius-inner);background:var(--fill-secondary);overflow:hidden;
}
.correction-ledger-groups summary{
  cursor:pointer;padding:10px 12px;font-weight:600;font-size:13px;
  list-style:none;display:flex;justify-content:space-between;gap:8px;
}
.correction-ledger-groups summary::-webkit-details-marker{display:none}
.correction-ledger-groups summary span{color:var(--tertiary-label);font-weight:600}
.correction-record-list{display:grid;gap:6px;padding:0 10px 10px}
.correction-record-list article{
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
  padding:8px 10px;border-radius:10px;background:#fff;border:1px solid var(--separator);
}
.correction-record-list article strong{font-size:13px}
.correction-record-list article small{display:block;margin-top:2px;color:var(--tertiary-label);font-size:11px}
.correction-record-actions{display:flex;flex-wrap:wrap;gap:6px}
.correction-void-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.correction-void-form input{min-height:32px;min-width:120px}
.correction-history{display:grid;gap:6px}
.correction-history > div{
  padding:8px 10px;border-radius:10px;background:var(--fill-secondary);font-size:13px;
}
.correction-history span{display:block;margin-top:2px;color:var(--tertiary-label);font-size:12px}
.voided-record{opacity:.65}
.resource-list-section{padding:14px!important;margin:0 0 12px!important;border-radius:var(--radius-inner)!important}
.resource-list-section .section-head{margin:0 0 10px;align-items:center}


/* Quiet Ledger overlays — force over migrated leftovers */
.payment-reminder-toast[hidden]{display:none!important}
.payment-reminder-toast{
  position:fixed;z-index:50;right:24px;bottom:24px;left:auto;top:auto;
  width:min(360px,calc(100vw - 32px));
  background:transparent!important;padding:0!important;
  pointer-events:none;
}
.payment-reminder-toast .payment-reminder-dialog{
  pointer-events:auto;
  margin:0;border-radius:16px!important;box-shadow:0 16px 48px rgba(10,11,13,.18)!important;
  border:1px solid var(--hairline);background:var(--canvas);
  padding:16px;max-height:none;
}
.payment-reminder-head{background:transparent!important;margin-bottom:8px;padding:0}
.payment-reminder-icon{background:var(--accent-soft)!important;color:var(--accent)!important;font-weight:600!important;border-radius:12px!important}
body.payment-reminder-open{overflow:auto} /* toast must not lock scroll */
.entry-dialog{border:1px solid var(--hairline)!important;border-radius:var(--radius-card)!important;box-shadow:var(--shadow-sheet)!important}
.entry-dialog::backdrop{background:rgba(0,0,0,.32)!important}
.entry-dialog-head{background:var(--bg)!important}
.bug-public-share-page{background:var(--bg)!important}
.bug-metric-grid article{border-radius:var(--radius-card)!important;border:1px solid var(--hairline)!important;box-shadow:none!important}
.bug-metric-grid article:hover{transform:none!important;box-shadow:none!important}
.allocation-button{border-radius:var(--radius-pill)!important;font-weight:400!important;min-height:36px}
.cardnet-product-row{border-radius:var(--radius-card)!important;background:var(--bg-elevated)!important}

/* ===== Quiet Ledger: migrated modules (ex app.compat.css) ===== */
/* Layout/behavior only — colors remapped to Quiet Ledger tokens. */
/* Compat: BUG / dialogs / heavy modules from pre-v2 */
.compact-action{display:grid;grid-template-columns:minmax(90px,1fr) minmax(110px,1fr) auto;gap:6px;min-width:310px}.compact-action input,.compact-action select{height:32px;font-size:12px}.compact-action{min-width:270px}
.cardnet-product-metrics{grid-template-columns:repeat(4,1fr)}.cardnet-products{display:grid;gap:14px}.cardnet-product-row{border:1px solid var(--line);border-radius:var(--radius-inner);padding:16px;background:var(--bg-elevated)}.cardnet-product-main{display:flex;align-items:center;gap:12px}.cardnet-product-main img{width:54px;height:54px;border-radius:var(--radius-inner);object-fit:cover;background:var(--fill-secondary)}.cardnet-product-main strong,.cardnet-product-main small{display:block}.cardnet-product-main small{color:var(--muted);margin-top:6px}.cardnet-product-data{display:grid;grid-template-columns:repeat(7,minmax(85px,1fr));gap:8px;margin-top:14px}.cardnet-product-data span{color:var(--muted);font-size:12px;border-left:2px solid var(--line);padding-left:9px}.cardnet-product-data strong{display:block;color:var(--text);font-size:15px;margin-top:5px}.cardnet-product-actions{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.cardnet-product-actions details{min-width:190px;border:1px solid var(--line);border-radius:var(--radius-input);background:white}.cardnet-product-actions summary{cursor:pointer;padding:8px 11px;color:var(--accent);font-weight:600}@media(max-width:850px){.cardnet-product-data{grid-template-columns:repeat(3,1fr)}.cardnet-product-metrics{grid-template-columns:1fr 1fr}@media(max-width:520px){.cardnet-product-data{grid-template-columns:1fr 1fr}.cardnet-product-actions details{width:100%}
.allocation-button{display:inline-flex;align-items:center;justify-content:center;min-width:138px;height:36px;padding:0 14px;border-radius:var(--radius-input);background:var(--accent);color:#fff!important;text-decoration:none;font-size:13px;font-weight:600}.allocation-button:hover{background:var(--accent2)}
.allocation-destination-meta{grid-template-columns:2fr 1fr 1fr}.conditional-fields{display:grid;gap:14px;padding:15px;border:1px solid var(--line);border-radius:var(--radius-inner);background:var(--fill-secondary)}.conditional-fields[hidden]{display:none}@media(max-width:600px){.allocation-destination-meta{grid-template-columns:1fr}
.compact-allocation-button{min-width:112px;height:32px;font-size:12px}.telegram-inventory-summary{margin-bottom:18px}.telegram-inventory-summary article{background:var(--fill-secondary)}.telegram-inventory-summary small{display:block;color:var(--muted);font-size:12px}.telegram-inventory-summary strong{color:var(--accent2)}




.correction-form{min-width:300px;padding:13px;border-top:1px solid var(--line)}.correction-payment{display:grid;grid-template-columns:1fr 1fr;gap:9px}.correction-payment[hidden]{display:none}.correction-form{min-width:260px}.correction-payment{grid-template-columns:1fr}
.payment-reminder-open{overflow:hidden}.payment-reminder-overlay[hidden]{display:none}.payment-reminder-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.46)}.payment-reminder-dialog{width:min(470px,100%);padding:0;margin:0;border:0;border-radius:var(--radius-inner);overflow:hidden;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.24);animation:payment-reminder-in .2s ease-out}.payment-reminder-dialog:hover{border-color:transparent}.payment-reminder-head{display:flex;align-items:flex-start;gap:13px;padding:21px 23px 18px;border-bottom:1px solid var(--line);background:var(--bg)}.payment-reminder-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:var(--radius-inner);background:var(--accent-soft);color:var(--accent2);font-size:21px;font-weight:600}.payment-reminder-head h2{margin:0 0 5px;font-size:19px}.payment-reminder-head p{margin:0;color:var(--muted);font-size:12px}.payment-reminder-body{padding:19px 23px}.payment-reminder-message{margin:0 0 16px;padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:var(--fill-secondary);color:var(--secondary-label);line-height:1.65}.payment-reminder-message strong{color:var(--accent2)}.payment-reminder-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:19px}.payment-reminder-facts>div{padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-inner)}.payment-reminder-facts span{display:block;margin-bottom:5px;color:var(--muted);font-size:11px}.payment-reminder-facts strong{font-size:15px;overflow-wrap:anywhere}.payment-reminder-actions{display:flex;justify-content:flex-end;gap:9px}.payment-reminder-actions button{min-width:108px}.payment-reminder-foot{margin:0;padding:12px 23px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.payment-reminder-actions button:disabled{opacity:.6}@keyframes payment-reminder-in{from{opacity:0;transform:translateY(10px) scale(.98)}@media(max-width:560px){.payment-reminder-overlay{align-items:flex-end;padding:10px}.payment-reminder-dialog{border-radius:var(--radius-inner)}.payment-reminder-head{padding:18px}.payment-reminder-body{padding:17px}.payment-reminder-actions button{flex:1;min-width:0}.payment-reminder-foot{padding:11px 17px}
.intake-mode-field{border:0;padding:0;margin:0 0 16px}.intake-mode-field legend{font-weight:600;margin-bottom:8px}.intake-mode-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.intake-mode-options label{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-radius:var(--radius-inner);padding:12px;cursor:pointer;background:#fff}.intake-mode-options label:has(input:checked){border-color:var(--accent);background:var(--bg)}.intake-mode-options input{width:18px;height:18px;margin:2px 0 0}.intake-mode-options strong,.intake-mode-options small{display:block}.intake-mode-options small{color:var(--muted);margin-top:4px;line-height:1.45}@media(max-width:640px){.intake-mode-options{grid-template-columns:1fr}

body:has(.entry-dialog[open]){overflow:hidden}.entry-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100vh - 36px);padding:0;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;color:var(--text);box-shadow:0 24px 70px rgba(0,0,0,.24)}.entry-dialog[open]{animation:entry-dialog-in .18s ease-out}.entry-dialog::backdrop{background:rgba(0,0,0,.5);backdrop-filter:blur(2px)}.entry-dialog-small{width:min(500px,calc(100vw - 28px))}.entry-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line);background:var(--bg)}.entry-dialog-head h2{margin:0 0 4px;font-size:18px}.entry-dialog-head p{margin:0;color:var(--muted);font-size:12px}.entry-dialog-form{padding:20px}.entry-dialog .intake-mode-field{margin:0;padding:15px;border:1px solid var(--line)}.entry-dialog-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:9px;margin:4px -20px -20px;padding:14px 20px;border-top:1px solid var(--line);background:#fff}.entry-dialog-actions button{min-width:104px}.dialog-error{padding:11px 13px;border:1px solid rgba(255,59,48,.35);border-radius:var(--radius-inner);background:rgba(255,59,48,.1);color:var(--danger);line-height:1.5}@keyframes entry-dialog-in{from{opacity:0;transform:translateY(10px) scale(.985)}.entry-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.entry-dialog-head{padding:16px}.entry-dialog-form{padding:16px}.entry-dialog-actions{margin:4px -16px -16px;padding:13px 16px}.entry-dialog-actions button{flex:1;min-width:0}.compact-action{grid-template-columns:minmax(120px,1fr) auto;min-width:230px}.compact-action input{grid-column:1/2}.income-void summary{color:var(--danger);font-size:12px;cursor:pointer}.income-void form{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:7px;min-width:250px;margin-top:7px}.income-void input{min-width:0}
.income-date-field{display:grid;gap:8px}.income-date-label{font-size:13px;font-weight:600}.income-date-options{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff}.income-date-options label{position:relative;margin:0;cursor:pointer}.income-date-options label+label{border-left:1px solid var(--line)}.income-date-options input{position:absolute;width:1px;height:1px;opacity:0;clip-path:inset(50%)}.income-date-options span{display:grid;place-items:center;gap:3px;min-height:58px;padding:8px 10px;text-align:center;transition:background .16s ease,color .16s ease}.income-date-options strong{font-size:14px}.income-date-options small{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.income-date-options label:hover span{background:var(--bg)}.income-date-options label:has(input:checked) span{background:var(--accent);color:#fff}.income-date-options label:has(input:checked) small{color:rgba(255,255,255,.82)}.income-date-options label:focus-within{outline:3px solid rgba(0,82,255,.18);outline-offset:-3px}

/* 今日经营悬浮明细 */
.metric-detail-wrap:hover,.metric-detail-wrap:focus-within{z-index:40}.metric-detail-wrap{position:relative;z-index:20;outline:none}.metric-detail-trigger{display:inline-flex!important;align-items:center;justify-content:center;min-height:26px;padding:0 9px;border:1px solid var(--hairline);border-radius:4px;background:#fff;color:var(--accent2)!important;font-size:11px!important;font-weight:600;line-height:1;white-space:nowrap;cursor:default}.metric-detail-wrap:focus-visible .metric-detail-trigger{outline:3px solid rgba(0,82,255,.18);outline-offset:2px}.metric-detail-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:30;width:min(350px,calc(100vw - 56px));padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;color:var(--text);box-shadow:0 16px 36px rgba(0,0,0,.18);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease,visibility .16s}.metric-detail-wrap:hover .metric-detail-popover,.metric-detail-wrap:focus-within .metric-detail-popover{opacity:1;visibility:visible;transform:none}.metric-detail-popover strong{display:block;margin:0;font-size:14px}.metric-detail-head,.metric-detail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.metric-detail-head{padding-bottom:10px;border-bottom:1px solid var(--line)}.metric-detail-head span{color:var(--accent2);font-size:12px;font-weight:600;white-space:nowrap}.metric-detail-row{padding:10px 0;border-bottom:1px solid var(--bg)}.metric-detail-row>div{min-width:0}.metric-detail-row>strong{flex:0 0 auto;font-size:15px;white-space:nowrap}.metric-detail-row small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.55;white-space:normal}.metric-detail-note{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.5}@media(max-width:800px){.metric-detail-popover{width:min(350px,calc(100vw - 52px))}.metric-detail-wrap:hover .metric-detail-popover,.metric-detail-wrap:focus-within .metric-detail-popover{pointer-events:auto}.metric-detail-popover{max-height:min(520px,70vh);overflow-y:auto;overscroll-behavior:contain}.metric-detail-popover-wide{width:min(410px,calc(100vw - 56px))}.metric-detail-section-title{margin:12px -14px 0;padding:9px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg);color:var(--accent2);font-size:11px;font-weight:600}.metric-detail-section-title+.metric-detail-row{padding-top:10px}.metric-detail-popover-wide{width:min(410px,calc(100vw - 52px))}.daily-close-correction-head{align-items:center}.correction-blockers{border-left:3px solid var(--gold)}.correction-blockers>p{margin:7px 0;color:var(--warning)}.correction-add-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px}.correction-add-form .correction-reason{grid-column:span 2}.correction-add-form button{align-self:end}.correction-record-list{display:grid;gap:7px}.correction-record-list article{display:flex;align-items:center;gap:14px;min-width:0;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-input);background:var(--bg-elevated)}.correction-record-list article>div:first-child{min-width:0;margin-right:auto}.correction-record-list strong,.correction-record-list small{display:block}.correction-record-list small{margin-top:4px;color:var(--muted);font-size:11px}.correction-record-actions{display:flex;align-items:center;gap:7px}.correction-record-actions form{display:block}.correction-ledger-groups{display:grid;gap:10px}.correction-ledger-groups details{border:1px solid var(--line);border-radius:var(--radius-inner);overflow:hidden}.correction-ledger-groups summary{display:flex;justify-content:space-between;padding:12px 14px;background:var(--bg);color:var(--accent2);font-weight:600;cursor:pointer}.correction-ledger-groups details>.correction-record-list{padding:10px}.correction-void-form{display:grid;grid-template-columns:minmax(100px,160px) auto;gap:6px}.correction-void-form input,.correction-void-form button{height:31px;font-size:11px}.correction-history{display:grid;gap:0}.correction-history>div{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}.correction-history span{color:var(--muted);font-size:11px;text-align:right}.correction-add-form{grid-template-columns:1fr 1fr}.correction-add-form .correction-reason{grid-column:span 2}.correction-record-list article{align-items:flex-start;flex-wrap:wrap}.correction-record-actions{width:100%}.correction-history>div{display:block}.correction-history span{display:block;margin-top:4px;text-align:left}.correction-add-form{grid-template-columns:1fr}.correction-add-form .correction-reason{grid-column:auto}.correction-void-form{width:100%;grid-template-columns:1fr auto}.settled-history-row:has(.history-snapshot-wrap:hover),.settled-history-row:has(.history-snapshot-wrap:focus-within){z-index:90;border-color:var(--hairline)}.history-snapshot-wrap{position:relative;outline:none}.history-snapshot-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:100;width:min(700px,calc(100vw - 52px));max-height:min(650px,75vh);overflow-y:auto;padding:0;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;box-shadow:0 18px 42px rgba(0,0,0,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease,visibility .16s,transform .16s}.history-snapshot-wrap:hover .history-snapshot-popover,.history-snapshot-wrap:focus-within .history-snapshot-popover{opacity:1;visibility:visible;pointer-events:auto;transform:none}.history-snapshot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 15px;border-bottom:1px solid var(--line);background:var(--bg)}.history-snapshot-head strong,.history-snapshot-head small{display:block}.history-snapshot-head small{margin-top:4px;color:var(--muted);font-size:10px}.history-snapshot-head>span{color:var(--accent2);font-size:12px;font-weight:600;white-space:nowrap}.history-snapshot-breakdown{padding:10px 15px;border-bottom:1px solid var(--line)}.history-snapshot-breakdown p{margin:4px 0;color:var(--muted);font-size:11px}.history-snapshot-partners{padding:0 15px}.history-snapshot-partners>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:11px 0;border-bottom:1px solid var(--hairline)}.history-snapshot-partners strong,.history-snapshot-partners small{display:block}.history-snapshot-partners small{margin-top:4px;color:var(--muted);font-size:10px}.history-snapshot-partners>div>span{font-size:12px;font-weight:600;white-space:nowrap}.history-snapshot-partners p{grid-column:1/3;margin:0;color:var(--secondary-label);font-size:10px;line-height:1.55}.history-snapshot-transfers{padding:11px 15px;background:var(--fill-secondary)}.history-snapshot-transfers>strong{display:block;margin-bottom:6px}.history-snapshot-transfers p{display:flex;justify-content:space-between;gap:12px;margin:5px 0;color:var(--muted);font-size:11px}.history-snapshot-transfers b{color:var(--accent2)}.history-snapshot-confirmations{display:flex;gap:8px;flex-wrap:wrap;padding:10px 15px;border-top:1px solid var(--line)}.history-snapshot-confirmations span{font-size:10px;color:var(--muted)}.history-snapshot-wrap{grid-column:1/3}.history-snapshot-wrap>button{width:100%}.history-snapshot-popover{position:fixed;left:10px;right:10px;top:76px;width:auto;max-height:calc(100vh - 92px)}.history-snapshot-partners>div{grid-template-columns:1fr}.history-snapshot-partners p{grid-column:auto}
.daily-close-explain-popover,.history-snapshot-partners p{white-space:pre-line}

/* 进销页面统一明细区 */
.unified-detail-workspace{min-width:0;overflow:visible}.unified-detail-workspace>.section-head{margin-bottom:12px}.detail-tabs{display:flex;align-items:center;gap:5px;min-width:0;margin:0 0 14px;padding:5px;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:var(--bg);scrollbar-width:thin}.detail-tabs button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;min-width:142px;height:38px;padding:0 13px;border:1px solid transparent;border-radius:var(--radius-input);background:transparent;color:var(--secondary-label);font-size:12px;font-weight:600;white-space:nowrap;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.detail-tabs button:hover{border-color:var(--hairline);background:var(--fill-secondary);color:var(--accent2)}.detail-tabs button[aria-selected="true"]{border-color:var(--hairline);background:#fff;color:var(--accent2);box-shadow:0 1px 3px rgba(0,0,0,.09)}.detail-tabs button:focus-visible{outline:3px solid rgba(0,82,255,.16);outline-offset:1px}.detail-tab-count,.detail-tab-alert{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:21px;padding:0 6px;border-radius:4px;font-size:10px;font-weight:600;line-height:1}.detail-tab-count{background:var(--fill);color:var(--secondary-label)}.detail-tabs button[aria-selected="true"] .detail-tab-count{background:var(--accent-soft);color:var(--accent)}.detail-tab-alert{background:rgba(255,159,10,.16);color:var(--warning)}.detail-tab-panel{min-width:0}.detail-tab-panel[hidden]{display:none}.daily-close-locked .detail-tabs button[data-readonly-navigation]:disabled{opacity:1;cursor:pointer}.daily-close-locked .detail-tabs button[data-readonly-navigation]:disabled:hover{background:var(--fill-secondary)}
@media(max-width:600px){.unified-detail-workspace{padding:16px 12px}.unified-detail-workspace>.section-head{display:block;padding:0 3px}.unified-detail-workspace>.section-head>span{display:block;margin-top:6px}.detail-tabs{margin-left:-1px;margin-right:-1px}.detail-tabs button{min-width:max-content;padding:0 11px}

/* BUG team ledger */
main:has(.bug-page-head){width:calc(100% - 24px);max-width:1880px}.bug-page-head{align-items:center}.bug-metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0;border:0;background:transparent}.bug-metric-grid article{min-width:0;padding:18px;border:1px solid var(--line);border-top:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.bug-metric-grid article:hover{border-color:var(--hairline);box-shadow:0 8px 20px rgba(0,0,0,.09)}.bug-metric-grid span,.bug-metric-grid small{display:block;color:var(--muted)}.bug-metric-grid strong{display:block;margin:8px 0 6px;font-size:26px;font-variant-numeric:tabular-nums}.bug-settlement-section{padding:0;border:0;background:transparent}.bug-settlement-section>.section-head{margin:0 0 10px;padding:0 2px}.bug-member-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.bug-member-strip article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px 12px;padding:15px 16px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;transition:transform .16s ease,border-color .16s ease}.bug-member-strip article:hover{border-color:var(--hairline)}.bug-member-strip article>div{display:flex;align-items:center;gap:8px}.bug-member-strip article>div span{padding:3px 6px;border-radius:4px;background:var(--fill-secondary);color:var(--tertiary-label);font-size:10px}.bug-member-strip article>b{font-size:20px;text-align:right}.bug-member-strip article>small{grid-column:1/3;color:var(--muted);font-size:11px}.bug-transfer-list{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;overflow:visible}.bug-transfer-heading,.bug-transfer-row{display:flex;align-items:center;gap:12px;padding:11px 14px}.bug-transfer-heading{justify-content:space-between;border-bottom:1px solid var(--line);background:#f6f8f9}.bug-transfer-heading span{color:var(--muted);font-size:11px}.bug-transfer-row{position:relative;border-bottom:1px solid var(--hairline)}.bug-transfer-row:last-child{border-bottom:0}.bug-transfer-row>div:first-child{display:flex;align-items:center;gap:8px;min-width:0;margin-right:auto}.bug-transfer-row>div:first-child span{color:var(--muted);font-size:11px}.bug-transfer-row>strong{color:var(--accent2);font-size:17px}.bug-transfer-row .metric-detail-wrap{flex:0 0 auto}.bug-transfer-row .metric-detail-popover{right:0;left:auto;line-height:1.65}.bug-record-section{overflow:visible}.bug-filter-form{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) minmax(190px,1.5fr) auto auto;align-items:end;gap:8px;margin-bottom:14px}.bug-filter-form input,.bug-filter-form select,.bug-filter-form button,.bug-filter-form .button-link{height:36px;font-size:12px}.bug-filter-form .button-link{justify-content:center;padding:0 12px}.bug-record-table{min-width:1120px}.bug-record-table th,.bug-record-table td{vertical-align:top}.bug-record-table tbody>tr:not(.bug-detail-row){transition:background .14s ease}.bug-record-table tbody>tr:not(.bug-detail-row):hover{background:var(--bg)}.bug-source-preview{display:block;max-width:245px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bug-row-actions{display:flex;align-items:flex-start;gap:6px}.bug-row-actions form{display:block}.bug-row-actions details{position:relative}.bug-row-actions details>summary{cursor:pointer;color:var(--accent);font-size:12px;font-weight:600;list-style:none}.bug-row-actions details>summary::-webkit-details-marker{display:none}.bug-row-actions details>form{position:absolute;right:0;z-index:40;width:230px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;box-shadow:0 12px 28px rgba(0,0,0,.15)}.bug-row-actions details input{height:32px;font-size:12px}.bug-detail-row td{padding:0;background:var(--fill-secondary);white-space:normal}.bug-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.bug-detail-grid>div{min-width:0;padding:14px;background:var(--bg-elevated)}.bug-detail-grid>div>span{display:block;margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:600}.bug-detail-grid pre{max-height:190px;margin:0;overflow:auto;color:var(--text);font:12px/1.6 "Microsoft YaHei",system-ui,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.bug-detail-grid p{margin:5px 0;color:var(--secondary-label);font-size:12px;line-height:1.55}.bug-detail-grid p strong{float:right}.bug-detail-grid p small{margin-top:2px}.bug-entry-dialog{width:min(900px,calc(100vw - 28px))}.bug-record-form{display:grid;gap:14px}.bug-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.bug-form-grid-four{grid-template-columns:repeat(4,1fr)}.bug-form-grid label{min-width:0}.bug-form-grid input[data-bug-custom-input]{margin-top:3px}.bug-money-fields,.bug-expense-fields{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-inner);background:var(--fill-secondary)}.bug-money-fields legend,.bug-expense-fields legend{padding:0 6px;color:var(--accent2);font-size:13px;font-weight:600}.bug-expense-row{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(110px,.7fr) minmax(120px,.7fr) 34px;align-items:end;gap:8px;margin-bottom:8px}.bug-expense-row .icon-button{width:34px;height:40px;padding:0;font-size:20px}.bug-add-expense{justify-self:start}.bug-dialog-error{margin:14px 20px 0}
@media(max-width:1050px){.bug-filter-form{grid-template-columns:repeat(4,1fr)}.bug-filter-query{grid-column:span 2}.bug-form-grid-four{grid-template-columns:repeat(2,1fr)}
@media(max-width:760px){.bug-metric-grid,.bug-member-strip{grid-template-columns:1fr}.bug-filter-form{grid-template-columns:1fr 1fr}.bug-filter-query{grid-column:1/3}.bug-detail-grid{grid-template-columns:1fr}.bug-form-grid{grid-template-columns:1fr 1fr}.bug-expense-row{grid-template-columns:1fr 1fr}.bug-expense-row .icon-button{grid-column:2;justify-self:end}.bug-transfer-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.bug-page-head{display:block}.bug-page-head .page-head-actions{margin-top:12px}
@media(max-width:480px){.bug-metric-grid article{padding:15px}.bug-metric-grid strong{font-size:23px}.bug-filter-form,.bug-form-grid,.bug-form-grid-four,.bug-expense-row{grid-template-columns:1fr}.bug-filter-query{grid-column:auto}.bug-filter-form button,.bug-filter-form .button-link{width:100%}.bug-member-strip article{padding:13px}.bug-transfer-row{grid-template-columns:1fr auto}.bug-transfer-row .metric-detail-wrap{grid-column:2;grid-row:1/3}.bug-transfer-row>strong{grid-column:1}.bug-expense-row .icon-button{grid-column:auto;justify-self:end}.bug-dialog-error{margin:12px 16px 0}
.bug-record-section>.table-wrap{overflow:visible}.bug-material-table{min-width:860px}.bug-material-table th:nth-child(1){width:105px}.bug-material-table th:nth-child(2){width:27%}.bug-material-table th:nth-child(3){width:70px}.bug-material-table th:nth-child(4){width:38%}.bug-material-table th:nth-child(5){width:76px}.bug-material-table th:nth-child(6){width:190px}.bug-material-preview,.bug-receipt-readonly{display:-webkit-box;max-width:360px;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-height:1.55;white-space:pre-line}.bug-receipt-cell{position:relative;overflow:visible}.bug-receipt-menu{position:relative}.bug-receipt-menu>summary{list-style:none}.bug-receipt-menu>summary::-webkit-details-marker{display:none}.bug-receipt-trigger{display:block;max-width:300px;padding:7px 9px;border:1px dashed var(--warning);border-radius:var(--radius-input);background:rgba(255,159,10,.1);color:var(--warning);cursor:pointer;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.bug-receipt-trigger:hover,.bug-receipt-menu:focus-within>.bug-receipt-trigger{border-color:var(--warning);background:rgba(255,159,10,.14);box-shadow:0 3px 10px rgba(0,0,0,.09)}.bug-receipt-trigger.has-receipt{border-style:solid;border-color:var(--hairline);background:#f1f8f5;color:var(--accent)}.bug-receipt-popover{position:absolute;top:calc(100% + 7px);left:0;z-index:80;display:none;width:min(380px,calc(100vw - 32px));gap:10px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;box-shadow:0 16px 38px rgba(0,0,0,.18)}.bug-receipt-menu[open]>.bug-receipt-popover,.bug-receipt-menu:focus-within>.bug-receipt-popover,.bug-receipt-menu:not([open]):hover>.bug-receipt-popover{display:grid}.bug-receipt-popover label{font-size:11px}.bug-receipt-popover textarea{min-height:108px;resize:vertical}.bug-receipt-popover button{justify-self:end}.bug-action-menu>form textarea{min-height:105px;margin-bottom:8px;resize:vertical}.bug-action-menu>form button{float:right}.bug-material-dialog{width:min(580px,calc(100vw - 28px))}.bug-material-form{display:grid;gap:15px}.bug-material-form textarea{min-height:210px;resize:vertical}.bug-material-table .bug-detail-grid{grid-template-columns:1fr 1fr}.bug-material-table .bug-detail-grid>div:nth-child(4){grid-column:1/3}.bug-material-table .status{white-space:nowrap}
@media(max-width:900px){.bug-record-section>.table-wrap{overflow-x:auto}.bug-material-table{min-width:800px}
@media(max-width:760px){.bug-record-section>.table-wrap{overflow:visible}.bug-material-table{display:block;min-width:0}.bug-material-table thead{display:none}.bug-material-table tbody{display:grid;gap:10px}.bug-material-table .bug-material-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff}.bug-material-table .bug-material-row>td{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:start;gap:8px;padding:8px 0;border:0;white-space:normal}.bug-material-table .bug-material-row>td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:600}.bug-material-table .bug-material-row>td:nth-child(1),.bug-material-table .bug-material-row>td:nth-child(2),.bug-material-table .bug-material-row>td:nth-child(4),.bug-material-table .bug-material-row>td:nth-child(6){grid-column:1/3}.bug-material-table .bug-material-row>td:nth-child(3),.bug-material-table .bug-material-row>td:nth-child(5){grid-template-columns:62px 1fr}.bug-material-preview,.bug-receipt-readonly{max-width:none}.bug-receipt-trigger{max-width:none}.bug-row-actions{flex-wrap:wrap}.bug-detail-row{display:block;border:1px solid var(--line);border-radius:var(--radius-inner);overflow:hidden}.bug-detail-row[hidden]{display:none}.bug-detail-row>td{display:block}.bug-receipt-menu[open]::before{content:"";position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.28)}.bug-receipt-menu:not([open]):hover>.bug-receipt-popover{display:none}.bug-receipt-menu[open]>.bug-receipt-popover,.bug-receipt-menu:focus-within>.bug-receipt-popover{position:fixed;inset:auto 10px 10px;z-index:90;display:grid;width:auto;max-height:calc(100vh - 40px);overflow:auto;padding:16px}.bug-receipt-popover button{width:100%}.bug-material-table .bug-detail-grid{grid-template-columns:1fr}.bug-material-table .bug-detail-grid>div:nth-child(4){grid-column:auto}

/* BUG 团队批量资料 */
.bug-copy-content{position:relative;display:block;width:100%;max-width:none;min-height:52px;padding:7px 9px;border:1px solid transparent;border-radius:var(--radius-input);background:transparent;color:inherit;font:inherit;line-height:1.55;text-align:left;overflow:hidden;cursor:pointer;box-shadow:none;isolation:isolate}.bug-copy-content:hover{color:inherit;background:transparent;box-shadow:none;transform:none}.bug-copy-text{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line;-webkit-box-orient:vertical;-webkit-line-clamp:3}.bug-copy-surface::after{content:attr(data-hover-hint);position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:inherit;background:rgba(0,0,0,.78);color:#fff;font-size:12px;font-weight:600;line-height:1.4;text-align:center;opacity:0;pointer-events:none;transition:opacity .14s ease}.bug-copy-surface:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bug-copy-surface:focus-visible::after{opacity:1}@media(hover:hover){.bug-copy-surface:hover::after{opacity:1}.bug-receipt-complete{display:flex;align-items:stretch;gap:6px;min-width:0}.bug-receipt-complete>.bug-receipt-trigger{display:block;flex:1;min-width:0;max-width:none;padding:7px 9px;border:1px solid var(--hairline);background:#f1f8f5;color:var(--accent);overflow:hidden;text-overflow:clip;white-space:normal}.bug-receipt-edit-menu{flex:0 0 auto}.bug-receipt-edit-button{padding:6px 8px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer;list-style:none}.bug-receipt-edit-button::-webkit-details-marker{display:none}.bug-receipt-edit-menu>.bug-receipt-popover{right:0;left:auto}.bug-receipt-edit-menu:not([open]):hover>.bug-receipt-popover{display:none}.bug-receipt-edit-menu[open]>.bug-receipt-popover{display:grid}.bug-material-dialog{width:min(920px,calc(100vw - 28px))}.bug-material-form{display:grid;gap:13px}.bug-material-source textarea{min-height:170px;resize:vertical;font-family:Consolas,"Microsoft YaHei",monospace;line-height:1.55}.bug-batch-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.bug-batch-stats span{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-inner);background:var(--bg);color:var(--muted);font-size:12px;text-align:center}.bug-batch-stats strong{margin-left:5px;color:var(--text);font-size:17px;font-variant-numeric:tabular-nums}.bug-batch-status{padding:10px 12px;border-left:3px solid var(--hairline);background:var(--bg);color:var(--muted);font-size:12px;line-height:1.5}.bug-batch-status.is-valid{border-left-color:var(--accent);background:var(--accent-soft);color:var(--accent2)}.bug-batch-status.has-error{border-left-color:var(--danger);background:rgba(255,59,48,.08);color:var(--danger)}.bug-material-preview-list{display:grid;gap:9px;max-height:380px;padding-right:3px;overflow-y:auto;overscroll-behavior:contain}.bug-preview-empty{margin:0;padding:20px;border:1px dashed var(--line);border-radius:var(--radius-inner);color:var(--muted);font-size:12px;text-align:center}.bug-material-preview-item{padding:11px 12px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-inner);background:var(--bg-elevated)}.bug-material-preview-item.has-error{border-left-color:var(--danger);background:rgba(255,59,48,.04)}.bug-preview-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}.bug-preview-head>strong{font-size:13px}.bug-preview-head>span{padding:3px 6px;border-radius:4px;background:var(--accent-soft);color:var(--accent2);font-size:10px;font-weight:600}.bug-material-preview-item.has-error .bug-preview-head>span{background:rgba(255,59,48,.1);color:var(--danger)}.bug-preview-head>div{display:flex;gap:6px;margin-left:auto}.bug-preview-head button{height:27px;padding:0 8px;font-size:10px}.bug-preview-delete{border:1px solid rgba(255,59,48,.35);background:#fff;color:var(--danger)}.bug-preview-lines{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(220px,1.4fr);gap:8px}.bug-preview-lines span{min-width:0;padding:7px 8px;border:1px solid var(--hairline);border-radius:4px;background:#fff;font:11px/1.45 Consolas,"Microsoft YaHei",monospace;overflow-wrap:anywhere}.bug-preview-errors{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.bug-preview-errors span{padding:3px 6px;border-radius:4px;background:rgba(255,59,48,.1);color:var(--danger);font-size:10px}.bug-preview-editor{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.bug-preview-editor[hidden]{display:none}.bug-preview-editor label{font-size:10px}.bug-preview-editor input{height:34px;font-size:11px}.bug-preview-editor>div{grid-column:1/4;display:flex;justify-content:flex-end;gap:7px}.bug-copy-toast{position:fixed;left:50%;bottom:24px;z-index:1200;padding:9px 14px;border-radius:var(--radius-input);background:var(--label);color:#fff;font-size:12px;box-shadow:0 10px 28px rgba(0,0,0,.25);transform:translateX(-50%)}.bug-copy-toast[hidden]{display:none}.bug-material-form [data-material-submit]:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.bug-copy-toast.has-error{background:var(--danger)}
@media(max-width:760px){.bug-copy-content{max-width:none}.bug-receipt-complete{width:100%}.bug-receipt-complete>.bug-receipt-trigger{flex:1}.bug-preview-lines,.bug-preview-editor{grid-template-columns:1fr}.bug-preview-editor>div{grid-column:auto}.bug-material-preview-list{max-height:none}.bug-material-dialog .entry-dialog-form{padding-bottom:16px}.bug-copy-toast{bottom:16px;white-space:nowrap}
@media(max-width:440px){.bug-batch-stats{grid-template-columns:1fr 1fr}.bug-batch-stats span{padding:8px 4px}.bug-preview-head{align-items:flex-start;flex-wrap:wrap}.bug-preview-head>div{width:100%;margin-left:0}.bug-preview-head button{flex:1}.bug-material-dialog .entry-dialog-actions{position:sticky}

/* BUG 团队手动账期 */
.bug-period-panel{padding:0;border:1px solid var(--hairline);border-radius:var(--radius-card);overflow:visible}.bug-period-panel[data-period-state="settling"]{border-top-color:var(--gold)}.bug-period-panel[data-period-state="reopened"]{border-top-color:var(--danger)}.bug-period-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 19px;border-bottom:1px solid var(--line)}.bug-period-head h2{margin:2px 0 4px;font-size:18px}.bug-period-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.bug-period-primary-action{flex:0 0 auto;display:flex;align-items:center;min-height:38px}.bug-period-metrics{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.bug-period-metrics>div{padding:14px 18px}.bug-period-metrics>div+div{border-left:1px solid var(--line)}.bug-period-metrics span,.bug-period-metrics strong{display:block}.bug-period-metrics span{color:var(--muted);font-size:11px}.bug-period-metrics strong{margin-top:5px;font-size:22px;font-variant-numeric:tabular-nums}.bug-period-members{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.bug-period-member{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:13px 18px}.bug-period-member+.bug-period-member{border-left:1px solid var(--line)}.bug-period-member>div:first-child strong,.bug-period-member>div:first-child span{display:block}.bug-period-member>div:first-child span{margin-top:2px;color:var(--muted);font-size:10px}.bug-period-member>b{align-self:center;font-size:16px;font-variant-numeric:tabular-nums}.bug-period-member>small{grid-column:1/3;color:var(--muted);font-size:10px}.bug-confirm-state{grid-column:1/3;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px;padding-top:9px;border-top:1px solid var(--hairline)}.bug-confirm-state>span{color:var(--gold);font-size:11px;font-weight:600}.bug-confirm-state.is-confirmed>span{color:var(--accent)}.bug-confirm-state form{margin:0}.bug-official-transfers{padding:15px 18px}.bug-official-transfers .bug-transfer-row{position:relative;display:grid;grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:12px;min-height:46px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-input);background:var(--bg-elevated)}.bug-official-transfers .bug-transfer-row+.bug-transfer-row{margin-top:7px}.bug-official-transfers .bug-transfer-row>div{display:flex;align-items:center;gap:7px}.bug-official-transfers .bug-transfer-row>strong{color:var(--accent2);font-size:17px;font-variant-numeric:tabular-nums}.bug-transfer-reason{position:relative}.bug-transfer-reason>summary{display:grid;place-items:center;width:28px;height:28px;overflow:hidden;border:1px solid var(--hairline);border-radius:50%;background:#fff;color:var(--accent2);font-size:0;font-weight:600;list-style:none;cursor:pointer}.bug-transfer-reason>summary::after{content:"?";font-size:12px}.bug-transfer-reason>summary::-webkit-details-marker{display:none}.bug-transfer-reason>p{position:absolute;right:0;top:30px;z-index:120;width:min(430px,calc(100vw - 58px));margin:0;padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;box-shadow:0 15px 34px rgba(0,0,0,.2);font-size:12px;line-height:1.75;white-space:pre-line}.bug-transfer-reason:not([open])>p{display:none}.bug-history-detail .bug-transfer-explanation{white-space:pre-line}.bug-cancel-settlement{display:flex;justify-content:flex-end;margin-top:12px}.bug-period-history{padding:16px}.bug-period-history-list{display:grid;gap:7px}.bug-history-period{border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff}.bug-history-period>summary{display:grid;grid-template-columns:minmax(120px,1fr) repeat(3,auto);align-items:center;gap:16px;padding:11px 13px;list-style:none;cursor:pointer}.bug-history-period>summary::-webkit-details-marker{display:none}.bug-history-period>summary span{color:var(--muted);font-size:11px}.bug-history-period>summary strong{font-variant-numeric:tabular-nums}.bug-history-detail{display:grid;gap:12px;padding:13px;border-top:1px solid var(--line);background:var(--fill-secondary)}.bug-history-members{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bug-history-members p{display:grid;gap:3px;margin:0;padding:9px;border:1px solid var(--hairline);border-radius:var(--radius-input);background:#fff}.bug-history-members span,.bug-history-detail small{display:block;color:var(--muted);font-size:10px;line-height:1.55}.bug-version-note{margin:0;color:var(--muted);font-size:11px}.bug-reopen-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:8px;max-width:520px}.bug-reopen-form label{font-size:11px}
@media(max-width:760px){.bug-period-head{display:block;padding:15px}.bug-period-primary-action{margin-top:12px}.bug-period-primary-action form,.bug-period-primary-action button{width:100%}.bug-period-metrics,.bug-period-members{grid-template-columns:1fr}.bug-period-metrics>div,.bug-period-member{padding:12px 15px}.bug-period-metrics>div+div,.bug-period-member+.bug-period-member{border-left:0;border-top:1px solid var(--line)}.bug-official-transfers{padding:13px}.bug-official-transfers .bug-transfer-row{grid-template-columns:minmax(0,1fr) auto 28px}.bug-transfer-reason>p{position:fixed;inset:auto 10px 10px;width:auto;max-height:55vh;overflow:auto}.bug-history-period>summary{grid-template-columns:1fr auto;gap:6px 12px}.bug-history-period>summary span{display:none}.bug-history-members{grid-template-columns:1fr}.bug-reopen-form{grid-template-columns:1fr}.bug-reopen-form button{width:100%}

/* BUG 资料快捷操作 */
.bug-type-menu{position:relative;display:inline-block}.bug-type-menu>summary{list-style:none}.bug-type-menu>summary::-webkit-details-marker{display:none}.bug-type-trigger{padding:2px 3px;border-bottom:1px dashed var(--accent);color:var(--accent2);font-weight:600;cursor:pointer}.bug-type-trigger:hover{background:var(--accent-soft)}.bug-type-popover{position:absolute;top:calc(100% + 7px);left:0;z-index:85;display:grid;width:170px;gap:9px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;box-shadow:0 13px 30px rgba(0,0,0,.16)}.bug-type-popover label{font-size:11px}.bug-type-popover button{justify-self:end}.bug-context-dialog textarea{min-height:170px;resize:vertical;font-family:Consolas,"Microsoft YaHei",monospace;line-height:1.55}.bug-copy-content[data-context-edit]{cursor:pointer}
@media(max-width:760px){.bug-type-popover{position:fixed;inset:auto 10px 10px;z-index:95;width:auto;padding:15px}.bug-type-menu[open]::before{content:"";position:fixed;inset:0;z-index:94;background:rgba(0,0,0,.28)}.bug-type-menu[open]>.bug-type-popover{z-index:95}.bug-context-dialog{width:calc(100vw - 16px)}

/* BUG 开号业务记录表 */
.bug-record-section>.table-wrap{max-height:68vh;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius-inner)}.bug-business-table{width:2074px;min-width:2074px;table-layout:fixed}.bug-business-table th{position:sticky;top:0;z-index:30;background:var(--bg);vertical-align:middle}.bug-business-table th:nth-child(1){width:112px}.bug-business-table th:nth-child(2){width:300px}.bug-business-table th:nth-child(3){width:72px}.bug-business-table th:nth-child(4){width:330px}.bug-business-table th:nth-child(5){width:110px}.bug-business-table th:nth-child(6){width:120px}.bug-business-table th:nth-child(7),.bug-business-table th:nth-child(8){width:84px}.bug-business-table th:nth-child(9){width:140px}.bug-business-table th:nth-child(10){width:112px}.bug-business-table th:nth-child(11){width:100px}.bug-business-table th:nth-child(12){width:110px}.bug-business-table th:nth-child(13){width:120px}.bug-business-table th:nth-child(14){width:180px}.bug-business-table th:nth-child(15){width:100px}.bug-business-table th:nth-child(-n+4),.bug-business-table .bug-material-row>td:nth-child(-n+4){position:sticky;z-index:20;background:#fff}.bug-business-table th:nth-child(-n+4){z-index:40;background:var(--bg)}.bug-business-table th:nth-child(1),.bug-business-table .bug-material-row>td:nth-child(1){left:0}.bug-business-table th:nth-child(2),.bug-business-table .bug-material-row>td:nth-child(2){left:112px}.bug-business-table th:nth-child(3),.bug-business-table .bug-material-row>td:nth-child(3){left:412px}.bug-business-table th:nth-child(4),.bug-business-table .bug-material-row>td:nth-child(4){left:484px;box-shadow:5px 0 10px rgba(0,0,0,.08)}.bug-business-table .bug-material-row>td:nth-child(2),.bug-business-table .bug-material-row>td:nth-child(4){padding:6px}.bug-business-table .bug-copy-content{min-height:58px}.bug-business-field{height:70px;padding:0!important;vertical-align:stretch!important}.bug-business-field>span,.bug-business-value{display:flex;width:100%;height:100%;min-height:69px;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:8px;border:0;border-radius:0;background:transparent;color:var(--text);font:12px/1.45 "Microsoft YaHei",system-ui,sans-serif;text-align:left;overflow:hidden;overflow-wrap:anywhere}.bug-business-value{cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.bug-business-value:hover,.bug-business-value:focus-visible{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px #9fc5b7;outline:0;transform:none}.bug-business-value small,.bug-business-field>span small{display:block;color:var(--muted);font-size:10px;font-weight:600}.bug-money-field .bug-business-value,.bug-money-field>span{align-items:flex-end;text-align:right;font-variant-numeric:tabular-nums}.bug-note-field .bug-business-value,.bug-note-field>span{display:-webkit-box;padding-top:16px;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.bug-business-dialog{width:min(780px,calc(100vw - 28px))}.bug-business-form{display:grid;gap:14px}.bug-business-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.bug-business-form-grid label{min-width:0}.bug-business-form-grid input,.bug-business-form-grid select{height:40px}.bug-business-form-grid .bug-business-note{grid-column:1/-1}.bug-business-form-grid textarea{min-height:100px;font-family:"Microsoft YaHei",system-ui,sans-serif}.bug-business-table .bug-detail-grid{grid-template-columns:repeat(3,1fr)}.bug-business-table .bug-detail-grid>div:nth-child(4){grid-column:auto}.bug-business-table .bug-detail-grid>div:last-child{grid-column:1/-1}
@media(max-width:1250px){.bug-business-form-grid{grid-template-columns:1fr 1fr}.bug-business-form-grid .bug-business-note{grid-column:1/-1}.bug-business-table th:nth-child(-n+4),.bug-business-table .bug-material-row>td:nth-child(-n+4){position:static;box-shadow:none}.bug-business-table th{position:sticky}
@media(max-width:760px){.bug-record-section>.table-wrap{max-height:68vh;overflow:auto}.bug-business-table{display:table;width:2074px;min-width:2074px}.bug-business-table thead{display:table-header-group}.bug-business-table tbody{display:table-row-group}.bug-business-table .bug-material-row,.bug-business-table .bug-detail-row{display:table-row;padding:0;border:0;background:transparent}.bug-business-table .bug-material-row>td{display:table-cell;padding:9px 10px;border-bottom:1px solid var(--line);white-space:normal}.bug-business-table .bug-material-row>td::before{display:none}.bug-business-table .bug-material-row>td:nth-child(n){grid-column:auto}.bug-business-table .bug-detail-row[hidden]{display:none!important}.bug-business-table .bug-detail-row>td{display:table-cell}.bug-business-table .bug-detail-grid{grid-template-columns:1fr 1fr}.bug-business-table .bug-detail-grid>div:nth-child(4){grid-column:auto}.bug-business-table .bug-detail-grid>div:last-child{grid-column:1/-1}.bug-business-form-grid{grid-template-columns:1fr}.bug-business-form-grid .bug-business-note{grid-column:auto}.bug-business-dialog .entry-dialog-form{padding-bottom:16px}

/* BUG 紧凑业务报表 */
main:has(.bug-page-head){padding-top:20px}main:has(.bug-page-head)>section{margin-bottom:14px}.bug-page-head{margin-bottom:14px}.bug-metric-grid{gap:10px}.bug-metric-grid article{padding:16px}.bug-member-strip{gap:8px}.bug-member-strip article{padding:13px 14px}.bug-record-section{padding:16px}.bug-filter-form{gap:6px;margin-bottom:10px}
.bug-business-table{width:1727px;min-width:1727px;table-layout:fixed}.bug-business-table th{padding:9px 8px}.bug-business-table th:nth-child(1){width:96px}.bug-business-table th:nth-child(2){width:255px}.bug-business-table th:nth-child(3){width:62px}.bug-business-table th:nth-child(4){width:280px}.bug-business-table th:nth-child(5){width:92px}.bug-business-table th:nth-child(6){width:100px}.bug-business-table th:nth-child(7),.bug-business-table th:nth-child(8){width:72px}.bug-business-table th:nth-child(9){width:112px}.bug-business-table th:nth-child(10){width:94px}.bug-business-table th:nth-child(11){width:82px}.bug-business-table th:nth-child(12){width:92px}.bug-business-table th:nth-child(13){width:100px}.bug-business-table th:nth-child(14){width:130px}.bug-business-table th:nth-child(15){width:88px}.bug-business-table th:nth-child(2),.bug-business-table .bug-material-row>td:nth-child(2){left:96px}.bug-business-table th:nth-child(3),.bug-business-table .bug-material-row>td:nth-child(3){left:351px}.bug-business-table th:nth-child(4),.bug-business-table .bug-material-row>td:nth-child(4){left:413px}.bug-business-table .bug-material-row>td{padding:8px}.bug-business-table .bug-material-row>td:nth-child(2),.bug-business-table .bug-material-row>td:nth-child(4){padding:5px}.bug-business-table .bug-copy-content{min-height:50px;padding:6px 7px}.bug-business-field{height:62px}.bug-business-field>span,.bug-business-value{min-height:61px;padding:6px}.bug-note-field .bug-business-value,.bug-note-field>span{padding-top:12px}
.bug-business-table .bug-material-row:has(.bug-type-menu[open]),.bug-business-table .bug-material-row:has(.bug-receipt-menu[open]){position:relative;z-index:60}.bug-business-table .bug-material-row>td:has(.bug-type-menu[open]),.bug-business-table .bug-material-row>td:has(.bug-receipt-menu[open]){z-index:90}.bug-receipt-menu:not([open]):hover>.bug-receipt-popover{display:none}
@media(max-width:1250px){.bug-business-table .bug-material-row>td:has(.bug-type-menu[open]),.bug-business-table .bug-material-row>td:has(.bug-receipt-menu[open]){position:relative}
@media(max-width:760px){.bug-business-table{display:table;width:1727px;min-width:1727px}.bug-business-table .bug-material-row>td{padding:8px}.bug-business-table .bug-material-row>td:nth-child(2),.bug-business-table .bug-material-row>td:nth-child(4){padding:5px}
.bug-business-table .bug-material-row>td:nth-child(2) .bug-copy-content{padding:4px 6px;font-size:10px;line-height:1.2}.bug-business-table .bug-material-row>td:nth-child(2) .bug-copy-text{-webkit-line-clamp:4}
.bug-inline-menu{position:relative;display:block;width:100%;height:100%}.bug-inline-menu>summary{list-style:none}.bug-inline-menu>summary::-webkit-details-marker{display:none}.bug-inline-popover{position:fixed;top:0;left:0;z-index:110;display:grid;width:240px;max-height:calc(100vh - 16px);gap:9px;padding:12px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;box-shadow:0 16px 36px rgba(0,0,0,.2);text-align:left}.bug-inline-popover label{font-size:11px}.bug-inline-popover input,.bug-inline-popover textarea{font-size:12px}.bug-inline-popover textarea{width:100%;min-height:94px;padding:8px 10px;border:1px solid var(--hairline);border-radius:var(--radius-input);resize:vertical}.bug-inline-popover>button,.bug-inline-add-form>button{justify-self:end}.bug-choice-popover{grid-template-columns:1fr 1fr;width:180px}.bug-choice-popover button{width:100%}.bug-ledger-popover{width:340px;max-height:min(390px,calc(100vh - 16px));overflow:auto}.bug-inline-add-form{display:grid;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--line)}.bug-inline-add-form p{margin:0;color:var(--muted);font-size:11px}.bug-entry-history{display:grid;gap:7px}.bug-entry-history>p{margin:0;color:var(--muted);font-size:11px}.bug-entry-history>div{display:grid;gap:4px;padding:8px;border:1px solid var(--hairline);border-radius:var(--radius-input);background:var(--fill-secondary);font-size:11px}.bug-entry-history>div>span{font-weight:600;font-variant-numeric:tabular-nums}.bug-entry-history>div>small{color:var(--muted);white-space:normal}.bug-entry-history>div.is-revoked{opacity:.58;text-decoration:line-through}.bug-entry-history form{display:grid;grid-template-columns:1fr auto;gap:5px}.bug-entry-history form input{height:30px;font-size:10px}.bug-entry-history form button{height:30px;padding:0 8px}.bug-business-table .bug-material-row:has(.bug-inline-menu[open]){position:relative;z-index:70}.bug-business-table .bug-material-row>td:has(.bug-inline-menu[open]){position:relative;z-index:100;overflow:visible}.bug-money-field .bug-inline-popover{text-align:left}.bug-money-field .bug-inline-popover label,.bug-money-field .bug-inline-popover p{text-align:left}
@media(max-width:760px){.bug-inline-menu[open]::before{content:"";position:fixed;inset:0;z-index:104;background:rgba(0,0,0,.28)}.bug-inline-menu[open]>.bug-inline-popover{position:fixed;inset:auto 10px 10px;z-index:105;width:auto;max-height:calc(100vh - 40px);overflow:auto;transform:none}.bug-choice-popover{grid-template-columns:1fr 1fr}

/* Notes are edited in place; they are low-frequency text and do not need a popover. */
.bug-json-detail-fields [data-bug-double-edit="note"]{display:none}
.bug-json-detail-fields .bug-inline-menu:has([data-bug-double-edit="note"]){display:block;height:auto}
.bug-json-detail-fields .bug-inline-menu:has([data-bug-double-edit="note"])>.bug-inline-popover{position:static;display:flex;width:100%;max-height:none;gap:6px;padding:0;border:0;border-radius:0;box-shadow:none;align-items:center;background:transparent}
.bug-json-detail-fields .bug-inline-menu:has([data-bug-double-edit="note"])>.bug-inline-popover label{display:flex;flex:1;align-items:center;gap:6px}
.bug-json-detail-fields .bug-inline-menu:has([data-bug-double-edit="note"])>.bug-inline-popover textarea{min-height:34px;height:34px;resize:none;padding:7px 9px}
.bug-status-menu{position:relative;display:flex;width:100%;height:100%;align-items:center;padding:6px}.bug-status-trigger{max-width:100%;overflow-wrap:anywhere;line-height:1.35}.bug-status-popover{width:190px}.bug-status-choices{gap:4px;padding:7px}.bug-status-choices .bug-status-option{display:flex;width:100%;height:34px;align-items:center;justify-content:space-between;padding:0 10px;border:1px solid transparent;border-radius:4px;background:#fff;color:var(--text);font-size:12px;font-weight:600;text-align:left;box-shadow:none}.bug-status-choices .bug-status-option:hover{border-color:var(--hairline);background:var(--accent-soft);color:var(--accent2);transform:none}.bug-status-choices .bug-status-option.is-current,.bug-status-choices .bug-status-option:disabled{border-color:var(--hairline);background:var(--accent-soft);color:var(--accent2);opacity:1;cursor:default}.bug-status-option small{color:var(--accent);font-size:10px}.bug-status-static{font-weight:600}.bug-status-field>span{color:var(--accent2)}
.bug-business-value[data-bug-double-edit]{cursor:cell;user-select:none}
.bug-record-actions{display:flex;align-items:center;gap:7px}.bug-record-actions button{white-space:nowrap}.bug-member-detail-card{position:relative;z-index:1;cursor:help}.bug-member-detail-card:hover,.bug-member-detail-card:focus{z-index:120;outline:0}.bug-member-cash-details{position:absolute;top:calc(100% + 7px);left:12px;right:12px;z-index:130;display:grid;gap:7px;min-width:230px;max-height:290px;padding:11px 12px;overflow:auto;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;box-shadow:0 16px 38px rgba(0,0,0,.2);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease}.bug-member-detail-card:hover .bug-member-cash-details,.bug-member-detail-card:focus .bug-member-cash-details{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.bug-member-cash-details>strong{color:var(--accent2);font-size:12px}.bug-member-cash-details>p{display:grid;gap:2px;margin:0;padding:6px 7px;border:1px solid var(--hairline);border-radius:4px;background:var(--fill-secondary)}.bug-member-cash-details>p span{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.bug-member-cash-details>p small{color:var(--muted);font-size:10px;line-height:1.4}.bug-member-cash-details>p.empty{border:0;background:transparent}.bug-cash-dialog{width:min(440px,calc(100vw - 28px))}.bug-cash-dialog .entry-dialog-form{display:grid;gap:13px}
.bug-filter-query input.is-locating{border-color:var(--accent);background:var(--bg)}.bug-filter-query input.is-not-found{border-color:var(--danger);background:rgba(255,59,48,.06)}.bug-business-table .bug-material-row.is-located>td{background:var(--accent-soft)!important;box-shadow:inset 0 1px var(--accent),inset 0 -1px var(--accent)}.bug-business-table .bug-material-row.is-located{animation:bug-locate-pulse .8s ease 2}

/* BUG JSON 六阶段工作流 */
.bug-result-cell{display:flex;align-items:center;gap:6px;min-width:0}.bug-result-cell .bug-result-picker{display:block;flex:1 1 92px;min-width:0;margin:0}.bug-result-select{display:block;width:100%;height:30px;min-width:0;padding:0 23px 0 8px;border:1px solid var(--hairline);border-radius:4px;background:var(--fill-secondary);color:var(--text);font-size:11px;font-weight:600;cursor:pointer}.bug-result-select:hover,.bug-result-select:focus{border-color:var(--accent);background:#fff;outline:0}.bug-result-static{display:inline-flex;min-width:0;align-items:center;font-size:11px}.bug-result-cell .bug-workflow-status{display:inline-flex;min-width:0;min-height:24px;align-items:center;justify-content:center;margin:0;padding:2px 6px;overflow:hidden;font-size:10px;line-height:1.25;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.bug-json-workflow-table{width:100%;min-width:1180px;table-layout:fixed}.bug-json-workflow-table th{position:sticky;top:0;z-index:20;padding:10px 9px;background:var(--bg)}.bug-json-workflow-table th:nth-child(1){width:116px}.bug-json-workflow-table th:nth-child(2){width:300px}.bug-json-workflow-table th:nth-child(3){width:190px}.bug-json-workflow-table th:nth-child(4){width:235px}.bug-json-workflow-table th:nth-child(5){width:235px}.bug-json-workflow-table th:nth-child(6){width:92px}.bug-json-workflow-table .bug-material-row>td{height:104px;padding:9px;vertical-align:middle}.bug-json-workflow-table .bug-material-row>td>small,.bug-json-workflow-table .bug-material-row>td>strong{display:block}.bug-json-workflow-table .bug-material-row>td>small{margin-top:4px;color:var(--muted);font-size:10px}.bug-json-workflow-table .bug-copy-content{height:82px;min-height:82px;padding:8px}.bug-json-workflow-table .bug-copy-text{display:-webkit-box;overflow:hidden;font-size:11px;line-height:1.35;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:5}.bug-json-workflow-table .bug-material-row:hover>td{background:var(--bg-elevated)}.bug-json-workflow-table .bug-material-row.is-located>td{background:var(--accent-soft)!important;box-shadow:inset 0 1px var(--accent),inset 0 -1px var(--accent)}
.bug-result-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.bug-result-picker button{min-width:0;padding:0 6px}.bug-result-picker button.is-current,.bug-result-picker button:disabled{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);opacity:1}.bug-workflow-status{display:block;margin-top:7px;text-align:center;white-space:normal}.bug-json-summary-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px}.bug-json-summary,.bug-json-receive-summary{display:grid;width:100%;min-height:56px;align-content:center;gap:3px;padding:7px 9px;border:1px solid var(--line);border-radius:var(--radius-input);background:#fff;color:var(--text);box-shadow:none;text-align:left}.bug-json-summary:hover,.bug-json-receive-summary:hover{border-color:var(--accent);background:var(--bg);transform:none}.bug-json-summary span,.bug-json-receive-summary span,.bug-json-receive-summary small{color:var(--muted);font-size:9px;line-height:1.35}.bug-json-summary strong,.bug-json-receive-summary strong{min-width:0;overflow:hidden;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.bug-json-receive-summary.has-pending{border-color:var(--warning);background:rgba(255,159,10,.1)}.bug-json-receive-summary.has-pending:hover{border-color:var(--warning);background:rgba(255,159,10,.14)}.bug-json-receive-summary.has-pending strong{color:var(--warning)}.bug-json-upload-shortcut{width:52px;height:32px;padding:0 8px}.bug-json-upload-form{display:grid;width:100%;min-height:30px;margin:0}.bug-json-upload-form label{justify-self:start;margin:0;cursor:pointer}.bug-json-upload-form [hidden]{display:none!important}.bug-json-upload-progress{display:grid;width:100%;gap:3px}.bug-json-upload-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.bug-json-upload-progress span{min-width:0;overflow:hidden;font-size:9px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.bug-json-upload-progress b{flex:0 0 auto;color:var(--accent2);font-size:9px;font-variant-numeric:tabular-nums}.bug-json-upload-progress progress{display:block;width:100%;height:6px;border:0;border-radius:3px;overflow:hidden;background:var(--fill);accent-color:var(--accent2)}.bug-json-upload-progress progress::-webkit-progress-bar{border-radius:3px;background:var(--fill)}.bug-json-upload-progress progress::-webkit-progress-value{border-radius:3px;background:var(--accent2);transition:width .15s ease}.bug-json-upload-progress progress::-moz-progress-bar{border-radius:3px;background:var(--accent2)}.bug-json-upload-progress progress.is-processing{animation:bug-json-progress-pulse 1s ease-in-out infinite}.bug-json-upload-progress small{display:block;max-width:100%;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.bug-json-upload-form.has-upload-error .bug-json-upload-progress{margin-top:4px}.bug-json-upload-form.has-upload-error .bug-json-upload-progress b,.bug-json-upload-form.has-upload-error .bug-json-upload-progress small{color:var(--danger)}@keyframes bug-json-progress-pulse{50%{opacity:.55}.bug-json-withdraw-form{margin:0}.bug-json-withdraw-button{height:28px;padding:0 8px;font-size:10px}.bug-json-workflow-table .bug-row-actions{display:grid;justify-items:center;gap:7px}.bug-json-workflow-table .bug-row-actions small{color:var(--muted);font-size:9px}
.bug-json-workflow-table .bug-detail-row>td{padding:0;border-bottom:2px solid var(--hairline);background:var(--fill-secondary)}.bug-json-detail{display:grid;gap:0}.bug-json-detail>section{padding:14px 16px;border-top:1px solid var(--line)}.bug-json-detail>section:first-child{border-top:0}.bug-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.bug-detail-heading strong{font-size:13px}.bug-detail-heading span{color:var(--muted);font-size:10px}.bug-json-detail-fields{display:grid;grid-template-columns:180px 150px 130px minmax(260px,1fr);gap:8px}.bug-json-detail-fields>div{min-width:0;border-bottom:1px solid var(--fill)}.bug-json-detail-fields>div>span{display:block;padding:0 7px;color:var(--muted);font-size:9px}.bug-json-detail-fields .bug-business-value{min-height:44px;padding:5px 7px}.bug-exception-status-form{display:flex;align-items:center;gap:6px;margin-top:10px}.bug-exception-status-form>span{margin-right:4px;color:var(--muted);font-size:10px}
.bug-detail-ledgers{display:grid;grid-template-columns:150px 170px 170px minmax(280px,1fr);gap:10px}.bug-detail-ledgers>div{display:flex;min-width:0;flex-direction:column;gap:4px;padding-right:10px;border-right:1px solid var(--line)}.bug-detail-ledgers>div:last-child{border-right:0}.bug-detail-ledgers span{color:var(--muted);font-size:9px}.bug-detail-ledgers b{font-size:14px;font-variant-numeric:tabular-nums}.bug-detail-ledgers small{overflow-wrap:anywhere;color:var(--muted);font-size:9px;line-height:1.45}.bug-detail-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}.bug-detail-expense-form{display:grid;grid-template-columns:130px 220px auto;align-items:end;gap:7px}.bug-detail-expense-form label{font-size:10px}.bug-detail-expense-form input{height:34px}
.bug-json-dialog{z-index:220}.bug-json-dialog::backdrop{background:rgba(19,30,26,.48)}.bug-json-center{width:min(1080px,calc(100vw - 48px));max-height:min(820px,calc(100vh - 48px));overflow:hidden}.bug-json-center-head p{max-width:760px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bug-json-center-body{max-height:calc(100vh - 150px);padding:14px 18px 18px;overflow:auto}.bug-json-center-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.bug-json-center-stats>div{display:grid;gap:3px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-input);background:var(--bg)}.bug-json-center-stats>div.pending{border-color:rgba(255,159,10,.45);background:rgba(255,159,10,.1)}.bug-json-center-stats span{color:var(--muted);font-size:10px}.bug-json-center-stats strong{font-size:14px;font-variant-numeric:tabular-nums}.bug-json-center-upload{grid-template-columns:minmax(150px,1fr) auto;align-items:center;gap:9px;min-height:54px;margin-bottom:12px;padding:9px 11px;border:1px dashed #aac9bd;border-radius:var(--radius-input);background:#f7fbf9}.bug-json-center-upload>div:first-child{display:grid;gap:2px}.bug-json-center-upload>div:first-child strong{font-size:11px}.bug-json-center-upload>div:first-child small{color:var(--muted);font-size:9px}.bug-json-center-upload .bug-json-upload-progress{grid-column:1/-1}.bug-json-center-note{margin-bottom:12px;padding:9px 11px;border:1px solid var(--line);border-radius:var(--radius-input);background:var(--bg);color:var(--muted);font-size:11px}.bug-json-center-list{display:grid;gap:8px}.bug-json-center-file{display:grid;gap:10px;padding:11px 12px;border:1px solid #dce5e1;border-radius:var(--radius-inner);background:#fff}.bug-json-center-file.is-pending{border-color:#e4c483;background:#fffcf6}.bug-json-center-file-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.bug-json-center-file-name{display:grid;min-width:0;gap:3px}.bug-json-center-file-name strong{overflow-wrap:anywhere;font-size:12px;line-height:1.45}.bug-json-center-file-name small{color:var(--muted);font-size:9px}.bug-json-center-pending{display:grid;grid-template-columns:minmax(320px,1fr) minmax(290px,360px) auto;align-items:end;gap:12px;padding-top:9px;border-top:1px solid #ecdfc7}.bug-json-center-file-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.bug-json-center-file-facts>div,.bug-json-center-received>div{display:grid;min-width:0;gap:2px}.bug-json-center-file-facts span,.bug-json-center-received span{color:var(--muted);font-size:9px}.bug-json-center-file-facts strong,.bug-json-center-received strong{overflow-wrap:anywhere;font-size:11px}.bug-json-receive-form{display:grid;grid-template-columns:minmax(120px,1fr) auto;align-items:end;gap:6px;margin:0}.bug-json-receive-form label{font-size:10px}.bug-json-receive-form input{height:34px}.bug-json-receive-form>small{grid-column:1/-1;color:var(--muted);font-size:9px}.bug-json-receive-form>button{height:34px;padding:0 12px}.bug-json-inline-error{grid-column:1/-1;margin:0;padding:6px 8px;border:1px solid #efc2bc;border-radius:4px;background:rgba(255,59,48,.08);color:var(--danger);font-size:10px}.bug-json-center-view-note{align-self:center;color:var(--muted);font-size:10px}.bug-json-center-received{display:grid;grid-template-columns:90px 100px 100px 110px minmax(180px,1fr) auto;align-items:center;gap:10px;padding-top:9px;border-top:1px solid var(--line)}.bug-json-center-received small{color:var(--muted);font-size:9px}.bug-json-center-file-actions{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-end;gap:6px}.bug-json-center-file-actions .button-link{height:30px}.bug-json-center-empty{display:grid;place-items:center;gap:4px;min-height:130px;padding:20px;border:1px dashed #cbd8d3;border-radius:var(--radius-inner);background:var(--fill-secondary);text-align:center}.bug-json-center-empty strong{font-size:13px}.bug-json-center-empty span{color:var(--muted);font-size:10px}.bug-json-correct-dialog{width:min(760px,calc(100vw - 28px))}.bug-json-correct-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px 18px}.bug-json-correct-grid form{display:grid;align-content:start;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line)}.bug-json-correct-grid form button{justify-self:start}.bug-json-correct-grid .bug-json-revoke-form{grid-column:1/-1;grid-template-columns:1fr auto;align-items:end;border-bottom:0}.bug-json-correct-grid .bug-json-revoke-form label{min-width:0}
@media(max-width:1250px){.bug-json-workflow-table{width:1180px}.bug-json-detail-fields{grid-template-columns:repeat(2,minmax(240px,1fr))}.bug-json-center-pending{grid-template-columns:minmax(280px,1fr) minmax(260px,330px) auto}.bug-json-center-received{grid-template-columns:80px 90px 90px 100px minmax(160px,1fr) auto}.bug-detail-ledgers{grid-template-columns:repeat(2,1fr)}.bug-detail-ledgers>div:nth-child(2){border-right:0}
.bug-dispatch-trigger{width:100%;border:0;cursor:pointer;font:inherit}.bug-dispatch-trigger:hover{background:rgba(255,159,10,.16);color:var(--warning);box-shadow:0 0 0 2px rgba(201,147,49,.22)}.bug-dispatch-confirm-text{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-inner);background:rgba(255,159,10,.1);line-height:1.7}.bug-dispatch-form select{width:100%;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-input);background:#fff}

/* BUG 紧凑单行作业表 */
.bug-json-workflow-table{width:100%;min-width:1500px;table-layout:fixed}
.bug-json-workflow-table th{padding:8px 6px;font-size:10px;letter-spacing:0}
.bug-json-workflow-table th:nth-child(1){width:92px}.bug-json-workflow-table th:nth-child(2){width:300px}.bug-json-workflow-table th:nth-child(3){width:150px}.bug-json-workflow-table th:nth-child(4){width:94px}.bug-json-workflow-table th:nth-child(5),.bug-json-workflow-table th:nth-child(6){width:102px}.bug-json-workflow-table th:nth-child(7){width:82px}.bug-json-workflow-table th:nth-child(8){width:102px}.bug-json-workflow-table th:nth-child(9){width:78px}.bug-json-workflow-table th:nth-child(10){width:125px}.bug-json-workflow-table th:nth-child(11){width:173px}
.bug-json-workflow-table .bug-material-row>td{height:66px;padding:6px;overflow:hidden;vertical-align:middle;font-size:10px}
.bug-json-workflow-table .bug-material-row>td:first-child strong{font-size:10px;font-variant-numeric:tabular-nums}.bug-json-workflow-table .bug-material-row>td:first-child small{font-size:8px}
.bug-json-workflow-table .bug-copy-content{height:54px;min-height:54px;padding:5px 7px}.bug-json-workflow-table .bug-copy-text{font-size:11px;line-height:1.3;-webkit-line-clamp:3}
.bug-json-workflow-table .bug-result-cell{display:grid;grid-template-columns:62px minmax(0,1fr);gap:5px}.bug-json-workflow-table .bug-result-select{height:28px;padding-left:6px;font-size:10px}.bug-json-workflow-table .bug-workflow-status{min-height:28px;padding:3px 5px;white-space:normal}.bug-json-workflow-table .bug-workflow-status small{display:block;margin-top:1px;font-size:8px;font-weight:600}
.bug-table-value,.bug-number-value,.bug-money-value{display:block;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.bug-table-value{font-size:10px;font-weight:600}.bug-number-value,.bug-money-value{font-size:12px;font-variant-numeric:tabular-nums}.bug-money-value{color:#205f4c}.bug-table-hint{display:block!important;margin-top:2px!important;text-align:center}.bug-table-subaction{display:block;margin:3px auto 0;padding:0;border:0;background:transparent;color:var(--accent2);font-size:8px;line-height:1;box-shadow:none}.bug-table-subaction:hover{background:transparent;text-decoration:underline;transform:none}
.bug-json-workflow-table .bug-row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.bug-json-workflow-table .bug-row-actions button{height:28px;min-width:0;padding:0 5px;font-size:9px;white-space:nowrap}
.bug-json-workflow-table .bug-detail-row>td{overflow:visible}.bug-json-detail-fields{grid-template-columns:130px 160px 160px minmax(250px,1fr)}
.bug-json-center-pending{grid-template-columns:minmax(260px,1fr) minmax(440px,560px) auto}.bug-json-receive-form{grid-template-columns:repeat(2,minmax(130px,1fr)) auto}.bug-json-receive-form>small,.bug-json-inline-error{grid-column:1/-1}.bug-json-center-received{grid-template-columns:76px 82px 82px 92px 100px minmax(170px,1fr) auto}
.bug-retail-dialog{width:min(430px,calc(100vw - 28px))}.bug-retail-form{display:grid;gap:12px}.bug-retail-note{margin:0;padding:9px 10px;border-left:3px solid #76a995;background:#f3f8f6;color:var(--muted);font-size:10px;line-height:1.5}
@media(max-width:1250px){.bug-json-workflow-table{width:1500px}.bug-json-center-pending{grid-template-columns:1fr}.bug-json-center-received{grid-template-columns:repeat(3,minmax(120px,1fr))}.bug-json-center-file-actions{justify-content:flex-start}

/* BUG 账期后的开号资料分组 */
.bug-record-group-heading>td{padding:0!important;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);background:#f5f8f7}.bug-record-group-heading>td>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:8px 11px}.bug-record-group-heading span{display:flex;align-items:baseline;gap:8px;min-width:0}.bug-record-group-heading strong{font-size:12px;color:#263b33}.bug-record-group-heading small{color:var(--muted);font-size:10px}.bug-yesterday-heading>td{background:#f7f8fb}.bug-yesterday-heading strong{color:#45576d}.bug-yesterday-record{transition:opacity .14s ease}.bug-record-section.is-yesterday-collapsed .bug-yesterday-record{display:none}.bug-record-section.is-yesterday-collapsed .bug-yesterday-heading>td{border-bottom:0}.bug-record-section .history-pagination{display:flex;align-items:center;gap:8px;margin:9px 0 0}.bug-record-section .history-pagination+ .history-pagination{margin-top:6px}

/* BUG team settlement cards follow the financial-party count for each period. */
.bug-period-members,.bug-history-members{grid-template-columns:repeat(var(--bug-party-count,3),1fr)}
@media(max-width:760px){.bug-period-members,.bug-history-members{grid-template-columns:1fr}

/* BUG 开号记录：用 colgroup 固定列关系，资料完整显示，业务列逐列对齐。 */
.bug-json-workflow-table{width:100%;min-width:1460px;table-layout:fixed}
.bug-json-workflow-table col.bug-col-select{width:2.5%}.bug-json-workflow-table col.bug-col-time{width:6.5%}.bug-json-workflow-table col.bug-col-material{width:27.5%}.bug-json-workflow-table col.bug-col-result{width:11%}.bug-json-workflow-table col.bug-col-channel{width:7%}.bug-json-workflow-table col.bug-col-dispatcher,.bug-json-workflow-table col.bug-col-shipper{width:6%}.bug-json-workflow-table col.bug-col-sold,.bug-json-workflow-table col.bug-col-price,.bug-json-workflow-table col.bug-col-aftersale{width:6%}.bug-json-workflow-table col.bug-col-receipt{width:7.5%}.bug-json-workflow-table col.bug-col-actions{width:8%}
.bug-json-workflow-table th,.bug-json-workflow-table th:nth-child(n){width:auto;padding:10px 7px;font-size:11px;line-height:1.3;text-align:center;vertical-align:middle}
.bug-json-workflow-table .bug-material-row>td{height:auto;min-height:96px;padding:9px 7px;overflow:hidden;vertical-align:middle;font-size:11px;line-height:1.4}
.bug-json-workflow-table .bug-material-row>td:first-child{text-align:left}
.bug-json-workflow-table .bug-material-row>td:nth-child(2){text-align:left}
.bug-json-workflow-table .bug-material-row>td:nth-child(n+3):nth-child(-n+10){text-align:center}
.bug-json-workflow-table .bug-material-row>td:first-child strong{font-size:11px;font-variant-numeric:tabular-nums}
.bug-json-workflow-table .bug-material-row>td:first-child small{font-size:9px}
.bug-json-workflow-table .bug-material-with-type{display:flex;width:100%;min-width:0;align-items:center;gap:9px}.bug-json-workflow-table .bug-material-type-badge{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:var(--radius-inner);color:#fff;font-size:18px;font-weight:600;line-height:1;box-shadow:0 3px 10px rgba(23,39,33,.16)}.bug-json-workflow-table .bug-material-type-badge.is-week{background:var(--accent2)}.bug-json-workflow-table .bug-material-type-badge.is-month{background:#2868a8}.bug-json-workflow-table .bug-material-type-badge.is-blocked{background:var(--danger)}.bug-json-workflow-table .bug-copy-content{display:flex;flex:1;width:auto;min-width:0;height:78px;min-height:78px;align-items:center;justify-content:flex-start;padding:8px 10px}
.bug-json-workflow-table .bug-copy-text{display:block;width:100%;overflow:visible;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:unset}
.bug-json-workflow-table .bug-result-cell{display:flex;width:100%;min-height:78px;align-items:center;justify-content:center}
.bug-json-workflow-table .bug-result-cell .bug-workflow-status{display:flex;width:100%;min-height:25px;align-items:center;justify-content:center;margin:0;padding:3px 7px;font-size:10px;line-height:1.25;white-space:normal}
.bug-json-workflow-table .bug-result-cell .bug-workflow-status small{display:block;margin-top:1px;font-size:9px}
.bug-json-workflow-table .bug-table-value{font-size:11px;line-height:1.35}
.bug-json-workflow-table .bug-number-value,.bug-json-workflow-table .bug-money-value{font-size:13px;font-variant-numeric:tabular-nums}
.bug-json-workflow-table .bug-table-hint{font-size:9px}
.bug-json-workflow-table .bug-row-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:5px}
.bug-json-workflow-table .bug-row-actions button{width:100%;height:30px;min-width:0;padding:0 5px;font-size:10px;white-space:nowrap}
@media(max-width:1250px){.bug-json-workflow-table{width:1460px;min-width:1460px}

/* Use the page as the only vertical scroll container on BUG material pages. */
.bug-record-section>.table-wrap{max-height:none;overflow-x:auto;overflow-y:clip;overscroll-behavior-x:contain;overscroll-behavior-y:auto}
.bug-header-filter-form{display:grid;grid-template-columns:96px minmax(130px,1fr);align-items:center;gap:6px;margin:0}.bug-header-filter-form select,.bug-header-filter-form input,.bug-json-workflow-table thead select{height:32px;border-color:transparent;background:var(--fill-secondary);font-size:11px;font-weight:600}.bug-header-filter-form select:hover,.bug-header-filter-form input:hover,.bug-json-workflow-table thead select:hover{border-color:var(--hairline);background:#fff}.bug-header-filter-form input{font-weight:400}.bug-column-filter{position:relative}.bug-column-filter>summary{display:grid;gap:2px;cursor:pointer;list-style:none}.bug-column-filter>summary::-webkit-details-marker{display:none}.bug-column-filter>summary:after{content:"▾";position:absolute;right:2px;top:3px;color:var(--accent)}.bug-column-filter>summary small{font-size:8px;font-weight:500;color:var(--muted)}.bug-column-filter-popover{position:absolute;z-index:90;top:calc(100% + 8px);left:0;display:grid;width:230px;gap:8px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff;box-shadow:0 12px 30px rgba(23,42,35,.18);text-align:left}.bug-column-filter-popover input,.bug-column-filter-popover select{border-color:var(--hairline);background:#fff}.bug-column-filter-popover button{justify-self:end}.bug-clear-filters{display:inline-flex;min-height:30px;align-items:center;justify-content:center;padding:0 8px;border-radius:var(--radius-input);background:var(--fill);color:#34404a;text-decoration:none;font-size:10px}.bug-clear-filters:hover{background:#dce4e1;color:var(--accent2)}
.bug-time-filter-trigger{display:grid;width:100%;height:32px;place-content:center;gap:1px;padding:0 16px 0 6px;border:1px solid transparent;background:var(--fill-secondary);color:#344b42;font-size:11px;line-height:1.15}.bug-time-filter-trigger:after{content:"▾";position:absolute;margin-left:68px;color:var(--accent)}.bug-time-filter-trigger small{font-size:8px;font-weight:500;color:var(--muted)}.bug-time-filter-trigger:hover{border-color:var(--hairline);background:#fff;color:var(--accent2)}.bug-time-filter-dialog{width:min(430px,calc(100vw - 28px))}
.bug-dispatch-trigger{position:relative;width:100%;min-height:52px;border:1px solid transparent;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.bug-dispatch-hover-text{display:none}.bug-dispatch-trigger:hover,.bug-dispatch-trigger:focus-visible{border-color:#438973;background:var(--accent)!important;color:#fff!important;box-shadow:0 6px 16px rgba(22,74,59,.18)}.bug-dispatch-trigger:hover .bug-dispatch-default-text,.bug-dispatch-trigger:focus-visible .bug-dispatch-default-text{display:none}.bug-dispatch-trigger:hover .bug-dispatch-hover-text,.bug-dispatch-trigger:focus-visible .bug-dispatch-hover-text{display:inline;font-size:11px;font-weight:600}.bug-dispatch-form [data-bug-dispatch-json]{padding:11px;border:1px dashed var(--hairline);border-radius:var(--radius-inner);background:var(--bg)}.bug-dispatch-form [data-bug-dispatch-json] small{color:var(--muted);font-size:10px}
.bug-result-status-only .bug-workflow-status{font-size:13px;font-weight:600;line-height:1.35}.bug-dispatch-trigger:hover .bug-dispatch-hover-text,.bug-dispatch-trigger:focus-visible .bug-dispatch-hover-text{font-size:14px;font-weight:600}
.bug-dispatch-dialog .entry-dialog-head h2{max-width:390px;font-size:16px;overflow-wrap:anywhere}.bug-dispatch-inline-error{padding:10px 12px;border:1px solid #efaaa4;border-radius:var(--radius-inner);background:rgba(255,59,48,.1);color:var(--danger);font-size:12px;font-weight:600;line-height:1.5}
.bug-dispatch-dropzone{position:relative;display:grid;min-height:88px;place-content:center;gap:5px;padding:14px;border:2px dashed var(--hairline);border-radius:var(--radius-inner);background:var(--bg);color:var(--accent2);cursor:pointer;text-align:center;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.bug-dispatch-dropzone:hover,.bug-dispatch-dropzone.is-dragging{border-color:#29775f;background:var(--accent-soft);box-shadow:inset 0 0 0 2px rgba(41,119,95,.08)}.bug-dispatch-dropzone strong{font-size:12px;overflow-wrap:anywhere}.bug-dispatch-dropzone small{color:var(--muted);font-size:10px}.bug-dispatch-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.bug-dispatch-validation{padding:9px 11px;border-radius:var(--radius-inner);font-size:12px;font-weight:600}.bug-dispatch-validation.is-checking{background:#fff4df;color:#8a5a12}.bug-dispatch-validation.is-success{background:#e6f4ee;color:#17634d}.bug-dispatch-validation.is-error{border:1px solid #efaaa4;background:rgba(255,59,48,.1);color:var(--danger)}

/* BUG 资料表左侧复选框、批量删除与分享。 */
.bug-selection-toolbar{position:sticky;top:8px;z-index:75;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:9px 0;padding:9px 12px;border:1px solid #8eb7a7;border-radius:var(--radius-inner);background:var(--accent-soft);box-shadow:0 6px 18px rgba(24,76,58,.13)}
.bug-selection-toolbar[hidden]{display:none}.bug-selection-toolbar>strong{color:var(--accent2);font-size:13px}.bug-selection-toolbar>div{display:flex;align-items:center;gap:7px}
.bug-select-heading,.bug-select-cell{padding-right:4px!important;padding-left:4px!important;text-align:center!important}.bug-select-heading input,.bug-select-cell input{width:15px;height:15px;margin:0;vertical-align:middle;accent-color:var(--accent2);cursor:pointer}.bug-material-row.is-selected>td{background:#eaf6f1!important;box-shadow:inset 0 1px #78ad99,inset 0 -1px #78ad99}.bug-material-row.is-selected>td:first-child{box-shadow:inset 3px 0 var(--accent2),inset 0 1px #78ad99,inset 0 -1px #78ad99}.bug-share-dialog{width:min(620px,calc(100vw - 28px))}.bug-share-manager-list{display:grid;gap:0;max-height:420px;padding:4px 18px 18px;overflow:auto}.bug-share-manager-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}.bug-share-manager-list article>div{min-width:0}.bug-share-manager-list strong,.bug-share-manager-list small{display:block}.bug-share-manager-list small{margin-top:3px;color:var(--muted);font-size:10px}.bug-share-manager-list form{margin:0}.bug-share-created-body{display:grid;gap:14px;padding:16px 18px 18px}.bug-share-created-body label{font-size:11px}.bug-share-created-body input{font-family:Consolas,"Microsoft YaHei",monospace;font-size:12px}

/* 不登录的资料确认页只展示资料和结果控件。 */
.bug-public-share-page{min-width:0;background:var(--bg)}.bug-public-share-shell{width:min(980px,calc(100vw - 28px));max-width:none;margin:28px auto;padding:0}.bug-public-share-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:18px 20px;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff}.bug-public-share-head span{display:block;color:var(--accent2);font-size:11px;font-weight:600}.bug-public-share-head h1{margin:4px 0 0;font-size:23px;letter-spacing:0}.bug-public-share-head>strong{padding:6px 10px;border-radius:4px;background:var(--accent-soft);color:var(--accent2);font-size:12px}.bug-public-share-list{display:grid;gap:10px}.bug-public-share-record{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:stretch;gap:0;scroll-margin-top:16px;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff}.bug-public-share-record:target{border-color:var(--accent);box-shadow:0 0 0 3px rgba(48,126,96,.13)}.bug-public-share-material{min-width:0;padding:14px 16px}.bug-public-share-material>span{display:block;margin-bottom:7px;color:var(--muted);font-size:10px}.bug-public-share-material pre{margin:0;overflow:visible;color:var(--label);font:14px/1.65 Consolas,"Microsoft YaHei",monospace;letter-spacing:0;white-space:pre-wrap;overflow-wrap:anywhere}.bug-public-result-form{display:grid;align-content:center;gap:10px;padding:14px;border-left:1px solid var(--line);background:var(--bg)}.bug-public-result-form>span{color:var(--muted);font-size:11px}.bug-public-result-form>span b{color:var(--text)}.bug-public-result-form>div{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid #aac7bc;border-radius:var(--radius-input)}.bug-public-result-form button{height:36px;padding:0;border:0;border-radius:0;background:#fff;color:#315b4c;box-shadow:none;font-size:12px}.bug-public-result-form button+button{border-left:1px solid var(--hairline)}.bug-public-result-form button:hover{background:#edf7f3;transform:none}.bug-public-result-form button.is-current{background:var(--accent2);color:#fff}.bug-public-share-invalid{padding:52px 20px;border:1px solid var(--hairline);border-radius:var(--radius-inner);background:#fff;text-align:center}.bug-public-share-invalid h2{margin:0 0 8px;font-size:20px}.bug-public-share-invalid p{margin:0;color:var(--muted);font-size:12px}
@media(max-width:720px){.bug-selection-toolbar{align-items:flex-start;flex-direction:column}.bug-selection-toolbar>div{width:100%;flex-wrap:wrap}.bug-public-share-shell{margin:14px auto}.bug-public-share-head{padding:15px}.bug-public-share-head h1{font-size:20px}.bug-public-share-record{grid-template-columns:1fr}.bug-public-result-form{border-top:1px solid var(--line);border-left:0}.bug-public-share-material pre{font-size:13px}

/* 重复资料必须醒目，并提供现有记录的直接定位入口。 */
.bug-material-preview-item.has-error{border:2px solid #d83b31;border-left-width:5px;background:#fff0ef;box-shadow:0 0 0 2px rgba(216,59,49,.12)}
.bug-preview-duplicate{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin-top:8px;padding:10px 12px;border:1px solid #b42318;border-radius:var(--radius-input);background:var(--danger);color:#fff}
.bug-preview-duplicate strong{font-size:13px}.bug-preview-duplicate span{grid-column:1/2;font-size:11px;overflow-wrap:anywhere}.bug-preview-duplicate a{grid-column:2;grid-row:1/3;align-self:center;padding:7px 10px;border-radius:4px;background:#fff;color:#b42318;font-size:11px;font-weight:600;text-decoration:none}.bug-preview-duplicate a:hover{background:#ffe3df}

.bug-sold-quantity-cell{position:relative}.bug-quantity-delta{position:absolute;top:18px;left:50%;z-index:4;padding:3px 7px;border-radius:4px;background:#17805f;color:#fff;font-size:13px;font-weight:600;line-height:1;pointer-events:none;animation:bug-quantity-delta-fade 2s ease-out forwards}

.bug-public-share-record{transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,filter .16s ease}.bug-public-share-record.is-result-highlighted{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 4px rgba(0,82,255,.2),0 10px 24px rgba(0,0,0,.16);filter:contrast(1.04)}.bug-public-share-record.is-result-highlighted .bug-public-share-material,.bug-public-share-record.is-result-highlighted .bug-public-result-form{background:var(--accent-soft)}.bug-public-result-form button:disabled{cursor:wait;opacity:.65}.bug-public-save-toast{position:fixed;right:24px;bottom:24px;z-index:100;padding:10px 14px;border-radius:var(--radius-input);background:var(--accent);color:#fff;font-size:12px;font-weight:600;box-shadow:0 9px 24px rgba(0,0,0,.22)}.bug-public-save-toast.has-error{background:var(--danger)}.bug-public-save-toast[hidden]{display:none}

.bug-dispatch-form [data-bug-dispatch-json][hidden],.bug-dispatch-form[data-dispatch-needs-json="false"] [data-bug-dispatch-json],.bug-dispatch-form:has([data-bug-dispatch-channel] option[value="零售"]:checked) [data-bug-dispatch-json],.bug-dispatch-form:has([data-bug-dispatch-channel] option[value="中转"]:checked) [data-bug-dispatch-json]{display:none!important}

.bug-ship-withdraw-form{justify-self:end;margin:0;min-width:82px}.bug-ship-withdraw-form button{width:100%;min-width:82px}
.bug-delete-confirm-body{display:grid;gap:16px;padding:18px}.bug-delete-confirm-body>strong{font-size:15px}.bug-delete-confirm-body .entry-dialog-actions{margin-top:0}
.bug-material-preview-list{padding-bottom:78px}
.bug-query-wrap{position:relative;display:block}.bug-query-wrap input{padding-right:30px}.bug-query-clear{position:absolute;top:50%;right:5px;display:grid;width:24px;height:24px;padding:0;place-items:center;border:0;background:transparent;color:var(--muted);font-size:20px;line-height:1;transform:translateY(-50%);box-shadow:none}.bug-query-clear:hover{background:#edf3f0;color:var(--text);transform:translateY(-50%)}
.bug-ship-file:has(.bug-ship-receive-form){grid-template-columns:42px minmax(0,1fr) 74px minmax(210px,250px)}.bug-ship-receive-form{display:grid;grid-template-columns:minmax(92px,1fr) auto;align-items:center;gap:7px;margin:0}.bug-ship-receive-form input{height:36px;min-width:0;font-size:12px}.bug-ship-receive-form button{height:36px;padding:0 12px;white-space:nowrap}.bug-ship-receive-form .bug-json-inline-error{grid-column:1/-1}

.bug-ship-center{width:min(760px,calc(100vw - 28px))}.bug-ship-center-body{display:grid;gap:14px;padding:16px 18px 18px}.bug-ship-mode{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid #9cbeb1;border-radius:var(--radius-inner)}.bug-ship-mode button{height:42px;border:0;border-radius:0;background:#fff;color:#315b4c;box-shadow:none;font-size:13px}.bug-ship-mode button+button{border-left:1px solid #c7dad3}.bug-ship-mode button:hover{background:#edf7f3;transform:none}.bug-ship-mode button.is-current{background:var(--accent);color:#fff}.bug-ship-mode button:disabled{background:#edf0ef;color:#9aa5a1;cursor:not-allowed}.bug-ship-panel[hidden]{display:none!important}.bug-ship-panel .bug-retail-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-inner);background:var(--bg)}.bug-ship-panel .bug-retail-form button{height:38px}.bug-ship-file-list{display:grid;gap:7px}.bug-ship-file{display:grid;grid-template-columns:42px minmax(0,1fr) 74px 92px;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:var(--radius-inner);background:#fff}.bug-ship-file>strong{min-width:0;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.bug-ship-file>b{font-size:13px;text-align:right}.bug-ship-file>a,.bug-ship-file>button{justify-self:end;min-width:82px}.bug-ship-type{display:grid;width:34px;height:34px;place-items:center;border-radius:var(--radius-input);background:#2679bb;color:#fff;font-size:13px;font-weight:600}.bug-ship-type.is-week{background:#25815f}.bug-ship-file.is-received{background:#f4f8f6}.bug-json-receive-dialog{width:min(480px,calc(100vw - 28px))}@media(max-width:620px){.bug-ship-file{grid-template-columns:38px minmax(0,1fr) 62px}.bug-ship-file>a,.bug-ship-file>button,.bug-ship-file>span:last-child{grid-column:2/4;justify-self:stretch}.bug-ship-panel .bug-retail-form{grid-template-columns:1fr}
.bug-json-detail .bug-detail-heading span{display:none}.bug-json-detail .bug-detail-heading{margin-bottom:8px}.bug-json-detail section{padding:12px 16px}.bug-json-detail .bug-json-detail-fields{gap:10px 18px}.bug-json-detail .bug-ledger-detail .bug-detail-heading{border-bottom:1px solid var(--line);padding-bottom:6px}.bug-json-detail .bug-ledger-detail> .bug-detail-heading strong{font-size:13px}.bug-json-detail .bug-detail-ledgers{gap:8px 18px}.bug-json-detail .bug-detail-ledgers>div{min-width:120px}.bug-json-detail .bug-detail-ledgers>div:last-child{grid-column:span 2}.bug-json-detail .bug-detail-ledgers small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.bug-json-detail .bug-detail-actions{margin-top:10px;padding-top:10px}
.bug-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:150px}.bug-row-note{display:block;flex-basis:100%;max-width:240px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;color:var(--muted);font-size:11px;text-align:left}
.bug-json-workflow-table th:last-child,.bug-json-workflow-table td:last-child{min-width:230px;width:230px}.bug-json-workflow-table .bug-row-actions{display:grid;grid-template-columns:repeat(3,minmax(54px,1fr));align-items:center;gap:6px}.bug-json-workflow-table .bug-row-actions .bug-row-note{grid-column:1/-1;grid-row:2;max-width:220px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;text-align:left}.bug-json-workflow-table .bug-row-actions button{grid-row:1}
.bug-json-workflow-table .bug-col-actions{width:190px!important}.bug-json-workflow-table td[data-label="操作"]{min-width:190px!important;overflow:visible}

/* Press-first controls (pointer-down feel) */
button,.button-link,.allocation-button,nav a,.small-link{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
button,.button-link,.allocation-button{
  border-radius:980px;
  height:40px;
  padding:0 18px;
  font-weight:600;
  letter-spacing:-.01em;
  box-shadow:none;
  transition:transform var(--press-ms) ease-out,opacity var(--press-ms) ease-out,background .18s ease,filter .18s ease;
}
button:hover,.button-link:hover,.allocation-button:hover{
  transform:none;
  box-shadow:none;
  filter:brightness(1.04);
}
button:active,.button-link:active,.allocation-button:active{
  transform:scale(.97);
  filter:brightness(.96);
  box-shadow:none;
}

/* Soften prior hover-lift “dashboard” motion */
.metrics article:hover,.cardnet-product-row:hover,.review-list article:hover,
.breakdown-card:hover,.settlement-facts article:hover,.due-settlement-list article:hover,
.selected-day-summary article:hover,.balance-grid article:hover{
  transform:none;
  box-shadow:none;
}
  button:active,.button-link:active,.allocation-button:active,nav a:active,.brand:active{
    transform:none;
  }
/* Segmented controls (detail tabs) — Apple-like */
.detail-tabs{
  border:0;border-radius:10px;background:rgba(118,118,128,.12);padding:3px;gap:2px;box-shadow:none;
}
.detail-tabs button{
  border:0;border-radius:var(--radius-inner);min-width:0;height:34px;font-weight:600;letter-spacing:-.01em;
  transition:transform var(--press-ms) ease-out,background var(--press-ms) ease-out,color .15s ease,box-shadow .15s ease;
}
.detail-tabs button:hover{background:transparent;border-color:transparent;color:var(--text)}
.detail-tabs button:active{transform:scale(.97)}
.detail-tabs button[aria-selected="true"]{
  background:#fff;color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.12),0 1px 1px rgba(0,0,0,.04);
}
