/* Hallmark · pre-emit critique: P4 H4 E4 S4 R4 V4 */
/* Studied DNA: Signal Grid. Contrast gates 40–41 passed in the audited coverage;
   scoped exceptions and exact coverage are documented in design-qa.md. */
/* Hallmark · macrostructure: Workbench · tone: precise and calm · anchor hue: lemon
   Signal Grid: presentation only. Original controls remain in their forms;
   native disclosures expose the full navigation and filter set. */
@import url("./tokens.css?v=e3a269799953");
.signal-chart-tooltip {
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.8;
}
.signal-chart-tooltip-title {
  font-weight: 600;
  margin-bottom: 4px;
  border-bottom: 1px solid var(--sg-rule);
  padding-bottom: 4px;
}
.signal-chart-success {
  color: var(--sg-success);
}
.signal-chart-warning {
  color: var(--sg-warning);
}
.signal-summary-table {
  margin: 10px 0;
}
body.active_admin .signal-receipt-details > tbody > tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--sg-rule);
}
body.active_admin .signal-receipt-details > tbody > tr > td {
  min-width: 0;
  padding: 0;
  overflow-wrap: anywhere;
}
body.active_admin .signal-receipt-details > tbody > tr > td:nth-child(2) {
  grid-column: 1/-1;
  grid-row: 2;
}
body.active_admin .signal-receipt-details > tbody > tr > td:nth-child(3) {
  grid-column: 2;
  grid-row: 1;
}
@font-face {
  font-family: Signal Golos;
  src: url("./golos.ttf") format("truetype");
  font-weight: 400 900;
  font-display: swap;
}
@font-face {
  font-family: Signal Plex;
  src: url("./plex.ttf") format("truetype");
  font-weight: 100 700;
  font-display: swap;
}
html {
  background: var(--sg-bg);
}
html body.active_admin,
html body.signal-sidekiq,
html body.rails-default-error-page {
  min-width: 0;
  margin: 0;
  background: var(--sg-bg);
  color: var(--sg-text);
  font: 14px/1.5 var(--sg-font);
  text-shadow: none;
}
/* Sidekiq's OS-dark stylesheet marks html/body !important. Keep a manual
   light preference authoritative too, without affecting other surfaces. */
html:has(> body.signal-sidekiq),
body.signal-sidekiq {
  background-color: var(--sg-bg) !important;
}
body.active_admin *,
body.signal-sidekiq *,
body.rails-default-error-page * {
  box-sizing: border-box;
  text-shadow: none;
}
body.active_admin #wrapper {
  width: 100%;
  min-width: 0;
  padding: 0;
}
body.active_admin a,
body.active_admin a:visited,
body.signal-sidekiq a,
body.signal-sidekiq a:visited,
body.rails-default-error-page a,
body.rails-default-error-page a:visited {
  color: var(--sg-link);
  text-decoration: underline;
  text-underline-offset: 3px;
  overflow-wrap: anywhere;
}
body.active_admin h1,
body.active_admin h2,
body.active_admin h3,
body.active_admin h4,
body.signal-sidekiq h1,
body.signal-sidekiq h2,
body.signal-sidekiq h3,
body.rails-default-error-page h1 {
  font-family: var(--sg-heading);
  color: var(--sg-text);
  text-shadow: none;
}
body.active_admin :focus-visible,
body.signal-sidekiq :focus-visible,
body.rails-default-error-page :focus-visible {
  outline: 2px solid var(--sg-focus) !important;
  outline-offset: 3px;
}
body.active_admin #header {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) 250px;
  align-items: center;
  gap: 8px 20px;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 80px;
  padding: 8px var(--sg-gutter);
  background: var(--sg-nav);
  color: var(--sg-nav-text);
  box-shadow: none;
  border: 0;
  text-shadow: none;
}
body.active_admin #header h1.site_title {
  padding: 0;
  margin: 0;
  font-size: 20px;
  line-height: 32px;
  white-space: nowrap;
  color: var(--sg-nav-text);
}
body.active_admin #header h1.site_title a {
  color: inherit;
  text-decoration: none;
}
body.active_admin #header h1.site_title img {
  display: block;
  width: 124px;
  max-width: 100%;
  height: 24px;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
}
body.active_admin #header .header-item {
  display: flex;
  margin: 0;
  padding: 0;
  float: none;
  width: auto;
}
body.active_admin #header ul.tabs {
  display: flex;
  /* Override legacy 100%: enhancement changes the menu's containing block. */
  height: auto;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 8px;
  min-width: 0;
}
body.active_admin #header ul.tabs > li {
  margin: 0;
  float: none;
  display: block;
  max-width: 100%;
}
body.active_admin #header ul.tabs > li > a {
  display: block;
  padding: 6px 4px;
  color: var(--sg-nav-text);
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 13px;
  font-weight: 400;
  line-height: 18px;
  white-space: normal;
  text-decoration: none;
}
body.active_admin #header ul.tabs > li.current > a {
  color: var(--sg-accent);
  box-shadow: inset 0 -3px var(--sg-accent);
  font-weight: 600;
}
body.active_admin #header ul.tabs > li > a:hover,
body.active_admin #header ul.tabs > li:hover > a,
body.active_admin #header ul.tabs > li > a:active,
body.active_admin #header ul.tabs > li > a:focus-visible,
body.active_admin
  #header
  ul.tabs
  > li
  ul
  a:is(:hover, :active, :focus-visible) {
  color: var(--sg-accent);
  background: var(--sg-nav-hover);
}
body.active_admin #header :focus-visible,
body.signal-sidekiq .navbar :focus-visible {
  outline-color: var(--sg-accent) !important;
}
body.active_admin #header ul.tabs > li ul {
  background: var(--sg-nav);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  box-shadow: none;
  max-width: min(320px, 90vw);
}
body.active_admin #header ul.tabs > li ul a {
  color: var(--sg-nav-text);
}
body.active_admin #header #utility_nav {
  max-width: 250px;
  display: grid;
  width: 250px;
  grid-template-columns: minmax(0, 1fr) 40px;
  grid-template-rows: 18px 40px;
  align-items: center;
  justify-items: end;
}
body.active_admin #header #utility_nav #current_user {
  grid-column: 1/-1;
  grid-row: 1;
  min-width: 0;
}
body.active_admin #header #utility_nav #current_user a {
  padding-block: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Reserve both controls before DOMContentLoaded adds the theme button. */
body.active_admin #header #utility_nav #logout {
  grid-column: 1;
  grid-row: 2;
}
body.active_admin #header #utility_nav .signal-theme-item {
  grid-column: 2;
  grid-row: 2;
}
body.active_admin #header button.signal-theme-toggle:hover {
  color: var(--sg-accent);
  background: var(--sg-nav);
}
body.active_admin #header .signal-navigation {
  min-width: 0;
}
body.active_admin #header .signal-navigation > summary {
  display: none;
  padding: 10px 6px;
  cursor: pointer;
  color: var(--sg-nav-text);
  font-size: 14px;
}
html body button.signal-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 8px;
  width: 40px;
  height: 40px;
  min-height: 40px;
  padding: 8px;
  margin: 0;
  border: 0;
  border-radius: 2px;
  cursor: pointer;
  box-shadow: none;
  background: transparent;
  color: var(--sg-text);
  font: 14px/1.4 var(--sg-font);
}
html body button.signal-theme-toggle:is(:hover, :active, :focus-visible) {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin
  #header
  button.signal-theme-toggle:is(:hover, :active, :focus-visible),
body.signal-sidekiq
  .navbar
  button.signal-theme-toggle:is(:hover, :active, :focus-visible) {
  background: var(--sg-nav-hover);
  color: var(--sg-accent);
}
html body .signal-theme-icon {
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  background: currentColor;
  mask: url("./icons/moon.svg") center / contain no-repeat;
  -webkit-mask: url("./icons/moon.svg") center / contain no-repeat;
}
html body [data-theme-target="light"] .signal-theme-icon {
  mask-image: url("./icons/sun.svg");
  -webkit-mask-image: url("./icons/sun.svg");
}
html body .signal-theme-icon img,
html body .signal-theme-label {
  display: none;
}
html body #header .signal-theme-toggle,
html body .navbar .signal-theme-toggle {
  color: var(--sg-nav-text);
}
html body button.signal-theme-floating {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10;
  background: var(--sg-surface);
  border: 1px solid var(--sg-rule);
}
body.active_admin #title_bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px var(--sg-gutter);
  margin: 0;
  min-height: 0;
  background: var(--sg-bg);
  border: 0;
  border-bottom: 1px solid var(--sg-rule);
  box-shadow: none;
  color: var(--sg-text);
  text-shadow: none;
}
/* Legacy float clearing creates a phantom flex row and an extra 16px gap. */
body.active_admin #title_bar::after {
  display: none;
}
body.active_admin #title_bar #titlebar_left,
body.active_admin #title_bar #titlebar_right {
  display: block;
  float: none;
  max-width: 100%;
  width: auto;
  min-width: 0;
  height: auto;
}
body.active_admin #title_bar h2 {
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1.2;
  letter-spacing: -0.5px;
  margin: 4px 0 0;
  overflow-wrap: anywhere;
}
body.active_admin .breadcrumb {
  font-size: 12px;
  line-height: 1.5;
  color: var(--sg-muted);
  white-space: normal;
}
body.active_admin .breadcrumb a {
  color: var(--sg-muted);
  text-transform: none;
}
body.active_admin .breadcrumb .breadcrumb_sep,
body.active_admin form abbr {
  color: var(--sg-muted);
}
body.active_admin .attributes_table .empty {
  color: var(--sg-muted);
}
body.active_admin .blank_slate_container .blank_slate {
  color: var(--sg-muted);
}
body.active_admin .action_items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  white-space: normal;
}
body.active_admin .action_items span.action_item {
  margin: 0;
  padding: 0;
  display: block;
}
body.active_admin .action_items span.action_item:empty {
  display: none;
}
body.active_admin .action_items span.action_item a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
}
body.active_admin #active_admin_content {
  padding: 20px var(--sg-gutter);
  min-width: 0;
  width: 100%;
}
body.active_admin #active_admin_content.with_sidebar {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
body.active_admin #active_admin_content #main_content_wrapper {
  float: none;
  width: 100%;
  min-width: 0;
}
body.active_admin #active_admin_content #main_content_wrapper #main_content {
  margin: 0;
  min-width: 0;
}
body.active_admin #active_admin_content #sidebar {
  float: none;
  width: 100%;
  margin: 0;
  min-width: 0;
  order: -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
body.active_admin #filters_sidebar_section {
  grid-column: 1/-1;
  order: 2;
}
body.active_admin #search_status_sidebar_section {
  order: 1;
}
body.active_admin #search_status_sidebar_section > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 20px;
}
body.active_admin #search_status_sidebar_section h4,
body.active_admin #search_status_sidebar_section ul {
  margin: 0;
}
body.active_admin
  #search_status_sidebar_section
  .active_filters_sidebar_content,
