/* SL886 stock screener / StockListWidget — financial terminal table */

.sl886-screener-table-panel {
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
    border: 1px solid var(--sl886-line2, #d7e3f8);
    border-radius: 16px;
    box-shadow: var(--sl886-shadow, 0 8px 22px rgba(17, 52, 110, 0.04));
    overflow: hidden;
    margin-bottom: 1rem;
}

.sl886-screener-table-panel .feed_header {
    margin: 0;
}

.sl886-screener-table-panel .summary {
    margin: 0;
    padding: 0.65rem 1rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--sl886-sub, #38507a);
    background: rgba(244, 248, 255, 0.9);
    border-bottom: 1px solid var(--sl886-line, #e6ecf5);
}

.stock-list-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #b8c9e8 transparent;
}

.stock-list-table-wrap::-webkit-scrollbar {
    height: 8px;
}

.stock-list-table-wrap::-webkit-scrollbar-thumb {
    background: #b8c9e8;
    border-radius: 999px;
}

.stock-list-table-wrap .stock-list-table {
    width: max-content;
    min-width: 100%;
    margin-bottom: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    font-variant-numeric: tabular-nums;
}

/* Header: solid SL886 blue bar (matches navbar / page header chrome) */
.stock-list-table-wrap .stock-list-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    white-space: nowrap;
    vertical-align: middle;
    background: linear-gradient(135deg, var(--sl886-blue, #1f4e9a) 0%, var(--sl886-blue2, #2463c0) 100%);
    color: #fff;
    font-weight: 700;
    font-size: 0.78rem;
    letter-spacing: 0.02em;
    border-top: 0;
    border-bottom: 0;
    padding: 0.72rem 0.8rem;
    box-shadow: 0 2px 6px rgba(17, 52, 110, 0.14);
}

.stock-list-table-wrap .stock-list-table.table-bordered > :not(caption) > thead > tr > th {
    border-color: rgba(255, 255, 255, 0.16);
}

.stock-list-table-wrap .stock-list-table.table-bordered > :not(caption) > thead > tr > th:first-child {
    border-left: 0;
}

.stock-list-table-wrap .stock-list-table.table-bordered > :not(caption) > thead > tr > th:last-child {
    border-right: 0;
}

.stock-list-table-wrap .stock-list-table thead th a {
    color: #fff;
    text-decoration: none;
}

.stock-list-table-wrap .stock-list-table thead th a:hover {
    color: #ffe08a;
}

.stock-list-table-wrap .stock-list-table tbody td {
    padding: 0.58rem 0.8rem;
    border-color: var(--sl886-line, #e6ecf5);
    font-size: 0.9rem;
    vertical-align: middle;
}

.stock-list-table-wrap .stock-list-table tbody tr {
    transition: background 0.16s ease;
}

.stock-list-table-wrap .stock-list-table tbody tr:nth-child(even) {
    background: rgba(247, 249, 253, 0.75);
}

.stock-list-table-wrap .stock-list-table tbody tr:hover {
    background: linear-gradient(90deg, rgba(36, 99, 192, 0.07), rgba(255, 255, 255, 0) 72%);
}

.stock-list-table-wrap .sl-col-nowrap {
    white-space: nowrap;
}

.stock-list-table-wrap .sl-col-name {
    white-space: nowrap;
    min-width: 8rem;
    max-width: 14rem;
    font-weight: 600;
    color: var(--sl886-ink, #10244f);
}

.stock-list-table-wrap .sl-col-desc {
    white-space: normal;
    min-width: 16rem;
    max-width: 30rem;
    vertical-align: top;
    padding-top: 0.65rem;
    padding-bottom: 0.65rem;
}

.stock-list-table-wrap .sl-stock-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 4.1rem;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    border: 1px solid #dbe7ff;
    background: #f3f8ff;
    color: #1e4f9b;
    font-weight: 700;
    font-size: 0.82rem;
    text-decoration: none;
    letter-spacing: 0.02em;
    transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

.stock-list-table-wrap .sl-stock-code:hover {
    background: var(--sl886-blue, #1f4e9a);
    border-color: var(--sl886-blue, #1f4e9a);
    color: #fff;
    transform: translateY(-1px);
}

.stock-list-table-wrap .sl-num {
    font-weight: 700;
    letter-spacing: 0.01em;
}

.stock-list-table-wrap .sl-up {
    color: #1a7a45 !important;
}

.stock-list-table-wrap .sl-down {
    color: #c0392b !important;
}

.stock-list-table-wrap .sl-desc-chips .techdesc > div {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: flex-start;
}

.stock-list-table-wrap .sl-desc-chips .techdesc a.btn {
    margin: 0 !important;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.22rem 0.62rem;
    line-height: 1.35;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(16, 36, 79, 0.08);
    transition: transform 0.14s ease, box-shadow 0.14s ease;
}

.stock-list-table-wrap .sl-desc-chips .techdesc a.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(16, 36, 79, 0.12);
}

.sl886-screener-table-panel .pagination {
    margin: 0;
    padding: 0.75rem 1rem 0.9rem;
    justify-content: center;
    gap: 0.2rem;
}

.sl886-screener-table-panel .pagination .page-link {
    border-radius: 999px;
    min-width: 2.1rem;
    text-align: center;
    color: var(--sl886-ink2, #163c73);
    border-color: var(--sl886-line2, #d7e3f8);
    font-weight: 600;
}

.sl886-screener-table-panel .pagination .page-item.active .page-link {
    background: var(--sl886-blue, #1f4e9a);
    border-color: var(--sl886-blue, #1f4e9a);
}

@media (max-width: 767px) {
    .stock-list-table-wrap .sl-col-desc {
        min-width: 13rem;
        max-width: 22rem;
    }

    .stock-list-table-wrap .stock-list-table tbody td,
    .stock-list-table-wrap .stock-list-table thead th {
        padding-left: 0.55rem;
        padding-right: 0.55rem;
    }
}
