/* Container basics */
.bcfh-condolence-form,
.bcfh-condolences {
    max-width: 48rem;
    margin: 1.5rem 0;
}

/* Alerts */
.bcfh-alert {
    padding: .75rem 1rem;
    border: 1px solid #cbd5e1;
    border-radius: .375rem;
    background: #f1f5f9;
    margin-bottom: 1rem;
}
.bcfh-alert-info {}

/* Form fields */
.bcfh-form .bcfh-field {
    margin: 0 0 1rem 0;
}
.bcfh-form label {
    display: inline-block;
    font-weight: 600;
    margin-bottom: .25rem;
}
.bcfh-form input[type="text"],
.bcfh-form input[type="email"],
.bcfh-form textarea {
    width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: .375rem;
    padding: .625rem .75rem;
    line-height: 1.4;
}
.bcfh-form input[aria-invalid="true"],
.bcfh-form textarea[aria-invalid="true"] {
    border-color: #dc2626;
    outline: none;
    box-shadow: 0 0 0 .125rem rgba(220, 38, 38, .15);
}

.bcfh-check {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

/* Error summary */
.bcfh-errors {
    border: 1px solid #dc2626;
    background: #fef2f2;
    color: #7f1d1d;
    border-radius: .375rem;
    padding: .75rem 1rem;
    margin-bottom: 1rem;
}
.bcfh-errors ul {
    margin: .5rem 0 0 1.25rem;
}

/* Counter + actions */
.bcfh-counter {
    display: block;
    margin-top: .25rem;
    opacity: .75;
}
.bcfh-actions {
    margin-top: 1rem;
}
.bcfh-submit {
    appearance: none;
    border: 1px solid #0f172a;
    background: #0f172a;
    color: #fff;
    padding: .6rem 1rem;
    border-radius: .375rem;
    cursor: pointer;
}
.bcfh-submit[disabled] {
    opacity: .6;
    cursor: not-allowed;
}

/* List */
.bcfh-condolence-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.bcfh-condolence {
    border-top: 1px solid #e2e8f0;
    padding: 1.25rem 0;
}
.bcfh-condolence:first-child {
    border-top: 0;
}
.bcfh-condolence-byline {
    font-size: .95rem;
    margin-top: .625rem;
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    color:#000;
    font-style: italic;
}
.bcfh-condolence-date {
    color: #9fa6b4;
}

/* Pagination */
.bcfh-pagination .page-numbers {
    list-style: none;
    display: flex;
    gap: .5rem;
    padding: 0;
    margin: 1rem 0 0 0;
}
.bcfh-pagination .page-numbers a {
    display: inline-block;
    padding: .35rem .6rem;
    border: 1px solid #cbd5e1;
    border-radius: .375rem;
    text-decoration: none;
}
.bcfh-pagination .page-numbers .current {
    background: #0f172a;
    color: #fff;
    border-color: #0f172a;
}

/* Focus ring */
.bcfh-condolences a:focus,
.bcfh-form input:focus,
.bcfh-form textarea:focus,
.bcfh-submit:focus {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
}

.bcfh-badge{display:inline-block;padding:.15rem .4rem;border-radius:.25rem;border:1px solid #cbd5e1;font-size:11px;line-height:1}
.bcfh-badge--public{background:#ecfdf5;border-color:#34d399;color:#065f46}
.bcfh-badge--private{background:#fef2f2;border-color:#fca5a5;color:#7f1d1d}