body.active_admin
  #search_status_sidebar_section
  .active_filters_sidebar_content
  > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  margin: 0 !important;
  font-size: 13px;
}
body.active_admin
  #search_status_sidebar_section
  .active_filters_sidebar_content
  h4 {
  margin: 0 !important;
  font: inherit;
}
body.active_admin
  #search_status_sidebar_section
  .active_filters_sidebar_content
  ul {
  padding-left: 18px;
}
body.active_admin .sidebar_section,
body.active_admin .panel {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 24px;
}
body.active_admin .sidebar_section {
  margin: 0;
}
body.active_admin .signal-filter-panel > summary {
  padding: 12px 16px;
  cursor: pointer;
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .signal-filter-panel > summary h3 {
  display: inline;
  font-size: 16px;
  line-height: 1.4;
  margin: 0;
}
body.active_admin .signal-filter-panel[open] > summary {
  border-bottom: 1px solid var(--sg-rule);
}
body.active_admin .panel > h3,
body.active_admin .sidebar_section > h3 {
  margin: 0;
  padding: 8px 0;
  background: transparent;
  color: var(--sg-text);
  border: 0;
  border-bottom: 1px solid var(--sg-rule);
  box-shadow: none;
  text-shadow: none;
  font-size: 16px;
  line-height: 1.4;
}
body.active_admin .panel_contents,
body.active_admin .sidebar_section > div {
  padding: 12px 0;
  min-width: 0;
}
body.active_admin .filter_form,
body.active_admin .signal-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: end;
  gap: var(--sg-field-row-gap) 16px;
}
body.active_admin .filter_form > div,
body.active_admin .signal-filter-grid > div {
  min-width: 0;
  margin: 0;
}
body.active_admin .signal-extra-filters {
  grid-column: 1/-1;
  min-width: 0;
}
body.active_admin .signal-extra-filters > summary {
  padding: 10px 0;
  cursor: pointer;
  color: var(--sg-link);
  font-size: 13px;
  font-weight: 500;
}
body.active_admin .signal-extra-filters[open] > .signal-filter-grid {
  padding: 8px 0 16px;
}
body.active_admin #sidebar > .sidebar_section:not(#filters_sidebar_section) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 8px 12px;
  gap: 8px 16px;
}
body.active_admin
  #sidebar
  > .sidebar_section:not(#filters_sidebar_section)
  > h3 {
  font: 500 13px/1.5 var(--sg-font);
  border: 0;
  background: none;
  padding: 0;
}
body.active_admin
  #sidebar
  > .sidebar_section:not(#filters_sidebar_section)
  > div {
  padding: 0;
}
body.active_admin #sidebar > .sidebar_section:not(#filters_sidebar_section) ul {
  margin: 0;
}
body.active_admin .filter_form .buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  grid-column: 1/-1;
  padding: 0;
  margin: 0;
}
body.active_admin .filter_form label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  text-transform: none;
  color: var(--sg-muted);
  margin: 0 0 var(--sg-field-label-gap);
  float: none;
  width: auto;
}
body.active_admin .filter_form .filter_numeric,
body.active_admin .filter_form .filter_date_range,
body.active_admin .filter_form .select_and_search {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sg-field-label-gap) 8px;
}
body.active_admin .filter_form .filter_numeric label,
body.active_admin .filter_form .filter_date_range label,
body.active_admin .filter_form .select_and_search label {
  width: 100%;
  margin-bottom: 0;
}
body.active_admin .filter_form .filter_numeric > input,
body.active_admin .filter_form .filter_numeric > select,
body.active_admin .filter_form .filter_date_range > input,
body.active_admin .filter_form .select_and_search > input {
  flex: 1 1 90px;
  width: 0;
  min-width: 0;
  margin: 0;
}
body.active_admin .filter_form .filter_numeric .select2,
body.active_admin .filter_form .select_and_search .select2 {
  flex: 1 1 90px;
}
body.active_admin #search_status_sidebar_section .current_filter {
  overflow-wrap: anywhere;
}
body.active_admin .table_tools {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  min-height: 0;
  margin: 0 0 20px;
  padding: 0;
}
body.active_admin :is(.table_tools, .signal-scopes-panel) .scopes {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  float: none;
  white-space: normal;
  margin: 0;
  padding: 0;
}
body.active_admin :is(.table_tools, .signal-scopes-panel) .scopes li {
  display: block;
  float: none;
  margin: 0;
}
body.active_admin
  :is(.table_tools, .signal-scopes-panel)
  .scopes
  li
  a.table_tools_button {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--sg-text);
  background: transparent;
  box-shadow: none;
  text-shadow: none;
  text-decoration: none;
  font-size: 13px;
  line-height: 1.3;
  white-space: normal;
}
body.active_admin
  :is(.table_tools, .signal-scopes-panel)
  .scopes
  li.selected
  a {
  background: var(--sg-raised);
  color: var(--sg-text);
  border-bottom-color: var(--sg-focus);
  font-weight: 600;
}
body.active_admin :is(.table_tools, .signal-scopes-panel) .scopes .count {
  color: inherit;
  opacity: 1;
  font-weight: 400;
}
body.active_admin .ticket_type_switcher {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.active_admin .ticket_type_switcher a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 12px;
}
body.active_admin .table_tools_segmented_control {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 0;
  margin: 0;
}
body.active_admin .table_tools_segmented_control li {
  float: none;
  display: block;
  margin: 0;
}
body.active_admin .table_tools_segmented_control li a.table_tools_button,
body.active_admin form.filter_form a.clear_filters_btn {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 12px;
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  box-shadow: none;
  background: var(--sg-surface);
  color: var(--sg-text);
  font: 500 14px/1.4 var(--sg-font);
  text-decoration: none;
  text-shadow: none;
}
body.active_admin
  .table_tools_segmented_control
  li.selected
  a.table_tools_button {
  background: var(--sg-accent);
  border-color: var(--sg-border);
  color: var(--sg-accent-text);
}
body.active_admin table,
body.signal-sidekiq table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: var(--sg-text);
  background: transparent;
}
body.active_admin table.index_table {
  margin: 0 0 16px;
  border: 0;
  box-shadow: none;
}
body.active_admin table.index_table th,
body.active_admin table.index_table td,
body.active_admin table.signal-responsive-table th,
body.active_admin table.signal-responsive-table td,
body.active_admin table.attributes_table th,
body.active_admin table.attributes_table td {
  padding: 12px 10px;
  border: 0;
  border-bottom: 1px solid var(--sg-rule);
  text-align: left;
  vertical-align: top;
  background: transparent;
  box-shadow: none;
  font-size: 14px;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.active_admin table.index_table th {
  background: var(--sg-raised);
  color: var(--sg-muted);
  font-weight: 500;
  font-size: 12px;
  text-shadow: none;
}
body.active_admin table.signal-responsive-table th {
  background: var(--sg-raised);
  color: var(--sg-muted);
  font-weight: 500;
  font-size: 12px;
  text-transform: none;
  text-shadow: none;
}
body.active_admin table.index_table th a {
  color: inherit;
  text-shadow: none;
  display: inline-block;
  padding-right: 14px;
  padding-left: 0;
  white-space: normal;
  max-width: 100%;
  overflow-wrap: anywhere;
}
body.active_admin table th a.signal-sort-link {
  position: relative;
  background-image: none;
}
body.active_admin .signal-sort-icon {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 7px;
  height: 18px;
  background-repeat: no-repeat;
  background-position: 0 4px;
  filter: brightness(0.65);
}
:root[data-signal-theme="dark"] body.active_admin .signal-sort-icon {
  filter: brightness(1.7);
}
body.active_admin th.sorted-asc .signal-sort-icon {
  background-position: 0 -27px;
}
body.active_admin th.sorted-desc .signal-sort-icon {
  background-position: 0 -56px;
}
body.active_admin table.index_table th.sorted-asc,
body.active_admin table.index_table th.sorted-desc {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin table.index_table tbody tr:nth-child(even) {
  background: var(--sg-surface);
}
body.active_admin table.index_table tbody tr:hover {
  background: var(--sg-raised);
}
body.active_admin table.index_table .col-id {
  width: 76px;
  font-variant-numeric: tabular-nums;
}
body.active_admin table.index_table th.col-id a {
  white-space: nowrap;
  overflow-wrap: normal;
}
/* UUID/resource keys need room while remaining wrappable in narrow cards. */
body.active_admin table.index_table th.signal-long-id {
  width: 160px;
}
body.active_admin table.signal-version-history th.signal-version-message {
  width: 40%;
}
body.active_admin table.index_table a.resource_id_link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-width: var(--sg-data-link-size);
  min-height: var(--sg-data-link-size);
  font-size: 14px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}
body.active_admin table.index_table .col-actions {
  width: 180px;
}
body.active_admin table.index_table td.col-actions a {
  display: inline-block;
  margin: 0 8px 8px 0;
}
body.active_admin table.attributes_table th {
  width: 25%;
  color: var(--sg-muted);
  font-weight: 400;
  font-size: 13px;
  text-transform: none;
}
body.active_admin table.attributes_table tr.even td,
body.active_admin table.attributes_table tr.odd td {
  background: transparent;
}
body.active_admin .attributes_table table th,
body.active_admin .attributes_table table td {
  border-color: var(--sg-rule);
  color: var(--sg-text);
}
body.active_admin .attributes_table > table th {
  width: 25%;
  color: var(--sg-muted);
  font-size: 13px;
  font-weight: 400;
  text-transform: none;
}
.signal-cell-label {
  display: none;
}
body.active_admin .pagination_information,
body.active_admin .paginated_collection_contents {
  color: var(--sg-muted);
  clear: both;
  min-width: 0;
}
body.active_admin .pagination_information b {
  color: var(--sg-text);
}
body.active_admin .pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 12px 0;
  float: none;
}
body.active_admin .pagination > span:not(.current):not(.gap) {
  display: contents;
}
body.active_admin .pagination :is(a, span.current, span.gap),
body.signal-sidekiq .pagination > li > :is(a, span) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: var(--sg-data-link-size);
  min-height: var(--sg-data-link-size);
  max-width: 100%;
  padding: 5px 9px;
  margin: 0;
  border: 1px solid var(--sg-rule);
  border-radius: 2px;
  background: var(--sg-surface);
  color: var(--sg-text);
  box-shadow: none;
  text-shadow: none;
  font: 400 14px/1.4 var(--sg-font);
  text-decoration: none;
  white-space: normal;
}
body.active_admin .pagination span.page.current,
body.signal-sidekiq .pagination > .active > :is(a, span) {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
  border-color: var(--sg-border);
  font-weight: 500;
  text-decoration: none;
}
body.active_admin .pagination span.gap {
  background: transparent;
  border-color: transparent;
  color: var(--sg-muted);
}
body.active_admin form fieldset.inputs,
body.active_admin form fieldset.actions {
  border: 0;
  border-top: 1px solid var(--sg-rule);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 12px 0;
  margin: 0 0 16px;
  min-width: 0;
}
body.active_admin form fieldset.actions {
  border: 0;
  padding: 0;
  background: none;
}
body.active_admin form fieldset.inputs > legend {
  max-width: 100%;
  padding: 0 8px 0 0;
  font-size: 16px;
  font-family: var(--sg-heading);
  font-weight: 600;
  color: var(--sg-text);
  background: var(--sg-bg);
}
body.active_admin form fieldset.inputs > legend span {
  background: none;
  color: inherit;
  border: 0;
  box-shadow: none;
  padding: 0;
}
body.active_admin form fieldset ol {
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}
body.active_admin form fieldset > ol > li {
  padding: 8px 0;
  min-width: 0;
}
body.active_admin form fieldset > ol > li > label {
  float: none;
  display: block;
  width: 100%;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--sg-muted);
  text-transform: none;
  margin: 0 0 var(--sg-field-label-gap);
}
body.active_admin form fieldset > ol > li.boolean > label,
body.active_admin .custom_boolean label,
body.active_admin form.formtastic fieldset.choices ol.choices-group label {
  display: flex;
  align-items: flex-start;
  gap: var(--sg-choice-gap);
  min-height: var(--sg-control-height);
  font-weight: 400;
  color: var(--sg-text);
  margin: 0;
  width: 100%;
  padding: 0;
}
body.active_admin
  form
  input:not([type="hidden"], [type="checkbox"], [type="radio"], [type="submit"], [type="button"], .select2-search__field),
