/*
YOPT_DEV_STAMP_START
{
  "title": "Mitgliederverwaltung – Members",
  "short_description": "Stylesheet für Mitgliederverwaltung.",
  "development_status": "development",
  "phase_number": 13,
  "work_status": "development",
  "development_started": "2026-06-09",
  "last_file_modified": "2026-06-10 16:30:59",
  "plugin_affiliation": "yop-vereinssuite",
  "module_affiliation": "members",
  "function_affiliation": "members",
  "subfunction_affiliation": "members",
  "release_date": "",
  "last_extension": "2026-06-10 16:30:59",
  "development_version": "0.1.0-foundation",
  "area_type": "design"
}
YOPT_DEV_STAMP_END
*/

/*
YOPT_FEATURE_STAMP_START
{
  "stamp_type": "feature",
  "stamp_version": "1.0.0",
  "file": "assets/css/modules/members.css",
  "plugin": "Vereinssuite",
  "project_id": "yop-vereinssuite",
  "module": {
    "name": "Mitgliederverwaltung",
    "key": "members",
    "description": "Zentrale Verwaltung von Mitgliedern, Stammdaten, Status, Historie, Dokumenten, Beiträgen und Verknüpfungen."
  },
  "feature": {
    "name": "Mitgliederverwaltung – Members",
    "key": "members",
    "type": "function",
    "description": "Diese Datei unterstützt die technische Umsetzung von Mitgliederverwaltung.",
    "responsibility": "Diese Datei ist für den Bereich Stylesheet innerhalb von Mitgliederverwaltung zuständig."
  },
  "subfeature": {
    "name": "members",
    "key": "members",
    "description": "Unterfunktion beziehungsweise Datei-Komponente: members.css."
  },
  "function_catalog": {
    "visible": false,
    "target": "developer",
    "title": "Mitgliederverwaltung – Members",
    "category": "Mitgliederverwaltung",
    "short_text": "Technische Datei für Mitgliederverwaltung.",
    "description": "Diese Datei unterstützt die technische Umsetzung von Mitgliederverwaltung.",
    "benefit": "Diese technische Struktur unterstützt eine saubere, wartbare und erweiterbare Entwicklung.",
    "sort_order": 10,
    "highlight": false,
    "show_in_backend": false,
    "show_in_frontend": false,
    "show_for_website_visitors": false,
    "show_for_customers": false,
    "show_for_developers": true,
    "show_for_interested_users": false
  },
  "technical_context": {
    "area": "design",
    "view_type": "stylesheet",
    "execution_type": "backend_logic",
    "supports_ajax": false,
    "supports_rest_api": false,
    "supports_gutenberg": false,
    "supports_elementor": true
  },
  "user_context": {
    "user_roles": [
      "administrator",
      "club_manager"
    ],
    "permissions_required": [
      "manage_options"
    ]
  },
  "data_context": {
    "data_objects": [
      "Mitgliederverwaltung"
    ],
    "input_data": [],
    "output_data": [
      "Mitgliederverwaltung – Members"
    ],
    "related_database_tables": []
  },
  "process_context": {
    "main_actions": [
      "Mitgliederverwaltung vorbereiten",
      "Stylesheet laden",
      "Ausgabe oder Verarbeitung vorbereiten"
    ],
    "dependencies": [],
    "related_templates": [],
    "related_assets": []
  },
  "security_context": {
    "security_requirements": [
      "Berechtigung prüfen",
      "Ausgaben escapen",
      "Eingaben sanitizen"
    ],
    "privacy_relevance": true,
    "privacy_notes": "Diese Datei kann je nach Modul personenbezogene oder vereinsinterne Daten betreffen."
  },
  "development_context": {
    "status": "development",
    "priority": "high",
    "phase_number": 13,
    "is_core_feature": true,
    "is_optional_feature": false,
    "is_pro_feature": false,
    "last_function_update": "2026-06-09",
    "notes": "Scanner-kompatibler Funktionsstempel für die Entwicklungsübersicht."
  }
}
YOPT_FEATURE_STAMP_END
*/

/**
 * Entwicklungsstempel
 *
 * Projekt: Vereinssuite
 * Plugin-Slug: yop-vereinssuite
 * Datei: assets/css/modules/members.css
 * Dateityp: CSS
 * Modul: Mitgliederverwaltung
 * Modul-Slug: members
 * Version: 0.1.0-foundation
 * Status: in Entwicklung
 * Erstellt am: 2026-06-09
 * Letzte Änderung: 2026-06-09
 * Entwicklerkennung: YOPT-DEV
 * Beschreibung: Styling für die erste testbare Mitgliederverwaltung.
 * Produktiv aktiv: ja
 */

.yvm-members-toolbar {
    margin: 16px 0;
}

.yvm-members-filter-form {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.yvm-members-filter-form input[type="search"] {
    min-width: 320px;
}

.yvm-members-layout {
    display: grid;
    grid-template-columns: minmax(320px, 420px) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.yvm-card {
    background: #fff;
    border: 1px solid #dcdcde;
    border-radius: 8px;
    padding: 18px;
}

.yvm-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.yvm-form-grid p,
.yvm-members-form p {
    margin: 0 0 12px;
}

.yvm-members-form label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}

.yvm-members-form input,
.yvm-members-form select,
.yvm-members-form textarea {
    width: 100%;
    max-width: 100%;
}

.yvm-status {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 999px;
    background: #f0f0f1;
    font-size: 12px;
    font-weight: 600;
}

.yvm-status-active {
    background: #d1f5d3;
}

.yvm-status-passive {
    background: #e8f0ff;
}

.yvm-status-pending {
    background: #fff4ce;
}

.yvm-status-archived {
    background: #f1d0d0;
}

@media (max-width: 1100px) {
    .yvm-members-layout {
        grid-template-columns: 1fr;
    }
}

.yvm-member-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
    gap: 20px;
    align-items: start;
    margin-top: 16px;
}

