/* 全站共用语义色与文字层级；优先级统一，禁止各页面重定义模式语义。 */
@layer site-visual-standards {
  :root{
    --site-font:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
    --site-title:24px;--site-section:17px;--site-body:14px;--site-control:13px;--site-note:12px;
    --mode-live-ink:#195ec6;--mode-live-bg:#edf4ff;--mode-live-line:#c9ddff;
    --mode-recorded-ink:#7541b5;--mode-recorded-bg:#f5efff;--mode-recorded-line:#dfcef7;
    --mode-replay-ink:#945c0a;--mode-replay-bg:#fff6e6;--mode-replay-line:#f2dcaf;
  }
  body,:is(h1,h2,h3,h4,p,td,th,label,dt,dd,small,a,span,strong,b,input,textarea,select,button):not(.material-icons,.fa,[class^="icon-"],.ui-stat-icon){font-family:var(--site-font)!important}
  .room-mode.live{color:var(--mode-live-ink)!important;background:var(--mode-live-bg)!important;border-color:var(--mode-live-line)!important}
  .room-mode.recorded{color:var(--mode-recorded-ink)!important;background:var(--mode-recorded-bg)!important;border-color:var(--mode-recorded-line)!important}
  .room-mode.replay{color:var(--mode-replay-ink)!important;background:var(--mode-replay-bg)!important;border-color:var(--mode-replay-line)!important}
  .room-mode{font-size:var(--site-note)!important;line-height:20px!important}
  /* 首页已确认的数值、图表与仪表字号保留；二级管理页与弹窗复用其文字层级。 */
  :where(html[data-lite-embed],html:has(body.referencePage))
  :is(body:not(.workspace-page) #content:not(:has(#roomWorkspace,.platform-dashboard,.merchant-home)),dialog:not(#consoleSidebar),[role="dialog"]:not(#consoleSidebar)):not(#roomWorkspace *){
    font-size:var(--site-body);
    & :is(h1,.ui-ref-heading:is(h1)){font-size:var(--site-title)!important;line-height:32px!important}
    & h2{font-size:var(--site-section)!important;line-height:25px!important}
    & :is(h3,h4){font-size:var(--site-body)!important;line-height:22px!important}
    & :is(p,td,th,label,dt,dd,input,select,textarea){font-size:var(--site-body)!important;line-height:22px!important}
    & :is(button,.button){font-size:var(--site-control)!important;line-height:20px!important}
    & :is(small,.hint,.muted,.console-note,.console-help,.sa-note,.am-note,.cc-note,.m-sub,.page-title>div>p,.cc-heading>div>p,.mc-heading>div>p,.pool-workspace-heading>p,.monitor-video-merchant,.monitor-video-mode,.monitor-video-status,.monitor-video-toolbar,.monitor-video-toolbar small){font-size:var(--site-note)!important;line-height:20px!important}
  }
  body:has(#portal) #portal{
    font-size:var(--site-body);
    & h1{font-size:20px!important;line-height:28px!important}
    & h2{font-size:var(--site-section)!important;line-height:25px!important}
    & h3{font-size:var(--site-body)!important;line-height:22px!important}
    & :is(small,.hint,.muted){font-size:var(--site-note)!important;line-height:20px!important}
  }
  body:has(#joinForm) :is(#joinForm,.form-note),body:has(#choices):has(#amount) main{font-size:var(--site-body);line-height:22px}
  body:has(#joinForm) #joinForm :is(input,textarea,label),body:has(#choices):has(#amount) :is(button,select){font-size:var(--site-body)!important;line-height:22px!important}
  body:has(#joinForm) #joinForm small{font-size:var(--site-note)!important;line-height:20px!important}
  @media(max-width:700px){:root{--site-title:20px}}
}
