/* Selbsthilfegruppe – Vereinsfarben (Kontaktformular) */
body.kontakt-form-kompakt {
    --shg-orange: #e95d0f;
    --shg-orange-dark: #c44e0c;
    --shg-petrol-dark: #1f4f4b;
    --shg-petrol: #4d8f8a;
    --shg-petrol-header: #c5e3e0;
    --shg-petrol-soft: #e8f4f3;
    --shg-petrol-nav: #dceeea;
    --shg-orange-soft: #fdeee4;

    /* Filament-Primärfarbe = Orange (nur diese Seite) */
    --primary-50: #fef6f1;
    --primary-100: #fdeee4;
    --primary-200: #fad4bd;
    --primary-300: #f5b08a;
    --primary-400: #ef8a4f;
    --primary-500: #e95d0f;
    --primary-600: #d4530d;
    --primary-700: #b8480b;
    --primary-800: #973a09;
    --primary-900: #7a2f07;
    --primary-950: #421604;
}

body.kontakt-form-kompakt .fi-main {
    max-width: 72rem;
}

body.kontakt-form-kompakt .fi-page-header {
    margin-bottom: 0.75rem;
}

/* —— Kopfzeile: wie Formular-Sektionen (zwei Kästchen + Navigation) —— */
body.kontakt-form-kompakt .fi-header,
.fi-header.kontakt-edit-header {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0.75rem;
    width: 100%;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
}

/* Karten-Stil wie Stammdaten / Foto */
.fi-header.kontakt-edit-header .kontakt-header-card,
body.kontakt-form-kompakt .kontakt-header-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 1px solid var(--shg-petrol-header);
    border-left: 4px solid var(--shg-orange);
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 2px rgb(77 143 138 / 0.08);
}