.yvm-member-notes-card {
    margin-top: 20px;
}

.yvm-member-notes-list {
    display: grid;
    gap: 12px;
}

.yvm-member-note {
    border: 1px solid #dcdcde;
    border-radius: 8px;
    background: #fff;
    padding: 14px;
}

.yvm-member-note header {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
}

.yvm-note-type {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    background: #f0f0f1;
    font-size: 12px;
    font-weight: 600;
}

.yvm-member-note-content {
    line-height: 1.5;
}

@media (max-width: 1100px) {
    .yvm-member-detail-grid {
        grid-template-columns: 1fr;
    }
}


/* Mitglieder Step 4: Bereich und Position */
.yvm-members-table small {
    color: #646970;
}

.yvm-members-form optgroup {
    font-weight: 700;
}

.yvm-members-filter-form select {
    max-width: 260px;
}


/* =========================================================
 * Mitglieder Step 5: Benutzerkonto-Verknüpfung
 * ========================================================= */

.yvm-linked-user-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border-radius: 999px;
    background: #eef6ff;
    color: #184e77;
    font-size: var(--yopt-font-size-badge, 10.5px);
    line-height: 1.2;
    font-weight: 800;
}

.yvm-linked-user-pill-empty {
    background: #f2f4f7;
    color: #667085;
}


/* Step 9.7 – getrennte Mitglieder-Masken */
.yvm-members-screen {
    display: block;
}

.yvm-members-screen-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
    padding: 18px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #ffffff;
}

.yvm-members-screen-header h2 {
    margin: 0 0 6px;
    font-size: 18px;
    line-height: 1.3;
}

.yvm-members-screen-header p {
    margin: 0;
    color: #666666;
    font-size: 14px;
}

.yvm-members-screen-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.yvm-members-new-button {
    white-space: nowrap;
}

.yvm-members-screen-create .yvm-members-form,
.yvm-members-screen-edit .yvm-members-form {
    max-width: none;
}

.yvm-members-screen-create .yvm-form-grid,
.yvm-members-screen-edit .yvm-form-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1100px) {
    .yvm-members-screen-create .yvm-form-grid,
    .yvm-members-screen-edit .yvm-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .yvm-members-screen-header {
        flex-direction: column;
    }

    .yvm-members-screen-actions {
        justify-content: flex-start;
    }

    .yvm-members-screen-create .yvm-form-grid,
    .yvm-members-screen-edit .yvm-form-grid {
        grid-template-columns: 1fr;
    }
}


/* Step 9.8 – fachlich strukturierte Mitgliederformulare */
.yvm-member-form-structured {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.yvm-member-form-section {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: #ffffff;
    padding: 18px;
}

.yvm-member-form-section-head {
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eeeeee;
}

.yvm-member-form-section-head h3 {
    margin: 0 0 5px;
    font-size: 16px;
    line-height: 1.3;
    color: #1f2937;
}

.yvm-member-form-section-head p {
    margin: 0;
    color: #666666;
    font-size: 13px;
    line-height: 1.45;
}

.yvm-member-form-section .yvm-form-grid {
    margin: 0;
}

.yvm-member-form-section p {
    margin-top: 0;
}

.yvm-member-form-section-notes textarea {
    width: 100%;
    min-height: 130px;
}

.yvm-member-form-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    position: sticky;
    bottom: 0;
    z-index: 5;
    margin-top: 2px;
    padding: 14px 18px;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 -8px 20px rgba(0, 0, 0, 0.04);
}

.yvm-form-grid-account {
    grid-template-columns: 2fr 1fr;
}

@media (max-width: 900px) {
    .yvm-form-grid-account {
        grid-template-columns: 1fr;
    }

    .yvm-member-form-actions {
        position: static;
    }
}


/* Step 9.9 – strukturierte Mitglied-Detailmaske */
.yvm-member-detail-hero {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
    padding: 18px;
}

.yvm-member-detail-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: #f3f4f6;
    color: #1f2937;
    font-size: 20px;
    font-weight: 700;
    flex: 0 0 auto;
}

.yvm-member-detail-main {
    flex: 1 1 auto;
}

.yvm-member-detail-main h3 {
    margin: 0 0 4px;
    font-size: 18px;
    line-height: 1.3;
}

.yvm-member-detail-main p {
    margin: 0;
    color: #666666;
    font-size: 13px;
}

.yvm-member-detail-status {
    flex: 0 0 auto;
}

.yvm-member-detail-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 18px;
}

.yvm-member-detail-section {
    padding: 18px;
}

.yvm-member-detail-section-head {
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eeeeee;
}

.yvm-member-detail-section-head h3 {
    margin: 0 0 5px;
    font-size: 16px;
    line-height: 1.3;
    color: #1f2937;
}

.yvm-member-detail-section-head p {
    margin: 0;
    color: #666666;
    font-size: 13px;
    line-height: 1.45;
}

.yvm-member-detail-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.yvm-member-detail-field {
    padding: 12px;
    border: 1px solid #eeeeee;
    border-radius: 10px;
    background: #fafafa;
}

.yvm-member-detail-field-wide {
    grid-column: 1 / -1;
}