body.active_admin form textarea,
body.active_admin form select,
body.signal-sidekiq
  input:not([type="hidden"], [type="checkbox"], [type="radio"], [type="submit"], [type="button"]),
body.signal-sidekiq textarea,
body.signal-sidekiq select {
  font: 14px/1.5 var(--sg-font);
  color: var(--sg-text);
  background: var(--sg-input);
  border: 1px solid var(--sg-border);
  border-radius: var(--sg-radius-control);
  box-shadow: none;
  padding: 8px 10px;
  min-height: var(--sg-control-height);
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
body.active_admin form input[type="file"] {
  height: auto;
}
body.active_admin form textarea {
  min-height: 110px;
  resize: vertical;
}
body.active_admin form select[multiple] {
  min-height: 110px;
}
body.active_admin input::placeholder,
body.active_admin textarea::placeholder {
  color: var(--sg-muted);
  opacity: 1;
}
body.active_admin input[type="checkbox"],
body.active_admin input[type="radio"],
body.signal-sidekiq input[type="checkbox"],
body.signal-sidekiq input[type="radio"] {
  appearance: auto;
  accent-color: var(--sg-focus);
  width: var(--sg-choice-size);
  height: var(--sg-choice-size);
  min-width: var(--sg-choice-size);
  padding: 0;
  margin: 2px 0 0;
  box-shadow: none;
  vertical-align: middle;
  flex: 0 0 auto;
}
body.active_admin form input:disabled,
body.active_admin form select:disabled,
body.active_admin form textarea:disabled,
body.signal-sidekiq input:disabled,
body.signal-sidekiq select:disabled,
body.signal-sidekiq textarea:disabled {
  cursor: not-allowed;
  color: var(--sg-muted);
  background: var(--sg-raised);
  opacity: 1;
}
body.active_admin form input[readonly],
body.active_admin form textarea[readonly],
body.signal-sidekiq input[readonly],
body.signal-sidekiq textarea[readonly] {
  background: var(--sg-raised);
}
body.active_admin .inline-hints,
body.active_admin form p.inline-hints,
body.active_admin .custom_hint {
  width: auto;
  margin: var(--sg-field-help-gap) 0 0;
  padding: 0;
  color: var(--sg-muted);
  font-size: 13px;
  line-height: 1.5;
  font-style: normal;
  overflow-wrap: anywhere;
}
body.active_admin .inline-errors,
body.active_admin form p.inline-errors,
body.active_admin .custom_error,
body.active_admin .common-error {
  width: auto;
  margin: var(--sg-field-help-gap) 0;
  color: var(--sg-danger);
  font-size: 14px;
  line-height: 1.5;
}
body.active_admin form .error input,
body.active_admin form .error select,
body.active_admin form .error textarea {
  border-color: var(--sg-danger) !important;
}
body.active_admin .custom_error a {
  color: var(--sg-link);
}
body.active_admin form .semantic_errors {
  color: var(--sg-danger);
  background: var(--sg-danger-bg);
  border: 1px solid var(--sg-danger);
  padding: 16px;
  list-style: inside;
}
body.active_admin form .has_many_container {
  min-width: 0;
}
body.active_admin .has_many_fields {
  min-width: 0;
  margin: 0 0 16px !important;
}
body.active_admin .has_many_fields legend {
  font-size: 14px;
}
body.active_admin .has_many_add,
body.active_admin .has_many_remove {
  margin: 8px 0;
}
body.active_admin .custom_label,
body.active_admin .prescription_medicines_subform .custom_label {
  float: none;
  width: 100%;
  margin: 0 0 var(--sg-field-label-gap);
  color: var(--sg-muted);
  font: 500 13px/1.4 var(--sg-font);
}
body.active_admin .prescription_medicines_subform .text-input {
  width: 100%;
  min-width: 0;
}
body.active_admin form fieldset > ol > li.signal-has-many-actions {
  padding: var(--sg-space-xs) var(--sg-space-sm);
  text-align: right;
}
body.active_admin input[type="range"],
body.signal-sidekiq input[type="range"] {
  accent-color: var(--sg-focus);
}
body.active_admin #title_bar .action_items span.action_item > a,
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > .dropdown_menu
  > a,
body.active_admin button,
body.active_admin input[type="submit"],
body.active_admin input[type="button"],
body.active_admin a.button,
body.active_admin .action_item a,
body.active_admin .has_many_add,
body.active_admin .has_many_remove,
body.active_admin form :is(fieldset.actions, fieldset.buttons) li.cancel a,
body.active_admin .ui-dialog .ui-dialog-buttonpane button,
body.rails-default-error-page .signal-error-actions a,
body.signal-sidekiq .btn,
body.signal-sidekiq button,
body.signal-sidekiq input[type="submit"] {
  --sg-button-bg: var(--sg-surface);
  --sg-button-text: var(--sg-text);
  --sg-button-border: var(--sg-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: var(--sg-control-height);
  height: auto;
  max-width: 100%;
  padding: 8px 12px;
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  background: var(--sg-surface);
  color: var(--sg-text);
  box-shadow: none;
  text-shadow: none;
  font: 500 14px/1.35 var(--sg-font);
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
}
body.active_admin input[type="submit"],
body.active_admin
  button[type="submit"]:not(:disabled):not(.disabled):not([aria-disabled="true"]),
body.active_admin
  button.button:not(.disabled):not(:disabled):not([aria-disabled="true"]),
body.active_admin #title_bar .action_items span.action_item > a[href$="/new"],
body.active_admin
  .ui-dialog
  .ui-dialog-buttonpane
  .bordereau-confirm-button:not(:disabled),
body.signal-sidekiq .btn-primary {
  --sg-button-bg: var(--sg-accent);
  --sg-button-text: var(--sg-accent-text);
  background: var(--sg-accent);
  border-color: var(--sg-border);
  color: var(--sg-accent-text);
}
body.active_admin button:hover,
body.active_admin a.button:hover,
body.active_admin .action_item a:hover,
body.active_admin input[type="submit"]:hover,
body.signal-sidekiq .btn:hover {
  box-shadow: inset 0 0 0 1px currentColor;
  text-decoration: none;
}
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > a:not(.disabled):hover,
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > .dropdown_menu
  > a:not(.disabled):hover {
  background-image: none;
  box-shadow: inset 0 0 0 1px currentColor;
}
body.active_admin button:disabled,
body.active_admin button.disabled,
body.active_admin input[type="submit"]:disabled,
body.signal-sidekiq .btn.disabled {
  cursor: not-allowed;
  background: var(--sg-raised);
  color: var(--sg-muted);
  border-color: var(--sg-rule);
  opacity: 1;
  box-shadow: none;
}
body.active_admin .button.signal-danger,
body.active_admin .has_many_remove,
body.active_admin a[data-method="delete"],
body.signal-sidekiq .btn-danger {
  --sg-button-bg: var(--sg-danger-bg);
  --sg-button-text: var(--sg-danger);
  --sg-button-border: var(--sg-danger);
  background: var(--sg-danger-bg);
  color: var(--sg-danger);
  border-color: var(--sg-danger);
}
body.active_admin .status_tag {
  display: inline-block;
  padding: 4px 7px;
  border: 0;
  border-radius: 2px;
  box-shadow: none;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .status_tag.in_review {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.active_admin .status_tag.yes,
body.active_admin .status_tag.approved,
body.active_admin .status_tag.paid {
  background: var(--sg-success-bg);
  color: var(--sg-success);
}
body.active_admin .status_tag.rejected {
  background: var(--sg-danger-bg);
  color: var(--sg-danger);
}
body.active_admin .status_tag.no,
body.active_admin .status_tag.false {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .status_tag.wait_for_review,
body.active_admin .status_tag.wait_for_payment,
body.active_admin .status_tag.documents_requested {
  background: var(--sg-warning-bg);
  color: var(--sg-warning);
}
body.active_admin .status_tag {
  font-family: var(--sg-font);
  letter-spacing: 0;
  text-transform: none;
}
body.active_admin table.index_table .col-state {
  width: 200px;
}
body.active_admin .flashes {
  position: static;
  width: auto;
  max-width: 100%;
  margin: 0;
  padding: 0;
  animation: none;
  z-index: auto;
}
body.active_admin #active_admin_content + .flashes,
body.active_admin #wrapper > .flashes {
  padding: 0 var(--sg-gutter);
}
body.active_admin .flash {
  margin: 12px 0;
  padding: 12px 16px;
  border: 1px solid var(--sg-border);
  background: var(--sg-raised);
  color: var(--sg-text);
  box-shadow: none;
  text-shadow: none;
  overflow-wrap: anywhere;
}
body.active_admin .flash_notice {
  background: var(--sg-success-bg);
  border-color: var(--sg-success);
  color: var(--sg-success);
}
body.active_admin .flash_error,
body.active_admin .flash_alert {
  background: var(--sg-danger-bg);
  border-color: var(--sg-danger);
  color: var(--sg-danger);
}
body.active_admin .flash_warning {
  background: var(--sg-warning-bg);
  border-color: var(--sg-warning);
  color: var(--sg-warning);
}
body.active_admin .columns {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  min-width: 0;
}
body.active_admin .columns > .column {
  float: none !important;
  margin: 0 !important;
  min-width: 0;
  flex: 1 1 0;
  width: auto !important;
}
body.active_admin #edit_attachment .columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
}
body.active_admin #edit_attachment .image_column {
  position: sticky;
  top: 16px;
  height: calc(100vh - 200px);
  min-height: 360px;
  max-height: 840px;
  background: var(--sg-raised);
}
body.active_admin #edit_attachment .column > table,
body.active_admin #edit_attachment .column > table > tbody > tr > td {
  display: block;
  padding: 0;
  border: 0;
}
body.active_admin .react-viewer {
  color: var(--sg-text);
}
body.active_admin .react-viewer-mask {
  background: var(--sg-raised);
}
body.active_admin .react-viewer-toolbar {
  background: var(--sg-raised);
  color: var(--sg-text);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px;
  height: auto;
  overflow: visible;
  padding: 4px;
}
body.active_admin .react-viewer-attribute {
  color: var(--sg-muted);
  opacity: 1;
}
body.active_admin .react-viewer-toolbar li {
  color: var(--sg-text);
  background: transparent;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
}
body.active_admin .react-viewer-toolbar li:hover {
  background: transparent;
}
body.active_admin button.signal-viewer-tool {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--sg-control-height);
  height: var(--sg-control-height);
  min-height: var(--sg-control-height);
  padding: 0;
  margin: 0;
  color: var(--sg-text);
  background: var(--sg-surface);
  border: 1px solid var(--sg-rule);
}
body.active_admin button.signal-viewer-tool:hover {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .signal-viewer-tool .react-viewer-icon {
  color: inherit;
}
body.active_admin .react-viewer-canvas img {
  filter: none !important;
}
/* The viewer owns image dimensions/transforms, including zoom and rotation. */
body.active_admin img:not(.react-viewer-image) {
  max-width: 100%;
  height: auto;
}
body.active_admin pre,
body.active_admin code,
body.signal-sidekiq pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  max-width: 100%;
  color: var(--sg-text);
  background: var(--sg-raised);
  border-color: var(--sg-rule);
}
body.active_admin .sales_id_form {
  width: min(100%, 440px);
  margin: 32px auto;
}
body.active_admin .ra-filter-group,
body.active_admin .ra-card {
  min-width: 0;
}
body.active_admin .ra-summary-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
  gap: 16px;
}
body.active_admin .ra-card {
  background: var(--sg-surface);
  border-color: var(--sg-rule);
  box-shadow: none;
  border-radius: 0;
}
body.active_admin .ra-card-value {
  color: var(--sg-text);
  font-family: var(--sg-heading);
}
body.active_admin .ra-card-label,
body.active_admin .ra-filter-group label {
  color: var(--sg-muted);
  text-transform: none;
}
body.active_admin .ra-card-success {
  border-left-color: var(--sg-success);
}
body.active_admin .ra-card-warning {
  border-left-color: var(--sg-warning);
}
body.active_admin .ra-filter-input {
  font-family: var(--sg-font);
  max-width: 100%;
}
body.active_admin .ra-field-header,
body.active_admin .ra-field-summary {
  gap: 8px;
  grid-template-columns: minmax(0, 2fr) repeat(4, minmax(0, 1fr));
  color: var(--sg-muted);
  border-color: var(--sg-rule);
}
body.active_admin .ra-field-details {
  border-color: var(--sg-rule);
}
body.active_admin .ra-field-summary:hover,
body.active_admin .ra-field-details[open] > .ra-field-summary {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .ra-examples-table {
  background: var(--sg-surface);
}
body.active_admin .ra-examples-table th,
body.active_admin .ra-examples-table td {
  background: var(--sg-surface);
  color: var(--sg-text);
  border-color: var(--sg-rule);
  overflow-wrap: anywhere;
}
body.active_admin .ra-examples-table th {
  background: var(--sg-raised);
  color: var(--sg-muted);
}
body.active_admin .ra-examples-table a {
  color: var(--sg-link);
}
body.active_admin .ra-ex-old,
body.active_admin .ra-accuracy-low {
  color: var(--sg-danger) !important;
}
body.active_admin .ra-ex-new,
body.active_admin .ra-accuracy-high {
  color: var(--sg-success) !important;
}
body.active_admin .ra-accuracy-medium {
  color: var(--sg-warning);
}
body.active_admin .ra-ex-empty {
  color: var(--sg-muted);
}
body.active_admin .ra-ex-action {
  color: var(--sg-text);
  background: var(--sg-raised);
  font-size: 12px;
  white-space: normal;
}
body.active_admin .ra-ex-action-destroy {
  color: var(--sg-danger);
  background: var(--sg-danger-bg);
}
body.active_admin .ra-ex-action-create {
  color: var(--sg-success);
  background: var(--sg-success-bg);
}
body.active_admin .ra-ex-action-update {
  color: var(--sg-warning);
  background: var(--sg-warning-bg);
}
body.active_admin .apexcharts-text,
body.active_admin .apexcharts-title-text,
body.active_admin .apexcharts-legend-text {
  fill: var(--sg-muted) !important;
  color: var(--sg-muted) !important;
}
body.active_admin .apexcharts-tooltip,
body.active_admin .apexcharts-tooltip-title,
body.active_admin .apexcharts-xaxistooltip {
  background: var(--sg-surface) !important;
  color: var(--sg-text) !important;
  border-color: var(--sg-rule) !important;
  box-shadow: none;
}
body.active_admin .apexcharts-gridline {
  stroke: var(--sg-rule);
}
body.active_admin .apexcharts-canvas {
  max-width: 100%;
}
body.active_admin .ui-dialog {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  max-width: calc(100vw - 24px);
  max-height: calc(100vh - 24px);
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  box-shadow: var(--sg-shadow-dialog);
  padding: 0;
}
body.active_admin .ui-dialog .ui-dialog-titlebar {
  flex-shrink: 0;
  background: var(--sg-raised);
  border: 0;
  border-bottom: 1px solid var(--sg-rule);
  color: var(--sg-text);
  padding: 12px 16px;
}
body.active_admin .ui-dialog .ui-dialog-title {
  white-space: normal;
  overflow-wrap: anywhere;
  margin: 0;
}
body.active_admin .ui-dialog .ui-dialog-content {
  background: var(--sg-surface);
  color: var(--sg-text);
  flex: 1 1 auto;
  min-height: 0 !important;
  height: auto !important;
  max-height: min(70vh, calc(100vh - 180px)) !important;
  overflow-y: auto;
  overflow-wrap: anywhere;
}
body.active_admin .ui-dialog .ui-dialog-buttonpane {
  flex-shrink: 0;
  background: var(--sg-surface);
  border-top: 1px solid var(--sg-rule);
  padding: 12px;
}
body.active_admin .ui-dialog .ui-dialog-buttonset {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  float: none;
  justify-content: flex-end;
}
body.active_admin .ui-dialog .ui-dialog-buttonpane button {
  margin: 0;
}
body.active_admin form :is(fieldset.actions, fieldset.buttons) li.cancel a {
  margin: 0;
}
body.active_admin .ui-dialog .ui-dialog-titlebar-close {
  width: 28px;
  height: 28px;
  min-height: 28px;
  padding: 0;
}
body.active_admin .ui-widget-overlay {
  background: var(--sg-overlay);
  opacity: 0.5;
}
body.active_admin .bordereau-panel__empty,
body.active_admin .bordereau-modal__side-effects {
  color: var(--sg-muted);
}
body.active_admin .bordereau-panel__warning,
body.active_admin .bordereau-modal .is-warning {
  color: var(--sg-warning);
}
body.active_admin .bordereau-modal__decision.is-clear,
body.active_admin .bordereau-modal__success {
  background: var(--sg-success-bg);
  color: var(--sg-success);
}
body.active_admin .bordereau-modal__decision.is-warning {
  background: var(--sg-warning-bg);
  color: var(--sg-warning);
}
body.active_admin .bordereau-modal__decision.is-blocked,
body.active_admin .bordereau-modal__error {
  background: var(--sg-danger-bg);
  color: var(--sg-danger);
}
body.active_admin .bordereau-modal__issues .is-blocked {
  color: var(--sg-danger);
}
body.active_admin .bordereau-modal__issues .is-info {
  color: var(--sg-muted);
}
body.active_admin .bordereau-modal__full-name-choice,
body.active_admin .bordereau-modal__preview th,
body.active_admin .bordereau-modal__preview td {
  border-color: var(--sg-rule);
}
body.active_admin .bordereau-modal__radio {
  display: flex;
  align-items: flex-start;
}
body.active_admin .select2-container {
  min-width: 0;
  max-width: 100%;
  font: 14px/1.5 var(--sg-font);
}
body.active_admin form .select2-container {
  width: 100% !important;
}
body.active_admin .select2-container .select2-selection {
  min-height: var(--sg-control-height);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  background: var(--sg-input);
  box-shadow: none;
  color: var(--sg-text);
}
body.active_admin .select2-container .select2-selection__rendered {
  line-height: 1.5;
  padding: 8px 28px 8px 10px;
  color: var(--sg-text);
  white-space: normal;
  overflow-wrap: anywhere;
}
body.active_admin
  .select2-container
  .select2-selection--multiple
  .select2-selection__rendered {
  padding: 4px 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
body.active_admin .select2-container .select2-selection__arrow {
  height: calc(var(--sg-control-height) - 2px);
}
body.active_admin .select2-container .select2-selection__arrow b {
  border-top-color: var(--sg-muted);
}
body.active_admin
  .select2-container.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-top-color: transparent;
  border-bottom-color: var(--sg-muted);
}
body.active_admin .select2-container .select2-selection__placeholder {
  color: var(--sg-muted);
}
body.active_admin .select2-container--focus .select2-selection,
body.active_admin .select2-container--open .select2-selection {
  border-color: var(--sg-focus);
  outline: 2px solid var(--sg-focus);
  outline-offset: 2px;
}
/* Focus belongs to the entire combobox, not its tiny internal search input. */
body.active_admin
  .select2-container--focus
  .select2-search--inline
  .select2-search__field:focus-visible {
  outline: none !important;
}
body.active_admin .select2-container--disabled .select2-selection {
  background: var(--sg-raised);
  color: var(--sg-muted);
  border-color: var(--sg-border);
  outline: none;
  box-shadow: none;
  cursor: not-allowed;
}
body.active_admin
  .select2-container.select2-container--disabled
  .select2-selection__rendered,
body.active_admin
  .select2-container.select2-container--disabled
  .select2-selection__choice {
  color: var(--sg-muted);
}
body.active_admin .select2-container .select2-selection__choice {
  max-width: 100%;
  margin: 0;
  padding: 3px 6px;
  border-color: var(--sg-rule);
  border-radius: 2px;
  background: var(--sg-raised);
  color: var(--sg-text);
  white-space: normal;
}
body.active_admin .select2-container .select2-selection__choice__remove {
  color: var(--sg-danger);
  margin-right: 6px;
}
body.active_admin .select2-container .select2-selection__choice__remove:hover {
  color: var(--sg-danger);
  background: var(--sg-danger-bg);
}
body.active_admin .select2-dropdown {
  background: var(--sg-surface);
  border: 1px solid var(--sg-border);
  color: var(--sg-text);
  border-radius: 2px;
  max-width: calc(100vw - 24px);
}
body.active_admin .select2-search__field {
  color: var(--sg-text);
  background: var(--sg-input);
  border-color: var(--sg-border);
  font: 14px/1.5 var(--sg-font);
  min-width: 1px;
  max-width: 100%;
}
body.active_admin .select2-results__option {
  white-space: normal;
  overflow-wrap: anywhere;
}
body.active_admin .select2-results__option[aria-selected="true"] {
  background: var(--sg-raised);
  color: var(--sg-text);
}
body.active_admin .select2-results__option--highlighted[aria-selected] {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.active_admin .select2-results__option[aria-disabled="true"] {
  background: var(--sg-surface);
  color: var(--sg-muted);
  cursor: not-allowed;
}
body.active_admin .signal-select__control {
  background: var(--sg-input);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  min-height: var(--sg-control-height);
  box-shadow: none;
}
body.active_admin .signal-select__control--is-focused {
  border-color: var(--sg-focus);
  box-shadow: 0 0 0 1px var(--sg-focus);
}
body.active_admin .signal-select__single-value,
body.active_admin .signal-select__input,
body.active_admin .signal-select__input input {
  color: var(--sg-text) !important;
}
body.active_admin .signal-select__placeholder {
  color: var(--sg-muted);
}
/* The react-select input is internal to an already labelled/focused control. */
body.active_admin form .signal-select__input input {
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  background: transparent !important;
}
body.active_admin form.formtastic fieldset ol li label,
body.active_admin form.formtastic fieldset ol li legend.label {
  color: var(--sg-muted);
  font-weight: 500;
}
body.active_admin form.formtastic fieldset ol li.boolean label,
body.active_admin form.formtastic fieldset ol li.custom_boolean label,
body.active_admin form.formtastic fieldset.choices ol.choices-group label {
  color: var(--sg-text);
}
body.active_admin form.formtastic fieldset.choices {
  padding: 0;
  border: 0;
  background: transparent;
}
body.active_admin form.formtastic fieldset.choices legend.label {
  float: none;
  width: 100%;
  position: static;
}
body.active_admin form.formtastic fieldset.choices legend.label > label {
  display: block;
  float: none;
  width: 100%;
  overflow-wrap: anywhere;
}
body.active_admin form.formtastic fieldset.choices ol.choices-group {
  margin: 8px 0;
  padding: 0;
}
/* Preserve the datepicker's original CSS arrow assets and button labels. */
body.active_admin button.react-datepicker__navigation {
  display: block;
  width: 10px;
  height: 10px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0.45rem solid transparent;
  border-radius: 0;
  background: none;
  box-shadow: none;
  line-height: 1.7rem;
}
body.active_admin button.react-datepicker__navigation--previous {
  border-right-color: var(--sg-text);
}
body.active_admin button.react-datepicker__navigation--next {
  border-left-color: var(--sg-text);
}
body.active_admin .signal-select__value-container {
  min-width: 0;
  padding: 4px 8px;
}
body.active_admin .signal-select__menu {
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  z-index: 30;
}
body.active_admin .signal-select__menu-list {
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 0;
}
body.active_admin .signal-select__option {
  background: var(--sg-surface);
  color: var(--sg-text);
  white-space: normal;
  overflow-wrap: anywhere;
}
body.active_admin .signal-select__option--is-focused,
body.active_admin .signal-select__option--is-selected {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.active_admin .signal-select__multi-value {
  background: var(--sg-raised);
  border-radius: 2px;
  max-width: 100%;
}
body.active_admin .signal-select__multi-value__label {
  color: var(--sg-text);
  white-space: normal;
}
body.active_admin .signal-select__multi-value__remove {
  color: var(--sg-danger);
}
body.active_admin .signal-select__multi-value__remove:hover {
  color: var(--sg-danger);
  background: var(--sg-danger-bg);
}
body.active_admin .signal-select__control--is-disabled {
  background: var(--sg-raised);
  color: var(--sg-muted);
  border-color: var(--sg-border);
  box-shadow: none;
  cursor: not-allowed;
}
body.active_admin
  .signal-select__control--is-disabled
  .signal-select__single-value,
body.active_admin
  .signal-select__control--is-disabled
  .signal-select__multi-value__label {
  color: var(--sg-muted) !important;
}
body.active_admin .signal-select__option--is-disabled {
  background: var(--sg-surface);
  color: var(--sg-muted);
  cursor: not-allowed;
}
body.active_admin .signal-select__indicator {
  color: var(--sg-muted);
}
body.active_admin .signal-select__indicator:hover {
  color: var(--sg-text);
}
body.active_admin .signal-select__indicator-separator {
  background: var(--sg-border);
}
body.active_admin .react-datepicker-wrapper,
body.active_admin .react-datepicker__input-container {
  width: 100%;
  min-width: 0;
}
body.active_admin .react-datepicker,
body.active_admin #ui-datepicker-div {
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  box-shadow: none;
  font-family: var(--sg-font);
  max-width: calc(100vw - 24px);
  z-index: 100;
}
body.active_admin .react-datepicker__header,
body.active_admin #ui-datepicker-div .ui-datepicker-header {
  background: var(--sg-raised);
  color: var(--sg-text);
  border-color: var(--sg-rule);
}
body.active_admin .react-datepicker__current-month,
body.active_admin .react-datepicker__day-name,
body.active_admin .react-datepicker__day,
body.active_admin .react-datepicker__time-name {
  color: var(--sg-text);
}
body.active_admin .react-datepicker__day--disabled {
  color: var(--sg-muted);
  background: transparent;
  cursor: not-allowed;
}
body.active_admin
  .react-datepicker__day--selected:not(.react-datepicker__day--disabled),
body.active_admin
  .react-datepicker__day--keyboard-selected:not(.react-datepicker__day--disabled),
body.active_admin
  .react-datepicker__day:not(.react-datepicker__day--disabled):hover {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
  border-radius: 2px;
}
body.active_admin #ui-datepicker-div td a,
body.active_admin #ui-datepicker-div td span {
  background: var(--sg-surface);
  color: var(--sg-text);
  border-color: var(--sg-rule);
  text-shadow: none;
}
body.active_admin #ui-datepicker-div td .ui-state-active,
body.active_admin #ui-datepicker-div td a:hover {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
/* This is a seven-column calendar widget, never a responsive record table.
   Own its geometry as well as its palette: legacy ActiveAdmin uses a 160px
   popup and absolutely positioned white headings over the weekday row. */
