@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;650;700;750;800&family=Noto+Sans+Thai:wght@400;500;600;700&display=swap');

:root {
  font-family: Inter, 'Noto Sans Thai', 'Leelawadee UI', sans-serif;
  color: var(--ink);
  background: var(--canvas);
  font-size: 15px;
  font-synthesis: none;
  --ink: #1a1a1a;
  --muted: #616679;
  --line: #e8eaf2;
  --panel: #fff;
  --canvas: #fafaff;
  --tint: #f5f8ff;
  --accent: #373273;
  --dark: #161525;
  --lime: #68ceff;
  --app-width: 1296px;
  --gutter: clamp(16px, 3vw, 32px);
  --brand-gradient: linear-gradient(123deg, #064f8f 0%, #000 54%, #390069 100%);
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh}
[hidden]{display:none!important}
h1,h2,p,dl,dd{margin:0}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:wait;opacity:.65}
:focus-visible{outline:3px solid #3676c7;outline-offset:3px}
.sidebar {
  position: sticky;
  z-index: 5;
  top: 0;
  display: flex;
  align-items: center;
  gap: clamp(12px, 2.1vw, 34px);
  min-height: 65px;
  padding: 8px max(var(--gutter), calc((100% - var(--app-width)) / 2));
  background: var(--brand-gradient);
  color: #fff;
}
.brand{display:flex;flex:none;align-items:center;gap:9px;font-size:21px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
/* Mobyx icon exported from the Figma Icon app artwork. */
.brand-mark{width:30px;height:34px;background:center / contain no-repeat url("data:image/png;base64,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")}
.sidebar nav{display:flex;align-items:center;min-width:0;gap:2px;overflow-x:auto;scrollbar-width:thin;padding-block:3px}
.sidebar nav a{display:flex;flex:none;align-items:center;gap:6px;padding:7px 10px;border-radius:7px;white-space:nowrap;font-size:13px;font-weight:600;color:#fff;min-height:37px}
.sidebar nav a span{font:15px Inter,sans-serif;width:17px;text-align:center}
.sidebar nav a:hover,.sidebar .profile:hover{background:#ffffff20}
.sidebar nav a[aria-current=page]{background:#ffffff2e}
.sidebar :focus-visible{outline-color:#fff;outline-offset:-2px}
main{min-width:0}
.topbar{min-height:48px;border-bottom:1px solid var(--line);padding:6px max(var(--gutter), calc((100% - var(--app-width)) / 2));display:flex;align-items:center;justify-content:space-between;background:var(--panel)}
.breadcrumb{font-weight:650;color:var(--muted);font-size:13px}
.badge{border-radius:20px;background:#eeedf9;color:var(--accent);font-weight:700;font-size:12px;padding:7px 11px;display:inline-flex;align-items:center;gap:6px}
.badge span,.quote-status::before{width:7px;height:7px;background:#238649;border-radius:50%;display:inline-block;flex:none}
.page{max-width:calc(var(--app-width) + var(--gutter) + var(--gutter));margin:0 auto;padding:32px var(--gutter) 44px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px}
h1{font-size:clamp(25px,3vw,34px);font-weight:750;letter-spacing:-.05em;line-height:1.3}
h2{font-size:18px;font-weight:700;letter-spacing:-.025em}
.page-heading p{margin-top:5px;color:var(--muted);font-size:14px;line-height:1.6}
.button{border:1px solid transparent;border-radius:8px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;white-space:nowrap;font-weight:650;font-size:13px;color:var(--accent);background:var(--tint)}
.button:hover{filter:brightness(.95)}
.button-outline{background:var(--panel);border-color:#dce0ef}
.overview{display:grid;grid-template-columns:minmax(0,2fr) minmax(215px,1fr);gap:16px}
.balance-card{color:#fff;background:var(--brand-gradient);border-radius:16px;min-height:208px;padding:27px 30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:19px}
.balance-card h2{color:#fff;font-size:14px;font-weight:550;margin-bottom:8px}
.balance-total{font-size:clamp(31px,4vw,50px);line-height:1.08;font-weight:750;letter-spacing:-.065em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.balance-usd{margin-top:8px;color:#eef2ff;font-size:13px}
.quote-card{border-radius:16px;padding:22px;background:var(--tint);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:13px}
.rate-icon{display:grid;place-items:center;color:var(--accent);background:#e8ebfa;border-radius:9px;width:36px;height:36px;font-size:21px}
.quote-card h2{font-size:13px;color:var(--accent);margin-bottom:5px}
.quote-card strong{display:block;font-size:clamp(19px,2.2vw,27px);letter-spacing:-.055em;white-space:nowrap}
.quote-card p{color:var(--muted);font-size:12px;line-height:1.6}
.assets{margin-top:27px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:12px}
.quote-status{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;text-align:right}
.quote-status::before{content:"";background:#a17a3d}
.quote-status.live::before{background:#238649}
.surface{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 5px #16152505}
.table-wrap{overflow:hidden}
table{border-collapse:collapse;width:100%;text-align:left}
th{font-size:12px;font-weight:600;color:var(--muted);background:#f8f9fd;border-bottom:1px solid var(--line);padding:12px 16px}
td{padding:15px 16px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
.coin-label{display:flex;align-items:center;gap:10px;white-space:nowrap}
.coin{display:grid;place-items:center;color:white;width:38px;height:38px;flex:none;border-radius:50%;font-family:Inter,sans-serif;font-size:22px;font-weight:800}
.coin-btc{background:#dc7c10}
.coin-eth{background:#6554c0}
.coin-thb{background:#373273}
#member-THB-row .coin-label{white-space:normal}
.cell-primary{display:block;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
.cell-secondary{display:block;font-size:12px;color:var(--muted);margin-top:3px}
@media(max-width:690px){
  .sidebar{min-height:56px;gap:8px 12px;padding-block:7px}
  .sidebar:has(nav a:nth-child(4)){position:relative;flex-wrap:wrap}
  .sidebar:has(nav a:nth-child(4)) nav{flex-basis:100%;flex-wrap:wrap;overflow:visible;padding-block:0}
  .brand{font-size:18px}
  .brand-mark{width:26px;height:30px}
  .sidebar nav a{padding:5px 8px;min-height:34px;font-size:12px}
  .sidebar nav a span{display:none}
  .page{padding-top:22px;padding-bottom:28px}
  .overview{grid-template-columns:1fr;gap:10px}
  .balance-card{min-height:156px}
  .balance-card,.quote-card{padding:16px;border-radius:13px}
  .quote-card{display:grid;grid-template-columns:auto 1fr;gap:6px 10px;align-items:center}
  .quote-card p{grid-column:2}
  .quote-card strong{font-size:21px}
  .page-heading{align-items:flex-start}
  .page-heading p{font-size:12px}
  .page-heading .button{font-size:11px;padding:6px 7px;min-height:34px}
  .section-heading h2{font-size:16px}
  td,th{padding-inline:8px}
  .coin{width:29px;height:29px;font-size:17px}
  .coin-label{gap:6px}
  .cell-primary{font-size:12px}
  .cell-secondary{font-size:11px}
}

.mode-labels,.action-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mode-labels{justify-content:flex-end}
.badge-attention{background:#fff2ce;color:#775517}
.site-status{padding:10px max(var(--gutter), calc((100% - var(--app-width)) / 2));background:var(--tint);border-bottom:1px solid var(--line);color:var(--accent);font-size:13px;line-height:1.6}
.site-status.is-error{background:#fff2eb;color:#913f2c}
.wallet-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.field{display:grid;gap:6px;font-size:13px;font-weight:650;color:var(--ink);min-width:0}
.field select,.field input{min-height:41px;min-width:0;width:100%;padding:9px 10px;border:1px solid #dce0ef;border-radius:8px;color:var(--ink);background:var(--panel)}
.field select:disabled{background:var(--tint);color:var(--muted)}
.account-picker{width:min(100%,290px)}
.button-primary{background:var(--accent);border-color:var(--accent);color:#fff}
.button:disabled{cursor:not-allowed}
.wide-table{overflow:auto}
.wide-table th{white-space:nowrap}
.account-row-name{background:#fff;color:var(--ink);font-size:14px;font-weight:700}
.panel-status{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.55;overflow-wrap:anywhere}
.panel-status:empty{display:none}
.panel-status.is-error,.balance-usd.is-error{color:#a74630}
.history-groups{display:grid;gap:14px;margin-top:12px}
.history-group{overflow:hidden}
.history-group h2{background:#f8f9fd;padding:14px 16px;border-bottom:1px solid var(--line)}
.history-row{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(3,minmax(0,1fr));gap:8px;padding:12px 16px;font-size:13px;align-items:center;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.history-row:last-child{border:0}
.history-row time,.history-id{font-size:12px;color:var(--muted)}
.history-id{display:block;margin-top:3px}
.history-empty{color:var(--muted);font-size:13px;padding:14px 16px}
#wallet-dialog{width:min(540px,calc(100% - 24px));max-height:calc(100% - 24px);border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--ink);padding:21px;box-shadow:0 14px 48px #16152533}
#wallet-dialog::backdrop{background:#16152580}
.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px}
.icon-button{font-size:23px;width:35px;height:35px;border-radius:8px;border:1px solid var(--line);background:var(--tint);line-height:1}
.dialog-form{display:grid;gap:12px;margin-top:12px}
.dialog-form>.button{justify-self:start}
.dialog-note{color:var(--muted);font-size:13px;line-height:1.6}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.address-display{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:46px;border-radius:9px;background:var(--tint);padding:7px 9px}
.address-display code,.assignment-list code{overflow-wrap:anywhere;color:var(--accent)}
.address-display .button{min-height:30px;padding:5px 8px}
.assignment-title{margin:20px 0 8px;font-size:14px}
.assignment-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.assignment-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px;border:1px solid var(--line);border-radius:9px;font-size:12px}
.assignment-list code{display:block;margin-top:3px}
.assignment-list .button{min-height:30px;padding:5px 8px}
.confirmation-summary{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;border:1px solid var(--line);border-radius:9px;padding:14px;margin:13px 0;font-size:13px}
.confirmation-summary dt{font-weight:700;color:var(--muted)}
.confirmation-summary dd{overflow-wrap:anywhere}
.owner-wallet-panel {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--panel);
}
.owner-wallet-panel .balance-card {
  min-height: 228px;
  border-radius: 15px 15px 0 0;
}
.owner-wallet-panel .assets {
  margin: 0;
  padding: clamp(12px, 3vw, 32px);
}
.owner-wallet-panel .asset-table :is(th, td):not(:first-child) { text-align: right; }

@media(max-width:690px){
  .topbar{min-height:44px;gap:8px}
  .mode-labels{gap:4px}
  .mode-labels .badge{padding:4px 6px;font-size:10px}
  .wallet-controls .button{min-height:35px;padding:6px 8px;font-size:12px}
  .history-row{grid-template-columns:1fr 1fr;padding-inline:12px}
  #wallet-dialog{padding:15px}
  .owner-wallet-panel .balance-card{min-height:170px}
}

#member-wallet .member-wallet-tabs {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 22px;
  border-bottom: 1px solid var(--line);
}

#member-wallet .member-wallet-tab {
  min-height: 44px;
  padding: 9px 16px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: var(--muted);
  font-size: 14px;
  font-weight: 650;
}

#member-wallet .member-wallet-tab:hover {
  background: var(--tint);
  color: var(--ink);
}

#member-wallet .member-wallet-tab[aria-selected="true"] {
  border-bottom-color: var(--accent);
  color: var(--accent);
}

#member-history .member-history-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px 20px;
  padding: clamp(16px, 3vw, 24px);
}

#member-history .member-history-header h2 {
  margin-bottom: 5px;
}

#member-history .member-history-actions {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 8px;
}

#member-history .member-history-actions select {
  min-width: 88px;
}

#member-history .member-history-feedback {
  margin: 0;
  padding: 0 clamp(16px, 3vw, 24px) 20px;
}

#member-history .member-history-amount {
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

#member-history .member-history-confirmation-count {
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

#member-history .member-history-txid {
  color: var(--accent);
  font-family: ui-monospace, monospace;
  font-size: 12px;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

#member-history .member-history-state[data-state="pending"],
#member-history .member-history-state[data-state="accepted"],
#member-history .member-history-state[data-state="review_required"] {
  background: #fff2ce;
  color: #775517;
}

#member-history .member-history-state[data-state="failed"] {
  background: #fff2eb;
  color: #913f2c;
}

#member-history .member-history-state[data-state="unknown"] {
  background: var(--tint);
  color: var(--muted);
}

#member-deposit,
#member-withdrawal {
  width: min(100%, 900px);
  min-height: 360px;
  margin-inline: auto;
  padding: clamp(20px, 4.5vw, 44px);
}

#member-deposit .member-deposit-content,
#member-withdrawal .member-withdrawal-content {
  width: min(100%, 640px);
  margin-inline: auto;
}

#member-deposit h2 {
  margin-bottom: 22px;
  font-size: clamp(18px, 2vw, 23px);
}

#member-deposit .member-deposit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 14px;
}

#member-deposit .member-deposit-grid:has(> #deposit-prompt[hidden]) {
  grid-template-columns: minmax(0, 1fr);
}

#member-deposit .member-deposit-fields {
  display: grid;
  gap: 11px;
  min-width: 0;
}

#member-deposit .field select {
  min-height: 44px;
}

#member-deposit .member-deposit-prompt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 114px;
  padding: 15px;
  border-radius: 10px;
  background: var(--tint);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
}

#member-deposit .member-deposit-result {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: start;
  gap: 20px;
  margin-top: 17px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

#member-deposit .member-deposit-qr {
  display: grid;
  justify-items: center;
  gap: 9px;
}

#member-deposit #deposit-qr {
  display: block;
  width: 144px;
  height: 144px;
  background: #fff;
  image-rendering: pixelated;
}

#member-deposit .member-deposit-details dl {
  display: grid;
  gap: 12px;
}

#member-deposit .member-deposit-detail {
  display: grid;
  gap: 5px;
}

#member-deposit dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
}

#member-deposit #deposit-result-network {
  color: var(--ink);
  font-weight: 700;
}

#member-deposit .member-deposit-address-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 10px;
  min-width: 0;
  padding: 8px;
  border-radius: 8px;
  background: var(--tint);
}

#member-deposit #deposit-address {
  flex: 1 1 160px;
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--accent);
  font-size: 13px;
  line-height: 1.55;
  user-select: all;
}

