/* Shared spacing and navigation within the existing Jiguang visual system. */
:root { --ia-tab-height: 62px; --ia-bottom-space: calc(var(--ia-tab-height) + env(safe-area-inset-bottom, 0px)); }
html { scroll-padding-top: 84px; scroll-padding-bottom: calc(var(--ia-bottom-space) + 20px); }
.page-root { min-width: 0; }
.page-root input, .page-root textarea, .page-root select, .page-root button { scroll-margin-block: 96px; }
.page-root input, .page-root textarea { scroll-margin-bottom: calc(var(--ia-bottom-space) + 24px); }
.navbar .brand-logo-wide { min-width: 0; }
.navbar .brand-logo-wide img { max-width: 100%; object-fit: contain; }
.navbar .brand-logo-symbol { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; flex: 0 0 48px; width: 48px; height: 48px; padding: 0; border: 1px solid #dce7f6; border-radius: 10px; background: #fff; }
.navbar .brand-logo-symbol .brand-logo-mark { display: block !important; width: 36px !important; height: 36px !important; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent !important; box-shadow: none !important; object-fit: contain; transform: none !important; }
.nav-desktop-grid .nav-link { white-space: nowrap; }
.trade-tabs, .ha-quick-actions, .ha-capability-grid, .ia-footer-links { position: static !important; inset: auto !important; z-index: auto !important; }
.mobile-tabbar .mobile-tabbar-inner { position: static !important; inset: auto !important; width: 100% !important; max-width: 640px; height: var(--ia-tab-height) !important; min-height: 0 !important; margin: 0 auto; display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: stretch !important; padding: 0 8px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; backdrop-filter: none !important; }
.mobile-tabbar .mobile-tab { display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 5px; min-width: 0; min-height: var(--ia-tab-height); height: var(--ia-tab-height) !important; margin: 0 !important; padding: 7px 2px !important; border-radius: 0; font-size: 11px !important; line-height: 14px; position: relative; color: #64748b !important; }
.mobile-tabbar .mobile-tab i { font-size: 19px !important; line-height: 20px; height: 20px; transform: none !important; }
.mobile-tabbar .mobile-tab span { display: block !important; font-size: inherit !important; font-weight: 600; white-space: nowrap; }
.mobile-tabbar .mobile-tab i, .mobile-tabbar .mobile-tab span, .mobile-tabbar .mobile-tab.active i, .mobile-tabbar .mobile-tab.active span { color: inherit !important; filter: none !important; text-shadow: none !important; }
.mobile-tabbar .mobile-tab.active { color: #2154e8 !important; background: rgba(33,84,232,.055) !important; }
.mobile-tabbar .mobile-tab.active::before { content: ''; position: absolute; top: 0; width: 24px; height: 3px; border-radius: 0 0 3px 3px; background: #2154e8; }
.mobile-tabbar a:focus-visible, .navbar a:focus-visible { outline: 2px solid #2154e8; outline-offset: -3px; }
html[data-page] body footer.jp-footer.ia-footer, footer.jp-footer.ia-footer { display: block !important; margin-top: 24px !important; padding: 16px 0 !important; background: var(--bg-surface, #fff) !important; border-top: 1px solid var(--bg-border, #e2e8f0) !important; color: var(--bg-text-secondary, #64748b) !important; }
.ia-footer .ia-footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; }
.ia-footer .ia-footer-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; color: var(--bg-text-secondary, #64748b) !important; }
.ia-footer .ia-copyright { text-align: center; font-size: 11px; line-height: 1.5; margin-top: 3px; }
@media (max-width: 1023px) {
  body .page-root { padding-bottom: calc(var(--ia-bottom-space) + 12px) !important; }
  .mobile-tabbar { display: flex !important; position: fixed !important; inset: auto 0 0 !important; width: 100% !important; height: var(--ia-bottom-space) !important; min-height: var(--ia-bottom-space) !important; padding: 0 0 env(safe-area-inset-bottom, 0px) !important; border: 0 !important; border-radius: 0 !important; z-index: 60 !important; }
  .navbar > div { height: 60px; gap: 12px; }
  .navbar .brand-logo-wide img { height: 28px !important; }
  .page-root input:not([type=checkbox]):not([type=radio]):not([type=range]), .page-root select, .page-root textarea { font-size: 16px; }
  html[data-keyboard-open] .mobile-tabbar { display: none !important; }
  html[data-keyboard-open] { scroll-padding-bottom: 24px; }
}
@media (min-width: 1024px) { .mobile-tabbar { display: none !important; } }
@media (prefers-reduced-motion: reduce) { .mobile-tabbar * { transition: none !important; } }

/* Functional entries share one title line; values, notices and article content keep their own layout. */
.page-root :is(.ha-quick-actions strong,.ha-capability-grid strong,.ws-service h2,.ws-directory a>span,.ws-strategy>span,.radar-entry-title,.news-discovery-links strong,.launch-mode strong){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.page-root :is(.ha-quick-actions>a,.ha-capability-grid>a,.ws-directory a,.ws-service){min-width:0}
html .page-root .ha-capability-grid>a{min-height:62px}
html .page-root .ha-quick-actions>a{min-height:64px}
.page-root .ws-service{flex-direction:row;align-items:center;gap:10px;min-height:68px;padding:14px}
.page-root .ws-service .ws-icon{width:32px;height:34px;flex-shrink:0}
.page-root .ws-service h2{flex:1;font-size:15px;line-height:1.5}
.page-root .ws-service .ws-arrow{position:static;flex-shrink:0;font-size:10px}
.page-root .ws-prompt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.page-root .ws-strategy{display:flex;align-items:center;min-height:54px;font-weight:650;margin:0}
.page-root .radar-entry-body{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:0}
.page-root .radar-entry-title{flex:1}
.page-root .radar-entry{min-height:62px;max-height:none;align-items:center}
.page-root .radar-entry-status{margin-top:0;align-self:center;white-space:nowrap;flex-shrink:0}
.page-root .launch-mode{flex-direction:row;justify-content:center;align-items:center;gap:6px;min-height:54px;padding:12px 6px}
.page-root .launch-mode strong{font-size:13px}
.page-root .news-discovery-links a{display:flex;align-items:center;min-height:54px}
.page-root .news-discovery-links strong{margin:0;font-size:13px}
.wallet-choice-line{display:flex;align-items:center;gap:8px;min-width:0;flex:1}
.wallet-choice-title{white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.wallet-choice-network,.wallet-choice-status{white-space:nowrap;font-size:11px;color:#64748b;flex-shrink:0}
.wallet-choice-status{margin-left:auto}
@media(max-width:600px){.page-root .ws-service{padding:12px;gap:8px}.page-root .ws-service h2{font-size:13px}.page-root .ws-service .ws-arrow{display:none}.page-root .ws-strategy{font-size:12px}.page-root .ha-quick-actions strong{font-size:13px}.page-root .radar-monitor-grid{grid-template-columns:minmax(0,1fr)}}
/* The page wrapper reserves the tab bar once; legacy body padding doubled it. */
html[data-page] body{padding-bottom:0!important}
/* All destinations open directly into their content; only Home retains the brand masthead. */
html:has([data-page-masthead="omitted"]){scroll-padding-top:16px}
.page-root:has([data-page-masthead="omitted"]){padding-top:0!important;padding-bottom:calc(var(--ia-bottom-space) + 12px)!important}
.page-root:has([data-page-masthead="omitted"]) .market-page{--market-navbar-height:0px}
.page-root:has([data-page-masthead="omitted"]) :is(input,textarea,select,button){scroll-margin-top:16px}
.page-root:has([data-page-masthead="omitted"]) .mobile-tabbar{display:flex!important;position:fixed!important;inset:auto 0 0!important;width:100%!important;height:var(--ia-bottom-space)!important;min-height:var(--ia-bottom-space)!important;padding:0 0 env(safe-area-inset-bottom,0px)!important;border:0!important;border-radius:0!important;z-index:60!important}
html[data-keyboard-open] .page-root:has([data-page-masthead="omitted"]) .mobile-tabbar{display:none!important}
/* V2.1: five equal bottom tabs (首页 行情 检测 探索 我的) fit 360–430px. */
@media (max-width: 767px) {
  html body .mobile-tabbar .mobile-tabbar-inner { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 0 !important; padding-left: max(4px, env(safe-area-inset-left)) !important; padding-right: max(4px, env(safe-area-inset-right)) !important; }
  html body .mobile-tabbar .mobile-tab { min-width: 0 !important; width: auto !important; padding-left: 0 !important; padding-right: 0 !important; }
  html body .mobile-tabbar .mobile-tab span { font-size: 11px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; max-width: 100% !important; }
}
.ha-radar-preview-list { list-style: none; margin: 4px 0; padding: 0; display: grid; gap: 2px; }
.ha-radar-preview-list a { display: flex; gap: 8px; align-items: center; padding: 6px 0; min-height: 36px; color: inherit; font-size: 13px; border-bottom: 1px solid #eef2f7; }
.ha-radar-preview-list span { color: #6b7280; font-size: 11px; }
.ha-radar-preview-list b { margin-left: auto; }
.ha-radar-preview-list em { font-style: normal; font-size: 11px; }
/* Owner 2026-10-21: bottom nav fully opaque in every theme, thin top border, no blur. */
.mobile-tabbar,.mobile-tabbar .mobile-tabbar-inner{background:#FFFFFF!important;background-image:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;opacity:1!important}
.mobile-tabbar{border-top:1px solid #E2E8F0!important}
html[data-theme="dark"] .mobile-tabbar,html[data-theme="dark"] .mobile-tabbar .mobile-tabbar-inner{background:#121A28!important;border-top-color:#2C3A4F!important}