body.active_admin #ui-datepicker-div {
  width: 288px;
  padding: 10px;
  font: 400 14px/1.4 var(--sg-font);
  background-image: none;
}
body.active_admin #ui-datepicker-div::before,
body.active_admin #ui-datepicker-div::after {
  display: none;
}
body.active_admin #ui-datepicker-div .ui-datepicker-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  min-height: 40px;
  margin: 0 0 8px;
  padding: 0 36px;
  border: 0;
  border-bottom: 1px solid var(--sg-rule);
  border-radius: 0;
  background: var(--sg-surface);
  box-shadow: none;
}
body.active_admin #ui-datepicker-div .ui-datepicker-title {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  color: var(--sg-text);
  background: none;
  font: 600 14px/1.4 var(--sg-font);
  text-shadow: none;
  white-space: nowrap;
}
body.active_admin #ui-datepicker-div .ui-datepicker-prev,
body.active_admin #ui-datepicker-div .ui-datepicker-next {
  position: absolute;
  top: 2px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 2px;
  background: none;
  color: var(--sg-text);
  cursor: pointer;
}
body.active_admin #ui-datepicker-div .ui-datepicker-prev {
  left: 0;
  right: auto;
}
body.active_admin #ui-datepicker-div .ui-datepicker-next {
  right: 0;
  left: auto;
}
body.active_admin
  #ui-datepicker-div
  :is(.ui-datepicker-prev, .ui-datepicker-next):not(.ui-state-disabled):hover {
  background: var(--sg-raised);
  border-color: var(--sg-border);
}
body.active_admin
  #ui-datepicker-div
  :is(.ui-datepicker-prev, .ui-datepicker-next).ui-state-disabled {
  color: var(--sg-muted);
  background: transparent;
  border-color: transparent;
  cursor: default;
  opacity: 1;
}
body.active_admin
  #ui-datepicker-div
  :is(.ui-datepicker-prev, .ui-datepicker-next)
  span {
  position: static;
  display: block;
  width: 8px;
  height: 8px;
  margin: 0;
  padding: 0;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  background: none;
  overflow: hidden;
  text-indent: -9999px;
}
body.active_admin #ui-datepicker-div .ui-datepicker-prev span {
  transform: rotate(135deg);
}
body.active_admin #ui-datepicker-div .ui-datepicker-next span {
  transform: rotate(-45deg);
}
body.active_admin #ui-datepicker-div .ui-datepicker-calendar {
  width: 100%;
  margin: 0;
  border: 0;
  border-collapse: separate;
  border-spacing: 1px;
  table-layout: fixed;
  box-shadow: none;
  background: transparent;
}
body.active_admin
  #ui-datepicker-div
  .ui-datepicker-calendar
  :is(thead, tbody, tr) {
  border: 0;
  background: transparent;
  box-shadow: none;
}
body.active_admin #ui-datepicker-div .ui-datepicker-calendar :is(th, td) {
  padding: 0;
  border: 0;
  background: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  overflow-wrap: normal;
}
body.active_admin #ui-datepicker-div .ui-datepicker-calendar th {
  height: 28px;
  color: var(--sg-muted);
  font: 500 12px/1.4 var(--sg-font);
  text-shadow: none;
}
body.active_admin #ui-datepicker-div .ui-datepicker-calendar td :is(a, span) {
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 32px;
  margin: 0;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 2px;
  font: 500 13px/1.4 var(--sg-font);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}