#member-deposit .member-deposit-details .dialog-note {
  margin-top: 12px;
}

#member-withdrawal h2 {
  margin-bottom: 8px;
  font-size: clamp(18px, 2vw, 23px);
}

#member-withdrawal .member-withdrawal-options,
#member-withdrawal .member-withdrawal-net {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--tint);
}

#member-withdrawal .member-withdrawal-options dl {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
  gap: 10px 14px;
}

#member-withdrawal .member-withdrawal-options dt,
#member-withdrawal .member-withdrawal-net span {
  color: var(--muted);
  font-size: 12px;
}

#member-withdrawal .member-withdrawal-options dd,
#member-withdrawal #withdrawal-net {
  margin: 3px 0 0;
  overflow-wrap: anywhere;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

#member-withdrawal #withdrawal-options-refresh {
  margin-top: 10px;
  min-height: 34px;
}

#member-withdrawal .member-withdrawal-amount,
#member-withdrawal .member-withdrawal-net {
  display: flex;
  align-items: center;
  gap: 8px;
}

#member-withdrawal .member-withdrawal-amount input {
  flex: 1 1 auto;
}

#member-withdrawal .member-withdrawal-net {
  justify-content: space-between;
  flex-wrap: wrap;
}

#member-withdrawal #withdrawal-net-note {
  margin-top: 0;
}

