/* Compact member-area type scale; retain control dimensions and icon sizes. */
@font-face {
  font-family: "XY Member Roboto";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("fonts/roboto-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
    U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC,
    U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html[theme],
html[theme-color] {
  --xy-member-font: "XY Member Roboto", "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
}

html[theme] :is(.template, .product),
html[theme-color] :is(#template, .xy-cpm-page) {
  font-family: var(--xy-member-font);
}

html[theme] :is(.template, .product) :is(button, input, textarea, select),
html[theme] body:has(.el-container) :is(.el-message, .el-message-box, .el-dialog, .el-select-dropdown, .el-dropdown-menu),
html[theme-color] :is(button, input, textarea, select, .van-dialog, .van-popup) {
  font-family: var(--xy-member-font);
}

html[theme] :is(.template, .product) {
  --xy-member-text: 13px;
  --xy-member-section-title: 15px;
  --xy-member-page-title: 18px;
  font-size: var(--xy-member-text);
}

html[theme] :is(.template, .product) :is(
  .aside-menu-text, .xy-menu-group-title, .xy-console-current span,
  .xy-top-link, .xy-console-username, .el-tabs__item,
  .el-button, .el-input__inner, .el-textarea__inner,
  .el-form-item__label, .el-form-item__content,
  .el-checkbox__label, .el-radio__label,
  .el-table, .el-table .cell, .el-table__empty-text,
  .box-item-b, .balance-left-title
) {
  font-size: var(--xy-member-text) !important;
}

html[theme] :is(.template, .product) :is(.el-button--mini, .el-button--small) {
  font-size: 12px !important;
}

html[theme] :is(.template, .product) :is(.aside-menu-text, .xy-menu-group-title, .xy-card-tabs a) {
  font-weight: 400 !important;
}

html[theme] :is(.template, .product) .is-active .aside-menu-text {
  font-weight: 500 !important;
}

html[theme] :is(.template, .product) :is(
  .main-card-title, .main-card-title .title-text, .title-text,
  .finance-title, .xy-home-toolbar strong
) {
  font-size: var(--xy-member-page-title) !important;
  font-weight: 500 !important;
}

html[theme] #finance .finance-title {
  font-size: 18px !important;
  font-weight: 500 !important;
}

html[theme] #finance .balance-left-title {
  font-size: 13px !important;
}

html[theme] :is(.template, .product) :is(
  .xy-card-head h3, .xy-product-manage-item b,
  .xy-service-manager-panel h4, .account-title, .basic-title
) {
  font-size: var(--xy-member-section-title) !important;
  font-weight: 500 !important;
}

html[theme] :is(.template, .product) .name-text {
  font-size: 18px !important;
}

html[theme] .xy-home-admin-page :is(.xy-card-tabs a, .xy-service-manager-list > div) {
  font-size: 13px !important;
}

html[theme] .xy-home-refresh {
  color: var(--xy-console-primary-dark, #0b63f6);
}

html[theme] .xy-home-admin-page .xy-account-text h2 {
  font-size: 22px !important;
}

html[theme] .xy-home-admin-page .xy-money-block > strong {
  font-size: 22px !important;
}

html[theme] .xy-home-admin-page :is(.xy-finance-side strong, .xy-todo-item > strong) {
  font-size: 20px !important;
}

html[theme] #finance .balance-left-num {
  font-size: 34px !important;
}

html[theme] :is(.template, .product) .el-dialog__title,
html[theme] body:has(.el-container) .el-message-box__title {
  font-size: 17px !important;
}

html[theme] :is(.template, .product) :is(.el-dialog__body, .el-alert__description),
html[theme] body:has(.el-container) :is(
  .el-select-dropdown__item, .el-dropdown-menu__item,
  .el-message__content, .el-message-box__content, .el-message-box .el-button,
  .el-dialog__wrapper > .el-dialog .el-button
) {
  font-size: 13px !important;
}

/* Mobile labels remain readable; inputs and existing small metadata keep their size. */
html[theme-color] {
  --van-button-normal-font-size: 13px;
  --van-nav-bar-title-font-size: 15px;
  --van-dialog-font-size: 15px;
  --van-dialog-header-font-size: 17px;
}

html[theme-color] :is(.page-nav, .page-nav .nav-center) {
  font-size: 17px !important;
}

html[theme-color] .van-nav-bar__title {
  font-size: 15px !important;
  font-weight: 500;
}

html[theme-color] .common-pop-box .common-pop-title {
  font-size: 15px !important;
}

html[theme-color] .common-pop-box .common-pop-fotter :is(.can-btn, .sub-btn),
html[theme-color] .van-dialog__message {
  font-size: 15px !important;
}

html[theme-color] .van-button--normal {
  font-size: 13px !important;
}

html[theme-color] .xy-mobile-home-toolbar > div > span {
  color: #596579;
}

html[theme-color] .xy-mobile-home-toolbar > button,
html[theme-color] .xy-mobile-home-toolbar > button > span,
html[theme-color] .van-tabbar-item--active .van-tabbar-item__text {
  color: var(--xy-console-primary-dark, #0b63f6) !important;
}
