.chartWrapper__SmQs4 {
  box-sizing: border-box;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  padding: 0 0.75rem;
  position: relative;
  width: 100%;
}

.chartHolder__Mwgul {
  margin-top: 2rem;
  max-width: 75rem;
  position: relative;
  width: 100%;
}

.chartHolder__Mwgul svg g g g rect {
    cursor: pointer;
  }

/* A caller that frames the chart at its own width: no cap, and no gap over the chart. */
.fill__Hs03V .chartHolder__Mwgul {
  margin-top: 0;
  max-width: none;
}

.chartTypeMenu__llwrL {
  position: absolute;
  right: 2.75rem;
  top: 1rem;
}

.ellipsisMenu__UaMN0, .chartTypeMenu__llwrL {
  display: block;
}

@media print {

.ellipsisMenu__UaMN0, .chartTypeMenu__llwrL {
    display: none
}
  }

.chartTypeMenuItem__ItDVc {
  white-space: nowrap;
}

.comparisonNote__KKelx {
  font-size: var(--default-font-size);
  margin: 1.25rem 0 2.5rem 0.625rem;
}

.filterNote__FELGL {
  color: var(--dark-gray);
  font-size: 0.8125rem;
  margin: 0 0 0.5rem 0.625rem;
}

.bandToggle__T6zuQ {
  display: flex;
  margin: 0 0 0.75rem 0.625rem;
}

.scaleLabels__jote_ {
  font-size: var(--default-font-size);
  margin-bottom: -0.625rem;
  margin-left: 3.625rem;
  position: relative;
  z-index: 2;
}

/* The negative margin above tucks the chart's own top whitespace under the labels, and
   the indent lines them up with the plot area past the y-axis. When the filter note or
   the band toggle sits between them, the tuck pulls that element onto the label text
   instead, and the labels no longer sit above the plot area — so they line up on the
   left with whatever follows. */
.scaleLabels__jote_:has(+ .filterNote__FELGL),
.scaleLabels__jote_:has(+ .bandToggle__T6zuQ) {
  margin-bottom: 1rem;
  margin-left: 0.625rem;
}

.lineChart__yrKF9 .scaleLabels__jote_ {
    margin-left: 2.25rem;
    margin-bottom: -1.25rem;
  }

/* The marked stick chart's scale words, under the plot: the two ends of the scale, apart. */
.scaleKey__qOIfZ {
  color: var(--darker-gray);
  display: flex;
  font-size: 0.75rem;
  gap: 1.5rem;
  margin-left: 3.625rem;
  margin-top: 0.25rem;
}

.is-saving-chart-pdf .chartWrapper__SmQs4, .is-saving-pdf .chartWrapper__SmQs4 {
    max-width: 50rem;
  }

.is-saving-chart-pdf .chartWrapper__SmQs4 .chartHolder__Mwgul, .is-saving-pdf .chartWrapper__SmQs4 .chartHolder__Mwgul {
      max-width: 50rem;
    }

.is-saving-chart-pdf .chartWrapper__SmQs4 .ellipsisMenu__UaMN0, .is-saving-chart-pdf .chartWrapper__SmQs4 .chartTypeMenu__llwrL, .is-saving-pdf .chartWrapper__SmQs4 .ellipsisMenu__UaMN0, .is-saving-pdf .chartWrapper__SmQs4 .chartTypeMenu__llwrL {
      display: none;
    }

.is-saving-chart-pdf .comparisonNote__KKelx, .is-saving-chart-pdf .filterNote__FELGL, .is-saving-chart-pdf .bandToggle__T6zuQ, .is-saving-pdf .comparisonNote__KKelx, .is-saving-pdf .filterNote__FELGL, .is-saving-pdf .bandToggle__T6zuQ {
    display: none;
  }

.track__QTQjH {
  background: var(--lightest-gray);
  border-radius: var(--border-radius-xl);
  display: inline-flex;
  gap: 0.125rem;
  padding: 0.1875rem;
}

.pill__Dy7s8 {
  background: transparent;
  border: 0;
  border-radius: var(--border-radius-xl);
  color: var(--darker-gray);
  cursor: pointer;
  font-family: inherit;
  font-size: 0.75rem;
  line-height: 1.4;
  padding: 0.375rem 0.875rem;
  transition: background-color 150ms ease, color 150ms ease;
  white-space: nowrap;
}

.pill__Dy7s8:hover {
  color: var(--darkest-gray);
}

.pill__Dy7s8:focus-visible {
  outline: 0.125rem solid var(--violet);
  outline-offset: 0.0625rem;
}