.yvm-member-detail-field span {
    display: block;
    margin-bottom: 4px;
    color: #666666;
    font-size: 12px;
}

.yvm-member-detail-field strong {
    display: block;
    color: #1f2937;
    font-size: 14px;
    line-height: 1.35;
    word-break: break-word;
}

.yvm-member-detail-note-box {
    padding: 12px;
    border: 1px solid #eeeeee;
    border-radius: 10px;
    background: #fafafa;
    color: #1f2937;
    font-size: 14px;
    line-height: 1.45;
    min-height: 54px;
}

.yvm-member-detail-note-box span {
    color: #666666;
}

.yvm-member-note-form {
    margin-bottom: 18px;
}

.yvm-member-notes-list-wrap h4 {
    margin: 18px 0 10px;
    font-size: 15px;
}

@media (max-width: 1100px) {
    .yvm-member-detail-sections {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .yvm-member-detail-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .yvm-member-detail-fields {
        grid-template-columns: 1fr;
    }
}


/* Step 9.11 – Modernes Mitglieder-UI nach YOptimize Plugin Standard */
.yvm-app-content .yvm-members-screen,
.yvm-app-content .yvm-members-screen * {
    box-sizing: border-box;
}

.yvm-app-content .yvm-members-screen {
    --yvm-members-primary: #1637b9;
    --yvm-members-primary-dark: #102a8d;
    --yvm-members-primary-soft: rgba(22, 55, 185, 0.08);
    --yvm-members-success: #16a34a;
    --yvm-members-success-soft: #dcfce7;
    --yvm-members-danger: #dc2626;
    --yvm-members-danger-soft: #fee2e2;
    --yvm-members-warning: #ca8a04;
    --yvm-members-warning-soft: #fef3c7;
    --yvm-members-border: #dbe3ef;
    --yvm-members-border-soft: #edf1f7;
    --yvm-members-text: #1f2937;
    --yvm-members-muted: #667085;
    --yvm-members-bg: #ffffff;
    --yvm-members-bg-soft: #f8fafc;
    --yvm-members-radius: 16px;
    --yvm-members-radius-sm: 11px;
    --yvm-members-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
    --yvm-members-shadow-soft: 0 8px 22px rgba(15, 23, 42, 0.045);
}

/* Kopfbereich der Mitglieder-Masken */
.yvm-app-content .yvm-members-screen-header {
    align-items: center;
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius);
    background:
        radial-gradient(circle at top right, rgba(22, 55, 185, 0.07), transparent 34%),
        linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    box-shadow: var(--yvm-members-shadow-soft);
    padding: 18px 20px;
}

.yvm-app-content .yvm-members-screen-header h2 {
    font-size: 18px;
    font-weight: 700;
    color: var(--yvm-members-text);
    letter-spacing: -0.01em;
}

.yvm-app-content .yvm-members-screen-header p {
    max-width: 760px;
    font-size: 13px;
    color: var(--yvm-members-muted);
}

.yvm-app-content .yvm-members-screen-actions {
    align-items: center;
}

/* Einheitliche Buttons */
.yvm-app-content .yvm-members-screen .button,
.yvm-app-content .yvm-members-screen button.button,
.yvm-app-content .yvm-members-screen input[type="submit"].button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 0 15px;
    border: 1px solid var(--yvm-members-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--yvm-members-text);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.yvm-app-content .yvm-members-screen .button:hover,
.yvm-app-content .yvm-members-screen button.button:hover,
.yvm-app-content .yvm-members-screen input[type="submit"].button:hover {
    transform: translateY(-1px);
    border-color: #c8d3e3;
    background: #f8fafc;
    color: var(--yvm-members-text);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

.yvm-app-content .yvm-members-screen .button.button-primary,
.yvm-app-content .yvm-members-screen button.button-primary,
.yvm-app-content .yvm-members-screen input[type="submit"].button-primary {
    border-color: var(--yvm-members-primary);
    background: linear-gradient(135deg, var(--yvm-members-primary), var(--yvm-members-primary-dark));
    color: #ffffff;
}

.yvm-app-content .yvm-members-screen .button.button-primary:hover,
.yvm-app-content .yvm-members-screen button.button-primary:hover,
.yvm-app-content .yvm-members-screen input[type="submit"].button-primary:hover {
    border-color: var(--yvm-members-primary-dark);
    background: linear-gradient(135deg, var(--yvm-members-primary-dark), #0b1f70);
    color: #ffffff;
}

/* Übersicht: Toolbar / Filter */
.yvm-app-content .yvm-members-toolbar {
    margin: 0 0 16px;
    padding: 14px;
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius);
    background: #ffffff;
    box-shadow: var(--yvm-members-shadow-soft);
}

.yvm-app-content .yvm-members-filter-form {
    display: grid;
    grid-template-columns: minmax(260px, 1.6fr) minmax(140px, 0.65fr) minmax(180px, 0.9fr) minmax(200px, 1fr) auto auto;
    gap: 10px;
    align-items: center;
}

.yvm-app-content .yvm-members-filter-form input[type="search"],
.yvm-app-content .yvm-members-filter-form select {
    width: 100%;
    min-height: 38px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--yvm-members-border);
    border-radius: 999px;
    background-color: #ffffff;
    color: var(--yvm-members-text);
    font-size: 13px;
    line-height: 1.2;
    box-shadow: none;
    outline: none;
}

.yvm-app-content .yvm-members-filter-form input[type="search"]:focus,
.yvm-app-content .yvm-members-filter-form select:focus {
    border-color: var(--yvm-members-primary);
    box-shadow: 0 0 0 3px var(--yvm-members-primary-soft);
}

