        :root {
            --em-blue: #1763b6;
            --em-blue-dark: #0f4f9a;
            --em-blue-soft: #eaf3ff;
            --em-red: #d82929;
            --em-green: #129467;
            --em-orange: #ff8a00;
            --text-main: #1f2937;
            --text-muted: #6b7280;
            --line: #dbe3ef;
            --line-soft: #edf1f7;
            --page-bg: #f3f6fb;
            --panel-bg: #ffffff;
            --header-bg: #f8fbff;
        }

        * { box-sizing: border-box; }
        body {
            margin: 0;
            background: var(--page-bg);
            color: var(--text-main);
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", Arial, sans-serif;
            font-size: 14px;
        }
        a { text-decoration: none; color: var(--em-blue); }
        a:hover { color: var(--em-blue-dark); }

        .navbar {
            background: linear-gradient(90deg, #0d4d93 0%, #1763b6 48%, #1f78d1 100%) !important;
            border-bottom: 1px solid #0b4485;
            box-shadow: 0 2px 10px rgba(22, 77, 146, 0.22);
        }
        .navbar-brand { letter-spacing: .02em; }
        .nav-link { color: rgba(255,255,255,.86) !important; }
        .nav-link.active, .nav-link:hover { font-weight: 800; color: #fff !important; }
        .navbar-text { color: rgba(255,255,255,.72) !important; }
        .navbar .form-control {
            background: rgba(255,255,255,.96);
            color: var(--text-main);
            border-color: rgba(255,255,255,.3);
        }
        .navbar .btn-outline-info {
            color: #fff;
            border-color: rgba(255,255,255,.7);
        }
        .navbar .btn-outline-info:hover {
            background: #fff;
            color: var(--em-blue);
        }

        .page-wrap { max-width: 1680px; margin: 0 auto; padding: 18px 18px 42px; }
        .quickbar { position: sticky; top: 0; z-index: 5; backdrop-filter: blur(8px); }

        .card {
            background: var(--panel-bg);
            color: var(--text-main);
            border: 1px solid var(--line);
            border-radius: 6px;
            box-shadow: 0 2px 8px rgba(18, 53, 96, .06);
        }
        .card-header {
            background: linear-gradient(#ffffff, var(--header-bg));
            color: #1f3f66;
            border-bottom: 1px solid var(--line);
            border-radius: 6px 6px 0 0 !important;
            font-weight: 800;
            padding: 10px 14px;
        }
        .card-body { color: var(--text-main); }

        .section-title { font-weight: 900; margin-bottom: 5px; color: #173b63; letter-spacing: .01em; }
        .muted-help { color: var(--text-muted); font-size: .92rem; }
        .small-note { font-size: .82rem; color: var(--text-muted); }
        .panel-title { color: #1f3f66; font-size: .92rem; font-weight: 800; letter-spacing: .02em; }

        .form-label { color: #344968; font-weight: 700; font-size: .86rem; margin-bottom: .32rem; }
        .form-control, .form-select {
            background: #fff;
            color: var(--text-main);
            border: 1px solid #cbd5e1;
            border-radius: 4px;
        }
        .form-control:focus, .form-select:focus {
            background: #fff;
            color: var(--text-main);
            border-color: var(--em-blue);
            box-shadow: 0 0 0 .16rem rgba(23, 99, 182, .14);
        }
        .form-control::placeholder { color: #9ca3af; }
        textarea.form-control, .form-textarea { min-height: 110px; }

        .btn { border-radius: 4px; font-weight: 700; }
        .btn-primary { background: var(--em-blue); border-color: var(--em-blue); }
        .btn-primary:hover { background: var(--em-blue-dark); border-color: var(--em-blue-dark); }
        .btn-success { background: var(--em-red); border-color: var(--em-red); }
        .btn-success:hover { background: #bd1f1f; border-color: #bd1f1f; }
        .btn-outline-light { color: var(--em-blue); border-color: var(--em-blue); background: #fff; }
        .btn-outline-light:hover { color: #fff; background: var(--em-blue); border-color: var(--em-blue); }
        .btn-outline-info { color: var(--em-blue); border-color: var(--em-blue); }
        .btn-outline-info:hover { color: #fff; background: var(--em-blue); border-color: var(--em-blue); }
        .btn-outline-secondary { color: #52657f; border-color: #b8c4d6; }
        .btn-outline-secondary:hover { color: #fff; background: #64748b; border-color: #64748b; }
        .btn-outline-success { color: var(--em-red); border-color: #ef9999; }
        .btn-outline-success:hover { color: #fff; background: var(--em-red); border-color: var(--em-red); }

        .alert { border-radius: 4px; box-shadow: 0 2px 8px rgba(18,53,96,.08); }

        .stat-card { min-height: 92px; border-top: 3px solid var(--em-blue); }
        .stat-card .card-body { padding: 14px 16px; }
        .stat-value { font-size: 1.42rem; font-weight: 900; color: #173b63; line-height: 1.2; }
        .stat-label { color: var(--text-muted); font-size: .88rem; margin-top: 5px; }

        .table { --bs-table-bg: #fff; --bs-table-color: var(--text-main); --bs-table-striped-bg: #fafcff; --bs-table-hover-bg: #fff6f3; color: var(--text-main); }
        .table > :not(caption) > * > * { border-bottom-color: var(--line-soft); }
        .table-responsive { max-height: 650px; overflow: auto; }
        .data-table { font-size: .86rem; white-space: nowrap; }
        .data-table thead th {
            position: sticky;
            top: 0;
            z-index: 2;
            background: #f2f6fb;
            color: #314766;
            font-weight: 800;
            border-bottom: 1px solid #cbd8e8;
        }
        .empty-box { padding: 32px; background: #fbfdff; border: 1px dashed #b7c6d9; border-radius: 6px; color: var(--text-muted); text-align: center; }

        .badge-soft { background: #eaf3ff; color: var(--em-blue); border: 1px solid #bfdbfe; }
        .badge-green { background: #effaf5; color: var(--em-green); border: 1px solid #bdebd6; }
        .badge-red { background: #fff0f0; color: var(--em-red); border: 1px solid #ffc2c2; }
        .stock-name { color: #12263f; font-weight: 900; }
        .stock-code { color: var(--em-blue); font-size: .9rem; font-weight: 800; }
        .metric-up { color: var(--em-red); font-weight: 900; }
        .metric-down { color: var(--em-green); font-weight: 900; }
        .metric-flat { color: #4b5563; font-weight: 800; }

        /* 东方财富/主流行情站风格：白底、蓝色导航、红涨绿跌、密集表格。 */
        .market-toolbar {
            background: #fff;
            color: var(--text-main);
            border: 1px solid var(--line);
            border-top: 3px solid var(--em-blue);
            border-radius: 6px;
            padding: 14px;
            box-shadow: 0 2px 8px rgba(18, 53, 96, .06);
            margin-bottom: 14px;
        }
        .market-toolbar .section-title { color: #173b63; }
        .market-toolbar .muted-help { color: var(--text-muted); }
        .market-chip { display: inline-flex; align-items: center; gap: 4px; padding: 2px 8px; border-radius: 999px; background: #f8fafc; border: 1px solid var(--line); color: #475569; font-size: .78rem; }

        .market-shell { background: #fff; color: var(--text-main); border: 1px solid #cfdbea; box-shadow: 0 2px 9px rgba(18, 53, 96, .06); }
        .market-shell .card-header { background: linear-gradient(#ffffff, #f2f6fb); color: #173b63; border-bottom: 1px solid #cfdbea; }
        .market-shell .small-note { color: var(--text-muted); }
        .market-table-wrap { max-height: 720px; overflow: auto; background: #fff; }
        .market-table {
            --bs-table-bg: #fff;
            --bs-table-color: var(--text-main);
            --bs-table-striped-bg: #fbfdff;
            --bs-table-hover-bg: #fff4ee;
            color: var(--text-main);
            font-size: .88rem;
            white-space: nowrap;
        }
        .market-table thead th {
            position: sticky;
            top: 0;
            z-index: 2;
            background: #eef4fb;
            color: #294664;
            border-bottom: 1px solid #c4d3e4;
            border-right: 1px solid #e3eaf3;
            font-weight: 900;
            padding: 8px 10px;
        }
        .market-table tbody td { border-bottom: 1px solid #edf1f7; border-right: 1px solid #f2f5f9; padding: 7px 10px; vertical-align: middle; }
        .market-table tbody tr { cursor: pointer; }
        .market-table tbody tr:hover td { background: #fff4ee; }
        .market-table .stock-name { color: #12263f; font-weight: 900; }
        .market-table .stock-code { color: var(--em-blue); font-size: .9rem; font-weight: 900; }
        .market-table .metric-up { color: var(--em-red); font-weight: 900; }
        .market-table .metric-down { color: var(--em-green); font-weight: 900; }
        .market-table .metric-flat { color: #4b5563; font-weight: 800; }
        .market-table .badge-soft { background: #eaf3ff; color: var(--em-blue); border: 1px solid #bfdbfe; }
        .market-table .badge-green { background: #effaf5; color: var(--em-green); border: 1px solid #bdebd6; }
        .market-table .btn { --bs-btn-padding-y: .18rem; --bs-btn-padding-x: .45rem; --bs-btn-font-size: .78rem; }
        .row-link-cell a { display: inline-block; min-width: 100%; }

        .detail-hero {
            background: #fff;
            border: 1px solid var(--line);
            border-left: 4px solid var(--em-blue);
            border-radius: 6px;
            padding: 14px 16px;
            box-shadow: 0 2px 8px rgba(18,53,96,.06);
        }
        .detail-hero .section-title { margin-bottom: 2px; }
        .info-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
        .info-cell { background: #f8fbff; border: 1px solid #e4ebf5; border-radius: 4px; padding: 8px 10px; }
        .info-cell .fw-bold { color: #173b63; }


        .market-index-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(185px, 1fr)); gap: 10px; }
        .b3-market-card { width: 100%; }
        .b3-card-body { padding: 10px; }
        .b3-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, 320px); gap: 10px; align-items: stretch; width: 100%; }
        .b3-chart-col, .b3-quote-col { min-width: 0; }
        .b3-chart-box { height: calc(100vh - 255px); min-height: 520px; border: 1px solid #e4ebf5; border-radius: 6px; overflow: hidden; background: #fff; width: 100%; }
        .b3-chart-box .js-plotly-plot, .b3-chart-box .plotly-graph-div, .b3-chart-box .plot-container, .b3-chart-box .svg-container { width: 100% !important; max-width: none !important; }
        .b3-quote-panel { border: 1px solid #dbe3ef; background: #fbfdff; border-radius: 6px; padding: 10px; overflow: auto; }
        .b3-quote-grid { grid-template-columns: repeat(2, minmax(96px, 1fr)); }
        @media (max-width: 1200px) {
            .b3-layout { grid-template-columns: 1fr; }
            .b3-chart-box { height: 560px; }
            .b3-quote-grid { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); }
        }
        .northbound-link-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 8px; }
        .northbound-link-card { display: block; border: 1px solid #dbe3ef; background: #fff; border-radius: 6px; padding: 10px 12px; text-decoration: none; color: #173b63; min-height: 74px; }
        .northbound-link-card:hover { border-color: var(--em-blue); box-shadow: 0 3px 10px rgba(23, 99, 182, .12); background: #f8fbff; }
        .northbound-link-card strong { display: block; font-weight: 900; margin-bottom: 3px; }
        .northbound-link-card span { display: block; color: var(--text-muted); font-size: .82rem; }

        .index-card { display: block; background: #fff; border: 1px solid #dbe3ef; border-radius: 6px; padding: 10px 12px; color: var(--text-main); }
        .index-card:hover { border-color: #93b4dc; box-shadow: 0 3px 10px rgba(23, 99, 182, .12); }
        .index-card.active { border-color: var(--em-blue); box-shadow: inset 0 0 0 1px var(--em-blue); background: #f8fbff; }
        .index-name { font-weight: 900; color: #173b63; }
        .index-region { font-size: .76rem; color: #64748b; border: 1px solid #dbe3ef; background: #f8fafc; border-radius: 99px; padding: 1px 6px; }
        .index-price { font-size: 1.1rem; font-weight: 900; margin-top: 6px; }
        .mini-form-card { border-top: 3px solid var(--em-blue); }
        .category-filter { display: flex; flex-wrap: wrap; gap: 6px; }
        .category-pill { border: 1px solid #cbd8e8; background: #fff; color: #314766; border-radius: 999px; padding: 4px 10px; font-size: .82rem; font-weight: 800; cursor: pointer; }
        .category-pill.active, .category-pill:hover { background: var(--em-blue); color: #fff; border-color: var(--em-blue); }
        .external-link { color: #1763b6; font-weight: 800; }
        .external-link:hover { color: #0f4f9a; text-decoration: underline; }

        .watch-full-card { width: 100%; }
        .watch-full-card .card-header { background: linear-gradient(#ffffff, #eef6ff); }
        .watch-full-table-wrap { max-height: 640px; width: 100%; }
        .watch-full-table { width: 100%; min-width: 1280px; font-size: .86rem; }
        .watch-full-table th, .watch-full-table td { padding: 7px 10px; }
        .watch-full-table td:nth-child(1) { min-width: 96px; }
        .watch-full-table td:nth-child(2) { min-width: 150px; }
        .watch-note-cell { max-width: 360px; min-width: 280px; }
        .watch-action-cell { min-width: 210px; }
        .tag-chip-row { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }
        .tag-chip {
            display: inline-flex; align-items: center; gap: 3px;
            border: 1px solid #bfdbfe; background: #eaf3ff; color: var(--em-blue);
            border-radius: 999px; padding: 2px 8px; font-size: .76rem; font-weight: 800;
            line-height: 1.35; cursor: pointer;
        }
        .tag-chip:hover { background: #dbeafe; border-color: #93c5fd; }
        .tag-add-form { display: flex; gap: 4px; align-items: center; max-width: 190px; }
        .tag-add-form .form-control { height: 26px; padding-top: 2px; padding-bottom: 2px; font-size: .78rem; }
        .tag-add-form .btn { height: 26px; line-height: 1; }
        .profit-positive { color: var(--em-red); font-weight: 900; }
        .profit-negative { color: var(--em-green); font-weight: 900; }

        .dashboard-tabs { border-bottom: 1px solid #bfd1e7; }
        .dashboard-tabs .nav-link { color: #294664 !important; font-weight: 900; border: 1px solid #cfdbea; background: #f8fbff; margin-right: 4px; }
        .dashboard-tabs .nav-link.active { color: #fff !important; background: var(--em-blue); border-color: var(--em-blue); }
        .export-field-box { max-height: 260px; overflow: auto; border: 1px solid #dbe3ef; border-radius: 4px; padding: 8px 10px; background: #fbfdff; }
        .compact-check { margin-bottom: 6px; font-size: .88rem; }
        .compact-check .form-check-input { margin-top: .2rem; }


        /* v1.1 首页重构：删除顶部介绍/统计模块后，自选行情直接置顶。 */
        .dashboard-tabs-top { margin-top: 0; }
        .dashboard-main-content { margin-top: 0; }
        .compact-control-card { border-top: 2px solid var(--em-blue); }
        .compact-control-card .card-header { padding: 7px 10px; font-size: .9rem; }
        .compact-body { padding: 8px 10px; }
        .module-label { font-size: .8rem; font-weight: 900; color: #294664; margin-bottom: 4px; }
        .compact-divider { height: 1px; background: #e8eef6; margin: 6px 0 8px; }
        .compact-filter { gap: 4px; }
        .compact-filter .category-pill { padding: 2px 8px; font-size: .76rem; }
        .compact-label { font-size: .78rem; margin-bottom: .18rem; }
        .compact-input { max-width: 330px; }
        .compact-btn { white-space: nowrap; }
        .compact-frequency { max-width: 92px; }
        .click-tag-select { display: flex; flex-wrap: wrap; gap: 4px; max-height: 56px; overflow: auto; padding: 2px 0; }
        .tag-choice { display: inline-flex; align-items: center; border: 1px solid #cbd8e8; background: #fff; color: #314766; border-radius: 999px; padding: 2px 8px; font-size: .74rem; font-weight: 800; cursor: pointer; user-select: none; }
        .btn-check:checked + .tag-choice { background: var(--em-blue); color: #fff; border-color: var(--em-blue); }
        .watch-compact-card .card-header { padding: 7px 10px; }
        .watch-compact-table-wrap { max-height: calc(100vh - 290px); min-height: 360px; }
        .watch-compact-table { min-width: 1320px; font-size: .8rem; }
        .watch-compact-table th, .watch-compact-table td { padding: 4px 7px !important; }
        .watch-compact-table .small-note { font-size: .72rem; }
        .watch-compact-table .stock-code { font-size: .82rem; }
        .watch-compact-table .stock-name { font-size: .84rem; }
        .stock-main-cell { min-width: 138px !important; }
        .compact-badge { font-size: .72rem; padding: 2px 6px; }
        .compact-note-cell { max-width: 430px; min-width: 330px; }
        .compact-tag-row, .compact-tag-picker { display: flex; flex-wrap: wrap; gap: 3px; align-items: center; }
        .compact-tag-chip { padding: 1px 7px; font-size: .7rem; }
        .tag-add-chip { border: 1px solid #d6e3f4; background: #fbfdff; color: #52657f; border-radius: 999px; padding: 1px 7px; font-size: .7rem; font-weight: 800; line-height: 1.35; }
        .tag-add-chip:hover { background: #eaf3ff; color: var(--em-blue); border-color: #93c5fd; }
        .reason-line { max-width: 390px; }
        .compact-actions { min-width: 260px; }
        .compact-actions .btn { padding: .12rem .36rem; font-size: .72rem; }
        .compact-add-form .form-control-sm, .compact-add-form .form-select-sm { min-height: 30px; }


        /* v1.2 紧凑行情表与图表全宽。 */
        .watch-compact-table-wrap { max-height: calc(100vh - 245px); min-height: 430px; }
        .watch-compact-table { min-width: 1220px; font-size: .78rem; }
        .watch-compact-table th, .watch-compact-table td { padding: 3px 6px !important; line-height: 1.28; }
        .watch-compact-table .stock-code { font-size: .8rem; }
        .watch-compact-table .stock-name { font-size: .8rem; }
        .watch-note-cell { max-width: 300px; min-width: 220px; }
        .reason-line { max-width: 280px; }
        .js-plotly-plot, .plotly-graph-div { width: 100% !important; }
        .plot-container, .svg-container { width: 100% !important; }



        /* v4：自选长表与股票详情页工作区优化 */
        .watch-compact-table-wrap { max-height: calc(100vh - 220px); min-height: 420px; }
        .watch-compact-table { min-width: 1480px; table-layout: auto; }
        .watch-compact-table th.resizable-col { resize: horizontal; overflow: auto; min-width: 64px; }
                .watch-compact-table .col-stock { width: 118px; }
        .watch-compact-table .col-dividend { width: 170px; }
        .watch-compact-table .col-reason { width: 260px; }
        .watch-compact-table .col-actions { width: 235px; }
        .stock-main-cell { min-width: 112px !important; max-width: 132px; }
        .stock-main-cell .stock-code, .stock-main-cell .stock-name { display: inline-block; max-width: 118px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        .stock-code.metric-up, .stock-name.metric-up { color: var(--em-red) !important; }
        .stock-code.metric-down, .stock-name.metric-down { color: var(--em-green) !important; }
        .stock-code.metric-flat, .stock-name.metric-flat { color: #334155 !important; }
        .dividend-cell { min-width: 150px; max-width: 210px; white-space: normal; line-height: 1.25; }
        .reason-inline-input { width: 100%; min-width: 220px; border: 1px solid transparent; background: transparent; color: #334155; font-size: .78rem; padding: 3px 5px; border-radius: 4px; }
        .reason-inline-input:hover, .reason-inline-input:focus { border-color: #93b4dc; background: #fff; outline: none; box-shadow: 0 0 0 2px rgba(23, 99, 182, .08); }
        .reason-inline-input.saving { background: #fff7ed; }
        .reason-inline-input.saved { background: #ecfdf5; border-color: #86efac; }
        .reason-inline-input.save-error { background: #fff1f2; border-color: #fca5a5; }

        .detail-page-shell { margin-top: 0; }
        .detail-compact-hero { padding: 10px 14px; margin-bottom: 8px !important; }
        .detail-resizable-grid { display: grid; grid-template-columns: minmax(620px, 1fr) minmax(360px, 430px); gap: 10px; align-items: start; }
        .detail-left-pane, .detail-right-pane { min-width: 0; }
        .resizable-panel { resize: horizontal; overflow: auto; }
        .detail-module-card { border-top: 2px solid var(--em-blue); }
        .detail-module-card .card-header { padding: 7px 10px; font-weight: 900; }
        .detail-module-card .card-body { padding: 8px 10px; }
        .summary-strip-grid { display: grid; grid-template-columns: repeat(6, minmax(96px, 1fr)); gap: 6px; }
        .summary-cell { border: 1px solid #e4ebf5; background: #fbfdff; border-radius: 5px; padding: 6px 8px; min-height: 56px; }
        .summary-value { font-size: .98rem; font-weight: 900; color: #173b63; line-height: 1.25; }
        .detail-meta-row { display: flex; flex-wrap: wrap; gap: 8px 16px; border-top: 1px solid #e7edf5; padding-top: 8px; }
        .submodule-title { font-size: .84rem; color: #173b63; font-weight: 900; margin: 2px 0 6px; padding-left: 6px; border-left: 3px solid var(--em-blue); }
        .detail-table-wrap { max-height: 360px; overflow: auto; border: 1px solid #e5edf7; border-radius: 4px; }
        .tag-picker-row { display: flex; flex-wrap: wrap; gap: 4px; }
        .tag-add-chip { border: 1px solid #cbd8e8; background: #fff; color: #314766; border-radius: 999px; padding: 2px 8px; font-size: .76rem; font-weight: 800; }
        .tag-add-chip:hover { background: var(--em-blue); color: #fff; border-color: var(--em-blue); }
        @media (max-width: 1200px) {
          .detail-resizable-grid { grid-template-columns: 1fr; }
          .resizable-panel { resize: vertical; }
          .summary-strip-grid { grid-template-columns: repeat(3, minmax(96px, 1fr)); }
        }
        @media (max-width: 768px) {
          .summary-strip-grid { grid-template-columns: repeat(2, minmax(96px, 1fr)); }
        }



        /* v6：详情页拖拽工作台 + A2总盈亏 */
        .a2-profit-box { display: inline-flex; align-items: baseline; gap: 8px; border: 1px solid #cfdbea; background: #f8fbff; border-radius: 999px; padding: 3px 10px; }
        .a2-profit-box strong { font-size: .96rem; }
        .detail-workbench-page .detail-compact-hero { margin-bottom: 8px !important; }
        .detail-drag-workspace { position: relative; min-height: 1290px; width: 100%; overflow: auto; border: 1px dashed #c8d7ea; border-radius: 6px; background: linear-gradient(90deg, rgba(23,99,182,.035) 1px, transparent 1px), linear-gradient(rgba(23,99,182,.035) 1px, transparent 1px); background-size: 24px 24px; padding-bottom: 20px; }
        .detail-panel { position: absolute; min-width: 300px; min-height: 180px; box-sizing: border-box; padding: 0; z-index: 1; }
        .detail-panel:hover { z-index: 5; }
        .detail-panel .card { width: 100%; height: 100%; overflow: hidden; }
        .detail-panel .drag-handle { cursor: move; user-select: none; }
        .detail-panel .no-drag, .detail-panel input, .detail-panel select, .detail-panel textarea, .detail-panel button, .detail-panel a { cursor: auto; }
        .detail-panel-body { height: calc(100% - 38px); overflow: auto; }
        .detail-chart-box { height: calc(100% - 112px); min-height: 300px; }
        .detail-chart-box .js-plotly-plot, .detail-chart-box .plotly-graph-div { width: 100% !important; height: 100% !important; }
        .detail-chart-box .empty-box { height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; }
        .resize-handle { position: absolute; z-index: 8; background: transparent; }
        .resize-handle.n { top: -4px; left: 10px; right: 10px; height: 8px; cursor: ns-resize; }
        .resize-handle.s { bottom: -4px; left: 10px; right: 10px; height: 8px; cursor: ns-resize; }
        .resize-handle.e { top: 10px; right: -4px; bottom: 10px; width: 8px; cursor: ew-resize; }
        .resize-handle.w { top: 10px; left: -4px; bottom: 10px; width: 8px; cursor: ew-resize; }
        .resize-handle.ne { top: -5px; right: -5px; width: 12px; height: 12px; cursor: nesw-resize; }
        .resize-handle.nw { top: -5px; left: -5px; width: 12px; height: 12px; cursor: nwse-resize; }
        .resize-handle.se { bottom: -5px; right: -5px; width: 12px; height: 12px; cursor: nwse-resize; }
        .resize-handle.sw { bottom: -5px; left: -5px; width: 12px; height: 12px; cursor: nesw-resize; }
        .detail-panel:hover .resize-handle.se { background: radial-gradient(circle, #1763b6 0 35%, transparent 38%); }
        .selected-day-quote { display: grid; grid-template-columns: repeat(4, minmax(90px, 1fr)); gap: 6px; margin-bottom: 8px; }
        .quote-cell { border: 1px solid #e4ebf5; background: #fbfdff; border-radius: 5px; padding: 6px 8px; min-height: 50px; }
        .quote-cell span { display: block; color: #718096; font-size: .74rem; margin-bottom: 2px; }
        .quote-cell strong { color: #173b63; font-size: .94rem; }
        .kline-tool-row { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; padding: 3px 6px; background: #fbfdff; border: 1px solid #e4ebf5; border-radius: 4px; }
        .compact-check { font-size: .78rem; }
        .selected-trade-box { border: 1px solid #dbe3ef; background: #fbfdff; border-radius: 5px; padding: 7px 8px; margin: 4px 0 8px; }
        .selected-trade-title { font-weight: 900; color: #173b63; margin-bottom: 4px; }
        .selected-trade-grid { display: grid; grid-template-columns: repeat(4, minmax(72px, 1fr)); gap: 4px 8px; font-size: .78rem; }
        .selected-trade-grid span { display: block; color: #718096; font-size: .72rem; }
        .selected-trade-grid b { color: #173b63; }
        .modal-trade-grid { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); font-size: .9rem; }
        .record-edit-head { display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; align-items: center; padding: 8px 10px; border: 1px solid #e4ebf5; border-radius: 6px; background: #f8fbff; }
        .record-edit-head strong { color: #173b63; }
        .trade-edit-form textarea { resize: vertical; }
        .modal-action-row { display: flex; justify-content: flex-end; gap: 8px; }
        .white-space-preline { white-space: pre-line; }
        .clickable-trade-table tbody tr { cursor: pointer; }
        .clickable-trade-table tbody tr:hover { outline: 1px solid rgba(23, 99, 182, .28); background: #eef6ff !important; }
        .detail-panel.panel-sm:not([data-panel="c1"]) .card-header { padding: 5px 8px; font-size: .82rem; }
        .detail-panel.panel-sm:not([data-panel="c1"]) .detail-panel-body { padding: 6px 7px; font-size: .82rem; }
        .detail-panel.panel-sm:not([data-panel="c1"]) .summary-strip-grid { grid-template-columns: repeat(auto-fit, minmax(82px, 1fr)); gap: 4px; }
        .detail-panel.panel-sm:not([data-panel="c1"]) .summary-cell,
        .detail-panel.panel-sm:not([data-panel="c1"]) .quote-cell { min-height: 42px; padding: 4px 6px; }
        .detail-panel.panel-sm:not([data-panel="c1"]) .summary-value,
        .detail-panel.panel-sm:not([data-panel="c1"]) .quote-cell strong { font-size: .82rem; }
        .detail-panel.panel-xs:not([data-panel="c1"]) .card-header { padding: 4px 6px; font-size: .76rem; }
        .detail-panel.panel-xs:not([data-panel="c1"]) .detail-panel-body { padding: 4px 5px; font-size: .76rem; }
        .detail-panel.panel-xs:not([data-panel="c1"]) .form-label,
        .detail-panel.panel-xs:not([data-panel="c1"]) .small-note { font-size: .68rem; }
        .detail-panel.panel-xs:not([data-panel="c1"]) .selected-day-quote { grid-template-columns: repeat(auto-fit, minmax(74px, 1fr)); gap: 4px; }
        .detail-panel.panel-xs:not([data-panel="c1"]) .btn-sm,
        .detail-panel.panel-xs:not([data-panel="c1"]) .form-control-sm,
        .detail-panel.panel-xs:not([data-panel="c1"]) .form-select-sm { font-size: .72rem; padding-top: .12rem; padding-bottom: .12rem; }


        /* v10：A2分类移入操作 + 详情页联动不重叠工作台 */
        .a2-category-menu { min-width: 320px; max-width: 420px; box-shadow: 0 10px 26px rgba(15,23,42,.14); border-color: #cbd8e8; }
        .a2-category-menu-grid { display: flex; flex-wrap: wrap; gap: 4px; max-height: 118px; overflow: auto; }
        .btn-xs { padding: .08rem .34rem; font-size: .68rem; border-radius: 999px; line-height: 1.25; white-space: nowrap; }
        .watch-compact-table tbody tr { height: 34px; }
        .watch-compact-table td { vertical-align: middle; }
        .watch-action-cell.one-line-actions { display: flex; flex-wrap: nowrap !important; align-items: center; justify-content: center; gap: 4px; white-space: nowrap; min-width: 260px; max-width: none; overflow: visible; padding-bottom: 1px; }
        .watch-action-cell.one-line-actions form { display: inline-flex; flex: 0 0 auto; margin: 0; }
        .a2-category-dropdown { position: relative; }
        .a2-tag-toggle-strip { display: inline-flex; flex-wrap: nowrap; gap: 3px; align-items: center; flex: 0 0 auto; max-width: 260px; overflow-x: auto; overflow-y: hidden; }
        .a2-tag-toggle { border: 1px solid #cbd8e8; background: #f8fbff; color: #52657d; border-radius: 999px; padding: 1px 6px; font-size: .66rem; line-height: 1.35; font-weight: 800; white-space: nowrap; }
        .a2-tag-toggle.is-on { background: #1763b6; border-color: #1763b6; color: #fff; }
        .a2-tag-toggle.is-off { opacity: .58; }
        .a2-tag-toggle:hover { opacity: 1; transform: translateY(-1px); }
        .watch-action-cell.one-line-actions .btn-sm { padding: .12rem .42rem; font-size: .72rem; line-height: 1.25; flex: 0 0 auto; }
        .detail-drag-workspace.flow-locked { overflow: auto; border-style: solid; background-size: 20px 20px; }
        .detail-drag-workspace.flow-locked .detail-panel { transition: box-shadow .12s ease; }
        .detail-drag-workspace.flow-locked .detail-panel.is-moving { box-shadow: 0 10px 28px rgba(23,99,182,.24); }
        .detail-drag-workspace.flow-locked .drag-handle { cursor: grab; }
        .detail-drag-workspace.flow-locked .drag-handle:active { cursor: grabbing; }
        .detail-drag-workspace.flow-locked .resize-handle { background: rgba(23,99,182,.02); }
        .detail-drag-workspace.flow-locked .resize-handle:hover { background: rgba(23,99,182,.12); }
        .detail-panel[data-panel="c4"] .detail-panel-body, .detail-panel[data-panel="c5"] .detail-panel-body { overflow: auto; }
        .detail-panel[data-panel="c4"] table { font-size: .82rem; }


        /* v15：分钟线最多250根、C4中文记录清单和加载提示 */
        .kline-loading-toast {
            position: fixed; right: 24px; bottom: 24px; z-index: 2000;
            background: rgba(23, 99, 182, .94); color: #fff;
            padding: 10px 14px; border-radius: 10px; box-shadow: 0 12px 28px rgba(15,23,42,.22);
            font-size: .88rem; font-weight: 700;
        }
        .clickable-trade-table table { min-width: 980px; }
        .clickable-trade-table th { background: #f2f7ff !important; color: #173b63; font-weight: 800; white-space: nowrap; }
        .clickable-trade-table td { white-space: nowrap; max-width: 240px; overflow: hidden; text-overflow: ellipsis; }
        .clickable-trade-table td:nth-child(10), .clickable-trade-table td:nth-child(11) { max-width: 320px; }
        .clickable-record-row:hover { background: #fff7ed !important; cursor: pointer; }



        /* V45：模块B筛选与模块C市场总览自适应工作区。 */
        #market-pane, #screener-pane { width: 100%; min-width: 0; }
        #market-pane .market-shell, #screener-pane .market-shell { min-width: 0; }
        #market-pane > .row.g-4 {
            --bs-gutter-x: 0; --bs-gutter-y: 0;
            display: grid !important;
            grid-template-columns: minmax(300px, .78fr) minmax(520px, 1.72fr);
            gap: 10px;
            margin-left: 0 !important;
            margin-right: 0 !important;
            margin-bottom: 10px !important;
            align-items: stretch;
        }
        #market-pane > .row.g-4 > [class*="col-"] { width: auto !important; max-width: none !important; padding-left: 0 !important; padding-right: 0 !important; min-width: 0; }
        #market-pane .card-header { padding: 7px 10px; }
        #market-pane .card-body { padding: 8px 10px; }
        #market-pane .b3-market-card { margin-bottom: 10px !important; resize: vertical; overflow: auto; }
        #market-pane .b3-card-body { padding: 8px; }
        #market-pane .b3-layout { grid-template-columns: minmax(0, 1fr) minmax(340px, 420px); gap: 8px; }
        #market-pane .b3-chart-box { height: clamp(430px, calc(100vh - 230px), 760px); min-height: 430px; }
        #market-pane .b3-quote-panel { padding: 8px; }
        #market-pane .b3-quote-grid { gap: 5px; }
        #market-pane .quote-cell { min-height: 45px; padding: 5px 7px; }
        #market-pane .northbound-link-grid { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px; }
        #market-pane .northbound-link-card { min-height: 64px; padding: 9px 11px; }
        #market-pane .js-plotly-plot, #market-pane .plotly-graph-div { width: 100% !important; max-width: none !important; }
        #market-pane .card.market-shell { overflow: auto; }
        @media (max-width: 1200px) {
            #market-pane > .row.g-4 { grid-template-columns: 1fr !important; }
            #market-pane .b3-layout { grid-template-columns: 1fr; }
            #market-pane .b3-chart-box { height: 520px; }
        }
        @media (max-width: 768px) {
            #market-pane .b3-chart-box { height: 430px; min-height: 360px; }
            #market-pane .northbound-link-grid { grid-template-columns: 1fr; }
        }

        @media (max-width: 1100px) {
          .detail-drag-workspace { min-height: 1700px; }
          .detail-panel { left: 0 !important; width: 100% !important; }
          .detail-panel[data-panel="c1"] { top: 0 !important; height: 430px !important; }
          .detail-panel[data-panel="c2"] { top: 440px !important; height: 320px !important; }
          .detail-panel[data-panel="c3"] { top: 770px !important; height: 540px !important; }
          .detail-panel[data-panel="c4"] { top: 1320px !important; height: 300px !important; }
          .detail-panel[data-panel="c5"] { top: 1630px !important; height: 160px !important; }
          .selected-day-quote { grid-template-columns: repeat(2, minmax(90px, 1fr)); }
        }

        @media (max-width: 768px) {
            .page-wrap { padding: 12px 10px 32px; }
            .market-toolbar { position: static; }
            .stat-value { font-size: 1.2rem; }
            .info-grid { grid-template-columns: 1fr; }
        }


        /* V32：模块B3缩短默认高度、支持上下拖拽自适应，右侧行情配色更清晰。 */
        #market-pane .b3-market-card {
            display: flex;
            flex-direction: column;
            height: clamp(390px, 58vh, 620px);
            min-height: 340px;
            max-height: calc(100vh - 86px);
            resize: vertical;
            overflow: auto;
            margin-bottom: 8px !important;
        }
        #market-pane .b3-market-card .card-header { flex: 0 0 auto; padding: 6px 10px; }
        #market-pane .b3-card-body {
            flex: 1 1 auto;
            min-height: 0;
            overflow: hidden;
            padding: 6px;
        }
        #market-pane .b3-layout {
            height: 100%;
            min-height: 0;
            grid-template-columns: minmax(0, 1fr) minmax(380px, 430px);
            gap: 6px;
        }
        #market-pane .b3-chart-col, #market-pane .b3-quote-col { min-height: 0; }
        #market-pane .b3-chart-box {
            height: 100% !important;
            min-height: 0 !important;
            border-radius: 5px;
        }
        #market-pane .b3-quote-panel {
            height: 100%;
            padding: 7px;
            border-color: #cfdbea;
            background: linear-gradient(180deg, #fbfdff 0%, #f7fbff 100%);
        }
        #market-pane .b3-quote-grid {
            grid-template-columns: repeat(2, minmax(118px, 1fr));
            gap: 5px;
            margin-bottom: 4px;
        }
        #market-pane .quote-cell {
            min-height: 43px;
            padding: 5px 7px;
            border-radius: 5px;
            background: #fff;
            border-color: #e0e8f3;
        }
        #market-pane .quote-cell span { font-size: .70rem; color: #69788f; }
        #market-pane .quote-cell strong { font-size: .86rem; color: #173b63; }
        #market-pane .quote-cell.tone-up { background: #fff5f5; border-color: #ffc9c9; }
        #market-pane .quote-cell.tone-up span { color: #8a3a3a; }
        #market-pane .quote-cell.tone-down { background: #f0fff7; border-color: #bdebd6; }
        #market-pane .quote-cell.tone-down span { color: #31684b; }
        #market-pane .quote-cell.tone-info { background: #f2f8ff; border-color: #bfdbfe; }
        #market-pane .quote-cell.tone-info span { color: #315f91; }
        #market-pane .quote-cell.tone-warn { background: #fff8e7; border-color: #f7d991; }
        #market-pane .quote-cell.tone-warn span { color: #8a641d; }
        #market-pane .quote-cell.tone-neutral { background: #f8fafc; border-color: #dde6f0; }
        #market-pane .b3-quote-note { font-size: .72rem; line-height: 1.25; color: #6b7a90; }
        #market-pane .b3-quote-section-title {
            grid-column: 1 / -1;
            font-size: .72rem;
            font-weight: 900;
            color: #1f4f82;
            background: #edf5ff;
            border: 1px solid #d6e8ff;
            border-radius: 5px;
            padding: 3px 7px;
            margin-top: 2px;
        }
        @media (max-width: 1200px) {
            #market-pane .b3-market-card { height: auto; max-height: none; }
            #market-pane .b3-layout { grid-template-columns: 1fr; }
            #market-pane .b3-chart-box { height: clamp(320px, 45vh, 460px) !important; }
            #market-pane .b3-quote-panel { max-height: 320px; }
            #market-pane .b3-quote-grid { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
        }
        @media (max-width: 768px) {
            #market-pane .b3-chart-box { height: 330px !important; }
            #market-pane .b3-quote-grid { grid-template-columns: repeat(2, minmax(110px, 1fr)); }
        }


        /* V32.1：B3右侧行情面板略加宽，并突出总成交额。 */
        #market-pane .b3-quote-col { min-width: 380px; }
        #market-pane .quote-cell.quote-emphasis {
            grid-column: 1 / -1;
            min-height: 52px;
            background: linear-gradient(135deg, #eef6ff 0%, #fff7ed 100%);
            border-color: #9dccff;
        }
        #market-pane .quote-cell.quote-emphasis span { font-size: .76rem; color: #1f4f82; font-weight: 900; }
        #market-pane .quote-cell.quote-emphasis strong { font-size: 1.12rem; color: #b42318; }
        @media (max-width: 1200px) { #market-pane .b3-quote-col { min-width: 0; } }

        /* 模块B：全市场股票筛选，自适应紧凑布局。 */
        #screener-pane .screener-card { overflow: auto; resize: vertical; }
        #screener-pane .screener-status-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
            gap: 8px;
        }
        #screener-pane .public-data-overview .card-header {
            background: linear-gradient(135deg, #f4f9ff 0%, #fffaf2 100%);
        }
        #screener-pane .public-data-grid { grid-template-columns: repeat(5, minmax(150px, 1fr)); }
        #screener-pane .public-data-fields { display:flex; flex-wrap:wrap; gap:7px; }
        #screener-pane .public-data-fields span {
            display:inline-flex; align-items:center; min-height:28px; padding:4px 9px;
            border:1px solid #cfe0f2; border-radius:999px; background:#f7fbff;
            color:#31516f; font-size:.78rem; font-weight:700;
        }
        @media (max-width: 1100px) {
            #screener-pane .public-data-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
        }
        @media (max-width: 560px) {
            #screener-pane .public-data-grid { grid-template-columns: 1fr; }
        }
        #screener-pane .screener-filter-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 8px;
            align-items: end;
        }
        #screener-pane .screener-inline-form { margin: 0; }
        #screener-pane .screener-table-wrap { max-height: clamp(360px, 58vh, 760px); overflow: auto; }
        #screener-pane .screener-table { min-width: 1460px; }
        #screener-pane .screener-table th { white-space: nowrap; }
        #screener-pane .screener-table td { white-space: nowrap; }
        #screener-pane .screener-reason-cell { min-width: 92px; max-width: 130px; }
        #screener-pane .screener-reason-details summary { cursor: pointer; color: var(--em-blue); font-weight: 700; list-style-position: inside; }
        #screener-pane .screener-reason-details[open] { position: relative; z-index: 5; }
        #screener-pane .screener-reason-details div {
            margin-top: 6px; padding: 8px 10px; min-width: 320px; max-width: min(680px, 70vw);
            white-space: normal; line-height: 1.6; background: #fff; border: 1px solid #cfe0f2;
            border-radius: 10px; box-shadow: 0 12px 28px rgba(15, 46, 86, .16); color: #1f2f46;
        }
        #screener-pane .compact-label { margin-bottom: 2px; }
        #screener-pane .e-sync-panel {
            background: #f8fbff;
            border: 1px solid #dbe7f5;
            border-left: 4px solid var(--em-blue);
            border-radius: 6px;
            padding: 9px;
            margin: 0;
        }
        #screener-pane .e2-section {
            background: #fbfdff;
            border: 1px solid #dbe7f5;
            border-radius: 7px;
            padding: 8px 9px;
            margin-bottom: 8px;
        }
        #screener-pane .e2-section-title {
            font-weight: 900;
            color: #173b63;
            margin-bottom: 6px;
            font-size: .9rem;
        }
        #screener-pane .e2-check-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
            gap: 6px 10px;
        }
        #screener-pane .e2-check-grid label {
            display: flex;
            gap: 6px;
            align-items: center;
            background: #fff;
            border: 1px solid #e5edf7;
            border-radius: 999px;
            padding: 4px 9px;
            color: #344968;
            font-size: .84rem;
            font-weight: 700;
        }
        #screener-pane .e-sync-live-box {
            margin-top: 10px;
            background: linear-gradient(135deg, #eef7ff 0%, #fffdf7 100%);
            border: 1px solid #a9d5ff;
            border-left: 4px solid var(--em-red);
            border-radius: 8px;
            padding: 10px 12px;
            box-shadow: 0 6px 18px rgba(31, 79, 130, .10);
        }
        #screener-pane .e-sync-live-main { display: flex; align-items: center; gap: 10px; }
        #screener-pane .e-sync-live-title { font-size: .98rem; font-weight: 900; color: #173b63; }
        #screener-pane .e-sync-spinner {
            width: 22px;
            height: 22px;
            border-radius: 999px;
            border: 3px solid #cfe5ff;
            border-top-color: var(--em-red);
            display: inline-block;
            animation: eSyncSpin .8s linear infinite;
            flex: 0 0 auto;
        }
        @keyframes eSyncSpin { to { transform: rotate(360deg); } }
        #screener-pane .e-sync-live-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
            gap: 7px;
            margin-top: 9px;
        }
        #screener-pane .e-sync-live-grid div {
            background: rgba(255,255,255,.88);
            border: 1px solid #dbe7f5;
            border-radius: 7px;
            padding: 6px 8px;
        }
        #screener-pane .e-sync-live-grid span { display: block; color: #6b7891; font-size: .72rem; }
        #screener-pane .e-sync-live-grid strong { color: #173b63; font-size: .86rem; }
        #screener-pane .e-sync-live-foot {
            margin-top: 7px;
            color: #856404;
            background: #fff8df;
            border-radius: 6px;
            padding: 5px 7px;
            font-size: .78rem;
            font-weight: 700;
        }

        #screener-pane .e-sync-progress-wrap {
            height: 10px;
            border-radius: 999px;
            background: #dbe7f5;
            overflow: hidden;
            border: 1px solid #c7d9ec;
        }
        #screener-pane .e-sync-progress-bar {
            height: 100%;
            border-radius: 999px;
            background: linear-gradient(90deg, var(--em-red), #ffb86b);
            transition: width .35s ease;
        }
        #screener-pane .e-sync-log {
            margin-top: 8px;
            max-height: 96px;
            overflow: auto;
            background: #10243a;
            color: #eaf3ff;
            border-radius: 7px;
            padding: 7px 9px;
            font-size: .78rem;
            line-height: 1.55;
            white-space: pre-line;
        }
        #screener-pane .e-sync-live-box.sync-done { border-left-color: #0f9d58; background: linear-gradient(135deg, #f0fff6 0%, #f7fbff 100%); }
        #screener-pane .e-sync-live-box.sync-error { border-left-color: #b42318; background: linear-gradient(135deg, #fff5f5 0%, #fffdf7 100%); }
        #screener-pane .e-sync-live-box.sync-done .e-sync-spinner,
        #screener-pane .e-sync-live-box.sync-error .e-sync-spinner { display: none; animation: none; }
        #screener-pane .e-filter-live-box {
            margin-top: 8px; border-radius: 8px; padding: 9px 11px; border: 1px solid #dbe7f5;
            background: linear-gradient(135deg, #fff8df 0%, #f7fbff 100%); color: #173b63; font-size: .86rem; font-weight: 800;
        }
        #screener-pane .e-filter-live-box.filter-done { background: linear-gradient(135deg, #f0fff6 0%, #f7fbff 100%); border-color: #bfe7cd; }
        #screener-pane .e-filter-spinner {
            width: 15px; height: 15px; border-radius: 999px; border: 2px solid #ffe1a7; border-top-color: var(--em-red);
            display: inline-block; vertical-align: -2px; margin-right: 6px; animation: eSyncSpin .8s linear infinite;
        }
        #screener-pane .filter-done .e-filter-spinner { display: none; }
        #screener-pane .e-quick-strategy-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
        #screener-pane .e-reset-btn { font-weight: 800; }
        #screener-pane .e2-simple-form {
            background: #fbfdff;
            border: 1px solid #dbe7f5;
            border-radius: 8px;
            padding: 10px;
        }
        #screener-pane .e2-simple-hero {
            display: grid;
            grid-template-columns: minmax(260px, 1fr) auto;
            gap: 10px;
            align-items: end;
        }
        #screener-pane .e2-target-box {
            background: #fff;
            border: 1px solid #dfeaf6;
            border-radius: 8px;
            padding: 8px;
        }
        #screener-pane .e2-main-select { font-weight: 900; color: #173b63; }
        #screener-pane .e2-quick-buttons {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            justify-content: flex-end;
        }
        #screener-pane .e2-simple-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
            gap: 8px;
            align-items: end;
        }
        #screener-pane .e2-action-cell {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 10px;
        }
        #screener-pane .e2-simple-help {
            color: #4f5f76;
            background: #fff8e8;
            border: 1px solid #f1deb2;
            border-radius: 7px;
            padding: 7px 9px;
            font-size: .82rem;
        }

        #screener-pane .e3-advanced-form {
            background: #f7fbff;
            border: 1px solid #d6e6f7;
            border-radius: 8px;
            padding: 10px;
        }
        #screener-pane .e3-preset-row { display: flex; flex-wrap: wrap; gap: 6px; }
        #screener-pane .e3-layout { display: grid; gap: 9px; }
        #screener-pane .e3-block {
            background: #fff;
            border: 1px solid #dfeaf6;
            border-radius: 8px;
            padding: 8px 9px;
        }
        #screener-pane .e3-title {
            font-weight: 900;
            color: #173b63;
            margin-bottom: 6px;
            font-size: .9rem;
        }
        #screener-pane .e3-small-dealer-block {
            border-color: #f2c94c;
            background: linear-gradient(135deg, #fff9df 0%, #ffffff 65%);
        }
        #screener-pane .e3-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
            gap: 8px;
            align-items: end;
        }
        #screener-pane .e3-check-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
            gap: 7px;
        }
        #screener-pane .e3-check-grid label {
            display: flex;
            align-items: center;
            gap: 7px;
            margin: 0;
            padding: 6px 9px;
            border: 1px solid #e2ebf7;
            border-radius: 999px;
            background: #fbfdff;
            color: #344968;
            font-weight: 800;
            font-size: .82rem;
        }
        @media (max-width: 992px) {
            #screener-pane .e2-simple-hero { grid-template-columns: 1fr; }
            #screener-pane .e2-quick-buttons { justify-content: flex-start; }
            #screener-pane .e2-action-cell { justify-content: flex-start; }
        }



        /* V45 mobile-first workspace */
        .workspace-hero { display:flex; justify-content:space-between; gap:20px; align-items:flex-end; padding:18px 20px; margin-bottom:12px; border:1px solid #cfdbea; border-radius:14px; background:linear-gradient(135deg,#f8fbff 0%,#fff 55%,#fff7ed 100%); }
        .workspace-hero h1 { margin:2px 0 4px; font-size:1.55rem; color:#173b63; font-weight:900; }
        .workspace-hero p { margin:0; color:#637189; font-size:.88rem; }
        .workspace-kicker { color:#1763b6; font-weight:900; font-size:.7rem; letter-spacing:.14em; }
        .workspace-status { white-space:nowrap; font-size:.78rem; color:#41607e; font-weight:800; }
        .workspace-status span { display:inline-block; width:8px; height:8px; margin-right:5px; border-radius:50%; background:#18a058; box-shadow:0 0 0 4px rgba(24,160,88,.12); }
        .mobile-module-tabs { position:sticky; top:0; z-index:30; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:6px; background:rgba(244,248,253,.96); backdrop-filter:blur(10px); border:1px solid #d5e0ed; border-radius:12px; }
        .mobile-module-tabs .nav-item { min-width:0; }
        .mobile-module-tabs .nav-link { width:100%; display:flex; justify-content:center; align-items:center; gap:7px; min-height:42px; border:0!important; border-radius:9px!important; color:#4d6078; font-weight:850; font-size:.84rem; }
        .mobile-module-tabs .nav-link.active { background:#1763b6!important; color:white!important; box-shadow:0 5px 14px rgba(23,99,182,.2); }
        .module-letter { display:inline-grid; place-items:center; width:22px; height:22px; border-radius:6px; background:rgba(23,99,182,.1); font-weight:950; }
        .nav-link.active .module-letter { background:rgba(255,255,255,.2); }
        .watch-mobile-list,.screener-mobile-list { padding:9px; display:grid; gap:9px; }
        .watch-mobile-card,.screener-mobile-card { border:1px solid #d7e1ed; border-radius:12px; background:#fff; padding:12px; box-shadow:0 3px 12px rgba(24,61,101,.06); }
        .watch-mobile-main { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; color:inherit; text-decoration:none; }
        .watch-mobile-name { font-size:1.02rem; font-weight:950; }
        .watch-mobile-price { font-size:1.08rem; font-weight:950; color:#173b63; }
        .watch-mobile-metrics,.screener-mobile-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:10px 0; }
        .watch-mobile-metrics div,.screener-mobile-metrics div { border-radius:8px; background:#f6f9fc; padding:7px 8px; min-width:0; }
        .watch-mobile-metrics span,.screener-mobile-metrics span { display:block; color:#7a8799; font-size:.68rem; }
        .watch-mobile-metrics strong,.screener-mobile-metrics strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.84rem; }
        .mobile-reason-input { min-width:0!important; border:1px solid #d9e3ee!important; background:#fbfdff!important; padding:8px 9px!important; font-size:.82rem!important; }
        .watch-mobile-actions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-top:9px; }
        .watch-mobile-actions form,.watch-mobile-actions .btn { width:100%; }
        .watch-mobile-actions .btn { min-height:36px; display:grid; place-items:center; padding:.3rem .2rem; }
        .screener-mobile-card .grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
        .mobile-reason { margin:7px 0 10px; border-top:1px dashed #d8e1ec; padding-top:7px; font-size:.78rem; }
        .mobile-reason summary { color:#1763b6; font-weight:850; }
        .mobile-reason p { margin:7px 0 0; color:#596a80; }

        @media (max-width: 767.98px) {
            body { background:#f2f5f9; }
            .navbar .container-fluid { padding-left:12px!important; padding-right:12px!important; }
            .navbar-brand { font-size:.95rem; }
            .page-wrap { padding:8px 8px 84px!important; }
            .workspace-hero { padding:13px 14px; border-radius:11px; align-items:flex-start; }
            .workspace-hero h1 { font-size:1.2rem; }
            .workspace-hero p { font-size:.76rem; line-height:1.45; }
            .workspace-status { display:none; }
            .mobile-module-tabs { top:4px; overflow:visible; }
            .mobile-module-tabs .nav-link { flex-direction:column; gap:2px; min-height:54px; padding:5px 2px; font-size:.72rem; line-height:1.1; }
            .module-letter { width:21px; height:21px; }
            .card { border-radius:11px; }
            .card-header { padding:9px 10px!important; font-size:.84rem; }
            .card-body { padding:10px!important; }
            .compact-add-form > [class*="col-"] { width:100%; }
            .compact-add-form .d-flex { display:grid!important; grid-template-columns:1fr 1fr; }
            .compact-add-form .d-flex .btn,.compact-add-form .d-flex select { min-height:38px; }
            .category-filter { flex-wrap:nowrap!important; overflow-x:auto; padding-bottom:5px; scrollbar-width:none; }
            .category-pill { flex:0 0 auto; min-height:34px; }
            #screener-pane .e2-simple-grid,#screener-pane .e3-grid,#screener-pane .screener-status-grid { grid-template-columns:1fr!important; }
            #screener-pane .e2-check-grid,#screener-pane .e3-check-grid { grid-template-columns:1fr 1fr!important; }
            #screener-pane .e-quick-strategy-row,#screener-pane .e3-preset-row { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
            #screener-pane .e-quick-strategy-row .btn,#screener-pane .e3-preset-row .btn { flex:0 0 auto; min-height:36px; }
            #market-pane > .row.g-4 { gap:8px!important; margin-bottom:8px!important; }
            #market-pane .market-index-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #market-pane .index-card { padding:8px; min-width:0; }
            #market-pane .index-price { font-size:1rem; }
            #market-pane .b3-quote-col { min-width:0!important; }
            #market-pane .b3-quote-panel { max-height:none!important; overflow:visible; }
            #market-pane .northbound-link-grid { grid-template-columns:1fr!important; }
            .detail-hero { align-items:flex-start!important; }
            .detail-hero h1 { font-size:1.15rem; }
            .detail-hero .d-flex { display:grid!important; grid-template-columns:1fr 1fr; width:100%; }
            .detail-drag-workspace { position:static!important; min-height:0!important; overflow:visible!important; border:0!important; background:none!important; display:grid!important; gap:10px; }
            .detail-panel { position:static!important; left:auto!important; top:auto!important; width:100%!important; height:auto!important; min-width:0!important; min-height:0!important; }
            .detail-panel .card { height:auto!important; overflow:visible!important; }
            .detail-panel-body { height:auto!important; overflow:visible!important; }
            .detail-panel .drag-handle { cursor:default!important; }
            .resize-handle { display:none!important; }
            .detail-chart-box { min-height:310px; }
            .detail-chart-box .js-plotly-plot,.detail-chart-box .plotly-graph-div { width:100%!important; }
            .selected-day-quote,.summary-strip-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
            .trade-table-wrap { overflow-x:auto; }
        }


        /* V45 动态筛选工作台 */
        #screener-pane .e3-grid-6 { grid-template-columns: repeat(6, minmax(125px, 1fr)); }
        #screener-pane .e3-check-grid-wide { grid-template-columns: repeat(7, minmax(132px, 1fr)); }
        #screener-pane .e3-universe-block { border-left: 4px solid #2f75b5; background: linear-gradient(135deg,#f5faff 0%,#fff 100%); }
        #screener-pane .e3-dividend-block { border-left:4px solid #b7791f; background:linear-gradient(135deg,#fffaf0 0%,#fff 100%); }
        #screener-pane .e3-dividend-block #eDividendFields { transition:opacity .2s ease,filter .2s ease; }
        #screener-pane .e3-dividend-block.dividend-filter-disabled #eDividendFields { opacity:.45; filter:grayscale(.35); }
        #screener-pane .e3-dividend-block.dividend-filter-disabled .small-note { opacity:.72; }
        #screener-pane .strategy-quick-guide { border:1px solid #c9dcef; background:#f6faff; color:#31516f; border-radius:9px; padding:9px 11px; line-height:1.55; }
        #screener-pane .strategy-applied-map { margin-top:8px; border:1px solid #e6c66a; border-left:5px solid #e6a700; border-radius:10px; padding:9px 11px; background:linear-gradient(135deg,#fffaf0,#fff); }
        #screener-pane .strategy-applied-map-head { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; color:#604b13; }
        #screener-pane .strategy-applied-chips { display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }
        #screener-pane .strategy-condition-chip { display:inline-flex; align-items:center; gap:5px; border:1px solid #e7cc78; background:#fff7d9; border-radius:999px; padding:4px 8px; font-size:.72rem; color:#654f12; }
        #screener-pane .strategy-condition-chip b { font-weight:850; }
        #screener-pane .strategy-condition-chip em { font-style:normal; font-weight:900; color:#9a6300; }
        #screener-pane .strategy-condition-chip.is-custom { border-color:#80b7e6; background:#eef7ff; color:#24547d; }
        #screener-pane .strategy-condition-chip.is-custom em { color:#0b6db4; }
        #screener-pane .strategy-map-pulse { animation:strategyMapPulse .7s ease-out; }
        @keyframes strategyMapPulse { 0%{box-shadow:0 0 0 0 rgba(230,167,0,.35)} 100%{box-shadow:0 0 0 13px rgba(230,167,0,0)} }
        #screener-pane .strategy-auto-applied { position:relative; border-radius:8px; background:#fff8dc!important; box-shadow:inset 0 0 0 2px rgba(229,168,0,.38); padding:4px; transition:.2s ease; }
        #screener-pane .strategy-user-edited { position:relative; border-radius:8px; background:#eef7ff!important; box-shadow:inset 0 0 0 2px rgba(47,117,181,.38); padding:4px; transition:.2s ease; }
        #screener-pane .e3-check-grid label.strategy-auto-applied,#screener-pane .e-filter-check-cell label.strategy-auto-applied { padding:7px 9px; }
        #screener-pane .e3-check-grid label.strategy-user-edited,#screener-pane .e-filter-check-cell label.strategy-user-edited { padding:7px 9px; }
        #screener-pane .e3-strategy-parameter-block { border-left:4px solid #e6a700; background:linear-gradient(135deg,#fffbef,#fff); }
        #screener-pane .e-strategy-param-caption { font-weight:900; color:#6a5315; margin-bottom:8px; padding-bottom:5px; border-bottom:1px dashed #e8d79e; }
        #screener-pane [data-e3-preset].strategy-selected { box-shadow:0 0 0 3px rgba(47,117,181,.18); transform:translateY(-1px); }
        #screener-pane .e-filter-check-cell { display:flex; align-items:end; padding-bottom:7px; font-size:.82rem; }
        #screener-pane .e-filter-action-row { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
        #screener-pane .e-filter-action-row .btn { min-width:190px; min-height:42px; }
        #screener-pane .e-filter-live-panel { margin-top:12px; border:1px solid #bad5ed; border-left:5px solid #2f75b5; border-radius:11px; padding:12px; background:linear-gradient(135deg,#f4faff,#fff); }
        #screener-pane .e-filter-live-panel.filter-done { border-left-color:#0f9d58; background:linear-gradient(135deg,#f2fff7,#fff); }
        #screener-pane .e-filter-live-panel.filter-error { border-left-color:#b42318; background:linear-gradient(135deg,#fff5f5,#fff); }
        #screener-pane .e-filter-live-panel.filter-done .e-filter-spinner,
        #screener-pane .e-filter-live-panel.filter-error .e-filter-spinner { display:none; }
        #screener-pane .e-filter-live-head { display:flex; justify-content:space-between; align-items:center; gap:10px; }
        #screener-pane .e-filter-live-grid { display:grid; grid-template-columns:repeat(6,minmax(120px,1fr)); gap:7px; margin-top:9px; }
        #screener-pane .e-filter-live-grid div { background:#fff; border:1px solid #d9e7f3; border-radius:8px; padding:7px 9px; min-width:0; }
        #screener-pane .e-filter-live-grid span { display:block; font-size:.68rem; color:#728199; }
        #screener-pane .e-filter-live-grid strong { display:block; font-size:.84rem; color:#173b63; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
        #screener-pane .strategy-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
        #screener-pane .strategy-guide-card { border:1px solid #d7e3ef; border-radius:10px; background:#fff; overflow:hidden; }
        #screener-pane .strategy-guide-card[open] { box-shadow:0 5px 18px rgba(32,73,112,.10); grid-column:span 2; }
        #screener-pane .strategy-guide-card summary { cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 11px; font-weight:900; color:#173b63; list-style:none; }
        #screener-pane .strategy-guide-card summary::-webkit-details-marker { display:none; }
        #screener-pane .strategy-guide-card summary::after { content:'＋'; font-size:1.05rem; }
        #screener-pane .strategy-guide-card[open] summary::after { content:'－'; }
        #screener-pane .strategy-guide-tags { display:flex; gap:4px; margin-left:auto; }
        #screener-pane .strategy-guide-tags em { font-style:normal; font-size:.65rem; background:#eef5fb; border-radius:999px; padding:2px 6px; color:#526c84; white-space:nowrap; }
        #screener-pane .strategy-guide-body { border-top:1px solid #e6eef5; padding:11px; }
        #screener-pane .strategy-guide-summary { font-weight:700; color:#31516f; }
        #screener-pane .strategy-guide-section ol { padding-left:1.25rem; margin:.4rem 0 .75rem; }
        #screener-pane .strategy-guide-section li { margin:.25rem 0; line-height:1.5; }
        #screener-pane .strategy-guide-section p { margin:.35rem 0 .75rem; padding:8px 9px; border-radius:8px; background:#fff8e8; color:#695019; font-size:.78rem; line-height:1.5; }
        #screener-pane .strategy-guide-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
        #screener-pane .strategy-guide-facts>div { background:#f6f9fc; border-radius:8px; padding:8px; }
        #screener-pane .strategy-guide-facts p { margin:.25rem 0 0; font-size:.78rem; line-height:1.48; color:#526172; }
        #screener-pane .screener-result-head { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; padding:10px; border-bottom:1px solid #e4ebf2; background:#f8fbfe; }
        #screener-pane .screener-result-tools { display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
        #screener-pane .screener-result-tools input { min-width:220px; }
        #screener-pane .screener-result-tools select { min-width:180px; }
        #screener-pane .js-screener-result.is-hidden { display:none!important; }
        @media (max-width: 1199.98px) {
            #screener-pane .e3-grid-6 { grid-template-columns:repeat(3,minmax(130px,1fr)); }
            #screener-pane .e3-check-grid-wide { grid-template-columns:repeat(4,minmax(125px,1fr)); }
            #screener-pane .e-filter-live-grid { grid-template-columns:repeat(3,minmax(120px,1fr)); }
            #screener-pane .strategy-guide-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
        }
        @media (max-width: 767.98px) {
            #screener-pane .e3-grid-6 { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .e3-check-grid-wide { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .e-filter-live-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .strategy-guide-grid { grid-template-columns:1fr; }
            #screener-pane .strategy-guide-card[open] { grid-column:span 1; }
            #screener-pane .strategy-guide-facts { grid-template-columns:1fr; }
            #screener-pane .e-filter-action-row .btn { width:100%; }
            #screener-pane .e-filter-live-head { align-items:flex-start; }
            #screener-pane .screener-result-tools { width:100%; display:grid; grid-template-columns:1fr; }
            #screener-pane .screener-result-tools input,#screener-pane .screener-result-tools select { min-width:0; width:100%; }
            #screener-pane .strategy-applied-map-head { align-items:flex-start; }
            #screener-pane .strategy-condition-chip { border-radius:8px; width:100%; justify-content:space-between; }
        }
        @media (max-width: 420px) {
            #screener-pane .e3-grid-6 { grid-template-columns:1fr; }
            #screener-pane .e3-check-grid-wide { grid-template-columns:1fr; }
        }

        /* V49 account security */
        .navbar-account { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
        .navbar-user-label { color:#fff; font-weight:850; font-size:.84rem; padding-right:3px; }
        .navbar-admin-badge { margin-left:5px; padding:2px 6px; border-radius:999px; background:rgba(255,255,255,.18); font-size:.68rem; }
        .navbar-account .btn { white-space:nowrap; }
        .account-page-shell { max-width:620px; margin:18px auto; }
        .account-card { border-radius:12px; overflow:hidden; }
        .account-form { max-width:480px; }
        .account-hero { align-items:center; }
        .admin-user-table-wrap { max-height:none; }
        .admin-user-table { min-width:1050px; font-size:.84rem; }
        .admin-user-table th { background:#f3f7fc; color:#314766; white-space:nowrap; }
        .admin-action-grid { display:flex; flex-wrap:wrap; gap:5px; }
        .reset-password-box { display:grid; grid-template-columns:minmax(130px,1fr) minmax(130px,1fr) auto auto; gap:6px; align-items:center; padding:8px; border:1px solid #dbe7f4; border-radius:8px; background:#f8fbff; min-width:570px; }
        .reset-password-box .form-check { margin:0; white-space:nowrap; }
        .audit-table-wrap { max-height:360px; }
        .audit-table { min-width:880px; font-size:.78rem; }
        .audit-table thead th { position:sticky; top:0; background:#f3f7fc; color:#314766; }
        @media(max-width:991px){
            .navbar-account { align-items:stretch; padding:8px 0 4px; }
            .navbar-user-label { width:100%; padding:4px 0; }
            .navbar-account .btn,.navbar-account form { flex:1 1 auto; }
            .navbar-account form .btn { width:100%; }
        }
        @media(max-width:600px){
            .account-page-shell { margin:8px auto; }
            .account-card .card-body { padding:18px!important; }
            .account-hero { display:block; }
            .account-hero .workspace-status { margin-top:10px; }
        }

        .usage-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
        .usage-stat { border:1px solid #dbe5f1; border-top:3px solid var(--em-blue); border-radius:6px; background:#fbfdff; padding:12px 14px; min-height:100px; }
        .usage-stat span { display:block; color:#52657f; font-weight:800; font-size:.83rem; }
        .usage-stat strong { display:block; color:#173b63; font-size:1.55rem; line-height:1.2; margin:7px 0 4px; }
        .usage-stat em { display:block; color:#7b8798; font-size:.75rem; font-style:normal; }
        .usage-table-wrap { max-height:430px; }
        .usage-small-table-wrap { max-height:300px; }
        .usage-detail-table-wrap { max-height:520px; }
        .usage-table { min-width:720px; font-size:.8rem; }
        .usage-table thead th { position:sticky; top:0; z-index:2; background:#f3f7fc; color:#314766; white-space:nowrap; }
        .usage-detail-table { min-width:1120px; }
        .usage-filter-table { min-width:980px; }
        .usage-ua { max-width:340px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#667085; }
        @media(max-width:1199px){ .usage-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
        @media(max-width:600px){ .usage-stat-grid { grid-template-columns:1fr; } }

        /* V71：全市场筛选重构——研究工作台，而不是运维表单。 */
        .screener-workspace-hero {
            position:relative;
            overflow:hidden;
            min-height:148px;
            align-items:center;
            padding:24px 28px;
            border:0;
            color:#fff;
            background:#102f52;
            box-shadow:0 14px 34px rgba(16,47,82,.18);
        }
        .screener-workspace-hero::after {
            content:"";
            position:absolute;
            right:-55px;
            bottom:-110px;
            width:340px;
            height:240px;
            border:54px solid rgba(87,161,232,.13);
            border-radius:50%;
            pointer-events:none;
        }
        .screener-workspace-hero > * { position:relative; z-index:1; }
        .screener-workspace-hero .workspace-kicker { color:#8fc8ff; }
        .screener-workspace-hero h1 { color:#fff; font-size:1.72rem; letter-spacing:-.02em; }
        .screener-workspace-hero p { color:#c9d9ea; font-size:.92rem; }
        .screener-hero-meta {
            display:grid;
            grid-template-columns:repeat(3,minmax(118px,1fr));
            gap:8px;
            min-width:min(430px,42vw);
        }
        .screener-hero-meta div {
            min-width:0;
            padding:10px 12px;
            border:1px solid rgba(255,255,255,.13);
            border-radius:11px;
            background:rgba(255,255,255,.075);
            backdrop-filter:blur(7px);
        }
        .screener-hero-meta span { display:block; color:#a9c2dc; font-size:.68rem; font-weight:700; }
        .screener-hero-meta strong { display:block; margin-top:3px; color:#fff; font-size:.94rem; white-space:nowrap; }

        #screener-pane { --screener-navy:#173b63; --screener-blue:#1769c2; --screener-green:#138a5b; --screener-amber:#b7791f; }
        #screener-pane .screener-card {
            overflow:visible;
            resize:none;
            border:1px solid #dce5ef;
            border-radius:16px;
            box-shadow:0 7px 24px rgba(24,61,101,.07);
        }
        #screener-pane .screener-card > .card-body { padding:16px 18px; }
        #screener-pane .screener-card-heading {
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:14px;
            padding:15px 18px;
            border-bottom:1px solid #e4ebf2;
            background:#fff;
            border-radius:16px 16px 0 0;
        }
        #screener-pane .screener-section-heading { display:flex; align-items:center; gap:11px; min-width:0; }
        #screener-pane .screener-section-index {
            display:grid;
            place-items:center;
            flex:0 0 38px;
            width:38px;
            height:38px;
            border-radius:11px;
            color:#fff;
            background:#173b63;
            font-size:.78rem;
            font-weight:950;
            letter-spacing:.04em;
        }
        #screener-pane .screener-section-heading h2 { margin:0; color:#162f4b; font-size:1rem; font-weight:950; }
        #screener-pane .screener-section-heading p { margin:2px 0 0; color:#718096; font-size:.74rem; font-weight:600; }
        #screener-pane .screener-health-badge {
            display:inline-flex;
            align-items:center;
            gap:7px;
            flex:0 0 auto;
            padding:7px 10px;
            border:1px solid #bde8d5;
            border-radius:999px;
            color:#126a48;
            background:#effbf5;
            font-size:.74rem;
            font-weight:850;
        }
        #screener-pane .screener-health-badge span {
            width:7px;
            height:7px;
            border-radius:50%;
            background:#19a66b;
            box-shadow:0 0 0 4px rgba(25,166,107,.12);
        }

        #screener-pane .screener-primary-metrics {
            display:grid;
            grid-template-columns:repeat(4,minmax(0,1fr));
            gap:10px;
        }
        #screener-pane .screener-metric-card {
            position:relative;
            min-width:0;
            min-height:118px;
            padding:15px 15px 13px;
            overflow:hidden;
            border:1px solid #dfe8f1;
            border-radius:13px;
            background:#fff;
        }
        #screener-pane .screener-metric-card::before {
            content:"";
            position:absolute;
            inset:0 0 auto;
            height:3px;
            background:#2978c8;
        }
        #screener-pane .screener-metric-card.metric-freshness::before { background:#16a06a; }
        #screener-pane .screener-metric-card.metric-cap::before { background:#7d62c9; }
        #screener-pane .screener-metric-card.metric-valuation::before { background:#c78824; }
        #screener-pane .metric-label { color:#6b7c91; font-size:.73rem; font-weight:800; }
        #screener-pane .metric-value {
            margin-top:9px;
            color:#15395f;
            font-size:1.6rem;
            line-height:1;
            font-weight:950;
            letter-spacing:-.035em;
        }
        #screener-pane .metric-value small { margin-left:3px; color:#61758b; font-size:.74rem; font-weight:800; letter-spacing:0; }
        #screener-pane .metric-value.metric-date { font-size:1.16rem; letter-spacing:-.01em; }
        #screener-pane .metric-meta { margin-top:9px; color:#8190a2; font-size:.69rem; line-height:1.38; }
        #screener-pane .screener-secondary-metrics {
            display:grid;
            grid-template-columns:.75fr .75fr 1fr 1.8fr .8fr;
            gap:1px;
            overflow:hidden;
            border:1px solid #e3eaf2;
            border-radius:11px;
            background:#e3eaf2;
        }
        #screener-pane .screener-secondary-metrics > div { min-width:0; padding:9px 11px; background:#f8fafc; }
        #screener-pane .screener-secondary-metrics span { display:block; color:#8591a1; font-size:.65rem; }
        #screener-pane .screener-secondary-metrics strong { display:block; margin-top:2px; overflow:hidden; color:#2e4968; font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }

        #screener-pane .sync-control-card {
            display:grid;
            grid-template-columns:minmax(0,1fr) minmax(230px,auto);
            align-items:center;
            gap:16px;
            padding:14px 15px;
            border:1px solid #d8e6f4;
            border-left:4px solid #2676c5;
            border-radius:12px;
            background:#f8fbfe;
        }
        #screener-pane .sync-control-dividend { border-color:#eadfbe; border-left-color:#c08a28; background:#fffcf4; }
        #screener-pane .sync-control-title { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:6px; color:#173b63; font-size:.88rem; font-weight:950; }
        #screener-pane .sync-control-icon {
            display:grid;
            place-items:center;
            width:26px;
            height:26px;
            border-radius:8px;
            color:#1769c2;
            background:#e4f1ff;
            font-size:.92rem;
        }
        #screener-pane .sync-control-dividend .sync-control-icon { color:#986514; background:#fff0c9; }
        #screener-pane .sync-state-pill { padding:3px 7px; border-radius:999px; font-size:.65rem; font-weight:900; }
        #screener-pane .sync-state-pill.is-on { color:#126a48; background:#dff7eb; }
        #screener-pane .sync-state-pill.is-off { color:#725f43; background:#ece8df; }
        #screener-pane .sync-control-copy .small-note { line-height:1.55; }
        #screener-pane .sync-control-actions { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:6px; }
        #screener-pane .sync-control-actions form { margin:0; }
        #screener-pane .sync-control-actions .btn { min-height:34px; border-radius:8px; font-weight:850; }
        #screener-pane .sync-advanced-panel {
            overflow:hidden;
            border:1px solid #e1e8f0;
            border-radius:11px;
            background:#fff;
        }
        #screener-pane .sync-advanced-panel > summary {
            display:flex;
            align-items:center;
            gap:9px;
            padding:11px 13px;
            cursor:pointer;
            color:#284664;
            background:#f8fafc;
            font-size:.8rem;
            font-weight:900;
            list-style:none;
        }
        #screener-pane .sync-advanced-panel > summary::-webkit-details-marker { display:none; }
        #screener-pane .sync-advanced-panel > summary::before { content:"＋"; color:#1769c2; font-size:1rem; }
        #screener-pane .sync-advanced-panel[open] > summary::before { content:"－"; }
        #screener-pane .sync-advanced-panel > summary small { margin-left:auto; color:#8491a2; font-size:.68rem; font-weight:650; }
        #screener-pane .sync-advanced-panel > form,
        #screener-pane .sync-advanced-panel > .small-note,
        #screener-pane .sync-advanced-panel > .alert { margin-left:13px!important; margin-right:13px!important; }
        #screener-pane .sync-advanced-panel[open] { padding-bottom:12px; box-shadow:0 7px 18px rgba(24,61,101,.06); }
        #screener-pane .sync-quick-run { margin-top:12px; border:1px solid #cfe0f2; border-left:0; border-radius:12px; background:#f4f8fc; }
        #screener-pane .sync-quick-run .btn { min-height:36px; border-radius:8px; font-weight:900; }

        #screener-pane .screener-studio-card { scroll-margin-top:76px; }
        #screener-pane .screener-studio-card .screener-section-index { background:#1769c2; }
        #screener-pane .screener-preset-actions { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
        #screener-pane .screener-preset-actions .btn { min-height:34px; border-radius:8px; font-weight:850; }
        #screener-pane .e3-advanced-form { padding:0; border:0; border-radius:0; background:transparent; }
        #screener-pane .screener-strategy-deck {
            grid-template-columns:minmax(230px,.72fr) minmax(0,2.28fr);
            align-items:stretch;
            gap:12px;
            padding:12px;
            border:1px solid #dce7f2;
            border-radius:13px;
            background:#f6f9fc;
        }
        #screener-pane .screener-strategy-deck .e2-target-box { display:flex; flex-direction:column; justify-content:center; padding:13px; border-radius:10px; box-shadow:0 3px 10px rgba(24,61,101,.04); }
        #screener-pane .screener-strategy-deck .e2-main-select { min-height:39px; border-color:#b9cfe5; border-radius:8px; }
        #screener-pane .screener-strategy-deck .e2-quick-buttons { align-content:center; justify-content:flex-start; padding:3px 0; }
        #screener-pane .e-quick-strategy-row .btn { border-radius:999px; padding:.38rem .72rem; font-size:.74rem; font-weight:850; }
        #screener-pane .strategy-quick-guide { margin-top:10px!important; border:0; border-left:3px solid #7ea7cf; border-radius:7px; background:#f3f7fb; color:#52677d; font-size:.74rem; }
        #screener-pane .e3-layout { gap:11px; margin-top:12px; }
        #screener-pane .e3-block { padding:12px; border-color:#dfe7ef; border-radius:12px; box-shadow:0 3px 12px rgba(24,61,101,.035); }
        #screener-pane .e3-title { display:flex; align-items:center; min-height:24px; margin-bottom:9px; font-size:.84rem; }
        #screener-pane .e-filter-action-row { position:sticky; bottom:8px; z-index:12; padding:10px; border:1px solid #d5e2ee; border-radius:12px; background:rgba(255,255,255,.94); box-shadow:0 10px 26px rgba(20,52,87,.13); backdrop-filter:blur(10px); }
        #screener-pane .e-filter-action-row .btn-primary { border-color:#1769c2; background:#1769c2; box-shadow:0 5px 13px rgba(23,105,194,.22); }
        #screener-pane .public-data-overview { border-top:3px solid #1769c2; }

        @media (max-width:1199.98px) {
            .screener-workspace-hero { align-items:flex-start; }
            .screener-hero-meta { min-width:360px; }
            #screener-pane .screener-primary-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .screener-secondary-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; }
            #screener-pane .sync-control-card { grid-template-columns:1fr; }
            #screener-pane .sync-control-actions { justify-content:flex-start; }
        }
        @media (max-width:767.98px) {
            .screener-workspace-hero { flex-direction:column; min-height:0; padding:17px 16px; }
            .screener-workspace-hero > div:first-child { width:100%; }
            .screener-workspace-hero h1 { font-size:1.3rem; }
            .screener-workspace-hero p { max-width:31rem; }
            .screener-hero-meta { grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; min-width:0; margin-top:13px; }
            .screener-hero-meta div { padding:8px; }
            .screener-hero-meta strong { font-size:.78rem; }
            #screener-pane .screener-card > .card-body { padding:11px!important; }
            #screener-pane .screener-card-heading { align-items:flex-start; padding:12px!important; }
            #screener-pane .screener-section-index { flex-basis:34px; width:34px; height:34px; }
            #screener-pane .screener-section-heading p { display:none; }
            #screener-pane .screener-health-badge { padding:6px 8px; font-size:.65rem; }
            #screener-pane .screener-primary-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
            #screener-pane .screener-metric-card { min-height:105px; padding:12px 10px 10px; }
            #screener-pane .metric-value { font-size:1.28rem; }
            #screener-pane .metric-value.metric-date { font-size:.92rem; }
            #screener-pane .metric-meta { font-size:.63rem; }
            #screener-pane .screener-secondary-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .screener-secondary-metrics > div:nth-child(4) { grid-column:1 / -1; }
            #screener-pane .sync-control-card { padding:12px; }
            #screener-pane .sync-control-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .sync-control-actions form,
            #screener-pane .sync-control-actions .btn { width:100%; }
            #screener-pane .sync-advanced-panel > summary small { display:none; }
            #screener-pane .screener-preset-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; }
            #screener-pane .screener-preset-actions .btn { width:100%; padding-left:.25rem; padding-right:.25rem; font-size:.68rem; }
            #screener-pane .screener-strategy-deck { grid-template-columns:1fr; padding:9px; }
            #screener-pane .screener-strategy-deck > *,
            #screener-pane .screener-strategy-deck .e2-target-box,
            #screener-pane .screener-strategy-deck .e2-quick-buttons { width:100%; min-width:0; max-width:100%; }
            #screener-pane .screener-strategy-deck .e2-quick-buttons { overflow:hidden; }
            #screener-pane .screener-strategy-deck .e-quick-strategy-row { width:100%; min-width:0; max-width:100%; }
            #screener-pane .screener-strategy-deck .e2-main-select { width:100%; max-width:100%; }
            #screener-pane .e-filter-action-row { bottom:72px; }
        }
        @media (max-width:420px) {
            .screener-hero-meta { grid-template-columns:1fr 1fr; }
            .screener-hero-meta div:last-child { grid-column:1 / -1; }
            #screener-pane .screener-primary-metrics { grid-template-columns:1fr; }
            #screener-pane .screener-metric-card { min-height:0; }
        }
        @media (prefers-reduced-motion:reduce) {
            #screener-pane *, .screener-workspace-hero * { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; }
        }

        /* V72：筛选任务优先，结果紧随其后，数据与运维后置。 */
        #screener-pane .screener-task-flow {
            display:grid;
            grid-template-columns:repeat(3,minmax(0,1fr));
            gap:1px;
            overflow:hidden;
            margin-bottom:13px;
            border:1px solid #d9e4ef;
            border-radius:12px;
            background:#d9e4ef;
        }
        #screener-pane .screener-task-flow > div {
            position:relative;
            display:grid;
            grid-template-columns:32px minmax(0,1fr);
            grid-template-rows:auto auto;
            column-gap:9px;
            min-width:0;
            padding:11px 14px;
            background:#f8fafc;
        }
        #screener-pane .screener-task-flow span {
            grid-row:1 / 3;
            display:grid;
            place-items:center;
            align-self:center;
            width:28px;
            height:28px;
            border-radius:9px;
            color:#fff;
            background:#1769c2;
            font-size:.72rem;
            font-weight:950;
        }
        #screener-pane .screener-task-flow strong { color:#1d3b59; font-size:.78rem; }
        #screener-pane .screener-task-flow small { overflow:hidden; color:#7a899a; font-size:.66rem; text-overflow:ellipsis; white-space:nowrap; }
        #screener-pane .screener-results-card .screener-section-index { background:#15845a; }
        #screener-pane .strategy-guide-shell .screener-section-index { background:#ad7218; }
        #screener-pane .public-data-overview .screener-section-index { background:#5f6fa3; }
        #screener-pane .screener-ops-card .screener-section-index { background:#58677a; }
        #screener-pane .screener-results-card { scroll-margin-top:76px; border-top:3px solid #35a477; }
        #screener-pane .strategy-guide-shell { border-top:3px solid #d39a3f; }
        #screener-pane .public-data-overview { scroll-margin-top:76px; border-top:3px solid #7b88b8; }
        #screener-pane .screener-ops-card { border:0; box-shadow:none; }

        #screener-pane .admin-maintenance-disclosure {
            overflow:hidden;
            border:1px solid #d9e2eb;
            border-radius:15px;
            background:#f7f9fb;
            box-shadow:0 6px 20px rgba(24,61,101,.055);
            scroll-margin-top:76px;
        }
        #screener-pane .admin-maintenance-disclosure > summary {
            display:flex;
            align-items:center;
            gap:11px;
            min-height:66px;
            padding:13px 16px;
            cursor:pointer;
            color:#29445f;
            list-style:none;
        }
        #screener-pane .admin-maintenance-disclosure > summary::-webkit-details-marker { display:none; }
        #screener-pane .maintenance-summary-icon {
            display:grid;
            place-items:center;
            flex:0 0 36px;
            width:36px;
            height:36px;
            border-radius:10px;
            color:#52667b;
            background:#e8edf2;
            font-size:1rem;
        }
        #screener-pane .admin-maintenance-disclosure > summary > span:nth-child(2) { min-width:0; }
        #screener-pane .admin-maintenance-disclosure > summary strong { display:block; color:#29445f; font-size:.86rem; }
        #screener-pane .admin-maintenance-disclosure > summary small { display:block; margin-top:2px; color:#7c8997; font-size:.68rem; }
        #screener-pane .maintenance-summary-action {
            margin-left:auto;
            padding:6px 9px;
            border:1px solid #ccd8e4;
            border-radius:8px;
            color:#536b82;
            background:#fff;
            font-size:.7rem;
            font-weight:850;
            white-space:nowrap;
        }
        #screener-pane .admin-maintenance-disclosure[open] > summary { border-bottom:1px solid #dfe7ef; background:#fff; }
        #screener-pane .admin-maintenance-disclosure[open] .maintenance-summary-action::before { content:"收起"; }
        #screener-pane .admin-maintenance-disclosure[open] .maintenance-summary-action { font-size:0; }
        #screener-pane .admin-maintenance-disclosure[open] .maintenance-summary-action::before { font-size:.7rem; }
        #screener-pane .admin-maintenance-body { padding:12px; background:#f4f7fa; }

        @media (max-width:767.98px) {
            #screener-pane .screener-task-flow { grid-template-columns:1fr; }
            #screener-pane .screener-task-flow > div { padding:9px 11px; }
            #screener-pane .screener-task-flow small { white-space:normal; }
            #screener-pane .maintenance-summary-action { display:none; }
            #screener-pane .admin-maintenance-disclosure > summary { padding:11px 12px; }
            #screener-pane .admin-maintenance-body { padding:7px; }
        }

        /* V73：实时结果、链式二次筛选与高密度筛选工作台。 */
        #screener-pane .screener-task-flow { margin-bottom:8px; border-radius:9px; }
        #screener-pane .screener-task-flow > div {
            grid-template-columns:24px minmax(0,1fr);
            column-gap:7px;
            padding:6px 10px;
        }
        #screener-pane .screener-task-flow span { width:22px; height:22px; border-radius:7px; font-size:.65rem; }
        #screener-pane .screener-task-flow strong { font-size:.74rem; line-height:1.15; }
        #screener-pane .screener-task-flow small { font-size:.61rem; line-height:1.15; }
        #screener-pane .screener-strategy-deck { gap:8px; padding:8px; border-radius:10px; }
        #screener-pane .screener-strategy-deck .e2-target-box { padding:8px 10px; }
        #screener-pane .screener-strategy-deck .e2-main-select { min-height:34px; }
        #screener-pane .e-quick-strategy-row .btn { padding:.26rem .58rem; font-size:.7rem; }
        #screener-pane .strategy-quick-guide { margin-top:6px!important; padding:6px 9px; line-height:1.4; }
        #screener-pane .strategy-applied-map { margin-top:6px; padding:6px 8px; }
        #screener-pane .strategy-applied-chips { gap:4px; margin-top:5px; }
        #screener-pane .strategy-condition-chip { padding:3px 7px; font-size:.68rem; }
        #screener-pane .e3-layout { gap:6px; margin-top:7px; }
        #screener-pane .e3-block { padding:7px 9px; border-radius:9px; box-shadow:0 2px 7px rgba(24,61,101,.025); }
        #screener-pane .e3-title { min-height:18px; margin-bottom:5px; font-size:.79rem; }
        #screener-pane .e3-grid { gap:6px; }
        #screener-pane .e3-check-grid { gap:5px; }
        #screener-pane .e3-check-grid label { gap:5px; padding:4px 7px; font-size:.75rem; }
        #screener-pane .e3-block .small-note.mb-2 { margin-bottom:5px!important; font-size:.68rem; line-height:1.35; }
        #screener-pane .e-strategy-param-caption { margin-bottom:5px; padding-bottom:3px; font-size:.76rem; }
        #screener-pane .strategy-auto-applied,
        #screener-pane .strategy-user-edited { padding:2px; }
        #screener-pane .e3-check-grid label.strategy-auto-applied,
        #screener-pane .e-filter-check-cell label.strategy-auto-applied,
        #screener-pane .e3-check-grid label.strategy-user-edited,
        #screener-pane .e-filter-check-cell label.strategy-user-edited { padding:5px 7px; }
        #screener-pane .e-filter-check-cell { padding-bottom:3px; font-size:.75rem; }
        #screener-pane .e-filter-action-row { padding:7px 8px; }
        #screener-pane .e-filter-action-row .btn { min-height:36px; }

        #screener-pane .chain-pool-banner {
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:10px;
            margin-bottom:7px;
            padding:7px 9px;
            border:1px solid #8bc9aa;
            border-left:4px solid #15845a;
            border-radius:9px;
            color:#18553d;
            background:#effaf4;
        }
        #screener-pane .chain-pool-banner > div { display:flex; align-items:center; gap:7px; min-width:0; }
        #screener-pane .chain-pool-banner strong { font-size:.78rem; }
        #screener-pane .chain-pool-banner small { overflow:hidden; color:#4d7564; font-size:.68rem; text-overflow:ellipsis; white-space:nowrap; }
        #screener-pane .chain-pool-icon { display:grid; place-items:center; width:24px; height:24px; border-radius:7px; color:#fff; background:#15845a; font-weight:950; }
        #screener-pane .result-chain-bar {
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:12px;
            padding:8px 10px;
            border-bottom:1px solid #cfe8db;
            background:#f2fbf6;
        }
        #screener-pane .result-chain-copy strong { display:block; color:#18553d; font-size:.78rem; }
        #screener-pane .result-chain-copy span { display:block; color:#648072; font-size:.67rem; }
        #screener-pane .result-chain-actions { display:flex; gap:6px; align-items:center; }
        #screener-pane .result-chain-actions select { min-width:190px; }
        #screener-pane .live-result-dot { display:inline-block; width:8px; height:8px; margin-right:5px; border-radius:50%; background:#16a066; box-shadow:0 0 0 4px rgba(22,160,102,.12); animation:liveResultPulse 1.2s ease-in-out infinite; }
        #screener-pane .result-total-note { color:#6e7d8d; font-size:.7rem; font-weight:700; }
        #screener-pane .result-pagination { display:flex; justify-content:center; align-items:center; gap:10px; padding:9px; border-top:1px solid #e1e9f0; background:#fafcfe; }
        #screener-pane .result-pagination span { color:#637286; font-size:.72rem; font-weight:750; }
        @keyframes liveResultPulse { 50% { opacity:.45; transform:scale(.82); } }

        @media (max-width:767.98px) {
            #screener-pane .screener-task-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
            #screener-pane .screener-task-flow > div { display:flex; align-items:center; gap:5px; padding:6px; }
            #screener-pane .screener-task-flow small { display:none; }
            #screener-pane .screener-task-flow strong { font-size:.65rem; }
            #screener-pane .chain-pool-banner,
            #screener-pane .result-chain-bar { align-items:stretch; flex-direction:column; }
            #screener-pane .chain-pool-banner > div { flex-wrap:wrap; }
            #screener-pane .chain-pool-banner small { width:100%; padding-left:31px; white-space:normal; }
            #screener-pane .result-chain-actions { display:grid; grid-template-columns:1fr auto; }
            #screener-pane .result-chain-actions select { min-width:0; width:100%; }
        }

        /* V74：完整结果排序、可调分页、可回退筛选路径与一行式条件参数。 */
        #screener-pane .e-condition-grid {
            display:grid;
            grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
            gap:6px;
        }
        #screener-pane .e-condition-chip {
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:6px;
            min-width:0;
            min-height:36px;
            padding:4px 5px 4px 8px;
            border:1px solid #d9e4ef;
            border-radius:10px;
            color:#294765;
            background:#f9fbfd;
            transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
        }
        #screener-pane .e-condition-toggle {
            display:flex;
            align-items:center;
            gap:6px;
            min-width:0;
            margin:0;
            font-size:.72rem;
            font-weight:850;
            line-height:1.15;
        }
        #screener-pane .e-condition-toggle > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
        #screener-pane .e-condition-chip.is-toggle-only { justify-content:flex-start; }
        #screener-pane .e-inline-condition-param {
            display:flex;
            align-items:center;
            flex:0 0 auto;
            height:27px;
            margin:0;
            padding:0 6px 0 0;
            border:1px solid #bdcddd;
            border-radius:7px;
            color:#60758a;
            background:#fff;
            font-size:.64rem;
            font-weight:850;
        }
        #screener-pane .e-inline-condition-param input {
            width:48px;
            height:25px;
            padding:2px 3px 2px 6px;
            border:0;
            outline:0;
            color:#203b57;
            background:transparent;
            font-size:.75rem;
            font-weight:800;
        }
        #screener-pane .e-inline-condition-param:focus-within { border-color:#176bc0; box-shadow:0 0 0 2px rgba(23,107,192,.13); }
        #screener-pane .e-condition-select > span { flex:0 0 auto; font-size:.72rem; font-weight:850; }
        #screener-pane .e-condition-select select { min-width:0; height:28px; padding-top:2px; padding-bottom:2px; font-size:.69rem; }
        #screener-pane .strategy-auto-applied {
            background:#ffe071!important;
            box-shadow:inset 0 0 0 2px rgba(184,117,0,.72),0 2px 7px rgba(168,108,0,.13)!important;
        }
        #screener-pane .e-condition-chip.strategy-auto-applied {
            border-color:#d89b00!important;
            background:#ffd95a!important;
            box-shadow:inset 0 0 0 1px #bf8300,0 2px 7px rgba(168,108,0,.16)!important;
            padding:4px 5px 4px 8px!important;
        }
        #screener-pane .e-condition-chip.strategy-auto-applied .e-inline-condition-param { border-color:#b57900; background:#fff8dc; }
        #screener-pane .e-condition-chip.strategy-user-edited { padding:4px 5px 4px 8px!important; }

        #screener-pane .result-sort-th { padding:0!important; }
        #screener-pane .result-sort-button {
            display:flex;
            align-items:center;
            justify-content:flex-start;
            gap:4px;
            width:100%;
            min-height:38px;
            padding:.42rem .48rem;
            border:0;
            color:inherit;
            background:transparent;
            font:inherit;
            font-weight:850;
            text-align:left;
            white-space:nowrap;
        }
        #screener-pane .result-sort-button:hover,
        #screener-pane .result-sort-button:focus-visible { color:#0d61aa; background:#e7f2fc; outline:0; }
        #screener-pane .result-sort-button.is-active { color:#075c9f; background:#dceeff; }
        #screener-pane .result-sort-indicator { color:#9aabba; font-size:.65rem; }
        #screener-pane .result-sort-button.is-active .result-sort-indicator { color:#075c9f; }
        #screener-pane .result-page-size { min-width:108px!important; }

        #screener-pane .result-history-bar {
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:10px;
            padding:7px 10px;
            border-bottom:1px solid #eadca7;
            background:#fffbeb;
        }
        #screener-pane .result-history-label strong { display:block; color:#775200; font-size:.73rem; }
        #screener-pane .result-history-label span { display:block; color:#8b7440; font-size:.62rem; }
        #screener-pane .result-history-steps { display:flex; align-items:center; gap:5px; min-width:0; overflow-x:auto; scrollbar-width:thin; }
        #screener-pane .result-history-step {
            display:grid;
            grid-template-columns:20px auto auto;
            align-items:center;
            gap:5px;
            flex:0 0 auto;
            min-height:30px;
            padding:3px 7px 3px 4px;
            border:1px solid #d7b64a;
            border-radius:999px;
            color:#6e520d;
            background:#fff;
            font-size:.66rem;
        }
        #screener-pane .result-history-step > span { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; color:#fff; background:#b27a00; font-weight:900; }
        #screener-pane .result-history-step strong { max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
        #screener-pane .result-history-step em { color:#8d7640; font-style:normal; white-space:nowrap; }
        #screener-pane .result-history-step:not(:disabled):hover { border-color:#a86f00; background:#fff4c2; }
        #screener-pane .result-history-step.is-current { border-color:#1776b9; color:#125987; background:#e9f5ff; opacity:1; }
        #screener-pane .result-history-step.is-current > span { background:#1776b9; }
        #screener-pane .result-history-arrow { color:#a7893d; font-size:1rem; font-weight:900; }

        @media (max-width:767.98px) {
            #screener-pane .e-condition-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
            #screener-pane .e-condition-chip { min-height:40px; }
            #screener-pane .e-condition-toggle { font-size:.68rem; }
            #screener-pane .e-inline-condition-param input { width:40px; }
            #screener-pane .result-history-bar { align-items:stretch; flex-direction:column; }
            #screener-pane .result-history-label span { display:none; }
            #screener-pane .result-history-steps { width:100%; }
        }

        /* V75：筛选步骤统一为“名称在左、数值在右”的紧凑卡片，长文字完整显示。 */
        #screener-pane .e3-layout .e3-grid,
        #screener-pane .e3-layout .e3-grid-6 {
            grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
            gap:6px;
            align-items:stretch;
        }
        #screener-pane .e3-layout .e3-grid > div:not(.e-filter-check-cell) {
            display:grid;
            grid-template-columns:minmax(98px,1.05fr) minmax(108px,1fr);
            align-items:center;
            gap:7px;
            min-width:0;
            min-height:38px;
            padding:4px 5px 4px 9px;
            border:1px solid #d8e4ef;
            border-radius:10px;
            color:#294765;
            background:#f9fbfd;
        }
        #screener-pane .e3-layout .e3-grid > div > .compact-label {
            display:block;
            min-width:0;
            margin:0;
            color:#294765;
            font-size:.71rem;
            font-weight:850;
            line-height:1.2;
            overflow:visible;
            overflow-wrap:anywhere;
            text-overflow:clip;
            white-space:normal;
        }
        #screener-pane .e3-layout .e3-grid > div > .form-control,
        #screener-pane .e3-layout .e3-grid > div > .form-select {
            min-width:0;
            height:29px;
            min-height:29px;
            padding-top:2px;
            padding-bottom:2px;
            font-size:.72rem;
        }
        #screener-pane .e3-layout .e-filter-check-cell {
            display:flex;
            align-items:center;
            min-width:0;
            min-height:38px;
            padding:5px 9px;
            border:1px solid #d8e4ef;
            border-radius:10px;
            color:#294765;
            background:#f9fbfd;
            font-size:.71rem;
        }
        #screener-pane .e3-layout .e-filter-check-cell > label {
            display:flex;
            align-items:center;
            gap:6px;
            width:100%;
            margin:0;
            font-weight:850;
            line-height:1.25;
            overflow:visible;
            overflow-wrap:anywhere;
            white-space:normal;
        }
        #screener-pane .e-condition-grid {
            grid-template-columns:repeat(auto-fit,minmax(235px,1fr));
        }
        #screener-pane .e-condition-chip {
            min-height:40px;
            padding-top:5px;
            padding-bottom:5px;
        }
        #screener-pane .e-condition-toggle {
            flex:1 1 auto;
            font-size:.71rem;
            line-height:1.2;
        }
        #screener-pane .e-condition-toggle > span {
            overflow:visible;
            overflow-wrap:anywhere;
            text-overflow:clip;
            white-space:normal;
        }
        #screener-pane .e-condition-select > span {
            font-size:.71rem;
            white-space:nowrap;
        }
        #screener-pane .e-condition-select select { flex:1 1 auto; width:auto; }
        #screener-pane .e3-layout .e3-grid > div.strategy-auto-applied,
        #screener-pane .e3-layout .e-filter-check-cell.strategy-auto-applied {
            padding:4px 5px 4px 9px!important;
            border-color:#d08d00!important;
            background:#ffe071!important;
            box-shadow:inset 0 0 0 1px #bd7d00,0 2px 7px rgba(168,108,0,.14)!important;
        }
        #screener-pane .e3-layout .e3-grid > div.strategy-user-edited,
        #screener-pane .e3-layout .e-filter-check-cell.strategy-user-edited {
            padding:4px 5px 4px 9px!important;
        }

        @media (max-width:1199.98px) {
            #screener-pane .e3-layout .e3-grid,
            #screener-pane .e3-layout .e3-grid-6 { grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); }
            #screener-pane .e-condition-grid { grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); }
        }
        @media (max-width:767.98px) {
            #screener-pane .e3-layout .e3-grid,
            #screener-pane .e3-layout .e3-grid-6,
            #screener-pane .e-condition-grid { grid-template-columns:1fr!important; }
            #screener-pane .e3-layout .e3-grid > div:not(.e-filter-check-cell) { grid-template-columns:minmax(112px,.95fr) minmax(120px,1.05fr); }
            #screener-pane .e-condition-toggle,
            #screener-pane .e3-layout .e3-grid > div > .compact-label,
            #screener-pane .e3-layout .e-filter-check-cell { font-size:.72rem; }
        }
        @media (max-width:399.98px) {
            #screener-pane .e3-layout .e3-grid > div:not(.e-filter-check-cell) { grid-template-columns:minmax(94px,.9fr) minmax(108px,1.1fr); }
        }
    
