.mechanical-schedule{margin-top:1rem}
.mechanical-schedule-item{min-width:0;align-content:start;gap:6px}
.mechanical-schedule-item .mechanical-time{white-space:normal;line-height:1.5}
.mechanical-schedule-events{display:grid;gap:6px;list-style:none;padding:8px 0 0;margin:2px 0 0;border-top:1px solid var(--line)}
.mechanical-schedule-events li{font-size:.82rem;font-weight:600;line-height:1.45;color:var(--ink);overflow-wrap:anywhere}
.mechanical-review-summary{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin-top:1rem}
.mechanical-review-summary button{font-size:.875rem}
.mechanical-student-panel{padding:1.25rem;margin:1rem 0}
.mechanical-student-panel .conflict-list{margin-bottom:1rem}
.mechanical-block-form{display:grid;grid-template-columns:minmax(140px,1fr) minmax(180px,1.5fr) auto;gap:.6rem;align-items:center;padding:.85rem 0;border-top:1px solid var(--border)}
.mechanical-block-form label{font-size:.875rem;font-weight:600}
.mechanical-block-form select{width:100%;max-width:none;min-width:0;min-height:40px;font-size:.875rem}
.mechanical-block-form .mechanical-current,.mechanical-block-form [data-build-status]{grid-column:1/-1;font-size:.875rem;color:var(--muted)}
.mechanical-block-form [data-build-status][role=alert]{color:var(--red,#b42318)}
.mechanical-conflict-student{padding:.65rem .85rem;border:1px solid var(--border);border-radius:.6rem;text-align:left;background:var(--surface,#fff);color:var(--text);font:inherit;cursor:pointer}
.mechanical-conflict-student span{display:block;font-size:.875rem;color:var(--muted);margin-top:.3rem}
.mechanical-event-review{display:grid;gap:.5rem;margin-top:.85rem}
.build-availability-bin.is-not-scheduled{opacity:.65}
.mechanical-bin-label{display:block;min-height:1.4rem;font-size:.875rem;font-weight:600}
.build-availability-bin.is-scheduled .mechanical-bin-label{color:var(--text)}
.mechanical-student-panel .notice{margin-bottom:.8rem}
@media(max-width:700px){.mechanical-schedule .mechanical-schedule-item{flex:0 0 220px}}
@media(max-width:600px){.block-schedule-card .block-schedule-item span{white-space:normal}}
@media(max-width:640px){.mechanical-block-form{grid-template-columns:1fr}.mechanical-block-form .mechanical-current,.mechanical-block-form [data-build-status]{grid-column:1}.mechanical-student-panel{padding:1rem}}
