/* AIOCommunication.com Enterprise Website Skin - V17.03.01 */
:root {
  --aio-ink: #f4f7fb;
  --aio-muted: #aeb8c8;
  --aio-subtle: #738199;
  --aio-bg: #01091d;
  --aio-bg-2: #020b20;
  --aio-panel: rgba(9, 36, 83, 0.72);
  --aio-panel-solid: #092453;
  --aio-panel-2: rgba(13, 82, 160, 0.18);
  --aio-line: rgba(28, 149, 226, 0.34);
  --aio-line-strong: rgba(28, 149, 226, 0.72);
  --aio-primary: #0868d5;
  --aio-secondary: #0d52a0;
  --aio-accent: #1c95e2;
  --aio-cyan: #25d8ff;
  --aio-silver: #e7e8e9;
  --aio-radius-lg: 32px;
  --aio-radius: 22px;
  --aio-radius-sm: 14px;
  --aio-shadow: 0 24px 80px rgba(0, 0, 0, 0.44);
  --aio-glow: 0 0 28px rgba(28, 149, 226, 0.58);
  --aio-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.aio-public-body,
body {
  margin: 0;
  min-height: 100vh;
  color: var(--aio-ink);
  font-family: var(--aio-font);
  background:
    radial-gradient(circle at 12% 0%, rgba(28, 149, 226, 0.25), transparent 34rem),
    radial-gradient(circle at 88% 15%, rgba(8, 104, 213, 0.22), transparent 32rem),
    linear-gradient(180deg, var(--aio-bg) 0%, var(--aio-bg-2) 48%, #010717 100%);
  overflow-x: hidden;
}

body.aio-public-body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: 0.18;
  background:
    linear-gradient(rgba(28,149,226,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(28,149,226,.06) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.9), transparent 78%);
  z-index: -2;
}

body.aio-public-body::after {
  content: "";
  position: fixed;
  inset: -20%;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 50% 22%, rgba(37,216,255,.16), transparent 26rem),
    radial-gradient(circle at 50% 100%, rgba(8,104,213,.24), transparent 34rem);
  filter: blur(1px);
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
p { color: var(--aio-muted); line-height: 1.72; }
strong { color: var(--aio-ink); }
code {
  color: #d8f5ff;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  padding: 2px 7px;
}

.aio-shell { min-height: 100vh; }
.aio-container {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
}

.aio-topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  backdrop-filter: blur(22px);
  background: rgba(1, 9, 29, 0.76);
  border-bottom: 1px solid rgba(28, 149, 226, 0.24);
  box-shadow: 0 8px 34px rgba(0,0,0,.22);
}
.aio-nav {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.aio-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 220px;
}
.aio-brand-mark {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 16px;
  box-shadow: 0 0 0 1px rgba(37,216,255,.55), 0 0 24px rgba(28,149,226,.55);
}
.aio-brand-wordmark {
  height: 48px;
  max-width: 268px;
  object-fit: contain;
  object-position: left center;
  filter: drop-shadow(0 0 10px rgba(37,216,255,.28));
}
.aio-brand-text {
  display: flex;
  flex-direction: column;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 800;
}
.aio-brand-text span:last-child {
  color: var(--aio-cyan);
  font-size: 11px;
  letter-spacing: .22em;
}

.aio-nav-links {
  display: flex;
  align-items: center;
  gap: 8px;
}
.aio-nav-links a {
  color: rgba(244,247,251,.84);
  font-size: 14px;
  font-weight: 700;
  padding: 12px 14px;
  border-radius: 999px;
  transition: .2s ease;
}
.aio-nav-links a:hover {
  color: #fff;
  background: rgba(28,149,226,.14);
  box-shadow: inset 0 0 0 1px rgba(28,149,226,.32);
}
.aio-nav-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.aio-menu-toggle {
  display: none;
  border: 1px solid rgba(28,149,226,.36);
  color: var(--aio-ink);
  background: rgba(9,36,83,.7);
  border-radius: 14px;
  padding: 10px 12px;
}

.aio-btn,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  gap: 10px;
  border: 0;
  border-radius: 999px;
  padding: 13px 20px;
  font-weight: 800;
  letter-spacing: .01em;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.aio-btn:hover,
.btn:hover { transform: translateY(-1px); }
.aio-btn-primary,
.btn.primary {
  color: #fff;
  background: linear-gradient(135deg, var(--aio-primary), var(--aio-cyan));
  box-shadow: 0 12px 34px rgba(8,104,213,.38), 0 0 0 1px rgba(255,255,255,.12) inset;
}
.aio-btn-secondary,
.btn.secondary {
  color: var(--aio-ink);
  background: rgba(9,36,83,.72);
  border: 1px solid rgba(28,149,226,.42);
  box-shadow: inset 0 0 24px rgba(28,149,226,.08);
}
.aio-btn-ghost {
  color: var(--aio-cyan);
  background: transparent;
  border: 1px solid rgba(28,149,226,.34);
}

.aio-hero {
  position: relative;
  overflow: hidden;
  padding: 82px 0 54px;
}
.aio-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 8%, rgba(37,216,255,.18), transparent 30rem),
    linear-gradient(to bottom, rgba(1,9,29,.18), rgba(1,9,29,0));
  pointer-events: none;
}
.aio-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(360px, .97fr);
  gap: 42px;
  align-items: center;
}
.aio-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #dff8ff;
  background: rgba(28,149,226,.12);
  border: 1px solid rgba(28,149,226,.4);
  border-radius: 999px;
  padding: 8px 13px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .17em;
  text-transform: uppercase;
  box-shadow: inset 0 0 24px rgba(28,149,226,.1);
}
.aio-kicker::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--aio-cyan);
  box-shadow: 0 0 15px var(--aio-cyan);
}
.aio-hero h1 {
  margin: 22px 0 18px;
  font-size: clamp(42px, 7vw, 84px);
  line-height: .94;
  letter-spacing: -.065em;
}
.aio-gradient-text {
  background: linear-gradient(115deg, #fff 0%, #dfe6ef 35%, #38d7ff 70%, #0e70cb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.aio-hero-lead {
  max-width: 730px;
  font-size: clamp(17px, 2vw, 21px);
  color: #c3d0df;
}
.aio-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}
.aio-proof-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.aio-proof-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  color: #eaf8ff;
  font-weight: 800;
  font-size: 13px;
  border: 1px solid rgba(28,149,226,.28);
  background: rgba(9,36,83,.5);
}
.aio-proof-pill span {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--aio-cyan);
  box-shadow: 0 0 12px var(--aio-cyan);
}

.aio-hero-visual {
  position: relative;
  min-height: 560px;
  border: 1px solid rgba(28,149,226,.38);
  border-radius: 40px;
  background:
    linear-gradient(180deg, rgba(9,36,83,.72), rgba(1,9,29,.82)),
    radial-gradient(circle at 50% 0%, rgba(37,216,255,.24), transparent 22rem);
  box-shadow: var(--aio-shadow), inset 0 0 80px rgba(28,149,226,.12);
  overflow: hidden;
}
.aio-hero-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .34;
}
.aio-orbit-card {
  position: absolute;
  inset: 30px;
  border: 1px solid rgba(37,216,255,.34);
  border-radius: 32px;
  background: rgba(1,9,29,.62);
  backdrop-filter: blur(8px);
  box-shadow: inset 0 0 36px rgba(28,149,226,.14), 0 0 40px rgba(8,104,213,.18);
}
.aio-orbit-center {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 42px;
}
.aio-orbit-center img {
  position: static;
  width: min(440px, 86%);
  height: auto;
  object-fit: contain;
  opacity: 1;
  filter: drop-shadow(0 0 22px rgba(37,216,255,.38));
}
.aio-orbit-label {
  margin-top: 18px;
  color: #dce8f6;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-size: 13px;
}
.aio-visual-stat {
  position: absolute;
  z-index: 2;
  min-width: 170px;
  padding: 15px 16px;
  border-radius: 20px;
  border: 1px solid rgba(28,149,226,.36);
  background: rgba(2,11,32,.74);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 36px rgba(0,0,0,.28);
}
.aio-visual-stat strong {
  display: block;
  font-size: 22px;
}
.aio-visual-stat span {
  color: var(--aio-muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.aio-stat-1 { left: 22px; top: 62px; }
.aio-stat-2 { right: 22px; top: 140px; }
.aio-stat-3 { left: 44px; bottom: 58px; }

.aio-section {
  position: relative;
  padding: 70px 0;
}
.aio-section-header {
  max-width: 820px;
  margin: 0 auto 34px;
  text-align: center;
}
.aio-section-header h2 {
  margin: 12px 0 12px;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.03;
  letter-spacing: -.045em;
}
.aio-section-header p {
  margin: 0 auto;
  max-width: 730px;
  font-size: 17px;
}
.aio-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}
.aio-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 20px;
}
.aio-card,
.card,
.public-pricing-card {
  color: var(--aio-ink);
  border: 1px solid rgba(28,149,226,.28);
  border-radius: var(--aio-radius);
  background: linear-gradient(180deg, rgba(9,36,83,.66), rgba(2,11,32,.72));
  box-shadow: 0 18px 50px rgba(0,0,0,.27), inset 0 0 32px rgba(28,149,226,.06);
}
.aio-card {
  padding: 24px;
  min-height: 100%;
}
.aio-card:hover {
  border-color: rgba(37,216,255,.58);
  box-shadow: 0 22px 60px rgba(0,0,0,.32), 0 0 28px rgba(28,149,226,.15);
}
.aio-icon {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  color: #eafaff;
  border: 1px solid rgba(37,216,255,.58);
  background: radial-gradient(circle at 50% 20%, rgba(37,216,255,.28), rgba(8,104,213,.16) 55%, rgba(1,9,29,.8));
  box-shadow: var(--aio-glow);
}
.aio-icon svg {
  width: 30px;
  height: 30px;
  stroke: currentColor;
}
.aio-card h3 {
  margin: 0 0 10px;
  font-size: 20px;
  letter-spacing: -.02em;
}
.aio-card p { margin: 0; font-size: 15px; }

.aio-command-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: stretch;
}
.aio-command-visual {
  min-height: 480px;
  border-radius: 34px;
  overflow: hidden;
  border: 1px solid rgba(28,149,226,.34);
  position: relative;
  background: #020b20;
  box-shadow: var(--aio-shadow);
}
.aio-command-visual img {
  width: 100%;
  height: 100%;
  min-height: 480px;
  object-fit: cover;
  opacity: .92;
}
.aio-command-panel {
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.aio-command-panel h2 {
  margin: 0 0 16px;
  font-size: clamp(30px, 4vw, 50px);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.aio-check-list {
  display: grid;
  gap: 14px;
  margin-top: 22px;
}
.aio-check {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 12px;
  color: var(--aio-muted);
}
.aio-check::before {
  content: "✓";
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--aio-primary), var(--aio-cyan));
  box-shadow: 0 0 18px rgba(37,216,255,.45);
  font-weight: 900;
}

