/* Shared visual language: stronger contrast, readable type, restrained surfaces. */
:root {
  --ui-primary: #305ce2;
  --ui-primary-hover: #294fc8;
  --ui-primary-soft: #edf1ff;
  --ui-primary-gradient: linear-gradient(120deg, #3454a6, #5277bd);
  --ui-ink: #17192b;
  --ui-muted: #626473;
  --ui-line: #e1e2e8;
}
body { background: #f4f4f6; color: var(--ui-ink); }
.sidebar {
  width: 248px;
  padding: 38px 22px 24px;
  background: #14172f;
  border-left: 1px solid #21253e;
  color: #fff;
}
.sidebar .brand { justify-content: flex-start; gap: 14px; padding: 0 10px; }
.sidebar .brand-mark { background: #ebecf6; color: #191d3c; border-radius: 14px; }
.sidebar .brand-mark span { color: #6970a1; }
.sidebar .brand small { color: #a8abbd; font-size: 8px; }
.nav-label { margin: 50px 15px 18px; color: #9da0b6; font-size: 11px; }
.nav-link {
  min-height: 49px;
  gap: 13px;
  color: #bcbecd;
  font-size: 13px;
  margin-bottom: 9px;
  padding: 13px 15px;
  border-radius: 11px;
}
.nav-link svg { width: 21px; height: 21px; }
.nav-link:hover { background: #ffffff0a; color: #fff; }
.nav-link.active { background: #d9dbed; color: #171c3e; box-shadow: 0 4px 14px #0000000a; }
.nav-mini { display: none; }
.logout { color: #b8bacc; font-size: 12px; padding: 18px 14px; }
.logout:hover { color: #fff; }
.version { color: #999cb2; font-size: 10px; text-align: right; padding-right: 14px; }
.workspace { margin-right: 248px; }
.topbar { height: 86px; padding: 0 44px; background: #fff; border-bottom-color: var(--ui-line); }
.breadcrumb { font-size: 12px; color: #53566b; }
.breadcrumb span { color: #b6b7c1; }
.profile { font-size: 13px; gap: 11px; }
.profile small { color: #696c7e; font-size: 10px; }
.avatar { width: 39px; height: 39px; background: #e9eaf1; color: #33385e; }
.demo-pill { color: #83672e; background: #fbf5e8; font-size: 11px; border-color: #eee0bf; }
main { max-width: 1370px; padding: 42px 44px 28px; }
footer { font-size: 11px; color: #747682; margin-top: 30px; padding-top: 20px; border-top-color: var(--ui-line); }
.page-heading p, .subtle { color: #696c7e; font-size: 13px; }
.page-heading h1 { font-size: 29px; }
.panel { border-color: var(--ui-line); box-shadow: 0 3px 14px #171c3c03; border-radius: 17px; }
.field>label { color: #4f5266; font-size: 13px; }
input:not([type=checkbox]), select { min-height: 50px; font-size: 14px; background: #fcfcfd; }
.help-text { color: #6e7080; font-size: 11px; }
.button { font-size: 13px; min-height: 45px; }
.primary { background: #21285c; }
.checkbox { color: #616375; font-size: 12px; }
.help-card p { color: #62657c; }
.lavender p { color: #736b89; }
.balance-line, .transaction-detail p, .filter-tabs a { color: #6a6c7d; font-size: 12px; }
.transaction-detail strong { font-size: 13px; }
.transaction-status time { color: #737585; font-size: 11px; }
.transaction-status>span { color: #4f547a; font-size: 10px; }
.reference { color: #808291; font-size: 9px; }

/* Balance dashboard: six equal, noninteractive cards; no promotions or activity feed. */
.balances-page { padding-bottom: 12px; }
.balances-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 30px; }
.balances-heading h1 { font-size: 32px; font-weight: 750; line-height: 1.6; letter-spacing: -1px; }
.balances-count { color: #65687b; font-size: 12px; padding: 5px 12px; border: 1px solid #dfe0e7; border-radius: 9px; background: #f9f9fc; }
.balances-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.balance-tile {
  --tile-color: #32396b;
  --tile-soft: #eaebf3;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 260px;
  padding: 26px 28px 21px;
  border: 1px solid #dfe0e7;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 4px 16px #171b3604;
  overflow: hidden;
}
.balance-tile-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.balance-tile-icon { width: 48px; height: 48px; display: grid; place-items: center; flex-shrink: 0; border: 1px solid #00000003; border-radius: 15px; background: var(--tile-soft); color: var(--tile-color); font: 650 25px Arial, sans-serif; }
.balance-tile-icon svg { width: 24px; height: 24px; }
.balance-tile-code { font: 500 10px Arial, sans-serif; letter-spacing: 1.5px; color: #7c7e8e; }
.balance-tile h2 { margin: 0 0 8px; color: #5f6275; font-size: 14px; font-weight: 500; }
.balance-tile-amount { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px 10px; margin-bottom: 20px; }
.balance-tile-amount bdi { min-width: 0; max-width: 100%; color: #1b1e34; font-size: clamp(24px, 2.05vw, 35px); font-weight: 700; line-height: 1.5; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.balance-tile-amount>span { font-size: 12px; color: #6e7082; }
.balance-tile-bottom { border-top: 1px solid #eeeef2; padding-top: 13px; margin-top: auto; color: #808290; font-size: 11px; line-height: 1.8; }
.balance-tile--gold { --tile-color: #a47b29; --tile-soft: #fcf3df; }
.balance-tile--gold .balance-tile-icon { font-size: 20px; }
.balance-tile--usd { --tile-color: #3b437b; --tile-soft: #ebecf6; }
.balance-tile--usdt { --tile-color: #19278a; --tile-soft: #e7e9f5; }
.balance-tile--walt { --tile-color: #7462b0; --tile-soft: #f0edfa; }
.balance-tile--walt .balance-tile-icon { font-style: italic; }
.balance-tile--total { background: #171c3f; border-color: #171c3f; box-shadow: 0 8px 22px #171c3f12; isolation: isolate; }
.balance-tile--total::after { content: ''; position: absolute; z-index: -1; width: 260px; height: 260px; left: -130px; top: -65px; border: 1px solid #ffffff0d; border-radius: 50%; box-shadow: 0 0 0 26px #ffffff04, 0 0 0 53px #ffffff04; pointer-events: none; }
.balance-tile--total .balance-tile-icon { background: #ffffff10; color: #d7daed; border-color: #ffffff0b; }
.balance-tile--total .balance-tile-code { color: #abaec6; font-size: 9px; letter-spacing: 1px; }
.balance-tile--total h2 { color: #d3d5e4; }
.balance-tile--total .balance-tile-amount bdi { color: #fff; }
.balance-tile--total .balance-tile-amount>span { color: #c0c3d7; }
.balance-tile--total .balance-tile-bottom { color: #a8acc9; border-top-color: #ffffff18; font-size: 10px; }
@media (min-width:1600px) {
  main { padding-top: 54px; }
  .balances-grid { gap: 26px; }
  .balance-tile { min-height: 282px; padding: 30px 32px 24px; }
  .balance-tile-amount bdi { font-size: 36px; }
}
@media (max-width:1150px) {
  .sidebar { width: 220px; padding-inline: 16px; }
  .workspace { margin-right: 220px; }
  main { padding: 32px 28px 24px; }
  .topbar { padding-inline: 28px; }
  .balances-grid { gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .balance-tile { min-height: 245px; padding: 23px 25px 20px; }
  .balance-tile-amount bdi { font-size: 31px; }
}
@media (max-width:950px) and (min-width:651px) {
  .sidebar { width: 80px; padding: 27px 12px; }
  .sidebar .brand { padding: 0; justify-content: center; }
  .workspace { margin-right: 80px; }
  .nav-link { font-size: 0; padding: 15px; gap: 0; }
  .nav-link svg { width: 22px; }
}
@media (max-width:650px) {
  .sidebar { width: 100%; padding: 7px 9px calc(8px + env(safe-area-inset-bottom)); border-top: 1px solid #e0e1e7; border-left: 0; background: #fff; color: #53566e; box-shadow: 0 -4px 22px #21243a06; }
  .nav-link { min-height: 52px; margin: 0; padding: 6px 8px; gap: 5px; font-size: 9px; border-radius: 10px; color: #6c6e80; }
  .nav-link svg { width: 20px; height: 20px; }
  .nav-link.active { background: #e9eaf3; color: #21285a; box-shadow: none; }
  .nav-link:hover { color: #21285a; background: #eeeff6; }
  .workspace { margin-right: 0; margin-bottom: calc(80px + env(safe-area-inset-bottom)); }
  .topbar { height: 72px; padding: 0 20px; }
  .breadcrumb { font-size: 11px; }
  .topbar-end { gap: 12px; }
  .demo-pill { font-size: 9px; }
  main { padding: 27px 18px 20px; }
  .balances-heading { margin-bottom: 22px; }
  .balances-heading h1 { font-size: 27px; }
  .balances-count { font-size: 10px; padding: 4px 10px; }
  .balances-grid { gap: 13px; }
  .balance-tile { min-height: 212px; border-radius: 17px; padding: 18px 17px 15px; }
  .balance-tile-top { margin-bottom: 19px; gap: 5px; }
  .balance-tile-icon { width: 38px; height: 38px; font-size: 21px; border-radius: 12px; }
  .balance-tile-icon svg { width: 21px; height: 21px; }
  .balance-tile-code { font-size: 8px; letter-spacing: .8px; }
  .balance-tile h2 { font-size: 12px; margin-bottom: 8px; }
  .balance-tile-amount { gap: 3px 6px; margin-bottom: 16px; }
  .balance-tile-amount bdi { font-size: clamp(19px, 5.5vw, 27px); }
  .balance-tile-amount>span { font-size: 10px; }
  .balance-tile-bottom { font-size: 10px; padding-top: 10px; }
  .balance-tile--total { grid-column: 1 / -1; min-height: 223px; padding: 24px; }
  .balance-tile--total .balance-tile-top { margin-bottom: 17px; }
  .balance-tile--total .balance-tile-amount bdi { font-size: 36px; }
  .balance-tile--total .balance-tile-code { font-size: 10px; }
  .balance-tile--walt { grid-column: 1 / -1; min-height: 200px; }
  .balance-tile--walt .balance-tile-amount bdi { font-size: 28px; }
  footer { font-size: 9px; gap: 5px; margin-top: 20px; }
  .page-heading h1 { font-size: 25px; }
}
@media (max-width:350px) {
  .balances-grid { grid-template-columns: 1fr; }
  .balance-tile { min-height: 210px; }
  .balance-tile-amount bdi { font-size: 29px; }
}

/* Brand blue: shared by authentication, navigation, forms and the installed app. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible {
  outline-color: #8fa6ff;
}
.brand-mark { background: var(--ui-primary); color: #fff; }
.brand-mark span { color: #b9ccff; }
.sidebar { background: #111e5c; border-left-color: #1e3074; }
.sidebar .brand-mark { background: #fff; color: var(--ui-primary); }
.sidebar .brand-mark span { color: #5782ff; }
.sidebar .brand small, .nav-label { color: #aebcf0; }
.nav-link { color: #c5cff4; }
.nav-link.active { background: #edf1ff; color: var(--ui-primary); }
.logout { color: #c5cff4; }
.version { color: #aebcf0; }
.primary { background: var(--ui-primary); box-shadow: 0 4px 12px #305ce218; }
.primary:hover { background: var(--ui-primary-hover); }
.primary:active { background: #2746a6; }
.checkbox input { accent-color: var(--ui-primary); }
.auth-story h1 { color: #162660; }
.auth-story h1 span { color: var(--ui-primary); }
.auth-story .eyebrow { color: #4668ba; }
.auth-switch a, .text-link, .section-heading>a { color: var(--ui-primary); }
.signup-credit { background: var(--ui-primary-soft); color: #173bc2; }
.balance-tile--total { background: var(--ui-primary-gradient); border-color: #305ce2; box-shadow: 0 8px 24px #305ce21a; }
.balance-tile--total .balance-tile-icon { background: #ffffff1a; color: #fff; }
.balance-tile--total .balance-tile-code,
.balance-tile--total .balance-tile-bottom { color: #d0dcff; }
.balance-tile--total h2,
.balance-tile--total .balance-tile-amount>span { color: #e1e9ff; }
.balance-tile--toman { --tile-color: var(--ui-primary); --tile-soft: var(--ui-primary-soft); }
.filter-tabs .selected { color: var(--ui-primary); background: var(--ui-primary-soft); border-color: #d5dfff; }
.estimate { background: #f0f3ff; border-color: #dbe3ff; }
.estimate strong { color: #173bc2; }
.avatar { background: #edf1ff; color: #173bc2; }
@media (max-width:650px) {
  .sidebar { background: #fff; border-top-color: #dfe5f5; }
  .nav-link { color: #637098; }
  .nav-link.active { background: var(--ui-primary-soft); color: var(--ui-primary); }
  .nav-link:hover { color: var(--ui-primary); background: #f1f4ff; }
}

/* Sign-in: a focused form paired with a code-drawn wallet illustration. */
.login-shell {
  width: min(1144px, 100%);
  min-height: 100svh;
  margin: 0 auto;
  padding: 48px 24px 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
}
body:has(.login-shell) {
  background: radial-gradient(ellipse at 15% 25%, #e9edff 0, transparent 50%), #f5f6fb;
}
.login-frame {
  display: grid;
  grid-template-columns: 1fr 1.04fr;
  width: 100%;
  padding: 12px;
  border: 1px solid #e3e7f3;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 24px 80px #1526650a, 0 2px 10px #15266503;
}
.login-form-side { display: flex; flex-direction: column; min-width: 0; padding: 28px 42px 20px; }
.login-brand { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; color: #17214b; font-size: 25px; font-weight: 800; line-height: 1.25; }
.login-brand-symbol { display: flex; justify-content: center; align-items: center; width: 43px; height: 43px; border-radius: 13px; background: #305ce2; color: #fff; font: 700 32px Arial, sans-serif; letter-spacing: -4px; padding-right: 4px; direction: ltr; }
.login-brand-symbol>span { font-size: 29px; color: #b5c9ff; transform: translateY(-5px); }
.login-brand small { display: block; color: #8a94b5; font: 8px Arial, sans-serif; letter-spacing: 3px; margin-top: 5px; }
.login-form-content { margin: auto 0; padding: 44px 0 36px; }
.login-welcome { font-size: 12px; color: #7784a9; margin-bottom: 6px; }
.login-form-content h1 { font-size: 30px; line-height: 1.7; color: #141e43; font-weight: 750; letter-spacing: -.9px; }
.login-description { font-size: 12px; color: #7c87a5; margin-top: 7px; }
.login-form { margin-top: 30px; }
.login-field { margin-top: 21px; }
.login-field>label { display: block; font-size: 12px; font-weight: 550; color: #3d496c; margin-bottom: 9px; }
.login-input-wrap { position: relative; }
.login-input-wrap input { min-height: 54px; padding: 13px 46px 13px 46px; background: #fbfcff; border: 1px solid #e0e5f1; border-radius: 11px; color: #253154; font-size: 14px; transition: border-color .15s, box-shadow .15s, background .15s; }
.login-input-wrap input:placeholder-shown { text-align: right; }
.login-input-wrap input::placeholder { color: #a0a8be; font-size: 11px; direction: rtl; }
.login-input-wrap input:focus { outline: none; border-color: #6482ff; background: #fff; box-shadow: 0 0 0 3px #305ce20b; }
.login-input-icon { position: absolute; width: 19px; height: 19px; right: 16px; top: 50%; transform: translateY(-50%); color: #8d99bc; pointer-events: none; stroke-width: 1.6; }
.login-input-wrap:focus-within .login-input-icon { color: #486cb0; }
.login-password-toggle { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 8px; background: transparent; color: #8591b2; }
.login-password-toggle:hover { background: #eef2ff; color: #305ce2; }
.login-password-toggle svg { width: 19px; height: 19px; }
.login-password-toggle .eye-slash { display: none; }
.login-password-toggle[aria-pressed=true] .eye-slash { display: block; }
.login-submit { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 53px; padding: 13px 18px; margin-top: 27px; border: 0; border-radius: 11px; background: #305ce2; color: #fff; font-size: 13px; font-weight: 650; box-shadow: 0 5px 14px #305ce21f; transition: background .15s, box-shadow .15s; }
.login-submit svg { width: 19px; height: 19px; }
.login-submit:hover { background: #294fc8; box-shadow: 0 7px 20px #305ce229; }
.login-submit:active { background: #2746a6; }
.login-signup { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 8px; border-top: 1px solid #eef0f7; padding-top: 22px; margin-top: 26px; font-size: 11px; color: #8c96b0; }
.login-signup a { font-weight: 650; color: #305ce2; }
.login-signup a:hover { text-decoration: underline; text-underline-offset: 4px; }
.login-signup a>span { display: inline-block; margin-right: 5px; }
.login-footnote { display: flex; align-items: center; justify-content: center; gap: 7px; font-size: 9px; color: #909bb7; }
.login-footnote svg { width: 14px; height: 14px; stroke-width: 1.5; }
.login-errors .errorlist { font-size: 11px; line-height: 2; background: #fff2f0; color: #a74c42; border: 1px solid #f4d9d4; }
.login-visual { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-width: 0; min-height: 654px; padding: 31px 34px 28px; border-radius: 21px; background: linear-gradient(148deg, #3454a6 2%, #5277bd 100%); color: #fff; overflow: hidden; isolation: isolate; }
.login-visual::before { content: ''; position: absolute; width: 550px; height: 550px; border: 1px solid #ffffff12; border-radius: 50%; left: -280px; bottom: -220px; box-shadow: 0 0 0 55px #ffffff04, 0 0 0 110px #ffffff03; z-index: -1; }
.login-visual-head { display: flex; align-items: center; gap: 7px; font-size: 10px; color: #d4dfff; }
.login-visual-dot { width: 5px; height: 5px; background: #fff; border-radius: 50%; box-shadow: 0 0 0 4px #ffffff10; margin-left: 3px; }
.login-visual-edition { font: 8px Arial, sans-serif; letter-spacing: 1px; margin-right: auto; color: #bfcfff; }
.login-visual-copy { margin-top: 34px; position: relative; z-index: 2; }
.login-visual-copy h2 { color: #fff; font-size: 35px; font-weight: 700; letter-spacing: -1.2px; line-height: 1.75; }
.login-visual-copy h2>span { color: #a5c8ff; }
.login-visual-copy>p { color: #c9d9ff; font-size: 11px; margin-top: 11px; }
.login-art { height: 275px; position: relative; margin: 10px -10px 0; direction: ltr; }
.login-orbit { position: absolute; width: 290px; height: 290px; top: 5px; left: calc(50% - 145px); border: 1px solid #ffffff13; border-radius: 50%; }
.login-orbit-two { width: 380px; height: 380px; left: calc(50% - 190px); top: -40px; border-style: dashed; border-color: #ffffff0e; }
.login-art-card { position: absolute; left: 50%; top: 50%; width: 284px; height: 173px; border-radius: 18px; }
.login-art-card-back { background: #87b2ff26; border: 1px solid #b5d1ff50; transform: translate(-44%,-62%) rotate(13deg); box-shadow: 0 14px 35px #001a9318; }
.login-art-card-front { padding: 20px 23px; border: 1px solid #ffffff64; background: linear-gradient(115deg,#e6f0ff,#b6d3ff); color: #1647bb; transform: translate(-53%,-44%) rotate(-10deg); box-shadow: 0 24px 45px #00137e35; }
.login-art-card-top { display: flex; justify-content: space-between; align-items: center; direction: rtl; font-size: 16px; font-weight: 750; }
.login-art-w { font: 700 32px Arial,sans-serif; letter-spacing: -3px; direction: ltr; }
.login-card-chip { display: block; width: 31px; height: 25px; border: 1px solid #6b9ade77; border-radius: 6px; margin-top: 11px; background: linear-gradient(140deg,#a9c8f3,#d6e8ff); position: relative; overflow: hidden; }
.login-card-chip::before,.login-card-chip::after { content: ''; position: absolute; border: 1px solid #7fa9dd; border-radius: 3px; }
.login-card-chip::before { inset: -3px 8px; }
.login-card-chip::after { inset: 7px -3px; }
.login-art-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 19px; }
.login-art-card-bottom>span:first-child { font: 11px Arial,sans-serif; letter-spacing: 1px; color: #6990c7; }
.login-art-card-bottom>span:last-child { font: 5px Arial,sans-serif; letter-spacing: .7px; color: #3a66ad; white-space: nowrap; }
.login-art-coin { position: absolute; display: grid; place-items: center; border-radius: 50%; box-shadow: 0 12px 25px #00147522; }
.login-art-gold { width: 62px; height: 62px; top: 21px; right: 18px; transform: rotate(12deg); background: linear-gradient(140deg,#fff7cf,#e8b957); color: #a77b20; border: 5px solid #ffdf8c; font: 600 22px Arial,sans-serif; }
.login-art-usdt { width: 52px; height: 52px; left: 5px; top: 141px; transform: rotate(-15deg); background: linear-gradient(140deg,#fff,#bddeff); color: #2456d7; border: 4px solid #e2efff; font: 700 27px Arial,sans-serif; }
.login-art-dollar { width: 36px; height: 36px; right: 36px; bottom: 11px; transform: rotate(15deg); background: #ffffff1a; border: 1px solid #ffffff45; color: #ddeaff; font: 500 20px Arial,sans-serif; box-shadow: none; }
.login-visual-footer { position: relative; z-index: 2; padding-top: 20px; border-top: 1px solid #ffffff24; }
.login-asset-list { display: flex; align-items: center; justify-content: center; gap: 14px; font-size: 11px; color: #e6edff; }
.login-asset-list i { width: 3px; height: 3px; border-radius: 50%; background: #91b2ff; }
.login-visual-footer>p { text-align: center; font-size: 10px; color: #b5caff; margin-top: 9px; }
.login-page-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 0 7px; color: #8c97b3; font-size: 10px; }
.login-page-footer>span[lang=en] { font: 8px Arial,sans-serif; letter-spacing: 1.25px; }
@media (max-width:1000px) and (min-width:761px) {
  .login-shell { padding: 28px 22px; }
  .login-form-side { padding-inline: 25px; }
  .login-visual { padding-inline: 25px; }
  .login-visual-copy h2 { font-size: 30px; }
  .login-art { transform: scale(.88); margin-inline: -30px; }
}
@media (max-width:760px) {
  .login-shell { max-width: 490px; padding: 26px 18px; gap: 18px; }
  .login-frame { grid-template-columns: 1fr; padding: 0; border-radius: 24px; }
  .login-visual { display: none; }
  .login-form-side { min-height: 580px; padding: 30px 28px 25px; }
  .login-form-content { padding: 37px 0 28px; }
  .login-form-content h1 { font-size: 28px; }
  .login-brand { font-size: 25px; }
  .login-brand-symbol { width: 43px; height: 43px; }
  .login-description { font-size: 11px; }
  .login-form { margin-top: 27px; }
  .login-input-wrap input { font-size: 16px; min-height: 54px; }
  .login-page-footer { justify-content: center; font-size: 9px; }
  .login-page-footer>span[lang=en] { display: none; }
}
@media (max-width:360px) {
  .login-form-side { padding-inline: 22px; }
  .login-shell { padding-inline: 13px; }
  .login-signup { font-size: 10px; }
}

/* Consistent blue across every account page and every navigation state. */
.sidebar { background: linear-gradient(165deg, #3454a6 0%, #5277bd 100%); border-left-color: #293f65; }
.sidebar .brand-mark { background: #fff; color: #305ce2; }
.sidebar .brand-mark span { color: #7197ff; }
.sidebar .brand small, .nav-label, .version { color: #c6d4ff; }
.nav-link, .logout { color: #e1e9ff; }
.nav-link:hover { background: #ffffff16; color: #fff; }
.nav-link.active { background: #fff; color: #305ce2; box-shadow: 0 5px 15px #0014a61a; }
.avatar, .demo-pill { background: #edf2ff; color: #2347cd; border-color: #d8e3ff; }
.demo-pill i { background: #6380b8; }
.balances-count, .outlined-tag { background: #f6f8ff; color: #5c70a7; border-color: #e0e6f7; }
.balance-tile { --tile-color: #305ce2; --tile-soft: #edf2ff; border-color: #e1e6f3; }
.balance-tile--gold { --tile-color: #476ba9; --tile-soft: #eaf0ff; }
.balance-tile--usd { --tile-color: #305ce2; --tile-soft: #edf2ff; }
.balance-tile--usdt { --tile-color: #4877aa; --tile-soft: #eaf3ff; }
.balance-tile--walt { --tile-color: #3d5794; --tile-soft: #ecefff; }
.balance-tile--total { border-color: #305ce2; }
.balance-tile h2, .balance-line { color: #63739b; }
.balance-tile-amount bdi { color: #1c2b59; }
.balance-tile--total h2 { color: #e1e9ff; }
.balance-tile--total .balance-tile-amount bdi { color: #fff; }
.help-card, .help-card.lavender, .token-promo { background: #edf2ff; border-color: #dce5ff; color: #2446be; }
.help-card p, .lavender p, .token-promo p { color: #6478ad; }
.token-logo, .transaction-icon, .transaction-icon.purple { background: #e6eeff; color: #486cb0; }
.token-balance strong, .token-promo h2, .token-promo a { color: #2446be; }
.username-box { background: #f4f7ff; color: #2446be; border-color: #cddaff; }
.message.success { background: #edf3ff; border-color: #cfddff; color: #2548b6; }
.transaction-status>span { background: #eef3ff; color: #345ad0; }
.empty-state { color: #7486b1; }
.pagination a { color: #305ce2; }
@media (max-width:650px) {
  .sidebar { background: #fff; border-left: 0; border-top-color: #dfe5f5; }
  .nav-link { color: #6a79a1; }
  .nav-link:hover { background: #f2f5ff; color: #305ce2; }
  .nav-link.active { color: #305ce2; background: #eaf0ff; box-shadow: none; }
}

/* Balanced blue: clear blue navigation with softer surfaces and accents. */
.sidebar { background: #2750c0; border-left-color: #3058c7; }
.sidebar .brand-mark { color: #305ce2; background: #f4f7fd; }
.sidebar .brand small, .nav-label, .version { color: #c1d0f3; }
.nav-link, .logout { color: #e0e8fb; }
.nav-link.active { background: #e5ecf7; color: #2c56c7; }
.balance-tile--total { background: linear-gradient(120deg, #305bd9, #4d7aeb); border-color: #406bdd; box-shadow: 0 8px 24px #305bd912; }
.login-visual { background: linear-gradient(148deg, #305bd9, #4d7aeb); }
@media (max-width:650px) {
  .sidebar { background: #fff; border-left: 0; border-top-color: #dfe5ef; }
  .nav-link { color: #6a7990; }
  .nav-link.active { color: #2c56c7; background: #eaf0f8; }
}

/* Native asset artwork keeps its original colors inside the blue interface. */
.asset-logo { display: block; width: 32px; height: 32px; object-fit: contain; }
.asset-logo--flag { border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 1px #16254a0d; }
.asset-logo--gold { width: 38px; height: 38px; }
.asset-logo--walt { width: 34px; height: 34px; border-radius: 10px; }
.balance-tile--gold .balance-tile-icon { background: #fff6df; }
.balance-tile--usdt .balance-tile-icon { background: #eaf6f3; }
.balance-tile--usd .balance-tile-icon, .balance-tile--toman .balance-tile-icon { background: #f4f6fb; }
.token-logo { box-shadow: none; }
@media (max-width:650px) {
  .balance-tile-icon .asset-logo { width: 27px; height: 27px; }
  .balance-tile-icon .asset-logo--gold { width: 32px; height: 32px; }
}

/* Six assets, with an exchange entry point on every wallet. */
.asset-logo--banknote { width: 40px; height: 24px; object-fit: contain; border-radius: 3px; filter: drop-shadow(0 2px 2px #1a30151a); }
.balance-tile--btc .balance-tile-icon { background: #fff3e4; }
.balances-grid--six .balance-tile--wide { grid-column: 1 / -1; min-height: 190px; padding-block: 24px 20px; }
.balances-grid--six .balance-tile--wide .balance-tile-top { margin-bottom: 10px; }
.balances-grid--six .balance-tile--wide .balance-tile-bottom { margin-top: 0; }
.balances-grid--six .balance-tile--walt { grid-column: auto; }
.asset-convert-button { display: flex; justify-content: space-between; align-items: center; gap: 10px; width: 100%; border: 0; border-top: 1px solid #edf0f7; background: transparent; color: var(--ui-primary); padding: 12px 0 0; margin-top: 13px; font-size: 12px; text-align: right; }
.asset-convert-button:hover { color: #193fa9; }
.dashboard-exchange { display: grid; grid-template-columns: .85fr 1.15fr; gap: 44px; margin-top: 25px; padding: 30px; scroll-margin-top: 20px; }
.dashboard-exchange-info { padding: 10px 8px; }
.exchange-section-icon { display: grid; place-items: center; width: 46px; height: 46px; background: #edf2ff; color: var(--ui-primary); border-radius: 14px; margin-bottom: 18px; }
.dashboard-exchange-info h2 { font-size: 21px; }
.dashboard-exchange-info p { color: #7581a3; font-size: 12px; margin-top: 10px; }
.dashboard-exchange-info>small { display: block; font-size: 10px; line-height: 2; color: #8b96af; max-width: 300px; }
.exchange-supported { display: flex; gap: 9px; flex-wrap: wrap; margin-block: 25px; }
.exchange-supported>span { display: grid; place-items: center; width: 41px; height: 41px; background: #f6f8fc; border-radius: 12px; }
.exchange-supported .asset-logo { width: 27px; height: 27px; }
.exchange-supported .asset-logo--banknote { width: 33px; height: 21px; }
.exchange-available { color: #7182a6; font-size: 11px; margin-top: 9px; }
.dashboard-exchange-form { min-width: 0; }
.dashboard-exchange-form .two-fields .field { margin-top: 0; }
@media (max-width:760px) {
 .dashboard-exchange { grid-template-columns: 1fr; gap: 20px; padding: 22px; }
 .dashboard-exchange-info { padding: 0; }
 .exchange-supported { margin-block: 16px; }
 .dashboard-exchange-info>small { max-width: none; }
}
@media (max-width:650px) {
 .balance-tile-icon .asset-logo--banknote { width: 32px; height: 20px; }
 .balances-grid--six .balance-tile--walt .balance-tile-amount bdi { font-size: clamp(19px,5.5vw,27px); }
}

.asset-actions { display: flex; align-items: center; gap: 10px; border-top: 1px solid #edf0f7; padding-top: 13px; margin-top: 13px; }
.asset-fund-button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; border: 1px solid #dce5fa; background: #edf2ff; border-radius: 8px; padding: 7px 10px; color: var(--ui-primary); font-size: 11px; white-space: nowrap; }
.asset-fund-button svg { width: 15px; height: 15px; }
.asset-fund-button:hover { background: #e1eaff; }
.asset-actions .asset-convert-button { border: 0; margin: 0; padding: 6px 0; width: auto; margin-right: auto; font-size: 11px; }
.fund-selected { display: flex; align-items: center; gap: 14px; border-bottom: 1px solid #edf0f7; padding-bottom: 18px; }
.fund-selected .subtle { margin-bottom: 0; }
.fund-wallet-link { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 7px; border-bottom: 1px solid #eef2f8; border-radius: 7px; font-size: 11px; color: #66769a; }
.fund-wallet-link.selected { background: #f0f4ff; color: var(--ui-primary); }
.fund-wallet-link>span { display: flex; align-items: center; gap: 9px; }
.fund-wallet-link b { font-weight: 500; }
.fund-wallet-link .asset-logo { width: 25px; height: 25px; }
.fund-wallet-link .asset-logo--banknote { width: 30px; height: 20px; }
@media(max-width:650px) {
 .asset-actions { gap: 5px; flex-wrap: wrap; }
 .asset-fund-button { font-size: 10px; padding: 6px; gap: 3px; }
 .asset-actions .asset-convert-button { font-size: 10px; }
}

.balances-heading-actions { display: flex; align-items: center; gap: 14px; }
.exchange-dialog { width: min(520px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; padding: 27px 29px; border: 1px solid #e1e7f5; border-radius: 21px; background: #fff; color: var(--ui-ink); box-shadow: 0 25px 90px #12235130; overflow-y: auto; overscroll-behavior: contain; }
.exchange-dialog::backdrop { background: #15244880; backdrop-filter: blur(5px); }
.exchange-dialog-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; padding-bottom: 21px; margin-bottom: 21px; border-bottom: 1px solid #edf0f7; }
.exchange-dialog-header h2 { font-size: 22px; }
.exchange-dialog-header p { font-size: 11px; color: #7a87a8; margin-top: 6px; }
.exchange-dialog-close { display: grid; place-items: center; width: 34px; height: 34px; flex-shrink: 0; border: 0; border-radius: 10px; background: #f1f4fa; color: #7181a4; }
.exchange-dialog-close svg { width: 18px; height: 18px; }
.exchange-dialog-close:hover { background: #e7edfa; color: var(--ui-primary); }
.exchange-dialog .two-fields .field { margin-top: 0; }
html.exchange-modal-open { overflow: hidden; }
@media (max-width:650px) {
 .balances-heading-actions { gap: 8px; }
 .balances-heading-actions .balances-count { display: none; }
 .balances-heading-actions .button { padding: 8px 12px; font-size: 11px; min-height: 41px; }
 .exchange-dialog { padding: 23px 20px; max-height: calc(100dvh - 24px); border-radius: 18px; }
 .exchange-dialog-header h2 { font-size: 20px; }
}

/* Desktop overview: a compact total strip followed by two rows of assets. */
@media (min-width:1151px) {
 .workspace:has(.balances-page) .topbar { height: 68px; }
 main:has(.balances-page) { padding: 22px 36px 16px; }
 .balances-page { padding-bottom: 0; }
 .balances-heading { margin-bottom: 18px; }
 .balances-heading h1 { font-size: 27px; }
 .balances-heading-actions .button { min-height: 40px; padding-block: 8px; }
 .balances-grid--six { gap: 16px; }
 .balances-grid--six .balance-tile--wide { display: grid; grid-template-columns: 1fr auto; align-items: center; column-gap: 24px; min-height: 100px; padding: 16px 24px; border-radius: 16px; }
 .balances-grid--six .balance-tile--wide .balance-tile-top { grid-column: 1; grid-row: 1; justify-content: flex-start; gap: 12px; margin: 0; }
 .balances-grid--six .balance-tile--wide .balance-tile-icon { width: 34px; height: 34px; border-radius: 10px; }
 .balances-grid--six .balance-tile--wide h2 { grid-column: 2; grid-row: 1; margin: 0; text-align: left; font-size: 12px; }
 .balances-grid--six .balance-tile--wide .balance-tile-amount { grid-column: 2; grid-row: 2; margin: 0; justify-content: flex-end; }
 .balances-grid--six .balance-tile--wide .balance-tile-amount bdi { font-size: 28px; }
 .balances-grid--six .balance-tile--wide .balance-tile-bottom { grid-column: 1; grid-row: 2; border: 0; padding: 0; margin: 0; }
 .balances-grid--six .balance-tile:not(.balance-tile--wide) { min-height: 190px; padding: 17px 22px 14px; border-radius: 16px; }
 .balances-grid--six .balance-tile:not(.balance-tile--wide) .balance-tile-top { margin-bottom: 8px; }
 .balances-grid--six .balance-tile-icon { width: 39px; height: 39px; border-radius: 12px; }
 .balances-grid--six .balance-tile h2 { font-size: 12px; margin-bottom: 3px; }
 .balances-grid--six .balance-tile-amount { margin-bottom: 9px; }
 .balances-grid--six .balance-tile-amount bdi { font-size: 27px; }
 .balances-grid--six .balance-tile-bottom { padding-top: 7px; font-size: 10px; }
 .balances-grid--six .asset-actions { margin-top: 9px; padding-top: 8px; }
 .balances-grid--six .asset-fund-button { padding-block: 5px; }
 main:has(.balances-page)>footer { margin-top: 18px; padding-top: 12px; }
}
@media (min-width:651px) and (max-width:1150px) {
 main:has(.balances-page) { padding-top: 24px; }
 .balances-grid--six { gap: 12px; }
 .balances-grid--six .balance-tile:not(.balance-tile--wide) { min-height: 210px; padding: 18px; }
 .balances-grid--six .balance-tile--wide { min-height: 145px; }
}

/* A short lift on entry; a matching, slightly faster exit. */
.exchange-dialog[open] {
  transform-origin: center 60%;
  animation: wallet-modal-in 340ms cubic-bezier(.2,.8,.2,1) both;
}
.exchange-dialog[open]::backdrop {
  animation: wallet-backdrop-in 300ms ease-out both;
}
.exchange-dialog[open].is-closing {
  pointer-events: none;
  animation: wallet-modal-out 200ms cubic-bezier(.4,0,1,1) both;
}
.exchange-dialog[open].is-closing::backdrop {
  animation: wallet-backdrop-out 200ms ease-in both;
}
@keyframes wallet-modal-in {
  from { opacity: 0; transform: translateY(24px) scale(.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes wallet-modal-out {
  from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(16px) scale(.975); }
}
@keyframes wallet-backdrop-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes wallet-backdrop-out {
  from { opacity: 1; }
  to { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .exchange-dialog[open], .exchange-dialog[open]::backdrop,
  .exchange-dialog[open].is-closing, .exchange-dialog[open].is-closing::backdrop {
    animation: none;
  }
}

.amount-validation { color: #ad554f; font-size: 11px; margin-top: 8px; }
.amount-validation:empty { display: none; }
.funding-target { display: flex; align-items: center; gap: 12px; padding: 12px 15px; background: #f5f7fd; border: 1px solid #e5eaf7; border-radius: 12px; }
.funding-target-icon { display: grid; place-items: center; }
.funding-target>div>span { display: block; color: #8390ae; font-size: 10px; }
.funding-target-name { display: block; font-size: 15px; color: #304571; }
.funding-methods { padding: 0; margin: 22px 0 0; border: 0; min-width: 0; }
.funding-methods legend { font-size: 12px; font-weight: 650; color: #53668f; padding: 0; }
.funding-methods>.help-text { margin-bottom: 10px; }
.funding-method { display: flex; align-items: flex-start; gap: 10px; padding: 11px 13px; border: 1px solid #e3e9f5; border-radius: 10px; margin-top: 7px; cursor: pointer; }
.funding-method:has(input:checked) { border-color: #6f91df; background: #f1f5ff; }
.funding-method>input { width: 15px; height: 15px; accent-color: var(--ui-primary); margin: 5px 0 0; }
.funding-method-content { display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; width: 100%; min-width: 0; }
.funding-method-label { display: flex; align-items: center; gap: 7px; font-size: 11px; color: #43577d; }
.funding-method .asset-logo { width: 23px; height: 23px; }
.funding-method .asset-logo--banknote { width: 28px; height: 18px; }
.funding-payment-quote { font-size: 12px; font-weight: 600; color: #365db0; overflow-wrap: anywhere; }
.funding-payment-status { grid-column: 1 / -1; color: #8c99b1; font-size: 9px; }
.funding-method.is-insufficient { background: #fafbfe; cursor: not-allowed; }
.funding-method.is-insufficient .funding-payment-status { color: #b2695c; }
.funding-summary strong { font-size: 15px; }
.button:disabled { transform: none; }
@media(max-width:450px) {
 .funding-method-content { grid-template-columns: 1fr; gap: 5px; }
 .funding-payment-quote { font-size: 11px; }
}
.funding-method>input[type=radio] { min-height: 0; padding: 0; flex-shrink: 0; border-radius: 50%; }

.transfer-wallet-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid #edf1f8; color: #6c7e9d; font-size: 12px; }
.transfer-wallet-row:last-child { border: 0; }
.transfer-wallet-row>span { display: flex; align-items: center; gap: 9px; }
.transfer-wallet-row .asset-logo { width: 27px; height: 27px; }
.transfer-wallet-row .asset-logo--banknote { width: 32px; height: 20px; }
.transfer-wallet-row b { color: #405781; font-weight: 550; overflow-wrap: anywhere; }
#transfer-summary strong { font-size: 16px; overflow-wrap: anywhere; }
.contact-settings { border-top: 1px solid #e8edf7; margin-top: 22px; padding-top: 22px; }

/* Public reference prices sit below the personal balances. */
.market-panel { margin-top: 18px; padding: 17px 20px 13px; border: 1px solid #e1e7f3; border-radius: 16px; background: #fff; }
.market-panel-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.market-panel-heading h2 { font-size: 14px; color: #344b74; }
#market-status { display: inline-flex; align-items: center; gap: 6px; font-size: 10px; color: #8b96ac; }
#market-status::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #a9b3c8; }
#market-status[data-status=fresh] { color: #517c6b; }
#market-status[data-status=fresh]::before { background: #63a087; }
#market-status[data-status=stale], #market-status[data-status=partial] { color: #a28653; }
#market-status[data-status=stale]::before, #market-status[data-status=partial]::before { background: #c2a064; }
.market-quotes { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.market-quote { min-width: 0; border-left: 1px solid #edf1f8; padding-left: 18px; }
.market-quote:last-child { border-left: 0; padding-left: 0; }
.market-asset { display: flex; align-items: center; gap: 8px; }
.market-asset .asset-logo { width: 23px; height: 23px; }
.market-asset .asset-logo--banknote { width: 31px; height: 19px; }
.market-asset h3 { font-size: 11px; font-weight: 550; color: #6b7c9e; }
.market-asset h3 small { font-size: 9px; font-weight: 400; }
.market-price { display: flex; flex-wrap: wrap; gap: 5px; align-items: baseline; margin-top: 8px; }
.market-price bdi { font-size: 18px; font-weight: 650; color: #304775; overflow-wrap: anywhere; }
.market-price>span { font-size: 9px; color: #9ba6bd; }
.market-price--stale bdi { color: #78869f; }
.market-quote-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.market-change { font-size: 10px; color: #8c98af; }
.market-change.positive { color: #45866b; }
.market-change.negative { color: #b56a66; }
.market-quote time { font-size: 8px; color: #9ca8bd; }
.market-note { font-size: 9px; color: #8c98af; border-top: 1px solid #eff2f8; padding-top: 10px; margin-top: 12px; }
.market-note a { color: #5277bd; text-underline-offset: 3px; }
.market-note a:hover { text-decoration: underline; }
@media(max-width:950px) {
 .market-quotes { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
 .market-quote:nth-child(2n) { border-left: 0; padding-left: 0; }
}
@media(max-width:650px) {
 .market-panel { padding: 17px 15px; }
 .market-price bdi { font-size: 16px; }
 .market-quotes { gap: 17px 12px; }
 .market-quote { padding-left: 12px; }
 .market-note { font-size: 8px; line-height: 2; }
}

/* Soft blue skeletons retain the amount's footprint while data is unknown. */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.loading-placeholder, .balance-number.is-loading:empty { position: relative; display: inline-block; width: 116px; max-width: 100%; height: 22px; vertical-align: middle; border-radius: 7px; background: #e8efff; overflow: hidden; }
.loading-placeholder::after, .balance-number.is-loading:empty::after { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 10%, #f7faff 48%, transparent 85%); transform: translateX(110%); animation: soft-skeleton-shine 1.7s ease-in-out infinite; }
.loading-placeholder--small { width: 39px; height: 10px; border-radius: 4px; }
.balance-number.is-loading .loading-placeholder { width: 135px; height: 26px; }
.balance-tile--total .loading-placeholder { background: #91b6ff55; }
.balance-tile--total .loading-placeholder::after { background: linear-gradient(100deg, transparent 10%, #dbe9ff66 48%, transparent 85%); }
.soft-loader { width: 12px; height: 12px; display: inline-block; flex-shrink: 0; border: 2px solid #dbe7ff; border-top-color: #789de8; border-radius: 50%; animation: soft-loader-turn .9s linear infinite; }
.balances-title-group { display: flex; align-items: center; gap: 13px; flex-wrap: wrap; }
.balances-fetch-status { display: inline-flex; align-items: center; gap: 6px; color: #91a6cf; font-size: 10px; }
.balances-fetch-status[data-loading=false] .soft-loader { display: none; }
.balances-retry { border: 0; padding: 2px 6px; border-radius: 5px; background: #edf3ff; color: #5f82c5; font-size: 10px; }
#live-market[data-loading=true] #market-status::before { width: 9px; height: 9px; border: 2px solid #dbe7ff; border-top-color: #789de8; border-radius: 50%; background: transparent; animation: soft-loader-turn .9s linear infinite; }
#live-market .is-loading { color: transparent; }
#live-market .market-price:has(.is-loading)>span { opacity: .45; }
.button-pending::after { content: ''; width: 14px; height: 14px; border: 2px solid #dce8ff70; border-top-color: #fff; border-radius: 50%; animation: soft-loader-turn .9s linear infinite; }
.button-pending>svg, .button-pending>span[aria-hidden] { display: none; }
@keyframes soft-skeleton-shine { 0% { transform: translateX(110%); } 100% { transform: translateX(-110%); } }
@keyframes soft-loader-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
 .loading-placeholder::after, .balance-number.is-loading:empty::after, .soft-loader, #live-market[data-loading=true] #market-status::before, .button-pending::after { animation: none; }
}
@media(max-width:650px) {
 .balances-title-group { gap: 4px; }
 .balances-fetch-status { font-size: 8px; }
 .balance-number.is-loading .loading-placeholder { width: 85px; height: 21px; }
 .loading-placeholder { width: 90px; height: 18px; }
 .loading-placeholder--small { width: 35px; height: 9px; }
}

/* Partner directory: future places to pay with Walt. */
.partners-intro { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-bottom: 25px; }
.partners-intro h1 { font-size: 30px; }
.partners-intro p { margin-top: 8px; font-size: 12px; color: #7f8eaa; }
.partners-mark { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 17px; background: #e8efff; color: var(--ui-primary); }
.partners-mark svg { width: 26px; height: 26px; }
.partners-banner { display: grid; grid-template-columns: 1fr 170px; gap: 15px 30px; padding: 30px 32px 18px; background: linear-gradient(120deg,#3159ce,#547ee7); color: #fff; border-radius: 21px; overflow: hidden; position: relative; isolation: isolate; }
.partners-banner::before { content: ''; position: absolute; z-index: -1; width: 310px; height: 310px; left: -140px; top: -190px; border: 1px solid #ffffff1a; border-radius: 50%; box-shadow: 0 0 0 45px #ffffff06, 0 0 0 90px #ffffff04; }
.partners-banner-label { color: #cedcff; font-size: 10px; }
.partners-banner h2 { font-size: 25px; margin-top: 8px; font-weight: 650; }
.partners-banner p { color: #d1dfff; font-size: 12px; margin-top: 10px; }
.partners-banner-art { display: flex; align-items: center; position: relative; justify-content: center; min-height: 100px; }
.partners-mini-card { width: 118px; height: 76px; border-radius: 12px; background: linear-gradient(120deg,#f3f7ff,#bed4ff); color: #4069c4; box-shadow: 0 14px 25px #1e409a22; transform: rotate(-12deg); font: 700 34px Arial,sans-serif; padding: 8px 14px; direction: ltr; }
.partners-mini-card>span { color: #769ae2; }
.partners-mini-card i { display: block; width: 23px; height: 3px; margin-top: 8px; border-radius: 2px; background: #8bacdf; }
.partners-banner-art>svg { width: 40px; height: 40px; padding: 9px; border-radius: 12px; background: #ffffff24; border: 1px solid #ffffff33; position: absolute; left: 8px; bottom: 5px; stroke-width: 1.5; }
.partners-banner-footer { grid-column: 1 / -1; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; border-top: 1px solid #ffffff24; padding-top: 14px; margin-top: 8px; font-size: 10px; color: #ccdcff; }
.partners-banner-footer a { color: #fff; }
.partners-tools { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 15px; margin-top: 32px; }
.partners-tools h2 { font-size: 16px; }
.partners-tools p { font-size: 10px; color: #8c99b2; margin-top: 5px; }
.partners-search { display: flex; gap: 8px; width: 310px; }
.partners-search input { min-height: 42px; font-size: 11px; border-radius: 9px; padding-block: 8px; background: #fff; border-color: #e0e7f4; }
.partners-search button { border: 1px solid #dce6fa; padding: 7px 13px; border-radius: 9px; background: #edf3ff; color: #5274be; font-size: 11px; }
.partners-filters { margin-top: 20px; margin-bottom: 19px; gap: 7px; }
.partners-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.partner-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e0e7f3; border-radius: 17px; padding: 22px 21px 17px; min-width: 0; }
.partner-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.partner-icon { display: grid; place-items: center; width: 49px; height: 49px; border-radius: 15px; background: #eaf0ff; color: #5277cc; }
.partner-icon svg { width: 25px; height: 25px; stroke-width: 1.5; }
.partner-card--learning .partner-icon { background: #eff0fc; color: #7f80b9; }
.partner-card--digital .partner-icon { background: #eaf3ff; color: #598cbc; }
.partner-card--travel .partner-icon { background: #edf5f7; color: #5e909b; }
.partner-state { color: #8396bb; border: 1px solid #e4eaf6; background: #f7f9fe; border-radius: 6px; font-size: 9px; padding: 3px 8px; }
.partner-category { font-size: 9px; color: #97a5be; }
.partner-card h3 { font-size: 17px; color: #3b507c; margin: 5px 0 8px; }
.partner-card>p { font-size: 11px; line-height: 2.1; color: #8997af; min-height: 48px; }
.partner-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 9px; color: #9ba6b8; margin: 18px 0; }
.partner-demo { display: inline-block; border-radius: 5px; background: #f0f4fc; color: #8496bd; padding: 2px 7px; }
.partner-card-bottom { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; border-top: 1px solid #edf1f8; margin-top: auto; padding-top: 14px; font-size: 9px; color: #a0adc1; }
.partner-card-bottom>a { color: var(--ui-primary); font-size: 10px; }
.partner-payment-pending { display: inline-flex; align-items: center; gap: 4px; color: #97a6bf; }
.partner-payment-pending svg { width: 12px; height: 12px; }
.partners-empty { grid-column: 1/-1; text-align: center; padding: 48px 24px; }
.partners-empty>svg { width: 36px; height: 36px; color: #91a7cf; margin-bottom: 12px; }
.partners-empty h3 { color: #697fa6; }
.partners-empty p { color: #94a3bc; font-size: 11px; margin: 10px 0 15px; }
.partners-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; padding-top: 28px; margin-top: 30px; border-top: 1px solid #e0e7f3; }
.partners-steps>div { position: relative; padding-right: 36px; }
.partners-steps>div>span { position: absolute; right: 0; top: 1px; font-size: 13px; color: #9bb1da; }
.partners-steps h3 { font-size: 12px; font-weight: 550; color: #6880a7; }
.partners-steps p { color: #97a5bc; font-size: 10px; margin-top: 6px; }
@media(max-width:1100px) { .partners-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
 .sidebar nav { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 1px; }
 .sidebar .nav-link { min-width: 0; padding-inline: 2px; font-size: 8px; white-space: normal; text-align: center; min-height: 57px; justify-content: flex-start; line-height: 1.5; }
 .sidebar .nav-link svg { width: 18px; height: 18px; }
 .partners-intro h1 { font-size: 25px; }
 .partners-intro p { font-size: 10px; }
 .partners-mark { width: 43px; height: 43px; border-radius: 13px; flex-shrink: 0; }
 .partners-banner { padding: 23px 20px 15px; grid-template-columns: 1fr; gap: 10px; }
 .partners-banner-art { display: none; }
 .partners-banner h2 { font-size: 20px; }
 .partners-banner p { font-size: 10px; }
 .partners-banner-footer { font-size: 9px; line-height: 2; }
 .partners-tools { margin-top: 25px; }
 .partners-tools h2 { font-size: 14px; }
 .partners-search { width: 100%; }
 .partners-grid { grid-template-columns: 1fr; gap: 15px; }
 .partner-card { padding: 21px; }
 .partner-card-top { margin-bottom: 16px; }
 .partner-card>p { min-height: 0; }
 .partners-steps { grid-template-columns: 1fr; gap: 20px; }
}

/* Connected portfolio: external sample balances are distinct from internal funds. */
.connections-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.connections-heading h1 { font-size:30px; letter-spacing:-1px; margin:5px 0 8px; }
.connections-heading p { color:#74829b; font-size:12px; line-height:2; }
.connections-heading .button { flex-shrink:0; }
.connections-notice { display:flex; align-items:flex-start; gap:12px; padding:16px 20px; margin-bottom:22px; background:#f7f9ff; border:1px solid #dbe5f9; border-radius:14px; color:#536b98; }
.connections-notice>svg { width:23px; height:23px; flex-shrink:0; }
.connections-notice strong { font-size:12px; }
.connections-notice p { font-size:11px; line-height:2; margin-top:4px; }
.connections-overview { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:16px; margin-bottom:32px; }
.connections-summary { position:relative; padding:23px; border:1px solid #e0e6f2; border-radius:17px; background:#fff; min-width:0; overflow:hidden; }
.connections-summary>span { font-size:12px; color:#6c7c98; }
.connections-summary>strong { display:block; margin:16px 0 12px; font-size:26px; line-height:1.5; overflow-wrap:anywhere; }
.connections-summary small { font-size:10px; font-weight:400; }
.connections-summary p { font-size:10px; color:#8896ad; line-height:1.9; }
.connections-summary--main { background:linear-gradient(125deg,#315bd0,#527de5); border-color:transparent; color:white; }
.connections-summary--main>span,.connections-summary--main p { color:#e0e9ff; }
.connections-summary--main>svg { position:absolute; left:20px; top:20px; width:26px; height:26px; opacity:.35; }
.connections-columns { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr); gap:24px; align-items:start; }
.connections-section-title { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 0 17px; }
.connections-section-title h2 { font-size:16px; }
.connections-section-title>span,.connections-section-title>a { font-size:10px; color:#6f85ac; }
.connected-source { border:1px solid #e0e6f2; border-radius:17px; background:white; padding:22px; margin-bottom:18px; }
.connected-source>header { display:flex; align-items:center; gap:12px; }
.connected-source-icon { display:grid; place-items:center; width:46px; height:46px; background:#edf2ff; color:#5379c6; border-radius:14px; flex-shrink:0; }
.connected-source-icon svg { width:24px; height:24px; }
.connected-source h3 { font-size:15px; color:#354d77; }
.connected-source header p { font-size:9px; color:#8c99af; margin-top:5px; }
.connection-badge { font-size:9px; color:#8e7444; background:#faf4e7; padding:4px 9px; border-radius:6px; }
.connected-source header .connection-badge { margin-right:auto; }
.connected-source-value { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:8px; border-bottom:1px solid #edf0f7; padding:21px 0 17px; }
.connected-source-value>span { font-size:10px; color:#8392ab; }
.connected-source-value strong { font-size:17px; color:#3c5685; }
.connected-source-value small { font-size:9px; font-weight:400; }
.connected-asset { padding:17px 0; border-bottom:1px solid #edf0f7; }
.connected-asset-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.connected-asset-name { display:flex; align-items:center; gap:10px; font-size:12px; color:#4e648a; }
.connected-asset-name small { display:block; font-size:9px; color:#92a0b6; margin-top:3px; }
.connected-asset .asset-logo { width:32px; height:32px; }
.connected-asset-heading>strong { font-size:17px; color:#354d77; }
.connected-asset-heading>strong small { font-size:9px; color:#8494af; font-weight:400; }
.connected-transfer { margin-top:10px; }
.connected-transfer>summary { cursor:pointer; font-size:10px; color:#456dc2; padding:7px 0; }
.connected-transfer-form { padding:14px; border-radius:12px; background:#f7f9ff; margin-top:7px; }
.connected-transfer-form>p { font-size:11px; color:#60789f; }
.connected-transfer-form .field { margin-top:13px; }
.connected-transfer-form .field>label { font-size:11px; }
.connected-transfer-form .checkbox { display:flex; align-items:flex-start; gap:8px; font-size:10px; margin:18px 0; line-height:2; }
.connected-transfer-form .button { width:100%; }
.connected-source>footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:14px; padding:0; border:0; font-size:9px; color:#91a0b8; }
.connection-remove { border:0; background:transparent; font-size:10px; color:#927780; padding:6px 0; cursor:pointer; }
.connection-add,.connection-guide { border:1px solid #e0e6f2; background:white; border-radius:17px; padding:23px; margin-bottom:18px; }
.connection-add { background:linear-gradient(150deg,#eff4ff,#fff); scroll-margin-top:25px; }
.connection-kicker { font-size:10px; color:#708eca; }
.connection-add h2 { font-size:19px; margin:9px 0; color:#3c5480; }
.connection-add>p { font-size:11px; color:#7d8eaa; line-height:2.1; }
.connection-add .button { margin-top:17px; width:100%; }
.connection-add .field>label { font-size:11px; }
.connection-add p.connection-footnote { margin-top:16px; font-size:10px; color:#8c9ab1; }
.connection-guide h2 { font-size:14px; color:#465e88; }
.connection-guide ol { padding-right:21px; margin-top:20px; }
.connection-guide li { padding:0 7px 19px 0; color:#6d86b4; }
.connection-guide li strong { font-size:11px; color:#61779c; }
.connection-guide li p { margin-top:5px; font-size:10px; color:#8a9ab3; line-height:2; }
.connection-safety { display:flex; gap:9px; border-top:1px solid #edf0f7; padding-top:15px; }
.connection-safety svg { width:19px; height:19px; color:#748db7; flex-shrink:0; }
.connection-safety p { font-size:10px; line-height:2; color:#8a9ab3; }
.connections-empty { display:flex; flex-direction:column; align-items:center; text-align:center; padding:45px 25px; background:#fff; border:1px dashed #d3dff3; border-radius:17px; }
.connections-empty h3 { margin-top:19px; font-size:16px; color:#536c95; }
.connections-empty p { font-size:11px; color:#8799b5; line-height:2.2; max-width:320px; margin:12px 0 20px; }
.connections-empty .button { background:#edf3ff; color:#4c70bc; font-size:11px; }
.connections-recent { margin-top:25px; padding:22px; border:1px solid #e0e6f2; border-radius:17px; background:#fff; }
.connection-receipt { display:flex; align-items:center; gap:12px; padding:17px 0; border-top:1px solid #edf0f7; }
.connection-receipt>svg { width:23px; height:23px; color:#7a94c2; flex-shrink:0; }
.connection-receipt strong { font-size:11px; font-weight:500; color:#536b92; }
.connection-receipt small { display:block; font-size:9px; color:#97a4ba; margin-top:6px; overflow-wrap:anywhere; }
.connection-receipt time { margin-right:auto; white-space:nowrap; font-size:9px; color:#8a9bb6; }
.connections-recent-empty { font-size:11px; color:#8c9bb2; padding:12px 0; }
.connections-form-error { background:#fff5f3; border:1px solid #efd6d1; border-radius:14px; padding:18px; margin-bottom:22px; color:#a35f52; font-size:12px; }
.connections-form-error h2 { font-size:14px; margin-bottom:8px; }
@media(max-width:1100px) { .connections-overview { grid-template-columns:1fr 1fr; } .connections-summary--main { grid-column:1/-1; } .connections-columns { grid-template-columns:1fr; } .connections-aside { display:grid; grid-template-columns:1fr 1fr; gap:18px; } }
@media(max-width:650px) {
 .sidebar nav { grid-template-columns:repeat(7,minmax(0,1fr)); }
 .sidebar .nav-link { font-size:7px; }
 .connections-heading { align-items:flex-start; flex-direction:column; gap:14px; }
 .connections-heading h1 { font-size:25px; }
 .connections-heading p { font-size:11px; }
 .connections-notice { padding:14px; }
 .connections-overview { gap:10px; margin-bottom:24px; }
 .connections-summary { padding:17px 14px; }
 .connections-summary>strong { font-size:21px; }
 .connections-summary>span { font-size:10px; }
 .connections-summary p { font-size:9px; }
 .connections-aside { grid-template-columns:1fr; gap:0; }
 .connected-source { padding:18px; }
 .connected-source>footer { flex-wrap:wrap; }
 .connections-section-title h2 { font-size:14px; }
 .connection-receipt { flex-wrap:wrap; }
 .connection-receipt>div { flex:1; min-width:0; }
 .connection-receipt time { width:100%; padding-right:35px; }
}

/* Durable market reports: each asset has its own price axis in toman. */
.price-report-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:25px; }
.price-report-heading h1 { font-size:30px; margin:7px 0; letter-spacing:-.8px; }
.price-report-heading p { font-size:12px; color:#8290aa; line-height:2; }
.price-report-heading>a { background:#fff; border:1px solid #dfe7f5; font-size:11px; color:#5976ac; flex-shrink:0; }
.price-report-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; padding:15px 18px; background:#fff; border:1px solid #e0e7f3; border-radius:14px; }
.price-range-tabs { display:flex; gap:5px; }
.price-range-tabs a { padding:9px 17px; border-radius:8px; font-size:11px; color:#8191ac; }
.price-range-tabs a.selected { background:#edf3ff; color:#3d66c6; font-weight:650; }
.price-report-tools { display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.price-report-tools>span { font-size:9px; color:#94a1b9; }
.price-refresh { font-size:10px; color:#5476b9; }
.price-report-note { color:#8d9bb2; font-size:10px; line-height:2.2; margin:13px 0 22px; }
.price-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.price-chart-card { background:#fff; border:1px solid #e0e7f3; border-radius:18px; padding:23px 21px 17px; min-width:0; }
.price-chart-card>header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.price-chart-name { display:flex; align-items:center; gap:11px; }
.price-chart-name .asset-logo { width:35px; height:35px; }
.price-chart-name .asset-logo--banknote { width:42px; height:27px; }
.price-chart-name h2 { color:#3f557b; font-size:14px; }
.price-chart-name span { display:block; color:#9aa7bc; font-size:8px; letter-spacing:.6px; margin-top:4px; direction:ltr; text-align:right; }
.price-quote-state { font-size:8px; background:#f0f6f4; color:#668f7f; border-radius:5px; padding:4px 7px; white-space:nowrap; }
.price-quote-state.is-stale { color:#a18655; background:#faf5eb; }
.price-chart-value { display:flex; flex-wrap:wrap; align-items:baseline; gap:7px; margin-top:22px; }
.price-chart-value>strong { font-size:26px; color:#304c7c; font-weight:700; overflow-wrap:anywhere; }
.price-chart-value>span { color:#94a1b7; font-size:10px; }
.price-chart-value .price-change-unknown { font-size:9px; margin-right:auto; }
.price-range-change { margin-right:auto; font-size:11px; color:#8392ab; background:#f5f7fb; border-radius:5px; padding:3px 7px; }
.price-range-change.positive { color:#47896a; background:#edf7f1; }
.price-range-change.negative { color:#b36760; background:#fcf1ef; }
.price-last-observed { font-size:9px; color:#9aa8be; margin-top:7px; }
.price-chart-canvas { height:230px; margin-top:12px; direction:ltr; }
.price-chart-canvas svg { display:block; width:100%; height:100%; overflow:visible; touch-action:pan-y; font-family:inherit; }
.price-chart-canvas svg:focus-visible { outline:2px solid #9eb5ed; outline-offset:3px; border-radius:8px; }
.price-chart-placeholder { display:grid; place-items:center; text-align:center; height:100%; color:#9aaac2; font-size:11px; border-radius:12px; background:linear-gradient(180deg,#f6f9ff,#fff); padding:20px; }
.price-chart-tooltip { font-size:9px; color:#7e91b1; min-height:40px; line-height:2; padding:9px 0; }
.price-chart-stats { display:grid; grid-template-columns:1fr 1fr .75fr; gap:9px; padding-top:15px; border-top:1px solid #edf1f8; }
.price-chart-stats dt { font-size:9px; color:#8a9bb6; margin-bottom:7px; }
.price-chart-stats dd { margin:0; font-size:13px; color:#55709c; overflow-wrap:anywhere; }
.price-view-log { display:block; font-size:10px; color:#6486c5; margin-top:18px; }
.price-log-panel { border:1px solid #e0e7f3; border-radius:18px; padding:23px; margin-top:25px; background:#fff; scroll-margin-top:20px; }
.price-log-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-bottom:22px; }
.price-log-heading h2 { font-size:17px; color:#3f567d; }
.price-log-heading p { font-size:10px; color:#93a1b8; margin-top:7px; }
.price-log-heading form { display:flex; gap:8px; align-items:center; }
.price-log-heading select { min-height:40px; font-size:11px; max-width:220px; }
.price-log-heading .button { min-height:40px; font-size:11px; background:#edf3ff; color:#577fc5; }
.price-log-scroll { overflow-x:auto; }
.price-log-table { width:100%; border-collapse:collapse; white-space:nowrap; text-align:right; }
.price-log-table th { font-size:10px; font-weight:500; color:#879bbd; background:#f7f9fd; padding:13px; }
.price-log-table td { font-size:11px; color:#687f9f; padding:16px 13px; border-bottom:1px solid #eff2f8; }
.price-log-table td>bdi { color:#3e5f91; font-weight:600; }
.price-log-table time { font-size:10px; }
.price-log-asset { display:flex; align-items:center; gap:9px; }
.price-log-asset .asset-logo { width:24px; height:24px; }
.price-log-asset .asset-logo--banknote { width:30px; height:20px; }
.price-log-table td.price-log-empty { text-align:center; white-space:normal; padding:35px 20px; line-height:2.2; color:#97a6bb; }
@media(max-width:1150px) { .price-chart-grid { grid-template-columns:1fr; } }
@media(max-width:650px) {
 .price-report-heading { align-items:flex-start; flex-direction:column; gap:13px; }
 .price-report-heading h1 { font-size:25px; }
 .price-report-heading p { font-size:11px; }
 .price-report-toolbar { padding:12px; gap:10px; }
 .price-report-tools { gap:10px; }
 .price-range-tabs a { padding:8px 14px; }
 .price-chart-card { padding:20px 16px 16px; }
 .price-chart-name h2 { font-size:12px; }
 .price-chart-value>strong { font-size:24px; }
 .price-quote-state { font-size:7px; }
 .price-chart-stats dd { font-size:11px; }
 .price-chart-canvas { height:210px; }
 .price-log-panel { padding:18px 13px; }
 .price-log-heading form { width:100%; }
 .price-log-heading select { flex:1; max-width:none; }
}

.market-chart-action { display:flex; justify-content:flex-end; margin-top:7px; }
.market-chart-button { display:grid; place-items:center; width:29px; height:27px; border:1px solid #e0e9fa; border-radius:7px; color:#6e8bc2; background:#f5f8ff; cursor:pointer; }
.market-chart-button:hover { color:#305ce2; background:#eaf1ff; }
.market-chart-button svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.market-chart-dialog { width:min(760px,calc(100vw - 32px)); max-width:none; }
.market-chart-dialog .exchange-dialog-header { align-items:center; }
.market-chart-dialog .exchange-dialog-header h2 { font-size:19px; }
.market-chart-ranges { margin:10px 0 17px; }
.market-chart-ranges button { border:0; padding:8px 18px; border-radius:8px; background:transparent; color:#8a9bb7; font-size:11px; cursor:pointer; }
.market-chart-ranges button[aria-pressed=true] { background:#edf3ff; color:#3d66c6; }
.market-chart-dialog .price-chart-canvas { height:280px; display:grid; place-items:center; }
.market-chart-dialog .price-chart-canvas>svg { min-width:0; }
.market-chart-dialog .price-chart-tooltip { margin-top:12px; min-height:36px; }
.market-chart-retry { border:0; border-radius:8px; padding:8px 14px; background:#edf3ff; color:#5276bb; cursor:pointer; font-size:11px; }
.market-chart-retry[hidden] { display:none; }
@media(max-width:650px) { .market-chart-dialog .price-chart-canvas { height:230px; } .market-chart-dialog .exchange-dialog-header h2 { font-size:16px; } }

/* Market terminal: quiet typography, baseline colors, and hourly observations. */
.market-chart-dialog { width:min(900px,calc(100vw - 36px)); padding:27px 30px 22px; border-radius:24px; border:1px solid #e6ebf2; box-shadow:0 32px 100px #10234030; font-family:Vazirmatn,Tahoma,sans-serif; color:#243348; max-height:calc(100dvh - 38px); }
.market-chart-dialog::backdrop { background:#12213a66; backdrop-filter:blur(7px); }
.market-chart-header { margin-bottom:17px; padding-bottom:16px; border-bottom:1px solid #f0f3f7; }
.chart-eyebrow { display:block; font:500 9px Arial,sans-serif; letter-spacing:2px; color:#a2adbc; margin-bottom:6px; }
.market-chart-dialog .market-chart-header h2 { font-size:18px; font-weight:650; letter-spacing:-.4px; color:#26364d; }
.market-chart-dialog .exchange-dialog-close { width:32px; height:32px; background:#f5f7fa; color:#94a0b2; border-radius:50%; }
.chart-market-summary { display:flex; justify-content:space-between; align-items:center; gap:15px; margin:0 0 20px; }
.chart-price-caption { display:block; font-size:10px; color:#99a5b5; }
.chart-price-caption>span { margin-right:6px; color:#b2bcc9; }
.chart-headline-price { display:flex; align-items:center; flex-wrap:wrap; gap:13px; margin-top:7px; }
.chart-headline-price>bdi { font-size:34px; font-weight:550; letter-spacing:-1px; font-variant-numeric:tabular-nums; line-height:1.5; color:#26374f; }
.chart-change-pill { background:#f1f4f7; color:#9ba7b8; border-radius:7px; padding:4px 8px; font-size:11px; direction:ltr; }
.chart-change-pill.positive { background:#e9f8f2; color:#0e9a71; }
.chart-change-pill.negative { background:#fff0f2; color:#e5576a; }
.chart-source-status { display:flex; align-items:center; gap:6px; font-size:9px; color:#7e96a4; white-space:nowrap; }
.chart-source-status::before { content:''; width:5px; height:5px; border-radius:50%; background:#24b58d; }
.chart-source-status.is-stale::before { background:#d9ae61; }
.chart-controls { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; padding-bottom:4px; }
.market-chart-dialog .market-chart-ranges { margin:0; padding:3px; border-radius:10px; background:#f4f6f9; gap:2px; }
.market-chart-ranges button { padding:7px 17px; font-size:10px; border-radius:8px; color:#93a0b3; }
.market-chart-ranges button[aria-pressed=true] { background:#fff; color:#344b6c; box-shadow:0 2px 7px #243b5a0a; font-weight:600; }
.chart-view-switch { display:flex; gap:5px; }
.chart-view-switch button { border:0; background:none; padding:7px 10px; color:#a0acbc; font-size:10px; border-radius:7px; }
.chart-view-switch button[aria-pressed=true] { color:#39577c; background:#eff4fa; }
.market-chart-dialog .price-chart-canvas { height:265px; margin-top:8px; position:relative; }
.price-chart-canvas { position:relative; }
.price-chart-canvas svg { font-family:Vazirmatn,Tahoma,sans-serif; font-variant-numeric:tabular-nums; }
.price-chart-canvas svg text { stroke:none; letter-spacing:0; font-family:Vazirmatn,Tahoma,sans-serif; }
.market-chart-dialog .price-chart-tooltip { font-size:10px; font-weight:400; color:#9aa8ba; min-height:27px; margin-top:0; padding:4px 0; }
.chart-floating-price { position:absolute; pointer-events:none; z-index:2; width:168px; padding:10px 12px; border:1px solid #e9eef5; border-radius:11px; background:#fffefcfa; box-shadow:0 7px 25px #2b436312; text-align:center; direction:rtl; backdrop-filter:blur(10px); }
.chart-floating-price strong { display:block; font-size:12px; font-weight:600; color:#30445f; font-variant-numeric:tabular-nums; }
.chart-floating-price>span { display:block; font-size:9px; color:#9aa8ba; margin-top:2px; }
.chart-range-metrics { display:grid; grid-template-columns:1fr 1fr 1fr; border-top:1px solid #f0f3f7; padding:15px 0 13px; gap:18px; }
.chart-range-metrics>div { display:flex; flex-direction:column; gap:6px; }
.chart-range-metrics span { font-size:9px; color:#9eabba; }
.chart-range-metrics bdi,.chart-range-metrics strong { font-size:13px; color:#526780; font-weight:500; font-variant-numeric:tabular-nums; }
.chart-hourly-section { border-top:1px solid #f0f3f7; padding-top:13px; }
.chart-hourly-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:11px; gap:10px; }
.chart-hourly-heading h3 { font-size:11px; font-weight:550; color:#526780; }
.chart-hourly-heading>span { font-size:9px; color:#abb5c3; }
.chart-hourly-strip { display:flex; gap:7px; overflow-x:auto; padding-bottom:7px; scrollbar-width:thin; scrollbar-color:#dce5ee transparent; overscroll-behavior-x:contain; }
.chart-hour-card { display:flex; flex-direction:column; justify-content:center; gap:6px; flex:0 0 109px; padding:10px; background:#f9fbfc; border:1px solid #edf1f5; border-radius:9px; text-align:right; font-family:inherit; }
.chart-hour-card>span { font-size:9px; color:#9aa7b7; }
.chart-hour-card>bdi { font-size:11px; font-weight:500; color:#62768d; font-variant-numeric:tabular-nums; }
.chart-hour-card.positive>bdi { color:#129c76; }
.chart-hour-card.negative>bdi { color:#de596b; }
.chart-hour-card.is-missing { border-style:dashed; background:#fcfdfe; }
.chart-hour-card.is-missing>bdi { color:#c0cad6; }
.chart-hour-card.selected { border-color:#87b7dd; background:#f0f7fc; }
.chart-history-note { margin-top:6px; font-size:9px; color:#a3afbf; line-height:1.9; }
@media(max-width:650px) {
 .market-chart-dialog { width:calc(100vw - 20px); padding:19px 17px 16px; border-radius:20px; max-height:calc(100dvh - 24px); }
 .market-chart-dialog .market-chart-header h2 { font-size:15px; }
 .chart-headline-price>bdi { font-size:27px; }
 .chart-market-summary { margin-bottom:15px; }
 .chart-source-status { font-size:8px; }
 .chart-change-pill { font-size:9px; padding:3px 6px; }
 .market-chart-ranges button { padding:6px 12px; }
 .market-chart-dialog .price-chart-canvas { height:235px; }
 .chart-range-metrics { gap:9px; }
 .chart-range-metrics bdi,.chart-range-metrics strong { font-size:11px; }
 .chart-range-metrics span { font-size:8px; }
 .chart-hour-card { flex-basis:100px; }
}

/* Fixed chart geometry: SVG must not expand its grid row into captions. */
.market-chart-dialog { width:min(880px,calc(100vw - 32px)); padding:24px 28px 20px; overflow-x:hidden; scrollbar-width:thin; }
.market-chart-dialog .market-chart-header { position:relative; margin-bottom:15px; }
.market-chart-header>div { display:flex; flex-wrap:wrap; align-items:center; gap:5px 12px; min-width:0; }
.market-chart-header h2 { flex:0 0 100%; }
.market-chart-header .chart-eyebrow { margin:0; }
.chart-data-toggle { background:#fff7e7; color:#a47b30; border:1px solid #f1e2c1; border-radius:6px; padding:3px 8px; font-size:9px; white-space:nowrap; }
.chart-data-toggle[aria-pressed=false] { background:#eff8f5; color:#458773; border-color:#d8eee6; }
.chart-source-status.is-demo { color:#ac863f; }
.chart-source-status.is-demo::before { background:#d6a34c; }
.market-chart-dialog [data-modal-chart-body] { display:flex; flex-direction:column; gap:0; min-width:0; }
.market-chart-dialog .price-chart-canvas { display:block; position:relative; height:252px; min-height:252px; flex:0 0 252px; width:100%; overflow:hidden; isolation:isolate; margin:12px 0 0; }
.market-chart-dialog .price-chart-canvas>svg { position:absolute; inset:0; display:block; width:100%; height:100%; min-height:0; max-height:100%; min-width:0; }
.market-chart-dialog .price-chart-canvas>.soft-loader { position:absolute; left:calc(50% - 6px); top:45%; }
.market-chart-dialog .price-chart-tooltip { display:block; position:relative; flex:none; width:100%; min-height:32px; height:auto; margin:10px 0 5px; padding:0; line-height:1.9; overflow-wrap:anywhere; }
.market-chart-dialog .chart-controls { display:flex; flex-wrap:nowrap; min-height:42px; gap:16px; clear:both; }
.market-chart-dialog .chart-controls>div { flex-shrink:0; }
.market-chart-dialog .chart-market-summary { margin-bottom:12px; }
.market-chart-dialog .chart-range-metrics { margin-top:4px; padding-top:13px; gap:18px; }
.market-chart-dialog .chart-range-metrics>div { min-width:0; padding-left:12px; }
.market-chart-dialog .chart-range-metrics>div+div { border-right:1px solid #edf2f7; padding-right:18px; }
.market-chart-dialog .chart-range-metrics bdi { overflow-wrap:anywhere; }
.market-chart-dialog .chart-hourly-strip { padding:1px 0 9px; }
.market-chart-dialog .chart-hour-card { flex-basis:116px; min-width:116px; min-height:62px; padding:9px 11px; }
.market-chart-dialog .chart-hour-card>bdi { font-size:11px; letter-spacing:0; }
.market-chart-dialog .chart-history-note { margin-top:7px; }
@media(max-width:650px) {
 .market-chart-dialog { padding:18px 16px; width:calc(100vw - 20px); }
 .market-chart-dialog .chart-controls { flex-wrap:wrap; gap:8px; }
 .market-chart-dialog .price-chart-canvas { height:224px; min-height:224px; flex-basis:224px; }
 .market-chart-dialog .chart-range-metrics { gap:8px; }
 .market-chart-dialog .chart-range-metrics>div+div { padding-right:9px; }
 .chart-source-status { white-space:normal; max-width:90px; line-height:1.8; }
 .chart-headline-price>bdi { font-size:25px; }
}

.toman-amount-hint { margin:9px 2px 0; color:#547cb7; font-size:12px; font-weight:550; line-height:1.9; }
input[inputmode=numeric] { direction:ltr; text-align:right; font-variant-numeric:tabular-nums; letter-spacing:.5px; }

.live-price-status { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:14px 0; font-size:10px; line-height:1.9; color:#768ba9; }
.live-price-status [data-state=error],.live-price-status [data-state=expired] { color:#b77465; }
.live-price-status button { flex-shrink:0; border:1px solid #dde7fa; border-radius:7px; background:#f2f6ff; padding:5px 9px; color:#5b7db8; font-size:10px; }
.funding-market-value { margin-top:16px; padding:16px; border:1px solid #dce9f5; background:linear-gradient(120deg,#f1f8ff,#f7fbff); border-radius:12px; }
.funding-market-value>span { display:block; font-size:11px; color:#7a92b1; }
.funding-market-value>strong { display:block; margin:7px 0; font-size:22px; font-weight:650; color:#355f99; }
.funding-market-value>small { font-size:10px; color:#8aa1bd; }
.receipt-pricing { margin:6px 0; font-size:10px; color:#7f92b1; }
.receipt-pricing summary { cursor:pointer; color:#6888bd; }
.receipt-pricing>span { display:inline-block; padding:4px 8px; background:#f5f8fd; border-radius:5px; margin:5px 0 0 6px; }
.receipt-pricing>small { display:block; font-size:9px; }
.exchange-shortfall { margin:12px 0; padding:12px 14px; border:1px solid #f2d6d5; background:#fff3f2; border-radius:10px; color:#c05c59; font-size:11px; line-height:2; }
.exchange-available.is-insufficient { color:#c05c59; }
.funding-method.is-insufficient { border-color:#efd3d2; background:#fff7f6; }
.funding-method.is-insufficient .funding-payment-status { color:#c35e58; font-weight:550; }
.funding-method.is-insufficient .funding-payment-quote { color:#b96961; }

/* Unit quote sits above the amount, sharing the exact signed form rate. */
.funding-target.funding-unit-card { position:relative; display:grid; grid-template-columns:46px minmax(0,1fr) auto; gap:6px 12px; padding:19px 20px 13px; border:1px solid #dfe8fa; border-radius:17px; background:radial-gradient(ellipse at 0 0,#e5eeff80,transparent 60%),linear-gradient(125deg,#f8fbff,#f0f5ff); overflow:hidden; }
.funding-unit-card .funding-target-icon { grid-column:1; grid-row:1; width:44px; height:44px; border-radius:13px; background:#fff; box-shadow:0 3px 12px #4169b30a; }
.funding-unit-card .funding-target-icon .asset-logo { width:29px; height:29px; }
.funding-unit-card .funding-target-icon .asset-logo--banknote { width:33px; height:23px; }
.funding-unit-card>div:nth-child(2) { grid-column:2; grid-row:1; align-self:center; }
.funding-unit-card>div:nth-child(2)>span { font-size:9px; color:#8c9fbc; }
.funding-unit-card .funding-target-name { font-size:13px; font-weight:600; color:#536d96; }
.funding-unit-badge { display:inline-flex; align-items:center; gap:5px; align-self:start; justify-self:end; padding:4px 7px; border:1px solid #dfe9f8; border-radius:6px; background:#ffffffa8; color:#7b91b2; font-size:8px; white-space:nowrap; }
.funding-unit-badge i { width:5px; height:5px; border-radius:50%; background:#b1bfd5; }
.funding-unit-card[data-unit-state=ready] .funding-unit-badge i { background:#38ae8b; box-shadow:0 0 0 3px #38ae8b12; }
.funding-unit-card[data-unit-state=delayed] .funding-unit-badge i { background:#c5a25e; }
.funding-unit-card .funding-unit-price { grid-column:1/-1; padding:16px 0 12px; }
.funding-unit-price>[data-unit-label] { display:block; color:#8599b8; font-size:10px; margin-bottom:5px; }
.funding-unit-price>div { display:flex; align-items:baseline; gap:8px; min-width:0; }
.funding-unit-price [data-unit-price] { font-size:29px; font-weight:650; line-height:1.5; color:#345c99; letter-spacing:-.6px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.funding-unit-price>div>span { color:#8a9ebc; font-size:10px; }
.funding-unit-card .funding-unit-footer { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:11px; border-top:1px solid #dce6f780; color:#8da0bb; font-size:8px; line-height:1.9; }
.funding-unit-footer [data-unit-code] { font:8px Arial,sans-serif; letter-spacing:.8px; white-space:nowrap; color:#9aacc7; }
.funding-unit-card[data-asset=gold] { background:radial-gradient(ellipse at 0 0,#ffedc875,transparent 65%),linear-gradient(125deg,#fffdfa,#faf7ef); border-color:#eee4cf; }
.funding-unit-card[data-asset=gold] [data-unit-price] { color:#987337; }
.funding-unit-card[data-asset=usdt] { background:linear-gradient(125deg,#f8fdfa,#edf7f3); border-color:#dcece5; }
.funding-unit-card[data-asset=usdt] [data-unit-price] { color:#378a78; }
@media(max-width:450px) {
 .funding-target.funding-unit-card { padding:15px 14px 11px; gap:5px 9px; grid-template-columns:38px minmax(0,1fr) auto; }
 .funding-unit-card .funding-target-icon { width:36px; height:36px; border-radius:10px; }
 .funding-unit-badge { font-size:7px; padding:3px 5px; }
 .funding-unit-price [data-unit-price] { font-size:25px; }
 .funding-unit-card .funding-unit-footer { flex-wrap:wrap; font-size:8px; }
}

/* Compact funding checkout, scoped to the modal. */
#quick-funding { width:min(940px,calc(100vw - 36px)); max-width:none; max-height:calc(100dvh - 36px); padding:0; border-radius:22px; overflow:hidden; }
#quick-funding[open] { display:flex; flex-direction:column; }
#quick-funding>.exchange-dialog-header { flex-shrink:0; padding:20px 24px 16px; margin:0; align-items:center; }
#quick-funding .exchange-dialog-header h2 { font-size:21px; }
#quick-funding .exchange-dialog-header p { margin-top:3px; font-size:10px; }
#funding-modal-form { overflow-y:auto; overscroll-behavior:contain; min-height:0; scrollbar-width:thin; scrollbar-color:#d8e2f3 transparent; }
#funding-modal-form>.errorlist,#funding-modal-form>div[role=alert] { margin:12px 22px; }
#quick-funding .funding-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; padding:19px 24px 17px; align-items:start; }
#quick-funding .funding-main-column,#quick-funding .funding-payment-column { min-width:0; }
#quick-funding .funding-payment-column { border-right:1px solid #edf1f8; padding-right:23px; }
#quick-funding .funding-target.funding-unit-card { padding:12px 15px 10px; border-radius:13px; gap:3px 9px; grid-template-columns:35px minmax(0,1fr) auto; }
#quick-funding .funding-unit-card .funding-target-icon { width:34px; height:34px; border-radius:10px; }
#quick-funding .funding-unit-card .funding-target-icon .asset-logo { width:25px; height:25px; }
#quick-funding .funding-unit-card .funding-target-name { font-size:12px; }
#quick-funding .funding-unit-card .funding-unit-price { padding:9px 0 7px; }
#quick-funding .funding-unit-price>[data-unit-label] { margin-bottom:1px; font-size:9px; }
#quick-funding .funding-unit-price [data-unit-price] { font-size:25px; line-height:1.4; }
#quick-funding .funding-unit-footer { padding-top:7px; font-size:8px; flex-wrap:wrap; }
#quick-funding .funding-current-balance { margin-top:7px; margin-bottom:0; font-size:10px; }
#quick-funding .funding-main-column>.field { margin-top:13px; }
#quick-funding .field>label { margin-bottom:5px; font-size:11px; }
#quick-funding input:not([type=checkbox]):not([type=radio]) { min-height:44px; padding-block:8px; font-size:15px; }
#quick-funding .funding-amount-unit { margin-top:4px; font-size:9px; }
#quick-funding .funding-amount-error:empty,#quick-funding .funding-block-reason:empty { display:none; }
#quick-funding .funding-amount-error { margin:6px 0; font-size:10px; }
#quick-funding .toman-amount-hint { font-size:11px; margin-top:5px; }
#quick-funding .funding-market-value { margin-top:11px; padding:12px 14px; border-radius:11px; }
#quick-funding .funding-market-value>span { font-size:10px; }
#quick-funding .funding-market-value>strong { font-size:20px; margin:4px 0; overflow-wrap:anywhere; }
#quick-funding .funding-market-value>small { font-size:9px; line-height:1.8; display:block; }
#quick-funding .live-price-status { margin:10px 0 0; align-items:flex-start; font-size:9px; gap:8px; }
#quick-funding .live-price-status button { font-size:9px; padding:4px 7px; }
#quick-funding .funding-methods { margin:0; }
#quick-funding .funding-methods legend { font-size:12px; margin-bottom:3px; }
#quick-funding .funding-methods>.help-text { font-size:9px; margin:0 0 10px; line-height:1.9; }
#quick-funding .funding-method { margin-top:6px; padding:8px 10px; border-radius:9px; gap:8px; }
#quick-funding .funding-method-content { gap:3px 6px; }
#quick-funding .funding-method-label { font-size:10px; gap:6px; }
#quick-funding .funding-payment-quote { font-size:10px; overflow-wrap:anywhere; }
#quick-funding .funding-payment-status { font-size:8px; line-height:1.8; }
#quick-funding .funding-method .asset-logo { width:21px; height:21px; }
#quick-funding .funding-method .asset-logo--banknote { width:25px; height:16px; }
#quick-funding .funding-method>input[type=radio] { width:14px; height:14px; margin-top:4px; }
#quick-funding .funding-checkout-footer { position:sticky; bottom:0; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; padding:14px 24px 17px; border-top:1px solid #e6edf7; background:#fff; box-shadow:0 -9px 22px #344f7906; }
#quick-funding .funding-summary { margin:0; padding:10px 13px; border-radius:10px; align-self:start; }
#quick-funding .funding-summary>span { font-size:9px; }
#quick-funding .funding-summary strong { font-size:13px; line-height:1.9; margin:4px 0; overflow-wrap:anywhere; }
#quick-funding .funding-summary small { font-size:8px; line-height:1.9; }
#quick-funding .funding-checkout-actions .checkbox { margin:0 0 8px; gap:7px; font-size:9px; line-height:1.9; }
#quick-funding .funding-checkout-actions .checkbox input { width:14px; height:14px; margin-top:3px; }
#quick-funding .funding-submit { margin:0; min-height:42px; font-size:12px; padding-block:8px; }
#quick-funding .funding-block-reason { font-size:9px; line-height:1.8; margin:5px 0 0; }
@media(max-width:700px) {
 #quick-funding { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); border-radius:17px; }
 #quick-funding>.exchange-dialog-header { padding:15px 17px 12px; }
 #quick-funding .exchange-dialog-header h2 { font-size:18px; }
 #quick-funding .funding-layout { grid-template-columns:1fr; padding:14px 17px; gap:17px; }
 #quick-funding .funding-payment-column { border-right:0; padding-right:0; }
 #quick-funding .funding-methods { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
 #quick-funding .funding-methods legend,#quick-funding .funding-methods>.help-text,#quick-funding .funding-methods>.errorlist { grid-column:1/-1; }
 #quick-funding .funding-method { margin:0; padding:8px; }
 #quick-funding .funding-method-content { grid-template-columns:1fr; gap:3px; }
 #quick-funding .funding-payment-quote { font-size:10px; }
 #quick-funding .funding-checkout-footer { grid-template-columns:1fr; gap:9px; padding:10px 17px 13px; }
 #quick-funding .funding-summary { padding:8px 11px; }
 #quick-funding .funding-summary small { display:none; }
 #quick-funding .funding-summary strong { margin:2px 0; font-size:12px; }
 #quick-funding .funding-checkout-actions .checkbox { margin-bottom:7px; }
}
.funding-price-validity { display:flex; align-items:center; gap:6px; margin:10px 0 0; color:#a78342; font-size:10px; font-weight:500; }
.funding-price-validity svg { width:14px; height:14px; }
#quick-funding .funding-price-validity { margin-top:8px; font-size:9px; }

.purchase-toast { position:fixed; right:26px; bottom:26px; z-index:100; display:flex; align-items:center; gap:12px; width:min(365px,calc(100vw - 32px)); padding:16px 17px; border:1px solid #bde6d3; border-radius:15px; background:#f0fcf5; box-shadow:0 12px 40px #164e3320; color:#247653; animation:purchase-toast-in .25s ease-out; }
.purchase-toast-icon { display:grid; place-items:center; width:37px; height:37px; border-radius:50%; background:#d9f4e5; color:#2a9869; flex-shrink:0; }
.purchase-toast-icon svg { width:22px; height:22px; stroke-width:2; }
.purchase-toast>div { flex:1; min-width:0; }
.purchase-toast strong { display:block; font-size:13px; font-weight:650; line-height:1.9; }
.purchase-toast>div>span { display:block; font-size:10px; color:#6b9e84; margin-top:2px; }
.purchase-toast>button { display:grid; place-items:center; width:28px; height:28px; border:0; border-radius:7px; background:transparent; color:#79a68d; padding:4px; }
.purchase-toast>button:hover { background:#def3e6; color:#267650; }
.purchase-toast>button svg { width:16px; height:16px; }
@keyframes purchase-toast-in { from { opacity:0; transform:translateY(15px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:650px) { .purchase-toast { right:16px; bottom:calc(86px + env(safe-area-inset-bottom)); padding:13px 14px; } }
@media(prefers-reduced-motion:reduce) { .purchase-toast { animation:none; } }

/* Personal ledger: own wallet movements are prominent; audit detail stays in receipts. */
.history-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.history-heading h1 { font-size:29px; letter-spacing:-.7px; margin:4px 0 8px; }
.history-heading p { font-size:12px; color:#8390a6; line-height:2; }
.history-heading-icon { display:grid; place-items:center; width:52px; height:52px; border:1px solid #dfe7f7; border-radius:16px; background:#eaf0ff; color:#6081c2; }
.history-heading-icon svg { width:25px; height:25px; }
.history-overview { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:26px; }
.history-overview article { display:flex; align-items:center; gap:13px; padding:18px 20px; border:1px solid #e2e8f3; background:#fff; border-radius:14px; min-width:0; }
.history-stat-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:#eef3ff; color:#6386cb; flex-shrink:0; }
.history-stat-icon svg { width:20px; height:20px; }
.history-stat-icon--green { background:#ebf7f1; color:#5c9d83; }.history-stat-icon--violet { background:#f2effb; color:#8e7ac1; }.history-stat-icon--amber { background:#faf4e9; color:#bc9a5e; }
.history-overview article>div>span { display:block; font-size:10px; color:#8a99b1; }
.history-overview strong { display:block; font-size:23px; font-weight:650; line-height:1.5; margin-top:4px; color:#425a80; }
.history-ledger { border:1px solid #e0e7f3; border-radius:19px; background:#fff; overflow:hidden; }
.history-tools { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; padding:23px 24px 17px; }
.history-tools h2 { font-size:17px; color:#354d76; }
.history-tools p { margin-top:4px; font-size:10px; color:#8d9bb2; }
.history-tools p>span { color:#a9b4c6; }
.history-asset-filter { display:flex; align-items:center; gap:8px; }
.history-asset-filter label { font-size:10px; color:#9aa8be; }
.history-asset-filter select { min-height:36px; max-width:155px; padding:6px 10px; font-size:10px; color:#6b82a8; border-color:#e2e9f5; background:#fafcff; }
.history-asset-filter button { border:1px solid #e2e9f5; background:#f3f7ff; color:#6485bd; border-radius:8px; padding:7px 11px; font-size:10px; }
.history-tabs { display:flex; gap:5px; padding:0 24px 17px; overflow-x:auto; scrollbar-width:thin; }
.history-tabs a { padding:7px 12px; white-space:nowrap; border-radius:7px; font-size:10px; color:#92a0b6; border:1px solid transparent; }
.history-tabs a.selected { color:#4c73bf; background:#edf3ff; border-color:#dfe9ff; font-weight:600; }
.history-column-labels { display:grid; grid-template-columns:minmax(200px,1fr) minmax(260px,1.2fr) 100px; gap:20px; padding:11px 24px; background:#f8faff; border-block:1px solid #edf1f9; color:#97a6bf; font-size:9px; }
.history-column-labels>span:last-child { text-align:left; }
.history-operation { padding:19px 24px 0; border-bottom:1px solid #edf1f7; }
.history-operation:last-of-type { border-bottom:0; }
.history-operation-main { display:grid; grid-template-columns:minmax(200px,1fr) minmax(260px,1.2fr) 100px; align-items:start; gap:20px; }
.history-operation-identity { display:flex; align-items:center; gap:12px; padding:3px 0; }
.history-operation-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; background:#eaf7f1; color:#60a18a; flex-shrink:0; }
.history-operation-icon svg { width:21px; height:21px; }
.history-operation--convert .history-operation-icon { background:#eff0fc; color:#8a80c1; }.history-operation--payment .history-operation-icon,.history-operation--bridge .history-operation-icon { background:#eef4ff; color:#6c90c7; }
.history-operation h3 { color:#40587c; font-size:13px; font-weight:600; line-height:1.8; }
.history-operation time { color:#9aa8bd; font-size:10px; display:block; margin-top:4px; }
.history-operation time>span { padding-inline:3px; }
.history-demo-badge { display:inline-block; margin-top:5px; font-size:8px; padding:1px 6px; color:#b29560; background:#fcf7ed; border-radius:4px; }
.history-movements { display:flex; flex-direction:column; gap:6px; }
.history-movement { display:grid; grid-template-columns:minmax(80px,1fr) auto 50px; align-items:center; gap:10px; background:#f4faf7; border:1px solid #e5f2ec; border-radius:9px; padding:8px 11px; min-width:0; }
.history-movement.is-debit { background:#fff7f6; border-color:#f7e6e3; }
.history-movement-asset { display:flex; align-items:center; gap:7px; font-size:10px; color:#759485; }
.history-movement-asset .asset-logo { width:23px; height:23px; }.history-movement-asset .asset-logo--banknote { width:27px; height:18px; }
.history-movement strong { color:#368b69; font-size:15px; font-weight:600; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.history-movement.is-debit strong { color:#c5746c; }
.history-movement.is-debit .history-movement-asset { color:#b18e89; }
.history-movement-direction { font-size:8px; text-align:left; color:#8caf9d; white-space:nowrap; }
.history-movement.is-debit .history-movement-direction { color:#c29c96; }
.history-operation-status { display:flex; align-items:flex-end; flex-direction:column; gap:9px; padding-top:5px; }
.history-success { display:inline-flex; align-items:center; gap:4px; border-radius:5px; padding:2px 7px; background:#eaf7ef; color:#539573; font-size:9px; }
.history-success svg { width:12px; height:12px; stroke-width:2; }
.history-short-id { direction:ltr; font:9px Arial,sans-serif; letter-spacing:.4px; color:#abb7c9; }
.history-receipt { margin-top:8px; }
.history-receipt>summary { display:flex; align-items:center; justify-content:flex-end; gap:5px; cursor:pointer; list-style:none; color:#7f97bd; font-size:9px; padding:6px 0 12px; }
.history-receipt>summary::-webkit-details-marker { display:none; }
.history-receipt>summary svg { width:14px; height:14px; transition:transform .15s; }.history-receipt[open]>summary svg { transform:rotate(180deg); }
.history-receipt-content { display:grid; grid-template-columns:1fr 1fr; gap:15px 24px; padding:16px 18px; margin-bottom:17px; background:#f9fbff; border:1px solid #eaf0f8; border-radius:11px; }
.history-receipt-content>div>span { display:block; font-size:9px; color:#9aa9c0; margin-bottom:6px; }
.history-receipt-description p { color:#6d82a3; font-size:11px; line-height:2.1; overflow-wrap:anywhere; }
.history-receipt-reference>bdi { display:block; font:10px/2 Arial,sans-serif; letter-spacing:.2px; color:#7b90b1; overflow-wrap:anywhere; }
.history-receipt-rates { grid-column:1/-1; border-top:1px solid #e9eff7; padding-top:12px; }
.history-receipt-rates>div { display:flex; flex-wrap:wrap; gap:7px; }.history-receipt-rates>div>span { display:inline-block; padding:6px 9px; background:white; border:1px solid #e6edf8; border-radius:6px; color:#7c91b0; font-size:10px; }.history-receipt-rates bdi { margin-inline:4px; color:#5074a7; }.history-receipt-rates small { display:block; color:#a1afc5; font-size:9px; margin-top:8px; }
.history-no-movements { color:#9aacc3; font-size:10px; }
.history-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:23px; padding:19px; border-top:1px solid #edf1f7; font-size:10px; color:#9cabc1; }.history-pagination a { color:#688abc; }
.history-footnote { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-top:15px; font-size:9px; color:#95a5bf; line-height:2; }.history-credit-dot,.history-debit-dot { width:5px; height:5px; background:#68aa8c; border-radius:50%; }.history-debit-dot { background:#cc8e85; margin-right:8px; }
.history-empty { text-align:center; padding:48px 20px; color:#94a6c0; }.history-empty>svg { width:36px; height:36px; }.history-empty h3 { font-size:16px; color:#7189ac; margin:12px 0 6px; }.history-empty p { font-size:11px; }.history-empty a { display:inline-block; margin-top:18px; padding:8px 14px; color:#6386c2; background:#f0f5ff; border-radius:8px; font-size:10px; }
@media(max-width:1150px) { .history-overview { gap:10px; }.history-overview article { padding:15px 12px; gap:9px; }.history-column-labels,.history-operation-main { grid-template-columns:minmax(150px,1fr) minmax(225px,1.3fr) 75px; gap:12px; }.history-movement { gap:6px; grid-template-columns:minmax(65px,1fr) auto; }.history-movement-direction { display:none; }.history-movement strong { font-size:13px; } }
@media(max-width:750px) {
 .history-heading h1 { font-size:24px; }.history-heading p { font-size:10px; }.history-heading-icon { width:42px; height:42px; flex-shrink:0; }
 .history-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-bottom:18px; }.history-overview article { padding:12px; }.history-stat-icon { width:33px; height:33px; }.history-overview strong { font-size:20px; }.history-overview article>div>span { font-size:9px; }
 .history-tools { padding:17px 16px 13px; gap:12px; }.history-tools h2 { font-size:15px; }.history-asset-filter { width:100%; }.history-asset-filter select { flex:1; max-width:none; }.history-tabs { padding:0 13px 12px; }.history-tabs a { font-size:9px; padding:6px 10px; }
 .history-column-labels { display:none; }.history-operation { padding:16px 15px 0; }.history-operation-main { grid-template-columns:minmax(0,1fr) auto; gap:13px; }.history-movements { grid-column:1/-1; grid-row:2; }.history-operation-status { grid-column:2; grid-row:1; }.history-operation-icon { width:34px; height:34px; border-radius:10px; }.history-operation h3 { font-size:12px; }.history-operation time { font-size:9px; }.history-movement { grid-template-columns:1fr auto 48px; padding:9px 10px; }.history-movement-direction { display:block; }.history-movement strong { font-size:15px; }.history-receipt-content { grid-template-columns:1fr; gap:12px; padding:13px; }.history-footnote { font-size:8px; }
}

/* Account: personal identity and internal portfolio, with clear settings. */
.account-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:25px; }.account-heading h1 { font-size:29px; margin:4px 0 7px; }.account-heading p { color:#8593aa; font-size:12px; }.account-history-link { display:flex; align-items:center; gap:7px; background:#fff; border:1px solid #e0e8f6; border-radius:9px; padding:9px 13px; color:#6b89ba; font-size:10px; white-space:nowrap; }.account-history-link svg { width:16px; height:16px; }
.account-top-grid { display:grid; grid-template-columns:minmax(270px,.8fr) minmax(0,1.5fr); gap:21px; margin-bottom:23px; }.account-profile-card { position:relative; background:#fff; border:1px solid #e0e7f4; border-radius:19px; padding:23px; overflow:hidden; isolation:isolate; }.account-cover-pattern { position:absolute; inset:0 0 auto; height:95px; background:linear-gradient(105deg,#f0f4ff,#e7efff); z-index:-1; }.account-cover-pattern::after { content:''; position:absolute; width:160px; height:160px; border:1px solid #d5e1f655; border-radius:50%; left:-30px; top:-85px; box-shadow:0 0 0 25px #dbe7ff33,0 0 0 50px #e0eaff33; }.account-profile-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }.account-profile-avatar { display:grid; place-items:center; width:67px; height:67px; border:5px solid white; border-radius:20px; background:#cfdffd; color:#5479c0; box-shadow:0 3px 9px #375fa510; font:600 29px Arial,sans-serif; }.account-status-pill { display:inline-flex; align-items:center; gap:5px; color:#7c90b4; background:#ffffffb3; border:1px solid #dce7fc; border-radius:6px; padding:3px 7px; font-size:8px; }.account-status-pill i { width:5px; height:5px; border-radius:50%; background:#83a0d7; }.account-profile-card h2 { font-size:21px; color:#3a527e; margin-top:13px; overflow-wrap:anywhere; }.account-profile-handle { display:block; direction:ltr; text-align:right; font:11px/1.7 Arial,sans-serif; color:#9caac0; margin-top:4px; }.account-profile-since { display:flex; align-items:center; gap:6px; color:#8c9cb5; font-size:9px; margin-top:13px; }.account-profile-since svg { width:13px; height:13px; }.account-profile-links { display:flex; justify-content:space-between; gap:10px; margin-top:19px; padding-top:13px; border-top:1px solid #edf1f8; font-size:9px; color:#7792bf; }.account-profile-links a { display:flex; gap:9px; }
.account-assets-hero { background:linear-gradient(120deg,#3159c9,#4c78df); border:1px solid #4168d5; border-radius:19px; padding:24px 27px 19px; color:white; position:relative; overflow:hidden; isolation:isolate; }.account-assets-hero::before { content:''; width:260px; height:260px; border:1px solid #ffffff14; border-radius:50%; position:absolute; left:-110px; top:-130px; z-index:-1; box-shadow:0 0 0 45px #ffffff06,0 0 0 90px #ffffff04; }.account-assets-top { display:flex; align-items:center; justify-content:space-between; gap:15px; }.account-assets-top>span:last-child { font:9px Arial,sans-serif; letter-spacing:1.8px; color:#ccdcff; }.account-assets-icon { display:grid; place-items:center; width:36px; height:36px; border:1px solid #ffffff20; background:#ffffff10; border-radius:11px; }.account-assets-icon svg { width:20px; height:20px; }.account-assets-hero h2 { font-size:12px; font-weight:450; color:#d6e3ff; margin-top:13px; }.account-total-amount { display:flex; align-items:baseline; gap:10px; margin-top:6px; }.account-total-amount bdi { font-size:34px; font-weight:650; letter-spacing:-.6px; line-height:1.6; overflow-wrap:anywhere; }.account-total-amount>span { font-size:11px; color:#d6e3ff; }.account-valuation-note { color:#bdcffa; font-size:9px; margin-top:3px; line-height:2; }.account-hero-stats { display:flex; align-items:center; gap:27px; margin-top:22px; padding-top:15px; border-top:1px solid #ffffff26; }.account-hero-stats>div { display:flex; flex-direction:column; gap:5px; }.account-hero-stats>div>span { color:#bed1fb; font-size:9px; }.account-hero-stats strong { font-size:17px; font-weight:550; }.account-hero-stats>a { margin-right:auto; display:flex; align-items:center; gap:10px; color:#e8efff; font-size:10px; }
.account-content-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr); gap:22px; align-items:start; }.account-section { border:1px solid #e0e7f3; border-radius:17px; background:#fff; padding:22px; margin-bottom:20px; scroll-margin-top:20px; }.account-section-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:20px; }.account-section-heading h2 { font-size:15px; color:#425b83; font-weight:600; }.account-section-heading p { font-size:10px; color:#98a6bc; margin-top:5px; }.account-section-heading>svg { color:#94a9ca; width:20px; height:20px; }.account-section-label { color:#8fa3c3; background:#f5f8fe; border:1px solid #e4ecfa; border-radius:6px; padding:3px 7px; font-size:9px; white-space:nowrap; }.account-allocation-bar { display:flex; gap:3px; height:7px; border-radius:5px; overflow:hidden; background:#f0f4fb; margin-bottom:23px; }.account-allocation-bar>span { display:block; height:100%; border-radius:3px; }.allocation-toman { background:#6b93e3; }.allocation-gold { background:#d6b26c; }.allocation-usd { background:#87b79d; }.allocation-usdt { background:#6aaea7; }.allocation-walt { background:#a093d1; }.allocation-btc { background:#dfab76; }
.account-wallet-column-labels,.account-wallet-row { display:grid; grid-template-columns:minmax(100px,.8fr) minmax(90px,1fr) minmax(110px,1.2fr); gap:10px; align-items:center; }.account-wallet-column-labels { color:#a0afc5; font-size:9px; padding-bottom:10px; border-bottom:1px solid #edf1f8; }.account-wallet-column-labels>span:not(:first-child) { text-align:left; }.account-wallet-row { padding:13px 0; border-bottom:1px solid #f0f3f9; }.account-wallet-row:last-child { border:0; padding-bottom:0; }.account-wallet-name { display:flex; align-items:center; gap:9px; }.account-wallet-name .asset-logo { width:28px; height:28px; }.account-wallet-name .asset-logo--banknote { width:32px; height:21px; }.account-wallet-name strong { display:block; color:#647b9e; font-size:11px; font-weight:550; }.account-wallet-name small { display:block; font:8px/1.8 Arial,sans-serif; color:#a6b1c3; margin-top:2px; }.account-wallet-amount,.account-wallet-value { text-align:left; min-width:0; }.account-wallet-amount bdi { color:#5b749a; font-size:13px; font-weight:550; overflow-wrap:anywhere; }.account-wallet-value bdi { color:#7a91af; font-size:12px; overflow-wrap:anywhere; }.account-wallet-amount small,.account-wallet-value small { display:block; color:#a8b4c6; font-size:8px; margin-top:3px; }.account-wallets-empty { text-align:center; font-size:11px; color:#95a5bc; padding:25px 0; }
.account-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:21px 18px; margin:0; }.account-info-grid>div { min-width:0; }.account-info-grid dt { color:#a1afc4; font-size:9px; margin-bottom:7px; }.account-info-grid dd { margin:0; color:#647c9f; font-size:12px; overflow-wrap:anywhere; line-height:2; }.account-verification { display:inline-block; padding:1px 5px; font-size:8px; border-radius:4px; color:#b79a65; background:#faf5e9; margin-right:6px; }.account-verification.is-verified { color:#679b83; background:#eef7f2; }
.account-settings-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:#f0f5fe; color:#829dca; }.account-settings-icon svg { width:18px; height:18px; }.account-contact-notice { color:#8a9bb5; background:#f8faff; border:1px solid #eaf0fa; border-radius:9px; padding:11px 12px; font-size:10px; line-height:2.1; }.account-contact .field { margin-top:16px; }.account-contact .field>label { color:#7b8eaa; font-size:11px; }.account-contact input { min-height:43px; padding-block:9px; font-size:13px; background:#fcfdff; border-color:#e1e9f6; }.account-contact .button { margin-top:20px; min-height:42px; font-size:11px; }
.account-install-card { background:linear-gradient(130deg,#eaf0fc,#f4f7fd); border:1px solid #dde7f8; border-radius:17px; padding:22px; position:relative; overflow:hidden; }.account-install-brand { position:absolute; left:22px; top:21px; display:grid; place-items:center; width:39px; height:39px; border-radius:12px; background:#fff; color:#5e83ca; font:700 25px Arial,sans-serif; }.account-install-brand>span { position:absolute; top:1px; right:6px; color:#95aedc; }.account-install-eyebrow { display:block; color:#8da3c7; font-size:9px; margin-bottom:9px; }.account-install-card h2 { font-size:16px; color:#526f9e; max-width:80%; }.account-install-card>p { font-size:11px; color:#8b9fbc; line-height:2.2; margin-top:12px; }.account-install-card>.button { background:#fff; color:#668bc9; font-size:11px; margin-top:15px; min-height:38px; }.account-install-card details { padding-top:15px; margin-top:15px; border-top:1px solid #dce5f6; }.account-install-card summary { display:flex; justify-content:space-between; list-style:none; font-size:10px; color:#7594c4; cursor:pointer; }.account-install-card details p { font-size:10px; color:#8b9fbc; line-height:2.2; margin-top:10px; }.account-install-card details small { color:#a0afc5; font-size:9px; }.account-demo-note { display:flex; align-items:flex-start; gap:7px; color:#a0adc1; font-size:9px; line-height:2; margin-top:5px; }.account-demo-note svg { width:14px; height:14px; flex-shrink:0; margin-top:2px; }
@media(max-width:1100px) { .account-top-grid { grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr); gap:16px; }.account-content-grid { grid-template-columns:1fr; }.account-side { display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:start; }.account-total-amount bdi { font-size:28px; }.account-hero-stats { gap:18px; flex-wrap:wrap; }.account-hero-stats>a { font-size:9px; } }
@media(max-width:650px) { .account-heading { align-items:flex-start; }.account-heading h1 { font-size:24px; }.account-heading p { font-size:10px; }.account-history-link { padding:7px; font-size:8px; gap:4px; }.account-history-link svg { width:13px; height:13px; }.account-top-grid { grid-template-columns:1fr; gap:14px; }.account-profile-card { padding:20px; }.account-profile-top { align-items:center; }.account-profile-card h2 { margin-top:8px; font-size:19px; }.account-profile-avatar { width:57px; height:57px; border-radius:17px; }.account-assets-hero { padding:20px; }.account-total-amount bdi { font-size:29px; }.account-hero-stats { gap:24px; }.account-content-grid { gap:0; }.account-section { padding:18px 16px; margin-bottom:16px; }.account-side { display:block; }.account-wallet-column-labels,.account-wallet-row { grid-template-columns:minmax(80px,.85fr) minmax(65px,1fr) minmax(90px,1.2fr); gap:7px; }.account-wallet-name { gap:6px; }.account-wallet-name strong { font-size:10px; }.account-wallet-name .asset-logo { width:23px; height:23px; }.account-wallet-name .asset-logo--banknote { width:26px; height:17px; }.account-wallet-amount bdi { font-size:11px; }.account-wallet-value bdi { font-size:10px; }.account-info-grid { gap:19px 13px; }.account-info-grid dd { font-size:11px; }.account-info-grid dt { font-size:8px; }.account-demo-note { margin-top:17px; font-size:8px; } }
.funding-server-disabled { color:#b06b59; background:#fff5ef; border:1px solid #f2ded3; padding:10px 12px; border-radius:8px; font-size:10px; line-height:2; }