.fi-header.kontakt-edit-header .kontakt-header-card-header,
body.kontakt-form-kompakt .kontakt-header-card-header {
    background: var(--shg-petrol-header);
    padding: 0.55rem 1rem;
    border-bottom: 1px solid color-mix(in srgb, var(--shg-petrol) 25%, #fff);
    color: var(--shg-petrol-dark);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.fi-header.kontakt-edit-header .kontakt-header-card-body,
body.kontakt-form-kompakt .kontakt-header-card-body {
    padding: 0.75rem 1rem;
    background: #fff;
    flex: 1;
}

/* Kopfzeile Kontakt (volle Breite, Export liegt im Hauptmenü) */
.fi-header.kontakt-edit-header .kontakt-header-top,
body.kontakt-form-kompakt .kontakt-header-top {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0.75rem;
    width: 100% !important;
    align-items: stretch;
}

.fi-header.kontakt-edit-header .kontakt-header-left,
body.kontakt-form-kompakt .kontakt-header-left {
    grid-column: 1;
}

.fi-header.kontakt-edit-header .kontakt-header-right,
body.kontakt-form-kompakt .kontakt-header-right {
    grid-column: 2;
}

.fi-header.kontakt-edit-header .kontakt-header-card-body-actions,
body.kontakt-form-kompakt .kontakt-header-card-body-actions {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    justify-content: center;
}

.fi-header.kontakt-edit-header .kontakt-header-export-item,
body.kontakt-form-kompakt .kontakt-header-export-item {
    display: block;
    width: 100%;
}

.fi-header.kontakt-edit-header .kontakt-header-export-item .fi-ac,
body.kontakt-form-kompakt .kontakt-header-export-item .fi-ac {
    display: block !important;
    width: 100%;
}

.fi-header.kontakt-edit-header .kontakt-header-right .fi-btn,
body.kontakt-form-kompakt .kontakt-header-right .fi-btn {
    width: 100%;
    justify-content: flex-start;
    font-size: 0.8125rem;
    white-space: normal;
    text-align: left;
    height: auto;
    min-height: 2.25rem;
    padding-block: 0.45rem;
    line-height: 1.3;
    background: var(--shg-petrol-soft);
    border: 1px solid var(--shg-petrol-header);
    color: var(--shg-petrol-dark);
}

.fi-header.kontakt-edit-header .kontakt-header-right .fi-btn:hover,
body.kontakt-form-kompakt .kontakt-header-right .fi-btn:hover {
    border-color: var(--shg-orange);
    color: var(--shg-orange-dark);
    background: #fff;
}

body.kontakt-form-kompakt .fi-header-heading {
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
}

body.kontakt-form-kompakt .kontakt-heading-line {
    display: inline;
    font-size: 1.5rem;
    line-height: 1.3;
    color: var(--shg-petrol-dark);
    word-break: break-word;
}

body.kontakt-form-kompakt .kontakt-heading-nachname,
body.kontakt-form-kompakt .kontakt-heading-vorname {
    font-weight: 700;
}

body.kontakt-form-kompakt .fi-header-subheading {
    font-size: 0.875rem;
    margin-top: 0.4rem;
    max-width: none;
    color: var(--shg-petrol);
    font-weight: 600;
}

.fi-header.kontakt-edit-header .kontakt-header-toolbar,
body.kontakt-form-kompakt .kontakt-header-toolbar {
    width: 100%;
}

.fi-header.kontakt-edit-header .kontakt-header-card-body-nav > .fi-ac,
body.kontakt-form-kompakt .kontakt-header-card-body-nav > .fi-ac,
body.kontakt-form-kompakt .kontakt-header-toolbar > .fi-ac {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-start;
    align-items: center;
}

body.kontakt-form-kompakt .kontakt-header-card-body-nav .fi-ac > .kontakt-header-close-btn,
body.kontakt-form-kompakt .kontakt-header-card-body-nav .fi-ac > :last-child {
    margin-inline-start: auto;
}

body.kontakt-form-kompakt .kontakt-header-close-btn.fi-btn {
    font-weight: 600;
    border-color: var(--shg-petrol-header);
    background: #fff;
}

body.kontakt-form-kompakt .kontakt-header-close-btn.fi-btn:hover {
    border-color: var(--shg-orange);
    color: var(--shg-orange-dark);
}

body.kontakt-form-kompakt .kontakt-nav-btn.fi-btn {
    font-weight: 600;
    min-width: 7.5rem;
}

body.kontakt-form-kompakt .kontakt-nav-position.fi-btn {
    pointer-events: none;
    font-weight: 700;
    color: var(--shg-petrol);
    background: #f3faf9;
    border-color: #c5e3e0;
    min-width: 8rem;
    justify-content: center;
}

body.kontakt-form-kompakt .kontakt-nav-position.fi-btn[disabled] {
    opacity: 1;
}

.fi-header.kontakt-edit-header .kontakt-header-card-body-nav .fi-ac-select-action,
body.kontakt-form-kompakt .kontakt-header-card-body-nav .fi-ac-select-action,
body.kontakt-form-kompakt .kontakt-header-toolbar .fi-ac-select-action {
    flex: 1 1 11rem;
    min-width: 9rem;
    max-width: 100%;
}

.fi-header.kontakt-edit-header .kontakt-header-card-body-nav .fi-ac-select-action .fi-select-input,
body.kontakt-form-kompakt .kontakt-header-card-body-nav .fi-ac-select-action .fi-select-input,
body.kontakt-form-kompakt .kontakt-header-toolbar .fi-ac-select-action .fi-select-input {
    width: 100%;
    max-width: 100%;
    font-size: 0.875rem;
}

@media (min-width: 640px) {
    .fi-header.kontakt-edit-header .kontakt-header-card-body-nav .fi-ac-select-action,
    body.kontakt-form-kompakt .kontakt-header-card-body-nav .fi-ac-select-action,
    body.kontakt-form-kompakt .kontakt-header-toolbar .fi-ac-select-action {
        flex: 1 1 14rem;
        max-width: 20rem;
    }
}

@media (max-width: 768px) {
    .fi-header.kontakt-edit-header .kontakt-header-top,
    body.kontakt-form-kompakt .kontakt-header-top {
        grid-template-columns: 1fr !important;
    }

    .fi-header.kontakt-edit-header .kontakt-header-left,
    .fi-header.kontakt-edit-header .kontakt-header-right,
    body.kontakt-form-kompakt .kontakt-header-left,
    body.kontakt-form-kompakt .kontakt-header-right {
        grid-column: 1;
    }

}

body.kontakt-form-kompakt .fi-header-actions-ctn {
    width: 100%;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: #fff;
    border-top: 1px solid var(--shg-petrol-header);
}

body.kontakt-form-kompakt .fi-header-actions-ctn > .fi-ac {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.5rem;
}

body.kontakt-form-kompakt .fi-ac-select-action {
    flex: 1 1 11rem;
    min-width: 9rem;
    max-width: 100%;
}

body.kontakt-form-kompakt .fi-ac-select-action .fi-select-input {
    width: 100%;
    max-width: 100%;
    font-size: 0.875rem;
    padding-block: 0.4rem;
    text-overflow: ellipsis;
    border-color: var(--shg-petrol-header);
    background: #fff;
}

body.kontakt-form-kompakt .fi-ac-select-action label.fi-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

body.kontakt-form-kompakt .fi-header .fi-icon-btn {
    color: var(--shg-petrol-dark);
}

body.kontakt-form-kompakt .fi-header .fi-icon-btn:hover {
    color: var(--shg-orange);
    background: rgb(233 93 15 / 0.12);
}

@media (min-width: 640px) {
    body.kontakt-form-kompakt .fi-ac-select-action {
        flex: 1 1 14rem;
        max-width: 20rem;
    }
}

/* —— Sektionen: Petrol-Kopfleiste, Orange-Streifen links —— */
body.kontakt-form-kompakt .fi-sc-section > .fi-section {
    border: 1px solid var(--shg-petrol-header);
    border-left: 4px solid var(--shg-orange);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 2px rgb(77 143 138 / 0.08);
}

body.kontakt-form-kompakt .fi-section-header {
    background: var(--shg-petrol-header);
    padding: 0.55rem 1rem;
    border-bottom: 1px solid color-mix(in srgb, var(--shg-petrol) 25%, #fff);
}

body.kontakt-form-kompakt .fi-section-header-heading {
    color: var(--shg-petrol-dark);
    font-size: 0.95rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body.kontakt-form-kompakt .fi-section-description {
    color: var(--shg-petrol);
    font-size: 0.8rem;
}

body.kontakt-form-kompakt .fi-section {
    --fi-section-padding: 0.75rem 1rem;
}

body.kontakt-form-kompakt .fi-section-content {
    gap: 0.5rem 0.75rem;
    padding-top: 0.65rem;
    background: #fff;
}

body.kontakt-form-kompakt .fi-fo-field-wrp-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--shg-petrol-dark);
}

body.kontakt-form-kompakt .fi-input-wrp,
body.kontakt-form-kompakt .fi-fo-checkbox {
    --fi-input-padding-block: 0.35rem;
}

body.kontakt-form-kompakt .fi-input-wrp:focus-within {
    border-color: var(--shg-orange);
    box-shadow: 0 0 0 2px rgb(233 93 15 / 0.2);
}

body.kontakt-form-kompakt .fi-fo-textarea textarea {
    min-height: 3.5rem;
}

body.kontakt-form-kompakt .kontakt-foto-box {
    min-height: 5rem;
    padding: 0.5rem;
    border: 2px solid var(--shg-petrol-header);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--shg-petrol);
    font-size: 0.8125rem;
    background: var(--shg-petrol-soft);
}

body.kontakt-form-kompakt .kontakt-foto-box img {
    max-width: 100%;
    max-height: 7.5rem;
    object-fit: contain;
    border-radius: 0.375rem;
    display: block;
    margin: 0 auto;
}

/* Kontakthistorie – kompakt */
body.kontakt-form-kompakt .fi-resource-relation-managers {
    margin-top: 0.5rem;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-ctn {
    border-radius: 8px;
    border-left: 4px solid var(--shg-orange);
    box-shadow: 0 1px 2px rgb(77 143 138 / 0.08);
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header {
    padding: 0.45rem 0.75rem;
    gap: 0.15rem;
    background: var(--shg-petrol-header);
    border-bottom: 1px solid color-mix(in srgb, var(--shg-petrol) 25%, #fff);
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header-heading {
    font-size: 0.9rem;
    line-height: 1.25;
    font-weight: 700;
    color: var(--shg-petrol-dark);
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header.fi-ta-header-adaptive-actions-position {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header .fi-ta-actions {
    margin-inline-start: auto;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header-toolbar {
    padding: 0.35rem 0.75rem;
    gap: 0.35rem;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-search-field .fi-input-wrp {
    min-height: 2rem;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-search-field input {
    font-size: 0.8125rem;
    padding-block: 0.25rem;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-header-cell {
    background: var(--shg-petrol-header);
    color: var(--shg-petrol-dark);
    font-weight: 700;
    font-size: 0.75rem;
    padding: 0.3rem 0.5rem !important;
    border-bottom: 1px solid color-mix(in srgb, var(--shg-petrol) 30%, #fff);
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-text:not(.fi-inline) {
    padding: 0.2rem 0.5rem !important;
    font-size: 0.8125rem;
    line-height: 1.3;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-cell {
    padding: 0 !important;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-row:nth-child(even) {
    background: var(--shg-petrol-soft);
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-pagination {
    display: none;
}

body.kontakt-form-kompakt .fi-resource-relation-manager .fi-ta-empty-state {
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
}

/* „1. Kontakt durch:“ – Orange-Kopf, heller Inhalt */
body.kontakt-form-kompakt .kennengelernt1-access.fi-section {
    border-left-color: var(--shg-petrol);
}

body.kontakt-form-kompakt .kennengelernt1-access.fi-section .fi-section-header {
    background: var(--shg-orange);
}

body.kontakt-form-kompakt .kennengelernt1-access.fi-section .fi-section-header-heading {
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 700;
}

body.kontakt-form-kompakt .kennengelernt1-access.fi-section .fi-section-content {
    border: none;
    background-color: var(--shg-orange-soft);
    padding: 0.65rem 0.85rem;
    margin-top: 0;
}

body.kontakt-form-kompakt .kennengelernt1-access .fi-fo-radio {
    gap: 0.2rem;
}

body.kontakt-form-kompakt .kennengelernt1-access .fi-fo-radio-label {
    color: var(--shg-petrol-dark);
    font-size: 0.875rem;
    font-weight: 600;
}

body.kontakt-form-kompakt .kennengelernt-optionen {
    align-content: start;
    gap: 0.4rem;
    padding-top: 0.25rem;
}

@media (min-width: 1024px) {
    body.kontakt-form-kompakt .kennengelernt-optionen {
        padding-top: 0.5rem;
        padding-left: 1rem;
    }
}

/* Formular-Aktionen unten ausgeblendet (Schließen liegt in der Navigation) */
body.kontakt-form-kompakt .fi-form-actions {
    display: none;
}

body.kontakt-form-kompakt .fi-form-actions .fi-btn.fi-color-primary {
    background-color: var(--shg-orange);
    border-color: var(--shg-orange);
    font-weight: 600;
    padding-inline: 1.25rem;
}

body.kontakt-form-kompakt .fi-form-actions .fi-btn.fi-color-primary:hover {
    background-color: var(--shg-orange-dark);
    border-color: var(--shg-orange-dark);
}

/* Pagination Kontakthistorie – aktive Seite Orange */
body.kontakt-form-kompakt .fi-pagination-item-button.fi-active {
    background-color: var(--shg-orange);
    border-color: var(--shg-orange);
    color: #fff;
}