#member-withdrawal .member-withdrawal-review {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--tint);
}

#member-withdrawal .member-withdrawal-review h3 {
  margin: 0;
}

#member-withdrawal .member-withdrawal-review .action-list,
#member-withdrawal #withdrawal-view-history {
  margin-top: 13px;
}

#member-withdrawal .confirmation-summary {
  background: #fff;
}

#member-withdrawal .confirmation-summary dd {
  margin: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 540px) {
  #member-wallet .member-wallet-tabs {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 2px;
    margin-bottom: 16px;
  }

  #member-wallet .member-wallet-tab {
    flex: 1 1 auto;
    padding-inline: 6px;
    font-size: 13px;
  }

  #member-history .member-history-state {
    padding-inline: 7px;
    font-size: 11px;
  }

  #member-deposit,
  #member-withdrawal {
    min-height: 0;
    padding: 17px;
  }

  #member-deposit h2 {
    margin-bottom: 16px;
  }

  #member-deposit .member-deposit-grid,
  #member-deposit .member-deposit-result {
    grid-template-columns: minmax(0, 1fr);
  }

  #member-deposit .member-deposit-result {
    gap: 14px;
    padding: 13px;
  }
}

.member-page {
  --member-soft: #f3f7fb;
}

.member-page .topbar {
  min-height: 42px;
  justify-content: flex-end;
  background: var(--canvas);
}

