/* Daily client sweep. HQ tokens. */
.sw{display:grid;gap:var(--space-3,16px)}
.sw-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
.sw-progress{margin:0;font-size:15px}
.sw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3,16px)}
.sw-card{padding:var(--space-3,16px) var(--space-4,21px);border-radius:var(--radius-panel,16px);display:grid;gap:10px;align-content:start}
.sw-card.done{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}
.sw-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sw-card h2{font-size:var(--text-title,19px);margin:0}
.sw-state{margin:0;text-align:right}
.sw-ok{color:var(--accent);font-weight:600}.sw-todo{color:var(--warning);font-weight:600}
.sw-counts{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px 12px;margin:0}
.sw-counts div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:4px 0}
.sw-counts dt{color:var(--muted);font-size:12px}.sw-counts dd{margin:0;font-weight:650}
.sw-oldest{margin:0;overflow-wrap:anywhere}
.sw-actions{display:flex;flex-wrap:wrap;gap:8px}.sw-actions .button{min-height:44px}
.sw-week,.sw-settings{padding:var(--space-3,16px) var(--space-4,21px);border-radius:var(--radius-panel,16px)}
.sw-table-wrap{overflow-x:auto}
.sw-table{border-collapse:collapse;width:100%;min-width:520px}
.sw-table th,.sw-table td{padding:8px;border-bottom:1px solid var(--line);text-align:center}
.sw-table th[scope=row]{text-align:left;font-weight:600}
.sw-table td.yes{color:var(--accent);font-weight:700}.sw-table td.no{color:var(--warning)}.sw-table .off{opacity:.5}
.sw-edit{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}
.sw-edit li{display:grid;grid-template-columns:140px 1fr 1fr auto;gap:8px}
.sw-edit input{min-height:40px}
.sw-days{display:flex;flex-wrap:wrap;gap:12px;border:0;padding:0;margin:12px 0}
.sw-days legend{font-weight:650;margin-bottom:6px}
.sw-days label,.sw-times label{display:flex;align-items:center;gap:6px;margin:0;font-weight:500;font-size:14px}
.sw-times{display:flex;flex-wrap:wrap;gap:16px}
.sw-save{display:flex;justify-content:flex-end}.sw-save .button{min-height:44px}
@media (max-width:600px){.sw-grid{grid-template-columns:1fr}.sw-edit li{grid-template-columns:1fr 1fr}.sw-edit li .sw-scope{grid-column:1/3}.sw-card header{flex-direction:column}.sw-state{text-align:left}}
