.npvd {
  all: initial;
  box-sizing: border-box;
  display: block;
  container: npvd / inline-size;
  width: 100%;
  max-width: 1150px;
  margin: 0 auto;
  padding: 16px;
  border: 1px solid #D5E1EA;
  border-radius: 16px;
  background: #FEFEFE;
  color: #3D5A80;
  box-shadow: 0 16px 48px rgb(15 43 65 / 12%);
  font: 500 12px/1.45 Montserrat, Arial, sans-serif;
  font-synthesis: none;
  text-align: left;
  direction: ltr;
  color-scheme: light;
  overflow-wrap: break-word;
}
.npvd *, .npvd *::before, .npvd *::after { box-sizing: border-box; }
.npvd h2, .npvd h3, .npvd p, .npvd ul, .npvd dl, .npvd dd, .npvd form, .npvd fieldset, .npvd legend {
  margin: 0; padding: 0; border: 0; font-family: inherit; letter-spacing: normal; text-transform: none;
}
.npvd [hidden] { display: none !important; }
.npvd button, .npvd input, .npvd select { font-family: inherit; box-shadow: none; text-transform: none; letter-spacing: normal; }
.npvd button { cursor: pointer; }
.npvd button:focus-visible, .npvd input:focus-visible, .npvd select:focus-visible, .npvd [tabindex]:focus-visible {
  outline: 2px solid #2DA1A1; outline-offset: 3px;
}
.npvd .npvd-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 2px 0 15px; }
.npvd .npvd-title { color: #3D5A80; font-size: 16px; font-weight: 800; line-height: 1.3; }
.npvd .npvd-disclosure { margin-top: 5px; color: #6D8090; font-size: 10px; line-height: 1.4; }
.npvd .npvd-metrics { display: flex; flex: none; gap: 22px; }
.npvd .npvd-metrics > div { display: flex; flex-direction: column; gap: 2px; }
.npvd .npvd-metrics dt { color: #6D8090; font-size: 10px; line-height: 1.4; }
.npvd .npvd-metrics dd { color: #3D5A80; font-size: 22px; font-weight: 800; line-height: 1.2; font-variant-numeric: tabular-nums; }
.npvd .npvd-filters {
  display: grid;
  grid-template-columns: minmax(200px, 1.8fr) minmax(112px, 1.2fr) minmax(76px, .8fr) minmax(90px, 1fr) minmax(96px, 1fr) minmax(108px, 1.2fr) auto;
  gap: 10px; align-items: end; padding: 13px; background: #F3F7F9; border: 1px solid #E2EAF0; border-radius: 10px;
}
.npvd .npvd-field, .npvd .npvd-date-group { min-width: 0; }
.npvd .npvd-label { display: block; margin-bottom: 5px; color: #536D86; font-size: 10px; font-weight: 600; line-height: 1.4; }
.npvd .npvd-input, .npvd .npvd-select {
  display: block; width: 100%; min-width: 0; height: 33px; margin: 0; padding: 5px 7px; border: 1px solid #CCD9E4;
  border-radius: 5px; background: #FEFEFE; color: #3D5A80; font-size: 11px; font-weight: 500; line-height: 1.3;
}
.npvd .npvd-input[aria-invalid="true"] { border-color: #A94E50; }
.npvd .npvd-input::-webkit-date-and-time-value { text-align: left; }
.npvd .npvd-date-inputs { display: grid; grid-template-columns: minmax(0, 1fr) 8px minmax(0, 1fr); gap: 3px; align-items: center; }
.npvd .npvd-date-inputs input { padding-inline: 4px; font-size: 10px; }
.npvd .npvd-date-separator { color: #8193A3; font-size: 10px; text-align: center; }
.npvd .npvd-filter-actions { display: flex; flex-direction: column; gap: 3px; min-width: 79px; }
.npvd .npvd-button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 32px; margin: 0; padding: 6px 11px;
  border: 1px solid #C3D3DF; border-radius: 5px; background: #FEFEFE; color: #3D5A80; font-size: 11px; font-weight: 600; line-height: 1.3; text-align: center;
}
.npvd .npvd-button:hover { background: #EDF5F6; }
.npvd .npvd-button-primary { border-color: #3D5A80; background: #3D5A80; color: #FEFEFE; }
.npvd .npvd-button-primary:hover { border-color: #2F4E71; background: #2F4E71; }
.npvd .npvd-button-quiet { min-height: 20px; padding: 1px 4px; border-color: transparent; background: transparent; font-size: 10px; }
.npvd .npvd-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 13px 0; }
.npvd .npvd-tabs { display: flex; flex-wrap: wrap; gap: 3px; padding: 3px; border-radius: 7px; background: #EDF3F6; }
.npvd .npvd-tab {
  appearance: none; margin: 0; padding: 7px 12px; border: 0; border-radius: 5px; background: transparent; color: #607890;
  font-size: 11px; font-weight: 600; line-height: 1.4; white-space: nowrap;
}
.npvd .npvd-tab[aria-selected="true"] { background: #FEFEFE; color: #3D5A80; box-shadow: 0 1px 4px rgb(37 70 98 / 10%); }
.npvd .npvd-active-range { color: #708597; font-size: 10px; line-height: 1.4; font-variant-numeric: tabular-nums; }
.npvd .npvd-panel { min-width: 0; min-height: 397px; border-radius: 8px; }
.npvd .npvd-grid { display: grid; gap: 11px; }
.npvd .npvd-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.npvd .npvd-details-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.npvd .npvd-card { min-width: 0; height: 193px; padding: 12px; border: 1px solid #DCE6ED; border-radius: 9px; background: #FEFEFE; overflow: hidden; }
.npvd .npvd-card-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 9px; }
.npvd .npvd-card-title { margin: 0; color: #3D5A80; font-size: 11px; font-weight: 600; line-height: 1.4; }
.npvd .npvd-card-unit { flex: none; color: #7B8D9B; font-size: 10px; }
.npvd .npvd-donut-layout { display: grid; grid-template-columns: 122px minmax(0, 1fr); gap: 7px; align-items: center; min-height: 133px; }
.npvd .npvd-donut { position: relative; min-width: 0; width: 122px; }
.npvd .npvd-donut > svg { display: block; width: 100%; height: auto; }
.npvd .npvd-donut-total { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; position: absolute; inset: 0; }
.npvd .npvd-donut-total strong { color: #3D5A80; font-size: 19px; font-weight: 800; line-height: 1.2; font-variant-numeric: tabular-nums; }
.npvd .npvd-donut-total span { color: #7B8D9B; font-size: 9px; }
.npvd .npvd-legend { list-style: none; display: grid; gap: 10px; min-width: 0; }
.npvd .npvd-legend-row { display: grid; grid-template-columns: 7px minmax(0, 1fr) auto; align-items: center; gap: 5px; font-size: 10px; line-height: 1.4; }
.npvd .npvd-legend-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.npvd .npvd-legend-row strong { font-size: 11px; font-weight: 600; font-variant-numeric: tabular-nums; }
.npvd .npvd-dot { display: inline-block; width: 7px; height: 7px; flex: none; border-radius: 50%; }
.npvd .npvd-bars { list-style: none; display: grid; gap: 17px; padding-top: 6px; }
.npvd .npvd-bar-label { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 6px; font-size: 11px; }
.npvd .npvd-bar-label > span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.npvd .npvd-bar-label strong { flex: none; font-weight: 600; font-variant-numeric: tabular-nums; }
.npvd .npvd-bar-track { height: 6px; border-radius: 4px; background: #EDF3F6; overflow: hidden; }
.npvd .npvd-bar-fill { display: block; height: 100%; border-radius: 4px; }
.npvd .npvd-card-line { grid-column: span 2; }
.npvd .npvd-card-line .npvd-card-head { margin-bottom: 1px; }
.npvd .npvd-line-legend { display: flex; justify-content: flex-end; gap: 12px; font-size: 9px; line-height: 1.3; }
.npvd .npvd-line-legend > span { display: inline-flex; align-items: center; gap: 4px; }
.npvd .npvd-line-svg { display: block; width: 100%; height: 116px; overflow: visible; font-family: Montserrat, Arial, sans-serif; }
.npvd .npvd-chart-note { color: #7B8D9B; font-size: 10px; line-height: 1.3; }
.npvd .npvd-mini-scroll { max-height: 149px; overflow: auto; scrollbar-width: thin; scrollbar-color: #B3C6D5 transparent; border-radius: 3px; }
.npvd .npvd-table { width: 100%; margin: 0; border: 0; border-spacing: 0; border-collapse: collapse; font: 500 11px/1.45 Montserrat, Arial, sans-serif; color: #3D5A80; }
.npvd .npvd-table th { position: sticky; top: 0; z-index: 1; padding: 6px 7px; border: 0; border-bottom: 1px solid #D8E4EC; background: #F1F6F8; color: #60798F; font-size: 10px; font-weight: 600; line-height: 1.3; text-align: left; }
.npvd .npvd-table td { padding: 6px 7px; border: 0; border-bottom: 1px solid #EDF2F5; vertical-align: top; line-height: 1.45; }
.npvd .npvd-table tbody tr:last-child td { border-bottom: 0; }
.npvd .npvd-table .npvd-number { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.npvd .npvd-mini-table th:last-child { text-align: right; }
.npvd .npvd-mini-table td { padding-block: 4px; font-size: 10px; }
.npvd .npvd-mini-table .npvd-operation { max-width: 160px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.npvd .npvd-mini-table th { white-space: nowrap; font-size: 9px; }
.npvd .npvd-description-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 11px; }
.npvd .npvd-row-count { font-size: 11px; color: #708597; }
.npvd .npvd-search { display: flex; align-items: center; gap: 9px; }
.npvd .npvd-search .npvd-label { margin: 0; }
.npvd .npvd-search .npvd-input { width: 232px; }
.npvd .npvd-description-scroll { max-height: 324px; overflow: auto; border: 1px solid #DCE6ED; border-radius: 7px; scrollbar-width: thin; scrollbar-color: #B3C6D5 transparent; }
.npvd .npvd-description-table { min-width: 1160px; }
.npvd .npvd-description-table td { padding: 8px; }
.npvd .npvd-description-table td:nth-child(3) { min-width: 140px; max-width: 200px; }
.npvd .npvd-description-table td:nth-child(4) { min-width: 210px; max-width: 260px; }
.npvd .npvd-description-table td:nth-child(8) { min-width: 108px; font-variant-numeric: tabular-nums; }
.npvd .npvd-table-help { margin-top: 8px; font-size: 10px; color: #7B8D9B; line-height: 1.5; }
.npvd .npvd-table-empty { padding: 30px !important; text-align: center; color: #708597; }
.npvd .npvd-error { margin-top: 10px; padding: 9px 11px; border-left: 3px solid #A94E50; background: #FFF4F3; color: #904348; font-size: 11px; line-height: 1.5; }
.npvd .npvd-empty { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px; min-height: 397px; padding: 28px; text-align: center; }
.npvd .npvd-empty strong { color: #3D5A80; font-size: 15px; font-weight: 600; }
.npvd .npvd-empty p { color: #708597; font-size: 12px; line-height: 1.7; }
.npvd .npvd-status { margin-top: 10px; color: #758999; font-size: 10px; line-height: 1.5; }
.npvd .npvd-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@container npvd (max-width: 980px) {
  .npvd .npvd-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .npvd .npvd-date-group { grid-column: span 2; }
  .npvd .npvd-filter-actions { flex-direction: row; align-items: center; gap: 10px; }
  .npvd .npvd-button-quiet { min-height: 32px; }
  .npvd .npvd-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .npvd .npvd-card-line { grid-column: span 2; grid-row: 2; }
  .npvd .npvd-summary-grid > .npvd-card:last-child { grid-column: span 2; }
  .npvd .npvd-donut-layout { grid-template-columns: 112px minmax(0, 1fr); }
  .npvd .npvd-donut { width: 112px; }
}
@container npvd (max-width: 620px) {
  .npvd .npvd-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .npvd .npvd-metrics { width: 100%; justify-content: space-between; gap: 12px; }
  .npvd .npvd-metrics dd { font-size: 21px; }
  .npvd .npvd-title { font-size: 15px; }
  .npvd .npvd-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 10px; }
  .npvd .npvd-date-group { grid-column: 1 / -1; }
  .npvd .npvd-filter-actions { align-self: end; }
  .npvd .npvd-input, .npvd .npvd-select { height: 36px; font-size: 12px; }
  .npvd .npvd-date-inputs input { font-size: 12px; }
  .npvd .npvd-toolbar { flex-direction: column; align-items: flex-start; gap: 8px; }
  .npvd .npvd-tabs { width: 100%; }
  .npvd .npvd-tab { flex: 1; padding-inline: 8px; font-size: 10px; }
  .npvd .npvd-summary-grid, .npvd .npvd-details-grid { grid-template-columns: minmax(0, 1fr); }
  .npvd .npvd-card-line, .npvd .npvd-summary-grid > .npvd-card:last-child { grid-column: 1; grid-row: auto; }
  .npvd .npvd-card { height: 190px; }
  .npvd .npvd-card-line { height: 207px; }
  .npvd .npvd-donut-layout { grid-template-columns: 126px minmax(0, 1fr); }
  .npvd .npvd-donut { width: 126px; }
  .npvd .npvd-description-head { align-items: flex-start; flex-direction: column; gap: 8px; }
  .npvd .npvd-search { width: 100%; }
  .npvd .npvd-search .npvd-input { width: 100%; flex: 1; }
  .npvd .npvd-empty { min-height: 290px; padding-inline: 12px; }
  .npvd .npvd-disclosure { font-size: 10px; }
  .npvd .npvd-description-scroll { max-height: 400px; }
}
@container npvd (max-width: 310px) {
  .npvd .npvd-filters { gap: 9px; }
  .npvd .npvd-filter-actions { flex-wrap: wrap; gap: 3px; }
  .npvd .npvd-filter-actions .npvd-button { width: 100%; }
  .npvd .npvd-donut-layout { grid-template-columns: 105px minmax(0, 1fr); gap: 5px; }
  .npvd .npvd-donut { width: 105px; }
  .npvd .npvd-legend-row { font-size: 10px; }
  .npvd .npvd-tab { padding-inline: 6px; font-size: 10px; }
}
@container npvd (max-width: 360px) {
  .npvd .npvd-card:has(> .npvd-donut-layout) { height: auto; min-height: 190px; }
  .npvd .npvd-donut-layout { grid-template-columns: minmax(0, 1fr); gap: 9px; min-height: 0; }
  .npvd .npvd-donut { width: 112px; margin-inline: auto; }
  .npvd .npvd-legend { width: 100%; gap: 7px; }
  .npvd .npvd-legend-row { font-size: 11px; }
  .npvd .npvd-legend-name { overflow: visible; white-space: normal; text-overflow: clip; }
}
@media (prefers-reduced-motion: reduce) {
  .npvd *, .npvd *::before, .npvd *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