body.active_admin
  #ui-datepicker-div
  .ui-datepicker-calendar
  td.ui-state-disabled
  span {
  color: var(--sg-muted);
  background: var(--sg-surface);
}
body.active_admin .react-autosuggest__suggestions-container--open {
  width: 100%;
  max-width: 100%;
  top: 100%;
  right: 0;
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-border);
  z-index: 30;
  max-height: 320px;
  overflow-y: auto;
}
body.active_admin .react-autosuggest__suggestion--highlighted {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.active_admin.logged_out #content_wrapper {
  max-width: 480px;
  width: 100%;
  margin: clamp(24px, 8vh, 80px) auto;
  padding: 0 16px;
}
body.active_admin.logged_out #content_wrapper #active_admin_content {
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
}
body.active_admin.logged_out #login {
  width: 100%;
  margin: 0;
  padding: 24px;
  background: var(--sg-surface);
  border: 1px solid var(--sg-rule);
  border-top: 4px solid var(--sg-accent);
  border-radius: 0;
  box-shadow: none;
}
body.active_admin.logged_out #login h2 {
  margin: 0 0 24px;
  padding: 0;
  font-size: 26px;
  background: none;
  color: var(--sg-text);
  box-shadow: none;
  border: 0;
}
body.active_admin.logged_out #login form fieldset {
  padding: 0;
  border: 0;
  background: none;
}
body.active_admin.logged_out #login form fieldset li {
  padding: 8px 0;
}
body.active_admin.logged_out #login input[type="submit"] {
  width: 100%;
}
body.active_admin.logged_out #login form fieldset.actions li {
  width: 100%;
  float: none;
}
body.active_admin.logged_out
  #content_wrapper
  #active_admin_content
  #login
  input:not([type="hidden"], [type="checkbox"], [type="radio"]) {
  width: 100%;
}
body.active_admin #footer {
  padding: 24px var(--sg-gutter);
  color: var(--sg-muted);
  background: var(--sg-bg);
  font-size: 12px;
  border-top: 1px solid var(--sg-rule);
}
html body.rails-default-error-page .dialog {
  max-width: 560px;
  width: calc(100% - 32px);
  margin: 64px auto;
  text-align: left;
}
html body.rails-default-error-page .dialog > div,
html body.rails-default-error-page .dialog > p {
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-rule);
  border-radius: 0;
  box-shadow: none;
  padding: 24px;
  margin: 0;
}
html body.rails-default-error-page .dialog > div {
  border-top: 4px solid var(--sg-accent);
}
html body.rails-default-error-page h1 {
  font-size: 26px;
  line-height: 1.3;
  margin: 0 0 16px;
}
html body.rails-default-error-page .dialog > p {
  border-top: 0;
  color: var(--sg-muted);
  font-size: 13px;
}
body.signal-sidekiq .navbar {
  background: var(--sg-nav);
  color: var(--sg-nav-text);
  border: 0;
  border-radius: 0;
  margin: 0;
}
html body.signal-sidekiq {
  padding: 0;
}
body.signal-sidekiq .navbar-fixed-top,
body.signal-sidekiq .navbar-fixed-bottom {
  position: relative;
  top: auto;
  bottom: auto;
}
body.signal-sidekiq .summary {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  background: var(--sg-surface);
  border: 1px solid var(--sg-rule);
  border-radius: 0;
  margin: 0;
  width: 100%;
}
body.signal-sidekiq .summary li {
  width: auto;
  float: none;
  min-width: 0;
  padding: 12px 4px;
}
body.signal-sidekiq .summary::before,
body.signal-sidekiq .summary::after {
  content: none;
}
body.signal-sidekiq .summary .count,
body.signal-sidekiq .summary .desc {
  color: var(--sg-text);
}
body.signal-sidekiq .summary span.count,
body.signal-sidekiq .summary span.desc {
  display: block;
  width: auto;
  float: none;
  font-size: 14px;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.signal-sidekiq #page > .container > .row {
  margin-left: 0;
  margin-right: 0;
}
body.signal-sidekiq #page .row.header,
body.signal-sidekiq #page header.row {
  margin-left: 0;
  margin-right: 0;
}
body.signal-sidekiq #page > .container > .row > .col-sm-12 {
  padding-left: 0;
  padding-right: 0;
}
body.signal-sidekiq .summary .failed .count,
body.signal-sidekiq .summary .dead .count {
  color: var(--sg-danger);
}
body.signal-sidekiq .rickshaw_graph .x_tick .title {
  color: var(--sg-muted);
}
body.signal-sidekiq .rickshaw_graph .x_tick .title {
  transform: translateX(-100%);
}
body.signal-sidekiq .rickshaw_graph .x_tick:first-of-type .title {
  transform: none;
}
body.signal-sidekiq .history-intervals .active {
  --sg-button-bg: var(--sg-accent);
  --sg-button-text: var(--sg-accent-text);
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.signal-sidekiq .history-graph.active {
  --sg-button-bg: var(--sg-accent);
  --sg-button-text: var(--sg-accent-text);
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.signal-sidekiq .navbar a {
  color: var(--sg-nav-text);
}
body.signal-sidekiq .navbar .status {
  color: var(--sg-nav-text);
}
body.signal-sidekiq .current-interval {
  color: var(--sg-link);
}
body.signal-sidekiq .navbar a.btn-primary {
  color: var(--sg-accent-text);
}
body.signal-sidekiq .navbar .active a {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.signal-sidekiq
  .navbar
  .nav
  > li:not(.active)
  > a:is(:hover, :focus-visible, :active) {
  background: var(--sg-nav-hover);
  color: var(--sg-accent);
}
body.signal-sidekiq
  .navbar
  .nav
  > li.active
  > a:is(:hover, :focus-visible, :active) {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
}
body.signal-sidekiq .navbar a.navbar-brand:is(:hover, :focus-visible, :active) {
  color: var(--sg-accent);
  background: var(--sg-nav-hover);
}
body.signal-sidekiq .navbar-toggle {
  background: var(--sg-nav);
  border-color: var(--sg-border);
}
body.signal-sidekiq .navbar-toggle .icon-bar {
  background: var(--sg-nav-text);
  /* Sidekiq reads data-toggle from event.target; route icon hits to its button. */
  pointer-events: none;
}
body.signal-sidekiq h3 {
  font-size: 23px;
  overflow-wrap: anywhere;
  padding-right: 8px;
}
body.signal-sidekiq .navbar .container,
body.signal-sidekiq #page .container {
  width: 100%;
  max-width: 1800px;
  min-width: 0;
}
body.signal-sidekiq #page {
  padding: 24px var(--sg-gutter);
}
body.signal-sidekiq .summary_bar,
body.signal-sidekiq .panel,
body.signal-sidekiq .well,
body.signal-sidekiq .list-group-item {
  background: var(--sg-surface);
  color: var(--sg-text);
  border-color: var(--sg-rule);
  border-radius: 0;
  box-shadow: none;
}
body.signal-sidekiq .table td,
body.signal-sidekiq .table th {
  color: var(--sg-text);
  border-color: var(--sg-rule);
  padding: 10px;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.signal-sidekiq .table-striped > tbody > tr:nth-of-type(odd) {
  background: var(--sg-raised);
}
body.signal-sidekiq .alert {
  color: var(--sg-warning);
  background: var(--sg-warning-bg);
  border-color: var(--sg-warning);
}
body.signal-sidekiq .pagination > li > a,
body.signal-sidekiq .pagination > li > span {
  color: var(--sg-text);
  background: var(--sg-surface);
  border-color: var(--sg-rule);
  border-radius: 0;
}
body.signal-sidekiq .pagination > .active > :is(a, span) {
  color: var(--sg-accent-text);
  background: var(--sg-accent);
}
body.signal-sidekiq footer,
body.signal-sidekiq .text-muted {
  color: var(--sg-muted);
}
/* Each source cell remains the same DOM node. Keep sorting/header links visible. */
html body table.signal-responsive-table.signal-records {
  display: block;
  table-layout: auto;
  width: 100%;
}
html body table.signal-records > thead {
  display: block;
  background: var(--sg-raised);
  padding: 8px;
  margin-bottom: 12px;
}
html body table.signal-records > thead > tr {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
html body table.signal-records > thead > tr > th {
  display: block;
  width: auto;
  max-width: 100%;
  border: 0;
  padding: 6px;
  font-size: 12px;
}
html body table.signal-records > tbody {
  display: block;
}
html body table.signal-records > tbody > tr {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px 20px;
  padding: 16px 0;
  border-bottom: 1px solid var(--sg-rule);
  background: transparent;
}
html body table.signal-records > tbody > tr > td {
  display: block;
  width: auto;
  max-width: 100%;
  min-width: 0;
  border: 0;
  padding: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}
html
  body:is(.active_admin, .signal-sidekiq)
  table.signal-responsive-table.signal-records
  > tbody
  > tr
  > td {
  width: auto;
  padding: 0;
  border: 0;
}
html body table.signal-records > tbody > tr > td.col-actions,
html body table.signal-records > tbody > tr > td[colspan] {
  grid-column: 1/-1;
}
html
  body
  table.signal-version-history.signal-records
  > tbody
  > tr
  > td.signal-version-message {
  grid-column: 1/-1;
}
html body table.signal-records .signal-cell-label {
  display: block;
  font-size: 12px;
  color: var(--sg-muted);
  font-weight: 500;
  margin-bottom: 4px;
}
/* Workbench composition. Original controls keep their node identity and form. */
body.active_admin .signal-scopes-panel {
  grid-column: 1/-1;
  order: 1;
  min-width: 0;
  border-block: 1px solid var(--sg-rule);
}
body.active_admin .signal-scopes-panel > summary {
  display: none;
  cursor: pointer;
}
body.active_admin #active_admin_content #sidebar {
  gap: 8px 16px;
}
body.active_admin #search_status_sidebar_section {
  justify-content: flex-end;
  order: 0;
  color: var(--sg-muted);
}
body.active_admin #sidebar > .sidebar_section:not(#filters_sidebar_section) {
  padding: 0;
}
body.active_admin .signal-filter-panel > summary {
  padding: 8px 0;
  background: transparent;
}
body.active_admin .signal-filter-panel > summary h3 {
  font-size: 13px;
}
body.active_admin .signal-filter-panel[open] > summary {
  border: 0;
}
body.active_admin .signal-filter-panel > .sidebar_section_content {
  padding: 0;
}
body.active_admin .filter_form .buttons {
  gap: 8px;
  justify-content: flex-end;
}
body.active_admin .signal-extra-filters {
  grid-column: 1/3;
}
body.active_admin .signal-extra-filters[open] {
  grid-column: 1/-1;
}
body.active_admin .filter_form .buttons {
  grid-column: 3/-1;
}
body.active_admin .signal-extra-filters[open] + .buttons {
  grid-column: 1/-1;
}
body.active_admin .table_tools:empty {
  display: none;
}
body.active_admin .table_tools.signal-empty-tools {
  display: none;
}
html body button.signal-sort-toggle {
  margin: 0 0 12px;
  min-height: 44px;
  padding: 8px 12px;
  background: var(--sg-surface);
  color: var(--sg-text);
  border: 1px solid var(--sg-border);
  box-shadow: none;
  font: 500 13px/1.4 var(--sg-font);
}
html body button.signal-sort-toggle[hidden],
html body table.signal-records > thead[hidden] {
  display: none;
}
body.active_admin .status_tag.yes,
body.active_admin .status_tag.no {
  background: transparent;
  color: var(--sg-muted);
  padding: 0;
  text-transform: none;
  font-weight: 400;
}
body.active_admin .signal-actions-menu {
  position: relative;
  min-width: 0;
}
body.active_admin .signal-actions-menu > summary {
  padding: 8px 12px;
  min-height: var(--sg-control-height);
  border: 1px solid var(--sg-border);
  border-radius: 2px;
  background: var(--sg-surface);
  cursor: pointer;
  font-weight: 500;
  text-align: left;
  text-shadow: none;
  color: var(--sg-text);
}
body.active_admin .signal-actions-list {
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  z-index: 50;
  width: min(340px, calc(100vw - 24px));
  padding: 8px;
  border: 1px solid var(--sg-border);
  background: var(--sg-surface);
}
body.active_admin .signal-actions-list span.action_item a {
  justify-content: flex-start;
  text-align: left;
  border: 0;
  background: transparent;
  width: 100%;
}
body.active_admin .signal-actions-list span.action_item a:hover {
  background: var(--sg-raised);
}
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > a[href$="/start_review"] {
  --sg-button-bg: var(--sg-accent);
  --sg-button-text: var(--sg-accent-text);
  background: var(--sg-accent);
  color: var(--sg-accent-text);
  border-color: var(--sg-border);
}
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > a[href$="/reject_reasons"] {
  --sg-button-text: var(--sg-danger);
  --sg-button-border: var(--sg-danger);
  color: var(--sg-danger);
  border-color: var(--sg-danger);
}
body.active_admin .attributes_table > table > tbody > tr > th,
body.active_admin .attributes_table > table > tbody > tr > td {
  padding: 8px;
  font-size: 13px;
  line-height: 1.45;
  text-shadow: none;
}
body.active_admin .attributes_table table th,
body.active_admin .attributes_table table td {
  text-shadow: none;
}
body.active_admin button:active,
body.active_admin input[type="submit"]:active,
body.active_admin .action_item a:active,
body.active_admin summary:active,
body.signal-sidekiq .btn:active {
  box-shadow: inset 0 0 0 1px currentColor;
}
/* Vendor :not(.disabled):hover/:active gradients outrank a plain base button.
   Preserve its semantic palette through interaction rather than repainting
   every pressed control grey (or bleaching its text in dark mode). */
