/* Copyright Chemryt Informatics Private Limited */
.chemrytsc-results {
  display: grid;
  gap: 10px;
  width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.chemrytsc-warning-pane {
  display: grid;
  gap: 4px;
  border: 1px solid #efc58a;
  border-radius: 10px;
  background: #fff8eb;
  color: #7b4f00;
  padding: 10px 12px;
}

.chemrytsc-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  max-width: 100%;
}

.chemrytsc-summary-card {
  border: 1px solid #cfe0ee;
  border-radius: 12px;
  background: #ffffff;
  padding: 9px 11px;
}

.chemrytsc-summary-card span {
  display: block;
  margin-bottom: 4px;
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-summary-card strong {
  color: #143553;
  font-size: 12px !important;
  line-height: 1.15;
}

.chemrytsc-tabs {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  border: 1px solid #d3e0eb;
  border-radius: 12px;
  background: #f8fbfe;
  padding: 6px;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.chemrytsc-results-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  width: 100%;
  max-width: 100%;
}

.chemrytsc-results-toolbar--panel {
  align-items: stretch;
  margin-bottom: 12px;
}

.chemrytsc-framework-toggles {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid #d3e0eb;
  border-radius: 12px;
  background: #ffffff;
}

.chemrytsc-results-toolbar--panel .chemrytsc-framework-toggles {
  flex: 1 1 320px;
  min-height: 86px;
  align-content: center;
}

.chemrytsc-framework-toggles legend {
  padding: 0 4px;
  color: #35526c;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-framework-toggles label,
.chemrytsc-threshold-control {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.chemrytsc-results-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
  max-width: 100%;
}

.chemrytsc-results-actions--panel {
  flex: 1 1 320px;
  min-height: 86px;
  justify-content: flex-end;
  padding: 8px 0;
}

.chemrytsc-threshold-control output {
  min-width: 40px;
  color: #143553;
  font-weight: 700;
}

.chemrytsc-results-actions--panel .chemrytsc-threshold-control {
  gap: 10px;
}

.chemrytsc-results-actions--panel .chemrytsc-threshold-control > span {
  color: #35526c;
  font-size: 11px !important;
  font-weight: 700;
}

.chemrytsc-results-actions--panel .chemrytsc-threshold-control input[type="range"] {
  width: 280px;
  max-width: 100%;
}

.chemrytsc-tabs button {
  min-width: 110px !important;
  justify-content: center !important;
  flex: 0 1 auto;
  max-width: 100%;
}

.chemrytsc-tabs button.is-active {
  background: #1976d2 !important;
  border-color: #1976d2 !important;
  color: #ffffff !important;
}

.chemrytsc-tab-panels {
  display: grid;
  width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.chemrytsc-panel {
  display: none;
  border: 1px solid #d7e3ef;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
  padding: 12px;
  width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.chemrytsc-panel.is-active {
  display: block;
}

.chemrytsc-panel-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  max-width: 100%;
}

.chemrytsc-formulation-grid {
  margin-top: 0;
}

.chemrytsc-formulation-grid > .chemrytsc-data-card {
  background: #ffffff;
}

.chemrytsc-structure-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
  min-width: 0;
}

.chemrytsc-structure-primary {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.chemrytsc-structure-insights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  min-width: 0;
  width: 100%;
  align-items: start;
  justify-items: stretch;
}

.chemrytsc-structure-insights > .chemrytsc-data-card,
.chemrytsc-structure-insights > .chemrytsc-horizontal-card__panel {
  width: 100%;
  min-width: 0;
}

.chemrytsc-horizontal-card {
  margin-top: 10px;
}

.chemrytsc-horizontal-card__panel {
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #fbfdff;
  padding: 8px;
}

.chemrytsc-identity-card {
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #fbfdff;
  overflow: hidden;
}

.chemrytsc-identity-head {
  padding: 10px 12px;
  border-bottom: 1px solid #dbe6f0;
}

.chemrytsc-identity-head strong {
  color: #143553;
  font-size: 11px !important;
  text-transform: uppercase;
}

.chemrytsc-identity-banner {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: #eef8f4;
  border-bottom: 1px solid #dbe6f0;
  color: #196c4d;
  font-weight: 600;
}

.chemrytsc-identity-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #21a573;
  flex: 0 0 auto;
}

.chemrytsc-identity-table {
  display: grid;
}

.chemrytsc-identity-table > div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 12px;
  padding: 8px 10px;
  border-bottom: 1px solid #e6eef5;
}

.chemrytsc-identity-table > div:last-child {
  border-bottom: 0;
}

.chemrytsc-identity-table dt {
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-identity-table dd {
  margin: 0;
  color: #143553;
  font-size: 11px !important;
  line-height: 1.25;
  word-break: break-word;
}

.chemrytsc-copy-field {
  display: grid;
  grid-template-columns: minmax(0, 360px) 26px;
  align-items: center;
  gap: 8px;
  max-width: 100%;
}

.chemrytsc-copy-field__value {
  display: block;
  min-width: 0;
  max-width: 360px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.chemrytsc-copy-icon {
  position: relative;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border: 1px solid #bad2e8 !important;
  border-radius: 6px !important;
  background: #f8fbfe !important;
}

.chemrytsc-copy-icon::before,
.chemrytsc-copy-icon::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
  width: 9px;
  height: 11px;
  border: 1px solid #2a78d1;
  border-radius: 2px;
  background: transparent;
}

.chemrytsc-copy-icon::before {
  top: 6px;
  left: 9px;
  background: #f8fbfe;
}

.chemrytsc-copy-icon::after {
  top: 4px;
  left: 6px;
  background: #ffffff;
}

.chemrytsc-structure-calculations {
  display: grid;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
}

.chemrytsc-structure-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  max-width: 100%;
}

.chemrytsc-metric-card {
  border: 1px solid #dbe6f0;
  border-left-width: 4px;
  border-radius: 12px;
  background: #ffffff;
  padding: 8px 10px;
}

.chemrytsc-metric-card span,
.chemrytsc-metric-card small {
  display: block;
}

.chemrytsc-metric-card span {
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
}

.chemrytsc-metric-card strong {
  display: block;
  margin-top: 2px;
  color: #143553;
  font-size: 12px !important;
  line-height: 1.15;
}

.chemrytsc-metric-card small {
  margin-top: 3px;
  color: #607891;
  font-size: 10px !important;
}

.chemrytsc-metric-card.is-good {
  border-left-color: #1f8b62;
}

.chemrytsc-metric-card.is-warn {
  border-left-color: #c97919;
}

.chemrytsc-metric-card.is-risk {
  border-left-color: #c73434;
}

.chemrytsc-data-card {
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #fbfdff;
  padding: 8px;
}

