/* School timetable maker: the editable class grid, weekly counts and clash list */
.tt-bell{font-size:13px;font-weight:600;line-height:1.5;margin-top:-2px}
.tt-pick{align-items:end}
.tt-btns{display:flex;flex-wrap:wrap;gap:8px}
.tt-btns .btn{padding:9px 14px;font-size:14px}
.tt-gridwrap{overflow-x:auto;border:2px solid var(--ink);border-radius:var(--r-sm);background:#fff;margin:4px 0 12px;max-width:100%}
.tt-gridwrap:focus-visible{outline:3px solid var(--blue,#0b63f6);outline-offset:2px}
.tt-grid{border-collapse:collapse;font-size:13px;min-width:100%}
.tt-grid th,.tt-grid td{border:1px solid #d5d8e0;padding:3px;text-align:center}
.tt-grid thead th{background:#eef1f8;font-weight:800;line-height:1.1;padding:5px 3px}
.tt-grid thead small{display:block;font-weight:600;font-size:11px;color:var(--ink-2)}
.tt-grid tbody th{font-weight:800;padding:0 8px;background:#f7f8fb}
.tt-grid select{width:100%;min-width:88px;min-height:34px;font:600 12.5px var(--font);border:1.5px solid #b9bfcc;border-radius:8px;padding:4px 2px;background:#fff;color:var(--ink)}
.tt-grid select.tt-clash{border:2.5px solid #b42318;box-shadow:0 0 0 2px #fecaca}
.tt-off{color:#8a90a2;background:#f3f4f6}
.tt-counts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.tt-counts p{flex-basis:100%;margin:0 0 4px;font-size:14px}
.tt-chip{font-size:12.5px;font-weight:600;border:1.5px solid var(--ink);border-radius:999px;padding:3px 10px;background:var(--c,#fff)}
.tt-chip b{margin-left:2px}
.tt-chip.short{border-style:dashed}
.tt-chip.over{border-color:#b42318;color:#7a1610}
.tt-warn ul{margin:4px 0 0;padding-left:20px;font-size:14px}
.tt-warn p{margin:0;font-size:14px}
.tt-chip.ok b{color:#0f6b3a}
