/* design/generated/castra.css */
@font-face {
  font-family: "DINish";
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("./DINishVariable-4G6Q32EH.woff2") format("woff2");
}
:root,
:host {
  --paper: #fcfcfd;
  --sand: #f1f2f6;
  --sand2: #e6e8ee;
  --white: #ffffff;
  --line: #d7d9e1;
  --line-strong: #c1c4cd;
  --line-mute: #a7abb5;
  --line-control: #787f91;
  --ink: #2b3246;
  --ink-hover: #3b445e;
  --ink-deep: #1a1e2a;
  --muted: #565c6b;
  --muted2: #616776;
  --ink-disabled: #9ea3b0;
  --orange: #ff4f00;
  --orange-deep: #a83400;
  --orange-dim: #ffe4d8;
  --accent: #1d4ed8;
  --accent-deep: #1a3fa8;
  --accent-dim: #dbeafe;
  --accent-line: #9dbaf7;
  --attested: #1a6d2d;
  --asserted: #0f7d9b;
  --failed: #e11d48;
  --motion-fast: 250ms;
  --motion-base: 500ms;
  --size-xs: 0.75rem;
  --size-sm: 0.875rem;
  --size-md: 1rem;
  --size-lg: 1.125rem;
  --size-xl: 1.5rem;
  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.5;
  --tracking-display: 0.04em;
  --tracking-caps: 0.08em;
  --weight-normal: 400;
  --weight-strong: 600;
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 0.75rem;
  --space-lg: 1rem;
  --space-xl: 1.5rem;
  --space-xxl: 3rem;
  --measure-prose: 27em;
  --measure-tight: 22em;
  --control-height: 2.75rem;
  --border-width: 1px;
  --target-min: 44px;
  --focus-width: 2px;
  --focus-offset: 1px;
  --lift-ghost: 2px 2px 0 rgba(43, 50, 70, .10);
  --font-display:
    "DINish",
    "DIN Alternate",
    "Helvetica Neue",
    Arial,
    sans-serif;
}
.type-h1 {
  font-size: var(--size-xl);
  line-height: var(--leading-tight);
  font-weight: var(--weight-normal);
  letter-spacing: var(--tracking-display);
  text-transform: uppercase;
}
.type-h2 {
  font-size: var(--size-lg);
  line-height: var(--leading-snug);
  font-weight: var(--weight-normal);
  letter-spacing: normal;
  text-transform: none;
}
.type-h3 {
  font-size: var(--size-md);
  line-height: var(--leading-snug);
  font-weight: var(--weight-strong);
  letter-spacing: normal;
  text-transform: none;
}
.type-body {
  font-size: var(--size-md);
  line-height: var(--leading-normal);
  font-weight: var(--weight-normal);
  letter-spacing: normal;
  text-transform: none;
}
.type-body-small {
  font-size: var(--size-sm);
  line-height: var(--leading-normal);
  font-weight: var(--weight-normal);
  letter-spacing: normal;
  text-transform: none;
}
.type-caption {
  font-size: var(--size-xs);
  line-height: var(--leading-normal);
  font-weight: var(--weight-normal);
  letter-spacing: normal;
  text-transform: none;
}
.type-caps {
  font-size: var(--size-xs);
  line-height: var(--leading-normal);
  font-weight: var(--weight-strong);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
}
.type-action {
  font-size: var(--size-md);
  line-height: var(--leading-normal);
  font-weight: var(--weight-strong);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
}

/* design/page.css */
*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-display);
}
h1,
h2,
h3,
p {
  margin: 0;
}

/* design/components/band.module.css */
.band_band {
  display: block;
  padding: var(--space-xxl) var(--space-xl);
}
.band_paper {
  background: var(--paper);
}
.band_sand {
  background: var(--paper);
}

