:where(.cp_page_body) > :is(section, div, figure, p) {
  max-inline-size: var(--cp-measure);
}

:where(.cp_set_opening, .cp_set_block) {
  margin-top: 0;
  margin-bottom: 1.75rem;
}

:where(.cp_set_count) {
  margin-top: 0;
  margin-bottom: 0.15rem;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cp-orchid-ink);
}

:where(.cp_set_title, .cp_order_title, .cp_method_title, .cp_figure_title, .cp_file_title, .cp_claim_title, .cp_reading_title, .cp_next_title, .cp_aim_title, .cp_compare_title, .cp_guide_title, .cp_panel_title) {
  margin-top: 0;
  margin-bottom: 0.6rem;
  font-family: var(--cp-sign-face);
  font-size: 1.375rem;
  line-height: 1.2;
  color: var(--cp-plum);
}

:where(.cp_sub_title) {
  margin-top: 1rem;
  margin-bottom: 0.4rem;
  font-size: 1.0625rem;
  color: var(--cp-plum);
}

:where(.cp_cue_list) {
  margin-top: 0;
  margin-bottom: 0.9rem;
  display: grid;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  row-gap: 0.55rem;
}

:where(.cp_cue_list) > :is(dt) {
  padding-top: 0.2rem;
  font-size: 0.75rem;
  font-variant-numeric: tabular-nums;
  color: var(--cp-orchid-ink);
}

:where(.cp_cue_list) > :is(dd) {
  margin-left: 0;
}

:where(.cp_chalk_mark) {
  font-style: inherit;
  background-image: linear-gradient(transparent 62%, var(--cp-blush) 62%);
}

:where(.cp_cue_list, .cp_point_list, .cp_step_list) :is(code) {
  padding-left: 0.2em;
  padding-right: 0.2em;
  border-radius: 0.2em;
  background-color: var(--cp-mist);
}

:where(.cp_point_list, .cp_row_cells, .cp_bar_rows, .cp_date_rows, .cp_aim_ticks, .cp_compare_points, .cp_link_list, .cp_floor_cells) {
  padding-left: 0;
  list-style-type: none;
}

:where(.cp_point_list) > :is(li) {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: 0.3rem;
}

:where(.cp_point_list) > :is(li)::before {
  content: "";
  position: absolute;
  inset-block-start: 0.5em;
  inset-inline-start: 0.2rem;
  inline-size: 0.55rem;
  block-size: 0.55rem;
  border-radius: 50%;
  border-width: 2px;
  border-style: solid;
  border-color: var(--cp-plum);
}

:where(.cp_step_list, .cp_order_list, .cp_claim_list, .cp_reading_list, .cp_next_list, .cp_aim_route, .cp_guide_steps, .cp_credit_list) {
  padding-left: 1.4rem;
}

:where(.cp_step_list, .cp_order_list, .cp_claim_list, .cp_reading_list, .cp_next_list, .cp_aim_route, .cp_guide_steps, .cp_credit_list) > :is(li) {
  margin-bottom: 0.35rem;
}

:where(.cp_quote_line) {
  margin-top: 1rem;
  margin-right: 0;
  margin-bottom: 1rem;
  margin-left: 0;
  padding-left: 1rem;
  border-left-width: 0.3rem;
  border-left-style: solid;
  border-left-color: var(--cp-blush);
  font-family: var(--cp-sign-face);
  font-size: 1.125rem;
}

:where(.cp_photo_frame) {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 1.25rem;
  margin-left: 0;
}

:where(.cp_photo_frame) > :is(img) {
  display: block;
  inline-size: 100%;
  block-size: auto;
  object-fit: cover;
  object-position: var(--cp-focus-x, 50%) var(--cp-focus-y, 50%);
  border-radius: 0.5rem;
}

:where(.cp_focus_x0) { --cp-focus-x: 0%; }
:where(.cp_focus_x25) { --cp-focus-x: 25%; }
:where(.cp_focus_x75) { --cp-focus-x: 75%; }
:where(.cp_focus_x100) { --cp-focus-x: 100%; }
:where(.cp_focus_y0) { --cp-focus-y: 0%; }
:where(.cp_focus_y25) { --cp-focus-y: 25%; }
:where(.cp_focus_y75) { --cp-focus-y: 75%; }
:where(.cp_focus_y100) { --cp-focus-y: 100%; }

:where(.cp_photo_note) {
  margin-top: 0.4rem;
  font-size: 0.875rem;
}

:where(.cp_photo_credit) {
  color: var(--cp-orchid-ink);
}