.aio-flow {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 14px;
}
.aio-flow::before {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  top: 39px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(37,216,255,.78), transparent);
  box-shadow: 0 0 18px rgba(37,216,255,.7);
}
.aio-step {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 0 10px;
}
.aio-step-num {
  width: 78px;
  height: 78px;
  margin: 0 auto 16px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 22px;
  font-weight: 900;
  color: #fff;
  background: radial-gradient(circle at 50% 25%, rgba(37,216,255,.36), rgba(8,104,213,.22) 60%, rgba(1,9,29,1));
  border: 1px solid rgba(37,216,255,.64);
  box-shadow: var(--aio-glow);
}
.aio-step h3 { margin: 0 0 8px; font-size: 16px; }
.aio-step p { margin: 0; font-size: 13px; color: var(--aio-subtle); }

.aio-trust-band {
  border-top: 1px solid rgba(28,149,226,.18);
  border-bottom: 1px solid rgba(28,149,226,.18);
  background:
    linear-gradient(90deg, transparent, rgba(8,104,213,.15), transparent),
    rgba(2,11,32,.52);
}
.aio-trust-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 1px;
}
.aio-trust-item {
  padding: 26px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: center;
  min-height: 106px;
}
.aio-trust-item strong {
  display: block;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.aio-trust-item span {
  color: var(--aio-cyan);
  font-size: 28px;
  filter: drop-shadow(0 0 10px rgba(37,216,255,.5));
}

.aio-cta {
  padding: 76px 0 90px;
}
.aio-cta-card {
  position: relative;
  overflow: hidden;
  border-radius: 40px;
  padding: clamp(32px, 6vw, 70px);
  border: 1px solid rgba(37,216,255,.4);
  background:
    radial-gradient(circle at 82% 18%, rgba(37,216,255,.22), transparent 22rem),
    linear-gradient(135deg, rgba(9,36,83,.86), rgba(1,9,29,.84));
  box-shadow: var(--aio-shadow), inset 0 0 70px rgba(28,149,226,.12);
}
.aio-cta-card::before {
  content: "";
  position: absolute;
  inset: -30%;
  background: radial-gradient(circle, rgba(37,216,255,.13), transparent 44%);
  animation: aioPulse 7s ease-in-out infinite;
}
@keyframes aioPulse { 0%,100%{ transform:scale(.92); opacity:.35;} 50%{ transform:scale(1.1); opacity:.75;} }
.aio-cta-inner {
  position: relative;
  max-width: 760px;
}
.aio-cta h2 {
  margin: 0 0 14px;
  font-size: clamp(34px, 5vw, 62px);
  letter-spacing: -.055em;
  line-height: 1;
}
.aio-cta p { font-size: 18px; margin-bottom: 26px; }

.aio-footer {
  border-top: 1px solid rgba(28,149,226,.23);
  background: rgba(1,9,29,.86);
  padding: 44px 0;
}
.aio-footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 24px;
}
.aio-footer-logo {
  height: 58px;
  width: auto;
  object-fit: contain;
  object-position: left center;
  margin-bottom: 12px;
}
.aio-footer h4 {
  margin: 0 0 14px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: #dff8ff;
}
.aio-footer a,
.aio-footer p {
  display: block;
  color: var(--aio-muted);
  font-size: 14px;
  margin: 0 0 10px;
}
.aio-footer-bottom {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(28,149,226,.18);
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--aio-subtle);
  font-size: 13px;
}

.public-page,
.aio-simple-page {
  padding: 56px 0 82px;
}
.public-page h1,
.aio-simple-page h1 {
  font-size: clamp(36px, 5vw, 64px);
  line-height: 1;
  letter-spacing: -.05em;
}
.aio-form-grid,
.form-grid {
  display: grid;
  gap: 14px;
}
.aio-form-grid.two,
.form-grid {
  grid-template-columns: repeat(2, minmax(0,1fr));
}
input, textarea, select {
  width: 100%;
  color: var(--aio-ink);
  background: rgba(1,9,29,.62);
  border: 1px solid rgba(28,149,226,.32);
  border-radius: 15px;
  padding: 13px 14px;
  font: inherit;
  outline: none;
}
textarea { min-height: 140px; resize: vertical; }
input:focus, textarea:focus, select:focus {
  border-color: rgba(37,216,255,.7);
  box-shadow: 0 0 0 3px rgba(37,216,255,.12);
}
label { color: var(--aio-muted); font-weight: 700; }

table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: var(--aio-radius);
}
th, td {
  text-align: left;
  padding: 14px;
  border-bottom: 1px solid rgba(28,149,226,.18);
}
th { color: #eaf8ff; background: rgba(9,36,83,.78); }
td { color: var(--aio-muted); }

.public-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 7px 10px;
  color: #dff8ff;
  border: 1px solid rgba(28,149,226,.3);
  background: rgba(28,149,226,.12);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .1em;
}
.muted { color: var(--aio-muted) !important; }
.small { font-size: 13px; }