.chemrytsc-data-card h3 {
  margin: 0 0 8px;
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-core-warning-card {
  margin-bottom: 12px;
  border: 1px solid #f0c48b;
  border-radius: 12px;
  background: #fff8ea;
  padding: 11px 14px;
}

.chemrytsc-core-warning-card strong {
  display: block;
  margin-bottom: 5px;
  color: #9a6500;
  font-size: 11px !important;
  font-weight: 700;
}

.chemrytsc-core-warning-card p {
  color: #35526c !important;
  font-size: 11px !important;
  line-height: 1.3;
}

.chemrytsc-handling-card {
  margin-bottom: 12px;
}

.chemrytsc-scorecard-card {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.chemrytsc-scorecard-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.chemrytsc-scorecard-head p {
  margin: 4px 0 0;
}

.chemrytsc-scorecard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.chemrytsc-scorecard-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.chemrytsc-scorecard-metric {
  border: 1px solid #d8e7f2;
  border-radius: 12px;
  background: #fbfdff;
  padding: 12px;
}

.chemrytsc-scorecard-metric__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.chemrytsc-scorecard-metric__head strong {
  color: #143553;
}

.chemrytsc-scorecard-metric__head span {
  color: #35526c;
  font-size: 11px;
  font-weight: 700;
}

.chemrytsc-scorecard-metric p {
  margin: 10px 0 0;
}

.chemrytsc-scorecard-bar {
  display: grid;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  gap: 4px;
}

.chemrytsc-scorecard-bar__segment {
  height: 12px;
  border-radius: 999px;
  background: #d9e7f3;
}

.chemrytsc-scorecard-bar__segment.is-active {
  background: #4c8fca;
}

.chemrytsc-scorecard-bar__segment.is-danger {
  background: #d65b52;
}

.chemrytsc-scorecard-item {
  border: 1px solid #d8e7f2;
  border-radius: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  padding: 12px;
}

.chemrytsc-scorecard-item strong {
  display: block;
  color: #143553;
  margin-bottom: 8px;
}

.chemrytsc-scorecard-item p {
  margin: 10px 0 8px;
}

.chemrytsc-scorecard-item small {
  display: block;
  color: #35526c;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-scorecard-badge {
  display: inline-flex;
  align-items: center;
  padding: 7px 11px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
}

.chemrytsc-scorecard-badge.pass {
  background: #eaf7f0;
  color: #1f7a4f;
}

.chemrytsc-scorecard-badge.warn {
  background: #fff3e3;
  color: #9a6500;
}

.chemrytsc-scorecard-badge.risk {
  background: #fdeceb;
  color: #b33a32;
}

.chemrytsc-sc-profiler-card {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.chemrytsc-sc-profiler-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.chemrytsc-sc-profiler-head p {
  margin: 4px 0 0;
}

.chemrytsc-sc-profiler-engine {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #eef7ff;
  color: #15507d;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.chemrytsc-sc-profiler-grid {
  align-items: start;
}

.chemrytsc-sc-profiler-list {
  display: grid;
  gap: 8px;
}

.chemrytsc-sc-profiler-item {
  border: 1px solid #d8e7f2;
  border-radius: 10px;
  background: #f9fcff;
  padding: 10px;
}

.chemrytsc-sc-profiler-item strong {
  display: block;
  color: #143553;
  margin-bottom: 4px;
}

.chemrytsc-sc-profiler-item p {
  margin: 0;
}

.chemrytsc-sc-profiler-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.chemrytsc-sc-profiler-tag {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border: 1px solid #cfe0ee;
  border-radius: 999px;
  background: #f2f8fc;
  color: #143553;
  font-size: 11px;
  font-weight: 700;
}

.chemrytsc-sc-profiler-tag.is-empty {
  background: #f8fafc;
  color: #60758a;
}

.chemrytsc-core-property-card {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.chemrytsc-core-property-grid {
  align-items: start;
}

.chemrytsc-core-property-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.chemrytsc-core-property-metric {
  border: 1px solid #d8e7f2;
  border-radius: 10px;
  background: #f9fcff;
  padding: 10px;
}

.chemrytsc-core-property-metric span {
  display: block;
  color: #607891;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.chemrytsc-core-property-metric strong {
  color: #143553;
  font-size: 14px;
  line-height: 1.2;
}

.chemrytsc-regulatory-controls {
  margin-bottom: 10px;
}

.chemrytsc-tonnage-control {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.chemrytsc-tonnage-control > span {
  color: #35526c;
  font-size: 11px;
  font-weight: 700;
}

.chemrytsc-tonnage-control select {
  min-width: 160px;
  border: 1px solid #cfe0ee;
  border-radius: 8px;
  background: #fff;
  padding: 7px 10px;
  color: #143553;
}

.chemrytsc-regulatory-matrix,
.chemrytsc-tonnage-grid {
  display: grid;
  gap: 8px;
  margin-bottom: 10px;
}

.chemrytsc-regulatory-card,
.chemrytsc-tonnage-card {
  border: 1px solid #d8e7f2;
  border-radius: 10px;
  background: #f9fcff;
  padding: 10px;
}

.chemrytsc-regulatory-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
}

.chemrytsc-regulatory-card__head strong,
.chemrytsc-tonnage-card strong {
  color: #143553;
}

.chemrytsc-regulatory-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}

.chemrytsc-regulatory-badge.pass {
  background: #eaf7f0;
  color: #1f7a4f;
}

.chemrytsc-regulatory-badge.warn {
  background: #fff3e3;
  color: #9a6500;
}

.chemrytsc-regulatory-badge.risk {
  background: #fdeceb;
  color: #b33a32;
}

.chemrytsc-regulatory-card p,
.chemrytsc-regulatory-card small,
.chemrytsc-tonnage-card span {
  margin: 0;
}

.chemrytsc-tonnage-card span {
  display: block;
  color: #607891;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 4px 0 8px;
}

.chemrytsc-tonnage-card ul {
  margin: 0;
  padding-left: 18px;
}

.chemrytsc-regulatory-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.chemrytsc-handling-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.chemrytsc-handling-head h3 {
  margin: 0;
}

.chemrytsc-handling-head span {
  color: #607891;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-handling-banner {
  border: 1px solid #ffd2a5;
  border-radius: 16px;
  background: #fff8ef;
  color: #b05f00;
  font-size: 11px !important;
  line-height: 1.35;
  padding: 10px 12px;
}

.chemrytsc-handling-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.chemrytsc-handling-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border: 1px solid #cfe0ee;
  border-radius: 999px;
  background: #f7fbff;
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
  padding: 0 10px;
}

.chemrytsc-handling-badge.is-good {
  border-color: #9dd8b6;
  background: #ecfbf2;
  color: #187a53;
}

.chemrytsc-handling-badge.is-warn {
  border-color: #f0c48b;
  background: #fff8ea;
  color: #9a6500;
}

.chemrytsc-handling-badge.is-risk {
  border-color: #efb5b5;
  background: #fff3f3;
  color: #a22a2a;
}

.chemrytsc-handling-pictograms {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.chemrytsc-handling-pictogram {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 160px;
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #ffffff;
  padding: 8px 10px;
}

.chemrytsc-handling-pictogram span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 4px solid #df2c2c;
  transform: rotate(45deg);
  color: #111111;
  font-size: 11px !important;
  font-weight: 700;
  background: #ffffff;
}

.chemrytsc-handling-pictogram span,
.chemrytsc-handling-pictogram strong {
  min-width: 0;
}

.chemrytsc-handling-pictogram span {
  line-height: 1;
}

.chemrytsc-handling-pictogram span i {
  display: inline-block;
  transform: rotate(-45deg);
  font-style: normal;
}

.chemrytsc-handling-pictogram strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-handling-pictogram.is-empty {
  grid-template-columns: 1fr;
  min-width: 0;
  color: #607891;
}

.chemrytsc-visual-hazard-card {
  margin-top: 12px;
}

.chemrytsc-visual-hazard-alert {
  border: 1px solid #ffd2a5;
  border-radius: 12px;
  background: #fff8ef;
  color: #8e5200;
  padding: 10px 12px;
}

.chemrytsc-visual-hazard-alert strong {
  display: block;
  margin-bottom: 4px;
}

.chemrytsc-visual-hazard-alert p {
  margin: 0;
}

.chemrytsc-visual-hazard-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.chemrytsc-visual-hazard-tile {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  border: 1px solid #d8e7f2;
  border-radius: 12px;
  background: #fbfdff;
  padding: 10px;
}

.chemrytsc-visual-hazard-tile.is-warn {
  border-color: #f0c48b;
  background: #fff8ea;
}

.chemrytsc-visual-hazard-tile.is-risk {
  border-color: #efb5b5;
  background: #fff2f2;
}

.chemrytsc-visual-hazard-tile.is-empty {
  grid-template-columns: 1fr;
  color: #607891;
}

.chemrytsc-visual-hazard-symbol {
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid #d8e7f2;
}

.chemrytsc-visual-hazard-symbol strong {
  color: #143553;
  font-size: 24px;
  line-height: 1;
  text-align: center;
}

.chemrytsc-visual-hazard-copy strong {
  display: block;
  color: #143553;
  margin-bottom: 4px;
}

.chemrytsc-visual-hazard-copy p {
  margin: 0;
}

.chemrytsc-handling-guidance {
  border-left: 3px solid #f4a63f;
  border-radius: 14px;
  background: #fff9ef;
  padding: 10px 12px;
}

.chemrytsc-handling-guidance strong {
  display: block;
  color: #143553;
  font-size: 11px !important;
  margin-bottom: 5px;
}

.chemrytsc-handling-subnote {
  color: #607891 !important;
  font-size: 10px !important;
  font-style: italic;
  margin-bottom: 8px !important;
}

.chemrytsc-data-card dl,
.chemrytsc-data-card ul,
.chemrytsc-data-card p {
  margin: 0;
}

.chemrytsc-data-card ul {
  padding-left: 18px;
  list-style-position: outside;
}

.chemrytsc-data-card li {
  margin-left: 0;
}

.chemrytsc-history-list,
.chemrytsc-analogue-actions,
.chemrytsc-batch-results,
.chemrytsc-selfies-variants {
  display: grid;
  gap: 8px;
}

.chemrytsc-inline-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}

.chemrytsc-inline-actions--between {
  justify-content: space-between;
  flex-wrap: wrap;
}

.chemrytsc-inline-actions--between > span {
  color: #607891;
  font-size: 11px !important;
  line-height: 1.35;
}

.chemrytsc-batch-results,
.chemrytsc-selfies-variants {
  margin-top: 10px;
}

.chemrytsc-decomp-snapshot {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.chemrytsc-decomp-stat {
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #ffffff;
  padding: 8px;
  display: grid;
  gap: 4px;
}

.chemrytsc-decomp-stat span {
  color: #4c657a;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-decomp-stat strong {
  color: #143553;
  font-size: 12px !important;
  line-height: 1.35;
  font-weight: 400;
}

.chemrytsc-decomp-select-wrap {
  display: block;
}

.chemrytsc-decomp-select-wrap select {
  width: 100%;
  min-height: 30px;
  border: 1px solid #cfe0ee;
  border-radius: 8px;
  background: #ffffff;
  color: #143553;
  font-size: 11px !important;
  padding: 4px 8px;
}

.chemrytsc-decomp-table-wrap {
  overflow-x: auto;
}

.chemrytsc-decomp-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 880px;
}

.chemrytsc-decomp-table th,
.chemrytsc-decomp-table td {
  padding: 8px 10px;
  border-bottom: 1px solid #dbe6f0;
  text-align: left;
  vertical-align: top;
  color: #143553;
  font-size: 11px !important;
  line-height: 1.35;
}

.chemrytsc-decomp-table th {
  color: #4c657a;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
  background: #f7fbff;
}

.chemrytsc-decomp-table tbody tr:nth-child(odd) {
  background: #fbfdff;
}

.chemrytsc-decomp-table tbody tr {
  cursor: pointer;
  transition: background-color 140ms ease, box-shadow 140ms ease;
}

.chemrytsc-decomp-table tbody tr:hover {
  background: #f4f9ff;
}

.chemrytsc-decomp-table tbody tr.is-active {
  background: #eef7ff;
  box-shadow: inset 3px 0 0 #2a78d1;
}

.chemrytsc-decomp-visualizer {
  margin-bottom: 10px;
}

[data-chemrytsc-decomp-view].is-active {
  background: #1976d2 !important;
  border-color: #1976d2 !important;
  color: #ffffff !important;
}

.chemrytsc-environment-matrix-wrap {
  overflow-x: auto;
  margin-top: 8px;
}

.chemrytsc-environment-alert {
  display: grid;
  gap: 6px;
  margin-top: 8px;
  border: 1px solid #dbe6f0;
  border-left: 4px solid #0b7a52;
  border-radius: 12px;
  background: #f7fffb;
  padding: 10px 12px;
}

.chemrytsc-environment-alert.is-warn {
  border-left-color: #a65f00;
  background: #fff9ef;
}

.chemrytsc-environment-alert.is-risk {
  border-left-color: #b42318;
  background: #fff6f5;
}

.chemrytsc-environment-alert strong {
  color: #143553;
  font-size: 12px !important;
}

.chemrytsc-environment-alert p {
  color: #35526c;
  font-size: 11px !important;
  line-height: 1.35;
}

.chemrytsc-analogue-quick-actions {
  margin-top: 5px;
}

.chemrytsc-analogue-quickview {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, 0.32);
}

