/* Settings module styles (builds on base.css tokens). */

.settings-body { max-width: 860px; margin: 0 auto; }
.settings-footer { position: sticky; bottom: -20px; padding: 14px 0; background: linear-gradient(transparent, var(--surface) 30%); display: flex; justify-content: flex-end; }

.hours-editor { display: flex; flex-direction: column; gap: 8px; }
.hours-row { display: grid; grid-template-columns: 160px 1fr; align-items: center; gap: 12px; min-height: 32px; }
.hours-ranges { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.hours-ranges .input-sm { width: 112px; }
@media (max-width: 640px) { .hours-row { grid-template-columns: 1fr; gap: 4px; } }

.member-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 6px 12px; max-height: 260px; overflow-y: auto; padding: 2px; }
.member-choice { display: flex; align-items: center; gap: 8px; padding: 4px 6px; border-radius: 6px; cursor: pointer; font-size: 13.5px; min-width: 0; }
.member-choice:hover { background: var(--hover); }

.settings-list { display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--surface); overflow: hidden; }
.settings-list-row { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--divider); min-width: 0; }
.settings-list-row:last-child { border-bottom: 0; }
.settings-list-row:hover { background: var(--surface-2); }
.code-block { font-family: var(--mono); font-size: 12px; background: var(--surface-3); border: 1px solid var(--border); border-radius: var(--radius); padding: 10px 12px; white-space: pre-wrap; word-break: break-all; color: var(--text); }
