/* Authenticated operations workspace. Login and business permissions are unchanged. */
body.admin-workspace {
  --bg:#f7f5f9; --panel:#fff; --panel2:#f1edf5; --ink:#332a3e; --text:#332a3e;
  --muted:#716079; --line:#e7e0ec; --dark:#382a46; --dark2:#493957;
  --gold:#634b74; --gold2:#e4eea7; --gold3:#f1edf5; --green:#267052; --red:#af3e42;
  --blue:#4c5e91; --shadow:0 4px 18px #382a4605; --radius:12px;
  background:var(--bg); color:var(--ink); font-size:14px; line-height:1.6;
  font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  font-variant-numeric:tabular-nums; -webkit-font-smoothing:antialiased;
}
body.admin-workspace ::selection { background:#e4eea7; color:#332a3e }
body.admin-workspace :is(button,a,input,select,textarea,summary):focus-visible { outline:2px solid #634b74; outline-offset:3px }
body.admin-workspace button { touch-action:manipulation; line-height:1.5 }
body.admin-workspace .shell { grid-template-columns:232px minmax(0,1fr) }
body.admin-workspace .sidebar { width:232px; padding:24px 16px 16px; background:#382a46; color:#f8f4fb }
body.admin-workspace .side-brand { padding:0 10px 22px; gap:10px }
body.admin-workspace .side-brand img { width:40px; height:40px }
body.admin-workspace .side-brand strong { font-size:22px; letter-spacing:1px }
body.admin-workspace .side-brand small { color:#d0bedc; letter-spacing:.5px; font-size:11px }
body.admin-workspace .nav { scrollbar-width:thin; scrollbar-color:#786387 transparent; padding-right:2px; flex:1; min-height:0 }
body.admin-workspace .nav-section { margin:12px 0 5px; padding:0 12px; font-size:11px; color:#cbbad8; letter-spacing:1px }
body.admin-workspace .nav button { justify-content:flex-start; gap:12px; min-height:44px; padding:10px 12px; margin:3px 0; border:1px solid transparent; border-radius:9px; color:#e1d4ea; background:transparent; font-size:14px }
body.admin-workspace .nav button:hover { color:#fff; background:#4a385b }
body.admin-workspace .nav button.active { background:#e4eea7; color:#382a46; border-color:#e4eea7 }
body.admin-workspace .nav button b { display:block; font-weight:500; white-space:nowrap }
body.admin-workspace .nav button.active b { font-weight:700 }
body.admin-workspace .nav-mini { display:flex; width:19px; height:19px; background:transparent; color:inherit; border-radius:0; flex:none }
body.admin-workspace .nav-mini svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round }
body.admin-workspace .side-user { margin-top:16px; border-color:#6d577d; padding:14px 10px 0; overflow-wrap:anywhere }
body.admin-workspace .side-user small { color:#d0bedc }
body.admin-workspace .topbar { height:auto; min-height:78px; padding:14px 28px; gap:20px; background:#fff; backdrop-filter:none; box-shadow:none }
body.admin-workspace .topbar h1 { font-size:18px; white-space:nowrap }
body.admin-workspace .top-actions { gap:12px; flex:1; justify-content:flex-end; min-width:0 }
body.admin-workspace .global-search { display:flex; min-width:0; max-width:460px; flex:1; gap:0; border:1px solid var(--line); border-radius:9px; background:var(--bg); overflow:visible }
body.admin-workspace .global-search input { min-width:0; flex:1; width:100%; border:0; background:transparent; font-size:13px; padding:11px 12px; color:var(--ink); border-radius:9px 0 0 9px; box-shadow:none }
body.admin-workspace .global-search input:focus { box-shadow:none }
body.admin-workspace .global-search:focus-within { border-color:#634b74 }
body.admin-workspace #globalGo { flex:none; white-space:nowrap; padding:10px 12px; min-height:42px; border:0; border-left:1px solid var(--line); border-radius:0 8px 8px 0; background:#fff; font-size:13px }
body.admin-workspace :is(#logout,#apiVersion) { flex:none; white-space:nowrap }
body.admin-workspace .content { padding:28px 30px 48px; max-width:1580px }
body.admin-workspace .hero { gap:24px; margin-bottom:24px }
body.admin-workspace .hero h2 { font-size:27px; font-weight:700; letter-spacing:-.6px; line-height:1.5; margin-bottom:6px }
body.admin-workspace .hero p { font-size:13px; line-height:1.8; max-width:680px }
body.admin-workspace .eyebrow { color:var(--gold); font-size:11px; letter-spacing:1px }
body.admin-workspace :is(.primary,.dark-btn,.ghost,.danger) { min-height:42px; border-radius:9px; padding:10px 16px; font-size:14px; font-weight:500; box-shadow:none; transition:background-color .14s,border-color .14s; max-width:100% }
body.admin-workspace .primary { background:#e4eea7; color:#332a3e; border:1px solid #cdd998; font-weight:700 }
body.admin-workspace .primary:hover:not(:disabled) { background:#dce898; border-color:#b6c57f }
body.admin-workspace .dark-btn { background:#634b74; color:#fff }
body.admin-workspace .ghost { color:var(--ink); background:#fff; border-color:var(--line) }
body.admin-workspace .ghost:hover:not(:disabled) { background:var(--panel2); border-color:#c9bbd2 }
body.admin-workspace .danger { color:#af3e42; border-color:#edcdd1; background:#fff5f6 }
body.admin-workspace .filters { gap:10px }
body.admin-workspace :is(.filters input,.filters select,.input,.global-search input) { min-height:44px }
body.admin-workspace :is(.filters input,.filters select,.input) { border-color:#c9bbd2; border-radius:8px; background:#fff; color:var(--ink); font-size:14px }
body.admin-workspace :is(input,textarea)::placeholder { color:var(--muted); opacity:1 }
body.admin-workspace .input:focus-within { border-color:#634b74; box-shadow:none }
body.admin-workspace .input textarea { min-height:100px; line-height:1.7 }
body.admin-workspace .field label { font-weight:600; font-size:13px }
body.admin-workspace .pulse-strip { background:var(--panel2); color:var(--muted); border:1px solid var(--line); border-radius:10px; padding:12px 16px; gap:10px 20px; line-height:1.75 }
body.admin-workspace .cards { gap:16px; margin:20px 0; grid-template-columns:repeat(4,minmax(0,1fr)) }
body.admin-workspace .stat { box-shadow:none; padding:20px; border-radius:12px }
body.admin-workspace .stat .value { font-size:30px; font-weight:650; line-height:1.3; margin:12px 0 6px }
body.admin-workspace .stat.gold { background:#382a46; border-color:#4b3b5b }
body.admin-workspace .stat.gold :is(.label,.sub) { color:#d3c3df }
body.admin-workspace .stat.gold .value { color:#e4eea7 }
body.admin-workspace .panel { border-radius:12px; box-shadow:none }
body.admin-workspace .panel-head { padding:18px 20px; gap:16px }
body.admin-workspace .panel-head h3 { font-size:16px; font-weight:650 }
body.admin-workspace .panel-body { padding:20px }
body.admin-workspace .table-wrap { scrollbar-color:#c9bbd2 var(--panel2); overscroll-behavior-x:contain }
body.admin-workspace .table th { font-size:12px; font-weight:600; letter-spacing:.2px; color:var(--muted); background:#f5f2f8; padding:13px 16px }
body.admin-workspace .table td { padding:14px 16px; border-color:var(--line); font-size:13px }
body.admin-workspace .table tr:hover td { background:#f8f6fa }
body.admin-workspace .row-actions { gap:6px }
body.admin-workspace .row-actions button { color:#634b74; min-height:34px; padding:7px 9px; border-radius:6px; font-size:13px }
body.admin-workspace .row-actions button:hover { background:var(--panel2) }
body.admin-workspace .badge { border-radius:6px; background:var(--panel2); color:var(--muted); padding:4px 8px }
body.admin-workspace .badge.green { color:#267052; background:#eaf5ef }
body.admin-workspace .badge.red { color:#af3e42; background:#fceff0 }
body.admin-workspace .badge.gold { color:#765021; background:#faf0df }
body.admin-workspace .badge.blue { color:#4c5e91; background:#eef0fa }
body.admin-workspace :is(.list-item,.metric-line,.mini-stat) { border-color:var(--line) }
body.admin-workspace :is(.progress,.rank-bar) { background:var(--panel2); height:6px }
body.admin-workspace :is(.progress span,.rank-bar i,.bar) { background:#806491 }
body.admin-workspace .bar.alt { background:#b7c980 }
body.admin-workspace .rank-top em { background:var(--panel2); color:var(--gold) }
body.admin-workspace .notice { background:#f5f1f8; border-color:#806491; line-height:1.8; color:var(--ink); font-size:13px }
body.admin-workspace .notice.red { color:#92363d; background:#fff2f3; border-color:#af3e42 }
body.admin-workspace :is(.feedback-ticket-info,.admin-feedback-msg) { background:var(--panel2) }
body.admin-workspace .admin-feedback-msg.admin { background:#493957; color:#fff }
body.admin-workspace .admin-feedback-msg small { opacity:1 }
body.admin-workspace .modal-back { background:#21172db3; backdrop-filter:blur(3px) }
body.admin-workspace .modal { background:#fff; border-radius:16px; box-shadow:0 24px 80px #21152d26; border:1px solid var(--line) }
body.admin-workspace .modal-head { padding:18px 24px; align-items:center }
body.admin-workspace .modal-head h3 { font-size:20px; font-weight:650 }
body.admin-workspace .close { border-radius:9px; background:var(--panel2); color:var(--muted); font-size:22px; line-height:1 }
body.admin-workspace .modal-body { padding:24px }
body.admin-workspace .modal-foot { background:#fff; padding:16px 24px; gap:10px }
body.admin-workspace .search-result { border-radius:9px; font-size:14px; padding:14px }
body.admin-workspace .search-result:hover { background:var(--panel2); border-color:#c9bbd2 }
body.admin-workspace .code { color:#e4eea7; background:#382a46 }
body.admin-workspace .big-number { color:#634b74 }
body.admin-workspace .toast { background:#382a46; line-height:1.7; font-size:14px; border-radius:10px }
body.admin-workspace .toast.err { background:#92363d }
@media(max-width:1180px) {
  body.admin-workspace .cards { grid-template-columns:repeat(2,minmax(0,1fr)) }
  body.admin-workspace .hero { flex-wrap:wrap; align-items:flex-start; gap:16px }
  body.admin-workspace .hero>.filters { width:100% }
}
@media(max-width:1000px) and (min-width:641px) {
  body.admin-workspace .shell { grid-template-columns:190px minmax(0,1fr) }
  body.admin-workspace .sidebar { width:190px; padding:20px 12px 14px }
  body.admin-workspace .nav button { padding:10px; gap:9px; font-size:13px }
  body.admin-workspace .side-brand { padding:0 5px 20px; gap:8px }
  body.admin-workspace .side-brand div { display:block }
  body.admin-workspace .side-brand strong { font-size:20px }
  body.admin-workspace .side-brand small { font-size:10px }
  body.admin-workspace .nav-section,body.admin-workspace .side-user { display:block }
  body.admin-workspace .topbar { flex-wrap:wrap; gap:12px; padding:16px 20px }
  body.admin-workspace .top-actions { flex-basis:100%; justify-content:flex-start }
  body.admin-workspace .top-actions .live { display:flex }
  body.admin-workspace .content { padding:24px 20px 40px }
}
@media(max-width:640px) {
  body.admin-workspace .shell { display:block }
  body.admin-workspace .sidebar { width:100%; position:relative; padding:14px 14px 10px; height:auto; inset:auto; gap:10px; overflow:hidden }
  body.admin-workspace .side-brand { padding:0 3px; justify-content:flex-start; gap:9px }
  body.admin-workspace .side-brand img { width:32px; height:32px }
  body.admin-workspace .side-brand div { display:flex; gap:12px; align-items:center }
  body.admin-workspace .side-brand strong { font-size:18px }
  body.admin-workspace .side-brand small { display:block; margin:0; font-size:10px }
  body.admin-workspace .nav { display:flex; flex-wrap:nowrap; gap:6px; overflow-x:auto; padding:0 0 4px; overscroll-behavior-x:contain; width:100% }
  body.admin-workspace .nav-section,body.admin-workspace .side-user { display:none }
  body.admin-workspace .nav button { width:auto; flex:none; gap:6px; padding:9px 12px; margin:0; min-height:40px; height:auto; font-size:13px; border-color:#6d577d }
  body.admin-workspace .nav button .nav-mini { display:none }
  body.admin-workspace .topbar { position:relative; padding:16px; display:block }
  body.admin-workspace .topbar h1 { font-size:18px; margin:0 0 12px }
  body.admin-workspace .top-actions { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center }
  body.admin-workspace .top-actions .global-search { display:flex; grid-column:1/-1; max-width:none; min-width:0; width:100% }
  body.admin-workspace .top-actions .live { display:flex; min-width:0; white-space:normal }
  body.admin-workspace #logout { justify-self:end; min-height:36px; padding:7px 12px }
  body.admin-workspace .content { padding:22px 14px 36px }
  body.admin-workspace .hero h2 { font-size:24px }
  body.admin-workspace .hero p { font-size:13px }
  body.admin-workspace .cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px }
  body.admin-workspace .stat { padding:16px 13px }
  body.admin-workspace .stat .value { font-size:26px }
  body.admin-workspace .stat .sub { line-height:1.7; overflow-wrap:anywhere }
  body.admin-workspace .panel-head,body.admin-workspace .panel-body { padding:16px }
  body.admin-workspace .filters { gap:8px }
  body.admin-workspace .filters :is(input,select) { max-width:100%; width:100% }
  body.admin-workspace .filters>.primary { flex:1; min-width:100px }
  body.admin-workspace .modal-head { padding:16px }
  body.admin-workspace .modal-body { padding:16px }
  body.admin-workspace .modal-foot { padding:14px 16px }
  body.admin-workspace .kv { grid-template-columns:minmax(0,1fr); gap:4px }
  body.admin-workspace .kv dd { margin-bottom:12px }
  body.admin-workspace :is(.split,.admin-grid3) { grid-template-columns:minmax(0,1fr) }
  body.admin-workspace .login-log-search { min-width:0!important }
  body.admin-workspace .login-log-pager { flex-wrap:wrap; gap:10px }
}
@media(prefers-reduced-motion:reduce) {
  body.admin-workspace * { transition:none!important; animation:none!important; scroll-behavior:auto!important }
}

/* Hidden foundation inputs still preserve the effective module save contract. */
.module-grid label[hidden]{display:none!important}
/* Keep the editing area usable even when a ledger has a long business name. */
body.admin-workspace .modal-head h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.45;max-height:2.9em}

/* V4.9.11: compact controls within existing investigation layout. */
.admin-read-snapshot .ghost{margin:8px 0 0 12px}.admin-data-filter label .admin-option-trigger{display:block;font-size:12px;padding:6px 9px;margin-top:5px}.admin-filter-basis,[data-filter-draft]{flex-basis:100%;margin:4px 0}.admin-facts-panel{margin-top:12px}.admin-facts-panel>summary{padding:16px 20px;cursor:pointer}.admin-facts-panel .admin-domain-item>summary{cursor:pointer;padding:8px}.admin-facts-panel .filters{margin-top:12px}
