/* Match the collapsible Tasks heading to every other dashboard panel. */
.panel.task > .dashboard-task-fold > summary {
  margin: 0;
  padding: 14px 17px;
  border-top: 4px solid #861f41;
  border-bottom: 1px solid #dce1e6;
  border-radius: 9px 9px 0 0;
  font-size: 17px;
  line-height: 1.45;
}
.panel.task > .dashboard-task-fold > .dashboard-task-fold-body { padding-top: 0; }

/* Laundry has its own student-only intake instead of the general assignment box. */
.laundry-assignments { display: none; }
.add-form:has(select[name="item_type"] option[value="laundry"]:checked) > .general-assignees,
.add-form:has(select[name="item_type"] option[value="practice"]:checked) > .general-assignees { display: none; }
.add-form:has(select[name="item_type"] option[value="laundry"]:checked) > .laundry-assignments { display: block; }
.laundry-student-options {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 5px 12px;
  margin-top: 9px;
}
.laundry-student-options label { display: flex; align-items: center; gap: 6px; padding: 5px 3px; font-size: 12px; font-weight: 600; }
.laundry-student-options input { flex: 0 0 auto; width: auto!important; margin: 0!important; }
.laundry-student-options small { color: #67717c; font-size: 10px; font-weight: 700; }

/* Full team-by-day roster. */
.panel.laundry .badge { display: none; }
.laundry-day-roster { display: flex; flex-wrap: wrap; gap: 5px; margin: 8px 0 2px; }
.laundry-day-roster > span { padding: 4px 8px; border-radius: 14px; background: #eef2f5; color: #33404b; font-size: 11px; font-weight: 700; }
.laundry-day-roster > .is-current-user { background: #861f41; color: #fff; outline: 2px solid #e87722; }
.laundry-day-roster small { margin-left: 4px; color: inherit; font-size: 9px; text-transform: uppercase; }

/* Personal schedule shows the student's category, while the crew panel shows everyone. */
.laundry-personal-assignment { display: none; }
.panel.schedule .item:has(.laundry-personal-assignment) .badge,
.panel.schedule .item:has(.laundry-personal-assignment) .laundry-day-roster { display: none; }
.panel.schedule .laundry-personal-assignment { display: inline-flex; gap: 7px; align-items: center; margin: 5px 0; }
.panel.schedule .laundry-personal-assignment strong { color: #861f41; }
.panel.schedule .laundry-badge { font-size: 0; }
.panel.schedule .laundry-badge::after { content: "Your laundry assignment"; font-size: 10px; }
.panel.laundry .laundry-personal-assignment { display: none; }

@media(max-width:760px) { .laundry-student-options { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:430px) { .laundry-student-options { grid-template-columns: 1fr; } }
