/* Sort controls use the same columns as the records below them. */
.sort-link { display:inline-flex; align-items:center; gap:6px; padding:8px 0; color:var(--ink); font:inherit; text-decoration:none; text-transform:none; letter-spacing:0; line-height:1.4; }
.sort-link:hover { color:var(--green); text-decoration:underline; text-underline-offset:3px; }
.sort-link:focus-visible { outline:2px solid var(--green); outline-offset:3px; border-radius:3px; }
.sort-indicator { color:var(--muted); font-size:12px; flex-shrink:0; }
.sort-link[data-sort-direction="ascending"],.sort-link[data-sort-direction="descending"] { font-weight:600; }
.sort-link[data-sort-direction="ascending"] .sort-indicator,.sort-link[data-sort-direction="descending"] .sort-indicator { color:var(--green); }
th:has(.sort-link) { padding-top:7px; padding-bottom:7px; }
.sort-grid-header { font-size:12px; color:var(--muted); background:#f7f9f3; border-bottom:1px solid var(--line); }
.sort-labels { display:flex; align-items:center; flex-wrap:wrap; gap:2px 14px; }
.project-list-header { display:grid; grid-template-columns:minmax(180px,1.8fr) 90px minmax(130px,1fr) 105px 24px; gap:20px; padding:8px 20px; align-items:center; }
.crm-header { display:grid; grid-template-columns:minmax(160px,1.2fr) minmax(160px,1.2fr) minmax(130px,.8fr); gap:16px; padding:8px 20px; }
.outlook-header { display:grid; grid-template-columns:minmax(140px,1.1fr) minmax(210px,1.5fr) minmax(140px,1fr) 160px; gap:18px; padding:8px 20px; align-items:center; }
.activity-sort-header { padding:6px 16px; margin-bottom:18px; gap:8px 28px; }
.site-project-header { padding:8px 0; }
@media(min-width:1101px) {
 .planting-row,.planting-list-header { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1.2fr) minmax(0,1.2fr) 85px 24px; gap:20px; padding:18px 20px; align-items:center; }
 .has-selection .planting-row,.has-selection .planting-list-header { grid-template-columns:18px minmax(0,1.5fr) minmax(0,1.2fr) minmax(0,1.2fr) 85px 24px; }
 .planting-list-header { padding-top:8px; padding-bottom:8px; }
 .planting-list-header .planting-state::before { content:none; }
 .site-project-row,.site-project-header { display:grid; grid-template-columns:minmax(0,1fr) 100px 130px 110px; gap:16px; }
}
@media(max-width:1100px) {
 .sort-grid-header { display:none; }
}