.chemrytsc-analogue-quickview__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.chemrytsc-analogue-quick-card {
  display: grid;
  gap: 5px;
  padding: 9px;
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #fff;
}

.chemrytsc-analogue-quick-card.is-current {
  border-color: #93c5fd;
  background: #f0f8ff;
}

.chemrytsc-analogue-quick-card__svg {
  display: grid;
  min-height: 108px;
  place-items: center;
  border-radius: 7px;
  background: #fbfdff;
  overflow: hidden;
}

.chemrytsc-analogue-quick-card__svg svg {
  width: 100%;
  height: 120px;
}

.chemrytsc-analogue-quick-card > strong {
  color: #143553;
  font-size: 10px !important;
}

.chemrytsc-analogue-quick-card > span {
  color: #35526c;
  font-size: 9px !important;
  font-weight: 700;
}

.chemrytsc-analogue-quick-card > span b.is-lower {
  color: #1f8b62;
}

.chemrytsc-analogue-quick-card > span b.is-higher {
  color: #b45309;
}

.chemrytsc-analogue-quick-card > small {
  color: #71879b;
  font-size: 8px !important;
  line-height: 1.35;
}

.chemrytsc-regulatory-export {
  margin-top: 12px;
  padding: 10px;
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #f8fbfe;
}

.chemrytsc-regulatory-export > strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-regulatory-export > p,
.chemrytsc-regulatory-export > span {
  display: block;
  margin: 4px 0 8px;
  color: #607891;
  font-size: 9px !important;
  line-height: 1.35;
}

.chemrytsc-regulatory-export > span {
  margin: 8px 0 0;
}

@media (max-width: 760px) {
  .chemrytsc-analogue-quickview__grid { grid-template-columns: 1fr; }
}

.chemrytsc-field-safety-brief .chemrytsc-inline-actions { justify-content: flex-end; }
.chemrytsc-screening-badge {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  background: #e9f1f8;
  color: #46627c;
  font-size: .72rem;
  font-weight: 700;
  white-space: nowrap;
}

