/* Shared filter rhythm and action hierarchy across dashboard sections. */
.block-mwa-dashboard-app #page-classlist .cl-filter-bar,
.block-mwa-dashboard-app #page-activities .act-filter-row,
.block-mwa-dashboard-app #page-grades .gr-filter-row,
.block-mwa-dashboard-app #page-heatmap .hm-filter-panel,
.block-mwa-dashboard-app #page-interventions .int2-filters-bar,
.block-mwa-dashboard-app #page-teacherfeedback .fr-toolbar {
  align-items: flex-end;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(19, 36, 74, .045);
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 10px 12px;
}

.block-mwa-dashboard-app #page-heatmap .hm-filter-panel {
  display: block;
}

.block-mwa-dashboard-app #page-heatmap .hm-filter-grid {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.block-mwa-dashboard-app #page-classlist .cl-filter-group,
.block-mwa-dashboard-app #page-classlist .cl-filter-group-main,
.block-mwa-dashboard-app #page-activities .act-filter-group,
.block-mwa-dashboard-app #page-grades .gr-filter-group,
.block-mwa-dashboard-app #page-heatmap .hm-filter-group,
.block-mwa-dashboard-app #page-interventions .int2-filter-group,
.block-mwa-dashboard-app #page-teacherfeedback .fr-filter {
  display: flex;
  flex: 1 1 170px;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  min-width: 150px;
}

.block-mwa-dashboard-app #page-classlist .cl-filter-label,
.block-mwa-dashboard-app #page-activities .act-filter-label,
.block-mwa-dashboard-app #page-grades .gr-filter-label,
.block-mwa-dashboard-app #page-heatmap .hm-filter-label,
.block-mwa-dashboard-app #page-interventions .int2-filter-label,
.block-mwa-dashboard-app #page-teacherfeedback .fr-filter label {
  color: #46516a;
  font-size: .67rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  margin: 0;
  text-transform: none;
}

.block-mwa-dashboard-app #page-classlist .cl-filter-bar input,
.block-mwa-dashboard-app #page-classlist .cl-filter-bar select,
.block-mwa-dashboard-app #page-activities .act-filter-row input,
.block-mwa-dashboard-app #page-activities .act-filter-row select,
.block-mwa-dashboard-app #page-activities .act-dd-toggle,
.block-mwa-dashboard-app #page-grades .gr-filter-row input,
.block-mwa-dashboard-app #page-grades .gr-filter-row select,
.block-mwa-dashboard-app #page-grades .gr-dd-toggle,
.block-mwa-dashboard-app #page-heatmap .hm-filter-panel input,
.block-mwa-dashboard-app #page-heatmap .hm-filter-panel select,
.block-mwa-dashboard-app #page-interventions .int2-filters-bar input,
.block-mwa-dashboard-app #page-interventions .int2-filters-bar select,
.block-mwa-dashboard-app #page-interventions .int2-dd-toggle,
.block-mwa-dashboard-app #page-teacherfeedback .fr-toolbar input,
.block-mwa-dashboard-app #page-teacherfeedback .fr-toolbar select {
  background: #fff;
  border: 1px solid var(--line2);
  border-radius: 8px;
  box-shadow: none;
  color: var(--text);
  font-size: .76rem;
  height: 36px;
  min-height: 36px;
  outline: 0;
  padding-bottom: 0;
  padding-top: 0;
  transition: border-color .15s, box-shadow .15s, background .15s;
}

