/* =========================================
   Consultant Cards — Landscape Layout (Final Safe Version)
   - 1 card per row
   - Prevent clipping
   - No impact on calendar/modals/dashboard
   ========================================= */

/* Force single-column layout */
.cards {
  grid-template-columns: 1fr !important;
  gap: 16px;
}

/* Landscape card spacing */
.consult-card {
  padding: 16px !important;
  min-height: 180px;
}

/* Allow text to wrap safely */
.consult-card h3,
.consult-card .tagline {
  word-break: break-word;
  max-width: 100%;
}

/* Prevent pills from breaking layout */
.consult-card .badge,
.consult-card .pill {
  white-space: nowrap;
}

/* Prevent long values from overflowing */
.consult-card .kv {
  max-width: 100%;
  row-gap: 8px;
}

.consult-card .kv .badge {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Ensure rating line never wraps awkwardly */
.consult-card .stars {
  white-space: nowrap;
}

/* Keep card hover polish */
.consult-card:hover {
  transform: translateY(-2px);
}

/* Improve internal breathing room */
.consult-card .body {
  padding-top: 10px;
}
/* =========================================
   FIX: Prevent vertical name wrapping
   ========================================= */

.consult-card h3 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: normal !important;
}

.consult-card .meta {
  min-width: 180px;
}

.consult-card {
  align-items: center;
}
/* =========================================
   FINAL FIX — Contain right edge overflow
   ========================================= */

.consult-card {
  overflow: hidden;
}

.consult-card .body,
.consult-card .kv {
  max-width: 100%;
}

.consult-card .kv {
  flex-wrap: wrap;
}

/* Prevent pills from pushing past edge */
.consult-card .badge,
.consult-card .pill {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* =========================================
   HARD CONTAINMENT FIX — Right Edge Glow
   ========================================= */

.consult-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

/* Ensure child glow effects don't bleed */
.consult-card * {
  max-width: 100%;
}

/* Contain the CTA button glow */
.consult-card .btn.primary {
  position: relative;
  z-index: 1;
}
.consult-card .btn.primary {
  align-self: flex-start;
}