/* design/components/button.module.css */
.button_button {
  font-family: var(--font-display);
  min-height: var(--control-height);
  min-width: var(--control-height);
  padding: var(--space-sm) var(--space-lg);
  border: var(--border-width) solid transparent;
  cursor: pointer;
  transition:
    background-color var(--motion-fast),
    border-color var(--motion-fast),
    color var(--motion-fast);
}
.button_button:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
}
.button_primary {
  background: var(--orange);
  color: var(--ink-deep);
}
.button_primary:hover:not(:disabled),
.button_primary:active:not(:disabled) {
  background: var(--orange-deep);
  color: var(--white);
}
.button_secondary {
  background: var(--white);
  color: var(--ink);
  border-color: var(--line-control);
}
.button_secondary:hover:not(:disabled) {
  border-color: var(--ink);
}
.button_secondary:active:not(:disabled) {
  background: var(--sand);
  border-color: var(--ink);
}
.button_button:disabled {
  background: var(--sand);
  color: var(--ink-disabled);
  border-color: var(--line);
  cursor: default;
}

/* design/components/link.module.css */
.link_link {
  color: var(--accent);
  text-decoration: underline;
  cursor: pointer;
  transition: color var(--motion-fast);
}
.link_action {
  text-decoration: none;
  justify-content: center;
}
.link_standalone {
  display: inline-flex;
  align-items: center;
  min-height: var(--control-height);
}
.link_link:hover {
  color: var(--accent-deep);
}
.link_link:focus-visible,
.link_link:active {
  color: var(--ink);
  outline: none;
}
.link_glyph {
  width: 0.68em;
  height: 0.68em;
  margin-left: 0.12em;
  vertical-align: -0.02em;
}
.link_focus {
  display: none;
}
.link_link:focus-visible .link_rest {
  display: none;
}
.link_link:focus-visible .link_focus {
  display: inline-block;
}
.link_away {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* design/components/measure.module.css */
.measure_measure {
  max-width: var(--measure-prose);
}

/* design/components/stack.module.css */
.stack_stack {
  display: grid;
  gap: var(--space-md);
}

/* design/sandbox/phone.module.css */
.phone_phone {
  --phone-bezel: 8px;
  --phone-outer-radius: 56px;
  --phone-inner-radius: 48px;
  --phone-screen-width: 390px;
  --phone-screen-height: calc(var(--phone-height, 860px) - var(--phone-bezel) * 2);
  display: inline-grid;
  gap: var(--space-lg);
  justify-items: center;
  width: calc(var(--phone-screen-width) + var(--phone-bezel) * 2);
}
.phone_bezel {
  width: 100%;
  padding: var(--phone-bezel);
  border-radius: var(--phone-outer-radius);
  position: relative;
}
.phone_bezel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--ink-deep);
  border-radius: var(--phone-outer-radius);
  opacity: var(--phone-hardware, 1);
}
.phone_screen {
  height: var(--phone-screen-height);
  overflow: hidden;
  position: relative;
  background: var(--paper);
  border-radius: var(--phone-inner-radius);
}
.phone_pending {
  color: var(--muted);
  padding: var(--space-xl);
}
.phone_chooser {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
  justify-content: center;
}
.phone_choice {
  font-family: var(--font-display);
  color: var(--muted);
  background: transparent;
  border: var(--border-width) solid var(--line);
  padding: var(--space-xs) var(--space-sm);
  cursor: pointer;
}
.phone_choice:hover {
  border-color: var(--line-control);
  color: var(--ink);
}
.phone_choice:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
}
.phone_choice[aria-current=true] {
  color: var(--ink);
  border-color: var(--ink);
}

/* design/sandbox/capture.module.css */
.capture_viewfinder {
  display: grid;
  place-items: center;
  flex: 1;
  min-height: var(--space-xxl);
  background: var(--sand2);
  border: var(--border-width) solid var(--line);
}
.capture_guide {
  width: 78%;
  aspect-ratio: 8 / 5;
  border: var(--focus-width) dashed var(--muted);
}

/* design/sandbox/prose.module.css */
.prose_heading {
  color: var(--muted);
}
.prose_aside {
  color: var(--muted);
}
.prose_points {
  display: grid;
  list-style: none;
  margin: 0;
  padding: 0;
}
.prose_point {
  padding: var(--space-md) 0;
  border-top: var(--border-width) solid var(--line);
}
.prose_set {
  padding: var(--space-lg);
  background: var(--sand);
}
.prose_warning {
  border-left: var(--focus-width) solid var(--orange-deep);
}
.prose_quiet {
  color: var(--muted);
  border-left: var(--focus-width) solid var(--muted);
}