.pillActive__dXh0S,
.pillActive__dXh0S:hover {
  background: var(--violet);
  color: var(--white);
}

.legend__vczZt {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.625rem;
  margin: 0.25rem 0 1rem;
}

/* The series colour arrives on --compare-legend-color, set inline per entry. */
.item__U8tUg {
  --compare-legend-color: var(--secondary);

  align-items: center;
  background: none;
  border: 0;
  color: var(--darkest-gray);
  cursor: pointer;
  display: inline-flex;
  font-size: 0.9375rem;
  gap: 0.625rem;
  line-height: 1.3;
  padding: 0;
  transition: opacity 150ms ease;
}

.item__U8tUg:focus-visible {
  outline: 0.125rem solid var(--violet);
  outline-offset: 0.125rem;
}

.itemDimmed__BVkWF {
  opacity: 0.4;
}

/* As chips the entries sit closer, each a pill on white with an eye that says what a click does,
   on the row of the block that holds them, so with no margin of their own. */
.legendChips__v0MiO {
  --compare-legend-line: rgba(0, 0, 0, 0.12);

  align-items: center;
  gap: 0.5rem;
  margin: 0;
}

.chip__x2LWO {
  background: var(--white);
  border: 0.0625rem solid var(--compare-legend-line);
  border-radius: 62.4375rem;
  font-size: 0.8125rem;
  gap: 0.5rem;
  padding: 0.25rem 0.625rem 0.25rem 0.75rem;
  transition: background-color 150ms ease, border-color 150ms ease;
}

.chip__x2LWO:hover {
    background: var(--lightest-gray);
    border-color: var(--gray);
  }

.chip__x2LWO .swatch__Qqp21 {
  width: 0.875rem;
}

.eye__CroH3 {
  color: var(--darker-gray);
  display: inline-flex;
}

/* A hidden series' chip: dashed on the lightest gray, its name struck; never faded. */
.chip__x2LWO.itemDimmed__BVkWF {
  background: var(--lightest-gray);
  border-style: dashed;
  color: var(--darker-gray);
  opacity: 1;
}

.chip__x2LWO.itemDimmed__BVkWF .label__ocIgc {
  text-decoration: line-through;
}

/* The last series shown stays shown: no eye, and nothing happens under the pointer. */
.chipLocked__hoRLb {
  cursor: default;
  padding-right: 0.75rem;
}
.chipLocked__hoRLb:hover {
    background: var(--white);
    border-color: var(--compare-legend-line);
  }

/* The link right after the entries, beside the chips it acts on. */
.trailing__ZpLYV {
  align-items: center;
  display: inline-flex;
  gap: 1rem;
}

.swatch__Qqp21 {
  background: var(--compare-legend-color);
  border-radius: 0.125rem;
  display: inline-block;
  height: 0.1875rem;
  width: 1.625rem;
}

/* A dashed series' swatch: the line's dashes, at key scale. */
.swatchDashed__YuteU {
  background: repeating-linear-gradient(90deg, var(--compare-legend-color) 0 0.25rem, transparent 0.25rem 0.5rem);
}

/* --semantic-plot-row-height is set inline by the component so the CSS and
   the SVG geometry share one pixel value (postcss-pxtorem would rewrite a
   stylesheet px here). */
.plot__zh92m {
  --semantic-plot-highlight-bg: rgba(134, 100, 246, 0.06);

  display: flex;
  gap: 0.875rem;
  /* Contains the highlight band's negative z-index so it can sit behind the
     statically positioned anchor labels without escaping the plot. */
  isolation: isolate;
  position: relative;
}

/* Words on track: each pair's words on the line above its row's track, the plot at full width.
   The row count, row height and track offset are set inline, as the row height is above. */
.plotTrack__Jr5oi {
  display: block;
}

/* Words beside the track: a gutter either side of the plot for each pair's words, the plot
   between them, the scale's labels and their ends under the plot. The row bands run across all
   three, so the plot itself is the bands' frame. */
.plotBeside__PZw4j {
  --semantic-plot-columns: minmax(5.625rem, 15%) minmax(0, 1fr) minmax(5.625rem, 15%);
  --semantic-plot-column-gap: 1rem;

  display: grid;
  gap: 0 var(--semantic-plot-column-gap);
  grid-template-columns: var(--semantic-plot-columns);
}
.plotBeside__PZw4j .plotArea__SwhDD {
    grid-column: 2;
    grid-row: 1;
  }