.block-mwa-dashboard-app #page-classlist .cl-filter-bar input:focus,
.block-mwa-dashboard-app #page-classlist .cl-filter-bar select:focus,
.block-mwa-dashboard-app #page-activities .act-filter-row input:focus,
.block-mwa-dashboard-app #page-activities .act-filter-row select:focus,
.block-mwa-dashboard-app #page-activities .act-dd:focus-within .act-dd-toggle,
.block-mwa-dashboard-app #page-grades .gr-filter-row input:focus,
.block-mwa-dashboard-app #page-grades .gr-filter-row select:focus,
.block-mwa-dashboard-app #page-grades .gr-dd:focus-within .gr-dd-toggle,
.block-mwa-dashboard-app #page-heatmap .hm-filter-panel input:focus,
.block-mwa-dashboard-app #page-heatmap .hm-filter-panel select:focus,
.block-mwa-dashboard-app #page-interventions .int2-filters-bar input:focus,
.block-mwa-dashboard-app #page-interventions .int2-filters-bar select:focus,
.block-mwa-dashboard-app #page-interventions .int2-dd:focus-within .int2-dd-toggle,
.block-mwa-dashboard-app #page-teacherfeedback .fr-toolbar input:focus,
.block-mwa-dashboard-app #page-teacherfeedback .fr-toolbar select:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px var(--blue-dim);
}

.block-mwa-dashboard-app select:has(option:checked:not([value=""]):not([value="all"]):not([value="todos"])),
.block-mwa-dashboard-app .gr-filter-row .gr-tab.active,
.block-mwa-dashboard-app .int2-dd-option.is-selected,
.block-mwa-dashboard-app .act-dd-option.is-selected,
.block-mwa-dashboard-app .gr-dd-option.is-selected {
  background-color: #eef5ff;
  border-color: #8bb8e4;
  color: #245f9f;
}

.block-mwa-dashboard-app #page-heatmap .hm-date-filters button {
  align-items: center;
  border: 1px solid var(--line2);
  border-radius: 8px;
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  height: 36px;
  justify-content: center;
  min-height: 36px;
  padding: 0 12px;
}

.block-mwa-dashboard-app #page-heatmap .hm-date-filters .btn-accent {
  background: #eef5ff;
  border-color: #8bb8e4;
  color: #245f9f;
}

.block-mwa-dashboard-app #page-activities .act-search-wrap,
.block-mwa-dashboard-app #page-heatmap .hm-search-wrap {
  align-items: center;
  background: #fff;
  border: 1px solid var(--line2);
  border-radius: 8px;
  box-shadow: none;
  display: flex;
  gap: 8px;
  height: 36px;
  min-height: 36px;
  margin: 0;
  padding: 0 10px;
  width: 100%;
}

.block-mwa-dashboard-app #page-heatmap .hm-filter-select {
  border-radius: 8px !important;
  box-sizing: border-box;
  height: 36px !important;
  margin: 0;
  min-height: 36px !important;
}

.block-mwa-dashboard-app #page-heatmap .hm-filter-grid > .hm-filter-group {
  align-self: stretch;
  justify-content: flex-end;
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap,
.block-mwa-dashboard-app #page-grades .gr-search-wrap,
.block-mwa-dashboard-app #page-interventions .int2-search-wrap {
  align-items: center;
  align-self: end;
  background: #fff;
  border: 1px solid var(--line2);
  border-radius: 8px;
  box-shadow: none;
  box-sizing: border-box;
  display: flex;
  gap: 8px;
  height: 36px;
  margin: 0;
  min-height: 36px;
  min-width: 0;
  padding: 0 10px;
  position: relative;
  width: 100%;
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap .cl-search,
.block-mwa-dashboard-app #page-grades .gr-search-wrap .gr-search,
.block-mwa-dashboard-app #page-interventions .int2-search-wrap .int2-search-input {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  flex: 1 1 auto;
  height: 34px;
  margin: 0;
  min-height: 34px;
  min-width: 0;
  outline: 0;
  padding: 0;
  width: 100%;
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap > span,
.block-mwa-dashboard-app #page-grades .gr-search-icon,
.block-mwa-dashboard-app #page-interventions .int2-search-icon {
  color: #7894b5;
  display: inline-flex;
  flex: 0 0 16px;
  height: 16px;
  opacity: 1;
  order: -1;
  pointer-events: none;
  position: static;
  transform: none;
  width: 16px;
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap .mwa-ui-icon,
.block-mwa-dashboard-app #page-grades .gr-search-wrap .mwa-ui-icon,
.block-mwa-dashboard-app #page-interventions .int2-search-wrap .mwa-ui-icon {
  height: 16px;
  width: 16px;
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap:focus-within,
.block-mwa-dashboard-app #page-grades .gr-search-wrap:focus-within,
.block-mwa-dashboard-app #page-interventions .int2-search-wrap:focus-within {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px var(--blue-dim);
}

