:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;color:#202d45;background:#f5f7fb;font-synthesis:none;--blue:#2457e8;--muted:#7b879c;--line:#e8ecf3;--red:#c34450}*{box-sizing:border-box}body{margin:0;font-size:14px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"tnum" 1}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dfe5ef;border-radius:7px;background:white;color:#35425b;padding:9px 14px;transition:background .15s}button:hover{background:#f0f4fc}button:disabled{opacity:.42;cursor:not-allowed}button.primary{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 3px 6px #2457e81a}button.primary:hover{background:#1948cf}button.quiet{background:none;border-color:transparent;color:#77839a}button.danger{color:var(--red);border-color:#f0d7da;background:#fff9f9}a{color:var(--blue);text-decoration:none}input,select,textarea{background:white;border:1px solid #dfe5ef;border-radius:7px;padding:10px 12px;min-width:0;color:#25324b}input:focus,select:focus,textarea:focus{outline:2px solid #c5d5ff;border-color:#8aa9ff}input[type=checkbox]{accent-color:var(--blue);width:16px;height:16px;vertical-align:middle}label{display:flex;flex-direction:column;gap:8px;color:#556079;font-size:13px}h1,h2,h3,p{margin:0}h1{font-size:29px;font-weight:650;letter-spacing:-.7px;margin:7px 0 9px}h2{font-size:16px;font-weight:650}h3{font-size:16px}p{color:var(--muted);line-height:1.8}.sidebar{position:fixed;inset:0 auto 0 0;width:220px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:31px 18px}.brand{display:flex;align-items:center;gap:11px;color:#182945;font-size:21px;font-weight:700;padding:0 6px;letter-spacing:-.5px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--blue);color:#fff;font-size:25px;font-weight:750}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#929db0;margin-top:4px}.nav-caption{font-size:11px;color:#a0a8b9;margin:48px 15px 15px}.nav{display:flex;align-items:center;gap:14px;border:0;width:100%;text-align:left;padding:13px 16px;margin:5px 0;font-size:14px;color:#69758b}.nav>span{font-size:20px;width:20px;font-weight:400}.nav.active{color:var(--blue);background:#edf2ff;font-weight:600}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:24px 10px 0;font-size:12px;color:#657189}.sidebar-bottom i{display:inline-block;background:#91a4c0;width:7px;height:7px;border-radius:50%;margin-right:8px}.sidebar-bottom small{display:block;margin:10px 0 0 15px;font-size:10px;color:#a3abba}.workspace{margin-left:220px}header{height:78px;border-bottom:1px solid var(--line);background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 38px}.breadcrumb{color:#8b95a8;font-size:13px}.breadcrumb span{margin:0 14px;color:#d3d8e2}.breadcrumb strong{color:#42506a;font-weight:500}.header-actions,.row{display:flex;align-items:center;gap:9px}.pill{display:inline-flex;border-radius:20px;padding:6px 11px;font-size:11px;background:#f1f4fa;color:#708098}.pill.good{background:#e8f7f0;color:#338264}.pill.bad{background:#fff0f0;color:#bd5662}.pill.warn{background:#fff6df;color:#a9822b}main{max-width:1580px;margin:auto;padding:35px 38px 50px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{color:#8b96aa;font-size:10px;letter-spacing:2px;font-weight:650}.page-heading p{font-size:13px}.stats{display:grid;grid-template-columns:1.35fr 1fr 1.15fr .9fr;gap:18px;margin-bottom:26px}.stats article{background:#fff;border:1px solid var(--line);padding:24px;border-radius:11px;min-height:143px}.stats article>span{display:block;font-size:12px;color:#8792a6}.stats strong{display:block;font-size:29px;font-weight:600;letter-spacing:-.6px;margin:12px 0 9px;overflow-wrap:anywhere}.stats small{font-size:10px;color:#9da7b8}.stats .wallet{background:#2457e8;color:#fff;border-color:transparent}.wallet>span,.wallet small{color:#c3d1ff!important}.wallet strong{font-size:28px}.panel{border:1px solid var(--line);border-radius:11px;background:white;overflow:hidden}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 24px;border-bottom:1px solid var(--line)}.inline-label{display:flex;flex-direction:row;align-items:center;gap:5px;font-size:11px;color:#8a95a9}.filters{display:flex;gap:14px;padding:22px 24px;align-items:end}.filters label{width:150px;font-size:11px}.filters .search-label{flex:1;max-width:320px}.filters button{height:40px}.selection-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;background:#fafbfe;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;color:#929bad}.selection-bar button{font-size:11px;padding:7px 10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:#fcfdff;text-align:left;font-size:11px;font-weight:500;color:#8b95a9;padding:16px 17px;border-bottom:1px solid var(--line)}td{padding:18px 17px;border-bottom:1px solid #f0f2f7;font-size:12px}th:first-child,td:first-child{padding-left:24px;width:46px}td small{display:block;color:#96a1b3;margin-top:5px;font-size:10px}.mono{font-family:"Cascadia Code",Consolas,monospace}.table-action{color:var(--blue);border:0;background:none;padding:4px;font-size:12px}.empty{text-align:center;padding:68px 20px;white-space:normal}.empty p{margin:10px 0 18px;font-size:12px}.empty-icon{font-size:34px;color:#92a9e8;background:#f0f4ff;border-radius:16px;width:68px;height:68px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.pagination{padding:17px 24px;display:flex;justify-content:space-between;align-items:center;color:#8d98ac;font-size:11px}.pagination button{font-size:11px;padding:6px 11px}#pageNumber{padding:0 8px}.footnote{font-size:11px;margin-top:17px;line-height:1.9}.notice{padding:13px 17px;margin-bottom:22px;border:1px solid #ccdafc;background:#edf3ff;color:#345bb2;line-height:1.7;border-radius:8px}.notice.error{background:#fff2f2;border-color:#f1d4d4;color:#b84b56}.form-panel{max-width:960px}.form-grid{padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-footer{padding:22px 28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.form-footer p{font-size:11px}.export-panel{padding-bottom:22px}.export-panel textarea{display:block;width:calc(100% - 48px);margin:20px 24px;min-height:300px;border-color:var(--line);background:#fafbfe;resize:vertical;font-family:Consolas,monospace;font-size:13px;line-height:1.9}.export-panel .footnote{margin:0 24px}progress{display:block;width:calc(100% - 48px);height:5px;margin:22px 24px 0;accent-color:var(--blue)}.rules{padding:22px 24px;margin-top:20px;font-size:12px}.rules summary{cursor:pointer;color:#536583}.rules p{margin-top:14px}.error-list{white-space:pre-wrap;color:var(--red);font-size:12px;line-height:1.8;padding:0 24px 15px}.settings-panel{max-width:900px;padding:28px}dl{margin:20px 0;display:grid;grid-template-columns:160px 1fr;gap:16px;font-size:13px}dt{color:#8692a6}dd{margin:0;overflow-wrap:anywhere}.setup-note{background:#f6f8fc;padding:20px;border-radius:8px;margin:28px 0;font-size:12px}.setup-note p{margin-top:8px}code{overflow-wrap:anywhere}.job{padding:22px 24px;border-bottom:1px solid var(--line)}.job-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.job-top>div{display:flex;gap:12px;align-items:center}.job p{font-size:11px;margin:10px 0}.job pre{font-size:11px;line-height:1.9;white-space:pre-wrap;background:#fafbfe;padding:15px;border-radius:6px;max-height:280px;overflow:auto}.job small{color:#94a0b1;font-size:11px}dialog{border:1px solid var(--line);border-radius:14px;padding:30px;width:min(510px,calc(100% - 30px));color:#24324b;box-shadow:0 24px 100px #152d5526}dialog::backdrop{background:#17264065;backdrop-filter:blur(3px)}dialog p{font-size:13px;margin:13px 0 22px}dialog h2{font-size:21px}.dialog-heading{display:flex;align-items:center;gap:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}dialog pre{white-space:pre-wrap;line-height:1.9;background:#f6f8fc;padding:16px;font-size:12px;max-height:230px;overflow:auto}dialog label{margin:16px 0 0}.error-text{color:var(--red);font-size:12px}#cardDetails dd{font-family:Consolas,monospace}body.working{cursor:progress}[hidden]{display:none!important}@media(min-width:1600px){main{padding-top:45px}}@media(max-width:1150px){.sidebar{width:190px;padding:28px 12px}.workspace{margin-left:190px}.brand{font-size:18px}main{padding:28px 24px}.stats{grid-template-columns:1fr 1fr}.selection-bar{align-items:flex-start;flex-direction:column}.selection-bar .row{flex-wrap:wrap}}@media(max-width:750px){.sidebar{position:static;width:100%;padding:16px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:19px}.brand small,.nav-caption,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:14px}.nav{width:auto;white-space:nowrap;padding:10px;margin:0;font-size:12px}.nav>span{display:none}.workspace{margin:0}header{height:58px;padding:0 20px}main{padding:25px 16px}.page-heading{align-items:flex-start}h1{font-size:25px}.page-heading>button{font-size:12px;white-space:nowrap}.stats{gap:10px}.stats article{padding:17px;min-height:125px}.stats strong{font-size:23px}.wallet strong{font-size:23px}.panel-title{padding:18px;flex-wrap:wrap}.filters{padding:18px;flex-wrap:wrap}.filters label{width:calc(50% - 7px)}.filters .search-label{max-width:none}.selection-bar{padding:12px 18px}.inline-label{display:none}.form-grid{grid-template-columns:1fr;padding:22px}.form-footer{flex-direction:column;align-items:stretch}.form-footer button{width:100%}.export-panel .panel-title .row{flex-wrap:wrap}.job-top,.job-top>div{flex-wrap:wrap}dl{grid-template-columns:110px 1fr}.setup-note{padding:15px}.settings-panel{padding:22px}.pagination{padding:15px}.footnote{font-size:10px}}


