/* Celebrax · pacote aprovado de ajustes 01–23 · camada global */

/* 01 · Ações principais compactas e proporcionais. */
body.celebrax-home-retention .hero-actions {
  width: min(100%, 640px) !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-template-rows: auto !important;
  gap: 9px !important;
}

body.celebrax-home-retention .hero-actions .hero-action-button,
body.celebrax-home-retention .hero-actions .hero-lead-action,
body.celebrax-home-retention .hero-actions .hero-demo-action,
body.celebrax-home-retention .hero-actions .hero-plan-action {
  grid-row: auto !important;
  min-height: 56px !important;
  padding: 9px 11px !important;
  border-radius: 13px !important;
  box-shadow: 0 9px 22px rgba(6, 26, 61, 0.09) !important;
}

body.celebrax-home-retention .hero-actions .hero-action-icon {
  width: 27px !important;
  height: 27px !important;
  flex-basis: 27px !important;
  border-radius: 8px !important;
}

body.celebrax-home-retention .hero-actions .hero-action-button strong,
body.celebrax-home-retention .hero-actions .hero-lead-action strong {
  font-size: 0.72rem !important;
}

body.celebrax-home-retention .hero-actions .hero-action-button small,
body.celebrax-home-retention .hero-actions .hero-lead-action small {
  display: block !important;
  margin-top: 1px !important;
  font-size: 0.6rem !important;
}

/* 02 · O check é o único marcador dos benefícios. */
body.celebrax-home-retention .hero-notes span {
  padding-left: 0 !important;
}

body.celebrax-home-retention .hero-notes span::before {
  display: none !important;
  content: none !important;
}

/* 03–04 · Persistência de sessão em switch acessível. */
.celebrax-remember-row {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  min-height: 46px !important;
  margin: 4px 0 8px !important;
  padding: 7px 9px !important;
  border: 1px solid rgba(7, 94, 199, 0.12) !important;
  border-radius: 12px !important;
  background: rgba(237, 245, 255, 0.58) !important;
  cursor: pointer !important;
}

.celebrax-remember-row > input[type="checkbox"] {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.celebrax-session-switch {
  position: relative;
  display: block;
  width: 44px;
  height: 24px;
  border: 1px solid #9caabd;
  border-radius: 999px;
  background: #cbd4df;
  box-shadow: inset 0 1px 2px rgba(11, 31, 60, 0.12);
  transition: border-color 0.2s ease, background 0.2s ease;
}

.celebrax-session-switch::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 5px rgba(6, 26, 61, 0.28);
  transition: transform 0.2s ease;
}

.celebrax-remember-row > input[type="checkbox"]:checked + .celebrax-session-switch {
  border-color: #075ee8;
  background: #075ee8;
}

.celebrax-remember-row > input[type="checkbox"]:checked + .celebrax-session-switch::after {
  transform: translateX(20px);
}

.celebrax-remember-row > input[type="checkbox"]:focus-visible + .celebrax-session-switch {
  outline: 3px solid rgba(7, 94, 232, 0.23);
  outline-offset: 3px;
}

.celebrax-remember-row > span:not(.celebrax-session-switch) {
  display: grid !important;
  gap: 2px !important;
  min-width: 0;
}

.celebrax-remember-row strong {
  font-size: 0.82rem;
  line-height: 1.2;
}

.celebrax-remember-row small {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  font-size: 0.7rem !important;
  line-height: 1.35;
}

.celebrax-session-state {
  display: inline-flex;
  align-items: center;
  min-height: 19px;
  padding: 1px 7px;
  border-radius: 999px;
  color: #5f6d80;
  background: #e1e7ee;
  font-size: 0.62rem;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}

.celebrax-remember-row.is-active .celebrax-session-state {
  color: #0754c7;
  background: #dceaff;
}

/* 05–06 · Marca correta e cabeçalho limpo na Portaria. */
.portaria-brand img {
  display: block;
  width: 116px;
  height: auto;
  object-fit: contain;
}

.portaria-brand > span,
.portaria-brand > strong,
#connectionState {
  display: none !important;
}

@media (max-width: 760px) {
  body.celebrax-home-retention .hero-actions {
    width: min(100%, 520px) !important;
    grid-template-columns: 1fr !important;
  }

  body.celebrax-home-retention .hero-actions .hero-action-button,
  body.celebrax-home-retention .hero-actions .hero-lead-action {
    min-height: 54px !important;
  }
}

.admin-dark-mode .celebrax-remember-row,
.platform-dark-mode .celebrax-remember-row,
.provider-dark-mode .celebrax-remember-row,
html[data-theme="dark"] .celebrax-remember-row {
  border-color: rgba(160, 190, 226, 0.22) !important;
  background: rgba(23, 44, 72, 0.7) !important;
}

.admin-dark-mode .celebrax-session-state,
.platform-dark-mode .celebrax-session-state,
.provider-dark-mode .celebrax-session-state,
html[data-theme="dark"] .celebrax-session-state {
  color: #c4cfdd;
  background: #30445c;
}

.admin-dark-mode .celebrax-remember-row.is-active .celebrax-session-state,
.platform-dark-mode .celebrax-remember-row.is-active .celebrax-session-state,
.provider-dark-mode .celebrax-remember-row.is-active .celebrax-session-state,
html[data-theme="dark"] .celebrax-remember-row.is-active .celebrax-session-state {
  color: #dceaff;
  background: #174f98;
}