body.active_admin
  :is(button, input[type="submit"], input[type="button"], a.button):not(.signal-theme-toggle, .react-datepicker__navigation):is(:hover, :active, :focus-visible),
body.active_admin
  form
  :is(fieldset.actions, fieldset.buttons)
  li.cancel
  a:not(.disabled):is(:hover, :active, :focus-visible),
body.active_admin
  .ui-dialog
  .ui-dialog-buttonpane
  button:not(.disabled):is(:hover, :active, :focus-visible),
body.rails-default-error-page
  .signal-error-actions
  a:is(:hover, :active, :focus-visible),
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > a:is(:hover, :active, :focus-visible),
body.active_admin
  form.filter_form
  a.clear_filters_btn:is(:hover, :active, :focus-visible),
body.signal-sidekiq
  :is(button, input[type="submit"], .btn):not(.signal-theme-toggle, .navbar-toggle):is(:hover, :active, :focus-visible) {
  background: var(--sg-button-bg, var(--sg-surface));
  color: var(--sg-button-text, var(--sg-text));
  border-color: var(--sg-button-border, var(--sg-border));
  text-shadow: none;
}
body.active_admin
  form
  :is(fieldset.actions, fieldset.buttons)
  li.cancel
  a:not(.disabled):not([aria-disabled="true"]):is(:hover, :active, :focus-visible),
