
/* ------------------------------------------------ team working-hours tab */
.th-list { display: flex; flex-direction: column; }
.th-row { display: grid; grid-template-columns: 200px auto auto 1fr; gap: 18px;
    align-items: center; padding: 12px 0; border-bottom: 1px solid var(--color-border); }
.th-row:last-child { border-bottom: 0; }
.th-row.is-readonly { opacity: .88; }
.th-name { font-weight: 600; }
.th-sub { font-size: 11.5px; color: var(--color-text-tertiary); margin-top: 2px; }
.th-days { display: inline-flex; gap: 4px; }
.th-day { width: 30px; height: 30px; border-radius: 6px; border: 1px solid var(--color-border);
    background: var(--color-bg-primary); color: var(--color-text-tertiary);
    font-size: 12px; font-weight: 650; cursor: pointer; }
.th-day.on { background: var(--color-primary-light, #e6f4f6); color: var(--color-primary);
    border-color: var(--color-primary); }
.th-day:disabled { cursor: default; }
.th-day:focus-visible { outline: 2px solid var(--color-border-focus); outline-offset: 1px; }
.th-times { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.th-time { border: 1px solid var(--color-border); border-radius: 6px; padding: 5px 8px;
    font: inherit; font-size: 13px; background: var(--color-bg-primary);
    color: var(--color-text-primary); }
.th-time:focus-visible { outline: 2px solid var(--color-border-focus); }
.th-dash { color: var(--color-text-tertiary); }
.th-save { text-align: right; }
@media (max-width: 900px) { .th-row { grid-template-columns: 1fr; gap: 8px; } .th-save { text-align: left; } }