/* Karten */
.yvm-app-content .yvm-members-screen .yvm-card,
.yvm-app-content .yvm-members-list,
.yvm-app-content .yvm-members-form,
.yvm-app-content .yvm-member-form-section,
.yvm-app-content .yvm-member-detail-section,
.yvm-app-content .yvm-member-notes-card {
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius);
    background: #ffffff;
    box-shadow: var(--yvm-members-shadow-soft);
}

/* Mitgliederliste als moderne Tabelle */
.yvm-app-content .yvm-members-list {
    overflow: hidden;
    padding: 0;
}

.yvm-app-content .yvm-members-list h2 {
    margin: 0;
    padding: 18px 20px 12px;
    font-size: 16px;
    font-weight: 700;
    color: var(--yvm-members-text);
}

.yvm-app-content table.yvm-members-table,
.yvm-app-content .yvm-members-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 0;
    background: #ffffff;
    font-size: 13px;
}

.yvm-app-content .yvm-members-table thead th {
    padding: 11px 14px;
    border: 0;
    border-top: 1px solid var(--yvm-members-border-soft);
    border-bottom: 1px solid var(--yvm-members-border-soft);
    background: #f8fafc;
    color: #475467;
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.yvm-app-content .yvm-members-table tbody td {
    padding: 12px 14px;
    border: 0;
    border-bottom: 1px solid var(--yvm-members-border-soft);
    color: var(--yvm-members-text);
    font-size: 13px;
    vertical-align: middle;
}

.yvm-app-content .yvm-members-table tbody tr {
    transition: background 0.15s ease;
}

.yvm-app-content .yvm-members-table tbody tr:hover {
    background: #f8fafc;
}

.yvm-app-content .yvm-members-table tbody tr:last-child td {
    border-bottom: 0;
}

.yvm-app-content .yvm-members-table small {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #1e3a8a;
    font-size: 11px;
    font-weight: 700;
}

.yvm-app-content .yvm-members-table td:last-child {
    white-space: nowrap;
}

.yvm-app-content .yvm-members-table td:last-child a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    margin: 2px 3px 2px 0;
    padding: 0 10px;
    border: 1px solid var(--yvm-members-border);
    border-radius: 999px;
    background: #ffffff;
    color: var(--yvm-members-text);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.yvm-app-content .yvm-members-table td:last-child a:hover {
    border-color: var(--yvm-members-primary);
    background: var(--yvm-members-primary-soft);
    color: var(--yvm-members-primary-dark);
}

/* Status Badges */
.yvm-app-content .yvm-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.yvm-app-content .yvm-status-active {
    background: var(--yvm-members-success-soft);
    color: #166534;
}

.yvm-app-content .yvm-status-passive {
    background: #e5e7eb;
    color: #374151;
}

.yvm-app-content .yvm-status-pending {
    background: var(--yvm-members-warning-soft);
    color: #92400e;
}

.yvm-app-content .yvm-status-archived {
    background: var(--yvm-members-danger-soft);
    color: #991b1b;
}

/* Strukturierte Formulare */
.yvm-app-content .yvm-member-form-structured {
    gap: 16px;
}

.yvm-app-content .yvm-member-form-section {
    padding: 18px 20px;
    overflow: hidden;
}

.yvm-app-content .yvm-member-form-section-head {
    margin: -2px 0 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--yvm-members-border-soft);
}

.yvm-app-content .yvm-member-form-section-head h3,
.yvm-app-content .yvm-member-detail-section-head h3 {
    font-size: 15px;
    font-weight: 700;
    color: var(--yvm-members-text);
    letter-spacing: -0.01em;
}

.yvm-app-content .yvm-member-form-section-head p,
.yvm-app-content .yvm-member-detail-section-head p {
    font-size: 13px;
    color: var(--yvm-members-muted);
}

.yvm-app-content .yvm-member-form-section label,
.yvm-app-content .yvm-member-note-form label {
    display: block;
    margin: 0 0 6px;
    color: #344054;
    font-size: 12px;
    font-weight: 700;
}

.yvm-app-content .yvm-member-form-section input[type="text"],
.yvm-app-content .yvm-member-form-section input[type="email"],
.yvm-app-content .yvm-member-form-section input[type="date"],
.yvm-app-content .yvm-member-form-section select,
.yvm-app-content .yvm-member-form-section textarea,
.yvm-app-content .yvm-member-note-form input[type="text"],
.yvm-app-content .yvm-member-note-form input[type="date"],
.yvm-app-content .yvm-member-note-form select,
.yvm-app-content .yvm-member-note-form textarea {
    width: 100%;
    min-height: 40px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius-sm);
    background-color: #ffffff;
    color: var(--yvm-members-text);
    font-size: 13px;
    line-height: 1.35;
    box-shadow: none;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.yvm-app-content .yvm-member-form-section textarea,
.yvm-app-content .yvm-member-note-form textarea {
    min-height: 120px;
    padding-top: 10px;
    padding-bottom: 10px;
    resize: vertical;
}

.yvm-app-content .yvm-member-form-section input:focus,
.yvm-app-content .yvm-member-form-section select:focus,
.yvm-app-content .yvm-member-form-section textarea:focus,
.yvm-app-content .yvm-member-note-form input:focus,
.yvm-app-content .yvm-member-note-form select:focus,
.yvm-app-content .yvm-member-note-form textarea:focus {
    border-color: var(--yvm-members-primary);
    box-shadow: 0 0 0 3px var(--yvm-members-primary-soft);
}