body.active_admin
  .ui-dialog
  .ui-dialog-buttonpane
  button:not(:disabled):not(.disabled):not([aria-disabled="true"]):is(:hover, :active, :focus-visible) {
  box-shadow: inset 0 0 0 1px currentColor;
}
body.active_admin
  .pagination
  a:not(.disabled):is(:hover, :active, :focus-visible),
body.signal-sidekiq
  .pagination
  > li:not(.active):not(.disabled)
  > a:is(:hover, :active, :focus-visible) {
  background: var(--sg-raised);
  color: var(--sg-text);
  background-image: none;
  text-decoration: none;
}
body.active_admin
  .pagination
  span.page.current:not(.disabled):is(:hover, :active, :focus-visible),
body.signal-sidekiq
  .pagination
  > .active
  > :is(a, span):is(:hover, :active, :focus-visible) {
  background: var(--sg-accent);
  color: var(--sg-accent-text);
  border-color: var(--sg-border);
  box-shadow: none;
  text-shadow: none;
  text-decoration: none;
}
body.active_admin .pagination :is(a, span).disabled,
body.active_admin .pagination .disabled > :is(a, span),
body.active_admin
  .pagination
  .disabled
  > :is(a, span):is(:hover, :active, :focus),
body.signal-sidekiq .pagination > .disabled > :is(a, span),
body.signal-sidekiq
  .pagination
  > .disabled
  > :is(a, span):is(:hover, :active, :focus) {
  background: var(--sg-raised);
  color: var(--sg-muted);
  border-color: var(--sg-rule);
  box-shadow: none;
  cursor: not-allowed;
}
/* Disabled wins over every semantic action and hover/pressed variant above.
   This changes appearance only; native/ARIA/application behavior is untouched. */
body.active_admin button:is(:disabled, .disabled, [aria-disabled="true"]),
body.active_admin
  button.button:is(:disabled, .disabled, [aria-disabled="true"]),
body.active_admin
  input:is([type="submit"], [type="button"]):is(:disabled, .disabled, [aria-disabled="true"]),
body.active_admin a.button:is(.disabled, [aria-disabled="true"]),
body.active_admin
  form
  :is(fieldset.actions, fieldset.buttons)
  li.cancel
  a:is(.disabled, [aria-disabled="true"]),
body.active_admin
  .ui-dialog
  .ui-dialog-buttonpane
  button:is(:disabled, .disabled, [aria-disabled="true"]),
body.active_admin
  .ui-dialog
  .ui-dialog-buttonpane
  button:is(:disabled, .disabled, [aria-disabled="true"]):is(:hover, :active, :focus-visible),
body.active_admin
  #title_bar
  .action_items
  span.action_item
  > a:is(.disabled, [aria-disabled="true"]),
body.signal-sidekiq .btn:is(:disabled, .disabled, [aria-disabled="true"]),
body.signal-sidekiq button:is(:disabled, .disabled, [aria-disabled="true"]),
body.signal-sidekiq
  input[type="submit"]:is(:disabled, .disabled, [aria-disabled="true"]) {
  --sg-button-bg: var(--sg-raised);
  --sg-button-text: var(--sg-muted);
  --sg-button-border: var(--sg-rule);
  cursor: not-allowed;
  background: var(--sg-raised);
  background-image: none;
  color: var(--sg-muted);
  border-color: var(--sg-rule);
  opacity: 1;
  box-shadow: none;
}
body.signal-sidekiq .navbar .container {
  position: relative;
  padding-right: 60px;
}
body.signal-sidekiq .navbar-toggle {
  display: none;
  margin-right: 44px;
  width: 44px;
}
body.signal-sidekiq .navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  flex: 0 0 2px;
  margin: 0;
}
body.signal-sidekiq .navbar .signal-theme-toggle {
  position: absolute;
  right: 12px;
  top: 4px;
}
body.signal-sidekiq .navbar .signal-theme-toggle:hover {
  background: var(--sg-nav);
  color: var(--sg-accent);
}
@media (max-width: 767px) {
  body.signal-sidekiq .navbar .container {
    padding-right: 12px;
  }
  body.signal-sidekiq .navbar-toggle {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
    min-height: 44px;
    padding: 8px;
    margin-right: 0;
  }
  body.signal-sidekiq .navbar-collapse .signal-theme-toggle {
    position: static;
    width: auto;
    min-height: 44px;
    margin-block: 8px;
  }
  body.signal-sidekiq .navbar-collapse .signal-theme-label {
    display: inline;
  }
}
body.active_admin:is(.new, .edit, .create, .update)
  #main_content
  > form:not(#edit_attachment) {
  max-width: 680px;
}
body.active_admin #edit_attachment fieldset.inputs {
  margin-bottom: 12px;
  padding: 8px 0;
}
body.active_admin #edit_attachment form > h3,
body.active_admin #edit_attachment .prescription_medicines_subform > h4 {
  font: 600 18px/24px var(--sg-heading);
  margin: 24px 0 12px;
}
body.active_admin #edit_attachment fieldset.inputs > ol > li {
  padding: calc(var(--sg-field-row-gap) / 2) 0;
}
/* The label itself supplies the hit area; adding field padding doubles it. */
body.active_admin form fieldset > ol > li.boolean,
body.active_admin form fieldset > ol > li.custom_boolean,
body.active_admin #edit_attachment fieldset.inputs > ol > li.custom_boolean {
  padding-block: 0;
}
body.active_admin #edit_attachment form > fieldset.inputs:first-of-type > ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0 16px;
}
body.active_admin
  #edit_attachment
  form
  > fieldset.inputs:first-of-type
  > ol
  > li:first-of-type {
  flex: 1 1 100%;
}
body.active_admin
  #edit_attachment
  form
  > fieldset.inputs:first-of-type
  > ol
  > li.custom_boolean {
  flex: 0 1 auto;
}
body.active_admin #edit_attachment .custom_boolean label {
  font-size: 13px;
}
body.active_admin #edit_attachment .react-viewer-footer {
  top: 0;
  bottom: auto;
}
body.active_admin #edit_attachment .react-viewer-inline {
  min-height: 0;
  height: 100%;
}
body.active_admin #edit_attachment .react-viewer-attribute {
  margin: 0;
  padding: 4px;
  font-size: 12px;
  background: var(--sg-raised);
}
body.active_admin #edit_attachment .react-viewer-toolbar {
  margin: 0;
}
body.active_admin #edit_attachment .react-viewer-canvas {
  top: 72px;
}
body.active_admin #edit_attachment .react-viewer-image {
  margin-top: var(--sg-viewer-image-offset, 0px);
}
@media (min-width: 1101px) {
  body.active_admin.show.tickets .attributes_table.ticket > table > tbody {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
  }
  body.active_admin.show.tickets .attributes_table.ticket > table > tbody > tr {
    display: grid;
    grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
    border-bottom: 1px solid var(--sg-rule);
  }
  body.active_admin #sidebar .signal-filter-panel > summary {
    display: none;
  }
  body.active_admin #sidebar .filter_form {
    grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(160px, 1fr) auto;
    gap: var(--sg-field-row-gap) 12px;
    padding: 4px 0 0;
  }
  body.active_admin #sidebar .filter_form .buttons {
    grid-column: 5;
    grid-row: 1;
  }
  body.active_admin #sidebar .signal-extra-filters {
    grid-column: 1/-1;
  }
  body.active_admin #sidebar .signal-extra-filters > summary {
    padding: 4px 28px 4px 0;
  }
  body.active_admin.show.tickets
    .attributes_table.ticket
    > table
    > tbody
    > tr
    > th,
  body.active_admin.show.tickets
    .attributes_table.ticket
    > table
    > tbody
    > tr
    > td {
    width: 100%;
    min-width: 0;
    border: 0;
    overflow-wrap: anywhere;
  }
  body.active_admin #edit_attachment fieldset.inputs > ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
    align-items: start;
  }
  body.active_admin #edit_attachment fieldset.inputs > ol > .has_many_container,
  body.active_admin #edit_attachment fieldset.inputs > ol > button {
    grid-column: 1/-1;
  }
}
/* Three navigation rows fit at the smaller desktop widths with either font.
   Explicit logo/account slots keep font loading and enhancement out of sizing. */
