.dim-connected .connected-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
  gap: 1rem;
  margin-block: 1rem;
}
.dim-connected .connected-cards > article { padding: 1rem; overflow-wrap: anywhere; }
.dim-connected .candy-brand-heading { min-width: 0; overflow-wrap: anywhere; }
.dim-connected .candy-header [data-cloud="logout"] { align-self: center; }
.dim-connected .form-grid label { min-width: 0; }
.dim-connected .form-grid textarea { width: 100%; min-height: 5rem; }
.dim-connected .connected-preview { display:block; max-width:100%; max-height:28rem; object-fit:contain; }
.dim-connected .connected-publication .publication-preview {
  align-items: stretch;
  min-height: 0;
  max-height: none;
}
.dim-connected .connected-publication .publication-preview > .panel {
  width: 100%;
  margin: 0;
}
.dim-connected .connected-no-media {
  display: grid;
  place-items: center;
  min-height: 100%;
  padding: 1rem;
  color: #35115a;
  background: #f0e9fb;
}

.dim-connected .connected-brand-mark { display: grid; place-items: center; flex-shrink: 0; background: #efe4ff; color: #482075; border-radius: 1rem; font-weight: 800; }
.dim-connected .portal-brand .connected-brand-mark { width: 3rem; height: 3rem; }
.dim-connected .candy-brand-logo.connected-brand-mark { font-size: clamp(1rem, 3vw, 2.5rem); }

/* Connected client branding. The approved DEMO retains its own stylesheet. */
.candy-portal .dim-connected {
  background: var(--dim-page);
  color: var(--dim-ink);
  --border: var(--dim-border);
  --muted: var(--dim-muted);
}
.candy-portal .dim-connected[data-theme="dark"] { color-scheme: dark; }
.candy-portal .dim-connected .portal-sidebar,
.candy-portal .dim-connected .portal-brand,
.candy-portal .dim-connected .portal-brand small,
.candy-portal .dim-connected .sidebar-section-label,
.candy-portal .dim-connected .atlas-signature,
.candy-portal .dim-connected .nav-item {
  background: var(--dim-primary);
  color: var(--dim-on-primary);
}
.candy-portal .dim-connected .nav-item:is(.active,:hover) {
  background: var(--dim-accent);
  color: var(--dim-on-accent);
  box-shadow: none;
}
.candy-portal .dim-connected .candy-header {
  background: var(--dim-secondary);
  color: var(--dim-on-secondary);
}
.candy-portal .dim-connected .candy-brand-heading p,
.candy-portal .dim-connected .mobile-menu { color: inherit; }
.candy-portal .dim-connected :is(.candy-brand-logo,.portal-brand-logo) {
  object-fit: contain;
  background: var(--dim-surface);
  color: var(--dim-ink);
  box-shadow: none;
}
.candy-portal .dim-connected main { background: none; }
.candy-portal .dim-connected :is(.panel,.content-card,.campaign-card,.publication-body,.publication-footer,input,select,textarea,.button) {
  background: var(--dim-surface);
  color: var(--dim-ink);
  border-color: var(--dim-border);
  box-shadow: none;
}
.candy-portal .dim-connected :is(.publication-header,.connected-no-media,.demo-notice,.calendar-grid,.badge) {
  background: var(--dim-soft);
  color: var(--dim-ink);
  border-color: var(--dim-border);
}
.candy-portal .dim-connected :is(.calendar-days > *,.calendar-weekdays > *, .calendar-day,.calendar-event-copy) {
  background: var(--dim-surface);
  color: var(--dim-ink);
  border-color: var(--dim-border);
}
.candy-portal .dim-connected :is(.eyebrow,.breadcrumb,.breadcrumb strong,.breadcrumb i,footer,.card-copy > small,.card-date,.publication-meta,.campaign-range,.campaign-body p,.publication-header span) {
  color: var(--dim-muted);
}
.candy-portal .dim-connected :is(.button.primary,.picture-format,.card-status .badge) {
  background: var(--dim-accent);
  color: var(--dim-on-accent);
}
.candy-portal .dim-connected :focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.candy-portal .dim-connected :is(.empty-state,.month-calendar,.card-picture,.campaign-cover,.publication-preview) {
  background: var(--dim-surface);
  color: var(--dim-ink);
}
.candy-portal .dim-connected :is(.weekdays,.calendar-day.today,.calendar-day.outside) {
  background: var(--dim-soft);
  color: var(--dim-ink);
}
.candy-portal .dim-connected :is(.empty-state p,.empty-state svg,.calendar-day time) {
  color: var(--dim-muted);
}

/* Real business names may be longer than the DEMO name. */
@media (max-width: 760px) {
  .candy-portal .dim-connected .candy-header {
    height: auto;
    min-height: 178px;
  }
  .candy-portal .dim-connected .candy-brand-heading h2 {
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .candy-portal .dim-connected .panel > label {
    display: flex;
    flex-direction: column;
    gap: .4rem;
    min-width: 0;
  }
  .candy-portal .dim-connected .panel > label :is(select,input) {
    max-width: 100%;
    min-width: 0;
  }
}