/* ===== Desktop layout polish: centered workspace content ===== */
@media (min-width: 751px) {
  main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 32px 38px 52px;
  }
  main > section {
    width: min(100%, 1320px);
    margin-left: auto;
    margin-right: auto;
  }
  .form-panel,
  .settings-panel {
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }
  .page-heading {
    margin-bottom: 24px;
  }
  .stats {
    gap: 16px;
  }
  .panel {
    box-shadow: 0 8px 28px rgba(31, 52, 96, 0.045);
  }
  .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
    row-gap: 22px;
  }
}

@media (min-width: 1500px) {
  main {
    padding-left: 52px;
    padding-right: 52px;
  }
  main > section {
    width: min(100%, 1360px);
  }
}


/* ZLK Card UI polish */
:root{
  --blue:#315bea;
  --blue-2:#4f73f3;
  --blue-soft:#eef3ff;
  --ink:#1f2b44;
  --muted:#7b879c;
  --line:#e4e9f2;
  --shadow-sm:0 2px 8px rgba(31,43,68,.06);
  --shadow-md:0 8px 24px rgba(31,43,68,.10);
}
body{background:linear-gradient(180deg,#f8faff 0,#f4f7fb 100%)}
.brand{gap:11px;font-weight:760;letter-spacing:-.01em;color:var(--ink)}
.brand-mark{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(145deg,var(--blue-2),var(--blue));
  color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800;
  box-shadow:0 8px 20px rgba(49,91,234,.24), inset 0 1px 0 rgba(255,255,255,.28)
}
.brand small{margin-top:2px;letter-spacing:.08em;color:#8a96aa;font-weight:650}
.sidebar{border-right:1px solid #e8edf5;box-shadow:8px 0 28px rgba(31,43,68,.025)}
.nav{
  border:1px solid transparent!important;border-radius:11px!important;
  min-height:43px;padding:0 13px!important;font-weight:650!important;
  transition:all .18s ease!important;
}
.nav:hover{background:#f4f7ff!important;color:#315bea!important;transform:translateX(2px)}
.nav.active{
  background:linear-gradient(135deg,#edf2ff,#e7efff)!important;
  color:#2852df!important;border-color:#dce5ff!important;
  box-shadow:inset 3px 0 0 #315bea,0 4px 12px rgba(49,91,234,.07)!important
}
button{
  min-height:40px;border-radius:10px;border:1px solid #dce3ee;
  padding:9px 15px;font-weight:650;letter-spacing:.005em;
  box-shadow:0 1px 2px rgba(31,43,68,.025);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease;
}
button:hover:not(:disabled){transform:translateY(-1px);border-color:#cdd7e8;background:#f8faff;box-shadow:var(--shadow-sm)}
button:active:not(:disabled){transform:translateY(0);box-shadow:none}
button.primary{
  border-color:#315bea!important;
  background:linear-gradient(135deg,#4c72f5 0%,#315bea 55%,#2751df 100%)!important;
  color:white!important;
  box-shadow:0 7px 16px rgba(49,91,234,.20),inset 0 1px 0 rgba(255,255,255,.22)!important
}
button.primary:hover:not(:disabled){
  background:linear-gradient(135deg,#5a7cf6,#315bea 58%,#234bd1)!important;
  box-shadow:0 9px 22px rgba(49,91,234,.26)!important
}
button.quiet{box-shadow:none!important;background:transparent!important}
button.danger{background:#fff7f8!important;border-color:#f1cfd4!important;color:#bf3d49!important}
button.danger:hover:not(:disabled){background:#fff0f2!important;border-color:#e9b8bf!important}
.table-action{
  color:#315bea!important;background:#f5f8ff!important;border-color:#dce5ff!important;
  border-radius:9px!important;min-height:34px!important;padding:7px 11px!important
}
#refreshCards,#loadCatalog,#refreshJobs,#checkConnection,#exportSelected,#exportFiltered,#copyExport,#clearExport,#downloadExport{
  border-radius:10px
}
.panel{border:1px solid #e5eaf2;box-shadow:0 5px 22px rgba(35,49,78,.055);border-radius:16px}
.stats article{border-radius:15px;box-shadow:0 4px 16px rgba(35,49,78,.045)}
.wallet{background:linear-gradient(145deg,#4169ef 0%,#2853df 100%)!important;box-shadow:0 10px 25px rgba(49,91,234,.20)!important}
input,select,textarea{border-radius:10px;border-color:#dce3ee;transition:border-color .16s ease,box-shadow .16s ease}
input:focus,select:focus,textarea:focus{outline:none;border-color:#8ba7ff;box-shadow:0 0 0 3px rgba(49,91,234,.10)}
.page-heading h1{letter-spacing:-.025em}
.notice{border-radius:12px}
dialog{border-radius:18px;box-shadow:0 24px 70px rgba(24,37,64,.22)}

/* 共享账户余额：Plus / 5x / 20x 等实时余额 */
.shared-wallets{display:flex;flex-direction:column}
.shared-balance-list{display:grid;gap:7px;margin:12px 0 9px}
.shared-balance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;border:1px solid #edf0f6;border-radius:8px;background:#fafbfe}
.shared-balance-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4d5b74;font-size:12px;font-weight:600}
.shared-balance-row strong{display:inline!important;margin:0!important;font-size:15px!important;letter-spacing:0!important;white-space:nowrap;color:#1f2f4d}
.shared-balance-empty{color:#9ba5b6;font-size:12px;padding:10px 0}
@media(max-width:750px){.shared-balance-row{padding:6px 8px}.shared-balance-row strong{font-size:14px!important}}


/* ===== 共享账户交易记录 ===== */
.transaction-account-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 20px}
.transaction-summary-card{background:#fff;border:1px solid #e5eaf2;border-radius:15px;padding:18px 20px;box-shadow:0 5px 18px rgba(35,49,78,.045);display:grid;grid-template-columns:1fr auto;gap:7px 14px;align-items:center}
.transaction-summary-card div{min-width:0}.transaction-summary-card span{display:block;font-size:15px;font-weight:750;color:#24324b}.transaction-summary-card small{display:block;margin-top:5px;color:#97a1b3;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.transaction-summary-card strong{font-size:20px;color:#244ddd;letter-spacing:-.02em}.transaction-summary-card em{grid-column:1/-1;font-style:normal;color:#8b96aa;font-size:11px}
.transaction-summary-empty{grid-column:1/-1;background:#fff;border:1px dashed #dfe5ef;border-radius:14px;padding:24px;text-align:center;color:#8b96aa}
.transaction-groups{display:grid;gap:18px}.transaction-group{overflow:hidden}.transaction-group-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbfcff)}
.transaction-group-head h2{font-size:18px}.transaction-group-head p{margin-top:5px;font-size:11px;color:#8995a8}.transaction-group-head p strong{color:#315bea}.transaction-table-wrap{overflow:auto}.transaction-table{min-width:1180px}.transaction-table th,.transaction-table td{padding-top:15px;padding-bottom:15px}.transaction-table th:first-child,.transaction-table td:first-child{padding-left:24px;width:auto}.transaction-table td small{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-table .tx-id{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty.compact{padding:40px 20px}.transaction-error{padding:28px 24px;color:#b84b56;background:#fff7f7;font-size:12px}
@media(max-width:1100px){.transaction-account-summary{grid-template-columns:1fr 1fr}.transaction-summary-card strong{font-size:18px}}
@media(max-width:750px){.transaction-account-summary{grid-template-columns:1fr}.transaction-group-head{align-items:flex-start;flex-direction:column}.transaction-group-head button{width:100%}.transaction-summary-card{padding:16px}}


/* ===== 交易记录最终优化：时间、实际扣款、字体与表格质感 ===== */
.transaction-table{
  min-width:1540px;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  font-variant-numeric:tabular-nums;
  letter-spacing:.005em;
}
.transaction-table thead th{
  position:sticky;
  top:0;
  z-index:1;
  background:#fbfcff;
  color:#68758e;
  font-size:11px;
  font-weight:650;
  letter-spacing:.025em;
  border-bottom:1px solid #e5eaf2;
}
.transaction-table tbody td{
  color:#34415f;
  font-size:12px;
  font-weight:500;
  line-height:1.45;
  background:#fff;
  transition:background .16s ease;
}
.transaction-table tbody tr:hover td{background:#f8faff}
.transaction-table .mono{
  font-family:"SFMono-Regular","Cascadia Code","JetBrains Mono",Consolas,monospace;
  font-size:11.5px;
  font-variant-numeric:tabular-nums;
}
.transaction-time{
  min-width:164px;
  white-space:nowrap;
  color:#34415f!important;
  font-weight:550!important;
  font-variant-numeric:tabular-nums;
}
.transaction-table .tx-amount{font-weight:650;color:#273650}
.transaction-table .tx-actual{
  min-width:126px;
  color:#2658e6;
  font-weight:750;
  letter-spacing:.01em;
}
.transaction-table .tx-base-currency{
  min-width:88px;
  color:#52617a;
  font-weight:650;
}
.transaction-table .tx-merchant span{display:block;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550;color:#30405d}
.transaction-table .tx-merchant small{max-width:220px;color:#97a1b3;font-size:10px;margin-top:5px}
.transaction-group-head h2{font-weight:760;letter-spacing:-.015em;color:#1f2b44}
.transaction-group-head p{font-weight:450}
.transaction-group-head button{font-weight:650}
@media(max-width:750px){
  .transaction-table{min-width:1450px}
  .transaction-table th,.transaction-table td{padding-left:13px;padding-right:13px}
}


/* 卡片管理 · 修改限额 */
.card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.card-actions .table-action{font-weight:650;letter-spacing:.01em;border:1px solid transparent;border-radius:8px;padding:7px 10px;transition:all .18s ease}
.card-actions .table-action:hover{background:#f2f6ff;border-color:#d9e3ff;box-shadow:none;transform:none}
.card-actions .limit-action{color:#5b5bd6;background:#f7f5ff;border-color:#e8e3ff}
.card-actions .limit-action:hover{background:#f1edff;border-color:#d8ceff}
.limit-dialog{width:min(620px,calc(100% - 30px));padding:0;overflow:hidden}
.limit-dialog form{padding:28px}
.limit-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}
.limit-dialog-head h2{margin-top:5px;font-size:23px;letter-spacing:-.4px}
.dialog-close{width:36px;height:36px;padding:0;border-radius:10px;font-size:22px;line-height:1;color:#8090a8;background:#f7f9fd}
.limit-card-summary{display:grid;grid-template-columns:1.1fr .8fr 1.1fr;gap:10px;padding:14px;background:#f7f9fd;border:1px solid #e9edf5;border-radius:12px;margin-bottom:22px}
.limit-card-summary>div{min-width:0;padding:7px 10px}
.limit-card-summary span{display:block;font-size:10px;color:#98a3b6;margin-bottom:7px}
.limit-card-summary strong{display:block;font-size:13px;color:#263652;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.limit-card-summary small{display:block;font-size:10px;color:#9ba6b8;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.limit-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.limit-form-grid label:first-child{grid-column:1/-1}
.limit-form-grid input{height:44px;font-size:14px;font-variant-numeric:tabular-nums}
.limit-tip{font-size:11px;margin:17px 0 0;line-height:1.8;color:#8d98ab}
.limit-dialog .error-text{min-height:18px;margin:10px 0 0}
.limit-dialog .dialog-actions{padding-top:18px;border-top:1px solid #eef1f6;margin-top:18px}
@media(max-width:750px){.card-actions{flex-direction:column;align-items:stretch}.card-actions .table-action{text-align:left}.limit-card-summary{grid-template-columns:1fr}.limit-form-grid{grid-template-columns:1fr}.limit-form-grid label:first-child{grid-column:auto}.limit-dialog form{padding:22px}}


/* ===== 连接状态 · 极简呼吸灯 ===== */
.connection-only{
  min-height:calc(100vh - 165px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:36px 18px 70px;
}
.connection-status-card{
  width:min(680px,100%);
  min-height:390px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:54px 44px 42px;
  background:rgba(255,255,255,.92);
  border:1px solid #e5eaf2;
  border-radius:24px;
  box-shadow:0 18px 55px rgba(35,49,78,.08);
}
.connection-orb-wrap{
  height:148px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:8px;
}
.connection-orb{
  position:relative;
  width:76px;
  height:76px;
  border-radius:50%;
  background:#7c8aa5;
  box-shadow:0 0 0 0 rgba(124,138,165,.28);
  transition:background .28s ease,box-shadow .28s ease,transform .28s ease;
}
.connection-orb::before,
.connection-orb::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  pointer-events:none;
}
.connection-orb::before{background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,0) 46%)}
.connection-orb::after{animation:connectionPulse 2.15s ease-out infinite;border:1px solid currentColor;opacity:.36}
.connection-orb span{
  position:absolute;
  inset:19px;
  border-radius:50%;
  background:rgba(255,255,255,.34);
  box-shadow:inset 0 0 18px rgba(255,255,255,.35);
}
.connection-orb.online{background:#24b47e;color:#24b47e;box-shadow:0 0 34px rgba(36,180,126,.32)}
.connection-orb.checking{background:#4169ef;color:#4169ef;box-shadow:0 0 34px rgba(65,105,239,.28)}
.connection-orb.waiting{background:#e1a63a;color:#e1a63a;box-shadow:0 0 30px rgba(225,166,58,.25)}
.connection-orb.offline{background:#df5b67;color:#df5b67;box-shadow:0 0 30px rgba(223,91,103,.25)}
.connection-orb.checking::after{animation-duration:1.25s}
@keyframes connectionPulse{
  0%{transform:scale(.92);opacity:.42;box-shadow:0 0 0 0 currentColor}
  68%{transform:scale(1.75);opacity:0;box-shadow:0 0 0 16px transparent}
  100%{transform:scale(1.82);opacity:0}
}
.connection-copy{max-width:520px}
.connection-copy .eyebrow{margin-bottom:10px}
.connection-copy h1{font-size:31px;margin:0 0 10px;font-weight:720;letter-spacing:-.035em;color:#1f2d48}
.connection-copy p{font-size:13px;line-height:1.8;color:#8793a8}
.connection-meta{margin-top:20px;display:flex;align-items:center;justify-content:center;gap:9px;color:#9aa4b5;font-size:11px}
.connection-meta i{width:3px;height:3px;border-radius:50%;background:#c0c8d5}
.connection-refresh{margin-top:30px;border-radius:11px;padding:9px 18px;font-size:12px;font-weight:650;color:#53627c;background:#fff;border-color:#e1e6ef;box-shadow:0 3px 10px rgba(35,49,78,.04)}
.connection-refresh:hover{background:#f6f8fc;border-color:#d5dce8}
.connection-status-card[data-state="online"] .connection-refresh{color:#258463}
.connection-status-card[data-state="offline"] .connection-refresh{color:#b94f5a}
@media(max-width:750px){
  .connection-only{min-height:calc(100vh - 150px);padding:20px 0 55px}
  .connection-status-card{min-height:340px;padding:42px 22px 34px;border-radius:18px}
  .connection-orb-wrap{height:124px}
  .connection-orb{width:66px;height:66px}
  .connection-copy h1{font-size:27px}
}

/* ==========================================================================
   ZLK Card · UI Final Polish v3
   仅做视觉增强：不改页面结构、不改功能、不改主要宽高/网格/定位
   ========================================================================== */

:root{
  --zlk-ui-blue:#315bea;
  --zlk-ui-blue-2:#5b7cf6;
  --zlk-ui-blue-deep:#274ed7;
  --zlk-ui-ink:#1d2940;
  --zlk-ui-muted:#7d899e;
  --zlk-ui-line:#e7ebf3;
  --zlk-ui-soft:#f6f8fc;
  --zlk-ui-panel:#ffffff;
  --zlk-ui-shadow-xs:0 1px 2px rgba(23,39,70,.035);
  --zlk-ui-shadow-sm:0 5px 16px rgba(23,39,70,.055);
  --zlk-ui-shadow-md:0 12px 32px rgba(23,39,70,.075);
}

/* 页面底色与文字 */
html{background:#f5f7fb}
body{
  color:var(--zlk-ui-ink);
  background:
    radial-gradient(circle at 72% 0%,rgba(64,105,239,.055),transparent 27%),
    linear-gradient(180deg,#f9fbff 0%,#f5f7fb 42%,#f5f7fb 100%);
}
body,button,input,select,textarea{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
::selection{background:rgba(49,91,234,.16);color:#15233d}

/* 左侧栏：只增强质感，不改变尺寸 */
.sidebar{
  background:rgba(255,255,255,.985);
  border-right-color:#e8edf5;
  box-shadow:10px 0 34px rgba(32,49,82,.025);
}
.brand-mark{
  background:linear-gradient(145deg,#5c7df6 0%,#315bea 55%,#2851da 100%);
  box-shadow:
    0 10px 24px rgba(49,91,234,.22),
    inset 0 1px 0 rgba(255,255,255,.34);
}
.nav{
  border-radius:11px!important;
  transition:
    background-color .18s ease,
    color .18s ease,
    box-shadow .18s ease,
    transform .18s ease!important;
}
.nav:hover{
  background:#f5f8ff!important;
  color:#315bea!important;
  transform:translateX(2px);
}
.nav.active{
  background:linear-gradient(135deg,#eef3ff 0%,#e8efff 100%)!important;
  color:#2852df!important;
  box-shadow:
    inset 3px 0 0 #315bea,
    0 6px 16px rgba(49,91,234,.065)!important;
}

/* 顶部栏 */
header{
  background:rgba(255,255,255,.94);
  border-bottom-color:#e8edf5;
  box-shadow:0 1px 0 rgba(31,43,68,.012);
  backdrop-filter:saturate(125%) blur(8px);
}

/* 标题 */
.eyebrow{color:#8794aa;font-weight:700}
.page-heading h1{
  color:#17233a;
  text-shadow:0 1px 0 rgba(255,255,255,.7);
}
.page-heading p{color:#8390a5}

/* 卡片、面板 */
.panel,
.stats article,
.settings-panel,
.connection-status-card{
  border-color:var(--zlk-ui-line)!important;
  background:rgba(255,255,255,.985);
  box-shadow:
    0 1px 2px rgba(23,39,70,.025),
    0 10px 28px rgba(23,39,70,.052);
}
.panel{
  box-shadow:
    0 1px 2px rgba(23,39,70,.025),
    0 12px 34px rgba(23,39,70,.06);
}
.stats article{
  transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease;
}
.stats article:hover{
  border-color:#dde5f2!important;
  box-shadow:
    0 2px 4px rgba(23,39,70,.03),
    0 14px 30px rgba(23,39,70,.075);
  transform:translateY(-1px);
}
.stats .wallet{
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.17),transparent 28%),
    linear-gradient(145deg,#4a6ff0 0%,#315bea 48%,#2850d9 100%)!important;
  box-shadow:
    0 14px 30px rgba(49,91,234,.23),
    inset 0 1px 0 rgba(255,255,255,.25)!important;
}

/* 面板标题条 */
.panel-title{
  background:linear-gradient(180deg,#fff 0%,#fdfefe 100%);
  border-bottom-color:#e8edf5;
}
.panel-title h2{color:#1f2c45}

/* 输入框 */
input,select,textarea{
  background:#fff;
  border-color:#dce4ef;
  box-shadow:inset 0 1px 2px rgba(21,36,65,.018);
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    background .16s ease;
}
input:hover,select:hover,textarea:hover{border-color:#cfd9e8}
input:focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:#88a5ff!important;
  box-shadow:
    0 0 0 3px rgba(49,91,234,.095),
    inset 0 1px 2px rgba(21,36,65,.015)!important;
}

/* 按钮 */
button{
  border-color:#dde4ee;
  box-shadow:var(--zlk-ui-shadow-xs);
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease!important;
}
button:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:#cfd9e7;
  box-shadow:0 6px 14px rgba(30,47,80,.07);
}
button:active:not(:disabled){
  transform:translateY(0);
  box-shadow:0 1px 2px rgba(30,47,80,.04);
}
button.primary{
  background:
    linear-gradient(135deg,#5a7bf6 0%,#315bea 55%,#284fd7 100%)!important;
  border-color:#315bea!important;
  color:#fff!important;
  box-shadow:
    0 9px 20px rgba(49,91,234,.22),
    inset 0 1px 0 rgba(255,255,255,.25)!important;
}
button.primary:hover:not(:disabled){
  background:
    linear-gradient(135deg,#6684f7 0%,#345fec 52%,#2449ca 100%)!important;
  box-shadow:
    0 12px 25px rgba(49,91,234,.28),
    inset 0 1px 0 rgba(255,255,255,.26)!important;
}
.table-action{
  background:#f6f8ff!important;
  border:1px solid #dfe7ff!important;
  color:#315bea!important;
  box-shadow:none!important;
}
.table-action:hover{
  background:#eef3ff!important;
  border-color:#cfdbff!important;
}

/* 筛选区与已选操作条 */
.filters{background:linear-gradient(180deg,#fff,#fdfefe)}
.selection-bar{
  background:linear-gradient(180deg,#fbfcff,#f8faff);
  border-color:#e8edf5;
}

/* 表格 */
.table-wrap{
  scrollbar-color:#cbd5e4 transparent;
  scrollbar-width:thin;
}
.table-wrap::-webkit-scrollbar,
.transaction-table-wrap::-webkit-scrollbar{height:9px;width:9px}
.table-wrap::-webkit-scrollbar-thumb,
.transaction-table-wrap::-webkit-scrollbar-thumb{
  background:#cad4e3;
  border-radius:999px;
  border:2px solid transparent;
  background-clip:padding-box;
}
.table-wrap::-webkit-scrollbar-thumb:hover,
.transaction-table-wrap::-webkit-scrollbar-thumb:hover{background:#b8c4d6;background-clip:padding-box}
th{
  background:#fbfcfe;
  color:#7e8aa0;
  border-bottom-color:#e8edf5;
}
tbody tr{
  transition:background-color .15s ease,box-shadow .15s ease;
}
tbody tr:hover td{
  background:#f8faff;
}
td{color:#34415b}
td small{color:#99a4b6}

/* 状态标签 */
.pill{
  border:1px solid transparent;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
.pill.good{
  background:#e8f7f0;
  border-color:#d8f0e6;
  color:#2d8261;
}
.pill.warn{
  background:#fff6df;
  border-color:#f5e7bb;
  color:#9a7724;
}
.pill.bad{
  background:#fff0f1;
  border-color:#f2dadd;
  color:#b84c58;
}

/* 提示条 */
.notice{
  background:linear-gradient(180deg,#eef4ff,#eaf1ff);
  border-color:#ccdafe;
  box-shadow:0 4px 16px rgba(49,91,234,.035);
}
.notice.error{
  background:linear-gradient(180deg,#fff5f5,#fff0f1);
  border-color:#f0d3d6;
}

/* 弹窗 */
dialog{
  border-color:#e4e9f2;
  box-shadow:
    0 30px 90px rgba(20,34,62,.24),
    0 4px 14px rgba(20,34,62,.09);
}
dialog::backdrop{
  background:rgba(18,29,49,.44);
  backdrop-filter:blur(5px);
}

/* 空状态 */
.empty-icon{
  background:linear-gradient(145deg,#f3f6ff,#edf2ff);
  color:#7897ef;
  box-shadow:inset 0 0 0 1px #e0e7fb;
}

/* 交易记录 */
.transaction-summary-card{
  border-color:#e5eaf2;
  box-shadow:0 10px 26px rgba(30,47,80,.055);
  transition:box-shadow .18s ease,transform .18s ease;
}
.transaction-summary-card:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(30,47,80,.075);
}
.transaction-group-head{
  background:linear-gradient(180deg,#fff 0%,#fafcff 100%);
}
.transaction-table tbody tr:hover td{background:#f7f9ff}

/* 修改限额弹窗 */
.limit-card-summary{
  background:linear-gradient(180deg,#f8faff,#f5f7fc);
  border-color:#e6ebf3;
}

/* 连接状态卡片 */
.connection-status-card{
  background:
    radial-gradient(circle at 50% 0%,rgba(49,91,234,.045),transparent 36%),
    rgba(255,255,255,.985);
}

/* 轻量加载手感 */
body.working button,
body.working input,
body.working select{transition-duration:.08s}

/* 尊重系统减少动画设置 */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    scroll-behavior:auto!important;
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
}
