/* TMP Compatibility refinement. Uses the existing Portrait/WHY/Atlas shell. */
.compatibility-polish {
  background: #100c18;
}
.rh-header::before {
  content: none;
}
.rh-header .tabs button[aria-selected='true'] {
  color: #b899ff;
  background: color-mix(in srgb, #b899ff 10%, #221928);
}
.rh-header .tabs button[data-tab='today'][aria-selected='true'] {
  color: #8db8de;
  background: color-mix(in srgb, #8db8de 10%, #221928);
}
.rh-relationship-tag {
  overflow: hidden;
  background:
    radial-gradient(
      circle 34px at 17px 50%,
      color-mix(in srgb, var(--relationship-accent) 56%, transparent),
      color-mix(in srgb, var(--relationship-accent) 42%, transparent) 25%,
      color-mix(in srgb, var(--relationship-accent) 16%, transparent) 60%,
      transparent
    ),
    color-mix(in srgb, var(--relationship-accent) 5%, transparent);
}

.cc-why-note,
.cc-focus-panel,
.cc-quality-panel,
.cc-intensity-panel {
  border: 1px solid color-mix(in srgb, var(--accent) 27%, transparent);
  border-radius: 17px;
  background: color-mix(in srgb, var(--accent) 7%, #17121e);
  padding: 15px;
  margin: 12px 0 18px;
}
.cc-why-kicker {
  display: block;
  color: var(--accent);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 9px;
}
.cc-why-note p,
.cc-focus-panel p,
.cc-quality-panel p,
.cc-intensity-panel p {
  color: #d1c6d4;
  font-size: 12px;
  line-height: 1.55;
  margin: 0;
}
.cc-focus-summary {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin: 4px 0 10px;
}
.cc-focus-summary strong {
  color: var(--accent);
  font-size: 28px;
  letter-spacing: -0.05em;
  line-height: 1;
}
.cc-focus-summary span {
  color: #b7aabc;
  font-size: 11px;
}
.cc-focus-rail {
  display: grid;
  grid-template-columns: repeat(var(--cc-total), minmax(0, 1fr));
  gap: 4px;
  margin: 11px 0 15px;
}
.cc-focus-rail span {
  height: 4px;
  border-radius: 99px;
  background: #b7aabc35;
}
.cc-focus-rail span[data-active='true'] {
  background: var(--accent);
}
.cc-signal-map {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin-top: 10px;
}
.cc-signal {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  min-height: 51px;
  padding: 9px;
  border: 1px solid #b7aabc22;
  border-radius: 11px;
  background: #ffffff06;
  color: #a99eae;
}
.cc-signal[data-active='true'] {
  color: #f0e8f2;
  border-color: color-mix(in srgb, var(--accent) 43%, transparent);
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}
.cc-signal-mark {
  color: #897e91;
  font-size: 13px;
  line-height: 1;
  margin-top: 2px;
}
.cc-signal[data-active='true'] .cc-signal-mark {
  color: var(--accent);
}
.cc-signal b {
  display: block;
  font-size: 10px;
  line-height: 1.25;
}
.cc-signal small {
  display: block;
  color: #9f93a6;
  font-size: 9px;
  line-height: 1.3;
  margin-top: 3px;
}
.cc-focus-details {
  margin-top: 18px;
}
.cc-focus-detail {
  border-top: 1px solid #b7aabc26;
  padding: 12px 0 3px;
}
.cc-focus-detail b {
  display: block;
  color: #f0e8f2;
  font-size: 12px;
  line-height: 1.35;
  margin-bottom: 4px;
}
.cc-focus-detail p {
  margin-bottom: 8px;
}
.cc-focus-detail .cc-focus-geometry {
  color: #a99eae;
  font-size: 11px;
  margin-bottom: 5px;
}
.cc-focus-detail .cc-focus-meaning {
  color: #f0e8f2;
  font-size: 12px;
  line-height: 1.5;
}
.cc-atlas-link {
  color: var(--accent);
  background: none;
  border: 0;
  padding: 7px 0;
  min-height: 44px;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.cc-quiet-note {
  margin-top: 12px !important;
  color: #a99eae !important;
}
.sr-same-parent-contact {
  border-top: 1px solid #ffffff18;
  margin-top: 12px;
  padding-top: 12px;
}
.cc-plus-teaser {
  color: #c7b9ce;
  font-size: calc(10px * var(--scale));
  line-height: 1.4;
  margin: 10px 0 0;
}
.sr-plus-locked .sr-plus-hidden-copy {
  display: none;
}
.sr-plus-locked .cc-plus-teaser {
  display: block;
}
@media (max-width: 359px) {
  .cc-signal-map {
    grid-template-columns: minmax(0, 1fr);
  }
  .cc-focus-panel,
  .cc-quality-panel,
  .cc-intensity-panel {
    padding: 12px;
  }
}
