.pt-outcome-view {
  min-width: 0;
  max-width: 100%;
  margin-block: 1.4rem;
  padding-block: 1rem;
  border-top: 1px solid #687278;
  overflow-wrap: anywhere;
  letter-spacing: 0;
}
.pt-outcome-view summary {
  min-height: 44px;
  box-sizing: border-box;
  padding-block: .65rem;
  cursor: pointer;
}
.pt-outcome-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  align-items: start;
  min-width: 0;
  max-width: 1100px;
  margin-block: .8rem;
}
.pt-outcome-controls fieldset {
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}
.pt-outcome-controls legend {
  font-weight: 600;
  margin-bottom: .3rem;
}
.pt-outcome-units {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .2rem;
}
.pt-outcome-units label,
.pt-outcome-view .pt-outcome-check {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .5rem;
  min-height: 44px;
  min-width: 0;
  box-sizing: border-box;
  padding: .4rem;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.pt-outcome-units label {
  border: 1px solid #687278;
}
.pt-outcome-units label:has(input:checked) {
  border-color: #4fa38a;
  background-color: rgba(79, 163, 138, .12);
}
.card-lab .pt-outcome-view input:is([type=radio], [type=checkbox]) {
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  max-width: 20px;
  accent-color: #4fa38a;
}
.pt-outcome-sensitivity-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .6rem;
  grid-column: 1 / -1;
}
.pt-outcome-sensitivity-controls .pt-outcome-check {
  grid-column: 1 / -1;
}
.pt-outcome-sensitivity-controls label {
  min-width: 0;
  overflow-wrap: anywhere;
}
.pt-outcome-sensitivity-controls select {
  display: block;
  width: 100%;
  margin-top: .3rem;
}
.card-lab .pt-outcome-view :is(select, button) {
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  overflow-wrap: anywhere;
  font-size: 1rem;
  letter-spacing: 0;
}
.pt-outcome-view :is(.pt-outcome-output, .pt-outcome-status, .pt-outcome-results) {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.pt-outcome-status[data-state=error] { color: #ffb7bb; }
.pt-outcome-results h3 { font-size: 1.1rem; margin-block: 1rem .4rem; }
.pt-outcome-view .pt-outcome-scroll {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow: auto;
  overscroll-behavior-inline: contain;
}
.pt-outcome-view .pt-outcome-table {
  width: 100%;
  min-width: 1050px;
  table-layout: fixed;
  border-collapse: collapse;
}
.pt-outcome-table :is(th, td, caption) {
  vertical-align: top;
  text-align: left;
  white-space: pre-line;
  overflow-wrap: anywhere;
  padding: .5rem;
}
.pt-outcome-table :is(th, td) { border-bottom: 1px solid #687278; }
.pt-outcome-table :is(th, td):first-child { width: 20%; }
.pt-outcome-table :is(th, td):last-child { width: 25%; }
.pt-outcome-pager {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem;
  min-width: 0;
  margin-top: .8rem;
}
.pt-outcome-pager span { flex: 1 1 12rem; min-width: 0; overflow-wrap: anywhere; }
.pt-outcome-view :is(summary, input, select, button, .pt-outcome-scroll):focus-visible {
  outline: 3px solid #ffd778;
  outline-offset: 3px;
}
@media (max-width: 700px) {
  .pt-outcome-controls { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 420px) {
  .pt-outcome-sensitivity-controls { grid-template-columns: minmax(0, 1fr); }
  .pt-outcome-controls > button { width: 100%; }
}
