/* ===== 券商预测 页面样式（对齐平台设计语言） ===== */
.hero-sm { background:transparent;border:0;border-radius:0;box-shadow:none; padding: 14px 0 10px; margin-bottom: 12px; }
.hero-sm h1 { font-size: 20px; margin-bottom: 4px; }
.hero-sm p { font-size: 12px; line-height: 1.7; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* 主 tab */
.fc-tabs { margin-bottom: 14px; }
.fc-tabs .fchip { font-size: 13px; padding: 5px 16px; border-radius: 16px; }
.fc-tabs .fchip.sep { margin-left: 14px; }

/* 工具条 */
.fc-bar { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 10px; }
.fc-input { border: 1px solid #e3e4e6; border-radius: 6px; padding: 6px 10px; font-size: 13px; width: 170px; }
.fc-input:focus { outline: none; border-color: #27548c; }
.fc-sel { border: 1px solid #e3e4e6; border-radius: 6px; padding: 6px 8px; font-size: 13px; max-width: 170px; }
.fc-sel:focus { outline: none; border-color: #27548c; }

/* 图表 */
.fc-chart { height: 300px; margin: 6px 0 12px; }

/* 表格 */
.fc-tbl { max-height: 560px; overflow: auto; border: 1px solid #e3e4e6; border-radius: 8px; }
.fc-tbl table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.fc-tbl th { position: sticky; top: 0; background: #fafafa; color: #5a6478; font-weight: 600; text-align: left;
             padding: 8px 10px; border-bottom: 1px solid #e3e4e6; white-space: nowrap; z-index: 1; cursor: pointer; }
.fc-tbl th.num { text-align: right; }
.fc-tbl th.sk-on { color: #27548c; }
.fc-tbl td { padding: 7px 10px; border-bottom: 1px solid #f2f4f8; vertical-align: middle; white-space: nowrap; }
.fc-tbl td.num { text-align: right; font-variant-numeric: tabular-nums; }
.fc-tbl tr:hover td { background: #f9fbff; }
.fc-tbl .fc-code { color: #8a93a5; font-variant-numeric: tabular-nums; }
.fc-tbl .fc-name { font-weight: 600; color: #0a0a0a; text-decoration: none; }
.fc-tbl .fc-name:hover { color: #27548c; }
.fc-tbl .fc-ind { color: #8a93a5; font-size: 11.5px; }
.fc-tbl a.rep { color: #27548c; font-size: 12px; text-decoration: none; }
.fc-tbl a.rep:hover { text-decoration: underline; }
.fc-tbl .fc-arrow { color: #b0b8c7; margin: 0 3px; }

/* 徽章 */
.fcbadge { display: inline-block; border-radius: 5px; padding: 1px 7px; font-size: 11.5px; font-weight: 600; white-space: nowrap; }
.fcbadge.up   { background: #ffe9e9; color: #e03131; }
.fcbadge.down { background: #e6f7f1; color: #0ca678; }
.fcbadge.keep { background: #f1f4fa; color: #8a93a5; }
.fcbadge.first{ background: #fff4e0; color: #d97706; }
.fcbadge.cat  { background: #eef2ff; color: #4c6ef5; }

/* 涨跌颜色（A股红涨绿跌） */
.pos { color: #e03131; font-weight: 600; }
.neg { color: #0ca678; font-weight: 600; }

/* 更多按钮 */
.fc-more { text-align: center; padding: 10px 0 2px; }
.fc-more .btn { padding: 4px 18px; font-size: 12.5px; }

/* 空态 */
.fc-empty { text-align: center; color: #b0b8c7; padding: 40px 0; font-size: 13px; }

/* 口径说明（对齐 index-val .iv-cal 范式，置于页面底部） */
.fc-note { font-size: 11.5px; color: #5b6478; line-height: 1.85; background: #f6f9fd;
           border-left: 3px solid #27548c; border-radius: 8px; padding: 9px 13px; margin: 4px 0 20px; }
.fc-note b { color: #0a0a0a; }

/* ---- 视图切换条（复刻 quant-rail：顶栏下 sticky + 白卡高亮 + 副标题） ---- */
.qr-bar{position:sticky;top:58px;z-index:60;background:rgba(255,255,255,.86);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid rgba(0,0,0,.05);}
.qr-bar-in{display:flex;align-items:center;gap:14px;max-width:1760px;margin:0 auto;padding:8px 18px;}
.qr-cap{flex:none;display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:#0a0a0a;letter-spacing:.5px;}
.qr-cap .dot{width:8px;height:8px;border-radius:50%;flex:none;box-shadow:0 0 0 3px rgba(0,0,0,.045);}
.qr-sw{display:inline-flex;gap:4px;padding:4px;background:#f2f3f5;border-radius:12px;overflow-x:auto;scrollbar-width:none;}
.qr-sw::-webkit-scrollbar{display:none;}
.qr-bar .qr-it{flex:none;display:flex;align-items:baseline;gap:9px;padding:7px 18px;border-radius:9px;cursor:pointer;transition:.15s;user-select:none;white-space:nowrap;}
.qr-bar .qr-it b{font-size:13.5px;font-weight:700;color:#48484a;}
.qr-bar .qr-it em{font-style:normal;font-size:11px;color:#9a9aa0;}
.qr-bar .qr-it.on{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.10);}
.qr-bar .qr-it.on b{color:var(--gl-blue,#27548c);}
.qr-bar .qr-it:hover:not(.on) b{color:#0a0a0a;}

/* ---- 筛选 chip（统一站点约定：默认描边胶囊 / 选中蓝底白字） ---- */
.chipbar{display:flex;gap:9px;flex-wrap:wrap;align-items:center;}
.fchip{font-size:13px;font-weight:600;border:1px solid #dde2ea;background:#f2f5f9;color:#3a4254;border-radius:18px;
       padding:7px 18px;cursor:pointer;transition:.15s;white-space:nowrap;font-family:inherit;box-shadow:0 1px 2px rgba(10,20,50,.05);}
.fchip:hover{border-color:#27548c;color:#27548c;background:#eef4fc;}
.fchip.on{background:#27548c;border-color:#27548c;color:#fff;box-shadow:0 2px 8px rgba(39,84,140,.28);}

/* 口径说明行（表格上方轻量小字） */
.fc-cal{font-size:11.5px;color:#8a93a6;line-height:1.75;margin:2px 0 8px;}

/* ---- 表格代码/名称可点击 ---- */
.fc-name.lnk{cursor:pointer;}
.fc-name.lnk:hover{color:#27548c;}

/* ---- 个股弹窗 ---- */
.fc-modal{position:fixed;inset:0;z-index:200;}
.fc-modal[hidden]{display:none;}
.fc-modal-mask{position:absolute;inset:0;background:rgba(10,15,30,.45);}
.fc-modal-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(880px,94vw);
              max-height:88vh;overflow:auto;background:#fff;border-radius:14px;
              box-shadow:0 24px 60px rgba(10,20,50,.25);padding:16px 18px;}
.fc-modal-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.fc-modal-hd .t{display:flex;align-items:center;gap:9px;font-size:16px;color:#0a0a0a;}
.fc-modal-hd .fc-code{color:#8a93a5;font-size:13px;font-variant-numeric:tabular-nums;}
.fc-x{border:1px solid #e3e4e6;background:#fbfcfe;color:#5a6478;width:28px;height:28px;border-radius:8px;
      font-size:16px;cursor:pointer;line-height:1;}
.fc-x:hover{color:#27548c;border-color:#9dc0ff;}
.fc-modal-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 12px;margin-bottom:4px;}
.fc-modal-kv div{font-size:11.5px;color:#8a93a5;background:#f8fafc;border-radius:8px;padding:7px 10px;min-width:0;}
.fc-modal-kv b{display:block;color:#0a0a0a;font-size:13px;margin-top:2px;font-variant-numeric:tabular-nums;}
.fc-modal-sub{font-size:12.5px;font-weight:700;color:#0a0a0a;margin:12px 0 6px;}
.fc-modal-note{font-size:11px;color:#8a93a6;line-height:1.75;margin:7px 2px 0;}
.fc-modal-chart{height:280px;border:1px solid #eef0f4;border-radius:10px;}
.fc-modal-tbl{max-height:230px;overflow:auto;border:1px solid #eef0f4;border-radius:10px;}
.fc-modal-tbl table{width:100%;border-collapse:collapse;font-size:12px;}
.fc-modal-tbl th{position:sticky;top:0;background:#fafafa;color:#5a6478;font-weight:600;text-align:left;
                 padding:7px 9px;border-bottom:1px solid #eef0f4;white-space:nowrap;}
.fc-modal-tbl th.num{text-align:right;}
.fc-modal-tbl td{padding:6px 9px;border-bottom:1px solid #f4f6fa;white-space:nowrap;}
.fc-modal-tbl td.num{text-align:right;font-variant-numeric:tabular-nums;}
.fc-modal-ft{font-size:11px;color:#8a93a5;line-height:1.8;margin-top:10px;}
