/**
 * Plugin Card Overrides
 * Stellt sicher, dass Plugin-Cards sich an Theme-Breite halten
 * 
 * @package IT_Expert_Hub
 * @version 1.0
 */

/* ================================================
   CARD-WRAPPER BESCHRÄNKUNGEN
   ================================================ */

/* Expert Cards */
.expert-card,
.expert-card-inner {
    max-width: 100%;
    box-sizing: border-box;
}

.expert-card {
    overflow: hidden;
}

/* Company Cards */
.company-card,
.company-card-inner {
    max-width: 100%;
    box-sizing: border-box;
}

.company-card {
    overflow: hidden;
}

/* Event Cards */
.event-card,
.event-card-inner {
    max-width: 100%;
    box-sizing: border-box;
}

/* ================================================
   GRID CONSTRAINTS
   ================================================ */

/* Alle Grid-Items dürfen nicht breiter als ihr Container sein */
.expert-cards-grid > *,
.company-cards-grid > *,
.event-cards-grid > * {
    max-width: 100%;
    min-width: 0; /* Verhindert Overflow bei langen Texten */
    box-sizing: border-box;
}

/* ================================================
   LIST VIEW CONSTRAINTS
   ================================================ */

.company-list-view > *,
.expert-list-view > *,
.event-list-view > * {
    max-width: 100%;
    box-sizing: border-box;
}

/* ================================================
   RESPONSIVE ÜBERSCHREIBUNGEN
   ================================================ */

@media (max-width: 768px) {
    /* Alle Cards volle Breite auf Mobile */
    .expert-card,
    .company-card,
    .event-card {
        width: 100%;
        max-width: 100%;
    }
}

/* ================================================
   TEXT OVERFLOW VERHINDERN
   ================================================ */

/* Verhindere dass lange Texte die Card-Breite sprengen */
.expert-card h2,
.expert-card h3,
.expert-card .expert-name,
.company-card h2,
.company-card h3,
.company-card .company-name,
.event-card h2,
.event-card h3 {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* URLs und E-Mails dürfen umbrechen */
.expert-card a,
.company-card a,
.event-card a {
    word-break: break-word;
}

/* ================================================
   BILDER BESCHRÄNKEN
   ================================================ */

.expert-card img,
.company-card img,
.event-card img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Company Logo spezifisch */
.company-logo,
.company-logo-column {
    max-width: 100%;
    overflow: hidden;
}

.company-logo img,
.company-logo-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* ================================================
   GRID LAYOUT FIX
   ================================================ */

/* Stelle sicher, dass Grid-Spalten nicht überlaufen */
.company-card-content-grid,
.expert-card-content-grid {
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(0, 1fr);
    gap: 20px;
    max-width: 100%;
}

@media (max-width: 768px) {
    .company-card-content-grid,
    .expert-card-content-grid {
        grid-template-columns: 1fr;
    }
}

/* ================================================
   FLEX CONTAINER FIX
   ================================================ */

/* Flex-Container in Cards dürfen nicht überlaufen */
.expert-card .expert-card-footer,
.company-card .company-card-footer,
.expert-social-links,
.company-social-links {
    max-width: 100%;
    min-width: 0;
    flex-wrap: wrap;
}
