/* 蚂蚁前程统一界面层：覆盖五个核心页面的视觉、状态和移动端可读性 */
:root{
  --ant-page:#edf2f7;
  --ant-page-2:#f7f9fc;
  --ant-card:#ffffff;
  --ant-card-soft:#f5f8fc;
  --ant-line:#dce5ee;
  --ant-line-soft:#e8eef5;
  --ant-text:#1f2d3d;
  --ant-text-2:#526373;
  --ant-text-3:#8795a3;
  --ant-blue:#3867f4;
  --ant-blue-2:#5d83ff;
  --ant-green:#16a36a;
  --ant-red:#dc3d3d;
  --ant-amber:#d88a10;
  --ant-shadow:0 8px 24px rgba(31,45,61,.08);
  --ant-shadow-soft:0 3px 12px rgba(31,45,61,.06);
}

html{background:var(--ant-page)}
body{
  color:var(--ant-text)!important;
  background:
    linear-gradient(180deg,#f8fbff 0%,var(--ant-page) 52%,#e9eff6 100%)!important;
  letter-spacing:0!important;
}
body::before,.bg-grid,.bg-glow{display:none!important}

.nav{
  background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid var(--ant-line)!important;
  box-shadow:0 2px 16px rgba(31,45,61,.08)!important;
  backdrop-filter:blur(16px);
}
.brand,.nav .brand,.logo span{color:var(--ant-text)!important}
.brand small,.nav-center a,.nav-right .time,.logout-btn{color:var(--ant-text-2)!important}
.nav-center a:hover,.nav-center a.active{
  color:var(--ant-blue)!important;
  background:#edf3ff!important;
}
.logout-btn{
  background:var(--ant-card)!important;
  border:1px solid var(--ant-line)!important;
}
.logout-btn:hover{color:var(--ant-blue)!important;background:#f3f7ff!important}
.market-pill,.rank-pill{
  background:#f1f7ff!important;
  color:var(--ant-blue)!important;
  border-color:#cfe0ff!important;
}

.wrap{max-width:1420px!important}
.section-title,.tc-title,.cc-title,.panel-header h3,.content-card .cc-title{
  color:var(--ant-text)!important;
  letter-spacing:0!important;
}
.section-title{
  border-bottom:1px solid var(--ant-line)!important;
  margin-top:18px!important;
}
.section-title .badge,.status-badge,.mch-badge,.count{
  border-radius:999px!important;
  background:#edf3ff!important;
  color:var(--ant-blue)!important;
  border:1px solid #d6e4ff!important;
}

.panel,.index-card,.decision-card,.freshness-item,.live-item,.record-bar,.hold-section,
.task-card,.content-card,.sentiment-panel,.sector-panel,.macro-panel,
.overview-card,.fund-panel,.dragon-panel,.limitup-panel,.news-panel,.news-card,.macro-card,.sentiment-card,
.overview-section,.fund-section,.dragon-section,.limitup-section,.news-section,
.footer,.profile-hero,.sidebar,.stats-card,.model-card,.ds-card,.settings-card,
.module-card,.mc-card,.ei-card,.eng-item,.data-card,.login-container{
  background:var(--ant-card)!important;
  color:var(--ant-text)!important;
  border:1px solid var(--ant-line)!important;
  box-shadow:var(--ant-shadow-soft)!important;
}
.panel:hover,.index-card:hover,.hold-card:hover,.content-card:hover,.task-card:hover,
.sector-panel:hover,.sentiment-panel:hover,.ds-card:hover,.eng-item:hover{
  border-color:#c8d8ef!important;
  box-shadow:var(--ant-shadow)!important;
}

.login-container{
  width:min(420px,calc(100vw - 32px))!important;
  border-radius:18px!important;
}
.logo h1,.rank-tier,.stat-value{color:var(--ant-text)!important;-webkit-text-fill-color:initial!important;background:none!important}
.logo p,.rank-sub,.stat-label,.stat-sub,.footer-text,.service-strip .service-sub{
  color:var(--ant-text-3)!important;
}
.rank-badge,.stat-card,.service-strip{
  background:var(--ant-card-soft)!important;
  border:1px solid var(--ant-line-soft)!important;
  color:var(--ant-text-2)!important;
}
.form-group label{color:var(--ant-text-2)!important}
.form-group input{
  color:var(--ant-text)!important;
  background:#fff!important;
  border:1px solid var(--ant-line)!important;
}
.form-group input::placeholder{color:#a7b2bd!important}
.login-btn,.btn,.toolbar button,.local-action-btn,button[onclick]{
  border-radius:9px!important;
}
.login-btn{
  background:linear-gradient(135deg,var(--ant-blue),var(--ant-blue-2))!important;
}
.login-note{
  margin:0 0 16px;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid var(--ant-line-soft);
  background:var(--ant-card-soft);
  color:var(--ant-text-2);
  font-size:12px;
  line-height:1.5;
}

.freshness-strip,.live-strip,.sys-info-bar,.stats-row,.overview-grid{
  align-items:stretch;
}
.freshness-value,.live-value,.decision-value,.idx-value,.ov-value,.rv{
  color:var(--ant-text)!important;
}
.freshness-value.live,.live-value.ok{color:var(--ant-green)!important}
.up,.rv.up,.hf-value.up{color:var(--ant-red)!important}
.down,.hf-value.down{color:var(--ant-green)!important}
.freshness-value.warn,.live-value.warn{color:var(--ant-amber)!important}
.freshness-value.off,.live-value.off{color:var(--ant-text-3)!important}

.record-bar{
  background:linear-gradient(135deg,#22324a,#304968)!important;
  color:#fff!important;
}
.record-bar .rv,.record-bar .rl,.record-title,.record-note{color:#fff!important}

.stock-table-head,.sector-table-head,.fund-table-head,.dragon-table-head,.limitup-table-head,
.mc-header,.content-card .cc-header,.sidebar-title{
  background:var(--ant-card-soft)!important;
  color:var(--ant-text-2)!important;
  border-color:var(--ant-line-soft)!important;
}
.stock-row,.sector-row,.fund-row,.dragon-row,.limitup-row,.log-entry{
  color:var(--ant-text)!important;
  border-color:var(--ant-line-soft)!important;
}
.stock-row:hover,.sector-row:hover,.fund-row:hover,.dragon-row:hover,.limitup-row:hover{
  background:#f7fbff!important;
}

.footer .fi span,.footer .fe .eng,.footer span,.ei-desc,.ei-meta,
.decision-sub,.freshness-label,.live-label,.ov-label,.idx-name,.stock-code,
.hf-label,.mc-desc,.mch-desc,.sidebar-item,.cc-desc{
  color:var(--ant-text-3)!important;
}
.footer strong,.ei-name,.stock-name,.hold-name,.cc-value,.profile-name{
  color:var(--ant-text)!important;
}

.sidebar-item.active,.sidebar-item:hover{
  background:#edf3ff!important;
  color:var(--ant-blue)!important;
}
.sidebar-item.active::before{background:var(--ant-blue)!important}

table,th,td{border-color:var(--ant-line-soft)!important}
input,select,textarea{
  background:#fff!important;
  color:var(--ant-text)!important;
  border-color:var(--ant-line)!important;
}

.ant-page-note{
  margin:0 0 16px;
  padding:14px 16px;
  border:1px solid #d6e4ff;
  background:linear-gradient(135deg,#f5f9ff,#ffffff);
  border-radius:12px;
  box-shadow:var(--ant-shadow-soft);
  display:grid;
  grid-template-columns:1.2fr repeat(3,minmax(130px,.55fr));
  gap:12px;
}
.ant-note-main{font-size:14px;color:var(--ant-text);font-weight:700}
.ant-note-sub{font-size:12px;color:var(--ant-text-3);margin-top:3px;line-height:1.5}
.ant-note-kpi{padding:8px 10px;background:var(--ant-card-soft);border:1px solid var(--ant-line-soft);border-radius:9px}
.ant-note-kpi span{display:block;font-size:11px;color:var(--ant-text-3)}
.ant-note-kpi strong{display:block;font-size:13px;color:var(--ant-text);margin-top:2px}

.data-time-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:-4px 0 18px;
}
.data-time-card{
  background:var(--ant-card);
  border:1px solid var(--ant-line);
  border-radius:10px;
  padding:10px 12px;
  box-shadow:var(--ant-shadow-soft);
  min-width:0;
}
.data-time-card span{
  display:block;
  font-size:11px;
  color:var(--ant-text-3);
  margin-bottom:3px;
}
.data-time-card strong{
  display:block;
  font-size:13px;
  color:var(--ant-text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.data-time-card em{
  display:block;
  font-style:normal;
  font-size:11px;
  color:var(--ant-text-3);
  margin-top:2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

@media(max-width:900px){
  .ant-page-note{grid-template-columns:1fr 1fr}
  .ant-note-main{grid-column:1/-1}
  .data-time-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .nav{background:#fff!important}
  .wrap{padding:16px!important;max-width:100vw!important}
  .strategy-bar{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
  }
  .strategy-btn{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.25!important;
    padding:10px 8px!important;
  }
  .ant-page-note{grid-template-columns:1fr;gap:8px}
  .footer{border-radius:12px!important}
  .panel,.task-card,.content-card,.index-card,.decision-card{border-radius:12px!important}
  .data-time-grid{grid-template-columns:1fr}
}

/* 移动端关键视图：四页导航保持可达，默认只展示当前操作所需信息。 */
.ant-mobile-nav,
.ant-mobile-view-switch{display:none}

@media(max-width:768px){
  body.ant-mobile-page{
    padding-bottom:calc(64px + env(safe-area-inset-bottom))!important;
  }
  body.ant-mobile-page .nav{
    min-height:52px!important;
    height:52px!important;
    padding:0 12px!important;
  }
  body.ant-mobile-page .nav-left{min-width:0!important}
  body.ant-mobile-page .nav-right{margin-left:auto!important;max-width:none!important}
  body.ant-mobile-page .nav-right .time,
  body.ant-mobile-page .nav-right .market-pill,
  body.ant-mobile-page .nav-right .rank-pill{display:none!important}
  body.ant-mobile-page .logout-btn{
    min-width:46px!important;
    height:32px!important;
    padding:4px 9px!important;
    font-size:12px!important;
  }
  body.ant-mobile-page.ant-mobile-core .ant-mobile-secondary{display:none!important}

  .ant-mobile-nav{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:320;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    min-height:58px;
    padding:0 6px env(safe-area-inset-bottom);
    background:rgba(255,255,255,.97);
    border-top:1px solid var(--ant-line);
    box-shadow:0 -5px 18px rgba(31,45,61,.10);
    backdrop-filter:blur(16px);
  }
  .ant-mobile-nav a{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:54px;
    color:var(--ant-text-3);
    text-decoration:none;
    font-size:12px;
    font-weight:700;
    line-height:1;
    white-space:nowrap;
  }
  .ant-mobile-nav a::before{
    content:"";
    position:absolute;
    top:0;
    left:24%;
    right:24%;
    height:3px;
    background:transparent;
  }
  .ant-mobile-nav a.active,
  .ant-mobile-nav a[aria-current="page"]{color:var(--ant-blue)}
  .ant-mobile-nav a.active::before,
  .ant-mobile-nav a[aria-current="page"]::before{background:var(--ant-blue)}

  .ant-mobile-view-switch{
    display:flex;
    width:max-content;
    margin:0 0 10px auto;
    padding:3px;
    gap:2px;
    background:#e8eef6;
    border:1px solid var(--ant-line);
    border-radius:8px;
  }
  .ant-mobile-view-switch button{
    min-width:48px;
    height:30px;
    padding:0 10px;
    border:0;
    border-radius:6px;
    background:transparent;
    color:var(--ant-text-2);
    font-size:12px;
    font-weight:700;
    cursor:pointer;
  }
  .ant-mobile-view-switch button.active{
    background:#fff;
    color:var(--ant-blue);
    box-shadow:0 1px 4px rgba(31,45,61,.12);
  }

  /* 首页：保留操作结论、最终可买、卖出提醒和持仓。 */
  body.ant-page-home.ant-mobile-core .main-grid{grid-template-columns:1fr!important}
  body.ant-page-home.ant-mobile-core .priority-board{margin-bottom:10px!important}
  body.ant-page-home.ant-mobile-core .decision-hub{margin-bottom:10px!important}
  body.ant-page-home.ant-mobile-core .hold-section{margin-top:10px!important}

  /* 行情：关键视图只保留指数、市场宽度、板块、资金和情绪。 */
  body.ant-page-market .section-title{margin-top:12px!important;padding:10px 2px!important;font-size:15px!important}
  body.ant-page-market .index-section,
  body.ant-page-market .overview-grid{gap:7px!important}
  body.ant-page-market.ant-mobile-core .sector-table .sector-row:nth-of-type(n+7),
  body.ant-page-market.ant-mobile-core .fund-table .fund-row:nth-of-type(n+7){display:none!important}

  /* 中枢：关键视图把健康分和系统消息放在首屏。 */
  body.ant-page-hub.ant-mobile-core .hub-topology-grid,
  body.ant-page-hub.ant-mobile-core .hub-topology-sub{display:none!important}
  body.ant-page-hub .hub-topology-card{padding:14px!important;margin-bottom:10px!important}
  body.ant-page-hub .hub-topology-head{margin-bottom:0!important}
  body.ant-page-hub .message-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  body.ant-page-hub .message-kpi{padding:9px!important}
  body.ant-page-hub .message-kpi strong{font-size:17px!important}
  body.ant-page-hub .message-filter-bar{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  body.ant-page-hub .message-filter-bar::-webkit-scrollbar{display:none}
  body.ant-page-hub .message-filter-bar button{flex:0 0 auto}
  body.ant-page-hub .message-list{max-height:58vh!important}
  body.ant-page-hub .message-item{padding:12px!important}
  body.ant-page-hub .message-prompt{display:block!important}
  body.ant-page-hub .message-prompt button{margin-top:8px!important}

  /* 数据中心：配置入口改为一行横向标签，不在手机上铺满整页。 */
  body.ant-page-data .page-layout{display:block!important}
  body.ant-page-data .sidebar{
    position:sticky;
    top:56px;
    z-index:70;
    margin-bottom:10px;
    padding:4px!important;
    border-radius:10px!important;
  }
  body.ant-page-data .sidebar-title,
  body.ant-page-data .sidebar-divider,
  body.ant-page-data .sidebar-item.logout{display:none!important}
  body.ant-page-data .sidebar-menu{
    display:flex!important;
    grid-template-columns:none!important;
    gap:2px!important;
    overflow-x:auto;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  body.ant-page-data .sidebar-menu::-webkit-scrollbar{display:none}
  body.ant-page-data .sidebar-item{
    flex:0 0 auto;
    width:auto!important;
    min-height:38px;
    padding:8px 11px!important;
    border-radius:7px!important;
    white-space:nowrap;
  }
  body.ant-page-data .sidebar-item .si-icon,
  body.ant-page-data .sidebar-item .si-badge{display:none!important}
  body.ant-page-data .content-panel.active{gap:10px!important}
  body.ant-page-data .content-card{padding:14px!important}
  body.ant-page-data .content-card .cc-header{margin-bottom:12px!important;padding-bottom:10px!important}
  body.ant-page-data.ant-mobile-core .info-strip,
  body.ant-page-data.ant-mobile-core .cc-header .cc-sub{display:none!important}
}