.chemrytsc-degradation-summary {
  display: flex;
  gap: 8px 16px;
  align-items: baseline;
  margin: 14px 0 10px;
  padding: 10px 12px;
  border-radius: 10px;
  background: #f4f8fb;
}
.chemrytsc-degradation-summary strong { color: #173a59; font-size: .78rem; }
.chemrytsc-degradation-summary span { color: #62788d; font-size: .76rem; }
.chemrytsc-degradation-table-wrap { overflow-x: auto; border: 1px solid #d8e4ee; border-radius: 12px; }
.chemrytsc-degradation-table-wrap table { width: 100%; min-width: 710px; border-collapse: collapse; }
.chemrytsc-degradation-table-wrap th,
.chemrytsc-degradation-table-wrap td { padding: 10px; border-right: 1px solid #e0e9f1; border-bottom: 1px solid #e0e9f1; text-align: left; }
.chemrytsc-degradation-table-wrap tr:last-child th,
.chemrytsc-degradation-table-wrap tr:last-child td { border-bottom: 0; }
.chemrytsc-degradation-table-wrap th:last-child,
.chemrytsc-degradation-table-wrap td:last-child { border-right: 0; }
.chemrytsc-degradation-table-wrap thead th { background: #f3f7fa; color: #294b67; font-size: .75rem; }
.chemrytsc-degradation-table-wrap tbody th { color: #294b67; font-size: .75rem; white-space: nowrap; }
.chemrytsc-degradation-tier { display: block; min-width: 140px; padding: 8px; border-radius: 8px; }
.chemrytsc-degradation-tier strong,
.chemrytsc-degradation-tier small { display: block; }
.chemrytsc-degradation-tier strong { font-size: .72rem; }
.chemrytsc-degradation-tier small { margin-top: 2px; font-size: .68rem; opacity: .82; }
.chemrytsc-degradation-tier.pass { background: #e6f6ef; color: #177453; }
.chemrytsc-degradation-tier.warn { background: #fff1df; color: #945907; }
.chemrytsc-degradation-tier.risk { background: #fde8e8; color: #a32f2f; }
.chemrytsc-degradation-note { margin: 10px 2px 0; color: #65798e; font-size: .74rem; line-height: 1.45; }

@media (max-width: 760px) {
  .chemrytsc-field-safety-brief .chemrytsc-inline-actions { width: 100%; justify-content: stretch; }
  .chemrytsc-field-safety-brief .chemrytsc-inline-actions button { width: 100%; }
  .chemrytsc-degradation-summary { align-items: flex-start; flex-direction: column; }
}

.chemrytsc-environment-matrix {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  min-width: 760px;
}

.chemrytsc-environment-matrix th:nth-child(1),
.chemrytsc-environment-matrix td:nth-child(1) {
  width: 180px;
}

.chemrytsc-environment-matrix th:nth-child(2),
.chemrytsc-environment-matrix td:nth-child(2) {
  width: 156px;
}

.chemrytsc-environment-matrix th:nth-child(3),
.chemrytsc-environment-matrix td:nth-child(3) {
  width: auto;
}

.chemrytsc-environment-matrix th,
.chemrytsc-environment-matrix td {
  padding: 9px 10px;
  border-bottom: 1px solid #dbe6f0;
  text-align: left;
  vertical-align: top;
}

.chemrytsc-environment-matrix th {
  background: #f7fbff;
  color: #4c657a;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-environment-matrix td {
  color: #143553;
  font-size: 11px !important;
  line-height: 1.35;
}

.chemrytsc-environment-matrix td strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-environment-matrix td:nth-child(2) {
  white-space: nowrap;
}

.chemrytsc-environment-row {
  transition: background-color 140ms ease, box-shadow 140ms ease;
}

.chemrytsc-environment-row:hover,
.chemrytsc-environment-row:focus-within,
.chemrytsc-environment-row.is-highlight-active {
  background: #fff7ed;
  box-shadow: inset 3px 0 #f97316;
  outline: none;
}

.chemrytsc-environment-row.is-highlight-pinned {
  background: #fff1f2;
  box-shadow: inset 3px 0 #dc2626;
}

.chemrytsc-environment-insight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}

.chemrytsc-environment-eye {
  width: 30px;
  min-width: 30px;
  height: 28px;
  padding: 0 !important;
  border-color: #bfd2e2 !important;
  background: #f7fbff !important;
  color: #35526c !important;
}

.chemrytsc-environment-eye span {
  position: relative;
  display: block;
  width: 16px;
  height: 10px;
  margin: auto;
  border: 1.7px solid currentColor;
  border-radius: 50% / 60%;
}

.chemrytsc-environment-eye span::after {
  content: '';
  position: absolute;
  inset: 2px 5px;
  border-radius: 50%;
  background: currentColor;
}

.chemrytsc-environment-row.is-highlight-pinned .chemrytsc-environment-eye {
  border-color: #dc2626 !important;
  background: #fff1f2 !important;
  color: #dc2626 !important;
}

.chemrytsc-env-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 96px;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
}

.chemrytsc-env-chip.pass {
  background: #e6f7ef;
  color: #0b7a52;
}

.chemrytsc-env-chip.warn {
  background: #fff4de;
  color: #a65f00;
}

.chemrytsc-env-chip.risk {
  background: #fdeceb;
  color: #b42318;
}

.chemrytsc-env-chip.na {
  background: #eff4f9;
  color: #607891;
}

.chemrytsc-ghs-pictogram-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.chemrytsc-ghs-pictogram-tile {
  display: grid;
  gap: 4px;
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #ffffff;
  padding: 8px;
}

.chemrytsc-ghs-pictogram-tile strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-ghs-pictogram-tile span {
  color: #145074;
  font-size: 11px !important;
  font-weight: 700;
}

.chemrytsc-ghs-pictogram-tile small {
  color: #607891;
  font-size: 10px !important;
  line-height: 1.25;
}

.chemrytsc-ghs-pictogram-tile.is-empty {
  grid-column: 1 / -1;
  color: #607891;
}

.chemrytsc-decomp-fragments {
  display: grid;
  gap: 8px;
}

.chemrytsc-decomp-pathway {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.chemrytsc-decomp-pathway .chemrytsc-selfies-item em {
  color: #145074;
  font-family: "Courier New", monospace;
  font-size: 11px !important;
}

.chemrytsc-decomp-modifier-card {
  display: grid;
  gap: 10px;
  margin-top: 10px;
  padding: 16px 18px;
  border: 1px solid #f8c78b;
  border-left: 4px solid #f59e0b;
  border-radius: 16px;
  background: linear-gradient(135deg, #fffaf0 0%, #fff7ed 100%);
}

.chemrytsc-decomp-modifier-card strong {
  color: #92400e;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}

.chemrytsc-decomp-modifier-card p {
  margin: 0;
  color: #6b4f2a;
  font-size: 14px;
  line-height: 1.5;
}

[data-chemrytsc-decomp-modifier-actions] {
  margin: 12px 0 0;
  padding-left: 20px;
}

[data-chemrytsc-decomp-modifier-actions] li {
  color: #143553;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 6px;
}

.chemrytsc-decomp-fragments .chemrytsc-selfies-item {
  cursor: pointer;
  transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.chemrytsc-decomp-fragments .chemrytsc-selfies-item:hover {
  border-color: #9cc2df;
  box-shadow: 0 6px 16px rgba(20, 53, 83, 0.08);
}

.chemrytsc-decomp-fragments .chemrytsc-selfies-item.is-active {
  border-color: #2f6e9f;
  box-shadow: 0 0 0 2px rgba(47, 110, 159, 0.14);
  transform: translateY(-1px);
}

.chemrytsc-model-summary-strip {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #ffffff;
  padding: 10px 12px;
}

.chemrytsc-model-summary-strip.warn {
  background: #fffaf4;
}

.chemrytsc-model-summary-strip strong,
.chemrytsc-model-summary-strip b {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-model-summary-strip span {
  color: #35526c;
  font-size: 11px !important;
  line-height: 1.35;
}

.chemrytsc-model-dashboard {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.chemrytsc-field-sandbox {
  background: linear-gradient(135deg, #f6fbff 0%, #ffffff 70%);
  border-color: #bfd8ea;
}

.chemrytsc-field-sandbox__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.chemrytsc-field-sandbox__head h3,
.chemrytsc-field-variant h4 {
  margin: 0;
  color: #143553;
}

.chemrytsc-field-sandbox__head p {
  margin: 5px 0 0;
  color: #607891;
}

.chemrytsc-field-sandbox__status {
  margin: 10px 0 0;
  color: #45627a;
  font-size: 10px !important;
}

.chemrytsc-field-sandbox__results {
  margin-top: 12px;
}

.chemrytsc-field-sandbox-baseline {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-bottom: 10px;
  padding: 9px;
  border: 1px solid #bfdbfe;
  border-radius: 10px;
  background: #eff8ff;
}

.chemrytsc-field-sandbox-baseline__svg {
  height: 90px;
  overflow: hidden;
}

.chemrytsc-field-sandbox-baseline__svg svg {
  width: 100%;
  height: 100%;
}

.chemrytsc-field-sandbox-baseline span,
.chemrytsc-field-sandbox-baseline strong,
.chemrytsc-field-sandbox-baseline small {
  display: block;
}

.chemrytsc-field-sandbox-baseline span {
  color: #1976d2;
  font-size: 9px !important;
  font-weight: 800;
  text-transform: uppercase;
}

.chemrytsc-field-sandbox-baseline strong {
  margin-top: 3px;
  color: #143553;
  font-size: 12px !important;
}

.chemrytsc-field-sandbox-baseline small {
  margin-top: 3px;
  color: #607891;
  font-size: 9px !important;
}

.chemrytsc-field-sandbox-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  gap: 10px;
}

.chemrytsc-field-analogue-matrix__results { margin-top: 12px; }

.chemrytsc-field-analogue-matrix__scroll {
  overflow-x: auto;
  border: 1px solid var(--chemrytsc-border, #d7e3ef);
  border-radius: 12px;
}

.chemrytsc-field-analogue-matrix table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
  font-size: .84rem;
}

.chemrytsc-field-analogue-matrix th,
.chemrytsc-field-analogue-matrix td {
  padding: 11px 12px;
  border-bottom: 1px solid var(--chemrytsc-border, #d7e3ef);
  text-align: left;
  vertical-align: middle;
}

.chemrytsc-field-analogue-matrix thead th {
  background: #f3f7fb;
  color: #183b5b;
  white-space: nowrap;
}

.chemrytsc-field-analogue-matrix tbody tr:last-child th,
.chemrytsc-field-analogue-matrix tbody tr:last-child td { border-bottom: 0; }
.chemrytsc-field-analogue-matrix tbody tr.is-active { background: #eef7ff; }
.chemrytsc-field-analogue-matrix tbody th { min-width: 190px; color: #102f4b; }
.chemrytsc-field-analogue-matrix tbody th small { display: block; margin-top: 3px; color: #71849a; font-weight: 500; }

.chemrytsc-matrix-status {
  display: inline-flex;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 700;
  white-space: nowrap;
}

.chemrytsc-matrix-status.is-pass { background: #e6f6ef; color: #177453; }
.chemrytsc-matrix-status.is-review { background: #fff1df; color: #995b08; }
.chemrytsc-matrix-status.is-neutral { background: #e9eff6; color: #526a82; }
.chemrytsc-field-analogue-matrix__note { margin: 10px 2px 0; color: #65798e; font-size: .78rem; line-height: 1.45; }

.chemrytsc-application-radar__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.chemrytsc-application-radar__head h3 { margin: 0; }
.chemrytsc-application-radar__head p { margin: 5px 0 0; color: #61768b; }
.chemrytsc-application-radar__head label { min-width: 230px; }
.chemrytsc-application-radar__head label span { display: block; margin-bottom: 5px; color: #35526c; font-size: .78rem; font-weight: 700; }
.chemrytsc-application-radar__head select { width: 100%; }

.chemrytsc-application-radar__body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
  margin-top: 16px;
}

.chemrytsc-application-radar__chart {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  place-items: center;
  min-width: 0;
  padding: 10px 18px;
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #fbfdff;
}
.chemrytsc-application-radar__chart svg { width: 100%; max-width: 500px; height: auto; overflow: visible; }
.chemrytsc-application-radar__rings polygon { fill: none; stroke: #d9e5ef; stroke-width: 1; }
.chemrytsc-application-radar__axes line { stroke: #d9e5ef; stroke-width: 1; }
.chemrytsc-application-radar__labels text { fill: #35526c; font-size: 10px; font-weight: 700; }
.chemrytsc-application-radar__target { fill: rgba(204, 126, 25, .08); stroke: #cc7e19; stroke-width: 2; stroke-dasharray: 6 4; }
.chemrytsc-application-radar__actual { fill: rgba(25, 118, 210, .18); stroke: #1976d2; stroke-width: 2.5; }

.chemrytsc-application-radar__key { display: flex; flex-wrap: wrap; gap: 14px; font-size: .76rem; font-weight: 700; }
.chemrytsc-application-radar__key span::before { content: ''; display: inline-block; width: 18px; height: 3px; margin-right: 6px; vertical-align: middle; background: #1976d2; }
.chemrytsc-application-radar__key .is-target::before { background: repeating-linear-gradient(90deg, #cc7e19 0 6px, transparent 6px 9px); }
.chemrytsc-application-radar__body > div:nth-child(2) {
  min-width: 0;
  padding: 14px;
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #ffffff;
}
.chemrytsc-application-radar__body h4 { margin: 0 0 10px; color: #173a59; }
.chemrytsc-application-radar__metrics { display: grid; gap: 8px; }
.chemrytsc-application-radar__metric { padding: 8px 10px; border: 1px solid #dbe6f0; border-left: 4px solid #9fb5ca; border-radius: 9px; }
.chemrytsc-application-radar__metric strong,
.chemrytsc-application-radar__metric span,
.chemrytsc-application-radar__metric small { display: block; }
.chemrytsc-application-radar__metric strong { color: #173a59; font-size: .78rem; }
.chemrytsc-application-radar__metric span { margin-top: 2px; color: #35526c; font-size: .75rem; font-weight: 700; }
.chemrytsc-application-radar__metric small { margin-top: 2px; color: #74879a; font-size: .7rem; }
.chemrytsc-application-radar__metric.pass { border-left-color: #1f8b62; }
.chemrytsc-application-radar__metric.warn { border-left-color: #c97919; }
.chemrytsc-application-radar__metric.risk { border-left-color: #c73434; }
.chemrytsc-application-radar__note { grid-column: 1 / -1; margin: 0; color: #65798e; font-size: .76rem; line-height: 1.45; }

@media (max-width: 760px) {
  .chemrytsc-application-radar__head { flex-direction: column; }
  .chemrytsc-application-radar__head label { width: 100%; min-width: 0; }
  .chemrytsc-application-radar__body { grid-template-columns: 1fr; }
}

.chemrytsc-field-variant {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid #dbe6f0;
  border-top: 3px solid #c97919;
  border-radius: 11px;
  background: #fff;
}

.chemrytsc-field-variant.is-improved {
  border-top-color: #1f8b62;
}

.chemrytsc-field-variant__svg {
  display: grid;
  height: 135px;
  place-items: center;
  overflow: hidden;
  border-radius: 7px;
  background: #fbfdff;
}

.chemrytsc-field-variant__svg svg {
  width: 100%;
  height: 100%;
}

.chemrytsc-field-variant > span {
  color: #1976d2;
  font-size: 8px !important;
  font-weight: 800;
  text-transform: uppercase;
}

.chemrytsc-field-variant h4 {
  font-size: 11px !important;
}

.chemrytsc-field-variant p {
  margin: 0;
  min-height: 40px;
  color: #607891;
  font-size: 9px !important;
  line-height: 1.4;
}

.chemrytsc-field-variant__deltas {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
}

.chemrytsc-field-variant__deltas div {
  padding: 6px 4px;
  border-radius: 7px;
  background: #f3f8fc;
  text-align: center;
}

.chemrytsc-field-variant__deltas small,
.chemrytsc-field-variant__deltas strong {
  display: block;
}

.chemrytsc-field-variant__deltas small {
  color: #71879b;
  font-size: 7px !important;
}

.chemrytsc-field-variant__deltas strong {
  margin-top: 2px;
  color: #143553;
  font-size: 9px !important;
}

.chemrytsc-field-variant__note {
  color: #71879b;
  font-size: 8px !important;
}

@media (max-width: 640px) {
  .chemrytsc-field-sandbox__head { flex-direction: column; }
  .chemrytsc-field-sandbox__head button { width: 100%; }
  .chemrytsc-field-sandbox-baseline { grid-template-columns: 1fr; }
}

.chemrytsc-bioisostere-tool {
  margin: 14px 0;
  padding: 14px;
  border: 1px solid #bfd8ea;
  border-radius: 14px;
  background: linear-gradient(135deg, #f5fbff 0%, #ffffff 68%);
}

.chemrytsc-bioisostere-tool__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.chemrytsc-bioisostere-tool__head h3,
.chemrytsc-bioisostere-card h4 {
  margin: 0;
  color: #143553;
}

.chemrytsc-bioisostere-tool__head p,
.chemrytsc-bioisostere-card p {
  margin: 5px 0 0;
  color: #607891;
}

.chemrytsc-bioisostere-tool__status {
  margin: 10px 0 0;
  color: #45627a;
  font-size: 11px !important;
}

.chemrytsc-bioisostere-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.chemrytsc-bioisostere-card {
  overflow: hidden;
  border: 1px solid #dbe6f0;
  border-top: 3px solid #c97919;
  border-radius: 12px;
  background: #fff;
}

.chemrytsc-bioisostere-card.is-improved { border-top-color: #1f8b62; }
.chemrytsc-bioisostere-card__visual { display: grid; min-height: 150px; place-items: center; background: #fbfdff; }
.chemrytsc-bioisostere-card__visual svg { width: 100%; max-height: 170px; }
.chemrytsc-bioisostere-card__body { padding: 11px; }
.chemrytsc-bioisostere-card__rank { color: #1976d2; font-size: 9px !important; font-weight: 800; text-transform: uppercase; }
.chemrytsc-bioisostere-card h4 { margin-top: 3px; font-size: 12px !important; }
.chemrytsc-bioisostere-card p { min-height: 42px; font-size: 10px !important; line-height: 1.4; }
.chemrytsc-bioisostere-card dl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; margin: 9px 0; }
.chemrytsc-bioisostere-card dl div { padding: 6px; border-radius: 7px; background: #f3f8fc; }
.chemrytsc-bioisostere-card dt { color: #71879b; font-size: 8px !important; }
.chemrytsc-bioisostere-card dd { margin: 2px 0 0; color: #143553; font-size: 10px !important; font-weight: 800; }
.chemrytsc-bioisostere-card small { display: block; margin-bottom: 9px; color: #607891; font-size: 9px !important; }
.chemrytsc-bioisostere-card button { width: 100%; }

@media (max-width: 640px) {
  .chemrytsc-bioisostere-tool__head { flex-direction: column; }
  .chemrytsc-bioisostere-tool__head button { width: 100%; }
}

.chemrytsc-model-radar-card {
  margin-top: 12px;
  border: 1px solid #dbe6f0;
  border-radius: 14px;
  background:
    radial-gradient(circle at top, rgba(230, 243, 252, 0.7), rgba(255, 255, 255, 0) 48%),
    #fbfdff;
  padding: 14px;
}

.chemrytsc-model-radar-card__copy strong {
  display: block;
  color: #143553;
  font-size: 12px !important;
  font-weight: 700;
}

.chemrytsc-model-radar-card__copy p {
  margin: 4px 0 0;
  color: #607891;
  font-size: 10px !important;
  line-height: 1.4;
}

.chemrytsc-model-radar-card__layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: center;
  margin-top: 12px;
}

.chemrytsc-model-radar {
  display: grid;
  place-items: center;
  padding: 8px;
}

.chemrytsc-model-radar svg {
  width: 100%;
  max-width: 340px;
  height: auto;
  overflow: visible;
}

.chemrytsc-model-radar__rings polygon {
  fill: none;
  stroke: #d8e5f0;
  stroke-width: 1;
}

.chemrytsc-model-radar__axes line {
  stroke: #d8e5f0;
  stroke-width: 1;
}

.chemrytsc-model-radar__labels text {
  fill: #35526c;
  font-size: 10px;
  font-weight: 700;
}

.chemrytsc-model-radar__labels tspan {
  fill: #7c8fa3;
  font-size: 9px;
  font-weight: 600;
}

.chemrytsc-model-radar__shape {
  fill: rgba(23, 118, 210, 0.16);
  stroke: #1976d2;
  stroke-width: 2;
}

.chemrytsc-model-radar__points circle {
  fill: #1976d2;
  stroke: #ffffff;
  stroke-width: 2;
}

.chemrytsc-model-radar-legend {
  display: grid;
  gap: 8px;
}

.chemrytsc-model-radar-legend__item {
  border: 1px solid #dbe6f0;
  border-left: 4px solid #9fc6e6;
  border-radius: 10px;
  background: #ffffff;
  padding: 8px 10px;
}

.chemrytsc-model-radar-legend__item strong,
.chemrytsc-model-radar-legend__item span,
.chemrytsc-model-radar-legend__item small {
  display: block;
}

.chemrytsc-model-radar-legend__item strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-model-radar-legend__item span {
  margin-top: 3px;
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
}

.chemrytsc-model-radar-legend__item small {
  margin-top: 2px;
  color: #7c8fa3;
  font-size: 9px !important;
  line-height: 1.35;
}

.chemrytsc-model-radar-legend__item.pass {
  border-left-color: #1f8b62;
}

.chemrytsc-model-radar-legend__item.warn {
  border-left-color: #c97919;
}

.chemrytsc-model-radar-legend__item.risk {
  border-left-color: #c73434;
}

.chemrytsc-model-scatter-card {
  margin-top: 12px;
  border: 1px solid #dbe6f0;
  border-radius: 14px;
  background: #ffffff;
  padding: 14px;
}

.chemrytsc-model-scatter-card__copy strong {
  display: block;
  color: #143553;
  font-size: 12px !important;
  font-weight: 700;
}

.chemrytsc-model-scatter-card__copy p {
  margin: 4px 0 0;
  color: #607891;
  font-size: 10px !important;
  line-height: 1.4;
}

.chemrytsc-model-scatter-card__layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
  margin-top: 12px;
}

.chemrytsc-model-scatter {
  display: grid;
  place-items: center;
}

.chemrytsc-model-scatter svg {
  width: 100%;
  max-width: 360px;
  height: auto;
  overflow: visible;
}

.chemrytsc-model-scatter__quad {
  stroke: none;
}

.chemrytsc-model-scatter__quad--tl {
  fill: rgba(245, 158, 11, 0.08);
}

.chemrytsc-model-scatter__quad--tr {
  fill: rgba(220, 38, 38, 0.09);
}

.chemrytsc-model-scatter__quad--bl {
  fill: rgba(148, 163, 184, 0.08);
}

.chemrytsc-model-scatter__quad--br {
  fill: rgba(34, 197, 94, 0.07);
}

.chemrytsc-model-scatter__grid line {
  stroke: #dbe6f0;
  stroke-width: 1;
}

.chemrytsc-model-scatter__axes line {
  stroke: #7c8fa3;
  stroke-width: 1.5;
}

.chemrytsc-model-scatter__labels text {
  fill: #607891;
  font-size: 9px;
  font-weight: 700;
}

.chemrytsc-model-scatter__points circle {
  stroke: #ffffff;
  stroke-width: 2;
}

.chemrytsc-model-scatter__points circle.pass {
  fill: #1f8b62;
}

.chemrytsc-model-scatter__points circle.warn {
  fill: #c97919;
}

.chemrytsc-model-scatter__points circle.risk {
  fill: #c73434;
}

.chemrytsc-model-scatter-side {
  display: grid;
  gap: 10px;
}

.chemrytsc-model-scatter-side__legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.chemrytsc-model-scatter-side__legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
}

.chemrytsc-model-scatter-side__legend i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
}

.chemrytsc-model-scatter-side__legend i.pass {
  background: #1f8b62;
}

.chemrytsc-model-scatter-side__legend i.warn {
  background: #c97919;
}

.chemrytsc-model-scatter-side__legend i.risk {
  background: #c73434;
}

.chemrytsc-model-scatter-list {
  display: grid;
  gap: 8px;
}

.chemrytsc-model-scatter-list__item {
  border: 1px solid #dbe6f0;
  border-left: 4px solid #9fc6e6;
  border-radius: 10px;
  background: #fbfdff;
  padding: 8px 10px;
}

.chemrytsc-model-scatter-list__item strong,
.chemrytsc-model-scatter-list__item span,
.chemrytsc-model-scatter-list__item small {
  display: block;
}

.chemrytsc-model-scatter-list__item strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-model-scatter-list__item span {
  margin-top: 3px;
  color: #35526c;
  font-size: 10px !important;
  font-weight: 700;
}

.chemrytsc-model-scatter-list__item small {
  margin-top: 2px;
  color: #7c8fa3;
  font-size: 9px !important;
}

.chemrytsc-model-scatter-list__item.pass {
  border-left-color: #1f8b62;
}

.chemrytsc-model-scatter-list__item.warn {
  border-left-color: #c97919;
}

.chemrytsc-model-scatter-list__item.risk {
  border-left-color: #c73434;
}

.chemrytsc-model-section {
  border: 1px solid #dbe6f0;
  border-radius: 12px;
  background: #ffffff;
  overflow: hidden;
}

.chemrytsc-model-section > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 12px;
  border-bottom: 1px solid #dbe6f0;
}

.chemrytsc-model-section h3 {
  margin: 0;
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-model-section p {
  margin: 2px 0 0;
  color: #607891;
  font-size: 10px !important;
  line-height: 1.25;
}

.chemrytsc-model-section > header > span {
  flex: 0 0 auto;
  min-width: 78px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  padding: 5px 7px;
}

.chemrytsc-model-section.warn > header > span {
  background: #fff7ed;
  color: #b45309;
}

.chemrytsc-model-section.risk > header > span {
  background: #fef2f2;
  color: #b91c1c;
}

.chemrytsc-model-table-wrap {
  overflow-x: auto;
}

.chemrytsc-model-decision-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.chemrytsc-model-decision-table th,
.chemrytsc-model-decision-table td {
  border-bottom: 1px solid #dbe6f0;
  color: #607891;
  font-size: 11px !important;
  line-height: 1.32;
  padding: 7px 8px;
  text-align: left;
  vertical-align: top;
}

.chemrytsc-model-decision-table th {
  background: #f5f9fd;
  color: #143553;
  font-weight: 700;
}

.chemrytsc-model-decision-table th:nth-child(1),
.chemrytsc-model-decision-table td:nth-child(1) {
  width: 21%;
}

.chemrytsc-model-decision-table th:nth-child(2),
.chemrytsc-model-decision-table td:nth-child(2) {
  width: 18%;
}

.chemrytsc-model-decision-table th:nth-child(3),
.chemrytsc-model-decision-table td:nth-child(3) {
  width: 12%;
}

.chemrytsc-model-decision-table th:nth-child(4),
.chemrytsc-model-decision-table td:nth-child(4) {
  width: 13%;
}

.chemrytsc-model-decision-table td strong,
.chemrytsc-model-decision-table td small {
  display: block;
}

.chemrytsc-model-decision-table td strong {
  color: #143553;
  font-size: 11px !important;
  font-weight: 700;
}

.chemrytsc-model-decision-table td small {
  margin-top: 4px;
  color: #7c8fa3;
  font-size: 9px !important;
  font-weight: 500;
  line-height: 1.4;
}

.chemrytsc-model-decision-table td:nth-child(1) small,
.chemrytsc-model-decision-table td:nth-child(2) small,
.chemrytsc-model-decision-table td:nth-child(5) small {
  max-width: 34ch;
}

.chemrytsc-model-polymer-call strong,
.chemrytsc-model-decision-table td:nth-child(1) strong {
  margin-bottom: 1px;
}

.chemrytsc-model-decision-table mark {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 118px;
  justify-content: flex-start;
  border-radius: 999px;
  border: 1px solid #b8e3cd;
  background: #ecfdf5;
  color: #047857;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
  padding: 6px 10px;
  white-space: nowrap;
}

.chemrytsc-model-decision-table mark i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(4, 120, 87, 0.14);
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
}

.chemrytsc-model-decision-table tr.warn mark {
  border-color: #f3cf98;
  background: #fff7ed;
  color: #b45309;
}

.chemrytsc-model-decision-table tr.warn mark i {
  background: rgba(180, 83, 9, 0.14);
}

.chemrytsc-model-decision-table tr.risk mark {
  border-color: #f1b9b9;
  background: #fef2f2;
  color: #b91c1c;
}

.chemrytsc-model-decision-table tr.risk {
  background: rgba(185, 28, 28, 0.055);
}

.chemrytsc-model-decision-table tr.warn {
  background: rgba(180, 83, 9, 0.045);
}

.chemrytsc-model-decision-table tr.risk mark i {
  background: rgba(185, 28, 28, 0.14);
}

.chemrytsc-model-missing {
  color: #607891;
  font-size: 11px !important;
}

.chemrytsc-model-polymer-call {
  display: grid;
  gap: 3px;
}

.chemrytsc-model-probability {
  display: grid;
  gap: 3px;
  min-width: 120px;
}

.chemrytsc-model-probability > div {
  overflow: hidden;
  height: 8px;
  border-radius: 999px;
  background: #e8eef5;
}

.chemrytsc-model-probability > div > span {
  display: block;
  width: var(--model-prob);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #047857, #b45309 55%, #b91c1c);
}

.chemrytsc-model-probability > strong {
  color: #143553;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
}

.chemrytsc-model-confidence {
  display: grid;
  gap: 4px;
  min-width: 98px;
}

.chemrytsc-model-confidence__bar {
  overflow: hidden;
  height: 6px;
  border-radius: 999px;
  background: #dfe8f1;
}

.chemrytsc-model-confidence__bar span {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: currentColor;
}

.chemrytsc-model-confidence__dots {
  display: inline-flex;
  gap: 5px;
}

.chemrytsc-model-confidence__dots i {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #dbe6ef;
}

.chemrytsc-model-confidence.pass {
  color: #047857;
}

.chemrytsc-model-confidence.warn {
  color: #b45309;
}

.chemrytsc-model-confidence.risk {
  color: #b91c1c;
}

.chemrytsc-model-confidence__dots i.on {
  background: currentColor;
}

.chemrytsc-model-confidence strong,
.chemrytsc-model-confidence small {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.chemrytsc-model-confidence strong {
  color: #143553;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
}

.chemrytsc-model-confidence small {
  color: #607891;
  font-size: 9px !important;
  line-height: 1.1;
}

.chemrytsc-page button.chemrytsc-model-action {
  min-width: 92px !important;
  height: 24px !important;
  min-height: 24px !important;
  border-color: #bfd7ed;
  background: #ffffff;
  color: #145074;
  font-size: 9px !important;
  white-space: nowrap;
}

.chemrytsc-page button.chemrytsc-model-action.warn {
  border-color: #f0c38a;
  background: #fffaf2;
  color: #92400e;
}

.chemrytsc-page button.chemrytsc-model-action.risk {
  border-color: #f1b7b7;
  background: #fff7f7;
  color: #991b1b;
}

.chemrytsc-batch-item,
.chemrytsc-selfies-item {
  border: 1px solid #dbe6f0;
  border-radius: 8px;
  background: #ffffff;
  padding: 8px;
}

.chemrytsc-analogue-designer-results {
  margin-top: 10px;
}

.chemrytsc-analog-table-wrap {
  overflow-x: auto;
}

.chemrytsc-analog-table {
  width: 100%;
  min-width: 1380px;
  border-collapse: collapse;
}

.chemrytsc-analog-table th,
.chemrytsc-analog-table td {
  padding: 8px 10px;
  border-bottom: 1px solid #dbe6f0;
  text-align: left;
  vertical-align: top;
}

.chemrytsc-analog-table th {
  color: #4c657a;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
  background: #f7fbff;
}

.chemrytsc-analog-table td strong,
.chemrytsc-analog-table td small {
  display: block;
}

.chemrytsc-analog-table td strong {
  color: #143553;
  font-size: 11px !important;
}

.chemrytsc-analog-table td small {
  margin-top: 3px;
  color: #607891;
  font-size: 10px !important;
}

.chemrytsc-analog-table th:nth-child(2),
.chemrytsc-analog-table td:nth-child(2) {
  width: 320px;
  min-width: 320px;
  max-width: 320px;
}

.chemrytsc-analog-table th:nth-child(3),
.chemrytsc-analog-table td:nth-child(3) {
  width: 420px;
}

.chemrytsc-analog-smiles-cell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 8px;
}

.chemrytsc-analog-selfies-cell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 8px;
}

.chemrytsc-analog-selfies-cell span {
  display: block;
  min-width: 0;
  color: #143553;
  font-family: "Courier New", monospace;
  font-size: 11px !important;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.chemrytsc-analog-smiles-cell span {
  display: block;
  min-width: 0;
  color: #143553;
  font-size: 11px !important;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.chemrytsc-analog-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1;
}

.chemrytsc-analog-pill.good {
  background: #e6f7ef;
  color: #0b7a52;
}

.chemrytsc-analog-pill.risk {
  background: #fdeceb;
  color: #b42318;
}

.chemrytsc-analog-pill.na {
  background: #f4f7fb;
  color: #607891;
}

.chemrytsc-analog-route-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.chemrytsc-batch-item strong,
.chemrytsc-selfies-item strong,
.chemrytsc-batch-item span,
.chemrytsc-selfies-item span,
.chemrytsc-batch-item em,
.chemrytsc-selfies-item em {
  display: block;
}

.chemrytsc-batch-item em,
.chemrytsc-selfies-item em {
  margin-top: 3px;
  color: #607891;
  font-style: normal;
}

.chemrytsc-structure-map-card {
  margin-top: 10px;
}

.chemrytsc-structure-map {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}

.chemrytsc-structure-map-svg {
  position: relative;
  min-height: 180px;
  border: 1px solid #d9e7f2;
  border-radius: 10px;
  background: #ffffff;
  padding: 8px;
  display: grid;
  place-items: center;
  overflow: auto;
}

.chemrytsc-structure-map-svg svg {
  display: block;
  width: auto !important;
  max-width: min(100%, 760px);
  max-height: 260px;
  height: auto !important;
  margin: 0 auto;
}

.chemrytsc-structure-map-svg text {
  font-size: 10px !important;
  font-family: var(--chemrytsc-font-sans, "Aptos", "Segoe UI", "Helvetica Neue", Arial, sans-serif) !important;
  display: block;
}

.chemrytsc-structure-map-empty {
  display: grid;
  place-items: center;
  min-height: 160px;
  color: #607891;
  font-size: 11px !important;
}

.chemrytsc-structure-map-sidebar {
  display: grid;
  gap: 10px;
  min-width: 0;
  align-content: start;
}

.chemrytsc-structure-map-detail {
  border: 1px solid #dbe6f0;
  border-radius: 10px;
  background: #ffffff;
  padding: 10px;
  display: grid;
  gap: 10px;
}

.chemrytsc-structure-map-detail-card {
  display: grid;
  gap: 7px;
}

.chemrytsc-structure-map-detail-card.is-yellow {
  border-left: 4px solid #facc15;
  padding-left: 10px;
}

.chemrytsc-structure-map-detail-card.is-red {
  border-left: 4px solid #ef4444;
  padding-left: 10px;
}

.chemrytsc-structure-map-detail-card.is-green {
  border-left: 4px solid #22c55e;
  padding-left: 10px;
}

.chemrytsc-structure-map-detail-label {
  color: #607891;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-structure-map-detail-card strong {
  color: #143553;
  font-size: 12px !important;
  line-height: 1.35;
  font-weight: 400;
}

.chemrytsc-structure-map-detail-card p {
  margin: 0;
  color: #35526c;
  font-size: 12px !important;
  line-height: 1.45;
}

.chemrytsc-structure-map-detail-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding-top: 2px;
}

.chemrytsc-structure-map-detail-meta span {
  min-width: 0;
  color: #143553;
  font-size: 11px !important;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
}

.chemrytsc-structure-map-detail-meta b {
  color: #607891;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-structure-map-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 4px;
}

.chemrytsc-structure-map-links a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid #cfe0ee;
  border-radius: 999px;
  background: #f8fbfe;
  color: #145074;
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1.2;
  padding: 5px 8px;
  text-decoration: none;
}

.chemrytsc-structure-map-links a small {
  color: #607891;
  font-size: 9px !important;
  font-weight: 600;
}

.chemrytsc-structure-map-legend {
  display: grid;
  gap: 6px;
  min-width: 0;
  align-content: start;
  padding-top: 2px;
  border-top: 1px solid #e4edf5;
}

.chemrytsc-structure-map-helper {
  margin: 0;
  color: #607891;
  font-size: 10px !important;
  line-height: 1.35;
}

.chemrytsc-structure-map-legend-item {
  appearance: none;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid #dfebf5;
  border-radius: 7px;
  background: #f7fbff;
  padding: 8px;
  width: 100%;
  text-align: left;
  color: inherit;
  font: inherit;
  cursor: pointer;
  transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}

.chemrytsc-structure-map-legend-item:hover {
  border-color: #9cc2df;
  box-shadow: 0 6px 16px rgba(20, 53, 83, 0.08);
}

.chemrytsc-structure-map-legend-item.is-active {
  border-color: #2f6e9f;
  box-shadow: 0 0 0 2px rgba(47, 110, 159, 0.14);
  transform: translateY(-1px);
}

.chemrytsc-structure-map-legend-item span {
  display: grid;
  gap: 2px;
  min-width: 0;
  width: 100%;
}

.chemrytsc-structure-map-svg .chemrytsc-atom-hit {
  transition: opacity 140ms ease, stroke-width 140ms ease, filter 140ms ease;
}

.chemrytsc-structure-map-svg .chemrytsc-atom-hit.is-muted {
  opacity: 0.2;
}

.chemrytsc-structure-map-svg .chemrytsc-atom-hit.is-selected {
  opacity: 1;
  filter: drop-shadow(0 0 4px rgba(15, 23, 42, 0.2));
}

.chemrytsc-structure-map-legend-item i {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-top: 2px;
  flex: 0 0 auto;
}

.chemrytsc-structure-map-legend-item.is-yellow i {
  background: #facc15;
}

.chemrytsc-structure-map-legend-item.is-red i {
  background: #ef4444;
}

.chemrytsc-structure-map-legend-item.is-green i {
  background: #22c55e;
}

.chemrytsc-structure-map-legend-item strong,
.chemrytsc-structure-map-legend-item em,
.chemrytsc-structure-map-legend-item small {
  display: block;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
}

.chemrytsc-structure-map-legend-item strong {
  color: #0f5bb7;
  font-size: 11px !important;
  line-height: 1.25;
}

.chemrytsc-structure-map-legend-item em {
  color: #607891;
  font-style: normal;
  font-size: 10px !important;
  line-height: 1.3;
}

.chemrytsc-structure-map-legend-item small {
  color: #35526c;
  font-size: 10px !important;
  line-height: 1.25;
}

.chemrytsc-structure-map-tooltip {
  position: absolute;
  z-index: 3;
  max-width: 220px;
  border: 1px solid #cfe0ee;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.98);
  color: #143553;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
  padding: 7px 8px;
  pointer-events: none;
  font-size: 10px !important;
  line-height: 1.3;
}

.chemrytsc-warning-pane.is-neutral {
  border-color: #cfe0ee;
  background: #f8fbfe;
  color: #45627a;
}

.chemrytsc-history-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border: 1px solid #dbe6f0;
  border-radius: 8px;
  background: #ffffff;
  padding: 8px;
}

.chemrytsc-history-item strong,
.chemrytsc-history-item span {
  display: block;
}

.chemrytsc-data-card dl {
  display: grid;
  gap: 8px;
}

.chemrytsc-data-card dl > div {
  display: grid;
  gap: 4px;
}

.chemrytsc-data-card dt {
  color: #4c657a;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-data-card dd,
.chemrytsc-data-card li,
.chemrytsc-data-card p {
  color: #143553;
  font-size: 12px !important;
  line-height: 1.35;
}

.chemrytsc-compliance-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 21px;
  border: 1px solid #cbd8e4;
  border-radius: 999px;
  padding: 0 10px;
  font-size: 10px !important;
  font-weight: 700;
  text-transform: uppercase;
}

.chemrytsc-compliance-badge.is-green {
  border-color: #9ad3b1;
  background: #ecfbf2;
  color: #1f6a3a;
}

.chemrytsc-compliance-badge.is-amber {
  border-color: #e9c98c;
  background: #fff8e9;
  color: #8b5e07;
}

.chemrytsc-compliance-badge.is-red {
  border-color: #edb0b0;
  background: #fff1f1;
  color: #9d2323;
}

.chemrytsc-compliance-badge.is-neutral {
  border-color: #cbd8e4;
  background: #f8fbfe;
  color: #45627a;
}

@media (max-width: 991px) {
  .chemrytsc-summary-grid,
  .chemrytsc-panel-grid,
  .chemrytsc-structure-layout,
  .chemrytsc-structure-metrics,
  .chemrytsc-structure-map,
  .chemrytsc-structure-insights,
  .chemrytsc-decomp-snapshot {
    grid-template-columns: 1fr;
  }

  .chemrytsc-model-summary-strip {
    grid-template-columns: 1fr;
  }

  .chemrytsc-model-radar-card__layout {
    grid-template-columns: 1fr;
  }

  .chemrytsc-model-scatter-card__layout {
    grid-template-columns: 1fr;
  }

  .chemrytsc-results-actions--panel {
    justify-content: flex-start;
    min-height: 0;
    padding: 0;
  }
}