.member-page .topbar #member-logout { min-height: 32px; }

#member-wallet .member-wallet-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px 18px;
  margin-bottom: 24px;
}

#member-wallet .member-wallet-tabs {
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 2px;
  margin: 0;
  border: 0;
}

#member-wallet .member-wallet-tab {
  min-height: 42px;
  padding: 8px 12px;
  border-bottom-width: 2px;
  border-radius: 8px 8px 0 0;
  color: var(--muted);
  font-size: 14px;
  white-space: nowrap;
}

#member-wallet .member-wallet-tab:hover { background: var(--tint); color: var(--accent); }
#member-wallet .member-wallet-tab[aria-selected="true"] { border-bottom-color: var(--accent); color: var(--accent); }

#member-wallet .member-balance-hero {
  display: grid;
  grid-template-columns: minmax(0, 2.15fr) minmax(180px, 1fr);
  align-items: stretch;
  gap: 16px;
  min-height: 292px;
  padding: 24px;
  border-radius: 16px 16px 0 0;
  background: var(--brand-gradient);
}

.member-balance-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 28px clamp(24px, 4vw, 48px);
  border-radius: 10px;
  background: rgb(255 255 255 / 7%);
}

.member-balance-hero h2 { margin-bottom: 10px; font-size: 15px; font-weight: 650; }
.member-balance-hero .balance-total { font-size: clamp(34px, 4.1vw, 54px); }
.member-balance-hero .balance-usd { color: #c6cde0; }

.member-balance-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: center;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  border-radius: 10px;
  background: rgb(255 255 255 / 7%);
}