.block-mwa-dashboard-app #page-classlist .cl-search-wrap .cl-search:focus,
.block-mwa-dashboard-app #page-grades .gr-search-wrap .gr-search:focus,
.block-mwa-dashboard-app #page-interventions .int2-search-wrap .int2-search-input:focus {
  border: 0;
  box-shadow: none;
}

.block-mwa-dashboard-app #page-grades .gr-filter-row .gr-search-wrap .gr-search,
.block-mwa-dashboard-app #page-grades .gr-filter-row .gr-search-wrap .gr-search:focus {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: 34px !important;
  margin: 0 !important;
  min-height: 34px !important;
  outline: 0 !important;
  padding: 0 !important;
}

.block-mwa-dashboard-app #page-activities .act-search-wrap input,
.block-mwa-dashboard-app #page-heatmap .hm-search-wrap input {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  flex: 1 1 auto;
  height: 34px;
  min-height: 34px;
  min-width: 0;
  outline: 0;
  padding: 0;
}

.block-mwa-dashboard-app #page-activities .act-search-wrap input:focus,
.block-mwa-dashboard-app #page-heatmap .hm-search-wrap input:focus {
  border: 0;
  box-shadow: none;
}

.block-mwa-dashboard-app #page-activities .act-search-wrap:focus-within,
.block-mwa-dashboard-app #page-heatmap .hm-search-wrap:focus-within {
  border-color: var(--blue);
  box-shadow: 0 0 0 3px var(--blue-dim);
}

.block-mwa-dashboard-app #page-heatmap .hm-search-wrap > span,
.block-mwa-dashboard-app #page-activities .act-search-wrap > span {
  align-items: center;
  display: inline-flex;
  flex: 0 0 16px;
  font-size: .8rem;
  height: 16px;
  justify-content: center;
  line-height: 1;
  width: 16px;
}

.block-mwa-dashboard-app #page-activities .act-clear-btn,
.block-mwa-dashboard-app #page-grades .gr-clear-btn,
.block-mwa-dashboard-app #page-classlist .cl-filter-clear-btn,
.block-mwa-dashboard-app #page-heatmap .hm-clear-filters,
.block-mwa-dashboard-app #page-interventions .int2-clear-btn,
.block-mwa-dashboard-app #page-teacherfeedback .fr-clear,
.block-mwa-dashboard-app #page-grades .gr-export-btn,
.block-mwa-dashboard-app #page-interventions .int2-export-btn,
.block-mwa-dashboard-app #page-teacherfeedback .fr-export {
  align-items: center;
  background: #fff;
  border: 1px solid var(--line2);
  border-radius: 8px;
  box-shadow: none;
  cursor: pointer;
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  gap: 7px;
  height: 36px;
  justify-content: center;
  line-height: 1;
  margin: 0;
  min-height: 36px;
  padding: 0 12px;
  white-space: nowrap;
}

.block-mwa-dashboard-app #page-grades .gr-header-export-btn {
  align-items: center;
  align-self: flex-start;
  background: #fff;
  border: 1px solid #9bcdb4;
  border-radius: 8px;
  box-shadow: none;
  color: #247a55;
  cursor: pointer;
  display: inline-flex;
  font-size: .74rem;
  font-weight: 800;
  gap: 7px;
  height: 36px;
  justify-content: center;
  margin-top: 0;
  padding: 0 12px;
  white-space: nowrap;
}

.block-mwa-dashboard-app #page-grades .gr-header-export-btn:hover {
  background: #eef9f3;
  border-color: #5dac82;
  color: #17623f;
}

.block-mwa-dashboard-app #page-grades .gr-header-export-btn > span:first-child {
  font-size: 1rem;
  line-height: 1;
}

