/* DEWPOINT_BSR_R1_2_REASON_FILTER — scoped report overlay, no schedule layout/booking overrides. */
.pm-cs-r124-page .dp-bsr-open {
  border-color: #b7e6e6;
  background: #f1fbfc;
  color: #087c80;
  min-height: 40px;
  white-space: nowrap;
  font-weight: 800;
}
.pm-cs-r124-page .dp-bsr-open:hover { background: #dff7f7; border-color: #20D5D2; }
.pm-cs-r124-page .dp-bsr-open:focus-visible { outline: 2px solid #10C6C6; outline-offset: 2px; }
.dp-bsr-overlay, .dp-bsr-overlay * { box-sizing: border-box; }
.dp-bsr-overlay {
  position: fixed; inset: 0; z-index: 300000;
  display: flex; align-items: center; justify-content: center;
  padding: 18px; background: rgba(7, 24, 39, .68);
  color: #132a3b; font-family: inherit;
}
.dp-bsr-dialog {
  display: flex; flex-direction: column; width: min(1160px, 100%);
  max-height: min(94vh, 900px); min-height: 270px;
  border: 1px solid #dce8ed; border-radius: 16px;
  background: #fff; box-shadow: 0 28px 80px rgba(0, 24, 32, .25);
  overflow: hidden;
}
.dp-bsr-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 21px 24px; border-bottom: 1px solid #e5edef; }
.dp-bsr-header h2 { margin: 0; font-size: 22px; font-weight: 850; letter-spacing: -.03em; color: #112e3d; }
.dp-bsr-header p { margin: 5px 0 0; color: #6e8798; font-size: 12px; }
.dp-bsr-close { border: 1px solid #d5e4e9; border-radius: 8px; min-width: 36px; min-height: 36px; font: inherit; font-size: 18px; background: #fff; color: #587181; cursor: pointer; }
.dp-bsr-close:hover { background: #f5fafb; }
.dp-bsr-filters { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(120px, 1fr) minmax(155px, 1.15fr) minmax(160px, 1.2fr) auto; align-items: end; gap: 10px; padding: 16px 24px; background: #f7fbfc; border-bottom: 1px solid #e3ebef; }
.dp-bsr-field { display: flex; flex-direction: column; gap: 5px; color: #435f70; font-size: 11px; font-weight: 800; }
.dp-bsr-field input, .dp-bsr-field select { border: 1px solid #ccdde4; border-radius: 8px; background: #fff; padding: 9px 10px; height: 39px; width: 100%; min-width: 0; color: #133446; font: inherit; font-size: 13px; }
.dp-bsr-apply, .dp-bsr-export { height: 39px; border-radius: 8px; border: 1px solid #0cafaf; background: #20D5D2; padding: 0 16px; color: #073b40; font: inherit; font-size: 12px; font-weight: 850; white-space: nowrap; cursor: pointer; }
.dp-bsr-export { background: #fff; }
.dp-bsr-apply:hover:not(:disabled), .dp-bsr-export:hover:not(:disabled) { background: #10C6C6; }
.dp-bsr-apply:disabled, .dp-bsr-export:disabled { opacity: .5; cursor: not-allowed; }
.dp-bsr-close:focus-visible, .dp-bsr-apply:focus-visible, .dp-bsr-export:focus-visible, .dp-bsr-field input:focus-visible, .dp-bsr-field select:focus-visible { outline: 2px solid #087c80; outline-offset: 2px; }
.dp-bsr-summary { min-height: 36px; padding: 11px 24px; color: #547084; font-size: 12px; font-weight: 750; }
.dp-bsr-error { color: #ae3444; }
.dp-bsr-table-wrap { overflow: auto; flex: 1 1 auto; min-height: 96px; margin: 0 24px; border: 1px solid #e1e9ed; border-radius: 9px; }
.dp-bsr-table { width: 100%; border-collapse: collapse; font-size: 12px; line-height: 1.4; }
.dp-bsr-table th { position: sticky; top: 0; background: #eff7f9; text-align: left; color: #587283; font-size: 10px; letter-spacing: .02em; text-transform: uppercase; white-space: nowrap; padding: 11px 12px; border-bottom: 1px solid #dbe7eb; }
.dp-bsr-table td { padding: 12px; border-bottom: 1px solid #ecf1f3; vertical-align: top; color: #2d4c5c; }
.dp-bsr-table tr:last-child td { border-bottom: 0; }
.dp-bsr-table td:first-child, .dp-bsr-table td:nth-child(3) { white-space: nowrap; }
.dp-bsr-table td:nth-child(4) { font-weight: 760; color: #1f3c50; }
.dp-bsr-chip { display: inline-block; border-radius: 999px; padding: 4px 8px; font-size: 10px; font-weight: 800; white-space: nowrap; background: #edf2f6; color: #547184; }
.dp-bsr-chip.future { background: #e8fbfa; color: #087c80; }
.dp-bsr-empty { padding: 42px 20px; text-align: center; color: #668092; font-size: 13px; }
.dp-bsr-footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 24px 20px; }
.dp-bsr-footer p { max-width: 700px; margin: 0; font-size: 11px; color: #6f8798; line-height: 1.5; }
/* Keep all four filters readable on tablet-sized windows. */
@media (min-width: 751px) and (max-width: 1000px) {
  .dp-bsr-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dp-bsr-apply { grid-column: 1 / -1; }
}
@media (max-width: 750px) {
  .dp-bsr-overlay { padding: 8px; align-items: flex-end; }
  .dp-bsr-dialog { width: 100%; max-height: 94vh; border-radius: 12px; }
  .dp-bsr-header { padding: 15px; }
  .dp-bsr-header h2 { font-size: 19px; }
  .dp-bsr-filters { grid-template-columns: 1fr 1fr; padding: 13px 15px; }
  .dp-bsr-field:nth-child(3), .dp-bsr-field:nth-child(4) { grid-column: 1 / -1; }
  .dp-bsr-apply { grid-column: 1 / -1; }
  .dp-bsr-summary { padding: 10px 15px; }
  .dp-bsr-table-wrap { margin: 0 15px; }
  .dp-bsr-table { min-width: 840px; }
  .dp-bsr-footer { padding: 13px 15px 17px; flex-wrap: wrap; }
  .dp-bsr-export { width: 100%; }
}