.member-balance-actions .member-balance-action {
  flex-direction: column;
  min-width: 0;
  min-height: 86px;
  padding: 8px 4px;
  border-radius: 10px;
  color: #fff;
  background: rgb(255 255 255 / 10%);
  border-color: rgb(255 255 255 / 12%);
  white-space: normal;
}

.member-balance-actions .member-balance-action:hover { filter: none; background: rgb(255 255 255 / 19%); }
.member-balance-actions .member-balance-action:focus-visible { outline-color: #fff; }

.member-action-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  color: var(--accent);
  background: #ecebfd;
  font-size: 20px;
  line-height: 1;
}

.member-page .member-assets {
  margin-top: 0;
  padding: 28px clamp(20px, 5vw, 72px) 36px;
  border-top: 0;
  border-radius: 0 0 16px 16px;
}

.member-assets .section-heading { align-items: baseline; margin-bottom: 13px; }
.member-assets #member-market-status { margin: 0; text-align: right; }
.member-assets table { border-collapse: separate; border-spacing: 0 6px; }
.member-assets th { background: #f3f6fc; border-bottom: 0; }
.member-assets tbody td { border-block: 1px solid var(--line); }
.member-assets tbody td:first-child { border-inline-start: 1px solid var(--line); }
.member-assets tbody td:last-child { border-inline-end: 1px solid var(--line); }
.member-assets :is(th, td):last-child { text-align: right; }
.member-assets .cell-primary { overflow-wrap: anywhere; }

.member-page :is(#member-deposit, #member-withdrawal, #member-history) {
  width: 100%;
  min-height: 0;
  border-radius: 16px;
}

.member-page :is(#member-deposit, #member-withdrawal) { padding: clamp(20px, 5vw, 64px) clamp(18px, 5vw, 68px); }
.member-page #member-deposit .member-deposit-content { width: min(100%, 855px); }
.member-page #member-withdrawal .member-withdrawal-content { width: min(100%, 850px); }
.member-page :is(#member-deposit, #member-withdrawal) h2 { margin-bottom: 18px; }
.member-page #member-deposit .member-deposit-grid { gap: 18px 22px; }
.member-page #member-deposit .member-deposit-prompt { background: var(--member-soft); color: var(--muted); min-height: 125px; }
.member-page #member-deposit .member-deposit-address-row { background: var(--member-soft); }
.member-page #member-deposit #deposit-address { color: var(--accent); }
.member-page #member-withdrawal .dialog-form { margin-top: 18px; gap: 14px; }
.member-page #member-withdrawal :is(.member-withdrawal-options, .member-withdrawal-net, .member-withdrawal-review) { background: var(--member-soft); }
.member-page #member-history .member-history-txid { color: var(--accent); }
.member-page #member-history .wide-table { overflow-x: auto; }
.member-page :is(#member-deposit, #member-withdrawal) .field :is(select, input) { min-height: 45px; }
.member-page :is(#member-deposit, #member-withdrawal) .button-primary { border-radius: 999px; }

@media (max-width: 880px) {
  #member-wallet .member-wallet-heading { grid-template-columns: minmax(0, 1fr) auto; }
  #member-wallet .member-wallet-tabs { grid-column: 1 / -1; grid-row: 2; }
  #member-wallet #member-refresh { justify-self: end; }
}

@media (max-width: 690px) {
  #member-wallet .member-wallet-heading { gap: 9px; margin-bottom: 14px; }
  #member-wallet .member-wallet-tab { flex: 1 1 0; min-height: 40px; padding-inline: 4px; font-size: 12px; white-space: normal; }

  #member-wallet .member-balance-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: var(--ink);
  }

  .member-balance-copy { min-height: 170px; padding: 20px 18px; border-radius: 13px; background: var(--member-soft); }
  .member-balance-hero h2 { color: var(--muted); font-size: 13px; }
  .member-balance-hero .balance-total { font-size: clamp(30px, 8vw, 42px); }
  .member-balance-hero .balance-usd { color: var(--muted); }
  .member-balance-actions { gap: 6px; padding: 6px; background: var(--panel); border: 1px solid var(--line); border-radius: 13px; box-shadow: 0 4px 14px #1615250b; }
  .member-balance-actions .member-balance-action { min-height: 71px; background: var(--panel); border-color: transparent; color: var(--accent); }
  .member-balance-actions .member-balance-action:hover { background: var(--tint); }
  .member-balance-actions .member-balance-action:focus-visible { outline-color: var(--accent); }
  .member-page .member-assets { margin-top: 16px; padding: 14px 10px; border-top: 1px solid var(--line); border-radius: 13px; }
  .member-assets .section-heading { margin-inline: 3px; }
  .member-assets table { border-spacing: 0; }
  .member-assets :is(th, td) { padding-inline: 6px; }
  .member-assets tbody td { border-top: 0; }
  .member-assets tbody :is(td:first-child, td:last-child) { border-inline: 0; }
  .member-assets .coin { width: 26px; height: 26px; }
  .member-assets .coin-label { gap: 5px; white-space: normal; }
  .member-assets .cell-secondary { overflow-wrap: anywhere; }
  .member-page #member-deposit .member-deposit-grid { gap: 14px; }
}