@media (min-width: 1101px) and (max-width: 1439px) {
  body.active_admin #header {
    min-height: 106px;
  }
}
@media (max-width: 1100px) {
  body.active_admin #header {
    grid-template-columns: 1fr auto;
    min-height: 56px;
    padding-block: 6px;
  }
  body.active_admin #header .signal-navigation {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    max-width: 100%;
  }
  body.active_admin #header .signal-navigation > summary {
    display: list-item;
    min-height: 44px;
    padding: 12px 28px 12px 8px;
    margin: 0;
  }
  body.active_admin #header .signal-navigation[open] {
    grid-column: 1/-1;
    grid-row: 2;
    justify-self: stretch;
  }
  body.active_admin #header .signal-navigation[open] > summary {
    position: absolute;
    right: var(--sg-gutter);
    top: 6px;
  }
  body.active_admin #header .signal-navigation[open] #tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding-block: 8px;
  }
  body.active_admin #header #tabs > li > a {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
  body.active_admin #header #utility_nav {
    display: flex;
    width: auto;
    max-width: none;
    justify-content: flex-start;
    border-top: 1px solid var(--sg-border);
    padding-block: 8px;
  }
  html body #header button.signal-theme-toggle {
    width: auto;
    min-height: 44px;
  }
  html body #header .signal-theme-label {
    display: inline;
  }
  body.active_admin #header #utility_nav #current_user a {
    white-space: normal;
    overflow: visible;
  }
  body.active_admin .filter_form,
  body.active_admin .signal-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  body.active_admin .signal-scopes-panel > summary {
    display: list-item;
    padding: 12px 0;
    min-height: 44px;
    font-weight: 500;
  }
  body.active_admin .filter_form,
  body.active_admin .signal-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.active_admin .columns {
    flex-direction: column;
  }
  body.active_admin .columns > .column {
    width: 100% !important;
  }
  body.active_admin #edit_attachment .columns {
    grid-template-columns: minmax(0, 1fr);
  }
  body.active_admin #edit_attachment .image_column {
    position: relative;
    top: auto;
    height: 40vh;
    min-height: 280px;
    max-height: 360px;
  }
  body.active_admin .action_items {
    justify-content: flex-start;
  }
  html body table.signal-records > tbody > tr {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.active_admin .ra-field-header,
  body.active_admin .ra-field-summary {
    grid-template-columns: minmax(0, 2fr) repeat(4, minmax(0, 1fr));
    font-size: 12px;
    padding: 10px 4px;
  }
}
@media (max-width: 600px) {
  body.active_admin #active_admin_content #sidebar {
    grid-template-columns: minmax(0, 1fr);
  }
  body.active_admin #header {
    gap: 8px;
    padding: 6px 12px;
  }
  body.active_admin #header h1.site_title {
    font-size: 18px;
  }
  body.active_admin #header #utility_nav {
    max-width: none;
  }
  body.active_admin #header ul.tabs > li > a {
    font-size: 13px;
    padding: 12px 4px;
  }
  body.active_admin #title_bar {
    padding: 16px 12px;
    align-items: stretch;
  }
  body.active_admin #titlebar_right,
  body.active_admin .action_items {
    width: 100%;
  }
  body.active_admin .action_items span.action_item {
    flex: 1 1 auto;
  }
  body.active_admin .action_items span.action_item a {
    width: 100%;
  }
  body.active_admin #active_admin_content {
    padding: 16px 12px;
  }
  body.active_admin .panel_contents,
  body.active_admin .sidebar_section > div {
    padding: 8px 0;
  }
  body.active_admin form fieldset.inputs {
    padding: 8px 0;
  }
  body.active_admin .filter_form,
  body.active_admin .signal-filter-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  html body table.signal-records > tbody > tr {
    grid-template-columns: minmax(0, 1fr);
  }
  body.active_admin table.attributes_table,
  body.active_admin table.attributes_table tbody,
  body.active_admin .attributes_table > table,
  body.active_admin .attributes_table > table > tbody {
    display: block;
  }
  body.active_admin table.attributes_table tr,
  body.active_admin .attributes_table > table > tbody > tr {
    display: grid;
    grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
    gap: 8px;
    border-bottom: 1px solid var(--sg-rule);
    padding: 8px 0;
  }
  body.active_admin table.attributes_table th,
  body.active_admin table.attributes_table td,
  body.active_admin .attributes_table > table > tbody > tr > th,
  body.active_admin .attributes_table > table > tbody > tr > td {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
  }
  body.active_admin .signal-scopes-panel > summary {
    display: list-item;
    padding: 12px 0;
    min-height: 44px;
    font-weight: 500;
  }
  body.active_admin .signal-filter-panel > summary {
    padding: 12px 0;
    min-height: 44px;
  }
  body.active_admin .signal-extra-filters,
  body.active_admin .filter_form .buttons {
    grid-column: 1/-1;
  }
  body.active_admin .filter_form .buttons {
    justify-content: flex-start;
  }
  body.active_admin .scopes li a.table_tools_button {
    min-height: 44px;
  }
  body.active_admin #search_status_sidebar_section {
    justify-content: flex-start;
    order: 3;
    font-size: 12px;
  }
  body.active_admin #search_status_sidebar_section > h3 {
    font-size: 12px;
  }
  body.active_admin .signal-actions-menu {
    flex: 1 1 auto;
  }
  body.active_admin .signal-actions-menu > summary {
    min-height: 44px;
    padding: 10px 12px;
  }
  body.active_admin .action_items span.action_item a {
    min-height: 44px;
  }
  body.active_admin #title_bar .action_items span.action_item > a {
    min-height: 44px;
  }
  body.active_admin
    form
    input:not([type="hidden"], [type="checkbox"], [type="radio"], .select2-search__field),
  body.active_admin form select,
  body.active_admin .signal-select__control,
  body.active_admin .filter_form .buttons a {
    min-height: 44px;
  }
  body.active_admin .signal-actions-list {
    position: relative;
    width: 100%;
    top: auto;
    margin-top: 4px;
  }
  body.active_admin table.index_table td.col-actions a {
    display: flex;
    align-items: center;
    min-height: var(--sg-control-height);
    width: 100%;
    margin: 0;
    padding: 8px 12px;
    border: 1px solid var(--sg-border);
    border-radius: var(--sg-radius-control);
    background: var(--sg-surface);
    color: var(--sg-link);
  }
  body.active_admin .signal-actions-menu[open] {
    flex-basis: 100%;
  }
  html
    body
    table.signal-records
    > tbody
    > tr
    > td:not(.col-actions):not([colspan]) {
    display: grid;
    grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
    gap: 8px;
  }
  html body table.signal-records > tbody > tr {
    gap: 8px;
    padding: 12px 0;
  }
  html body table.signal-records .signal-cell-label {
    margin: 0;
  }
  body.active_admin.tickets
    table.signal-responsive-table.signal-records
    > tbody
    > tr {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px;
    margin-bottom: 12px;
    border: 1px solid var(--sg-rule);
    background: var(--sg-surface);
  }
  body.active_admin.tickets
    table.signal-responsive-table.signal-records
    > tbody
    > tr
    > td {
    grid-column: 1/-1;
  }
  body.active_admin.tickets
    table.signal-responsive-table.signal-records
    > tbody
    > tr
    > td.col-id {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 400;
  }
  body.active_admin.tickets
    table.signal-responsive-table.signal-records
    > tbody
    > tr
    > td.col-state {
    grid-column: 2;
    grid-row: 1;
    display: block;
    text-align: right;
  }
  body.active_admin.tickets table.signal-records .col-state .signal-cell-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
  body.active_admin #edit_attachment .image_column {
    height: 300px;
    min-height: 300px;
  }
  body.active_admin .ra-field-header,
  body.active_admin .ra-field-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  body.active_admin .ra-field-header > :first-child,
  body.active_admin .ra-field-summary > :first-child {
    grid-column: 1/-1;
  }
  body.active_admin .ra-filters-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  body.active_admin .ui-dialog .ui-dialog-content {
    max-height: 65vh;
  }
  body.signal-sidekiq .navbar-nav {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
  }
  body.signal-sidekiq .navbar-nav > li {
    float: none;
  }
  body.signal-sidekiq .navbar-nav > li > a {
    padding: 8px;
  }
  body.signal-sidekiq .summary_bar {
    display: flex;
    flex-wrap: wrap;
  }
  body.signal-sidekiq .summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.signal-sidekiq .summary > *,
  body.signal-sidekiq .summary .count {
    width: auto;
    min-width: 0;
    word-break: normal;
    overflow-wrap: normal;
  }
}
@media (max-width: 480px) {
  body.active_admin
    #edit_attachment
    form
    > fieldset.inputs:first-of-type
    > ol
    > li.custom_boolean {
    flex-basis: 100%;
  }
}
@media (max-width: 900px) {
  body.active_admin #active_admin_content #sidebar.signal-workbench-tools {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 8px;
  }
  body.active_admin
    #sidebar.signal-workbench-tools
    > .sidebar_section:not(#filters_sidebar_section),
  body.active_admin #sidebar.signal-workbench-tools > .signal-scopes-panel {
    grid-column: 1/-1;
  }
  body.active_admin #sidebar.signal-workbench-tools #filters_sidebar_section {
    grid-column: 1;
  }
  body.active_admin
    #sidebar.signal-workbench-tools
    #filters_sidebar_section:has(.signal-filter-panel[open]) {
    grid-column: 1/-1;
  }
  body.active_admin
    #sidebar.signal-workbench-tools
    > button.signal-sort-toggle {
    grid-column: 2;
    order: 2;
    width: 100%;
    margin: 0;
    min-height: var(--sg-control-height);
    align-self: start;
  }
  body.active_admin
    #sidebar.signal-workbench-tools
    .signal-filter-panel
    > summary {
    min-height: var(--sg-control-height);
    padding: 12px 28px 12px 0;
  }
}
body.active_admin form.filter_form a.clear_filters_btn {
  min-height: var(--sg-control-height);
}
body.active_admin .signal-title-status {
  margin-top: 8px;
}
body.rails-default-error-page .signal-error-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin: 24px 0 0;
}
body.active_admin
  :is(.signal-navigation, .signal-scopes-panel, .signal-filter-panel, .signal-extra-filters, .signal-actions-menu)
  > summary {
  position: relative;
  list-style: none;
  padding-right: 28px;
}
body.active_admin
  :is(.signal-navigation, .signal-scopes-panel, .signal-filter-panel, .signal-extra-filters, .signal-actions-menu)
  > summary::-webkit-details-marker {
  display: none;
}
body.active_admin
  :is(.signal-navigation, .signal-scopes-panel, .signal-filter-panel, .signal-extra-filters, .signal-actions-menu)
  > summary::marker {
  content: "";
}
body.active_admin
  :is(.signal-navigation, .signal-scopes-panel, .signal-filter-panel, .signal-extra-filters, .signal-actions-menu)
  > summary::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  right: 4px;
  top: calc(50% - 8px);
  background: currentColor;
  mask: url("./icons/chevron-down.svg") center / contain no-repeat;
  -webkit-mask: url("./icons/chevron-down.svg") center / contain no-repeat;
}
body.active_admin
  :is(.signal-navigation, .signal-scopes-panel, .signal-filter-panel, .signal-extra-filters, .signal-actions-menu)[open]
  > summary::after {
  transform: rotate(180deg);
}
@media (prefers-reduced-motion: reduce) {
  body.active_admin *,
  body.signal-sidekiq * {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
@media print {
  .signal-theme-toggle {
    display: none !important;
  }
  body.active_admin .react-viewer-canvas img {
    filter: none !important;
  }
}