.yvm-app-content .yvm-member-form-section input[readonly],
.yvm-app-content .yvm-member-form-section input[aria-readonly="true"] {
    background: #f8fafc;
    color: #667085;
    cursor: not-allowed;
}

.yvm-app-content .yvm-member-form-section .description {
    display: block;
    margin-top: 6px;
    color: var(--yvm-members-muted);
    font-size: 12px;
    line-height: 1.35;
}

.yvm-app-content .yvm-member-form-actions {
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius);
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(10px);
}

/* Detailmaske */
.yvm-app-content .yvm-member-detail-hero {
    border: 1px solid var(--yvm-members-border);
    border-radius: var(--yvm-members-radius);
    background:
        radial-gradient(circle at top left, rgba(22, 55, 185, 0.08), transparent 34%),
        #ffffff;
    box-shadow: var(--yvm-members-shadow-soft);
}

.yvm-app-content .yvm-member-detail-avatar {
    background: linear-gradient(135deg, var(--yvm-members-primary), var(--yvm-members-primary-dark));
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(22, 55, 185, 0.18);
}

.yvm-app-content .yvm-member-detail-main h3 {
    font-size: 18px;
    font-weight: 800;
    color: var(--yvm-members-text);
}

.yvm-app-content .yvm-member-detail-section {
    padding: 18px 20px;
}

.yvm-app-content .yvm-member-detail-field {
    border: 1px solid var(--yvm-members-border-soft);
    border-radius: var(--yvm-members-radius-sm);
    background: #fbfdff;
}

.yvm-app-content .yvm-member-detail-field span {
    color: var(--yvm-members-muted);
    font-size: 11.5px;
    font-weight: 700;
}

.yvm-app-content .yvm-member-detail-field strong {
    color: var(--yvm-members-text);
    font-size: 13px;
    font-weight: 700;
}

.yvm-app-content .yvm-member-detail-note-box {
    border-color: var(--yvm-members-border-soft);
    border-radius: var(--yvm-members-radius-sm);
    background: #fbfdff;
}

/* Notizen / Protokolle */
.yvm-app-content .yvm-member-notes-card {
    padding: 18px 20px;
}

.yvm-app-content .yvm-member-note-form {
    padding: 14px;
    border: 1px solid var(--yvm-members-border-soft);
    border-radius: var(--yvm-members-radius);
    background: #fbfdff;
}

.yvm-app-content .yvm-member-note-form .yvm-form-grid {
    grid-template-columns: minmax(180px, 0.75fr) minmax(170px, 0.75fr) minmax(260px, 1.5fr);
}

.yvm-app-content .yvm-member-notes-list-wrap {
    margin-top: 18px;
}

.yvm-app-content .yvm-member-notes-list-wrap h4 {
    font-size: 15px;
    color: var(--yvm-members-text);
}

.yvm-app-content .yvm-member-note {
    border: 1px solid var(--yvm-members-border-soft);
    border-radius: var(--yvm-members-radius-sm);
    background: #ffffff;
}

/* Responsive */
@media (max-width: 1300px) {
    .yvm-app-content .yvm-members-filter-form {
        grid-template-columns: 1fr 1fr;
    }

    .yvm-app-content .yvm-members-filter-form input[type="search"] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .yvm-app-content .yvm-members-filter-form,
    .yvm-app-content .yvm-member-note-form .yvm-form-grid {
        grid-template-columns: 1fr;
    }

    .yvm-app-content .yvm-members-table {
        min-width: 980px;
    }

    .yvm-app-content .yvm-members-list {
        overflow-x: auto;
    }
}

@media (max-width: 760px) {
    .yvm-app-content .yvm-members-screen-header {
        align-items: flex-start;
    }

    .yvm-app-content .yvm-members-screen-actions {
        width: 100%;
    }

    .yvm-app-content .yvm-members-screen-actions .button,
    .yvm-app-content .yvm-members-new-button {
        width: 100%;
    }

    .yvm-app-content .yvm-member-form-actions .button {
        width: 100%;
    }
}


/* Step 9.12 – Final UI Override für Mitglieder-Masken */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-module-view .yvm-module-body .yvm-members-screen {
    width: 100%;
}