/* design/sandbox/screen.module.css */
.screen_page {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto auto;
  height: 100%;
  overflow: hidden;
  color: var(--ink);
  font-family: var(--font-display);
}
.screen_words {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow-y: auto;
  gap: var(--space-lg);
  padding: 0 var(--space-xl) var(--space-xl);
}
.screen_title {
  padding: var(--space-xl) var(--space-xl) var(--space-lg);
}
.screen_foot {
  background: var(--paper);
  border: var(--border-width) solid var(--ink);
}
.screen_tail {
  height: var(--phone-inner-radius);
}
.screen_aside {
  padding: var(--space-md) var(--space-xl);
  text-align: center;
}
.screen_quiet {
  font-family: var(--font-display);
  color: var(--ink);
  background: transparent;
  border: 0;
  width: 100%;
  min-height: var(--control-height);
  text-decoration: underline;
  cursor: pointer;
}
.screen_quiet:hover {
  background: var(--sand);
}
.screen_quiet:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
}
.screen_then {
  display: grid;
  grid-template-columns: 1fr;
}
.screen_split {
  grid-template-columns: 1fr 1fr;
}
.screen_aside + .screen_then {
  border-top: var(--border-width) solid var(--ink);
}
.screen_act {
  font-family: var(--font-display);
  color: var(--ink);
  background: var(--white);
  border: 0;
  width: 100%;
  min-height: calc(var(--control-height) + var(--space-xl));
  cursor: pointer;
}
.screen_act + .screen_act {
  border-left: var(--border-width) solid var(--ink);
}
.screen_act:hover {
  background: var(--sand);
}
.screen_act:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: calc(var(--focus-offset) * -1);
}
.screen_forward {
  background: var(--orange);
  color: var(--ink-deep);
}
.screen_forward:hover {
  background: var(--orange-deep);
  color: var(--white);
}
.screen_act:disabled {
  background: var(--sand);
  color: var(--ink-disabled);
  cursor: default;
}
.screen_forward:disabled {
  background: var(--sand);
  color: var(--ink-disabled);
}

/* design/sandbox/classify.module.css */
.classify_pairs {
  display: grid;
  list-style: none;
  margin: 0;
  padding: 0;
}
.classify_pair {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: var(--space-md);
  align-items: baseline;
  padding: var(--space-md) 0;
  border-top: var(--border-width) solid var(--line);
}
.classify_asked {
  color: var(--muted);
}
.classify_read {
  font-weight: var(--weight-strong);
  text-align: right;
}

/* design/components/field.module.css */
.field_field {
  display: grid;
  gap: var(--space-xs);
  border: 0;
  margin: 0;
  padding: 0;
}
.field_beside {
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: var(--space-sm);
  min-height: var(--control-height);
  cursor: pointer;
}
.field_beside .field_hint,
.field_beside .field_error {
  grid-column: 2;
}
.field_label {
  font-weight: var(--weight-strong);
  color: var(--ink);
}
.field_required {
  color: var(--orange-deep);
}
.field_hint {
  color: var(--muted);
}
.field_error {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  color: var(--orange-deep);
}
.field_mark {
  flex: none;
  width: 1em;
  height: 1em;
}

/* design/components/input.module.css */
.input_input {
  font-family: var(--font-display);
  color: var(--ink);
  background: var(--white);
  border: var(--border-width) solid var(--line-control);
  min-height: var(--control-height);
  padding: var(--space-sm) var(--space-md);
  width: 100%;
}
.input_input:hover:not(:disabled) {
  border-color: var(--ink);
}
.input_input:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
  border-color: var(--ink);
}
.input_input:disabled {
  background: var(--sand);
  color: var(--ink-disabled);
  border-color: var(--line);
}
.input_invalid {
  border-color: var(--orange-deep);
}

/* design/sandbox/compose.module.css */
.compose_attached {
  padding: var(--space-md) 0;
  border-bottom: var(--border-width) solid var(--line);
}
.compose_room {
  color: var(--muted);
}

