/* btapi-console-reference-skin-20260521-v1
   Scope: logged-in native API console only. Goal: BTAPI dark-purple SaaS skin
   inspired by the supplied reference, while preserving native API native DOM,
   routes, API calls, table logic, modals, drawers, dropdowns and pagination. */
:root{
  --btapi-bg:#05050b;
  --btapi-bg-2:#090713;
  --btapi-surface:rgba(17,17,31,.74);
  --btapi-surface-2:rgba(13,12,25,.88);
  --btapi-surface-3:rgba(26,20,47,.82);
  --btapi-border:rgba(150,111,255,.26);
  --btapi-border-soft:rgba(150,111,255,.16);
  --btapi-text:#f7f4ff;
  --btapi-muted:#bcb4d1;
  --btapi-dim:#8d86a3;
  --btapi-purple:#8b5cf6;
  --btapi-purple-2:#a855f7;
  --btapi-blue:#46d7ff;
  --btapi-lime:#d9ff41;
  --btapi-pink:#ff4fd8;
  --btapi-shadow:0 22px 55px rgba(0,0,0,.42);
  --btapi-inner:inset 0 1px 0 rgba(255,255,255,.055);
}
html body{color-scheme:dark;background:var(--btapi-bg);}
html body #root{background:transparent;}

/* Console-only theme: activated by the native native API sidebar presence. */
html body:has(.semi-layout-sider){
  --semi-color-primary:#8b5cf6;
  --semi-color-primary-hover:#9f7aea;
  --semi-color-primary-active:#7c3aed;
  --semi-color-bg-0:#11111f;
  --semi-color-bg-1:#151429;
  --semi-color-bg-2:#1b1830;
  --semi-color-fill-0:rgba(255,255,255,.045);
  --semi-color-fill-1:rgba(139,92,246,.12);
  --semi-color-fill-2:rgba(139,92,246,.20);
  --semi-color-border:rgba(150,111,255,.22);
  --semi-color-text-0:#f7f4ff;
  --semi-color-text-1:#ddd6f2;
  --semi-color-text-2:#bcb4d1;
  --semi-color-text-3:#8d86a3;
  background:
    radial-gradient(circle at 18% 0%,rgba(139,92,246,.20),transparent 34%),
    radial-gradient(circle at 88% 16%,rgba(70,215,255,.10),transparent 30%),
    linear-gradient(180deg,#080713 0%,#05050b 58%,#030307 100%) !important;
  color:var(--btapi-text);
  -webkit-text-fill-color:initial;
}
html body:has(.semi-layout-sider) :is(.semi-layout,.semi-layout-content,main){
  background:transparent !important;
}
html body:has(.semi-layout-sider) .semi-layout-content,
html body:has(.semi-layout-sider) main{
  color:var(--btapi-text);
}

/* Top bar and sidebar: same structure, only skin. */
html body:has(.semi-layout-sider) :is(.semi-layout-header,header){
  background:rgba(7,7,15,.78) !important;
  border-color:rgba(150,111,255,.18) !important;
  box-shadow:0 1px 0 rgba(255,255,255,.035),0 18px 44px rgba(0,0,0,.28);
  backdrop-filter:blur(18px) saturate(145%);
}
html body:has(.semi-layout-sider) :is(.semi-layout-sider,aside){
  background:linear-gradient(180deg,rgba(10,10,22,.92),rgba(5,6,14,.94)) !important;
  border-color:rgba(150,111,255,.18) !important;
  box-shadow:1px 0 0 rgba(255,255,255,.035),18px 0 44px rgba(0,0,0,.20);
  backdrop-filter:blur(18px) saturate(135%);
}
html body:has(.semi-layout-sider) :is(.semi-navigation,.semi-navigation-inner,.semi-navigation-list-wrapper,.semi-navigation-list){
  background:transparent !important;
}
html body:has(.semi-layout-sider) :is(.semi-navigation-item,.semi-navigation-sub-title){
  color:var(--btapi-muted) !important;
  border:1px solid transparent;
}
html body:has(.semi-layout-sider) :is(.semi-navigation-item-text,.semi-navigation-item-icon,.semi-navigation-sub-title-text,.semi-icon){
  color:inherit !important;
}
html body:has(.semi-layout-sider) :is(.semi-navigation-item:hover,.semi-navigation-sub-title:hover){
  background:rgba(139,92,246,.12) !important;
  color:#fff !important;
  border-color:rgba(150,111,255,.18);
}
html body:has(.semi-layout-sider) :is(.semi-navigation-item-selected,.semi-navigation-item-active,.semi-navigation-sub-wrap-selected>.semi-navigation-sub-title){
  background:linear-gradient(90deg,rgba(139,92,246,.70),rgba(139,92,246,.18)) !important;
  color:#fff !important;
  border-color:rgba(190,162,255,.42) !important;
  box-shadow:0 0 24px rgba(139,92,246,.33),inset 3px 0 0 var(--btapi-lime);
}

/* Reference-style glass surfaces without changing native API component structure. */
html body:has(.semi-layout-sider) :is(.semi-card,.semi-table-wrapper,.semi-table-container,.semi-tabs-pane,.semi-collapse,.semi-list,.semi-descriptions){
  background:linear-gradient(180deg,rgba(18,18,34,.76),rgba(10,10,21,.82)) !important;
  border:1px solid var(--btapi-border) !important;
  box-shadow:var(--btapi-shadow),var(--btapi-inner);
  backdrop-filter:blur(18px) saturate(145%);
}
html body:has(.semi-layout-sider) .semi-card{
  border-radius:16px !important;
  overflow:hidden;
}
html body:has(.semi-layout-sider) :is(.semi-card-header,.semi-table-title,.semi-card-body){
  background:transparent !important;
  color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) .semi-card-header{
  border-color:rgba(150,111,255,.22) !important;
}
html body:has(.semi-layout-sider) .semi-card::after{
  content:"";
  position:absolute;
  right:18px;
  top:18px;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--btapi-purple);
  box-shadow:0 0 14px 4px rgba(139,92,246,.48);
  pointer-events:none;
}
html body:has(.semi-layout-sider) .semi-card{position:relative;}

/* Text, icons and dividers. */
html body:has(.semi-layout-sider) :is(h1,h2,h3,h4,h5,h6,.semi-typography,.semi-typography-primary,.semi-typography-secondary,.semi-typography-tertiary,.semi-form-field-label){
  color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) :is(.semi-typography-tertiary,.semi-form-field-extra,.semi-table-tbody>.semi-table-row>.semi-table-row-cell){
  color:var(--btapi-muted) !important;
}
html body:has(.semi-layout-sider) :is(.semi-divider,.semi-divider-horizontal,.semi-divider-vertical){
  border-color:rgba(150,111,255,.20) !important;
}

/* Buttons: neon purple/lime feel, native click handlers preserved. */
html body:has(.semi-layout-sider) .semi-button{
  border-radius:12px !important;
  border-color:rgba(150,111,255,.26) !important;
  color:var(--btapi-text) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
html body:has(.semi-layout-sider) .semi-button-primary,
html body:has(.semi-layout-sider) .semi-button.semi-button-primary{
  background:linear-gradient(135deg,#7c3aed,#a855f7) !important;
  border-color:rgba(203,179,255,.58) !important;
  color:#fff !important;
  box-shadow:0 0 22px rgba(139,92,246,.34),inset 0 1px 0 rgba(255,255,255,.14) !important;
}
html body:has(.semi-layout-sider) :is(.semi-button-tertiary,.semi-button-light,.semi-button-borderless,.semi-button-outline){
  background:rgba(255,255,255,.045) !important;
  color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) .semi-button:hover{
  border-color:rgba(217,255,65,.42) !important;
  box-shadow:0 0 18px rgba(139,92,246,.28),inset 0 1px 0 rgba(255,255,255,.09) !important;
}
html body:has(.semi-layout-sider) :is(.semi-button-disabled,.semi-button[disabled],button:disabled){
  opacity:.52 !important;
  box-shadow:none !important;
}

/* Inputs, filters, selects, date pickers. */
html body:has(.semi-layout-sider) :is(.semi-input-wrapper,.semi-input-number,.semi-input-number-wrapper,.semi-select,.semi-datepicker,.semi-datepicker-input,.semi-textarea-wrapper){
  background:rgba(7,7,16,.72) !important;
  border-color:rgba(150,111,255,.26) !important;
  color:var(--btapi-text) !important;
  border-radius:12px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html body:has(.semi-layout-sider) :is(input,textarea,.semi-input,.semi-input-number-input,.semi-select-selection-text){
  color:var(--btapi-text) !important;
  -webkit-text-fill-color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) :is(input::placeholder,textarea::placeholder){
  color:rgba(188,180,209,.62) !important;
  -webkit-text-fill-color:rgba(188,180,209,.62) !important;
}
html body:has(.semi-layout-sider) :is(.semi-input-wrapper:hover,.semi-input-wrapper-focus,.semi-select:hover,.semi-select-focus,.semi-datepicker:hover,.semi-textarea-wrapper:hover){
  border-color:rgba(217,255,65,.38) !important;
  box-shadow:0 0 0 3px rgba(139,92,246,.12),inset 0 1px 0 rgba(255,255,255,.055) !important;
}

/* Tables: native columns/fixed columns/pagination kept; only dark glass skin. */
html body:has(.semi-layout-sider) .semi-table,
html body:has(.semi-layout-sider) .semi-table-body,
html body:has(.semi-layout-sider) .semi-table-container,
html body:has(.semi-layout-sider) .semi-table-wrapper{
  background:transparent !important;
  color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) .semi-table-thead>.semi-table-row>.semi-table-row-head{
  background:rgba(24,19,44,.92) !important;
  border-color:rgba(150,111,255,.22) !important;
  color:#eee8ff !important;
}
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row>.semi-table-row-cell{
  background:rgba(8,8,18,.36) !important;
  border-color:rgba(150,111,255,.13) !important;
}
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row:hover>.semi-table-row-cell{
  background:rgba(139,92,246,.10) !important;
}
html body:has(.semi-layout-sider) :is(.semi-table-fixed-left,.semi-table-fixed-right,.semi-table-fixed-left .semi-table-row-cell,.semi-table-fixed-right .semi-table-row-cell){
  background:rgba(14,12,27,.96) !important;
}
html body:has(.semi-layout-sider) :is(.semi-page,.semi-pagination){
  color:var(--btapi-muted) !important;
}

/* Portals: dropdowns, popovers, modals and drawers. */
html body:has(.semi-layout-sider) :is(.semi-dropdown,.semi-dropdown-menu,.semi-select-option-list,.semi-popover,.semi-tooltip-wrapper,.semi-cascader-option-list){
  background:rgba(13,12,25,.96) !important;
  border:1px solid rgba(150,111,255,.28) !important;
  border-radius:14px !important;
  box-shadow:0 24px 64px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.055) !important;
  color:var(--btapi-text) !important;
  backdrop-filter:blur(18px) saturate(145%);
}
html body:has(.semi-layout-sider) :is(.semi-select-option,.semi-dropdown-item,.semi-cascader-option){
  color:var(--btapi-muted) !important;
  background:transparent !important;
}
html body:has(.semi-layout-sider) :is(.semi-select-option:hover,.semi-select-option-selected,.semi-dropdown-item:hover,.semi-dropdown-item-active,.semi-cascader-option:hover){
  background:rgba(139,92,246,.18) !important;
  color:#fff !important;
}
html body:has(.semi-layout-sider) :is(.semi-modal-content,.semi-drawer-content){
  background:linear-gradient(180deg,rgba(19,17,35,.98),rgba(9,9,18,.98)) !important;
  border:1px solid rgba(150,111,255,.28) !important;
  color:var(--btapi-text) !important;
  box-shadow:0 30px 80px rgba(0,0,0,.58) !important;
}
html body:has(.semi-layout-sider) :is(.semi-modal-header,.semi-modal-body,.semi-modal-footer,.semi-drawer-header,.semi-drawer-body,.semi-drawer-footer){
  background:transparent !important;
  color:var(--btapi-text) !important;
  border-color:rgba(150,111,255,.18) !important;
}
html body:has(.semi-layout-sider) .semi-modal-mask,
html body:has(.semi-layout-sider) .semi-drawer-mask{
  background:rgba(0,0,0,.62) !important;
  backdrop-filter:blur(5px);
}

/* Tabs/charts/dashboard rhythm. */
html body:has(.semi-layout-sider) :is(.semi-tabs-tab,.semi-tabs-tab-button){
  color:var(--btapi-muted) !important;
}
html body:has(.semi-layout-sider) :is(.semi-tabs-tab-active,.semi-tabs-tab-active .semi-tabs-tab-button){
  color:#fff !important;
}
html body:has(.semi-layout-sider) .semi-tabs-bar-line{
  background:linear-gradient(90deg,var(--btapi-purple),var(--btapi-lime)) !important;
  box-shadow:0 0 16px rgba(139,92,246,.50);
}
html body:has(.semi-layout-sider) :is(canvas,.echarts-for-react,.semi-chart){
  filter:drop-shadow(0 0 10px rgba(139,92,246,.18));
}

/* Decorative mascot, injected only into dashboard API-info card by JS. */
html body:has(.semi-layout-sider) .btapi-console-mascot-wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  margin:8px auto 12px;
  min-height:160px;
  pointer-events:none;
}
html body:has(.semi-layout-sider) .btapi-console-mascot-wrap img{
  width:min(190px,72%);
  max-height:210px;
  object-fit:contain;
  filter:drop-shadow(0 22px 38px rgba(139,92,246,.42));
}

/* Scrollbar polish, non-functional. */
html body:has(.semi-layout-sider) *::-webkit-scrollbar{width:10px;height:10px;}
html body:has(.semi-layout-sider) *::-webkit-scrollbar-track{background:rgba(255,255,255,.035);}
html body:has(.semi-layout-sider) *::-webkit-scrollbar-thumb{background:rgba(139,92,246,.45);border-radius:999px;border:2px solid rgba(5,5,11,.9);}

/* Non-console/auth pages: keep minimal brand tone only; protected homepage does not load this CSS. */
html body:not(:has(.semi-layout-sider)){
  background:var(--btapi-bg);
}


/* v1.1: alert/banner surfaces such as system-setting warnings should not stay white. */
html body:has(.semi-layout-sider) :is(.semi-alert,.semi-banner,.semi-toast-content,.semi-notification-notice){
  background:linear-gradient(135deg,rgba(32,24,56,.96),rgba(14,13,28,.96)) !important;
  border:1px solid rgba(217,255,65,.22) !important;
  color:var(--btapi-text) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.055) !important;
}
html body:has(.semi-layout-sider) :is(.semi-alert-title,.semi-alert-content,.semi-alert-description,.semi-banner-content,.semi-toast-content-text,.semi-notification-notice-content){
  color:var(--btapi-text) !important;
  -webkit-text-fill-color:var(--btapi-text) !important;
}
html body:has(.semi-layout-sider) :is(.semi-alert-warning,.semi-banner-warning){
  background:linear-gradient(135deg,rgba(45,35,16,.90),rgba(24,18,42,.96)) !important;
  border-color:rgba(255,214,71,.28) !important;
}