@media (max-width: 1040px) {
  .aio-hero-grid,
  .aio-command-grid { grid-template-columns: 1fr; }
  .aio-hero-visual { min-height: 480px; }
  .aio-grid-4 { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .aio-grid-3 { grid-template-columns: 1fr; }
  .aio-flow { grid-template-columns: 1fr; }
  .aio-flow::before { display: none; }
  .aio-step { display: grid; grid-template-columns: 78px 1fr; gap: 16px; text-align: left; align-items: center; }
  .aio-step-num { margin: 0; }
  .aio-trust-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 840px) {
  .aio-container { width: min(100% - 28px, 1180px); }
  .aio-nav { min-height: 74px; }
  .aio-brand-wordmark { max-width: 210px; height: 42px; }
  .aio-menu-toggle { display: inline-flex; }
  .aio-nav-links {
    display: none;
    position: absolute;
    left: 14px;
    right: 14px;
    top: 76px;
    padding: 14px;
    border: 1px solid rgba(28,149,226,.34);
    border-radius: 20px;
    background: rgba(1,9,29,.94);
    box-shadow: var(--aio-shadow);
    flex-direction: column;
    align-items: stretch;
  }
  .aio-nav-links.is-open { display: flex; }
  .aio-nav-actions .aio-btn-secondary { display: none; }
  .aio-hero { padding-top: 52px; }
  .aio-visual-stat { position: static; margin: 12px; display: inline-block; }
  .aio-orbit-card { inset: 18px; }
  .aio-grid-4 { grid-template-columns: 1fr; }
  .aio-footer-grid { grid-template-columns: 1fr; }
  .aio-footer-bottom { align-items: flex-start; flex-direction: column; gap: 10px; }
  .aio-form-grid.two,
  .form-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .aio-brand-mark { width: 46px; height: 46px; }
  .aio-brand-wordmark { max-width: 170px; }
  .aio-hero h1 { letter-spacing: -.045em; }
  .aio-hero-visual { min-height: 390px; border-radius: 28px; }
  .aio-section { padding: 54px 0; }
  .aio-trust-grid { grid-template-columns: 1fr; }
}

/* AIOCommunication.com Enterprise Website Skin - V17.03.01 pricing/header refinement */
.aio-brand {
  min-width: 270px;
  gap: 14px;
}
.aio-brand-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.02;
  text-transform: none;
  letter-spacing: 0;
}
.aio-brand-text strong {
  display: block;
  color: #f8fbff;
  font-size: clamp(18px, 2vw, 23px);
  font-weight: 950;
  letter-spacing: -0.035em;
  text-shadow: 0 0 18px rgba(37,216,255,.24);
  white-space: nowrap;
}
.aio-brand-text span,
.aio-brand-text span:last-child {
  display: block;
  color: var(--aio-cyan);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.public-site-shell {
  width: min(1180px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}
.public-page-hero {
  position: relative;
  padding: 72px 0 34px;
}
.public-page-hero-tight { padding-bottom: 26px; }
.pricing-hero {
  overflow: hidden;
}
.pricing-hero::before {
  content: "";
  position: absolute;
  inset: 18px -10px 0;
  z-index: -1;
  border-radius: 36px;
  border: 1px solid rgba(28,149,226,.22);
  background:
    radial-gradient(circle at 22% 24%, rgba(37,216,255,.17), transparent 28rem),
    linear-gradient(135deg, rgba(9,36,83,.52), rgba(2,11,32,.74));
  box-shadow: 0 28px 90px rgba(0,0,0,.26), inset 0 0 46px rgba(28,149,226,.08);
}
.pricing-hero-copy {
  max-width: 900px;
  padding: 28px 30px 34px;
}
.public-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #dff8ff;
  background: rgba(28,149,226,.12);
  border: 1px solid rgba(28,149,226,.4);
  border-radius: 999px;
  padding: 8px 13px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .17em;
  text-transform: uppercase;
  box-shadow: inset 0 0 24px rgba(28,149,226,.1);
}
.public-page-hero h1,
.public-section-heading h2 {
  margin: 16px 0 12px;
  color: #fff;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1.02;
  letter-spacing: -.055em;
}
.public-page-hero p,
.public-section-heading p {
  max-width: 900px;
  margin: 0;
  font-size: 17px;
}
.public-section {
  padding: 38px 0;
}
.pricing-plan-section { padding-top: 14px; }
.public-card-grid,
.public-card-grid.three,
.pricing-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}
.card,
.public-pricing-card {
  padding: 26px;
  overflow: hidden;
}
.public-pricing-card {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  gap: 18px;
  position: relative;
}
.public-pricing-card::after {
  content: "";
  position: absolute;
  inset: auto 18px 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(37,216,255,.6), transparent);
}
.website-price-selected,
.public-pricing-card:hover {
  border-color: rgba(37,216,255,.68);
  box-shadow: 0 24px 70px rgba(0,0,0,.32), 0 0 34px rgba(28,149,226,.18), inset 0 0 36px rgba(37,216,255,.08);
}
.toolbar,
.pricing-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.toolbar h2,
.pricing-card-head h2 {
  margin: 12px 0 0;
  color: #fff;
  font-size: 24px;
  letter-spacing: -.035em;
}
.public-price-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  margin-top: -2px;
}
.public-price-row span {
  color: #fff;
  font-size: clamp(34px, 4vw, 48px);
  line-height: .95;
  font-weight: 950;
  letter-spacing: -.055em;
  background: linear-gradient(115deg, #fff 0%, #dfe6ef 38%, #38d7ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.public-price-row small {
  color: var(--aio-muted);
  font-weight: 800;
  padding-bottom: 5px;
}
.website-bullet-stack {
  display: grid;
  gap: 10px;
}
.website-compact-stack div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(28,149,226,.16);
  color: var(--aio-muted);
}
.website-compact-stack strong { color: #eef8ff; }
.website-compact-stack span { text-align: right; color: var(--aio-muted); }
.pricing-button-row { margin-top: auto; }
.alert,
.pricing-alert {
  border: 1px solid rgba(37,216,255,.36);
  border-radius: 18px;
  padding: 14px 16px;
  color: #dff8ff;
  background: rgba(28,149,226,.13);
  box-shadow: inset 0 0 26px rgba(28,149,226,.08);
  margin-bottom: 18px;
}
.website-checkout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: 24px;
  align-items: start;
}
.pricing-signup-card,
.pricing-experience-card {
  border-radius: 28px;
}
.pricing-signup-card form { margin-top: 18px; }
.form-grid { gap: 14px; }
input[type="checkbox"],
input[type="radio"] {
  width: auto;
  min-width: 18px;
  height: 18px;
  padding: 0;
  border-radius: 4px;
  accent-color: var(--aio-accent);
}
.website-callout,
.website-checkout-callout {
  margin-top: 16px;
  border: 1px solid rgba(28,149,226,.22);
  border-radius: 20px;
  padding: 16px;
  background: rgba(1,9,29,.34);
}
.permission-pill {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 0;
  color: var(--aio-muted);
}
.permission-pill span { line-height: 1.55; }
.addon-stack { margin-top: 10px; }
.pricing-form-actions {
  margin-top: 16px;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.website-step-list {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}
.website-step-list-row {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(28,149,226,.18);
  background: rgba(1,9,29,.25);
}
.website-step-list-row > span {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #dff8ff;
  font-weight: 950;
  background: radial-gradient(circle at 50% 20%, rgba(37,216,255,.28), rgba(8,104,213,.22));
  border: 1px solid rgba(37,216,255,.38);
  box-shadow: 0 0 18px rgba(28,149,226,.22);
}
.website-step-list-row strong {
  display: block;
  margin-bottom: 4px;
}
.website-step-list-row p {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
}
.pricing-url-table {
  margin-top: 18px;
  border: 1px solid rgba(28,149,226,.2);
  border-radius: 20px;
  overflow: hidden;
}
.pricing-url-table > div {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border-bottom: 1px solid rgba(28,149,226,.16);
}
.pricing-url-table > div:last-child { border-bottom: 0; }
.pricing-url-table code {
  display: inline-block;
  max-width: 100%;
  overflow-x: auto;
  white-space: nowrap;
}
.public-section-heading {
  max-width: 820px;
  margin-bottom: 22px;
}
.public-faq-list {
  display: grid;
  gap: 12px;
}
.public-faq-item {
  border: 1px solid rgba(28,149,226,.24);
  border-radius: 20px;
  background: rgba(9,36,83,.45);
  overflow: hidden;
}
.public-faq-item summary {
  cursor: pointer;
  padding: 18px 20px;
  color: #fff;
  font-weight: 900;
}
.public-faq-item p {
  margin: 0;
  padding: 0 20px 20px;
}
.pricing-empty-card {
  max-width: 720px;
  margin: 0 auto;
}

@media (max-width: 1040px) {
  .public-card-grid,
  .public-card-grid.three,
  .pricing-card-grid,
  .website-checkout-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 840px) {
  .aio-brand { min-width: 0; }
  .aio-brand-text strong { font-size: 18px; }
  .aio-brand-text span { font-size: 10px; }
  .public-site-shell { width: min(100% - 28px, 1180px); }
  .pricing-hero-copy { padding: 22px 20px 26px; }
  .card,
  .public-pricing-card { padding: 20px; }
  .pricing-url-table > div { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .aio-brand-text strong { font-size: 16px; white-space: normal; }
  .aio-nav-actions .aio-btn-primary { padding: 11px 14px; min-height: 42px; }
  .public-page-hero h1,
  .public-section-heading h2 { font-size: 34px; }
}


/* V17.03.21 — Filled status pills for Security Center and Architecture */
.arch-pill,
.badge,
.aio-proof-pill,
.platform-signal-card .status-pill,
.platform-signal-card .pill,
.security-kpi .badge {
  border-width: 1px !important;
  border-style: solid !important;
  color: #ffffff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 10px 22px rgba(0,0,0,.18) !important;
}
.arch-pill.ok,
.badge.success,
.badge.ok,
.aio-proof-pill.success,
.aio-proof-pill.ok,
.status-pass,
.status-configured,
.status-active,
.status-prepared,
.platform-signal-card.is-ok {
  background: linear-gradient(180deg,#12b981 0%,#0e8f66 100%) !important;
  border-color: rgba(76, 255, 196, .44) !important;
  color: #f8fffd !important;
}
.arch-pill.warn,
.badge.warning,
.badge.warn,
.aio-proof-pill.warning,
.aio-proof-pill.warn,
.status-warn,
.status-warning,
.status-planned,
.status-pending,
.platform-signal-card.is-warning {
  background: linear-gradient(180deg,#f5a524 0%,#c47a0a 100%) !important;
  border-color: rgba(255, 209, 102, .45) !important;
  color: #fffaf1 !important;
}
.arch-pill.critical,
.badge.danger,
.badge.error,
.badge.critical,
.aio-proof-pill.danger,
.aio-proof-pill.critical,
.status-fail,
.status-critical,
.status-error,
.platform-signal-card.is-danger {
  background: linear-gradient(180deg,#ef5350 0%,#c62828 100%) !important;
  border-color: rgba(255, 138, 138, .46) !important;
  color: #fff6f6 !important;
}
.arch-pill.neutral,
.badge.neutral,
.badge.info,
.aio-proof-pill.neutral,
.status-neutral,
.status-info {
  background: linear-gradient(180deg,#2d67f6 0%,#1744b3 100%) !important;
  border-color: rgba(116, 172, 255, .42) !important;
  color: #f6fbff !important;
}


/* V17.03.22 — Global dark surface cleanup */
:root{
  --aio-surface-dark: linear-gradient(180deg, rgba(8,26,52,.96), rgba(4,16,33,.98));
  --aio-surface-border: rgba(55,133,255,.26);
  --aio-text-strong: #f5f9ff;
  --aio-text-muted-2: #b9c7d9;
}

/* Common white/light surfaces should match the AIO enterprise scheme */
.security-switch,
.arch-switch,
.arch-copy,
.bg-white,
.bg-light,
.surface-light,
.surface-white,
.card-light,
.panel-light,
.widget-light,
.notice-light,
.info-light,
.empty-state,
.empty-card,
.quick-panel,
.quick-card,
.utility-card,
.form-card,
.settings-card,
.detail-card,
.inspector-card,
.workspace-card,
.release-card,
.search-card,
.launch-card,
.admin-card,
.control-card,
.mini-card,
.kpi-card,
.status-card,
.tile-light,
.module-card,
.health-card,
.aio-card-light,
.aio-panel-light,
body [style*="background:#fff"],
body [style*="background: #fff"],
body [style*="background-color:#fff"],
body [style*="background-color: #fff"],
body [style*="background:#ffffff"],
body [style*="background: #ffffff"],
body [style*="background:#f8fafc"],
body [style*="background: #f8fafc"],
body [style*="background:#f9fafb"],
body [style*="background: #f9fafb"],
body [style*="background:#fafafa"],
body [style*="background: #fafafa"],
body [style*="background:#f8fbff"],
body [style*="background: #f8fbff"] {
  background: var(--aio-surface-dark) !important;
  border: 1px solid var(--aio-surface-border) !important;
  color: var(--aio-text-strong) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.security-switch strong,
.arch-switch strong,
.arch-copy,
.bg-white strong,
.bg-light strong,
.surface-light strong,
.surface-white strong,
.card-light strong,
.panel-light strong,
.widget-light strong,
.notice-light strong,
.info-light strong,
.empty-state strong,
.empty-card strong,
.quick-panel strong,
.quick-card strong,
.utility-card strong,
.form-card strong,
.settings-card strong,
.detail-card strong,
.inspector-card strong,
.workspace-card strong,
.release-card strong,
.search-card strong,
.launch-card strong,
.admin-card strong,
.control-card strong,
.mini-card strong,
.kpi-card strong,
.status-card strong,
.tile-light strong,
.module-card strong,
.health-card strong,
.aio-card-light strong,
.aio-panel-light strong,
body [style*="background:#fff"] strong,
body [style*="background: #fff"] strong,
body [style*="background-color:#fff"] strong,
body [style*="background-color: #fff"] strong,
body [style*="background:#ffffff"] strong,
body [style*="background: #ffffff"] strong,
body [style*="background:#f8fafc"] strong,
body [style*="background: #f8fafc"] strong,
body [style*="background:#f9fafb"] strong,
body [style*="background: #f9fafb"] strong,
body [style*="background:#fafafa"] strong,
body [style*="background: #fafafa"] strong,
body [style*="background:#f8fbff"] strong,
body [style*="background: #f8fbff"] strong {
  color: #ffffff !important;
}

.security-switch small,
.arch-switch small,
.bg-white p,
.bg-white span,
.bg-white small,
.bg-light p,
.bg-light span,
.bg-light small,
.surface-light p,
.surface-light span,
.surface-light small,
.surface-white p,
.surface-white span,
.surface-white small,
.card-light p,
.card-light span,
.card-light small,
.panel-light p,
.panel-light span,
.panel-light small,
.widget-light p,
.widget-light span,
.widget-light small,
.notice-light p,
.notice-light span,
.notice-light small,
.info-light p,
.info-light span,
.info-light small,
.empty-state p,
.empty-state span,
.empty-state small,
.empty-card p,
.empty-card span,
.empty-card small,
.quick-panel p,
.quick-panel span,
.quick-panel small,
.quick-card p,
.quick-card span,
.quick-card small,
.utility-card p,
.utility-card span,
.utility-card small,
.form-card p,
.form-card span,
.form-card small,
.settings-card p,
.settings-card span,
.settings-card small,
.detail-card p,
.detail-card span,
.detail-card small,
.inspector-card p,
.inspector-card span,
.inspector-card small,
.workspace-card p,
.workspace-card span,
.workspace-card small,
.release-card p,
.release-card span,
.release-card small,
.search-card p,
.search-card span,
.search-card small,
.launch-card p,
.launch-card span,
.launch-card small,
.admin-card p,
.admin-card span,
.admin-card small,
.control-card p,
.control-card span,
.control-card small,
.mini-card p,
.mini-card span,
.mini-card small,
.kpi-card p,
.kpi-card span,
.kpi-card small,
.status-card p,
.status-card span,
.status-card small,
.tile-light p,
.tile-light span,
.tile-light small,
.module-card p,
.module-card span,
.module-card small,
.health-card p,
.health-card span,
.health-card small,
.aio-card-light p,
.aio-card-light span,
.aio-card-light small,
.aio-panel-light p,
.aio-panel-light span,
.aio-panel-light small {
  color: var(--aio-text-muted-2) !important;
}

/* Generic light tables and list blocks */
body [style*="background:#fff"] table,
body [style*="background: #fff"] table,
body [style*="background:#ffffff"] table,
body [style*="background: #ffffff"] table,
body [style*="background:#f8fafc"] table,
body [style*="background: #f8fafc"] table,
body [style*="background:#f9fafb"] table,
body [style*="background: #f9fafb"] table,
body [style*="background:#fafafa"] table,
body [style*="background: #fafafa"] table {
  background: rgba(4,16,33,.72) !important;
  color: var(--aio-text-strong) !important;
  border-color: rgba(55,133,255,.18) !important;
}

/* Form controls nested inside converted surfaces */
.security-switch input,
.arch-switch input,
body [style*="background:#fff"] input,
body [style*="background:#fff"] select,
body [style*="background:#fff"] textarea,
body [style*="background: #fff"] input,
body [style*="background: #fff"] select,
body [style*="background: #fff"] textarea,
body [style*="background:#ffffff"] input,
body [style*="background:#ffffff"] select,
body [style*="background:#ffffff"] textarea,
body [style*="background:#f8fafc"] input,
body [style*="background:#f8fafc"] select,
body [style*="background:#f8fafc"] textarea,
body [style*="background:#f9fafb"] input,
body [style*="background:#f9fafb"] select,
body [style*="background:#f9fafb"] textarea {
  accent-color: #2f8dff;
}


/* V17.03.23 — Systemwide button and surface scheme */
:root{
  --aio-blue-bg: linear-gradient(180deg, rgba(8,26,52,.97), rgba(4,16,33,.99));
  --aio-blue-bg-soft: linear-gradient(180deg, rgba(10,32,61,.96), rgba(5,20,42,.98));
  --aio-blue-border: rgba(55,133,255,.28);
  --aio-blue-border-strong: rgba(80,165,255,.55);
  --aio-blue-text: #f5f9ff;
  --aio-blue-muted: #b9c7d9;
  --aio-primary: linear-gradient(180deg, #1e8cff 0%, #145ddb 100%);
  --aio-primary-hover: linear-gradient(180deg, #36a2ff 0%, #1769f3 100%);
  --aio-secondary: linear-gradient(180deg, rgba(12,35,72,.98), rgba(7,24,52,.98));
  --aio-danger: linear-gradient(180deg, #ef5350 0%, #c62828 100%);
  --aio-warning: linear-gradient(180deg, #f5a524 0%, #c47a0a 100%);
  --aio-success: linear-gradient(180deg, #12b981 0%, #0e8f66 100%);
  --aio-surface-shadow: 0 12px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.035);
}

/* All normal buttons and button-like links */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
.button,
.action-button,
.primary-action,
.secondary-action,
a.btn,
a.button,
.actions a,
.toolbar a.btn,
.toolbar button,
.platform-mini-actions a,
.platform-mini-actions button,
.platform-actions a,
.platform-actions button,
.card-actions a,
.card-actions button {
  border-radius: 14px !important;
  border: 1px solid var(--aio-blue-border-strong) !important;
  background: var(--aio-secondary) !important;
  color: var(--aio-blue-text) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(0,0,0,.18) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
.btn:hover,
.button:hover,
.action-button:hover,
.primary-action:hover,
.secondary-action:hover,
a.btn:hover,
a.button:hover,
.actions a:hover,
.toolbar a.btn:hover,
.toolbar button:hover,
.platform-mini-actions a:hover,
.platform-mini-actions button:hover,
.platform-actions a:hover,
.platform-actions button:hover,
.card-actions a:hover,
.card-actions button:hover {
  border-color: rgba(108,190,255,.78) !important;
  background: linear-gradient(180deg, rgba(16,48,96,.98), rgba(9,31,68,.98)) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.24), 0 0 0 1px rgba(42,160,255,.14) inset !important;
}

/* Primary / save / continue / create actions */
.btn.primary,
.button.primary,
button.primary,
input[type="submit"],
.primary-action,
.save-button,
.create-button,
.continue-button,
.checkout-button,
[data-primary],
button[name="save"],
button[value="save"],
button[type="submit"] {
  background: var(--aio-primary) !important;
  border-color: rgba(108,190,255,.82) !important;
  color: #ffffff !important;
}

.btn.primary:hover,
.button.primary:hover,
button.primary:hover,
input[type="submit"]:hover,
.primary-action:hover,
.save-button:hover,
.create-button:hover,
.continue-button:hover,
.checkout-button:hover,
[data-primary]:hover,
button[name="save"]:hover,
button[value="save"]:hover,
button[type="submit"]:hover {
  background: var(--aio-primary-hover) !important;
}

/* Destructive actions */
.btn.danger,
.button.danger,
button.danger,
.delete,
.delete-button,
.destroy-button,
.remove-button,
a.delete,
a.danger,
button[name*="delete"],
button[value*="delete"],
button[name*="remove"],
button[value*="remove"] {
  background: var(--aio-danger) !important;
  border-color: rgba(255,138,138,.56) !important;
  color: #fff6f6 !important;
}

/* Warning actions */
.btn.warning,
.button.warning,
button.warning,
.warning-button,
.pause-button,
.hold-button {
  background: var(--aio-warning) !important;
  border-color: rgba(255,209,102,.55) !important;
  color: #fffaf1 !important;
}

/* Success actions */
.btn.success,
.button.success,
button.success,
.success-button,
.approve-button,
.enable-button {
  background: var(--aio-success) !important;
  border-color: rgba(76,255,196,.50) !important;
  color: #f8fffd !important;
}

/* Inputs, selects, textareas, upload fields */
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.input,
.form-control,
.search-input,
input[type="file"] {
  background: rgba(7,18,38,.96) !important;
  border: 1px solid rgba(76,152,255,.32) !important;
  color: var(--aio-blue-text) !important;
  border-radius: 14px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}

input::placeholder,
textarea::placeholder {
  color: #8fa3c2 !important;
}

input:focus,
select:focus,
textarea:focus,
.input:focus,
.form-control:focus,
.search-input:focus {
  outline: none !important;
  border-color: rgba(102,190,255,.85) !important;
  box-shadow: 0 0 0 3px rgba(30,140,255,.18), inset 0 1px 0 rgba(255,255,255,.05) !important;
}

/* Checkbox and radio accent */
input[type="checkbox"],
input[type="radio"] {
  accent-color: #2f8dff !important;
}

/* Light / white pages and cards across the whole system */
.card,
.panel,
.box,
.tile,
.widget,
.module,
.container-card,
.page-card,
.form-card,
.settings-card,
.detail-card,
.inspector-card,
.workspace-card,
.release-card,
.search-card,
.launch-card,
.admin-card,
.control-card,
.mini-card,
.kpi-card,
.status-card,
.module-card,
.health-card,
.message-card,
.contact-card,
.course-card,
.lesson-card,
.cert-card,
.document-card,
.sign-card,
.template-card,
.meeting-card,
.room-card,
.voice-card,
.analytics-card,
.billing-card,
.price-card,
.checkout-card,
.marketplace-card,
.addon-card,
.app-card,
.integration-card,
.profile-card,
.audit-card,
.runbook-card,
.notice,
.alert:not(.success):not(.warning):not(.danger):not(.error),
.info-box,
.empty-state,
.empty-card,
.bg-white,
.bg-light,
.surface-light,
.surface-white,
.card-light,
.panel-light,
.widget-light,
.notice-light,
.info-light,
.tile-light,
.aio-card-light,
.aio-panel-light,
body [style*="background:#fff"],
body [style*="background: #fff"],
body [style*="background-color:#fff"],
body [style*="background-color: #fff"],
body [style*="background:#ffffff"],
body [style*="background: #ffffff"],
body [style*="background-color:#ffffff"],
body [style*="background-color: #ffffff"],
body [style*="background:#f8fafc"],
body [style*="background: #f8fafc"],
body [style*="background:#f9fafb"],
body [style*="background: #f9fafb"],
body [style*="background:#fafafa"],
body [style*="background: #fafafa"],
body [style*="background:#f8fbff"],
body [style*="background: #f8fbff"],
body [style*="background:#f1f5f9"],
body [style*="background: #f1f5f9"],
body [style*="background:#f3f4f6"],
body [style*="background: #f3f4f6"],
body [style*="background:#eef2ff"],
body [style*="background: #eef2ff"] {
  background: var(--aio-blue-bg) !important;
  border: 1px solid var(--aio-blue-border) !important;
  color: var(--aio-blue-text) !important;
  box-shadow: var(--aio-surface-shadow) !important;
}

/* Light nested text */
.card p, .panel p, .box p, .tile p, .widget p, .module p,
.card span, .panel span, .box span, .tile span, .widget span, .module span,
.card small, .panel small, .box small, .tile small, .widget small, .module small,
.muted, .help, .hint, .description, .subtext, .subtitle {
  color: var(--aio-blue-muted) !important;
}

.card strong, .panel strong, .box strong, .tile strong, .widget strong, .module strong,
.card h1, .card h2, .card h3, .card h4,
.panel h1, .panel h2, .panel h3, .panel h4,
.box h1, .box h2, .box h3, .box h4,
.tile h1, .tile h2, .tile h3, .tile h4,
.widget h1, .widget h2, .widget h3, .widget h4,
.module h1, .module h2, .module h3, .module h4 {
  color: #ffffff !important;
}

/* Tables across pages */
table,
.table,
.data-table,
.list-table {
  color: var(--aio-blue-text) !important;
  background: rgba(4,16,33,.72) !important;
  border-color: rgba(55,133,255,.18) !important;
}

thead,
th,
.table th,
.data-table th,
.list-table th {
  background: rgba(13,43,82,.76) !important;
  color: #8fd3ff !important;
  border-color: rgba(55,133,255,.18) !important;
}

td,
tr,
.table td,
.data-table td,
.list-table td {
  border-color: rgba(55,133,255,.14) !important;
  color: var(--aio-blue-text) !important;
}

/* Dropdowns, menus, modals, drawers */
.dropdown,
.dropdown-menu,
.menu,
.popover,
.modal,
.modal-content,
.drawer,
.offcanvas,
.tooltip-inner,
.command-palette,
.platform-command-palette-dialog,
.platform-utility-drawer,
.theme-pro-window {
  background: var(--aio-blue-bg) !important;
  border: 1px solid var(--aio-blue-border) !important;
  color: var(--aio-blue-text) !important;
  box-shadow: 0 22px 58px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.035) !important;
}

/* Keep status alerts distinct but not white */
.alert.success,
.notice.success,
.badge.success {
  background: var(--aio-success) !important;
  border-color: rgba(76,255,196,.50) !important;
  color: #f8fffd !important;
}

.alert.warning,
.notice.warning,
.badge.warning {
  background: var(--aio-warning) !important;
  border-color: rgba(255,209,102,.55) !important;
  color: #fffaf1 !important;
}

.alert.danger,
.alert.error,
.notice.danger,
.notice.error,
.badge.danger,
.badge.error {
  background: var(--aio-danger) !important;
  border-color: rgba(255,138,138,.56) !important;
  color: #fff6f6 !important;
}

/* Links that look like actions */
a.action,
a.link-button,
a.cta,
a.pill,
.nav-pills a,
.tabs a,
.tab {
  background: var(--aio-secondary) !important;
  border: 1px solid var(--aio-blue-border) !important;
  color: var(--aio-blue-text) !important;
  border-radius: 999px !important;
}

a.action:hover,
a.link-button:hover,
a.cta:hover,
a.pill:hover,
.nav-pills a:hover,
.tabs a:hover,
.tab:hover,
.tab.active,
.tabs a.active {
  background: var(--aio-primary) !important;
  color: #ffffff !important;
  border-color: rgba(108,190,255,.82) !important;
}


/* V17.03.24 — Contacts Index and Meetings Index dark corrections */
.contact-floating-window,
.contact-floating-header,
.contact-floating-body,
.contact-readiness-badge,
.contact-sms-bulk-panel,
.contact-sms-bulk-meter,
.contact-sms-bulk-log,
.table-shell,
.compact-table-shell,
.page-slider,
.import-progress-shell,
.import-progress-bar,
.empty-state-cell,
.filters-row,
.contact-table,
.meet-action-card,
.meet-card-icon,
.meet-home-actions-note,
.meet-advanced-toggle[open],
.meet-join-row,
.meet-mini-grid,
.meet-room-row-actions,
.meet-card-head {
  background: linear-gradient(180deg,rgba(8,26,52,.97),rgba(4,16,33,.99)) !important;
  border-color: rgba(55,133,255,.30) !important;
  color: #f5f9ff !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.contact-floating-header,
.contact-readiness-badge,
.meet-card-icon {
  background: linear-gradient(180deg,rgba(11,39,80,.97),rgba(7,24,52,.99)) !important;
}
.contact-readiness-value,
.contact-floating-window strong,
.contact-sms-bulk-panel strong,
.table-shell strong,
.meet-action-card strong,
.meet-action-card .meet-card-title,
.meet-advanced-toggle summary,
.meet-home-actions-note strong { color: #ffffff !important; }
.contact-floating-window p,
.contact-floating-window span,
.contact-floating-window small,
.contact-sms-bulk-panel p,
.contact-sms-bulk-panel span,
.contact-sms-bulk-panel small,
.contact-sms-bulk-log,
.meet-action-card p,
.meet-action-card span,
.meet-action-card small,
.meet-home-actions-note,
.meet-home-actions-note p,
.meet-home-actions-note span,
.meet-card-icon { color: #b9c7d9 !important; }
.contact-readiness-badge.tone-green{background:linear-gradient(180deg,#12b981 0%,#0e8f66 100%) !important;border-color:rgba(76,255,196,.44) !important;color:#fff !important;}
.contact-readiness-badge.tone-red{background:linear-gradient(180deg,#ef5350 0%,#c62828 100%) !important;border-color:rgba(255,138,138,.46) !important;color:#fff !important;}
.contact-readiness-badge.tone-amber{background:linear-gradient(180deg,#f5a524 0%,#c47a0a 100%) !important;border-color:rgba(255,209,102,.45) !important;color:#fff !important;}
.contact-readiness-badge.tone-gray{background:linear-gradient(180deg,#2d67f6 0%,#1744b3 100%) !important;border-color:rgba(116,172,255,.42) !important;color:#fff !important;}
.contact-sms-bulk-actions .btn.danger{background:linear-gradient(180deg,#ef5350 0%,#c62828 100%) !important;border-color:rgba(255,138,138,.56) !important;color:#fff6f6 !important;}
.meet-action-card.is-primary{background:linear-gradient(135deg,#06162f,#0b3d76 58%,#145ddb 100%) !important;border-color:rgba(108,190,255,.48) !important;}
.meet-action-card input,
.meet-action-card select,
.meet-action-card textarea,
.contact-floating-window input,
.contact-floating-window select,
.contact-floating-window textarea,
.contact-sms-bulk-panel input,
.contact-sms-bulk-panel select,
.contact-sms-bulk-panel textarea{background:rgba(7,18,38,.96) !important;border:1px solid rgba(76,152,255,.32) !important;color:#f5f9ff !important;border-radius:14px !important;}



/* V17.03.25 — Contacts + Meetings dark visual implementation */
:root{
  --aio-v25-bg: linear-gradient(180deg, rgba(7,25,51,.98), rgba(3,14,31,.99));
  --aio-v25-bg-soft: linear-gradient(180deg, rgba(10,35,70,.96), rgba(5,20,43,.98));
  --aio-v25-border: rgba(46,139,255,.52);
  --aio-v25-border-soft: rgba(68,148,255,.28);
  --aio-v25-text: #f5f9ff;
  --aio-v25-muted: #b9c7d9;
  --aio-v25-accent: linear-gradient(180deg,#168cff 0%,#105edc 100%);
  --aio-v25-danger: linear-gradient(180deg,#ef5350 0%,#c62828 100%);
  --aio-v25-shadow: 0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.035);
}

/* Meetings screen cards exactly aligned to approved dark mockup */
.meet-action-grid{
  gap:18px !important;
  align-items:stretch !important;
}
.meet-action-card,
.meet-action-card.is-primary,
.card.meet-emergency-home-card,
.meet-advanced-toggle[open]{
  background:var(--aio-v25-bg) !important;
  border:1px solid var(--aio-v25-border) !important;
  box-shadow:var(--aio-v25-shadow) !important;
  color:var(--aio-v25-text) !important;
  border-radius:24px !important;
}
.meet-action-card,
.meet-action-card.is-primary{
  padding:24px !important;
}
.meet-action-card h1,
.meet-action-card h2,
.meet-action-card h3,
.meet-action-card strong,
.meet-action-card .meet-card-title,
.card.meet-emergency-home-card h1,
.card.meet-emergency-home-card h2,
.card.meet-emergency-home-card strong{
  color:#ffffff !important;
}
.meet-action-card p,
.meet-action-card .small,
.meet-action-card label,
.meet-action-card span,
.meet-action-card.is-primary p,
.meet-action-card.is-primary .small,
.meet-action-card.is-primary label span,
.meet-home-actions-note,
.card.meet-emergency-home-card p,
.card.meet-emergency-home-card .small{
  color:var(--aio-v25-muted) !important;
}
.meet-card-icon,
.meet-action-card.is-primary .meet-card-icon{
  background:linear-gradient(180deg,rgba(37,91,177,.62),rgba(15,48,104,.78)) !important;
  border:1px solid rgba(75,164,255,.42) !important;
  color:#eaf6ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.20) !important;
}
.meet-action-card input,
.meet-action-card textarea,
.meet-action-card select,
.meet-join-row input,
.meet-mini-grid input,
.meet-mini-grid textarea,
.meet-mini-grid select{
  background:rgba(4,14,31,.97) !important;
  border:1px solid rgba(79,151,255,.36) !important;
  color:#f7fbff !important;
  border-radius:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
.meet-action-card input::placeholder,
.meet-action-card textarea::placeholder{
  color:#99abc4 !important;
}
.meet-home-actions-note,
.meet-action-card .meet-home-actions-note{
  background:rgba(10,37,76,.80) !important;
  border:1px solid rgba(96,173,255,.42) !important;
  border-radius:16px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.meet-action-card .btn,
.meet-action-card button,
.meet-join-row .btn,
.meet-room-row-actions .btn{
  border-radius:14px !important;
}
.meet-action-card .btn.primary,
.meet-action-card button[type="submit"],
.meet-join-row .btn.primary{
  background:var(--aio-v25-accent) !important;
  border-color:rgba(108,190,255,.72) !important;
  color:#fff !important;
}
.meet-action-card .btn.secondary,
.meet-room-row-actions .btn.secondary{
  background:linear-gradient(180deg,rgba(12,35,72,.98),rgba(7,24,52,.98)) !important;
  border:1px solid rgba(79,135,255,.32) !important;
  color:#edf4ff !important;
}
.meet-action-card input[type="checkbox"]{
  accent-color:#2f8dff !important;
}
.meet-action-card hr,
.meet-action-card .divider{
  border-color:rgba(68,148,255,.16) !important;
}

/* Contacts index + Bulk SMS line verification card */
.contact-sms-bulk-panel,
.contact-floating-window,
.contact-floating-header,
.contact-floating-body,
.table-shell,
.contact-table,
.contacts-bulk-actions,
.contact-bulk-controls,
.contact-readiness-badge,
.contact-readiness-cell,
.contact-readiness-value{
  color:var(--aio-v25-text) !important;
}
.contact-sms-bulk-panel{
  background:var(--aio-v25-bg) !important;
  border:1px solid var(--aio-v25-border) !important;
  border-radius:24px !important;
  box-shadow:var(--aio-v25-shadow) !important;
  padding:28px !important;
  overflow:hidden !important;
}
.contact-sms-bulk-panel .section-header,
.contact-sms-bulk-panel .split-header{
  background:transparent !important;
  border:0 !important;
  color:var(--aio-v25-text) !important;
}
.contact-sms-bulk-panel h1,
.contact-sms-bulk-panel h2,
.contact-sms-bulk-panel h3,
.contact-sms-bulk-panel strong{
  color:#ffffff !important;
}
.contact-sms-bulk-panel p,
.contact-sms-bulk-panel .small,
.contact-sms-bulk-log,
.contact-sms-bulk-panel span:not(.badge){
  color:var(--aio-v25-muted) !important;
}
.contact-sms-bulk-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  align-items:center !important;
}
.contact-sms-bulk-actions .btn,
.contact-sms-bulk-panel .btn{
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:14px !important;
  font-weight:800 !important;
}
.contact-sms-bulk-actions .btn.primary{
  background:var(--aio-v25-accent) !important;
  border-color:rgba(108,190,255,.72) !important;
  color:#fff !important;
}
.contact-sms-bulk-actions .btn.secondary{
  background:linear-gradient(180deg,rgba(12,35,72,.98),rgba(7,24,52,.98)) !important;
  border:1px solid rgba(79,135,255,.38) !important;
  color:#edf4ff !important;
}
.contact-sms-bulk-actions .btn.danger{
  background:var(--aio-v25-danger) !important;
  border-color:rgba(255,138,138,.56) !important;
  color:#fff6f6 !important;
}
.contact-sms-bulk-stats{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin:18px 0 16px !important;
}
.contact-sms-bulk-stats .badge,
.contact-sms-bulk-panel .badge{
  background:linear-gradient(180deg,rgba(13,58,110,.82),rgba(6,30,66,.92)) !important;
  border:1px solid rgba(48,154,255,.62) !important;
  color:#dff3ff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.18) !important;
  border-radius:999px !important;
}
.contact-sms-bulk-panel .badge strong{
  color:#ffffff !important;
}
.contact-sms-bulk-meter{
  background:rgba(6,22,49,.92) !important;
  border:1px solid rgba(48,154,255,.28) !important;
  border-radius:999px !important;
  overflow:hidden !important;
}
.contact-sms-bulk-meter span,
.contact-sms-bulk-meter #contact-sms-bulk-fill{
  background:linear-gradient(90deg,#168cff,#2fd4ff) !important;
  border-radius:999px !important;
}
.contact-sms-bulk-log{
  margin-top:16px !important;
}

/* Contact floating windows and contacts table */
.contact-floating-window,
.contact-floating-window.is-open{
  background:var(--aio-v25-bg) !important;
  border:1px solid var(--aio-v25-border) !important;
  box-shadow:0 26px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.contact-floating-header{
  background:linear-gradient(180deg,rgba(12,34,70,.96),rgba(5,20,43,.98)) !important;
  border-bottom:1px solid rgba(68,148,255,.20) !important;
}
.contact-floating-body{
  background:transparent !important;
}
.contact-floating-window input,
.contact-floating-window select,
.contact-floating-window textarea,
.contact-bulk-controls input,
.contact-bulk-controls select{
  background:rgba(4,14,31,.97) !important;
  border:1px solid rgba(79,151,255,.36) !important;
  color:#f7fbff !important;
  border-radius:14px !important;
}
.contact-readiness-value{
  color:#f5f9ff !important;
}
.contact-readiness-badge{
  background:linear-gradient(180deg,rgba(13,58,110,.82),rgba(6,30,66,.92)) !important;
  border-color:rgba(48,154,255,.62) !important;
  color:#dff3ff !important;
}
.contact-readiness-badge.is-ready,
.contact-readiness-badge.ready,
.contact-readiness-badge.good{
  background:linear-gradient(180deg,#12b981,#0e8f66) !important;
  color:#f8fffd !important;
}
.contact-readiness-badge.is-warning,
.contact-readiness-badge.warning{
  background:linear-gradient(180deg,#f5a524,#c47a0a) !important;
  color:#fffaf1 !important;
}
.contact-readiness-badge.is-danger,
.contact-readiness-badge.danger{
  background:linear-gradient(180deg,#ef5350,#c62828) !important;
  color:#fff6f6 !important;
}
.table-shell,
.contact-table,
.data-table.contact-table{
  background:var(--aio-v25-bg) !important;
  border:1px solid rgba(68,148,255,.20) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  color:var(--aio-v25-text) !important;
}
.contact-table th,
.data-table.contact-table th{
  background:rgba(13,43,82,.76) !important;
  color:#8fd3ff !important;
  border-color:rgba(55,133,255,.18) !important;
}
.contact-table td,
.data-table.contact-table td{
  background:rgba(4,16,33,.42) !important;
  border-color:rgba(55,133,255,.12) !important;
  color:#eaf2ff !important;
}
.contact-table tr:hover td{
  background:rgba(18,62,118,.42) !important;
}
.contacts-bulk-actions,
.contact-bulk-controls{
  background:transparent !important;
}
.contacts-toolbar-actions .btn,
.contacts-bulk-actions .btn,
.contact-floating-window .btn,
.contact-table .btn{
  border-radius:14px !important;
}
.contacts-toolbar-actions .btn.primary,
.contacts-bulk-actions .btn.primary,
.contact-floating-window .btn.primary{
  background:var(--aio-v25-accent) !important;
  border-color:rgba(108,190,255,.72) !important;
  color:#fff !important;
}
.contacts-toolbar-actions .btn.secondary,
.contacts-bulk-actions .btn.secondary,
.contact-floating-window .btn.secondary,
.contact-table .btn.secondary{
  background:linear-gradient(180deg,rgba(12,35,72,.98),rgba(7,24,52,.98)) !important;
  border:1px solid rgba(79,135,255,.32) !important;
  color:#edf4ff !important;
}

/* Any stubborn inline white backgrounds in Meetings/Contacts views */
body:has(.meet-action-grid) [style*="background:#fff"],
body:has(.meet-action-grid) [style*="background: #fff"],
body:has(.meet-action-grid) [style*="background:#ffffff"],
body:has(.meet-action-grid) [style*="background: #ffffff"],
body:has(.meet-action-grid) [style*="background:#f8fafc"],
body:has(.meet-action-grid) [style*="background: #f8fafc"],
body:has(.contact-sms-bulk-panel) [style*="background:#fff"],
body:has(.contact-sms-bulk-panel) [style*="background: #fff"],
body:has(.contact-sms-bulk-panel) [style*="background:#ffffff"],
body:has(.contact-sms-bulk-panel) [style*="background: #ffffff"],
body:has(.contact-sms-bulk-panel) [style*="background:#f8fafc"],
body:has(.contact-sms-bulk-panel) [style*="background: #f8fafc"]{
  background:var(--aio-v25-bg) !important;
  border-color:var(--aio-v25-border-soft) !important;
  color:var(--aio-v25-text) !important;
}




/* V17.03.26 — Compact cards, reduced scrolling, and contact row/profile actions */
:root{
  --aio-compact-card-padding: 14px;
  --aio-compact-card-radius: 16px;
  --aio-compact-gap: 12px;
  --aio-compact-control-height: 34px;
  --aio-compact-font-small: .84rem;
}

/* Make cards smaller across the system so pages require less vertical scrolling */
.card,
section.card,
.platform-card,
.platform-panel,
.panel,
.box,
.tile,
.widget,
.module,
.container-card,
.page-card,
.form-card,
.settings-card,
.detail-card,
.inspector-card,
.workspace-card,
.release-card,
.search-card,
.launch-card,
.admin-card,
.control-card,
.mini-card,
.kpi-card,
.status-card,
.module-card,
.health-card,
.message-card,
.contact-card,
.course-card,
.lesson-card,
.cert-card,
.document-card,
.sign-card,
.template-card,
.meeting-card,
.room-card,
.voice-card,
.analytics-card,
.billing-card,
.price-card,
.checkout-card,
.marketplace-card,
.addon-card,
.app-card,
.integration-card,
.profile-card,
.audit-card,
.runbook-card,
.dashboard-card-shell,
.dashboard-customizer,
.platform-admin-grid-card,
.aio-admin-card,
.meet-action-card,
.contact-sms-bulk-panel {
  padding: var(--aio-compact-card-padding) !important;
  border-radius: var(--aio-compact-card-radius) !important;
}

.grid,
.grid.two,
.grid.three,
.cards,
.cards.four,
.compact-stats,
.platform-section-switcher,
.platform-app-grid,
.platform-signal-grid,
.dashboard-editable-grid,
.dashboard-card-grid,
.form-grid,
.meet-action-grid,
.aio-admin-card-grid {
  gap: var(--aio-compact-gap) !important;
}

.card h1,
.card h2,
.card h3,
.panel h1,
.panel h2,
.panel h3,
.platform-admin-title,
.dashboard-card-title h2,
.meet-card-title {
  line-height: 1.15 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

.card h2,
section.card h2,
.panel h2,
.box h2,
.widget h2 {
  font-size: clamp(1rem, 1.15vw, 1.22rem) !important;
}

.card h3,
section.card h3,
.panel h3,
.box h3,
.widget h3 {
  font-size: clamp(.95rem, 1vw, 1.08rem) !important;
}

.card p,
.panel p,
.box p,
.widget p,
.module p,
.form-help,
.small {
  line-height: 1.38 !important;
}

.toolbar,
.section-header,
.split-header,
.platform-mini-actions,
.actions-cell,
.card-actions,
.contact-hero-actions {
  gap: 8px !important;
}

.btn,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button,
a.btn,
a.button {
  min-height: var(--aio-compact-control-height) !important;
  padding: 0 12px !important;
  border-radius: 11px !important;
  font-size: var(--aio-compact-font-small) !important;
  line-height: 1.1 !important;
}

.btn.small,
button.small,
a.btn.small {
  min-height: 30px !important;
  padding: 0 10px !important;
  font-size: .78rem !important;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.input,
.form-control,
.search-input {
  min-height: 34px !important;
  padding: 7px 10px !important;
  border-radius: 11px !important;
  font-size: .88rem !important;
}

textarea {
  min-height: 64px !important;
}

.badge,
.pill,
.status-pill,
.aio-proof-pill {
  min-height: 22px !important;
  padding: 2px 8px !important;
  font-size: .68rem !important;
  border-radius: 999px !important;
}

.table-shell table th,
.table-shell table td,
.data-table th,
.data-table td,
.list-table th,
.list-table td {
  padding: 7px 9px !important;
  font-size: .86rem !important;
  line-height: 1.25 !important;
}

.stacked-badges {
  gap: 5px !important;
}

/* Smaller Admin Center cards */
.aio-admin-card {
  min-height: 72px !important;
  padding: 10px 12px !important;
  gap: 10px !important;
}
.aio-admin-card__icon {
  width: 40px !important;
  height: 40px !important;
  flex-basis: 40px !important;
  border-radius: 12px !important;
}
.aio-admin-card__icon svg {
  width: 20px !important;
  height: 20px !important;
}
.aio-admin-card__title {
  font-size: .96rem !important;
  line-height: 1.14 !important;
}
.aio-admin-card__meta {
  font-size: .78rem !important;
  line-height: 1.3 !important;
}

/* Compact Meetings cards */
.meet-action-card,
.meet-action-card.is-primary {
  padding: 16px !important;
  min-height: auto !important;
}
.meet-card-icon {
  width: 40px !important;
  height: 40px !important;
  border-radius: 13px !important;
}
.meet-mini-grid {
  gap: 7px !important;
}

/* Compact Contacts Index */
.contact-sms-bulk-panel {
  padding: 18px !important;
  margin: 12px 0 !important;
}
.contact-sms-bulk-stats {
  gap: 8px !important;
  margin: 12px 0 !important;
}
.contact-sms-bulk-actions .btn,
.contact-sms-bulk-panel .btn {
  min-height: 34px !important;
}
.contact-sms-bulk-log {
  margin-top: 10px !important;
  font-size: .85rem !important;
}
.contact-sms-bulk-meter {
  height: 10px !important;
}

.contact-table th,
.contact-table td,
.data-table.contact-table th,
.data-table.contact-table td {
  padding: 6px 8px !important;
  font-size: .82rem !important;
  vertical-align: top !important;
}
.contact-table .small,
.contact-readiness-cell .small {
  font-size: .72rem !important;
}
.contact-readiness-cell {
  gap: 2px !important;
  min-width: 104px !important;
}
.contact-readiness-value {
  font-size: .82rem !important;
  line-height: 1.18 !important;
}
.contact-readiness-badge {
  padding: 2px 7px !important;
  font-size: .66rem !important;
}
.contact-name-cell strong,
.contact-name-link strong {
  color: #ffffff !important;
  font-size: .88rem !important;
}
.contact-name-link {
  color: #dff3ff !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}
.contact-name-link:hover {
  color: #67c7ff !important;
  text-decoration: underline !important;
}
.contact-actions-header {
  min-width: 132px !important;
}
.contact-row-actions,
.actions-cell.contact-row-actions {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 5px !important;
  align-items: center !important;
}
.contact-row-actions .btn {
  min-height: 28px !important;
  padding: 0 8px !important;
  font-size: .72rem !important;
}

/* Contact profile action buttons and edit anchor */
.contact-hero-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}
.contact-hero-card,
.contact-crm-shell .card {
  padding: 14px !important;
}
#contact-profile-edit {
  scroll-margin-top: 90px;
  border-color: rgba(89, 170, 255, .45) !important;
}
.contact-hero-stats {
  gap: 8px !important;
}
.contact-hero-stats > div {
  padding: 8px 10px !important;
  border-radius: 12px !important;
}
.contact-detail-grid {
  gap: 9px !important;
}

/* Keep mobile usable */
@media (max-width: 900px) {
  .card,
  section.card,
  .panel,
  .box,
  .widget,
  .meet-action-card,
  .contact-sms-bulk-panel {
    padding: 12px !important;
  }
  .contact-row-actions {
    flex-wrap: wrap !important;
  }
  .contact-table th,
  .contact-table td {
    padding: 6px !important;
  }
}




/* V17.03.27 — Contacts Show, Campaign Studio, and Email Template Creator dark cleanup */
:root{
  --aio-clean-bg: linear-gradient(180deg, rgba(7,25,51,.98), rgba(3,14,31,.99));
  --aio-clean-bg-soft: linear-gradient(180deg, rgba(10,35,70,.96), rgba(5,20,43,.98));
  --aio-clean-bg-panel: linear-gradient(180deg, rgba(9,31,62,.96), rgba(4,17,36,.99));
  --aio-clean-border: rgba(55,133,255,.30);
  --aio-clean-border-strong: rgba(75,164,255,.56);
  --aio-clean-text: #f6faff;
  --aio-clean-muted: #b9c7d9;
  --aio-clean-blue: linear-gradient(180deg,#168cff 0%,#105edc 100%);
  --aio-clean-danger: linear-gradient(180deg,#ef5350 0%,#c62828 100%);
  --aio-clean-warning: linear-gradient(180deg,#f5a524 0%,#c47a0a 100%);
  --aio-clean-success: linear-gradient(180deg,#12b981 0%,#0e8f66 100%);
  --aio-clean-shadow: 0 16px 38px rgba(0,0,0,.27), inset 0 1px 0 rgba(255,255,255,.035);
}

/* Contacts Show profile cleanup */
.contact-crm-shell,
.contact-crm-shell .card,
.contact-hero-card,
.contact-status-card,
.contact-subscription-box,
.contact-compose-card,
.contact-thread-list-card,
.contact-thread-viewer,
.contact-timeline-list,
.contact-communication-layout,
.contact-thread-stack,
.timeline-list,
.timeline-item,
.conversation-list,
.conversation-item,
.thread,
.bubble,
.bubble.inbound,
.bubble.outbound,
.stacked-panel,
.contact-detail-grid > div,
.contact-hero-stats > div,
article.bubble,
details[open] .stacked-panel {
  background: var(--aio-clean-bg) !important;
  border: 1px solid var(--aio-clean-border) !important;
  color: var(--aio-clean-text) !important;
  box-shadow: var(--aio-clean-shadow) !important;
  border-radius: 16px !important;
}

.contact-crm-shell .card,
.contact-hero-card {
  padding: 14px !important;
}

.contact-crm-shell h1,
.contact-crm-shell h2,
.contact-crm-shell h3,
.contact-crm-shell h4,
.contact-crm-shell strong,
.contact-hero-card h2,
.contact-status-card strong,
.contact-detail-grid strong,
.conversation-item strong,
.timeline-item strong,
.bubble strong {
  color: #ffffff !important;
}

.contact-crm-shell p,
.contact-crm-shell span,
.contact-crm-shell small,
.contact-crm-shell .small,
.contact-crm-shell .muted,
.contact-status-card span,
.contact-status-card small,
.contact-detail-grid span,
.contact-detail-grid small,
.conversation-meta,
.conversation-preview,
.timeline-item .muted,
.bubble-meta {
  color: var(--aio-clean-muted) !important;
}

.contact-crm-shell input,
.contact-crm-shell select,
.contact-crm-shell textarea,
.contact-compose-card textarea,
.contact-compose-card input,
.contact-compose-card select,
.contact-subscription-box input,
.contact-subscription-box select,
.contact-subscription-box textarea,
.contact-thread-viewer input,
.contact-thread-viewer textarea,
.contact-thread-viewer select,
.stacked-panel input,
.stacked-panel select,
.stacked-panel textarea {
  background: rgba(4,14,31,.97) !important;
  border: 1px solid rgba(79,151,255,.36) !important;
  color: #f7fbff !important;
  border-radius: 11px !important;
}

.contact-crm-shell input::placeholder,
.contact-crm-shell textarea::placeholder {
  color: #99abc4 !important;
}

.contact-status-card.is-green,
.contact-readiness-badge.tone-green {
  background: linear-gradient(180deg, rgba(10,60,47,.95), rgba(6,37,31,.98)) !important;
  border-color: rgba(36,210,128,.46) !important;
  color: #dfffee !important;
}
.contact-status-card.is-red,
.contact-readiness-badge.tone-red {
  background: linear-gradient(180deg, rgba(79,24,29,.95), rgba(47,13,18,.98)) !important;
  border-color: rgba(255,110,110,.52) !important;
  color: #fff0f0 !important;
}
.contact-status-card.is-amber,
.contact-readiness-badge.tone-amber {
  background: linear-gradient(180deg, rgba(84,53,13,.95), rgba(54,34,8,.98)) !important;
  border-color: rgba(255,193,82,.52) !important;
  color: #fff6d7 !important;
}
.contact-status-card.is-gray,
.contact-readiness-badge.tone-gray,
.contact-readiness-badge {
  background: linear-gradient(180deg, rgba(13,58,110,.82), rgba(6,30,66,.92)) !important;
  border-color: rgba(48,154,255,.58) !important;
  color: #dff3ff !important;
}

.contact-hero-actions .btn,
.contact-crm-shell .btn,
.contact-compose-card .btn,
.contact-thread-viewer .btn {
  border-radius: 11px !important;
}
.contact-hero-actions .btn.primary,
.contact-crm-shell .btn.primary,
.contact-crm-shell button[type="submit"] {
  background: var(--aio-clean-blue) !important;
  border-color: rgba(108,190,255,.72) !important;
  color: #fff !important;
}
.contact-hero-actions .btn.danger,
.contact-crm-shell .btn.danger {
  background: var(--aio-clean-danger) !important;
  border-color: rgba(255,138,138,.56) !important;
  color: #fff6f6 !important;
}
.contact-hero-actions .btn.secondary,
.contact-crm-shell .btn.secondary {
  background: linear-gradient(180deg,rgba(12,35,72,.98),rgba(7,24,52,.98)) !important;
  border: 1px solid rgba(79,135,255,.35) !important;
  color: #edf4ff !important;
}

/* Remove safe-mode/profile inline white and yellow boxes */
body:has(.contact-crm-shell) [style*="background:#fff"],
body:has(.contact-crm-shell) [style*="background: #fff"],
body:has(.contact-crm-shell) [style*="background:#ffffff"],
body:has(.contact-crm-shell) [style*="background: #ffffff"],
body:has(.contact-crm-shell) [style*="background:#f8fafc"],
body:has(.contact-crm-shell) [style*="background: #f8fafc"],
body:has(.contact-crm-shell) [style*="background:#fffbeb"],
body:has(.contact-crm-shell) [style*="background: #fffbeb"],
body:has(.contact-crm-shell) [style*="background:#fef2f2"],
body:has(.contact-crm-shell) [style*="background:#f0fdf4"] {
  background: var(--aio-clean-bg) !important;
  border-color: var(--aio-clean-border) !important;
  color: var(--aio-clean-text) !important;
}

/* Campaign Studio cleanup */
.workspace-hero,
.commercial-campaign-card,
.commercial-campaign-overview,
.campaign-overview-copy,
.studio-readiness-inline,
.metric-chip,
.preflight-card,
.builder-palette,
.builder-canvas,
.builder-dropzone,
.preview-box,
.campaign-table-shell,
.campaign-queue-table,
.campaign-actions-note,
.alert-tile,
.health-item,
.comparison-card,
.report-card,
.campaign-approval-cell,
.campaign-state-cell,
.campaign-progress-cell,
.campaign-channel-cell,
.campaign-name-cell,
.campaign-actions-cell {
  background: var(--aio-clean-bg) !important;
  border: 1px solid var(--aio-clean-border) !important;
  color: var(--aio-clean-text) !important;
  box-shadow: var(--aio-clean-shadow) !important;
  border-radius: 16px !important;
}

.workspace-hero {
  padding: 16px !important;
  margin-bottom: 12px !important;
}
.commercial-campaign-card,
.preflight-card,
.builder-palette,
.builder-canvas,
.preview-box,
.campaign-table-shell {
  padding: 14px !important;
}

.workspace-hero h1,
.workspace-hero h2,
.workspace-hero h3,
.commercial-campaign-card h1,
.commercial-campaign-card h2,
.commercial-campaign-card h3,
.commercial-campaign-card strong,
.studio-readiness-inline strong,
.metric-chip strong,
.preflight-card strong,
.builder-palette strong,
.builder-canvas strong,
.preview-box strong,
.campaign-table-shell strong {
  color: #ffffff !important;
}
.workspace-hero p,
.commercial-campaign-card p,
.commercial-campaign-card span,
.commercial-campaign-card small,
.campaign-overview-copy p,
.campaign-overview-copy li,
.studio-readiness-inline .small,
.metric-chip span,
.preflight-card p,
.builder-palette p,
.builder-canvas p,
.preview-box p,
.state-filter-hint,
.campaign-actions-note {
  color: var(--aio-clean-muted) !important;
}

.campaign-queue-table,
.campaign-queue-table table,
.campaign-table-shell table {
  background: rgba(4,16,33,.72) !important;
  color: var(--aio-clean-text) !important;
  border-color: rgba(55,133,255,.18) !important;
}
.campaign-queue-table th,
.campaign-table-shell th {
  background: rgba(13,43,82,.76) !important;
  color: #8fd3ff !important;
}
.campaign-queue-table td,
.campaign-table-shell td {
  border-color: rgba(55,133,255,.13) !important;
  color: #eaf2ff !important;
}

.commercial-campaign-card input,
.commercial-campaign-card select,
.commercial-campaign-card textarea,
.builder-palette input,
.builder-palette select,
.builder-palette textarea,
.builder-canvas input,
.builder-canvas select,
.builder-canvas textarea,
.preview-box input,
.preview-box select,
.preview-box textarea {
  background: rgba(4,14,31,.97) !important;
  border: 1px solid rgba(79,151,255,.36) !important;
  color: #f7fbff !important;
  border-radius: 11px !important;
}

/* Email Theme Creator / Template Creator cleanup */
.theme-pro-shell-page,
.theme-pro-studio-card,
.theme-pro-brief-card,
.theme-pro-top-guide,
.theme-pro-guide-item,
.theme-pro-step,
.theme-pro-commandbar,
.theme-pro-workspace,
.theme-pro-right-rail,
.theme-pro-inspector-card,
.theme-pro-outline-card,
.theme-pro-canvas,
.theme-pro-canvas-stage,
.theme-pro-preview-dock,
.theme-pro-preview-frame-wrap,
.theme-pro-window,
.theme-pro-popup-group,
.theme-pro-settings-grid,
.theme-pro-code-grid,
.theme-v2-code-card,
.theme-v2-palette-item,
.theme-library-shell,
.theme-library-overview-card,
.theme-library-card,
.theme-library-item,
.theme-library-item--pro,
.theme-pro-stat-pill,
.theme-library-overview-note {
  background: var(--aio-clean-bg) !important;
  border: 1px solid var(--aio-clean-border) !important;
  color: var(--aio-clean-text) !important;
  box-shadow: var(--aio-clean-shadow) !important;
  border-radius: 16px !important;
}

.theme-pro-studio-card,
.theme-pro-brief-card,
.theme-pro-commandbar,
.theme-pro-inspector-card,
.theme-pro-outline-card,
.theme-library-card,
.theme-library-overview-card {
  padding: 14px !important;
}

.theme-pro-shell-page h1,
.theme-pro-shell-page h2,
.theme-pro-shell-page h3,
.theme-pro-shell-page strong,
.theme-library-shell h1,
.theme-library-shell h2,
.theme-library-shell h3,
.theme-library-shell strong,
.theme-pro-step strong,
.theme-pro-stat-pill strong {
  color: #ffffff !important;
}
.theme-pro-shell-page p,
.theme-pro-shell-page span,
.theme-pro-shell-page small,
.theme-pro-shell-page li,
.theme-library-shell p,
.theme-library-shell span,
.theme-library-shell small,
.theme-library-shell li,
.theme-pro-kicker,
.theme-library-meta {
  color: var(--aio-clean-muted) !important;
}

.theme-pro-shell-page input,
.theme-pro-shell-page select,
.theme-pro-shell-page textarea,
.theme-pro-shell-page .theme-pro-preview-frame-wrap,
.theme-library-shell input,
.theme-library-shell select,
.theme-library-shell textarea {
  background: rgba(4,14,31,.97) !important;
  border: 1px solid rgba(79,151,255,.36) !important;
  color: #f7fbff !important;
  border-radius: 11px !important;
}

.theme-pro-step.is-active,
.theme-mode-pill.is-active,
.theme-pro-view-toggle .is-active {
  background: var(--aio-clean-blue) !important;
  border-color: rgba(108,190,255,.72) !important;
  color: #fff !important;
}

/* Buttons shared by Campaign Studio and Template Creator */
.workspace-actions .btn,
.campaign-action-button,
.campaign-action-link,
.builder-add,
.theme-pro-shell-page .btn,
.theme-library-shell .btn {
  border-radius: 11px !important;
}
.workspace-actions .btn.primary,
.campaign-action-button.primary,
.theme-pro-shell-page .btn.primary,
.theme-library-shell .btn.primary {
  background: var(--aio-clean-blue) !important;
  border-color: rgba(108,190,255,.72) !important;
  color: #fff !important;
}
.workspace-actions .btn.secondary,
.campaign-action-button.secondary,
.campaign-action-link.secondary,
.theme-pro-shell-page .btn.secondary,
.theme-library-shell .btn.secondary {
  background: linear-gradient(180deg,rgba(12,35,72,.98),rgba(7,24,52,.98)) !important;
  border: 1px solid rgba(79,135,255,.35) !important;
  color: #edf4ff !important;
}
.campaign-action-button.danger,
.theme-pro-shell-page .btn.danger,
.theme-library-shell .btn.danger {
  background: var(--aio-clean-danger) !important;
  border-color: rgba(255,138,138,.56) !important;
  color: #fff6f6 !important;
}

/* Stubborn inline light backgrounds for campaign/template screens */
body:has(.commercial-campaign-card) [style*="background:#fff"],
body:has(.commercial-campaign-card) [style*="background: #fff"],
body:has(.commercial-campaign-card) [style*="background:#ffffff"],
body:has(.commercial-campaign-card) [style*="background:#f8fafc"],
body:has(.commercial-campaign-card) [style*="background:#f9fafb"],
body:has(.commercial-campaign-card) [style*="background:#eff6ff"],
body:has(.theme-pro-shell-page) [style*="background:#fff"],
body:has(.theme-pro-shell-page) [style*="background: #fff"],
body:has(.theme-pro-shell-page) [style*="background:#ffffff"],
body:has(.theme-pro-shell-page) [style*="background:#f8fafc"],
body:has(.theme-pro-shell-page) [style*="background:#f9fafb"],
body:has(.theme-library-shell) [style*="background:#fff"],
body:has(.theme-library-shell) [style*="background:#ffffff"],
body:has(.theme-library-shell) [style*="background:#f8fafc"],
body:has(.theme-library-shell) [style*="background:#f9fafb"] {
  background: var(--aio-clean-bg) !important;
  border-color: var(--aio-clean-border) !important;
  color: var(--aio-clean-text) !important;
}




/* V17.03.28 — Contact CRM horizontal alignment cleanup */
.contact-hero-stats{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
  margin-top:12px !important;
}
.contact-hero-stats > div{
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:3px !important;
  padding:10px 12px !important;
}
.contact-hero-stats > div strong{
  font-size:1.12rem !important;
  line-height:1.1 !important;
}
.contact-detail-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
.contact-detail-grid > div{
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:4px !important;
  padding:10px 12px !important;
}
.contact-detail-grid > div strong{
  line-height:1.18 !important;
  overflow-wrap:anywhere !important;
}
.contact-status-strip{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-items:stretch !important;
}
.contact-status-strip > .contact-status-card,
.contact-status-strip > .contact-subscription-box{
  min-width:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  gap:8px !important;
}
.contact-status-card .contact-verify-form,
.contact-subscription-box form{
  margin-top:8px !important;
}
.contact-subscription-box .btn,
.contact-status-card .btn{
  width:auto !important;
  align-self:flex-start !important;
}
.contact-subscription-box label,
.contact-status-card label{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
}
.contact-subscription-box .compact-toolbar,
.contact-status-card .compact-toolbar{
  align-items:flex-start !important;
}
@media (max-width: 1280px){
  .contact-hero-stats{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media (max-width: 900px){
  .contact-hero-stats,
  .contact-detail-grid,
  .contact-status-strip{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 620px){
  .contact-hero-stats,
  .contact-detail-grid,
  .contact-status-strip{
    grid-template-columns:1fr !important;
  }
}


/* V17.03.99 — cleaner, visible mobile public Login / Request Demo buttons */
.aio-nav-actions .aio-btn{
  text-decoration:none;
}
.aio-nav-actions .aio-btn-secondary{
  color:#eef8ff;
  background:rgba(9,36,83,.86);
  border:1px solid rgba(37,216,255,.46);
  box-shadow:inset 0 0 22px rgba(37,216,255,.10),0 8px 20px rgba(0,0,0,.18);
}
.aio-nav-actions .aio-btn-primary{
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 30px rgba(8,104,213,.42),0 0 0 1px rgba(255,255,255,.12) inset;
}
@media (max-width: 840px){
  .aio-topbar{
    background:rgba(1,9,29,.94);
  }
  .aio-nav{
    min-height:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "brand menu"
      "actions actions";
    gap:10px 12px;
    padding:10px 0 12px;
    align-items:center;
  }
  .aio-brand{
    grid-area:brand;
    min-width:0;
    max-width:100%;
  }
  .aio-menu-toggle{
    grid-area:menu;
    justify-self:end;
    min-height:42px;
    min-width:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .aio-nav-actions{
    grid-area:actions;
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
  }
  .aio-nav-actions .aio-btn-secondary{
    display:inline-flex!important;
  }
  .aio-nav-actions .aio-btn{
    width:100%;
    min-height:42px;
    padding:10px 12px;
    border-radius:14px;
    font-size:.88rem;
    line-height:1.05;
    font-weight:900;
    white-space:nowrap;
  }
  .aio-nav-actions .aio-btn-primary{
    background:linear-gradient(135deg,#0868d5,#25d8ff);
    color:#fff;
  }
  .aio-nav-actions .aio-btn-secondary{
    background:linear-gradient(180deg,rgba(12,45,91,.96),rgba(5,22,50,.98));
    color:#f4fbff;
  }
  .aio-nav-links{
    top:126px;
    left:14px;
    right:14px;
  }
}
@media (max-width: 520px){
  .aio-container{
    width:min(100% - 20px,1180px);
  }
  .aio-nav{
    gap:8px 10px;
    padding:8px 0 10px;
  }
  .aio-brand-mark{
    width:42px;
    height:42px;
    border-radius:13px;
  }
  .aio-brand-text strong{
    font-size:clamp(15px,4.4vw,19px);
    letter-spacing:-.045em;
  }
  .aio-brand-text span,
  .aio-brand-text span:last-child{
    font-size:10px;
  }
  .aio-nav-actions{
    gap:7px;
  }
  .aio-nav-actions .aio-btn{
    min-height:40px;
    padding:9px 10px;
    font-size:.80rem;
    border-radius:13px;
  }
  .aio-nav-links{
    top:118px;
    left:10px;
    right:10px;
  }
}
@media (max-width: 380px){
  .aio-nav-actions .aio-btn{
    font-size:.76rem;
    padding-left:8px;
    padding-right:8px;
  }
}


/* V17.04.00 — mobile hamburger menu Login button */
.aio-mobile-menu-login{
  display:none!important;
}
@media (max-width: 840px){
  .aio-nav-links .aio-mobile-menu-login{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:44px!important;
    margin-top:8px!important;
    padding:11px 14px!important;
    border-radius:14px!important;
    border:1px solid rgba(37,216,255,.48)!important;
    background:linear-gradient(180deg,rgba(12,45,91,.98),rgba(5,22,50,.98))!important;
    color:#f4fbff!important;
    font-weight:950!important;
    letter-spacing:.01em!important;
    box-shadow:inset 0 0 22px rgba(37,216,255,.10),0 8px 20px rgba(0,0,0,.18)!important;
  }
  .aio-nav-links .aio-mobile-menu-login:hover{
    color:#fff!important;
    border-color:rgba(37,216,255,.78)!important;
    background:linear-gradient(135deg,rgba(8,104,213,.98),rgba(37,216,255,.92))!important;
  }
}