/* design/components/select.module.css */
.select_select {
  font-family: var(--font-display);
  color: var(--ink);
  background: var(--white);
  border: var(--border-width) solid var(--line-control);
  min-height: var(--control-height);
  padding: var(--space-sm) var(--space-md);
  width: 100%;
}
.select_select:hover:not(:disabled) {
  border-color: var(--ink);
}
.select_select:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
  border-color: var(--ink);
}
.select_select:disabled {
  background: var(--sand);
  color: var(--ink-disabled);
  border-color: var(--line);
}
.select_invalid {
  border-color: var(--orange-deep);
}

/* design/sandbox/delivery.module.css */
.delivery_rows {
  display: grid;
}
.delivery_one {
  display: grid;
  gap: var(--space-xs);
  padding: var(--space-md) 0;
  border-top: var(--border-width) solid var(--line);
}
.delivery_address {
  overflow-wrap: anywhere;
}
.delivery_state {
  color: var(--ink);
}
.delivery_said {
  color: var(--muted);
}

/* design/components/file.module.css */
.file_file {
  font-family: var(--font-display);
  color: var(--muted);
  background: transparent;
  border: 0;
  padding: 0;
  width: 100%;
}
.file_file::file-selector-button {
  font-size: var(--size-md);
  line-height: var(--leading-normal);
  font-weight: var(--weight-strong);
  letter-spacing: var(--tracking-caps);
  text-transform: uppercase;
  font-family: var(--font-display);
  color: var(--ink);
  background: var(--white);
  border: var(--border-width) solid var(--line-control);
  min-height: var(--control-height);
  padding: var(--space-sm) var(--space-lg);
  margin-right: var(--space-md);
  cursor: pointer;
  transition: border-color var(--motion-fast);
}
.file_file:hover:not(:disabled)::file-selector-button {
  border-color: var(--ink);
}
.file_file:focus-visible {
  outline: none;
}
.file_file:focus-visible::file-selector-button {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
  border-color: var(--ink);
}
.file_file:disabled {
  color: var(--ink-disabled);
}
.file_file:disabled::file-selector-button {
  background: var(--sand);
  color: var(--ink-disabled);
  border-color: var(--line);
  cursor: default;
}
.file_invalid::file-selector-button {
  border-color: var(--orange-deep);
}

/* design/components/bar.module.css */
.bar_bar {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: var(--space-md);
  min-height: var(--control-height);
  padding: var(--space-sm) 0;
  border-bottom: var(--border-width) solid var(--line);
}
.bar_name {
  color: var(--muted);
  overflow-wrap: anywhere;
}

/* design/components/row.module.css */
.row_row {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: var(--space-md);
  padding: var(--space-md) 0;
  min-height: var(--control-height);
}
.row_row + .row_row {
  border-top: var(--border-width) solid var(--line);
}
.row_lines {
  display: grid;
  gap: var(--space-xs);
  min-width: 0;
}
.row_line {
  color: var(--ink);
  overflow-wrap: anywhere;
}
.row_meta {
  color: var(--muted);
  overflow-wrap: anywhere;
}
.row_mark {
  justify-self: end;
}

/* design/components/verdict.module.css */
.verdict_mark {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
}
.verdict_glyph {
  flex: none;
  width: 1em;
  height: 1em;
}
.verdict_word {
  color: var(--ink);
}
.verdict_glyph.verdict_attested {
  color: var(--attested);
}
.verdict_glyph.verdict_asserted {
  color: var(--asserted);
}
.verdict_glyph.verdict_failed {
  color: var(--failed);
}
.verdict_glyph.verdict_unknown {
  color: var(--muted);
}

/* design/sandbox/portfolio.module.css */
.portfolio_expired {
  color: var(--orange-deep);
  font-weight: var(--weight-strong);
}

/* design/sandbox/portfolio-empty.module.css */
.portfolio_empty_nothing {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-lg);
  flex: 1;
  padding: var(--space-xl) 0;
  border-top: var(--border-width) solid var(--line);
  border-bottom: var(--border-width) solid var(--line);
}