:where(.cp_station_card) {
  margin-top: 0;
  margin-bottom: 1.5rem;
  padding-top: 1rem;
  padding-right: 1.1rem;
  padding-bottom: 1rem;
  padding-left: 1.1rem;
  border-width: 1px;
  border-style: solid;
  border-color: var(--cp-rule);
  border-top-width: 0.3rem;
  border-top-color: var(--cp-plum);
  border-radius: 0.6rem;
  background-color: #fff;
  container-type: inline-size;
}

:where(.cp_station_label) {
  margin-top: 0;
  margin-bottom: 0.2rem;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--cp-orchid-ink);
}

:where(.cp_station_title) {
  margin-top: 0;
  margin-bottom: 0.6rem;
  font-family: var(--cp-sign-face);
  font-size: 1.25rem;
  line-height: 1.2;
  color: var(--cp-plum);
}

:where(.cp_station_lede, .cp_station_caption, .cp_station_solo) {
  margin-top: 0;
  margin-bottom: 0.6rem;
}

:where(.cp_station_caption) {
  font-size: 0.875rem;
  color: var(--cp-orchid-ink);
}

:where(.cp_row_stack) {
  display: grid;
  row-gap: 0.4rem;
  margin-bottom: 0.6rem;
}

:where(.cp_row_card, .cp_floor_row) {
  padding-top: 0.45rem;
  padding-right: 0.7rem;
  padding-bottom: 0.45rem;
  padding-left: 0.7rem;
  border-radius: 0.4rem;
  background-color: var(--cp-mist);
}

:where(.cp_row_card, .cp_floor_row) > :is(summary) {
  cursor: pointer;
  font-weight: 600;
}

:where(.cp_row_card, .cp_floor_row) > :is(summary) > :is(.cp_cell_key) {
  display: inline;
  margin-right: 0.4rem;
}

:where(.cp_row_cells, .cp_floor_cells) {
  margin-top: 0.35rem;
  margin-bottom: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
  column-gap: 1rem;
}

:where(.cp_cell_key) {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--cp-orchid-ink);
}

:where(.cp_count_rule, .cp_count_name, .cp_angle_name) {
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cp-orchid-ink);
}

:where(.cp_count_answer) {
  color: var(--cp-plum);
}

:where(.cp_count_panel, .cp_angle_panel) {
  display: grid;
  row-gap: 0.5rem;
  margin-bottom: 0.6rem;
  padding-top: 0.75rem;
  padding-right: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 0.75rem;
  border-radius: 0.4rem;
  background-color: var(--cp-mist);
}

:where(.cp_count_panel, .cp_angle_panel)[hidden],
:where(.cp_scale_panel, .cp_span_panel, .cp_aim_picker, .cp_aim_memory)[hidden] {
  display: none;
}

:where(.cp_count_field, .cp_angle_field, .cp_count_result, .cp_angle_result, .cp_scale_panel, .cp_span_panel) {
  margin-top: 0;
  margin-bottom: 0;
}

:where(.cp_count_field, .cp_angle_field) :is(input) {
  inline-size: 7.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 1rem;
}

:where(.cp_count_field) :is(small) {
  display: block;
  color: var(--cp-orchid-ink);
}

:where(.cp_bar_rows) > :is(li) {
  display: grid;
  grid-template-columns: minmax(6rem, 0.35fr) minmax(0, 1fr) auto;
  grid-template-areas: "name track amount";
  column-gap: 0.75rem;
  align-items: center;
  margin-bottom: 0.4rem;
}

:where(.cp_bar_name) {
  grid-area: name;
}

:where(.cp_bar_track) {
  grid-area: track;
  inline-size: 100%;
  block-size: 0.75rem;
}

:where(.cp_bar_track) :is(line) {
  stroke: var(--cp-orchid);
  stroke-width: 12;
}