/* btapi-console-interaction-state-polish-20260521-v3
   Coherent interaction/overlay/loading layer. It targets component states instead
   of individual pages, keeping native API DOM/events/data unchanged. */
html body:has(.semi-layout-sider){
  accent-color:var(--btapi-purple);
}

/* Status/stat chips, badges and disabled controls: remove light-theme residue. */
html body:has(.semi-layout-sider) :is(.semi-tag,.semi-badge,.semi-badge-count,.semi-badge-dot,.semi-badge-light,.semi-tag-default,.semi-tag-light,.semi-tag-white,.semi-tag-grey){
  background:rgba(139,92,246,.14) !important;
  border:1px solid rgba(150,111,255,.24) !important;
  color:var(--btapi-muted) !important;
  -webkit-text-fill-color:var(--btapi-muted) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
html body:has(.semi-layout-sider) :is(.semi-tag-blue,.semi-badge-blue){
  background:rgba(70,215,255,.13) !important;
  color:#7fe7ff !important;
  -webkit-text-fill-color:#7fe7ff !important;
}
html body:has(.semi-layout-sider) :is(.semi-tag-red,.semi-badge-red){
  background:rgba(255,79,216,.12) !important;
  color:#ff7be2 !important;
  -webkit-text-fill-color:#ff7be2 !important;
}
html body:has(.semi-layout-sider) :is(.semi-tag-green,.semi-badge-green){
  background:rgba(217,255,65,.10) !important;
  color:#d9ff41 !important;
  -webkit-text-fill-color:#d9ff41 !important;
}
html body:has(.semi-layout-sider) :is(.semi-button-disabled,.semi-button[disabled],button:disabled,.semi-button-light.semi-button-disabled){
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(150,111,255,.16) !important;
  color:rgba(188,180,209,.62) !important;
  -webkit-text-fill-color:rgba(188,180,209,.62) !important;
  opacity:1 !important;
}

/* Full interaction state matrix: hover/focus/active/selected/readonly. */
html body:has(.semi-layout-sider) :is(a,.semi-button,.semi-input-wrapper,.semi-select,.semi-datepicker,.semi-checkbox-inner,.semi-radio-inner,.semi-switch,.semi-table-row-cell,.semi-tag){
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,opacity .16s ease;
}
html body:has(.semi-layout-sider) :is(.semi-button:focus-visible,.semi-input-wrapper-focus,.semi-select-focus,.semi-datepicker-focused,.semi-checkbox-focus .semi-checkbox-inner,.semi-radio-focus .semi-radio-inner){
  outline:none !important;
  border-color:rgba(217,255,65,.46) !important;
  box-shadow:0 0 0 3px rgba(139,92,246,.20),0 0 24px rgba(139,92,246,.24) !important;
}
html body:has(.semi-layout-sider) :is(.semi-button:active,.semi-button-active,.semi-select-option-active,.semi-dropdown-item-active){
  background:rgba(139,92,246,.26) !important;
  border-color:rgba(217,255,65,.36) !important;
  color:#fff !important;
}
html body:has(.semi-layout-sider) :is(.semi-select-option-selected,.semi-dropdown-item-selected,.semi-tree-option-selected,.semi-cascader-option-selected,.semi-checkbox-checked .semi-checkbox-inner,.semi-radio-checked .semi-radio-inner){
  background:linear-gradient(135deg,rgba(139,92,246,.48),rgba(139,92,246,.18)) !important;
  border-color:rgba(217,255,65,.35) !important;
  color:#fff !important;
}

/* All floating layers: tooltip/popover/dropdown/select/date picker/hover card. */
html body:has(.semi-layout-sider) :is(
  .semi-tooltip-wrapper,.semi-tooltip-content,.semi-tooltip,
  .semi-popover,.semi-popover-content,.semi-popover-wrapper,
  .semi-dropdown,.semi-dropdown-menu,.semi-dropdown-wrapper,
  .semi-select-option-list,.semi-select-dropdown,.semi-select-dropdown-wrapper,
  .semi-cascader-option-list,.semi-cascader,.semi-tree-select-popover,
  .semi-datepicker,.semi-datepicker-panel,.semi-datepicker-panel-wrapper,.semi-datepicker-month-grid,.semi-datepicker-time-picker,
  .semi-card-hoverable:hover,.semi-hover-card,.semi-hovercard,.semi-userGuide-popup
){
  background:linear-gradient(180deg,rgba(17,16,33,.98),rgba(8,8,18,.98)) !important;
  border:1px solid rgba(150,111,255,.30) !important;
  color:var(--btapi-text) !important;
  -webkit-text-fill-color:var(--btapi-text) !important;
  box-shadow:0 26px 70px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.035) inset,0 0 32px rgba(139,92,246,.22) !important;
  backdrop-filter:blur(18px) saturate(145%);
}
html body:has(.semi-layout-sider) :is(.semi-tooltip-wrapper *,.semi-popover *,.semi-dropdown *,.semi-select-option-list *,.semi-datepicker *,.semi-cascader *,.semi-tree-select-popover *){
  color:inherit;
}
html body:has(.semi-layout-sider) :is(.semi-tooltip-arrow,.semi-popover-arrow){
  color:rgba(17,16,33,.98) !important;
  background:rgba(17,16,33,.98) !important;
  border-color:rgba(150,111,255,.30) !important;
}
html body:has(.semi-layout-sider) :is(.semi-datepicker-date,.semi-datepicker-month,.semi-datepicker-year,.semi-datepicker-time-picker-cell){
  color:var(--btapi-muted) !important;
  border-radius:8px !important;
}
html body:has(.semi-layout-sider) :is(.semi-datepicker-date:hover,.semi-datepicker-month:hover,.semi-datepicker-year:hover,.semi-datepicker-time-picker-cell:hover){
  background:rgba(139,92,246,.18) !important;
  color:#fff !important;
}
html body:has(.semi-layout-sider) :is(.semi-datepicker-date-selected,.semi-datepicker-date-today,.semi-datepicker-month-selected,.semi-datepicker-year-selected){
  background:linear-gradient(135deg,#7c3aed,#a855f7) !important;
  color:#fff !important;
}

/* Chart tooltip families: VChart/ECharts/G2 often inject inline white boxes. */
html body:has(.semi-layout-sider) :is(
  .vchart-tooltip-container,.vchart-tooltip,.vchart-tooltip-box,.vchart-tooltip-content,
  .echarts-tooltip,.g2-tooltip,.g2-tooltip-list,.bizcharts-tooltip,
  div[style*="z-index"][style*="position: absolute"]
){
  background:linear-gradient(180deg,rgba(17,16,33,.98),rgba(8,8,18,.98)) !important;
  border:1px solid rgba(150,111,255,.34) !important;
  color:var(--btapi-text) !important;
  -webkit-text-fill-color:var(--btapi-text) !important;
  box-shadow:0 24px 64px rgba(0,0,0,.58),0 0 30px rgba(139,92,246,.24) !important;
  border-radius:12px !important;
  backdrop-filter:blur(16px) saturate(145%);
}
html body:has(.semi-layout-sider) :is(.vchart-tooltip-container,.vchart-tooltip,.echarts-tooltip,.g2-tooltip,.bizcharts-tooltip) *{
  color:var(--btapi-text) !important;
  -webkit-text-fill-color:var(--btapi-text) !important;
  border-color:rgba(150,111,255,.20) !important;
}

/* Loading, skeleton and first route-render state: prevent white flash. */
html body:has(.semi-layout-sider) :is(.semi-skeleton,.semi-skeleton-avatar,.semi-skeleton-button,.semi-skeleton-image,.semi-skeleton-title,.semi-skeleton-paragraph,.semi-skeleton-paragraph li,.semi-spin,.semi-spin-children,.semi-empty,.semi-empty-content){
  background-color:transparent !important;
  color:var(--btapi-muted) !important;
  -webkit-text-fill-color:var(--btapi-muted) !important;
}
html body:has(.semi-layout-sider) :is(.semi-skeleton-title,.semi-skeleton-paragraph li,.semi-skeleton-avatar,.semi-skeleton-button,.semi-skeleton-image){
  background:linear-gradient(90deg,rgba(139,92,246,.10),rgba(255,255,255,.055),rgba(139,92,246,.10)) !important;
  background-size:240% 100% !important;
  border:1px solid rgba(150,111,255,.10) !important;
}
html body:has(.semi-layout-sider) :is(.semi-spin-block,.semi-spin-wrapper,.semi-spin-children){
  background:transparent !important;
}
html body:has(.semi-layout-sider) .semi-spin-indicator{
  color:var(--btapi-purple) !important;
}

/* Empty-state illustrations can stay native, but never with bright white backing. */
html body:has(.semi-layout-sider) :is(.semi-empty-image,.semi-empty-image svg){
  opacity:.72;
  filter:grayscale(.35) hue-rotate(235deg) saturate(1.15) brightness(.86);
}

/* Small native chart/placeholder blocks inside metric cards. */
html body:has(.semi-layout-sider) :is(.semi-card canvas+div, .semi-card [style*="background-color: rgb(255"], .semi-card [style*="background: rgb(255"]){
  background:rgba(139,92,246,.10) !important;
  color:var(--btapi-text) !important;
}


/* BTAPI console stability consolidation v4
   Root cause closure: Semi/native API route content mounts in phases; default component
   transitions and body-mounted portals can repaint before the dark skin settles.
   Keep this as one console-scoped stabilization layer, not page-by-page patches. */
html body:has(.semi-layout-sider),
html body:has(.semi-layout-sider) #root,
html body:has(.semi-layout-sider) .semi-layout,
html body:has(.semi-layout-sider) .semi-layout-content,
html body:has(.semi-layout-sider) main {
  background:#05050b !important;
  color:#f7f4ff !important;
  color-scheme:dark !important;
}

/* Stop route-entry shimmer/jank caused by native opacity/transform/background transitions. */
html body:has(.semi-layout-sider) :is(
  main, main *,
  .semi-layout, .semi-layout *,
  .semi-table, .semi-table *,
  .semi-card, .semi-card *,
  .semi-form, .semi-form *,
  .semi-empty, .semi-empty *,
  .semi-skeleton, .semi-skeleton *,
  .semi-spin, .semi-spin *,
  .semi-modal, .semi-modal *,
  .semi-drawer, .semi-drawer *,
  .semi-popover, .semi-popover *,
  .semi-tooltip, .semi-tooltip *,
  .semi-dropdown, .semi-dropdown *,
  .semi-select-option-list, .semi-select-option-list *,
  .semi-datepicker, .semi-datepicker *
){
  animation:none !important;
  transition-duration:0s !important;
  transition-delay:0s !important;
  scroll-behavior:auto !important;
}
html body:has(.semi-layout-sider) :is(main,.semi-card,.semi-table,.semi-table-container,.semi-form,.semi-empty,.semi-spin,.semi-skeleton){
  opacity:1 !important;
  transform:none !important;
  will-change:auto !important;
}

/* Route/table first-paint geometry: keep containers full-width and dark while async data mounts. */
html body:has(.semi-layout-sider) :is(.semi-table-wrapper,.semi-table-container,.semi-table-body,.semi-table-header,.semi-table-scroll-position-left,.semi-table-scroll-position-right){
  width:100% !important;
  max-width:100% !important;
  background:rgba(10,10,22,.82) !important;
  border-color:rgba(167,139,250,.08) !important;
  box-shadow:none !important;
}
html body:has(.semi-layout-sider) :is(.semi-table,.semi-table table){
  width:100% !important;
  min-width:100% !important;
  background:transparent !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
html body:has(.semi-layout-sider) :is(.semi-table-placeholder,.semi-table-empty,.semi-table-empty-wrapper){
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  min-height:180px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(10,10,22,.72) !important;
  color:#c9c3ff !important;
}
html body:has(.semi-layout-sider) :is(.semi-empty,.semi-empty-content,.semi-spin-wrapper,.semi-spin-children,.semi-skeleton){
  min-height:0;
  background:transparent !important;
  color:#c9c3ff !important;
  -webkit-text-fill-color:#c9c3ff !important;
}

/* Body-mounted floating layers: cover every Semi portal family, including select options created outside main. */
html body:has(.semi-layout-sider) :is(
  .semi-portal,.semi-portal-inner,
  .semi-popover,.semi-popover-content,.semi-popover-wrapper,
  .semi-tooltip,.semi-tooltip-wrapper,.semi-tooltip-content,
  .semi-dropdown,.semi-dropdown-menu,.semi-dropdown-wrapper,
  .semi-select-dropdown,.semi-select-dropdown-wrapper,.semi-select-option-list-wrapper,.semi-select-option-list,
  .semi-cascader,.semi-cascader-option-list,.semi-tree-select-popover,
  .semi-datepicker,.semi-datepicker-panel,.semi-datepicker-panel-wrapper,
  .semi-modal,.semi-modal-content,.semi-modal-body,
  .semi-drawer,.semi-drawer-content,.semi-drawer-body,
  .semi-hover-card,.semi-hovercard,
  [x-placement], [data-popper-placement], [role="tooltip"], [role="listbox"], [role="menu"]
){
  background:linear-gradient(180deg,rgba(17,16,33,.99),rgba(8,8,18,.99)) !important;
  border-color:rgba(150,111,255,.34) !important;
  color:#f7f4ff !important;
  -webkit-text-fill-color:#f7f4ff !important;
  box-shadow:0 26px 70px rgba(0,0,0,.62),0 0 0 1px rgba(255,255,255,.035) inset,0 0 34px rgba(139,92,246,.22) !important;
}
html body:has(.semi-layout-sider) :is(
  .semi-select-option,.semi-select-option-selected,.semi-select-option-focused,.semi-select-option-active,
  .semi-dropdown-item,.semi-dropdown-menu-item,.semi-cascader-option,.semi-tree-option,
  [role="option"],[role="menuitem"]
){
  background:transparent !important;
  color:#f7f4ff !important;
  -webkit-text-fill-color:#f7f4ff !important;
  border-radius:10px !important;
}
html body:has(.semi-layout-sider) :is(
  .semi-select-option:hover,.semi-select-option-focused,.semi-select-option-selected,
  .semi-dropdown-item:hover,.semi-dropdown-menu-item:hover,.semi-dropdown-item-active,.semi-dropdown-menu-item-active,
  .semi-cascader-option:hover,.semi-cascader-option-active,[role="option"]:hover,[role="menuitem"]:hover
){
  background:linear-gradient(135deg,rgba(124,58,237,.34),rgba(168,85,247,.18)) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
html body:has(.semi-layout-sider) :is(.semi-select-option .semi-typography,.semi-select-option div,.semi-select-option span,.semi-dropdown-item span,.semi-popover span,.semi-tooltip span){
  color:inherit !important;
  -webkit-text-fill-color:inherit !important;
}

/* Inputs/select trigger clarity after portal/menu fixes. */
html body:has(.semi-layout-sider) :is(.semi-select-selection,.semi-select-selection-text,.semi-input,.semi-input-wrapper input,.semi-input-wrapper textarea){
  color:#f7f4ff !important;
  -webkit-text-fill-color:#f7f4ff !important;
  caret-color:#d8b4fe !important;
}
html body:has(.semi-layout-sider) :is(.semi-select-selection-placeholder,.semi-input::placeholder,.semi-input-wrapper input::placeholder,textarea::placeholder){
  color:#a9a0d8 !important;
  -webkit-text-fill-color:#a9a0d8 !important;
  opacity:1 !important;
}

/* Mobile uses the same console layer: avoid horizontal route jitter. */
@media (max-width: 768px){
  html body:has(.semi-layout-sider) :is(.app-layout,.semi-layout,.semi-layout-has-sider){
    width:100vw !important;
    min-width:0 !important;
    max-width:100vw !important;
    overflow-x:hidden !important;
  }
  html body:has(.semi-layout-sider) :is(.app-layout,.semi-layout-has-sider){
    background:linear-gradient(90deg, rgba(15,12,30,.96) 0%, rgba(23,18,45,.94) 58%, rgba(14,12,28,.96) 100%) !important;
  }
  html body:has(.semi-layout-sider) .app-sider.semi-layout-sider{
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
    flex:0 0 72px !important;
    overflow:hidden auto !important;
  }
  html body:has(.semi-layout-sider) .app-sider.semi-layout-sider :is(.semi-navigation-item-text,.semi-navigation-sub-title,.semi-navigation-header-list-outer .semi-typography,span:not(.semi-icon):not([role="img"])){
    max-width:0 !important;
    opacity:0 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }
  html body:has(.semi-layout-sider) .app-sider.semi-layout-sider + .semi-layout,
  html body:has(.semi-layout-sider) .semi-layout-has-sider > .semi-layout:not(.app-sider):not(.semi-layout-sider){
    margin-left:86px !important;
    width:calc(100vw - 86px) !important;
    min-width:0 !important;
    max-width:calc(100vw - 86px) !important;
    overflow-x:hidden !important;
  }
  html body:has(.semi-layout-sider) :is(main,.semi-layout-content,.semi-card,.semi-form){
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  html body:has(.semi-layout-sider) :is(.semi-table-wrapper,.semi-table-container,.semi-table-body,.semi-table-header){
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow-x:auto !important;
  }
  html body:has(.semi-layout-sider) :is(.semi-row,.semi-col,.semi-form,.semi-form-field,.semi-input-wrapper,.semi-select,.semi-select-selection){
    min-width:0 !important;
    max-width:100% !important;
  }
}


/* v5: overlap guardrails for admin user table and account balance/stat cards.
   Scope stays console-only. This only changes layout/paint rules; it does not alter data, routes or APIs. */
html body:has(.semi-layout-sider) :is(.semi-table-wrapper,.semi-table-container){
  overflow-x:auto !important;
  overflow-y:visible !important;
  overscroll-behavior-x:contain;
}
html body:has(.semi-layout-sider) :is(.semi-table-header,.semi-table-body){
  overflow:visible !important;
  min-width:100% !important;
}
html body:has(.semi-layout-sider) :is(.semi-table,.semi-table table){
  width:max-content !important;
  min-width:100% !important;
  table-layout:auto !important;
}
html body:has(.semi-layout-sider) :is(.semi-table-thead>.semi-table-row>.semi-table-row-head,.semi-table-tbody>.semi-table-row>.semi-table-row-cell){
  min-width:96px !important;
  max-width:none !important;
  padding-left:14px !important;
  padding-right:14px !important;
  line-height:1.45 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  vertical-align:middle !important;
  box-sizing:border-box !important;
}
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row>.semi-table-row-cell :is(div,span,p,a,.semi-typography,.semi-tag,.semi-badge,.semi-space,.semi-space-item){
  max-width:none !important;
  min-width:0;
  line-height:1.45 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  box-sizing:border-box !important;
}
html body:has(.semi-layout-sider) :is(.semi-tag,.semi-badge,.semi-badge-count){
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  max-width:none !important;
  line-height:1.25 !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
}
html body:has(.semi-layout-sider) :is(.semi-table-fixed-left,.semi-table-fixed-right){
  z-index:4 !important;
  background:rgba(14,12,27,.98) !important;
  box-shadow:0 0 0 1px rgba(150,111,255,.13),0 16px 36px rgba(0,0,0,.26) !important;
}
html body:has(.semi-layout-sider) :is(.semi-table-fixed-left .semi-table-row-cell,.semi-table-fixed-right .semi-table-row-cell,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-left,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-right,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-left,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-right){
  position:sticky;
  z-index:5 !important;
  background:rgba(14,12,27,.98) !important;
  box-shadow:-1px 0 0 rgba(150,111,255,.18),1px 0 0 rgba(150,111,255,.18) !important;
}
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row:hover :is(.semi-table-row-cell-fix-left,.semi-table-row-cell-fix-right){
  background:rgba(28,22,50,.99) !important;
}

/* Keep metric/stat cards readable: title, amount and user metadata occupy separate flex rows. */
html body:has(.semi-layout-sider) :is(.semi-statistic,.semi-statistic-content,.semi-statistic-number){
  position:static !important;
  z-index:auto !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
html body:has(.semi-layout-sider) .semi-statistic{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:8px !important;
  min-width:0 !important;
}
html body:has(.semi-layout-sider) :is(.semi-statistic-title,.semi-card-header-title){
  position:static !important;
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 0 6px 0 !important;
  line-height:1.35 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
html body:has(.semi-layout-sider) .semi-statistic-content{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:6px 10px !important;
  width:100% !important;
  min-height:34px !important;
  line-height:1.2 !important;
  white-space:normal !important;
}
html body:has(.semi-layout-sider) :is(.semi-statistic-number,.semi-statistic-value,.semi-statistic-content-value){
  display:inline-flex !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:2px !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
html body:has(.semi-layout-sider) .semi-card:has(.semi-statistic) .semi-card-body{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  min-height:92px !important;
  overflow:visible !important;
}
html body:has(.semi-layout-sider) .semi-card:has(.semi-statistic) :is(.semi-typography,.semi-tag,.semi-badge,span,div){
  line-height:1.35 !important;
}

/* v6: targeted overlap cleanup for responsive user-management cards and personal balance badge. */
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body{
  overflow:auto !important;
}
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"]{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  gap:6px 12px !important;
  min-height:0 !important;
  height:auto !important;
  line-height:1.45 !important;
  overflow:visible !important;
}
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > span:first-child{
  flex:0 0 auto !important;
  max-width:42% !important;
  line-height:1.45 !important;
  white-space:nowrap !important;
}
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > div:last-child{
  flex:1 1 220px !important;
  min-width:0 !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:flex-start !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  line-height:1.45 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-align:right !important;
}
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card :is(.semi-space,.semi-space-horizontal){
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:6px !important;
  max-width:100% !important;
  white-space:normal !important;
  overflow:visible !important;
}
html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card :is(.semi-tag,.semi-badge,.semi-badge-count){
  flex:0 0 auto !important;
  max-width:100% !important;
  overflow:visible !important;
}
@media (max-width: 640px){
  html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > div:last-child{
    flex-basis:170px !important;
  }
  html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .mt-2.flex.justify-end{
    justify-content:flex-start !important;
    overflow-x:auto !important;
    padding-bottom:4px !important;
  }
  html body:has(.semi-layout-sider) .table-scroll-card .semi-card-body .semi-card .mt-2.flex.justify-end .semi-space{
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    min-width:max-content !important;
  }
}

/* Personal page balance card: keep “当前余额” as a quiet label, not a badge over the amount. */
html body:has(.semi-layout-sider) .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count){
  display:flex !important;
  flex-direction:column-reverse !important;
  align-items:flex-start !important;
  gap:4px !important;
  width:auto !important;
  max-width:100% !important;
  height:auto !important;
  overflow:visible !important;
  line-height:1.2 !important;
}
html body:has(.semi-layout-sider) .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count) > .semi-badge-count{
  position:static !important;
  transform:none !important;
  inset:auto !important;
  display:block !important;
  align-self:flex-start !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  color:rgba(226,219,255,.74) !important;
  -webkit-text-fill-color:rgba(226,219,255,.74) !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  z-index:auto !important;
}
html body:has(.semi-layout-sider) .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count) > div:first-child{
  display:block !important;
  position:static !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  z-index:1 !important;
}

/* v7: same overlap fixes when mobile layout has no .semi-layout-sider but console body class is present. */
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body{overflow:auto !important;}
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"]{
  display:flex !important; flex-wrap:wrap !important; align-items:flex-start !important; gap:6px 12px !important;
  min-height:0 !important; height:auto !important; line-height:1.45 !important; overflow:visible !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > span:first-child{
  flex:0 0 auto !important; max-width:42% !important; line-height:1.45 !important; white-space:nowrap !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > div:last-child{
  flex:1 1 220px !important; min-width:0 !important; display:flex !important; justify-content:flex-end !important;
  align-items:flex-start !important; flex-wrap:wrap !important; gap:6px !important; line-height:1.45 !important;
  white-space:normal !important; overflow:visible !important; text-align:right !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card :is(.semi-space,.semi-space-horizontal){
  display:flex !important; flex-wrap:wrap !important; justify-content:flex-end !important; align-items:center !important;
  gap:6px !important; max-width:100% !important; white-space:normal !important; overflow:visible !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card :is(.semi-tag,.semi-badge,.semi-badge-count){
  flex:0 0 auto !important; max-width:100% !important; overflow:visible !important;
}
html body.btapi-console-reference-skin .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count){
  display:flex !important; flex-direction:column-reverse !important; align-items:flex-start !important; gap:8px !important;
  width:auto !important; max-width:100% !important; height:auto !important; overflow:visible !important; line-height:1.2 !important;
}
html body.btapi-console-reference-skin .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count) > .semi-badge-count{
  position:static !important; transform:none !important; inset:auto !important; display:inline-flex !important; align-items:center !important;
  align-self:flex-start !important; width:auto !important; height:auto !important; min-height:20px !important;
  padding:2px 8px !important; line-height:16px !important; white-space:nowrap !important; z-index:auto !important;
}
html body.btapi-console-reference-skin .semi-card:has(.semi-card-cover) > .semi-card-body .semi-badge:has(.semi-badge-count) > div:first-child{
  display:block !important; position:static !important; line-height:1.15 !important; white-space:nowrap !important; overflow:visible !important;
}
@media (max-width: 640px){
  html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .semi-card-body > div[class*="justify-between"] > div:last-child{flex-basis:170px !important;}
  html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .mt-2.flex.justify-end{justify-content:flex-start !important; overflow-x:auto !important; padding-bottom:4px !important;}
  html body.btapi-console-reference-skin .table-scroll-card .semi-card-body .semi-card .mt-2.flex.justify-end .semi-space{flex-wrap:nowrap !important; justify-content:flex-start !important; min-width:max-content !important;}
}

/* BTAPI mobile auth cleanup v20260522-mobile-auth-v1
   Mobile-only: compact login/register pages, keep desktop untouched. */
@media (max-width: 640px){
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]){
    background:
      radial-gradient(circle at 18% 8%, rgba(139,92,246,.30), transparent 34%),
      radial-gradient(circle at 86% 18%, rgba(217,255,63,.10), transparent 30%),
      #05050b !important;
    overflow-x:hidden !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header{
    height:56px !important;
    min-height:56px !important;
    padding:0 8px !important;
    background:rgba(5,5,11,.78) !important;
    border-bottom:1px solid rgba(255,255,255,.07) !important;
    backdrop-filter:blur(16px) !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header nav a:not(:first-child),
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header a[href="/pricing"],
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header a[href="/docs"],
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header a[href="/about"]{
    display:none !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-header :is(button,.semi-button){
    min-width:30px !important;
    width:auto !important;
    height:30px !important;
    padding:0 8px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content{
    width:100% !important;
    min-height:auto !important;
    padding:72px 14px 10px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    box-sizing:border-box !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content > div{
    width:100% !important;
    max-width:362px !important;
    margin:0 auto !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content img.h-10{
    width:36px !important;
    height:36px !important;
    margin-top:0 !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content h3.semi-typography{
    font-size:22px !important;
    line-height:1.15 !important;
    margin:0 !important;
    color:#f7f4ff !important;
    -webkit-text-fill-color:#f7f4ff !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-card{
    width:100% !important;
    max-width:362px !important;
    margin:14px auto 0 !important;
    border-radius:22px !important;
    border:1px solid rgba(139,92,246,.24) !important;
    background:linear-gradient(180deg, rgba(16,14,28,.92), rgba(9,8,18,.96)) !important;
    box-shadow:0 18px 48px rgba(0,0,0,.42), 0 0 0 1px rgba(217,255,63,.035) inset !important;
    overflow:hidden !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-card-body{
    padding:20px 18px 18px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-card h3.semi-typography{
    margin-bottom:14px !important;
    text-align:center !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-form{
    gap:10px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-form-field,.semi-form-field-main){
    margin-bottom:8px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-form-field-label,.semi-form-field-label-text,label){
    margin-bottom:5px !important;
    color:#d8d1ff !important;
    -webkit-text-fill-color:#d8d1ff !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-input-wrapper,.semi-input-wrapper-default){
    min-height:38px !important;
    height:38px !important;
    border-radius:13px !important;
    border:1px solid rgba(139,92,246,.24) !important;
    background:rgba(255,255,255,.075) !important;
    box-shadow:none !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) input.semi-input{
    height:36px !important;
    line-height:36px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    caret-color:#d9ff3f !important;
    font-size:14px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) input.semi-input::placeholder{
    color:rgba(229,224,255,.56) !important;
    -webkit-text-fill-color:rgba(229,224,255,.56) !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-button-primary{
    min-height:38px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#7c3cff,#a855f7) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border:0 !important;
    box-shadow:0 10px 24px rgba(124,60,255,.30) !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-input-wrapper .semi-button-primary{
    min-height:34px !important;
    height:34px !important;
    padding:0 10px !important;
    font-size:12px !important;
    box-shadow:none !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-footer{
    min-height:0 !important;
    padding:8px 16px 16px !important;
    font-size:12px !important;
    line-height:1.45 !important;
    color:#8f87a6 !important;
    background:#05050b !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-footer :is(a,span,div){
    color:#8f87a6 !important;
    -webkit-text-fill-color:#8f87a6 !important;
  }
}
@media (max-width: 380px){
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content{padding-left:10px !important;padding-right:10px !important;}
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-card-body{padding:18px 14px 16px !important;}
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-input-wrapper .semi-button-primary{padding:0 8px !important;font-size:11px !important;}
}

/* BTAPI mobile auth tighten v20260522-mobile-auth-v2
   Mobile-only tightening of native auth wrapper spacing. */
@media (max-width: 640px){
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content > div.relative.overflow-hidden,
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content > div[class*="py-12"]{
    min-height:auto !important;
    height:auto !important;
    padding:8px 0 0 !important;
    background:transparent !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content > div.relative.overflow-hidden > div{
    width:100% !important;
    max-width:362px !important;
    margin:0 auto !important;
    gap:8px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-content > div.relative.overflow-hidden > div > div:first-child{
    margin:0 0 8px !important;
    padding:0 !important;
    gap:8px !important;
  }
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-card{margin-top:8px !important;}
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-form-field{padding-top:0 !important;}
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) .semi-layout-footer{margin-top:0 !important;}
}

/* BTAPI mobile console dark skin v20260522-mobile-console-dark-v1
   Scope: mobile logged-in console only. No API/route/data changes. */
@media (max-width: 700px){
  html body.btapi-console-reference-skin,
  html body.btapi-console-reference-skin #root,
  html body.btapi-console-reference-skin .app-layout,
  html body.btapi-console-reference-skin .semi-layout,
  html body.btapi-console-reference-skin .semi-layout-content,
  html body.btapi-console-reference-skin main,
  html body.btapi-console-reference-skin section{
    background:
      radial-gradient(circle at 12% 4%, rgba(139,92,246,.22), transparent 30%),
      radial-gradient(circle at 92% 12%, rgba(217,255,63,.07), transparent 28%),
      linear-gradient(180deg,#05050b 0%, #080716 48%, #05050b 100%) !important;
    color:#f7f4ff !important;
    -webkit-text-fill-color:initial !important;
    color-scheme:dark !important;
  }
  html body.btapi-console-reference-skin .semi-layout-content,
  html body.btapi-console-reference-skin main{
    min-width:0 !important;
    overflow-x:hidden !important;
  }

  /* Top navigation / user area readability */
  html body.btapi-console-reference-skin :is(.semi-layout-header,header){
    background:rgba(5,5,12,.82) !important;
    border-bottom:1px solid rgba(167,139,250,.13) !important;
    box-shadow:0 8px 28px rgba(0,0,0,.30) !important;
    backdrop-filter:blur(16px) saturate(130%) !important;
    color:#f8f5ff !important;
    -webkit-text-fill-color:#f8f5ff !important;
  }
  html body.btapi-console-reference-skin :is(.semi-layout-header,header) :is(a,span,div,p,.semi-typography){
    color:#f8f5ff !important;
    -webkit-text-fill-color:#f8f5ff !important;
    opacity:1 !important;
    text-shadow:none !important;
  }
  html body.btapi-console-reference-skin :is(.semi-layout-header,header) nav a{
    color:#f4f0ff !important;
    -webkit-text-fill-color:#f4f0ff !important;
    background:rgba(139,92,246,.10) !important;
    border:1px solid rgba(167,139,250,.16) !important;
    border-radius:999px !important;
    padding:6px 9px !important;
  }
  html body.btapi-console-reference-skin :is(.semi-layout-header,header) :is(button,.semi-button){
    color:#f4f0ff !important;
    -webkit-text-fill-color:#f4f0ff !important;
    background:rgba(139,92,246,.14) !important;
    border:1px solid rgba(167,139,250,.18) !important;
    box-shadow:none !important;
    opacity:1 !important;
  }
  html body.btapi-console-reference-skin :is(.semi-layout-header,header) svg,
  html body.btapi-console-reference-skin :is(.semi-layout-header,header) img{
    opacity:1 !important;
    filter:none !important;
  }

  /* Cards: remove native white bg-* cards on mobile console */
  html body.btapi-console-reference-skin :is(.semi-card,.semi-card-bordered,[class*="bg-blue-50"],[class*="bg-green-50"],[class*="bg-purple-50"],[class*="bg-yellow-50"],[class*="bg-red-50"],[class*="bg-gray-50"],[class*="bg-white"]){
    background:linear-gradient(180deg, rgba(18,16,32,.88), rgba(9,8,20,.94)) !important;
    border:1px solid rgba(167,139,250,.16) !important;
    box-shadow:0 14px 40px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.035) !important;
    color:#f7f4ff !important;
    -webkit-text-fill-color:initial !important;
  }
  html body.btapi-console-reference-skin .semi-card{
    border-radius:18px !important;
    overflow:hidden !important;
  }
  html body.btapi-console-reference-skin :is(.semi-card-body,.semi-card-header,.semi-card-header-bordered,.semi-card-meta,.semi-card-cover){
    background:transparent !important;
    border-color:rgba(167,139,250,.10) !important;
    color:#f7f4ff !important;
  }
  html body.btapi-console-reference-skin :is(.semi-card,.semi-card-body,.semi-card-header) :is(h1,h2,h3,h4,h5,h6,p,span,div,label,b,strong,.semi-typography,.semi-statistic-title,.semi-statistic-content,.semi-statistic-number,.semi-statistic-value){
    color:#f7f4ff !important;
    -webkit-text-fill-color:#f7f4ff !important;
  }
  html body.btapi-console-reference-skin :is(.semi-card,.semi-card-body) :is(.text-gray-400,.text-gray-500,.text-gray-600,.semi-typography-secondary,small){
    color:#b9b1d4 !important;
    -webkit-text-fill-color:#b9b1d4 !important;
  }

  /* Buttons / tags */
  html body.btapi-console-reference-skin :is(.semi-button,.semi-tag,.semi-badge-count){
    border-color:rgba(167,139,250,.16) !important;
    box-shadow:none !important;
  }
  html body.btapi-console-reference-skin .semi-button-primary{
    background:linear-gradient(135deg,#7c3cff,#a855f7) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border:0 !important;
    box-shadow:0 10px 22px rgba(124,60,255,.26) !important;
  }
  html body.btapi-console-reference-skin .semi-button:not(.semi-button-primary){
    background:rgba(139,92,246,.11) !important;
    color:#eee8ff !important;
    -webkit-text-fill-color:#eee8ff !important;
  }

  /* Forms / selects / datepickers: no white defaults */
  html body.btapi-console-reference-skin :is(.semi-form,.semi-form-horizontal,.semi-input-wrapper,.semi-select,.semi-select-selection,.semi-datepicker,.semi-datepicker-input,.semi-textarea-wrapper,.semi-input-number,.semi-cascader-selection){
    background:rgba(10,9,22,.72) !important;
    border-color:rgba(167,139,250,.16) !important;
    color:#f7f4ff !important;
    box-shadow:none !important;
  }
  html body.btapi-console-reference-skin :is(input,textarea,.semi-input,.semi-select-selection-text,.semi-select-selection-placeholder){
    color:#f7f4ff !important;
    -webkit-text-fill-color:#f7f4ff !important;
  }
  html body.btapi-console-reference-skin :is(input::placeholder,textarea::placeholder){
    color:rgba(229,224,255,.56) !important;
    -webkit-text-fill-color:rgba(229,224,255,.56) !important;
  }

  /* Tables: dark surface + horizontal scroll on mobile */
  html body.btapi-console-reference-skin :is(.semi-table-container,.semi-table-wrapper,.semi-table,.semi-table-body,.semi-table-header,.semi-table-fixed){
    background:rgba(9,8,20,.88) !important;
    color:#f7f4ff !important;
    border-color:rgba(167,139,250,.08) !important;
  }
  html body.btapi-console-reference-skin :is(.semi-table-container,.semi-table-wrapper){
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    max-width:100% !important;
  }
  html body.btapi-console-reference-skin table{
    min-width:640px !important;
    background:transparent !important;
  }
  html body.btapi-console-reference-skin :is(th,td,.semi-table-row,.semi-table-row-head,.semi-table-thead,.semi-table-tbody){
    background:transparent !important;
    color:#f7f4ff !important;
    -webkit-text-fill-color:#f7f4ff !important;
    border-color:rgba(226,232,240,.035) !important;
  }
  html body.btapi-console-reference-skin .semi-table-thead :is(th,td){
    background:rgba(139,92,246,.10) !important;
    color:#dcd3ff !important;
    -webkit-text-fill-color:#dcd3ff !important;
  }

  /* Drawers / dropdowns / modals in mobile viewport */
  html body.btapi-console-reference-skin :is(.semi-modal,.semi-modal-content,.semi-modal-header,.semi-modal-body,.semi-modal-footer,.semi-drawer,.semi-drawer-content,.semi-drawer-body,.semi-popover,.semi-dropdown,.semi-select-option-list){
    max-width:calc(100vw - 20px) !important;
    background:#0b0918 !important;
    border-color:rgba(167,139,250,.16) !important;
    color:#f7f4ff !important;
  }
  html body.btapi-console-reference-skin :is(.semi-modal,.semi-drawer){
    left:10px !important;
    right:10px !important;
  }

  /* Mobile spacing / overflow guard */
  html body.btapi-console-reference-skin .semi-layout-content > :is(div,section){
    max-width:100% !important;
    min-width:0 !important;
  }
  html body.btapi-console-reference-skin :is(.semi-row,.semi-col,[class*="grid"],[class*="flex"]){
    min-width:0 !important;
  }
  html body.btapi-console-reference-skin canvas{
    opacity:.72 !important;
    filter:saturate(1.15) brightness(.92) !important;
  }
}

/* BTAPI mobile console dark skin v20260522-mobile-console-dark-v2
   Tighten mobile console buttons/canvases that kept light native fills. */
@media (max-width: 700px){
  html body.btapi-console-reference-skin :is(button,.semi-button,[role="button"])[class*="bg-white"],
  html body.btapi-console-reference-skin :is(button,.semi-button,[role="button"])[class*="!bg-white"],
  html body.btapi-console-reference-skin :is(button,.semi-button,[role="button"])[class*="bg-gray"],
  html body.btapi-console-reference-skin .semi-card :is(button,.semi-button):not(.semi-button-primary){
    background:linear-gradient(135deg,rgba(124,60,255,.28),rgba(168,85,247,.18)) !important;
    border:1px solid rgba(196,181,253,.24) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    box-shadow:0 10px 24px rgba(76,29,149,.20) !important;
  }
  html body.btapi-console-reference-skin .semi-card :is(button,.semi-button):disabled,
  html body.btapi-console-reference-skin .semi-card :is(button,.semi-button)[aria-disabled="true"]{
    opacity:.62 !important;
    background:rgba(139,92,246,.14) !important;
    color:#dcd3ff !important;
    -webkit-text-fill-color:#dcd3ff !important;
  }
  html body.btapi-console-reference-skin .semi-card canvas{
    opacity:.26 !important;
    filter:saturate(1.15) brightness(.48) contrast(.85) !important;
    mix-blend-mode:screen !important;
  }
}

/* BTAPI mobile console dark skin v20260522-mobile-console-dark-v3
   Remove remaining Semi white-light tags on mobile console cards. */
@media (max-width: 700px){
  html body.btapi-console-reference-skin .semi-card :is(.semi-tag-white-light,.semi-tag-light,.semi-tag)[class*="white"],
  html body.btapi-console-reference-skin .semi-card .semi-tag-white-light{
    background:linear-gradient(135deg,rgba(124,60,255,.30),rgba(168,85,247,.20)) !important;
    border:1px solid rgba(196,181,253,.28) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    box-shadow:0 8px 20px rgba(76,29,149,.18) !important;
  }
  html body.btapi-console-reference-skin .semi-card .semi-tag-white-light :is(.semi-tag-content,span,div){
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
}

/* BTAPI console targeted fixes v20260522-two-ui-fixes-v4
   Scope: logged-in console only. Fixes only footer source text and table action button readability. */
html body.btapi-console-reference-skin footer.relative > div > div:last-child,
html body.btapi-console-reference-skin footer.semi-layout-footer footer.relative > div > div:last-child{
  display:none !important;
  visibility:hidden !important;
}
html body.btapi-console-reference-skin footer.relative,
html body.btapi-console-reference-skin footer.semi-layout-footer footer.relative{
  justify-content:center !important;
}
html body.btapi-console-reference-skin footer.relative > div,
html body.btapi-console-reference-skin footer.semi-layout-footer footer.relative > div{
  justify-content:center !important;
}

html body.btapi-console-reference-skin .semi-table .semi-space.semi-space-horizontal{
  gap:8px !important;
  row-gap:8px !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  max-width:100% !important;
  padding:2px 0 !important;
  -webkit-overflow-scrolling:touch !important;
}
html body.btapi-console-reference-skin .semi-table .semi-space.semi-space-horizontal > .semi-space-item{
  flex:0 0 auto !important;
  margin-right:0 !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-size-small.semi-button-light{
  min-width:54px !important;
  height:26px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(196,181,253,.34) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.24) !important;
  opacity:1 !important;
  backdrop-filter:none !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-danger.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(127,29,29,.98),rgba(185,28,28,.92)) !important;
  border-color:rgba(248,113,113,.42) !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-tertiary.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(49,46,129,.98),rgba(91,33,182,.92)) !important;
  border-color:rgba(167,139,250,.46) !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-warning.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(120,53,15,.98),rgba(180,83,9,.92)) !important;
  border-color:rgba(251,191,36,.44) !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-secondary.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(30,41,59,.98),rgba(71,85,105,.92)) !important;
  border-color:rgba(148,163,184,.42) !important;
}
html body.btapi-console-reference-skin .semi-table .semi-button-size-small.semi-button-light .semi-button-content{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:transparent !important;
  white-space:nowrap !important;
}

/* BTAPI console user-card action buttons v20260522-two-ui-fixes-v5
   Narrow extension for mobile card-mode user management actions. */
html body.btapi-console-reference-skin .table-scroll-card .semi-space.semi-space-horizontal{
  gap:8px !important;
  row-gap:8px !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  max-width:100% !important;
  padding:2px 0 !important;
  -webkit-overflow-scrolling:touch !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-space.semi-space-horizontal > .semi-space-item{
  flex:0 0 auto !important;
  margin-right:0 !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-size-small.semi-button-light{
  min-width:54px !important;
  height:26px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(196,181,253,.34) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.24) !important;
  opacity:1 !important;
  backdrop-filter:none !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-danger.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(127,29,29,.98),rgba(185,28,28,.92)) !important;
  border-color:rgba(248,113,113,.42) !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-tertiary.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(49,46,129,.98),rgba(91,33,182,.92)) !important;
  border-color:rgba(167,139,250,.46) !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-warning.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(120,53,15,.98),rgba(180,83,9,.92)) !important;
  border-color:rgba(251,191,36,.44) !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-secondary.semi-button-size-small.semi-button-light{
  background:linear-gradient(135deg,rgba(30,41,59,.98),rgba(71,85,105,.92)) !important;
  border-color:rgba(148,163,184,.42) !important;
}
html body.btapi-console-reference-skin .table-scroll-card .semi-button-size-small.semi-button-light .semi-button-content{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:transparent !important;
  white-space:nowrap !important;
}

/* BTAPI mobile dashboard metric canvas cleanup v20260522-gray-canvas-v6
   Scope: mobile logged-in /console stat cards only. Removes decorative mini sparkline canvases that show as gray blocks. */
@media (max-width: 700px){
  html body.btapi-console-reference-skin .semi-card.bg-green-50 [class~="w-24"][class~="h-10"],
  html body.btapi-console-reference-skin .semi-card.bg-yellow-50 [class~="w-24"][class~="h-10"]{
    display:none !important;
    visibility:hidden !important;
  }
  html body.btapi-console-reference-skin .semi-card.bg-green-50 [class~="w-24"][class~="h-10"] canvas,
  html body.btapi-console-reference-skin .semi-card.bg-yellow-50 [class~="w-24"][class~="h-10"] canvas{
    display:none !important;
    visibility:hidden !important;
  }
}

/* BTAPI public auth + pricing scoped polish v20260522-public-batch1
   Scope: public SPA routes only (/login, /register, /pricing). Does not target /console because selectors exclude the native console sidebar. Homepage / is static home.html and is not affected. */
html body:not(:has(.semi-layout-sider)):has(input[type="password"]),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="用户名"]),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="邮箱"]),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]),
html body:not(:has(.semi-layout-sider)):has(.pricing-content),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header){
  --semi-color-primary:#8b5cf6;--semi-color-primary-hover:#a78bfa;--semi-color-primary-active:#7c3aed;
  --semi-color-bg-0:#0d0b1a;--semi-color-bg-1:#121026;--semi-color-bg-2:#191433;
  --semi-color-fill-0:rgba(255,255,255,.055);--semi-color-fill-1:rgba(139,92,246,.13);--semi-color-fill-2:rgba(139,92,246,.22);
  --semi-color-border:rgba(166,139,250,.26);--semi-color-text-0:#f8f5ff;--semi-color-text-1:#ded8f2;--semi-color-text-2:#bdb5d0;--semi-color-text-3:#9189a7;
  background:radial-gradient(circle at 16% 0%,rgba(139,92,246,.30),transparent 32%),radial-gradient(circle at 84% 12%,rgba(70,215,255,.13),transparent 30%),radial-gradient(circle at 50% 100%,rgba(217,255,65,.06),transparent 38%),linear-gradient(180deg,#060611 0%,#090716 48%,#05050b 100%) !important;
  color:#f8f5ff !important;color-scheme:dark;
}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) #root,
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) #root,
html body:not(:has(.semi-layout-sider)):has(.pricing-content) #root,
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) #root,
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-layout,.semi-layout-content,main),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.semi-layout,.semi-layout-content,main),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.semi-layout,.semi-layout-content,main),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.semi-layout,.semi-layout-content,main){background:transparent !important;color:#f8f5ff !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-layout-header,header),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.semi-layout-header,header),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.semi-layout-header,header),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.semi-layout-header,header){background:rgba(5,5,13,.82) !important;border-bottom:1px solid rgba(166,139,250,.20) !important;box-shadow:0 18px 44px rgba(0,0,0,.32) !important;backdrop-filter:blur(18px) saturate(150%);}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(header a,header span,header .semi-typography,header .semi-icon,header button,.semi-layout-header a,.semi-layout-header span,.semi-layout-header .semi-icon),
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(header a,header span,header .semi-typography,header .semi-icon,header button,.semi-layout-header a,.semi-layout-header span,.semi-layout-header .semi-icon),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(header a,header span,header .semi-typography,header .semi-icon,header button,.semi-layout-header a,.semi-layout-header span,.semi-layout-header .semi-icon),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(header a,header span,header .semi-typography,header .semi-icon,header button,.semi-layout-header a,.semi-layout-header span,.semi-layout-header .semi-icon){color:#f1ecff !important;-webkit-text-fill-color:#f1ecff !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) header a:hover,
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) header a:hover,
html body:not(:has(.semi-layout-sider)):has(.pricing-content) header a:hover,
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) header a:hover{background:rgba(139,92,246,.16) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-card,.semi-card-body,form,.semi-form){background:linear-gradient(180deg,rgba(18,16,34,.92),rgba(9,8,19,.96)) !important;border-color:rgba(166,139,250,.28) !important;color:#f8f5ff !important;box-shadow:0 28px 80px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.06) !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(h1,h2,h3,h4,label,.semi-form-field-label,.semi-typography,p,div,span,a){color:#f8f5ff;-webkit-text-fill-color:initial;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-input-wrapper,.semi-input,.semi-input-textarea-wrapper){background:rgba(255,255,255,.065) !important;border:1px solid rgba(166,139,250,.28) !important;color:#f8f5ff !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(input,textarea){color:#fff !important;-webkit-text-fill-color:#fff !important;caret-color:#a78bfa !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) input::placeholder,html body:not(:has(.semi-layout-sider)):has(input[type="password"]) textarea::placeholder{color:#aaa1c3 !important;-webkit-text-fill-color:#aaa1c3 !important;opacity:1 !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-button-primary,.semi-button-primary:not(.semi-button-disabled)){background:linear-gradient(135deg,#7c3aed,#8b5cf6 52%,#46d7ff) !important;border-color:rgba(255,255,255,.18) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;box-shadow:0 16px 36px rgba(139,92,246,.34) !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-button,.semi-button-content){color:#f8f5ff !important;-webkit-text-fill-color:#f8f5ff !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) footer,html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-layout-footer,sectionfooter){color:#bdb5d0 !important;-webkit-text-fill-color:#bdb5d0 !important;}
html body:not(:has(.semi-layout-sider)):has(input[type="password"]) footer a{color:#a78bfa !important;-webkit-text-fill-color:#a78bfa !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.pricing-content,.semi-layout-content,main),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.pricing-content,.semi-layout-content,main),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.pricing-content,.semi-layout-content,main){background:radial-gradient(circle at 12% 14%,rgba(139,92,246,.22),transparent 32%),radial-gradient(circle at 86% 18%,rgba(70,215,255,.12),transparent 26%),linear-gradient(180deg,rgba(7,7,16,.96),rgba(5,5,11,.98)) !important;color:#f8f5ff !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.pricing-search-header,.semi-card,.semi-table,.semi-empty,.semi-spin),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.pricing-search-header,.semi-card,.semi-table,.semi-empty,.semi-spin),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.pricing-search-header,.semi-card,.semi-table,.semi-empty,.semi-spin){background:rgba(14,12,27,.86) !important;border-color:rgba(166,139,250,.24) !important;color:#f8f5ff !important;box-shadow:0 24px 64px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045) !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.semi-input-wrapper,.semi-input,.semi-select,.semi-select-selection),
html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.semi-input-wrapper,.semi-input,.semi-select,.semi-select-selection),
html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.semi-input-wrapper,.semi-input,.semi-select,.semi-select-selection){background:rgba(255,255,255,.065) !important;border:1px solid rgba(166,139,250,.28) !important;color:#fff !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(input,textarea,.semi-input),html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(input,textarea,.semi-input),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(input,textarea,.semi-input){color:#fff !important;-webkit-text-fill-color:#fff !important;caret-color:#a78bfa !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) input::placeholder,html body:not(:has(.semi-layout-sider)):has(.pricing-content) input::placeholder,html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) input::placeholder{color:#aaa1c3 !important;-webkit-text-fill-color:#aaa1c3 !important;opacity:1 !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.semi-empty,.semi-empty-description,.semi-empty-title,.semi-typography,span,p,div),html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.semi-empty,.semi-empty-description,.semi-empty-title,.semi-typography,span,p,div),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.semi-empty,.semi-empty-description,.semi-empty-title,.semi-typography,span,p,div){color:#ded8f2;-webkit-text-fill-color:initial;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.semi-button,.semi-button-content),html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.semi-button,.semi-button-content),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.semi-button,.semi-button-content){color:#f8f5ff !important;-webkit-text-fill-color:#f8f5ff !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) .semi-button:not(.semi-button-disabled),html body:not(:has(.semi-layout-sider)):has(.pricing-content) .semi-button:not(.semi-button-disabled),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) .semi-button:not(.semi-button-disabled){background:rgba(139,92,246,.16) !important;border-color:rgba(166,139,250,.30) !important;}
html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) .semi-button-disabled,html body:not(:has(.semi-layout-sider)):has(.pricing-content) .semi-button-disabled,html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) .semi-button-disabled{background:rgba(255,255,255,.045) !important;border-color:rgba(255,255,255,.10) !important;color:#8f87a5 !important;-webkit-text-fill-color:#8f87a5 !important;opacity:1 !important;}
@media (max-width:700px){
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(main,.semi-layout-content),html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(main,.semi-layout-content),html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(main,.semi-layout-content),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(main,.semi-layout-content){padding-left:12px !important;padding-right:12px !important;}
  html body:not(:has(.semi-layout-sider)):has(input[type="password"]) :is(.semi-card,.semi-card-body,form,.semi-form),html body:not(:has(.semi-layout-sider)):has(input[placeholder*="模型"]) :is(.pricing-search-header,.semi-card,.semi-empty),html body:not(:has(.semi-layout-sider)):has(.pricing-content) :is(.pricing-search-header,.semi-card,.semi-empty),html body:not(:has(.semi-layout-sider)):has(.pricing-search-header) :is(.pricing-search-header,.semi-card,.semi-empty){border-radius:20px !important;}
}


/* btapi-public-pages-first-batch-20260522 START
   Scope locked to /pricing, /login, /register via body classes added in thai-ui.js.
   Does not target /, /console, API routes, payment, permissions, backend forms or data logic. */
html body.btapi-public-page,
html body.btapi-public-page #root{
  min-height:100vh !important;
  color-scheme:dark !important;
  color:var(--btapi-text) !important;
  background:
    radial-gradient(circle at 18% 12%, rgba(168,85,247,.24), transparent 28%),
    radial-gradient(circle at 84% 18%, rgba(70,215,255,.14), transparent 26%),
    radial-gradient(circle at 50% 92%, rgba(217,255,65,.08), transparent 30%),
    linear-gradient(180deg,#05050b 0%,#090713 48%,#05050b 100%) !important;
}
html body.btapi-public-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 82%);}
html body.btapi-public-page :is(.semi-layout,.semi-layout-content,main,section,article,footer,header,nav){background-color:transparent !important;color:var(--btapi-text) !important;}
html body.btapi-public-page :is(.semi-layout-header,header){background:rgba(7,6,17,.74) !important;border-bottom:1px solid rgba(150,111,255,.18) !important;backdrop-filter:blur(18px) saturate(140%);box-shadow:0 18px 44px rgba(0,0,0,.22) !important;}
html body.btapi-public-page :is(.semi-layout-footer,footer){background:rgba(5,5,11,.76) !important;border-top:1px solid rgba(150,111,255,.18) !important;color:var(--btapi-muted) !important;}
html body.btapi-public-page :is(h1,h2,h3,h4,h5,h6,.semi-typography,.semi-typography h1,.semi-typography h2,.semi-typography h3,p,span,label,div,strong,b,a,li){color:inherit;}
html body.btapi-public-page :is(h1,h2,h3,.semi-typography h1,.semi-typography h2){color:#fff !important;letter-spacing:-.025em;}
html body.btapi-public-page :is(p,.semi-typography-secondary,small,.text-gray-400,.text-gray-500,.text-gray-600,[class*="text-gray"]){color:var(--btapi-muted) !important;-webkit-text-fill-color:var(--btapi-muted) !important;}
html body.btapi-public-page :is(.semi-card,.semi-card-bordered,.semi-card-body,.semi-list,.semi-list-item,[class*="bg-white"],[class*="bg-gray-50"],[class*="bg-slate"],[class*="shadow"]){background:linear-gradient(180deg,rgba(20,18,38,.86),rgba(8,8,18,.92)) !important;border-color:rgba(150,111,255,.22) !important;color:var(--btapi-text) !important;box-shadow:0 24px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.055) !important;}
html body.btapi-public-page :is(.semi-card-header,.semi-card-header-bordered){background:linear-gradient(90deg,rgba(139,92,246,.14),rgba(70,215,255,.06)) !important;border-color:rgba(150,111,255,.18) !important;}
html body.btapi-public-page :is(input,textarea,.semi-input,.semi-input-wrapper,.semi-textarea-wrapper,.semi-select,.semi-select-selection,.semi-select-selection-text,.semi-select-selection-placeholder,.semi-checkbox-inner){background:rgba(255,255,255,.055) !important;border-color:rgba(150,111,255,.30) !important;color:var(--btapi-text) !important;-webkit-text-fill-color:var(--btapi-text) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;}
html body.btapi-public-page :is(input::placeholder,textarea::placeholder,.semi-input::placeholder){color:rgba(188,180,209,.72) !important;-webkit-text-fill-color:rgba(188,180,209,.72) !important;}
html body.btapi-public-page :is(.semi-input-wrapper-focus,.semi-select-focus,input:focus,textarea:focus){border-color:rgba(217,255,65,.46) !important;box-shadow:0 0 0 3px rgba(139,92,246,.20),0 0 28px rgba(139,92,246,.24) !important;}
html body.btapi-public-page :is(button,.semi-button,[role="button"]){border-radius:14px !important;border-color:rgba(150,111,255,.25) !important;color:var(--btapi-text) !important;background:rgba(255,255,255,.065) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05) !important;}
html body.btapi-public-page :is(.semi-button-primary,button[type="submit"],button[class*="primary"],[class*="bg-blue"],[class*="bg-purple"]){background:linear-gradient(135deg,#7c3aed,#a855f7 48%,#46d7ff) !important;border-color:rgba(255,255,255,.18) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;box-shadow:0 18px 42px rgba(139,92,246,.34), inset 0 1px 0 rgba(255,255,255,.12) !important;}
html body.btapi-public-page :is(button:hover,.semi-button:hover,a:hover){filter:brightness(1.08);}
html body.btapi-public-page :is(.semi-table,.semi-table-container,.semi-table-wrapper,.semi-table-header,.semi-table-body,table,thead,tbody,tr,th,td){background:rgba(12,10,24,.64) !important;border-color:rgba(150,111,255,.18) !important;color:var(--btapi-text) !important;}
html body.btapi-public-page :is(.semi-table-thead th,th){background:rgba(139,92,246,.14) !important;color:#efeaff !important;}
html body.btapi-public-page :is(.semi-empty,.semi-empty-content,.semi-spin,.semi-skeleton,.semi-list-empty){background:rgba(13,12,25,.72) !important;color:var(--btapi-muted) !important;border-color:rgba(150,111,255,.18) !important;}
html body.btapi-public-page :is(.semi-empty-image,.semi-empty-image svg){opacity:.72;filter:grayscale(.28) hue-rotate(235deg) saturate(1.15) brightness(.78);}
html body.btapi-public-page :is(.semi-tag,.semi-badge-count,.semi-tag-light,.semi-tag-white-light){background:rgba(139,92,246,.14) !important;border:1px solid rgba(150,111,255,.24) !important;color:#ded6ff !important;}
html body.btapi-public-page :is(.semi-tabs-bar,.semi-tabs-tab,.semi-pagination,.semi-page-item,.semi-select-option-list,.semi-dropdown,.semi-popover,.semi-modal-content){background:linear-gradient(180deg,rgba(17,16,33,.96),rgba(8,8,18,.96)) !important;border-color:rgba(150,111,255,.24) !important;color:var(--btapi-text) !important;}
html body.btapi-public-page.btapi-auth-page #root > div,html body.btapi-public-page.btapi-auth-page main,html body.btapi-public-page.btapi-auth-page .semi-layout-content{min-height:calc(100vh - 1px) !important;display:flex;flex-direction:column;}
html body.btapi-public-page.btapi-auth-page :is(form,.semi-form){background:linear-gradient(180deg,rgba(22,20,43,.90),rgba(8,8,18,.94)) !important;border:1px solid rgba(150,111,255,.26) !important;border-radius:26px !important;padding:clamp(22px,4vw,34px) !important;box-shadow:0 30px 88px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.035) inset,0 0 54px rgba(139,92,246,.18) !important;}
html body.btapi-public-page.btapi-auth-page :is(form,.semi-form)::before{content:"BTAPI";display:inline-flex;align-items:center;height:30px;padding:0 12px;margin-bottom:14px;border-radius:999px;color:#d9ff41;background:rgba(217,255,65,.08);border:1px solid rgba(217,255,65,.18);font-weight:900;letter-spacing:.08em;}
html body.btapi-public-page.btapi-pricing-page :is(.semi-input-wrapper,.semi-select,.semi-select-selection,[class*="search"],[class*="filter"]){background:rgba(255,255,255,.055) !important;border-color:rgba(150,111,255,.30) !important;color:var(--btapi-text) !important;}
html body.btapi-public-page.btapi-pricing-page :is(.semi-empty,.semi-list-empty){min-height:220px;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(150,111,255,.30) !important;border-radius:22px !important;}
@media(max-width:720px){html body.btapi-public-page :is(.semi-card,.semi-card-body,form,.semi-form){border-radius:20px !important;}html body.btapi-public-page.btapi-auth-page :is(form,.semi-form){padding:20px !important;}html body.btapi-public-page :is(.semi-layout-header,header){position:sticky;top:0;z-index:30;}}
/* btapi-public-pages-first-batch-20260522 END */



/* btapi-public-pages-mobile-polish-20260522-batch2 START
   Scope locked to body classes for /pricing, /login, /register only.
   Mobile-only micro-polish: spacing, input/button alignment, safe bottom padding, pricing toolbar/card overflow. */
@media (max-width: 720px){
  html body.btapi-public-page{
    overflow-x:hidden !important;
    min-width:0 !important;
  }
  html body.btapi-public-page #root,
  html body.btapi-public-page :is(.semi-layout,.semi-layout-content,main){
    max-width:100vw !important;
    overflow-x:hidden !important;
  }
  html body.btapi-public-page :is(.semi-layout-header,header){
    min-height:54px !important;
    padding-left:max(10px,env(safe-area-inset-left)) !important;
    padding-right:max(10px,env(safe-area-inset-right)) !important;
  }
  html body.btapi-public-page :is(.semi-layout-header,header) :is(nav,a,button,.semi-button){
    min-width:0 !important;
  }
  html body.btapi-public-page :is(.semi-button,button,[role="button"]),
  html body.btapi-public-page :is(.semi-button-content){
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  html body.btapi-public-page :is(.semi-input-wrapper,.semi-input-textarea-wrapper){
    min-width:0 !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    overflow:hidden !important;
  }
  html body.btapi-public-page :is(.semi-input-wrapper input,.semi-input){
    min-width:0 !important;
    flex:1 1 auto !important;
    width:100% !important;
    text-overflow:ellipsis !important;
  }
  html body.btapi-public-page :is(.semi-input-prefix,.semi-input-suffix,.semi-input-prepend,.semi-input-append){
    flex:0 0 auto !important;
  }

  html body.btapi-public-page.btapi-auth-page{
    min-height:100svh !important;
  }
  html body.btapi-public-page.btapi-auth-page #root,
  html body.btapi-public-page.btapi-auth-page #root > div,
  html body.btapi-public-page.btapi-auth-page :is(.semi-layout,.semi-layout-content,main){
    min-height:100svh !important;
    height:auto !important;
    overflow-x:hidden !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(main,.semi-layout-content){
    padding:14px 12px max(30px,env(safe-area-inset-bottom)) !important;
    justify-content:flex-start !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(form,.semi-form,.semi-card,.semi-card-body){
    width:100% !important;
    max-width:calc(100vw - 24px) !important;
    box-sizing:border-box !important;
    padding:16px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(label,.semi-form-field-label){
    margin-bottom:6px !important;
    font-size:13px !important;
    line-height:1.25 !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-form-field,.semi-form-field-main){
    margin-bottom:12px !important;
    min-width:0 !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-wrapper){
    height:42px !important;
    border-radius:13px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-wrapper input,.semi-input){
    font-size:13px !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-suffix button,.semi-input-suffix .semi-button){
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    padding:0 !important;
    border-radius:10px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-append button,.semi-input-append .semi-button,button:has(.semi-button-content)){
    min-height:38px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-append button,.semi-input-append .semi-button){
    min-width:82px !important;
    max-width:96px !important;
    padding:0 9px !important;
    font-size:12px !important;
    border-radius:12px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(button[type="submit"],.semi-button-primary){
    width:100% !important;
    min-height:42px !important;
    border-radius:14px !important;
  }
  html body.btapi-public-page.btapi-auth-page :is(.semi-layout-footer,footer){
    padding:12px 14px max(16px,env(safe-area-inset-bottom)) !important;
    font-size:12px !important;
  }

  html body.btapi-public-page.btapi-pricing-page :is(main,.semi-layout-content){
    padding:12px 10px max(28px,env(safe-area-inset-bottom)) !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.pricing-search-header,.semi-card){
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.pricing-search-header,.semi-space,.semi-row){
    flex-wrap:wrap !important;
    row-gap:10px !important;
    column-gap:8px !important;
    max-width:100% !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.pricing-search-header .semi-input-wrapper,.semi-input-wrapper:has(input[placeholder*="模型"])){ 
    flex:1 1 170px !important;
    min-width:0 !important;
    max-width:100% !important;
    height:42px !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.semi-button){
    min-height:38px !important;
    padding:0 12px !important;
    border-radius:13px !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.semi-empty,.semi-list-empty){
    min-height:188px !important;
    padding:20px 14px !important;
    margin-top:10px !important;
    box-sizing:border-box !important;
  }
  html body.btapi-public-page.btapi-pricing-page :is(.semi-empty-content,.semi-empty-title,.semi-empty-description){
    max-width:100% !important;
    text-align:center !important;
    overflow-wrap:anywhere !important;
  }
}
@media (max-height: 740px) and (max-width:720px){
  html body.btapi-public-page.btapi-auth-page :is(main,.semi-layout-content){padding-top:8px !important;padding-bottom:18px !important;}
  html body.btapi-public-page.btapi-auth-page :is(form,.semi-form,.semi-card,.semi-card-body){padding:14px !important;}
  html body.btapi-public-page.btapi-auth-page :is(.semi-form-field,.semi-form-field-main){margin-bottom:9px !important;}
  html body.btapi-public-page.btapi-auth-page :is(.semi-input-wrapper){height:40px !important;}
  html body.btapi-public-page.btapi-auth-page :is(button[type="submit"],.semi-button-primary){min-height:40px !important;}
}
/* btapi-public-pages-mobile-polish-20260522-batch2 END */


/* btapi-public-pages-mobile-polish-20260522-batch2-codefix START
   Narrow correction for register email verification button on mobile; keeps password eye icons compact. */
@media (max-width:720px){
  html body.btapi-public-page.btapi-register-page :is(.semi-input-suffix button:not([aria-label*="password" i]),.semi-input-suffix .semi-button:not([aria-label*="password" i])){
    width:auto !important;
    min-width:96px !important;
    max-width:116px !important;
    height:34px !important;
    padding:0 8px !important;
    font-size:11px !important;
    line-height:1.05 !important;
    white-space:normal !important;
    text-align:center !important;
  }
  html body.btapi-public-page.btapi-register-page :is(.semi-input-suffix button[aria-label*="password" i],.semi-input-suffix .semi-button[aria-label*="password" i]){
    width:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    padding:0 !important;
  }
  html body.btapi-public-page.btapi-register-page :is(main,.semi-layout-content){
    padding-top:8px !important;
  }
  html body.btapi-public-page.btapi-register-page :is(form,.semi-form,.semi-card,.semi-card-body){
    padding-top:14px !important;
    padding-bottom:14px !important;
  }
  html body.btapi-public-page.btapi-register-page :is(.semi-form-field,.semi-form-field-main){
    margin-bottom:10px !important;
  }
}
/* btapi-public-pages-mobile-polish-20260522-batch2-codefix END */

/* BTAPI backend batch2 A-group consolidated console rules start */
/* Scope: logged-in console surfaces only. Do not affect static home or public pricing/auth pages. */
html body.btapi-console-reference-skin,
html body:has(.semi-layout-sider){
  --btapi-console-panel-strong: rgba(20, 16, 39, .98);
  --btapi-console-panel-solid: #171327;
  --btapi-console-panel-raised: #21183a;
  --btapi-console-line-soft: rgba(166, 139, 250, .26);
  --btapi-console-line-strong: rgba(196, 181, 253, .38);
  --btapi-console-text-strong: #fbf8ff;
  --btapi-console-text: #eee8ff;
  --btapi-console-text-muted: #cfc6ea;
  --btapi-console-disabled-text: #a79fbd;
}

/* A1: tags / badges — keep semantic difference while raising contrast on dark console. */
html body.btapi-console-reference-skin :is(.semi-tag,.semi-badge-count),
html body:has(.semi-layout-sider) :is(.semi-tag,.semi-badge-count){
  color: var(--btapi-console-text) !important;
  -webkit-text-fill-color: var(--btapi-console-text) !important;
  background: #352a58 !important;
  border: 1px solid rgba(196, 181, 253, .36) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.075), 0 8px 22px rgba(0,0,0,.18) !important;
  opacity: 1 !important;
}
html body.btapi-console-reference-skin :is(.semi-tag span,.semi-tag-content,.semi-badge-count span),
html body:has(.semi-layout-sider) :is(.semi-tag span,.semi-tag-content,.semi-badge-count span){
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}
html body.btapi-console-reference-skin :is(.semi-tag-green,.semi-tag-green-light,.semi-badge-green),
html body:has(.semi-layout-sider) :is(.semi-tag-green,.semi-tag-green-light,.semi-badge-green){
  color: #d9ffe8 !important;
  -webkit-text-fill-color: #d9ffe8 !important;
  background: #123f34 !important;
  border-color: rgba(74, 222, 128, .46) !important;
}
html body.btapi-console-reference-skin :is(.semi-tag-red,.semi-tag-red-light,.semi-badge-red),
html body:has(.semi-layout-sider) :is(.semi-tag-red,.semi-tag-red-light,.semi-badge-red){
  color: #ffe1e7 !important;
  -webkit-text-fill-color: #ffe1e7 !important;
  background: #4a1f2d !important;
  border-color: rgba(251, 113, 133, .50) !important;
}
html body.btapi-console-reference-skin :is(.semi-tag-orange,.semi-tag-orange-light,.semi-tag-yellow,.semi-tag-yellow-light,.semi-tag-warning,.semi-badge-warning),
html body:has(.semi-layout-sider) :is(.semi-tag-orange,.semi-tag-orange-light,.semi-tag-yellow,.semi-tag-yellow-light,.semi-tag-warning,.semi-badge-warning){
  color: #fff1d5 !important;
  -webkit-text-fill-color: #fff1d5 !important;
  background: #4a3518 !important;
  border-color: rgba(251, 191, 36, .48) !important;
}
html body.btapi-console-reference-skin :is(.semi-tag-blue,.semi-tag-blue-light,.semi-tag-light-blue,.semi-tag-light-blue-light,.semi-badge-blue),
html body:has(.semi-layout-sider) :is(.semi-tag-blue,.semi-tag-blue-light,.semi-tag-light-blue,.semi-tag-light-blue-light,.semi-badge-blue){
  color: #e3f0ff !important;
  -webkit-text-fill-color: #e3f0ff !important;
  background: #1f355f !important;
  border-color: rgba(96, 165, 250, .48) !important;
}
html body.btapi-console-reference-skin :is(.semi-tag-grey,.semi-tag-grey-light,.semi-tag-white,.semi-tag-white-light,.semi-tag-default),
html body:has(.semi-layout-sider) :is(.semi-tag-grey,.semi-tag-grey-light,.semi-tag-white,.semi-tag-white-light,.semi-tag-default){
  color: #f0ebff !important;
  -webkit-text-fill-color: #f0ebff !important;
  background: #332d4f !important;
  border-color: rgba(196, 181, 253, .34) !important;
}

/* A2: disabled controls — readable but clearly inactive, without changing behavior. */
html body.btapi-console-reference-skin :is(.semi-button-disabled,.semi-button[disabled],button:disabled,[aria-disabled="true"]),
html body:has(.semi-layout-sider) :is(.semi-button-disabled,.semi-button[disabled],button:disabled,[aria-disabled="true"]){
  opacity: 1 !important;
  cursor: not-allowed !important;
  color: var(--btapi-console-disabled-text) !important;
  -webkit-text-fill-color: var(--btapi-console-disabled-text) !important;
  background: rgba(255,255,255,.045) !important;
  border-color: rgba(255,255,255,.115) !important;
  box-shadow: none !important;
  filter: saturate(.72) brightness(.86) !important;
}
html body.btapi-console-reference-skin :is(.semi-button-disabled,.semi-button[disabled],button:disabled,[aria-disabled="true"]) :is(.semi-button-content,span,svg),
html body:has(.semi-layout-sider) :is(.semi-button-disabled,.semi-button[disabled],button:disabled,[aria-disabled="true"]) :is(.semi-button-content,span,svg){
  color: var(--btapi-console-disabled-text) !important;
  -webkit-text-fill-color: var(--btapi-console-disabled-text) !important;
}

/* A3: admin tables — stable horizontal scroll, final operation column, and fixed-column backgrounds. */
html body.btapi-console-reference-skin :is(.semi-table-wrapper,.semi-table-container,.semi-table-body,.semi-table-header),
html body:has(.semi-layout-sider) :is(.semi-table-wrapper,.semi-table-container,.semi-table-body,.semi-table-header){
  background: rgba(12, 10, 25, .72) !important;
  border-color: var(--btapi-console-line-soft) !important;
  scrollbar-color: rgba(167,139,250,.55) rgba(15,12,30,.70);
}
html body.btapi-console-reference-skin :is(.semi-table-container,.semi-table-body),
html body:has(.semi-layout-sider) :is(.semi-table-container,.semi-table-body){
  overflow-x: auto !important;
  overflow-y: hidden;
  border-radius: 16px !important;
}
html body.btapi-console-reference-skin :is(.semi-table,.semi-table table),
html body:has(.semi-layout-sider) :is(.semi-table,.semi-table table){
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
html body.btapi-console-reference-skin .semi-table-thead>.semi-table-row>.semi-table-row-head,
html body:has(.semi-layout-sider) .semi-table-thead>.semi-table-row>.semi-table-row-head{
  background: rgba(29, 22, 53, .98) !important;
  color: var(--btapi-console-text-strong) !important;
  -webkit-text-fill-color: var(--btapi-console-text-strong) !important;
  border-color: var(--btapi-console-line-soft) !important;
}
html body.btapi-console-reference-skin .semi-table-tbody>.semi-table-row>.semi-table-row-cell,
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row>.semi-table-row-cell{
  background: rgba(11, 10, 24, .92) !important;
  color: var(--btapi-console-text-muted) !important;
  border-color: rgba(166,139,250,.16) !important;
}
html body.btapi-console-reference-skin .semi-table-tbody>.semi-table-row:hover>.semi-table-row-cell,
html body:has(.semi-layout-sider) .semi-table-tbody>.semi-table-row:hover>.semi-table-row-cell{
  background: rgba(32, 24, 58, .96) !important;
}
html body.btapi-console-reference-skin :is(.semi-table-fixed-left,.semi-table-fixed-right,.semi-table-row-cell-fix-left,.semi-table-row-cell-fix-right,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-left,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-right,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-left,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-right),
html body:has(.semi-layout-sider) :is(.semi-table-fixed-left,.semi-table-fixed-right,.semi-table-row-cell-fix-left,.semi-table-row-cell-fix-right,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-left,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-right,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-left,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-right){
  background: var(--btapi-console-panel-strong) !important;
  background-color: var(--btapi-console-panel-strong) !important;
  color: var(--btapi-console-text) !important;
  -webkit-text-fill-color: var(--btapi-console-text) !important;
  z-index: 3 !important;
  background-clip: padding-box !important;
}
html body.btapi-console-reference-skin :is(.semi-table-fixed-right,.semi-table-row-cell-fix-right,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-right,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-right),
html body:has(.semi-layout-sider) :is(.semi-table-fixed-right,.semi-table-row-cell-fix-right,.semi-table-thead>.semi-table-row>.semi-table-row-head-fix-right,.semi-table-tbody>.semi-table-row>.semi-table-row-cell-fix-right){
  box-shadow: -18px 0 28px rgba(5,5,11,.52), -1px 0 0 rgba(196,181,253,.24) !important;
}
html body.btapi-console-reference-skin .semi-table .semi-space.semi-space-horizontal,
html body:has(.semi-layout-sider) .semi-table .semi-space.semi-space-horizontal{
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
  padding: 2px 0 !important;
}
html body.btapi-console-reference-skin .semi-table :is(.semi-button-size-small,.semi-button-light),
html body:has(.semi-layout-sider) .semi-table :is(.semi-button-size-small,.semi-button-light){
  min-height: 26px !important;
  border-radius: 999px !important;
}

/* A4: settings tabs on small screens — readable horizontal tabs without page-level overflow. */
@media (max-width: 700px){
  html body.btapi-console-reference-skin :is(.semi-tabs-bar,.semi-tabs-tab-bar,[role="tablist"]),
  html body:has(.semi-layout-sider) :is(.semi-tabs-bar,.semi-tabs-tab-bar,[role="tablist"]){
    max-width: 100vw !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 0 10px 8px !important;
    mask-image: linear-gradient(90deg, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
  }
  html body.btapi-console-reference-skin :is(.semi-tabs-bar,.semi-tabs-tab-bar,[role="tablist"])::-webkit-scrollbar,
  html body:has(.semi-layout-sider) :is(.semi-tabs-bar,.semi-tabs-tab-bar,[role="tablist"])::-webkit-scrollbar{display:none;}
  html body.btapi-console-reference-skin :is(.semi-tabs-tab,.semi-tabs-tab-button),
  html body:has(.semi-layout-sider) :is(.semi-tabs-tab,.semi-tabs-tab-button){
    flex: 0 0 auto !important;
    max-width: none !important;
    white-space: nowrap !important;
    border-radius: 999px !important;
  }
  html body.btapi-console-reference-skin :is(.semi-tabs-tab-active,.semi-tabs-tab-active .semi-tabs-tab-button),
  html body:has(.semi-layout-sider) :is(.semi-tabs-tab-active,.semi-tabs-tab-active .semi-tabs-tab-button){
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: linear-gradient(135deg, rgba(124,58,237,.54), rgba(70,215,255,.18)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 10px 26px rgba(124,58,237,.22) !important;
  }
}
/* BTAPI backend batch2 A-group consolidated console rules end */

/* BTAPI dashboard scoped mini trend cleanup 20260522 start
   Scope: /console dashboard top summary cards only.
   Purpose: hide empty mini VChart canvas blocks and remove fake click cursor.
   Do not affect model analytics large charts or other canvas charts. */
html body:has(.semi-layout-sider) main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .w-24.h-10,
html body.btapi-console-reference-skin main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .w-24.h-10 {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html body:has(.semi-layout-sider) main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .w-24.h-10 canvas,
html body.btapi-console-reference-skin main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .w-24.h-10 canvas {
  cursor: default !important;
  pointer-events: none !important;
}

html body:has(.semi-layout-sider) main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .flex.items-center.justify-between.cursor-pointer,
html body.btapi-console-reference-skin main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .flex.items-center.justify-between.cursor-pointer {
  cursor: default !important;
}
/* BTAPI dashboard scoped mini trend cleanup 20260522 end */

/* BTAPI dashboard scoped mini trend cleanup 20260522 selector fix start
   Same /console top summary grid scope, without body class dependency. */
html body main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card [class~="w-24"][class~="h-10"] {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html body main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card [class~="w-24"][class~="h-10"] canvas {
  cursor: default !important;
  pointer-events: none !important;
}

html body main
  [class~="grid"][class~="grid-cols-1"][class~="md:grid-cols-2"][class~="lg:grid-cols-4"][class~="gap-4"]
  > .semi-card .flex.items-center.justify-between.cursor-pointer {
  cursor: default !important;
}
/* BTAPI dashboard scoped mini trend cleanup 20260522 selector fix end */

/* BTAPI mobile-only console header/tab polish - 20260529 minimal scope */
@media (max-width: 767px) {
  body.btapi-console-reference-skin header > div,
  body.btapi-console-reference-skin header .flex.items-center.justify-between.h-16 {
    min-width: 0;
    gap: 6px;
  }

  body.btapi-console-reference-skin header nav {
    min-width: 0;
    flex: 1 1 auto;
    margin-left: 6px !important;
    margin-right: 6px !important;
    padding-right: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }

  body.btapi-console-reference-skin header nav::-webkit-scrollbar {
    display: none;
  }

  body.btapi-console-reference-skin header nav + div,
  body.btapi-console-reference-skin header nav ~ div {
    flex: 0 0 auto;
    max-width: calc(100vw - 238px - max(10px, env(safe-area-inset-right)));
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-right: max(10px, env(safe-area-inset-right));
    scroll-padding-right: max(10px, env(safe-area-inset-right));
    gap: 6px !important;
  }

  body.btapi-console-reference-skin header nav + div::-webkit-scrollbar,
  body.btapi-console-reference-skin header nav ~ div::-webkit-scrollbar {
    display: none;
  }

  body.btapi-console-reference-skin header nav + div > *,
  body.btapi-console-reference-skin header nav ~ div > * {
    flex: 0 0 auto;
  }

  body.btapi-console-reference-skin header button[aria-label="系统公告"],
  body.btapi-console-reference-skin header button[aria-label="切换主题"],
  body.btapi-console-reference-skin header button[aria-label="common.changeLanguage"] {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
  }

  body.btapi-console-reference-skin header button[aria-label="系统公告"] svg,
  body.btapi-console-reference-skin header button[aria-label="切换主题"] svg,
  body.btapi-console-reference-skin header button[aria-label="common.changeLanguage"] svg {
    width: 16px;
    height: 16px;
  }

  body.btapi-console-reference-skin header button:not([aria-label])[class*="rounded-full"] {
    min-width: 44px !important;
    height: 30px !important;
    padding: 0 7px !important;
  }

  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-bar {
    padding: 0 0 3px !important;
  }

  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab,
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab {
    margin-right: 4px !important;
  }

  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab::after,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab:not(:last-child)::after,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-button::after,
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab::after,
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab:not(:last-child)::after {
    opacity: 0 !important;
    display: none !important;
    content: none !important;
  }

  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-button,
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab {
    min-height: 26px !important;
    padding: 4px 10px !important;
    border-radius: 9999px !important;
    font-size: 12px !important;
    line-height: 18px !important;
    font-weight: 400 !important;
    background: transparent !important;
    box-shadow: none !important;
    white-space: nowrap !important;
  }

  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-active .semi-tabs-tab-button,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-button[aria-selected="true"],
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab-active {
    color: rgba(147, 197, 253, 0.95) !important;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.18), rgba(14, 165, 233, 0.12)) !important;
    border: 1px solid rgba(129, 140, 248, 0.28) !important;
    box-shadow: none !important;
    font-weight: 500 !important;
  }
}

/* BTAPI mobile chart tabs stable active footprint - 20260529 */
@media (max-width: 767px) {
  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-bar,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-bar {
    overflow: visible !important;
  }

  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin-right: 4px !important;
    margin-bottom: 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    vertical-align: top !important;
  }

  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab span,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-button,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: calc(100% - 8px) !important;
    height: 26px !important;
    min-height: 26px !important;
    padding: 0 6px !important;
    border-radius: 9999px !important;
    box-sizing: border-box !important;
    font-size: 12px !important;
    line-height: 18px !important;
    white-space: nowrap !important;
  }

  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab-active,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-active {
    color: rgba(247, 244, 255, 0.92) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  body.btapi-console-reference-skin .semi-card:has(.semi-tabs-tab-active span) .semi-tabs-tab-active span,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-active .semi-tabs-tab-button,
  body.btapi-console-reference-skin .btapi-dashboard-chart-tabs .semi-tabs-tab-button[aria-selected="true"] {
    color: rgba(147, 197, 253, 0.95) !important;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.18), rgba(14, 165, 233, 0.12)) !important;
    border: 1px solid rgba(129, 140, 248, 0.28) !important;
    box-shadow: none !important;
    outline: 0 !important;
    font-weight: 500 !important;
  }
}

/* BTAPI mobile console dashboard greeting top safety gap - 20260530
   Scope: mobile /console dashboard header only. No desktop/auth/home/pricing/other console routes. */
@media (max-width: 767px) {
  html body.btapi-console-reference-skin .semi-layout-content > .mt-\[60px\].px-2 > .h-full > .flex.items-center.justify-between.mb-4:has(> h2:first-child),
  html body.btapi-console-reference-skin .semi-layout-content > .mt-\[60px\].px-2 > .h-full > .flex.items-center.justify-between.mb-4:has(> h2[class*="text-2xl"]:first-child) {
    padding-top: 10px !important;
  }
}

/* BTAPI mobile expanded sidebar right-edge seam color fix - 20260530
   Source verified at 390px expanded sidebar: x=172-179 hits .sidebar-nav/.sidebar-container
   background rgb(35,36,41) plus right border, not content width/margin/box-shadow.
   Scope: mobile console with expanded fixed sider only; geometry unchanged. */
@media (max-width: 767px) {
  html body .app-sider.semi-layout-sider .sidebar-container,
  html body .app-sider.semi-layout-sider .semi-navigation.sidebar-nav {
    background: linear-gradient(90deg,
      rgb(35, 36, 41) 0,
      rgb(35, 36, 41) calc(100% - 10px),
      rgba(18, 16, 34, .96) calc(100% - 10px),
      rgba(28, 20, 55, .96) 100%) !important;
  }

  html body .app-sider.semi-layout-sider .sidebar-container {
    border-right-color: rgba(150, 111, 255, .14) !important;
  }
}
