/* ==========================================================================
   Aferoteka — katalog partii
   Entity-specific layer on top of 108-directory-listing.css.
   Scope: /partie
   ========================================================================== */

/* Filters ---------------------------------------------------------------- */

.parties-directory-filter-grid {
    grid-template-columns: minmax(150px, .72fr) minmax(220px, 1fr) minmax(320px, 1.55fr) auto;
}

/* Cards ------------------------------------------------------------------ */

.parties-directory-card-logo {
    color: var(--color-text-secondary);
    font-size: 25px;
    font-weight: 700;
}

.parties-directory-card-logo img { object-fit: contain; }

.parties-directory-card-title-row {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 7px 9px;
}

.parties-directory-card-title {
    min-width: 0;
    margin: 0;
}

.parties-directory-card-status {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 4px 8px;
    border-radius: 3px;
    background: #edf0f2;
    line-height: 1.2;
}

.parties-directory-card-status-dissolved {
    background: #f2eeee;
    color: #76575a;
}


.parties-directory-card-leader {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 5px;
    margin: 11px 0 0;
}

.parties-directory-card-leader strong,
.parties-directory-card-leader a {
    position: relative;
    z-index: 2;
    color: var(--color-text-primary);
    font-weight: 500;
}

.parties-directory-card-leader a:hover { color: var(--color-accent); }

.parties-directory-card-description {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    margin: 18px 0 20px;
}

.parties-directory-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: auto;
    padding-top: 20px;
    border-top: 1px solid var(--directory-listing-line-soft);
}

.parties-directory-card-members { min-width: 0; }

.parties-directory-card-relations {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 4px;
    margin: 0;
    text-align: right;
}

/* Responsive ------------------------------------------------------------- */

@media (max-width: 1060px) {
    .parties-directory-page .directory-listing-filter-submit { width: 100%; }
    .parties-directory-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .parties-directory-card-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .parties-directory-card-relations {
        justify-content: flex-start;
        text-align: left;
    }
}

@media (max-width: 800px) {
    .parties-directory-card-logo { font-size: 21px; }
    .parties-directory-card-description { margin: 16px 0 18px; }
}

@media (max-width: 560px) {
    .parties-directory-card-title-row { display: block; }
    .parties-directory-card-status { margin-top: 6px; }
    .parties-directory-card-leader { margin-top: 8px; }
    .parties-directory-card-footer { padding-top: 17px; }
}