/* design/components/checkbox.module.css */
.checkbox_box {
  appearance: none;
  -webkit-appearance: none;
  flex: none;
  width: var(--space-xl);
  height: var(--space-xl);
  background: var(--white);
  border: var(--border-width) solid var(--line-control);
  display: inline-grid;
  place-content: center;
  cursor: pointer;
}
.checkbox_box:checked {
  background: var(--ink);
  border-color: var(--ink);
}
.checkbox_box:checked::after {
  content: "";
  width: var(--space-sm);
  height: var(--space-md);
  margin-bottom: var(--space-xs);
  border: solid var(--white);
  border-width: 0 var(--focus-width) var(--focus-width) 0;
  transform: rotate(45deg);
}
.checkbox_box:hover:not(:disabled),
label:hover > .checkbox_box:not(:disabled) {
  border-color: var(--ink);
}
.checkbox_box:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
}
.checkbox_box:disabled {
  background: var(--sand);
  border-color: var(--line);
  cursor: default;
}
.checkbox_box:disabled:checked {
  background: var(--ink-disabled);
  border-color: var(--ink-disabled);
}
.checkbox_invalid {
  border-color: var(--orange-deep);
}

/* design/sandbox/choose.module.css */
.choose_tally {
  display: flex;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-sm) 0;
  border-bottom: var(--border-width) solid var(--line);
}
.choose_of {
  color: var(--muted);
}
.choose_list {
  display: grid;
}

/* corp/src/index.module.css */
.index_page {
  --page-max: 55rem;
  --page-side: max(var(--space-xl), calc((100% - var(--page-max)) / 2));
}
.index_page > section,
.index_banded > * {
  padding-inline: var(--page-side);
}
.index_eyebrow {
  color: var(--muted);
}
.index_wordmark {
  color: var(--ink);
}
.index_headline {
}
.index_turning {
  color: var(--orange-deep);
}
.index_spoken {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.index_heading {
  color: var(--muted);
}
.index_actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-md);
}
.index_staged {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
.index_frame {
  display: grid;
}
.index_point {
  display: grid;
  gap: var(--space-xs);
}
.index_pointTitle {
  color: var(--ink);
}
.index_audience {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-xs);
}
.index_audienceIs {
  color: var(--muted);
  background: transparent;
  border: var(--border-width) solid var(--line);
  padding: var(--space-sm) var(--space-md);
  cursor: pointer;
}
.index_audienceIs:hover {
  color: var(--ink);
  border-color: var(--line-control);
}
.index_audienceIs:focus-visible {
  outline: var(--focus-width) solid var(--ink);
  outline-offset: var(--focus-offset);
}
.index_audienceIs[aria-pressed=true] {
  color: var(--white);
  background: var(--ink);
  border-color: var(--ink);
}
.index_room {
  display: grid;
  min-height: 0;
}
@media (max-width: 44rem) {
  .index_frame {
    --stage: 1;
    grid-template-columns: minmax(0, 1fr);
    --stage-length: 250lvh;
    height: var(--stage-length);
  }
  .index_room {
    padding: var(--space-xl);
  }
  .index_pinned {
    position: sticky;
    top: 0;
    height: 100dvh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    grid-template-columns: minmax(0, 1fr);
    place-items: stretch;
    overflow: clip;
  }
  .index_drawn {
    width: max-content;
    transform: translate(var(--stage-x, 0), var(--stage-y, 0)) scale(var(--stage-scale, 1));
    transform-origin: 0 0;
  }
}
@media (min-width: 44rem) {
  .index_staged {
    grid-template-columns: minmax(calc(var(--measure-tight) + var(--page-side) + var(--space-xl)), 1fr) minmax(0, var(--frame-natural, auto)) var(--page-side);
  }
  .index_banded {
    grid-area: 1 / 1 / 2 / 4;
  }
  .index_banded > * {
    padding-right: calc(var(--page-side) + var(--frame-width, 0px) + var(--space-xl));
  }
  .index_frame {
    --stage: 0;
    height: auto;
    grid-area: 1 / 2 / 2 / 3;
    justify-items: start;
  }
  .index_pinned {
    position: sticky;
    top: var(--space-xxl);
    display: block;
    place-items: start;
    width: var(--frame-width, auto);
    height: var(--frame-height, auto);
    overflow: clip;
  }
  .index_drawn {
    align-self: start;
    transform: scale(var(--frame-scale, 1));
    transform-origin: top left;
  }
}
