﻿.satloc-results-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px;
    padding: 14px;
    margin: 0 0 14px;
    border: 1px solid #d4dce8;
    border-radius: 4px;
    background: #f5f8fc;
    color: #22418b;
    text-align: left;
}
.satloc-results-controls .results-field { flex: 1 1 170px; min-width: 0; max-width: 320px; }
.satloc-results-controls .results-field:first-child { flex-basis: 260px; }
.satloc-results-controls label { display: block; margin-bottom: 5px; font-size: 13px; font-weight: 600; }
.satloc-results-controls .form-control { width: 100%; margin: 0; height: 36px; color: #263b59; }
.satloc-results-controls button { min-height: 36px; border: 1px solid #bac9dd; background: white; color: #22418b; }
.satloc-results-controls button:focus, .satloc-results-controls input:focus, .satloc-results-controls select:focus {
    outline: 2px solid #337cf2;
    outline-offset: 2px;
}
.satloc-results-controls .results-count { flex: 1 1 160px; padding-bottom: 8px; font-size: 13px; }
.results-filtered-out { display: none !important; }
.satloc-results-table > thead > tr > th,
.satloc-results-table > thead > tr > td {
    position: sticky;
    top: calc(var(--results-header-offset, 0px) + var(--results-header-row-offset, 0px));
    z-index: 3;
    background: #eef3fa;
    background-clip: padding-box;
    box-shadow: 0 1px 0 #bac9dd;
}
.results-empty { padding: 20px; border: 1px dashed #bac9dd; color: #52647b; background: #fafcff; text-align: center; }
.results-empty[hidden], .satloc-results-controls [hidden] { display: none !important; }
[data-results-cards] { display: flex; flex-wrap: wrap; }
[data-results-cards] > [data-result-item] { float: none; }
@media (max-width: 600px) {
    .satloc-results-controls .results-field { flex-basis: 100%; max-width: none; }
    .satloc-results-controls .results-count { flex-basis: 100%; }
}

/* Controls belong to the page, not the table's horizontal scroll area. */
.satloc-results-controls { min-width:0; max-width:100%; box-sizing:border-box; }
.satloc-results-controls > * { min-width:0; max-width:100%; }
.satloc-results-controls .results-count,.satloc-results-controls .selection-notice { overflow-wrap:anywhere; }
.results-scrollbar { width:100%; max-width:100%; height:20px; overflow-x:scroll; overflow-y:hidden; margin-bottom:4px; }
.results-scrollbar-track { height:1px; }
.results-scroll-hint { font-size:12px; color:#52647b; padding:0 2px 4px; }
.results-scrollbar[hidden],.results-scroll-hint[hidden] { display:none!important; }
.results-scrollbar:focus-visible { outline:2px solid #337cf2; outline-offset:2px; }
.standard-page .panel-body > .row > [class*="col-"] { min-width:0; }

.results-scrollbar { scrollbar-color:#7186a3 #e6edf5; }
.results-scrollbar::-webkit-scrollbar { height:14px; }
.results-scrollbar::-webkit-scrollbar-track { background:#e6edf5; }
.results-scrollbar::-webkit-scrollbar-thumb { background:#7186a3; border:2px solid #e6edf5; border-radius:7px; }

/* Companies: fit the available width without concealing any columns. */
.standard-page .companies-fit { overflow:visible; }
#companyListTable { width:100%; table-layout:fixed; }
#companyListTable th,#companyListTable td { white-space:normal; overflow-wrap:anywhere; padding:10px 6px; }
#companyListTable td { width:auto!important; }
#companyListTable th:nth-child(1) { width:16%; }
#companyListTable th:nth-child(2) { width:5%; }
#companyListTable th:nth-child(3) { width:18%; }
#companyListTable th:nth-child(4) { width:11%; }
#companyListTable .table-sort { max-width:100%; white-space:normal; overflow-wrap:anywhere; padding:0; }
#companyListTable th:nth-child(n+5) { font-size:13px; padding:10px 4px; }
#companyListTable td:nth-child(n+5) { text-align:center; }
#companyListTable td a { max-width:100%; }
@media(max-width:900px) {
 #companyListTable { display:block; border:0; }
 #companyListTable thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 #companyListTable tbody { display:block; width:100%; }
 #companyListTable tbody tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:16px; border:1px solid #bac9dd; background:#fff; }
 #companyListTable tbody td { display:block; min-width:0; border:0; border-bottom:1px solid #e1e7ef; padding:8px 12px; }
 #companyListTable tbody td:nth-child(-n+4) { grid-column:1/-1; text-align:left; }
 #companyListTable tbody td::before { content:attr(data-label); display:block; font-size:12px; font-weight:600; color:#52647b; margin-bottom:4px; }
 #companyListTable tbody td:nth-child(n+5) a { display:flex; min-height:44px; align-items:center; justify-content:center; }
 #companyListTable [hidden] { display:none!important; }
}
