:root {
  /* TDesign Mobile-like design tokens */
  --td-brand-color: #0052d9;
  --td-brand-color-hover: #003cab;
  --td-success-color: #00a870;
  --td-warning-color: #ed7b2f;
  --td-error-color: #e34d59;

  --td-bg-color-page: #f5f6f9;
  --td-bg-color-container: #ffffff;
  --td-bg-color-container-hover: #f9fafc;

  --td-text-color-primary: #1f2329;
  --td-text-color-secondary: #4e5969;
  --td-text-color-placeholder: #86909c;

  --td-border-level-1-color: #e7e9ee;
  --td-border-level-2-color: #f0f2f5;

  --td-radius-small: 6px;
  --td-radius-default: 10px;
  --td-radius-large: 14px;
  --td-radius-round: 999px;

  --td-shadow-1: 0 2px 8px rgba(31, 35, 41, 0.06);
  --td-shadow-2: 0 6px 20px rgba(31, 35, 41, 0.08);

  --td-font-size-title: 16px;
  --td-font-size-body: 14px;
  --td-font-size-caption: 12px;
}

body {
  background: var(--td-bg-color-page) !important;
  color: var(--td-text-color-primary) !important;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.5;
  font-size: var(--td-font-size-body);
}

.header-wrap {
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid var(--td-border-level-1-color) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

.header-wrap,
.header-wrap a,
.logo,
.text-grey,
.text-gray,
.text-body1,
.text-body2,
.text-caption,
.weui-tabbar__label {
  color: var(--td-text-color-primary) !important;
}

.logo,
.h1,
h1,
h2,
h3,
.text-h6,
.title {
  font-size: var(--td-font-size-title) !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

p,
span,
label,
input,
select,
textarea,
.text-body1,
.text-body2 {
  font-size: var(--td-font-size-body) !important;
}

.text-caption,
.word-aux,
.tips,
.reason,
.text-grey,
.text-gray {
  font-size: var(--td-font-size-caption) !important;
  color: var(--td-text-color-secondary) !important;
}

.twx-container {
  max-width: 760px;
  margin: 0 auto;
}

.twx-card,
.list-cells,
.list-recode .item,
.form-row,
.input-box,
.account-box,
.cate,
.list-coin,
.balance-box,
.user-info,
.bottomTable,
.weui-dialog,
.weui-half-screen-dialog {
  background: var(--td-bg-color-container) !important;
  border: 1px solid var(--td-border-level-1-color) !important;
  border-radius: var(--td-radius-large) !important;
  box-shadow: var(--td-shadow-1) !important;
  color: var(--td-text-color-primary) !important;
}

.twx-input,
.input-text,
.input-select,
input[type="text"],
input[type="password"],
input[type="number"],
select,
textarea {
  border: 1px solid var(--td-border-level-1-color) !important;
  border-radius: var(--td-radius-default) !important;
  background: var(--td-bg-color-container-hover) !important;
  color: var(--td-text-color-primary) !important;
  padding: 10px 12px;
  min-height: 40px;
}

.twx-input::placeholder,
.input-text::placeholder,
input::placeholder,
textarea::placeholder {
  color: var(--td-text-color-placeholder) !important;
}

.twx-btn-primary,
.btnform,
.btnblue,
.login-btn,
.action-btn-register {
  border-radius: var(--td-radius-round) !important;
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(180deg, var(--td-brand-color), var(--td-brand-color-hover)) !important;
  box-shadow: 0 4px 12px rgba(0, 82, 217, 0.24) !important;
}

.btngrey,
.action-btn-login {
  background: #ffffff !important;
  border: 1px solid var(--td-border-level-1-color) !important;
  border-radius: var(--td-radius-round) !important;
  color: var(--td-text-color-secondary) !important;
  box-shadow: var(--td-shadow-1) !important;
}

.line,
.list-coin .item,
.list-coin .hd,
.weui-tabbar,
.weui-dialog__ft,
.item.arrow {
  border-color: var(--td-border-level-1-color) !important;
}

.list-coin .hd {
  color: var(--td-text-color-secondary) !important;
  font-weight: 600 !important;
  font-size: var(--td-font-size-body) !important;
}

.weui-tabbar {
  background: #fff !important;
  box-shadow: 0 -2px 10px rgba(31, 35, 41, 0.06) !important;
}

.weui-tabbar__item.weui-bar__item_on .weui-tabbar__label {
  color: var(--td-brand-color) !important;
  font-weight: 600 !important;
}