/* Header-Karte in den Mitglieder-Screens */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    min-height: 86px !important;
    margin: 0 0 18px !important;
    padding: 20px 22px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.055) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header > div:first-child {
    min-width: 0 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header h2 {
    margin: 0 0 6px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    color: #111827 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header p {
    margin: 0 !important;
    max-width: 760px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: #667085 !important;
}

/* Aktionsbereich rechts oben */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-actions,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header > .button,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header > a.button {
    flex: 0 0 auto !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* Alle Mitglieder-Buttons final überschreiben */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.button,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen button.button,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen input.button,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen .button,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.yvm-members-new-button {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #1f2937 !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: 0 5px 14px rgba(15, 23, 42, 0.055) !important;
    cursor: pointer !important;
    vertical-align: middle !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.button:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen button.button:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen input.button:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen .button:hover {
    border-color: #b8c5d8 !important;
    background: #f8fafc !important;
    color: #111827 !important;
    box-shadow: 0 9px 20px rgba(15, 23, 42, 0.075) !important;
    transform: translateY(-1px) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen .button.button-primary,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.button.button-primary,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen button.button-primary,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen input.button-primary,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.yvm-members-new-button {
    border-color: #1637b9 !important;
    background: linear-gradient(135deg, #1637b9 0%, #102a8d 100%) !important;
    color: #ffffff !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen .button.button-primary:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.button.button-primary:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen button.button-primary:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen input.button-primary:hover,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen a.yvm-members-new-button:hover {
    border-color: #102a8d !important;
    background: linear-gradient(135deg, #102a8d 0%, #0b1f70 100%) !important;
    color: #ffffff !important;
}

/* Übersicht Header CTA */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-overview .yvm-members-new-button {
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}

/* Filterleiste final */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-toolbar {
    margin: 0 0 18px !important;
    padding: 16px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.045) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form {
    display: grid !important;
    grid-template-columns: minmax(280px, 1.6fr) minmax(150px, 0.7fr) minmax(210px, 1fr) minmax(230px, 1.1fr) auto auto !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form input[type="search"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form select {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background-color: #ffffff !important;
    color: #1f2937 !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    outline: none !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form select {
    padding-right: 36px !important;
    background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
    background-position: calc(100% - 18px) 17px, calc(100% - 13px) 17px !important;
    background-size: 5px 5px, 5px 5px !important;
    background-repeat: no-repeat !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form input[type="search"]:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form select:focus {
    border-color: #1637b9 !important;
    box-shadow: 0 0 0 3px rgba(22, 55, 185, 0.10) !important;
}

/* Mitgliederliste */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-list {
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05) !important;
    overflow: hidden !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-list h2 {
    margin: 0 !important;
    padding: 20px 22px 12px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #111827 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff !important;
    font-size: 13px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table thead th {
    padding: 12px 14px !important;
    border: 0 !important;
    border-top: 1px solid #edf1f7 !important;
    border-bottom: 1px solid #edf1f7 !important;
    background: #f8fafc !important;
    color: #475467 !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    letter-spacing: 0.045em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table tbody td {
    padding: 13px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf1f7 !important;
    color: #1f2937 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table tbody tr:hover td {
    background: #f8fafc !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table tbody tr:last-child td {
    border-bottom: 0 !important;
}

/* Benutzerkonto-Badge in Tabelle */
.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table small {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: #eef2ff !important;
    color: #1e3a8a !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

/* Aktionen in Tabelle */
.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table td:last-child {
    white-space: nowrap !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table td:last-child a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    margin: 2px 4px 2px 0 !important;
    padding: 0 10px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #1f2937 !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 3px 8px rgba(15, 23, 42, 0.035) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table td:last-child a:hover {
    border-color: #1637b9 !important;
    background: rgba(22, 55, 185, 0.08) !important;
    color: #102a8d !important;
}

/* Status Badges final */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-status {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-status-active {
    background: #dcfce7 !important;
    color: #166534 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-status-passive {
    background: #e5e7eb !important;
    color: #374151 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-status-pending {
    background: #fef3c7 !important;
    color: #92400e !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-status-archived {
    background: #fee2e2 !important;
    color: #991b1b !important;
}

/* Formular-Karten */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-form {
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05) !important;
    padding: 18px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-structured {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    margin: 0 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section {
    margin: 0 !important;
    padding: 20px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.035) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section-head {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid #edf1f7 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section-head h3 {
    margin: 0 0 5px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    color: #111827 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section-head p {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: #667085 !important;
}

/* Form Grid final */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-form-grid,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-create .yvm-form-grid,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-edit .yvm-form-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: start !important;
    margin: 0 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-form-grid-account {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section p,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form p {
    margin: 0 !important;
}

/* Labels und Inputs final */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section label,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form label {
    display: block !important;
    margin: 0 0 7px !important;
    color: #344054 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input[type="text"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input[type="email"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input[type="date"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section select,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section textarea,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form input[type="text"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form input[type="date"],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form select,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form textarea {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 12px !important;
    background-color: #ffffff !important;
    color: #1f2937 !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    box-shadow: none !important;
    outline: none !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section select,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form select {
    padding-right: 36px !important;
    background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
    background-position: calc(100% - 18px) 18px, calc(100% - 13px) 18px !important;
    background-size: 5px 5px, 5px 5px !important;
    background-repeat: no-repeat !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section textarea,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form textarea {
    min-height: 132px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
    resize: vertical !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section select:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section textarea:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form input:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form select:focus,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form textarea:focus {
    border-color: #1637b9 !important;
    box-shadow: 0 0 0 3px rgba(22, 55, 185, 0.10) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input[readonly],
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section input[aria-readonly="true"] {
    background: #f8fafc !important;
    color: #667085 !important;
    cursor: not-allowed !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-section .description {
    display: block !important;
    margin-top: 7px !important;
    color: #667085 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Form Actions */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 16px 18px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.97) !important;
    box-shadow: 0 -8px 20px rgba(15, 23, 42, 0.04) !important;
}

/* Detailmaske */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-hero {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin: 0 0 18px !important;
    padding: 20px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-avatar {
    width: 58px !important;
    height: 58px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #1637b9 0%, #102a8d 100%) !important;
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    box-shadow: 0 12px 24px rgba(22, 55, 185, 0.18) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-sections {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 0 18px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-section,
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-notes-card {
    padding: 20px !important;
    border: 1px solid #dbe3ef !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.045) !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-section-head {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid #edf1f7 !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-field {
    padding: 13px !important;
    border: 1px solid #edf1f7 !important;
    border-radius: 13px !important;
    background: #fbfdff !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-field-wide {
    grid-column: 1 / -1 !important;
}

/* Notizformular */
.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form {
    display: block !important;
    margin: 0 0 18px !important;
    padding: 16px !important;
    border: 1px solid #edf1f7 !important;
    border-radius: 16px !important;
    background: #fbfdff !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form .yvm-form-grid {
    grid-template-columns: minmax(180px, 0.7fr) minmax(170px, 0.7fr) minmax(260px, 1.6fr) !important;
    margin-bottom: 14px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form > p {
    margin: 0 0 14px !important;
}

.yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form > p:last-child {
    margin-bottom: 0 !important;
}

/* Responsive Final */
@media (max-width: 1350px) {
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form {
        grid-template-columns: 1fr 1fr !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form input[type="search"] {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 1100px) {
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-create .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-edit .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form .yvm-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-sections {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 820px) {
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-filter-form,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-create .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-edit .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-form-grid-account,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-note-form .yvm-form-grid,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-fields {
        grid-template-columns: 1fr !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-header {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-actions,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-screen-actions .button,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-new-button,
    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-form-actions .button {
        width: 100% !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-member-detail-hero {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content .yvm-members-list {
        overflow-x: auto !important;
    }

    .yvm-app-shell .yvm-app-main .yvm-app-content table.yvm-members-table {
        min-width: 980px !important;
    }
}


/* Step 9.14 – Final UI mit echten Frontend-App-Wrappern */
/* Echte DOM-Struktur: .yvm-frontend-shell > .yvm-frontend-main > .yvm-frontend-module > .yvm-members-frontend */

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend * {
    box-sizing: border-box !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend {
    --yvm-members-primary: #1637b9;
    --yvm-members-primary-dark: #102a8d;
    --yvm-members-primary-soft: rgba(22, 55, 185, 0.08);
    --yvm-members-border: #dbe3ef;
    --yvm-members-border-soft: #edf1f7;
    --yvm-members-text: #1f2937;
    --yvm-members-heading: #111827;
    --yvm-members-muted: #667085;
    --yvm-members-bg: #ffffff;
    --yvm-members-bg-soft: #f8fafc;
    --yvm-members-radius: 18px;
    --yvm-members-radius-field: 12px;
    --yvm-members-shadow: 0 14px 34px rgba(15, 23, 42, 0.055);
}

/* Hauptabstand */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen {
    width: 100% !important;
}

/* Header-Karte */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    min-height: 86px !important;
    margin: 0 0 18px !important;
    padding: 20px 22px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-header h2 {
    margin: 0 0 6px !important;
    color: var(--yvm-members-heading) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-header p {
    margin: 0 !important;
    max-width: 760px !important;
    color: var(--yvm-members-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
    flex-wrap: wrap !important;
}

/* Buttons allgemein */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend a.button,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend button.button,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend input.button,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend .button {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--yvm-members-text) !important;
    font-family: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: 0 5px 14px rgba(15, 23, 42, 0.055) !important;
    cursor: pointer !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend a.button:hover,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend button.button:hover,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend input.button:hover {
    border-color: #b8c5d8 !important;
    background: var(--yvm-members-bg-soft) !important;
    color: var(--yvm-members-heading) !important;
    box-shadow: 0 9px 20px rgba(15, 23, 42, 0.075) !important;
    transform: translateY(-1px) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend .button.button-primary,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend a.button.button-primary,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend button.button-primary,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend input.button-primary,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend a.yvm-members-new-button {
    border-color: var(--yvm-members-primary) !important;
    background: linear-gradient(135deg, var(--yvm-members-primary) 0%, var(--yvm-members-primary-dark) 100%) !important;
    color: #ffffff !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend .button.button-primary:hover,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-frontend a.yvm-members-new-button:hover {
    border-color: var(--yvm-members-primary-dark) !important;
    background: linear-gradient(135deg, var(--yvm-members-primary-dark) 0%, #0b1f70 100%) !important;
    color: #ffffff !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-overview .yvm-members-new-button {
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 18px !important;
    white-space: nowrap !important;
}

/* Filter */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-toolbar {
    margin: 0 0 18px !important;
    padding: 16px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form {
    display: grid !important;
    grid-template-columns: minmax(280px, 1.6fr) minmax(150px, 0.7fr) minmax(210px, 1fr) minmax(230px, 1.1fr) auto auto !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form input[type="search"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form select {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background-color: #ffffff !important;
    color: var(--yvm-members-text) !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    outline: none !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form select {
    padding-right: 36px !important;
    background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
    background-position: calc(100% - 18px) 17px, calc(100% - 13px) 17px !important;
    background-size: 5px 5px, 5px 5px !important;
    background-repeat: no-repeat !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form input[type="search"]:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form select:focus {
    border-color: var(--yvm-members-primary) !important;
    box-shadow: 0 0 0 3px var(--yvm-members-primary-soft) !important;
}

/* Mitgliederliste */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-list {
    overflow: hidden !important;
    padding: 0 !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-list h2 {
    margin: 0 !important;
    padding: 20px 22px 12px !important;
    color: var(--yvm-members-heading) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff !important;
    font-size: 13px !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table thead th {
    padding: 12px 14px !important;
    border: 0 !important;
    border-top: 1px solid var(--yvm-members-border-soft) !important;
    border-bottom: 1px solid var(--yvm-members-border-soft) !important;
    background: #f8fafc !important;
    color: #475467 !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    letter-spacing: 0.045em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table tbody td {
    padding: 13px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yvm-members-border-soft) !important;
    color: var(--yvm-members-text) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table tbody tr:hover td {
    background: #f8fafc !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table tbody tr:last-child td {
    border-bottom: 0 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table small,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-linked-user-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 3px 9px !important;
    border-radius: 999px !important;
    background: #eef2ff !important;
    color: #1e3a8a !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-linked-user-pill-empty {
    background: #f3f4f6 !important;
    color: #475467 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table td:last-child {
    white-space: nowrap !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table td:last-child a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    margin: 2px 4px 2px 0 !important;
    padding: 0 10px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--yvm-members-text) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 3px 8px rgba(15, 23, 42, 0.035) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table td:last-child a:hover {
    border-color: var(--yvm-members-primary) !important;
    background: var(--yvm-members-primary-soft) !important;
    color: var(--yvm-members-primary-dark) !important;
}

/* Status */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-status {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    font-size: 10.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-status-active {
    background: #dcfce7 !important;
    color: #166534 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-status-passive {
    background: #e5e7eb !important;
    color: #374151 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-status-pending {
    background: #fef3c7 !important;
    color: #92400e !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-status-archived {
    background: #fee2e2 !important;
    color: #991b1b !important;
}

/* Formular-Hauptkarte */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-form {
    padding: 18px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-structured {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    margin: 0 !important;
}

/* Formularsektionen */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section {
    margin: 0 !important;
    padding: 20px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.035) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section-head,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-section-head {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid var(--yvm-members-border-soft) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section-head h3,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-section-head h3 {
    margin: 0 0 5px !important;
    color: var(--yvm-members-heading) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section-head p,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-section-head p {
    margin: 0 !important;
    color: var(--yvm-members-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

/* Grids */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-form-grid,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-create .yvm-form-grid,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-edit .yvm-form-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: start !important;
    margin: 0 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-form-grid-account {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section p,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form p {
    margin: 0 !important;
}

/* Labels und Felder */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section label,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form label {
    display: block !important;
    margin: 0 0 7px !important;
    color: #344054 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input[type="text"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input[type="email"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input[type="date"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section select,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section textarea,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form input[type="text"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form input[type="date"],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form select,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form textarea {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid #d0d7e2 !important;
    border-radius: var(--yvm-members-radius-field) !important;
    background-color: #ffffff !important;
    color: var(--yvm-members-text) !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    box-shadow: none !important;
    outline: none !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section select,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form select {
    padding-right: 36px !important;
    background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%) !important;
    background-position: calc(100% - 18px) 18px, calc(100% - 13px) 18px !important;
    background-size: 5px 5px, 5px 5px !important;
    background-repeat: no-repeat !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section textarea,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form textarea {
    min-height: 132px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
    resize: vertical !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section select:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section textarea:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form input:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form select:focus,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form textarea:focus {
    border-color: var(--yvm-members-primary) !important;
    box-shadow: 0 0 0 3px var(--yvm-members-primary-soft) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input[readonly],
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section input[aria-readonly="true"] {
    background: #f8fafc !important;
    color: var(--yvm-members-muted) !important;
    cursor: not-allowed !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-section .description {
    display: block !important;
    margin-top: 7px !important;
    color: var(--yvm-members-muted) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

/* Formularaktionen */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-actions {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 16px 18px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: rgba(255, 255, 255, 0.97) !important;
    box-shadow: 0 -8px 20px rgba(15, 23, 42, 0.04) !important;
}

/* Detailmaske */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-hero {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin: 0 0 18px !important;
    padding: 20px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-avatar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 58px !important;
    height: 58px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, var(--yvm-members-primary) 0%, var(--yvm-members-primary-dark) 100%) !important;
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    box-shadow: 0 12px 24px rgba(22, 55, 185, 0.18) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-sections {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 0 0 18px !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-section,
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-notes-card {
    padding: 20px !important;
    border: 1px solid var(--yvm-members-border) !important;
    border-radius: var(--yvm-members-radius) !important;
    background: #ffffff !important;
    box-shadow: var(--yvm-members-shadow) !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-field {
    padding: 13px !important;
    border: 1px solid var(--yvm-members-border-soft) !important;
    border-radius: 13px !important;
    background: #fbfdff !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-field-wide {
    grid-column: 1 / -1 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-field span {
    display: block !important;
    margin-bottom: 4px !important;
    color: var(--yvm-members-muted) !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-field strong {
    display: block !important;
    color: var(--yvm-members-text) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

/* Notizformular */
.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form {
    display: block !important;
    margin: 0 0 18px !important;
    padding: 16px !important;
    border: 1px solid var(--yvm-members-border-soft) !important;
    border-radius: 16px !important;
    background: #fbfdff !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form .yvm-form-grid {
    grid-template-columns: minmax(180px, 0.7fr) minmax(170px, 0.7fr) minmax(260px, 1.6fr) !important;
    margin-bottom: 14px !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form > p {
    margin: 0 0 14px !important;
}

.yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form > p:last-child {
    margin-bottom: 0 !important;
}

/* Responsive */
@media (max-width: 1350px) {
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form {
        grid-template-columns: 1fr 1fr !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form input[type="search"] {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 1100px) {
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-create .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-edit .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form .yvm-form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-sections {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 820px) {
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-filter-form,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-create .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-edit .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-form-grid-account,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-note-form .yvm-form-grid,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-fields {
        grid-template-columns: 1fr !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-header {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-actions,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-screen-actions .button,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-new-button,
    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-form-actions .button {
        width: 100% !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-member-detail-hero {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module .yvm-members-list {
        overflow-x: auto !important;
    }

    .yvm-frontend-shell .yvm-frontend-main .yvm-frontend-module table.yvm-members-table {
        min-width: 980px !important;
    }
}