.block-mwa-dashboard-app #page-activities .act-clear-btn,
.block-mwa-dashboard-app #page-grades .gr-clear-btn,
.block-mwa-dashboard-app #page-classlist .cl-filter-clear-btn,
.block-mwa-dashboard-app #page-heatmap .hm-clear-filters,
.block-mwa-dashboard-app #page-interventions .int2-clear-btn,
.block-mwa-dashboard-app #page-teacherfeedback .fr-clear {
  color: #667085;
}

.block-mwa-dashboard-app #page-activities .act-clear-btn:hover,
.block-mwa-dashboard-app #page-grades .gr-clear-btn:hover,
.block-mwa-dashboard-app #page-classlist .cl-filter-clear-btn:hover,
.block-mwa-dashboard-app #page-heatmap .hm-clear-filters:hover,
.block-mwa-dashboard-app #page-interventions .int2-clear-btn:hover,
.block-mwa-dashboard-app #page-teacherfeedback .fr-clear:hover {
  background: #fff6f5;
  border-color: #db7771;
  color: #b5473f;
}

.block-mwa-dashboard-app #page-grades .gr-export-btn,
.block-mwa-dashboard-app #page-interventions .int2-export-btn,
.block-mwa-dashboard-app #page-teacherfeedback .fr-export {
  border-color: #9bcdb4;
  color: #247a55;
}

.block-mwa-dashboard-app #page-grades .gr-export-btn:hover,
.block-mwa-dashboard-app #page-interventions .int2-export-btn:hover,
.block-mwa-dashboard-app #page-teacherfeedback .fr-export:hover {
  background: #eef9f3;
  border-color: #5dac82;
  color: #17623f;
}

.block-mwa-dashboard-app #page-activities .act-clear-btn svg,
.block-mwa-dashboard-app #page-grades .gr-clear-btn svg,
.block-mwa-dashboard-app #page-grades .gr-export-btn svg,
.block-mwa-dashboard-app #page-classlist .cl-filter-clear-btn svg,
.block-mwa-dashboard-app #page-heatmap .hm-clear-filters svg,
.block-mwa-dashboard-app #page-interventions .int2-clear-btn svg,
.block-mwa-dashboard-app #page-interventions .int2-export-btn svg,
.block-mwa-dashboard-app #page-teacherfeedback .fr-clear svg,
.block-mwa-dashboard-app #page-teacherfeedback .fr-export svg {
  height: 15px;
  width: 15px;
}

@media (max-width: 720px) {
  .block-mwa-dashboard-app #page-classlist .cl-filter-group,
  .block-mwa-dashboard-app #page-classlist .cl-filter-group-main,
  .block-mwa-dashboard-app #page-activities .act-filter-group,
  .block-mwa-dashboard-app #page-grades .gr-filter-group,
  .block-mwa-dashboard-app #page-heatmap .hm-filter-group,
  .block-mwa-dashboard-app #page-interventions .int2-filter-group,
  .block-mwa-dashboard-app #page-teacherfeedback .fr-filter {
    flex-basis: 100%;
    min-width: 0;
    width: 100%;
  }

  .block-mwa-dashboard-app #page-activities .act-clear-btn,
  .block-mwa-dashboard-app #page-grades .gr-clear-btn,
  .block-mwa-dashboard-app #page-grades .gr-export-btn,
  .block-mwa-dashboard-app #page-classlist .cl-filter-clear-btn,
  .block-mwa-dashboard-app #page-heatmap .hm-clear-filters,
  .block-mwa-dashboard-app #page-interventions .int2-clear-btn,
  .block-mwa-dashboard-app #page-interventions .int2-export-btn,
  .block-mwa-dashboard-app #page-teacherfeedback .fr-clear,
  .block-mwa-dashboard-app #page-teacherfeedback .fr-export {
    width: 100%;
  }

  .block-mwa-dashboard-app #page-grades .gr-header-export-btn {
    width: 100%;
  }
}