:where(.cp_bar_amount) {
  grid-area: amount;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

:where(.cp_date_rows) > :is(li) {
  display: grid;
  grid-template-columns: 8.5rem minmax(0, 1fr);
  grid-template-areas:
    "when name"
    "when detail";
  column-gap: 0.75rem;
  margin-bottom: 0.6rem;
}

:where(.cp_date_rows) > :is(li)[hidden] {
  display: none;
}

:where(.cp_date_rows) :is(time) {
  grid-area: when;
  font-size: 0.875rem;
  color: var(--cp-orchid-ink);
}

:where(.cp_date_name) {
  grid-area: name;
}

:where(.cp_date_detail) {
  grid-area: detail;
}

:where(.cp_data_credit, .cp_data_terms, .cp_data_file) {
  margin-top: 0;
  margin-bottom: 0.35rem;
  font-size: 0.8125rem;
  overflow-wrap: anywhere;
}

:where(.cp_compare_block, .cp_method_block, .cp_figure_block, .cp_file_block, .cp_claim_block, .cp_reading_block, .cp_next_block, .cp_aim_block, .cp_order_block, .cp_guide_block) {
  margin-top: 0;
  margin-bottom: 1.75rem;
  padding-top: 1rem;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: var(--cp-rule);
}

:where(.cp_compare_facts, .cp_method_facts, .cp_file_facts, .cp_figure_list) {
  margin-top: 0;
  margin-bottom: 0.75rem;
}

:where(.cp_compare_pair, .cp_method_pair, .cp_file_pair, .cp_figure_entry) {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: var(--cp-rule);
}

:where(.cp_compare_pair, .cp_method_pair, .cp_file_pair, .cp_figure_entry) > :is(dt) {
  font-weight: 700;
  color: var(--cp-plum);
}

:where(.cp_compare_pair, .cp_method_pair, .cp_file_pair, .cp_figure_entry) > :is(dd) {
  margin-left: 0;
}

:where(.cp_figure_value) {
  font-family: var(--cp-sign-face);
  font-size: 1.25rem;
  color: var(--cp-plum);
}

:where(.cp_figure_note) {
  font-size: 0.875rem;
  font-style: italic;
}

:where(.cp_fit_table) {
  inline-size: 100%;
  border-collapse: collapse;
}

:where(.cp_fit_table) > :is(caption) {
  caption-side: top;
  text-align: start;
  font-weight: 700;
  padding-bottom: 0.4rem;
}

:where(.cp_fit_table) :is(th, td) {
  padding-top: 0.35rem;
  padding-right: 0.6rem;
  padding-bottom: 0.35rem;
  padding-left: 0;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: var(--cp-rule);
  text-align: start;
  vertical-align: top;
}

:where(.cp_method_lede) {
  margin-top: 0;
  margin-bottom: 0.6rem;
}

:where(.cp_claim_text) {
  display: block;
}

:where(.cp_claim_list) :is(q) {
  display: block;
  font-style: italic;
}

:where(.cp_next_kind) {
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cp-orchid-ink);
}

:where(.cp_next_why, .cp_aim_why) {
  display: block;
  font-size: 0.875rem;
}

:where(.cp_aim_panel)[hidden] {
  display: none;
}

:where(.cp_aim_name) {
  margin-top: 0.6rem;
  margin-bottom: 0.4rem;
  font-size: 1.0625rem;
  color: var(--cp-plum);
}

:where(.cp_aim_picker, .cp_aim_memory, .cp_aim_note, .cp_aim_tally) {
  margin-top: 0;
  margin-bottom: 0.6rem;
}

:where(.cp_aim_picker) :is(select) {
  margin-left: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 1rem;
}

:where(.cp_aim_reset) {
  margin-left: 0.75rem;
  padding-top: 0.25rem;
  padding-right: 0.7rem;
  padding-bottom: 0.25rem;
  padding-left: 0.7rem;
  border-width: 1px;
  border-style: solid;
  border-color: var(--cp-plum);
  border-radius: 999px;
  background-color: transparent;
  color: var(--cp-plum);
  font-size: 0.875rem;
}

:where(.cp_aim_note, .cp_aim_tally) {
  font-size: 0.875rem;
  color: var(--cp-orchid-ink);
}

:where(.cp_health_check) {
  margin-top: 0;
  margin-bottom: 1.25rem;
  padding-top: 0.6rem;
  padding-right: 0.8rem;
  padding-bottom: 0.6rem;
  padding-left: 0.8rem;
  border-left-width: 0.3rem;
  border-left-style: solid;
  border-left-color: var(--cp-plum);
  background-color: var(--cp-mist);
  font-size: 0.9375rem;
  overflow-wrap: anywhere;
}

:where(.cp_check_mark) {
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--cp-orchid-ink);
}

:where(.cp_guide_back) {
  font-weight: 600;
}

:where(.cp_plan_facts) {
  margin-top: 0;
  margin-bottom: 1.5rem;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 0.75rem;
  row-gap: 0.4rem;
}

:where(.cp_plan_facts) > :is(dt) {
  font-size: 0.8125rem;
  color: var(--cp-orchid-ink);
}

:where(.cp_plan_facts) > :is(dd) {
  margin-left: 0;
  font-weight: 600;
}

:where(.cp_panel_title) {
  font-size: 1.0625rem;
}

@container (max-width: 26rem) {
  :where(.cp_bar_rows) > :is(li) {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "name amount"
      "track track";
  }

  :where(.cp_date_rows) > :is(li) {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "when"
      "name"
      "detail";
  }
}