.plotBeside__PZw4j .axisLabels__txHEL {
    grid-column: 2;
    grid-row: 2;
  }
.plotBeside__PZw4j .axisEnds__UpyZo {
    grid-column: 2;
    grid-row: 3;
  }

/* Marks the row whose chart is expanded below. */
.expandedRowBand__DkNqW {
  background: var(--semantic-plot-highlight-bg);
  border: 0.0625rem solid var(--light-violet);
  border-radius: 0.5rem;
  height: var(--semantic-plot-row-height);
  left: -0.5rem;
  pointer-events: none;
  position: absolute;
  right: -0.5rem;
  z-index: -1;
}

.anchorColumn__CWfZX {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  width: 18%;
}

/* One row label instead of an anchor pair: the column takes the width the pair
   shared, so a question reads without the plot losing room. */
.anchorColumnWide__fe7Tf {
  width: 34%;
}

.anchorLabel__z7Rxr {
  align-items: center;
  background: none;
  border: none;
  color: var(--darkest-gray);
  cursor: pointer;
  display: flex;
  font-size: 0.875rem;
  height: var(--semantic-plot-row-height);
  line-height: 1.25;
  padding: 0;
  text-align: left;
}

.anchorLeft__X_2KL {
  justify-content: flex-end;
  text-align: right;
}

.anchorExpanded__OZYsW {
  color: var(--mid-violet);
  font-family: var(--default-bold-font-family);
}

/* A question label is a sentence, not an anchor word: it stays on one line,
   centred on its row, and the full text is on the element's title. */
