/*
 * rmc-cp-operator-footer.css — v4.01.41 (2026-06-02)
 * Preview HTML ribbon frame: primary row (brand | pills) + secondary micro-row (stat/trust/legal).
 * v4.01.41: ~30% vertical density (padding/min-height/gaps ×0.7); civic + compact share selectors.
 */

.cp-corporate-footer > :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic).rmc-manager-login-footer,
.rmc-app-shell__footer > :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic).rmc-manager-login-footer {
  padding: 0;
  margin-top: 0;
  border-top: none;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]).rmc-civic-footer {
  padding: 0;
  border-top: 1px solid var(--hairline);
  background: var(--surface-canvas, var(--surface-elevated));
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-inner--ribbon {
  padding: 0;
  gap: 0;
  max-width: none;
  width: 100%;
  align-items: stretch;
  text-align: left;
  box-sizing: border-box;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-legal {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  min-width: 0;
  font-size: 10.5px;
  color: var(--text-muted);
}

/* —— Primary ribbon (screenshot frame) —— */
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon {
  width: 100%;
  box-sizing: border-box;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--primary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px 11px;
  flex-wrap: wrap;
  min-height: 31px;
  padding: 6px 20px;
  box-sizing: border-box;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__brand {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  min-width: 0;
  font-size: 12px;
  line-height: 1.2;
  color: var(--text-secondary);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__brand strong {
  color: var(--text-primary);
  font-weight: 600;
  white-space: nowrap; /* horizontal-overflow-risk-allow: short-brand-wordmark */
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__brand-meta {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  font-size: 12px;
  color: var(--text-tertiary);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__motto {
  font-family: inherit;
  font-style: normal;
  font-size: inherit;
  color: inherit;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__actions {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px;
  margin-left: auto;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__appbadge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 7px;
  border-radius: var(--radius-pill, 999px);
  border: 1px solid var(--hairline);
  background: var(--surface-elevated);
  color: var(--text-secondary);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap; /* horizontal-overflow-risk-allow: short-pill */
  transition: border-color var(--motion-fast, 140ms) var(--ease-standard, ease),
    color var(--motion-fast, 140ms) var(--ease-standard, ease);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) a.cp-footer-pill:hover,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) a.cp-footer-pill:focus-visible,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) a.rmc-civic-footer__appbadge:hover,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) a.rmc-civic-footer__appbadge:focus-visible {
  border-color: var(--school-primary, var(--primary));
  color: var(--text-primary);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill--live {
  background: var(--success-soft, color-mix(in oklab, var(--success) 14%, transparent));
  border-color: color-mix(in oklab, var(--success) 30%, var(--hairline));
  color: var(--success);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--success);
  flex-shrink: 0;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill--compliance,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__pill--secure.cp-footer-pill--compliance {
  background: color-mix(in oklab, var(--info, var(--school-primary)) 12%, var(--surface-elevated));
  border-color: color-mix(in oklab, var(--info, var(--school-primary)) 22%, var(--hairline));
  color: var(--text-secondary);
  font-weight: 600;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill--icon {
  width: 18px;
  height: 18px;
  padding: 0;
  justify-content: center;
  font-size: 11px;
}

/* —— Secondary micro-row (extra production data, same compact frame) —— */
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--secondary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 8px;
  padding: 4px 20px 6px;
  border-top: 1px solid var(--hairline);
  font-size: 10.5px;
  line-height: 1.15;
  color: var(--text-muted);
  box-sizing: border-box;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__stat {
  flex: 1 1 auto;
  min-width: 0;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__trust {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__trust .rmc-civic-footer__social-label {
  font-size: 10.5px;
  color: var(--text-tertiary);
  margin-right: 2px;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__legal {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  flex-shrink: 0;
  padding: 0;
  margin: 0;
  border: 0;
  font-size: 10.5px;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__legal a {
  color: var(--text-muted);
  text-decoration: none;
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__legal a:hover,
:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__legal a:focus-visible {
  color: var(--text-primary);
}

:is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__legal-sep {
  opacity: 0.55;
}

html[data-surface="control-plane"] .cp-corporate-footer :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]),
html[data-surface="control-plane"] .rmc-app-shell__footer :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) {
  padding: 0;
  border-top: none;
  background: transparent;
}

html[data-surface="control-plane"] :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]).rmc-civic-footer--dark {
  background: var(--surface-canvas, transparent);
  border-top-color: var(--hairline);
}

@media (max-width: 991.98px) {
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--primary {
    flex-direction: column;
    align-items: flex-start;
  }

  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon__actions {
    margin-left: 0;
    justify-content: flex-start;
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--primary,
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--secondary {
    padding-inline: 14px;
  }

  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-ribbon--secondary {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .cp-footer-pill,
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__appbadge {
    transition: none;
  }
}

/* Phone: trim the operator footer's decorative tiers so it doesn't eat ~a
   third of the screen and crowd page CTAs (the MFA "Verify" button overlap).
   Keep brand + gateway links + legal; drop the informational stat line and the
   social/trust icon row, and tighten vertical padding. Full footer at >=992px. */
@media (max-width: 991.98px) {
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__stat,
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__social,
  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__strip {
    display: none;
  }

  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]).rmc-civic-footer {
    padding-top: 6px;
    padding-bottom: 6px;
  }

  :is(.rmc-operator-footer-compact, .rmc-operator-footer-civic, [data-rmc-footer-surface="operator-civic"]) .rmc-civic-footer__inner {
    gap: 4px;
  }
}