.anchorWide__YB3WL {
  display: block;
  line-height: var(--semantic-plot-row-height);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* No stats yet — nothing to expand, so the label is inert, not a dead button. */
.anchorLabel__z7Rxr:disabled {
  cursor: default;
}

.plotArea__SwhDD {
  flex: 1;
  position: relative;
}

.gridline__gXBLP {
  background: var(--lighter-gray);
  bottom: 0;
  position: absolute;
  top: 0;
  width: 0.0625rem;
}

.gridlineMid__joa2L {
  background: var(--light-gray);
}

.polylineSvg__tkMbz {
  inset: 0;
  position: absolute;
}

/* A track's end ticks sit on the plot's edges, so they draw whole. */
.polylineSvgTrack__KNuhu {
  overflow: visible;
}

/* A compared survey's colour arrives on --semantic-series-color (set inline per series);
   without it the plot keeps the single-series accent. */
.series__Js3kx {
  --semantic-series-color: var(--secondary);
}

/* The dots stay absolutely positioned in the plot area; the layer only carries the colour. */
.dotLayer__hqEPx {
  display: contents;
}

.polyline__K4Yhp {
  opacity: 0.55;
  stroke: var(--semantic-series-color);
  stroke-width: 2;
  transition: opacity 150ms ease;
}

/* A series the others stand against (Compare's All testers) runs dashed. */
.seriesDashed__yoTsC .polyline__K4Yhp {
  stroke-dasharray: 4 4;
}

/* A figure's confidence interval: a band in a tint of the series colour on its own line under
   the row's track, its two ends marked in the colour, as the bars draw theirs. */
.range__P3v_F {
  opacity: 0.22;
  stroke: var(--semantic-series-color);
  stroke-width: 10;
  transition: opacity 150ms ease;
}

.rangeEnd__al9c6 {
  stroke: var(--semantic-series-color);
  stroke-width: 2;
  transition: opacity 150ms ease;
}

/* Every row's ranges, each series on its own lane around the track: a thinner band, a step
   stronger, so the lanes stay apart and each still reads. */
.rangeLane__dfws9 {
  opacity: 0.3;
  stroke-width: 6;
}

.dot__UqIZZ {
  background: var(--semantic-series-color);
  border: 0.125rem solid var(--white);
  border-radius: 50%;
  box-shadow: 0 0 0 0.0625rem var(--semantic-series-color);
  box-sizing: border-box;
  cursor: pointer;
  height: 0.875rem;
  padding: 0;
  position: absolute;
  transition: opacity 150ms ease;
  width: 0.875rem;
}

/* Nothing expands behind a static dot, so it reads flat. */
.dotStatic__lEl04 {
  cursor: default;
}

/* A series the legend switched off fades rather than leaving, so nothing shifts. */
.seriesDimmed__Kvlt_ .polyline__K4Yhp,
.seriesDimmed__Kvlt_ .dot__UqIZZ {
  opacity: 0.15;
}

/* Words on track: the line runs at full strength and the dots are a size up, so the shape
   reads at a glance across the full width. */
.polylineSvgTrack__KNuhu .polyline__K4Yhp {
  opacity: 1;
}

.dotTrack__Er6fu {
  height: 1rem;
  width: 1rem;
}

/* In lanes a dot sits on its own series' band, a size down so neighbouring lanes' dots keep apart;
   beside the track the dots wear the same size. */
.dotLane__IVKRA {
  height: 0.75rem;
  width: 0.75rem;
}

/* The picked row wears the open row's band; the row under the pointer, its ground alone. */
.trackBandHover___1xuj {
  border-color: transparent;
}

/* Each row's track: the line its dots and polylines sit on. */
.track__dvXIA {
  stroke: var(--lighter-gray);
  stroke-width: 2;
}

/* A tick at each gridline, taller at the middle. */
.trackTick__mN5Hu {
  stroke: var(--gray);
  stroke-width: 2;
}

/* On the row whose ranges draw, each series' own line: its dot and the note beside its range. */
.rangeDot__Ky_iA {
  background: var(--semantic-series-color);
  border-radius: 50%;
  height: 0.625rem;
  pointer-events: none;
  position: absolute;
  width: 0.625rem;
}

.rangeNote__CUCM_ {
  background: var(--white);
  color: var(--darker-gray);
  font-size: 0.75rem;
  line-height: 1.25rem;
  margin-left: 0.5rem;
  padding: 0 0.25rem;
  position: absolute;
  white-space: nowrap;
}

.rangeNoteBefore__OABxk {
  margin-left: 0;
  transform: translateX(calc(-100% - 0.5rem));
}

/* The words over the lines. Only the words take the pointer, so the dots under the layer still do. */
.trackWords__mUtfH {
  display: flex;
  flex-direction: column;
  inset: 0;
  pointer-events: none;
  position: absolute;
}

/* A row's words, their line ending 12px above its track; the row's height is set inline. */
.trackRow__AexdO {
  align-items: flex-start;
  box-sizing: border-box;
  display: flex;
  flex-shrink: 0;
  padding-top: calc(var(--semantic-plot-track-offset) - 2rem);
}

/* One button per pair holds both its words; only the words take the pointer. */
.trackPick__sCSpz {
  background: none;
  border: 0;
  border-radius: var(--border-radius-xs);
  color: inherit;
  display: flex;
  font: inherit;
  padding: 0;
  pointer-events: none;
  width: 100%;
}
.trackPick__sCSpz:focus-visible {
    outline: 0.125rem solid var(--violet);
    outline-offset: 0.125rem;
  }
.trackPick__sCSpz .trackWord__gGvug {
    cursor: pointer;
  }
.trackPick__sCSpz:disabled .trackWord__gGvug {
    cursor: default;
  }

/* A pair's word on a white ground, so a line crossing it passes under. */
.trackWord__gGvug {
  background: var(--white);
  color: var(--darkest-gray);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  max-width: 48%;
  overflow: hidden;
  padding: 0 0.25rem 0 0;
  pointer-events: auto;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.trackWordRight__P7Z8o {
  margin-left: auto;
  padding: 0 0 0 0.25rem;
  text-align: right;
}

/* The picked pair's words, as Survey Results marks its open pair, on the band's tint. */
.trackRowActive__heye4 .trackWord__gGvug {
  background: linear-gradient(var(--semantic-plot-highlight-bg), var(--semantic-plot-highlight-bg)), var(--white);
  color: var(--mid-violet);
  font-weight: 500;
}

/* The scale's labels under the last row, each centred on its gridline. */
.axisLabels__txHEL {
  color: var(--darker-gray);
  font-size: 0.75rem;
  height: 1rem;
  line-height: 1rem;
  margin-top: 0.5rem;
  position: relative;
}

.axisLabel__ze7Xn {
  left: var(--semantic-plot-axis-at);
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  white-space: nowrap;
}

/* What each way along the scale means, under its labels: a phrase at each end. */
.axisEnds__UpyZo {
  color: var(--dark-gray);
  display: flex;
  font-size: 0.75rem;
  gap: 1rem;
  justify-content: space-between;
  line-height: 1rem;
  margin-top: 0.25rem;
}

/* Beside the track the lines run a step heavier, their corners rounded. */
.plotBeside__PZw4j .polyline__K4Yhp {
  stroke-linejoin: round;
  stroke-width: 2.5;
}

/* The series picked out: its line heavier still, the others fading with their dots, ranges and
   notes, so nothing moves. */
.seriesFocused__IvKcL .polyline__K4Yhp {
  stroke-width: 3.5;
}

.polylineSvgTrack__KNuhu .series__Js3kx {
  transition: opacity 150ms ease;
}

.polylineSvg__tkMbz .seriesFaded__g94v8,
.seriesFaded__g94v8 .dot__UqIZZ,
.rangeNoteFaded__BD_VE {
  opacity: 0.15;
}

/* With two lines shown, the room between them in a faint tint of the brand violet. */
.gapShade__viESA {
  fill: var(--violet);
  fill-opacity: 0.07;
}

/* While their ranges draw, past the violet out to the two lines' outer bounds, a light gray; the
   mask keeps everything but the violet room, so the two never stack. */
.boundsShade__Mrnsi {
  fill: var(--dark-gray);
  fill-opacity: 0.08;
}

.boundsKeep__Vw3vc {
  fill: var(--white);
}

.boundsCut__kFlAj {
  fill: var(--black);
}

/* The pairs' words across the whole plot, a row per pair on the plot's own columns. Only the
   words take the pointer, so the dots between them still do. */
.besideWords__EMSTy {
  display: flex;
  flex-direction: column;
  grid-column: 1 / -1;
  grid-row: 1;
  pointer-events: none;
}

.besideRow__J45pf {
  background: none;
  border: 0;
  border-radius: var(--border-radius-xs);
  box-sizing: border-box;
  color: inherit;
  -moz-column-gap: var(--semantic-plot-column-gap);
       column-gap: var(--semantic-plot-column-gap);
  display: grid;
  flex-shrink: 0;
  font: inherit;
  grid-template-columns: var(--semantic-plot-columns);
  padding: 0;
  pointer-events: none;
  text-align: inherit;
  width: 100%;
}

/* One button per pair holds both its words; the ring stays inside the row it marks. */
.besidePick__GuNl_:focus-visible {
    outline: 0.125rem solid var(--violet);
    outline-offset: -0.125rem;
  }
.besidePick__GuNl_ .besideWord__M5svt {
    cursor: pointer;
  }
.besidePick__GuNl_:disabled .besideWord__M5svt {
    cursor: default;
  }

/* A pair's word centred on its row's track, whose depth down the row is set inline. */
.besideWord__M5svt {
  align-self: start;
  color: var(--darkest-gray);
  font-size: 0.875rem;
  grid-row: 1;
  line-height: 1.125rem;
  margin-top: var(--semantic-plot-word-at);
  min-width: 0;
  overflow-wrap: break-word;
  pointer-events: auto;
  transform: translateY(-50%);
}

.besideWordLeft__PLyCP {
  grid-column: 1;
  justify-self: end;
  text-align: right;
}

.besideWordRight__eqU5o {
  grid-column: 3;
  justify-self: start;
  text-align: left;
}

/* The picked pair's words, as Survey Results marks its open pair. */
.besideRowActive__qNS0i .besideWord__M5svt {
  color: var(--mid-violet);
  font-weight: 500;
}

/* A dot's figure on the row under the pointer, over or under the dot, on the band's own ground
   so a line passing behind it gives way. */
.hoverFigure__dtrRv {
  background: linear-gradient(var(--semantic-plot-highlight-bg), var(--semantic-plot-highlight-bg)), var(--white);
  border-radius: var(--border-radius-xs);
  color: var(--darkest-gray);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 0.875rem;
  padding: 0 0.125rem;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  white-space: nowrap;
}

.hoverFigureAbove__Xumg8 {
  transform: translate(-50%, -100%);
}

.surveyContent__Wtgqn, .surveyItemContent__HJ_f0 {
  width: 100%;
}

.headingWrapper__JSy9K {
  margin-bottom: 0.5rem;
  margin-top: 1.25rem;
}

.headingWrapper__JSy9K small {
    font-weight: 200;
  }

.heading__HikMi {
  font-size: 1.375rem;
}

.description__WtsKK {
  line-height: 1.5rem;
  margin-bottom: 1.875rem;
}

.questionHeading__vlbk7 {
  font-size: 1rem;
}

.buttonGroup__A72Sj {
  margin-top: 1.875rem;
}

.imageWrapper__UwWxm {
  margin-bottom: 0.75rem;
  max-width: var(--content-max-width);
  text-align: center;
  width: 100%;
}

.imageInner__vztIM {
  border-radius: 25rem;
  border: 0.1875rem solid var(--secondary);
  cursor: pointer;
  display: inline-flex;
  margin: 0 auto;
  position: relative;
}

.imageInner__vztIM .avatar__XjyOk {
    margin: 0;
  }

.imageInner__vztIM svg {
    color: var(--white);
    left: 50%;
    top: 50%;
    translate: -50% -50%;
  }

.imageInner__vztIM:before {
    background-color: var(--black);
    border-radius: inherit;
    content: '';
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
  }

.imageInner__vztIM svg, .imageInner__vztIM:before {
    opacity: 0;
    position: absolute;
    transition: opacity 100ms ease-in-out;
  }

.imageInner__vztIM:hover:before {
      opacity: 0.2;
    }

.imageInner__vztIM:hover svg {
      opacity: 1;
    }

.compositeLabel__Q8xK3 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

  .compositeLabel__Q8xK3 small {
    color: var(--dark-gray);
    font-size: 0.75rem;
    font-weight: normal;
  }

.button__MRKIm {
  margin-top: 0.75rem;
}

.inputWrapper__eYP8g {
  max-width: var(--content-max-width);
  width: 100%;
}

.inputWrapper__eYP8g input {
    width: 100%;
  }

.tile__hGvm7 {
  align-items: center;
  display: inline-flex;
  gap: 0.875rem;
}

.statusGroup__sTa9C {
  align-items: center;
  display: inline-flex;
  gap: 0.5rem;
}

.icon__PiITe {
  color: var(--secondary);
  flex-shrink: 0;
}

.label__svB0E {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-size: 0.875rem;
  line-height: 1;
  white-space: nowrap;
}

.dot__Ywav2 {
  border-radius: 50%;
  flex-shrink: 0;
  height: 0.4375rem;
  width: 0.4375rem;
}

.paused__MdHXn .dot__Ywav2 {
  background-color: var(--warning);
}

.stopped__GIPMS .dot__Ywav2 {
  background-color: var(--gray);
}

.manage__IkFPn {
  background: none;
  border: 0;
  color: var(--dark-gray);
  cursor: pointer;
  font-size: 0.8125rem;
  line-height: 1;
  padding: 0;
  text-decoration: underline;
  white-space: nowrap;
}

.manage__IkFPn:hover {
  color: var(--darker-gray);
}

div.dialogPaper__j1glp {
  max-width: 37.5rem;
  min-width: 37.5rem;
}

div.dialogActions__F0zCC {
  margin-top: 1.875rem;
}

.costNote__FU3h4 {
  color: var(--darker-gray);
  display: block;
  font-size: 0.875rem;
  line-height: 1.375rem;
  margin-top: 1rem;
}

.costNote__FU3h4 + .costNote__FU3h4 {
    margin-top: 0.5rem;
  }

.testerCountInput__KJr83 {
  max-width: 13.75rem;
}

div.balanceAlert__T5COS {
  border: none;
  margin-top: 1rem;
  padding: 0.375rem 0;
}

@media screen and (max-width: 768px) {
  div.dialogPaper__j1glp {
    min-width: auto;
  }
}

.quotaSplit__gi_vc {
  border: 0.0625rem solid var(--lighter-gray);
  border-radius: var(--border-radius-lg);
  margin-top: 1.5rem;
  padding: 1rem 1.25rem;
}

.quotaSplitIntro__ikgA5 {
  border-bottom: 0.0625rem solid var(--lighter-gray);
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 1rem;
  padding-bottom: 0.75rem;
}

.quotaSplitRow__I8G8Z {
  align-items: center;
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr auto 12.5rem;
  margin-bottom: 0.75rem;
}

.quotaSplitName__WboyJ {
  font-size: 1rem;
}

.quotaSplitInput__fyE9B {
  min-width: 0;
  padding: 0.75rem;
  width: 100%;
}

.quotaSplitCurrent__nFidx {
  color: var(--dark-gray);
  font-size: 0.9375rem;
}

.quotaSplitStatus__ua3X3 {
  align-items: center;
  display: flex;
  font-size: 0.9375rem;
  gap: 0.5rem;
  margin: 0.25rem 0 0;
}

.ok__b_91c {
  color: var(--sentiment-positive);
}

.error__BS8Ea {
  color: var(--error);
}

.description__L5qHw {
  font-size: var(--default-font-size);
  line-height: 1.5rem;
  margin: 0;
  max-width: 31.25rem;
  min-width: 18.75rem;
}

.drawer__geaXr {
  --invite-drawer-strip-bg: #f7f6fb;
  --invite-drawer-border: #ececec;
  --invite-drawer-track-bg: #e7e3f7;
  --invite-drawer-snapshot-divider: #e3e0d8;
  --invite-drawer-paused-bg: rgba(237, 108, 2, 0.12);
  --invite-drawer-paused-text: #b9670a;
  --invite-drawer-stopped-border: #e0e0e0;
  --invite-drawer-inviting-icon: #0f9b78;
  --invite-drawer-banner-bg: rgba(134, 100, 246, 0.09);
  --invite-drawer-shadow: rgba(18, 30, 45, 0.22);
  --invite-drawer-backdrop: rgba(18, 30, 45, 0.34);
}

.drawer__geaXr .MuiDrawer-paper {
  background-color: var(--white);
  box-shadow: -0.75rem 0 2.125rem var(--invite-drawer-shadow);
  display: flex;
  flex-direction: column;
  max-width: 100vw;
  width: 28.25rem;
}

.drawer__geaXr .MuiBackdrop-root {
  background-color: var(--invite-drawer-backdrop);
}

/* ───── Header ───── */
.header__jA7il {
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
  padding: 1.125rem 1.375rem 0.9375rem;
}

.headerText__YCHI9 {
  flex: 1;
  min-width: 0;
}

.title__BeQJt {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-size: 1.0625rem;
  line-height: 1.3;
  margin: 0;
}

.subtitle__OamFS {
  color: var(--dark-gray);
  font-size: 0.8125rem;
  margin-top: 0.1875rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.closeButton__z37Cf {
  color: var(--dark-gray);
  flex-shrink: 0;
}

/* ───── Method strip ───── */
.methodStrip__Reblk {
  align-items: center;
  background-color: var(--invite-drawer-strip-bg);
  border-bottom: 0.0625rem solid var(--invite-drawer-border);
  border-top: 0.0625rem solid var(--invite-drawer-border);
  display: flex;
  gap: 0.75rem;
  padding: 0.75rem 1.375rem;
}

.methodEyebrow__eQaRi {
  color: var(--dark-gray);
  font-family: var(--default-medium-font-family);
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.methodValue__veP6S {
  align-items: center;
  color: var(--navy);
  display: inline-flex;
  font-family: var(--default-medium-font-family);
  font-size: 0.875rem;
  gap: 0.4375rem;
}

.methodValue__veP6S svg {
  color: var(--mid-violet);
  flex-shrink: 0;
}

.methodLink__cKzN7 {
  align-items: center;
  background: none;
  border: 0;
  color: var(--mid-violet);
  cursor: pointer;
  display: inline-flex;
  font-family: var(--default-medium-font-family);
  font-size: 0.8125rem;
  gap: 0.375rem;
  margin-left: auto;
  padding: 0;
  text-decoration: underline;
}

.methodLink__cKzN7 svg {
  flex-shrink: 0;
}

/* ───── Body ───── */
.body__Q1Raz {
  flex: 1;
  overflow-y: auto;
  padding: 1.125rem 1.375rem;
}

.divider__u_NIF {
  background-color: var(--invite-drawer-border);
  border: 0;
  height: 0.0625rem;
  margin: 1rem 0;
}

/* ───── Stopped info banner ───── */
.banner__ZdTA2 {
  align-items: flex-start;
  background-color: var(--invite-drawer-banner-bg);
  border-radius: 0.625rem;
  color: var(--darker-gray);
  display: flex;
  font-size: 0.8125rem;
  gap: 0.625rem;
  line-height: 1.45;
  margin-bottom: 1rem;
  padding: 0.75rem 0.875rem;
}

.banner__ZdTA2 svg {
  color: var(--mid-violet);
  flex-shrink: 0;
  margin-top: 0.0625rem;
}

.banner__ZdTA2 strong {
  font-family: var(--default-medium-font-family);
  font-weight: 400;
}

/* ───── Recruiting snapshot ───── */
.snapshot__d02pz {
  background-color: var(--lightest-gray);
  border-radius: 0.75rem;
  padding: 0.875rem 1rem;
}

.snapshotHeader__lZyMU {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.snapshotEyebrow__aZHfP {
  color: var(--dark-gray);
  font-family: var(--default-medium-font-family);
  font-size: 0.6875rem;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.snapshotGoal__mPYAX {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-size: 0.8125rem;
}

.barRow__kh4T4 {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  padding: 0.25rem 0;
}

.barLabel__kF3WM {
  color: var(--darker-gray);
  flex-shrink: 0;
  font-size: 0.75rem;
  width: 3.5rem;
}

.barTrack__j_L55 {
  background-color: var(--invite-drawer-track-bg);
  border-radius: 0.1875rem;
  flex: 1;
  height: 0.875rem;
  overflow: hidden;
}

.barFill__smUtZ {
  border-radius: 0.1875rem;
  height: 100%;
}

.barFillInvited__BDSWN {
  background-color: var(--violet);
}

.barFillApplied___obZx {
  background-color: var(--light-violet);
}

.barFillAccepted__kaZmP {
  background-color: var(--teal-blue);
}

.barValue__JwVdU {
  color: var(--darker-gray);
  flex-shrink: 0;
  font-size: 0.75rem;
  text-align: right;
  width: 5rem;
}

.barValue__JwVdU strong {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-weight: 400;
}

.snapshotDivider__Lyc5W {
  background-color: var(--invite-drawer-snapshot-divider);
  border: 0;
  height: 0.0625rem;
  margin: 0.75rem 0;
}

.snapshotLinks__fNYGU {
  display: flex;
  gap: 1rem;
}

.textLink__iFQDu {
  background: none;
  border: 0;
  color: var(--mid-violet);
  cursor: pointer;
  font-family: var(--default-medium-font-family);
  font-size: 0.8125rem;
  padding: 0;
  text-decoration: underline;
}

/* ───── Control sections ───── */
.sectionRow__bb4a6 {
  align-items: center;
  display: flex;
  gap: 0.625rem;
}

.sectionRow__bb4a6 > svg {
  color: var(--mid-violet);
  flex-shrink: 0;
}

.sectionLabel__wsveL {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-size: 0.9375rem;
}

.spacer__Hpyt2 {
  flex: 1;
}

.helper__IB13q {
  color: var(--darker-gray);
  font-size: 0.8125rem;
  line-height: 1.45;
  margin-top: 0.5rem;
}

.helper__IB13q strong {
  color: var(--darkest-gray);
  font-family: var(--default-medium-font-family);
  font-weight: 400;
}

.actions__Xnmu1 {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  margin-top: 0.75rem;
}

.switchLabel__jOUrr {
  display: inline-flex;
}

/* ───── Status chip ───── */
.chip__v6OWy {
  align-items: center;
  border-radius: 0.375rem;
  display: inline-flex;
  font-family: var(--default-medium-font-family);
  font-size: 0.8125rem;
  gap: 0.375rem;
  height: 1.625rem;
  padding: 0 0.6875rem;
}

.chip__v6OWy svg {
  flex-shrink: 0;
}

.chipDot__YY8eP {
  border-radius: 50%;
  flex-shrink: 0;
  height: 0.4375rem;
  width: 0.4375rem;
}

.chipInviting__PHnN6 {
  background-color: var(--light-cyan);
  color: var(--dark-navy);
}

.chipInviting__PHnN6 svg {
  color: var(--invite-drawer-inviting-icon);
}

.chipPaused__luZeK {
  background-color: var(--invite-drawer-paused-bg);
  color: var(--invite-drawer-paused-text);
}

.chipPaused__luZeK .chipDot__YY8eP {
  background-color: var(--warning);
}

.chipStopped__kc3yM {
  background-color: var(--lightest-gray);
  border: 0.0625rem solid var(--invite-drawer-stopped-border);
  color: var(--dark-gray);
}

.chipStopped__kc3yM .chipDot__YY8eP {
  background-color: var(--gray);
}

/* ───── Advanced settings ───── */
.advancedToggle__IgqZp {
  align-items: center;
  background: none;
  border: 0;
  color: var(--mid-violet);
  cursor: pointer;
  display: inline-flex;
  font-family: var(--default-medium-font-family);
  font-size: 0.8125rem;
  gap: 0.375rem;
  padding: 0;
}

.chevron__sNctq {
  transition: transform 150ms ease;
}

.chevronOpen__WeMbN {
  transform: rotate(180deg);
}

.advancedBody__VFKlG {
  margin-top: 0.875rem;
}

.advancedRow__tZkNz {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  margin-top: 0.75rem;
}

.advancedRowLabel__dakpc {
  color: var(--darkest-gray);
  font-size: 0.875rem;
}

.advancedSelect__V9Vog {
  flex-shrink: 0;
  width: 5.25rem;
}

.advancedNote__pvHTh {
  color: var(--dark-gray);
  font-size: 0.75rem;
  line-height: 1.45;
  margin-top: 0;
}

/* ───── Footer ───── */
.footer__bGOOQ {
  background-color: var(--lightest-gray);
  border-top: 0.0625rem solid var(--invite-drawer-border);
  color: var(--dark-gray);
  font-size: 0.75rem;
  padding: 0.8125rem 1.375rem;
}

