/* EVH Formular WordPress Integration Styles */
/* Vollständige CSS-Integration für korrekte Darstellung */

/* ================================================
   ALLGEMEINE FORMULAR-STYLES
   ================================================ */
 
   :root {
    --evh-formular-font-stack: var(--wp--preset--font-family--body, var(--wp--preset--font-family--primary, var(--global--font-primary, var(--global-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif))));
}

.evh-formular-container {
    font-family: var(--evh-formular-font-stack) !important;
    background-color: #f3f4f6;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
}

.evh-formular-container * {
    box-sizing: border-box;
    
}

/* Verhindere monospace/Code-Schriftarten - verwende WordPress-Theme-Schriftart mit sans-serif Fallback */
.evh-formular-container code,
.evh-formular-container pre,
.evh-formular-container kbd,
.evh-formular-container samp,
.evh-formular-container [class*="font-mono"],
.evh-formular-container [style*="monospace"],
.evh-formular-container [style*="Monaco"] {
    font-family: var(--evh-formular-font-stack) !important;
}

/* Popup-Meldungen, Modals und Notifications - verwende WordPress-Theme-Schriftart mit sans-serif Fallback */
.evh-formular-container .evh-modal,
.evh-formular-container .evh-modal *,
.evh-formular-container .evh-notification,
.evh-formular-container .evh-notification *,
.evh-formular-container .modal,
.evh-formular-container .modal *,
.evh-formular-container .popup,
.evh-formular-container .popup *,
.evh-formular-container .alert,
.evh-formular-container .alert *,
.evh-formular-container [class*="modal"],
.evh-formular-container [class*="notification"],
.evh-formular-container [class*="popup"],
.evh-formular-container [class*="alert"] {
    /*font-family: var(--evh-formular-font-stack) !important;*/
}

/* Formular-Sektionen */
.evh-formular-container .form-section {
    background-color: white;
    padding: 2rem;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    margin-bottom: 2rem;
}

/* ================================================
   FORM-INPUTS UND CONTROLS
   ================================================ */

.evh-formular-container .form-input,
.evh-formular-container .form-textarea,
.evh-formular-container .form-select {
    margin-top: 0.25rem;
    display: block;
    width: 100%;
    border-radius: 0.375rem;
    border: 1px solid #d1d5db;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    transition: all 0.2s ease;
    font-family: var(--evh-formular-font-stack) !important;
}

/* Dropdowns/Selects höher machen, damit Inhalt nicht abgeschnitten wird */
.evh-formular-container .form-select,
.evh-formular-container select {
    min-height: 3rem;
    padding-top: 0.875rem;
    padding-bottom: 0.875rem;
    line-height: 1.5;
}

.evh-formular-container .form-input:focus,
.evh-formular-container .form-textarea:focus,
.evh-formular-container .form-select:focus {
    border-color: #84cc16 !important;
    outline: 2px solid transparent;
    outline-offset: 2px;
    box-shadow: 0 0 0 3px rgba(132, 204, 22, 0.3) !important;
}

.evh-formular-container .form-input.error,
.evh-formular-container .form-textarea.error,
.evh-formular-container .form-select.error {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.3) !important;
}

.evh-formular-container .form-input.valid,
.evh-formular-container .form-textarea.valid,
.evh-formular-container .form-select.valid {
    border-color: #10b981 !important;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.3) !important;
}

/* Checkboxes und Radio Buttons */
.evh-formular-container .form-checkbox,
.evh-formular-container .form-radio {
    height: 1rem;
    width: 1rem;
    border-radius: 0.25rem;
    border-color: #d1d5db;
    color: #84cc16;
    margin-right: 0.5rem;
}

.evh-formular-container .form-checkbox:focus,
.evh-formular-container .form-radio:focus {
    outline: 2px solid rgba(132, 204, 22, 0.6);
    outline-offset: 2px;
    box-shadow: 0 0 0 2px rgba(132, 204, 22, 0.3);
}

.evh-formular-container .checkbox-group,
.evh-formular-container .radio-group {
    padding: 1rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.375rem;
    background-color: #fafafa;
}

.evh-formular-container .checkbox-item,
.evh-formular-container .radio-item {
    padding: 0.5rem 0;
    border-bottom: 1px solid #f3f4f6;
    display: flex !important; /* ✅ WICHTIG: Verhindert Browser-Überschreibung zu display: block */
    align-items: center;
}

.evh-formular-container .checkbox-item:last-child,
.evh-formular-container .radio-item:last-child {
    border-bottom: none;
}

.evh-formular-container .evh-gewerbe-option {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.evh-formular-container .evh-price-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.1rem 0.45rem;
    border-radius: 999px;
    background: #ecfccb;
    color: #166534;
    font-weight: 700;
    font-size: 0.8rem;
    border: 1px solid #bbf7d0;
}

/* Kategorien-Checkboxen nebeneinander */
.evh-formular-container #kategorien-container {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

.evh-formular-container #kategorien-container .checkbox-item {
    border-bottom: none;
    flex: 1 1 180px;
    padding: 0.25rem 0;
}

.evh-formular-container #kategorien-container .flex.items-start {
    align-items: center !important;
}

.evh-formular-container #kategorien-container .ml-3 {
    margin-left: 0.5rem;
    display: inline-flex;
}


/* ================================================
   LABELS UND TYPOGRAPHY
   ================================================ */

.evh-formular-container label {
    display: block;
    font-weight: 500;
    color: #374151;
    margin-bottom: 0.25rem;
}

/* ✅ FIX: Labels direkt neben Radio-Buttons und Checkboxen */
/* Labels in checkbox/radio items sollen inline bleiben */
.evh-formular-container .checkbox-item label, 
.evh-formular-container .radio-item label {
    display: inline;
    margin-bottom: 0;
    margin-left: 0.5rem;
}

/* Labels direkt nach Radio-Buttons/Checkboxen: inline-block */
.evh-formular-container input[type="checkbox"] + label,
.evh-formular-container input[type="radio"] + label {
    display: inline-block !important;
    margin-left: 0.5rem;
    margin-bottom: 0 !important;
    vertical-align: middle;
}

/* ✅ WICHTIG: Labels in flex-Containern mit Radio/Checkbox: inline */
/* Dies verhindert, dass Labels unter den Buttons erscheinen */
.evh-formular-container .flex.items-center label,
.evh-formular-container .flex label {
    display: inline !important;
    margin-bottom: 0 !important;
    margin-left: 0.5rem;
}

/* Spezifisch für Radio/Checkbox in flex-Containern */
.evh-formular-container .flex.items-center input[type="radio"] + label,
.evh-formular-container .flex.items-center input[type="checkbox"] + label,
.evh-formular-container .flex input[type="radio"] + label,
.evh-formular-container .flex input[type="checkbox"] + label {
    display: inline !important;
    margin-bottom: 0 !important;
    margin-left: 0.5rem;
}

/* Labels in space-y-2 oder ähnlichen Containern */
.evh-formular-container .space-y-2 label,
.evh-formular-container .space-y-1 label,
.evh-formular-container .space-y-3 label {
    display: inline !important;
    margin-bottom: 0 !important;
}

/* Vertikale Ausrichtung der Controls mit den Labels angleichen */
.evh-formular-container input[type="checkbox"],
.evh-formular-container input[type="radio"] {
    vertical-align: middle;
    flex-shrink: 0; /* Verhindert, dass Buttons schrumpfen */
    margin-right: 0.5rem; /* Abstand zum Label */
}

/* ✅ FIX: Radio-Buttons in verschachtelten Flex-Containern - KEIN Zeilenumbruch */
/* Verhindert, dass Radio-Buttons und Labels in separaten Zeilen erscheinen */
.evh-formular-container .flex.items-start {
    display: flex !important; /* ✅ WICHTIG: Verhindert Browser-Überschreibung */
    flex-wrap: nowrap !important; /* Kein Umbruch erlauben */
    align-items: flex-start !important;
}

/* ✅ WICHTIG: Alle Container mit Checkboxen/Radio-Buttons als Flex erzwingen */
.evh-formular-container .flex.items-center,
.evh-formular-container .flex.items-start,
.evh-formular-container .flex {
    display: flex !important; /* Verhindert Browser-Überschreibung zu display: block */
}

/* Standard-Container für Checkboxen/Radio */
.evh-formular-container .checkbox-group > div,
.evh-formular-container .radio-group > div,
.evh-formular-container .checkbox-item,
.evh-formular-container .radio-item,
.evh-formular-container .checkbox-item .flex,
.evh-formular-container .radio-item .flex,
.evh-formular-container .space-y-4 > div.flex,
.evh-formular-container .space-y-4 > div.items-start,
.evh-formular-container .space-y-4 > div.items-center {
    display: flex !important;
}

/* Ausnahme: Richtext-Hinweisboxen wieder block darstellen */
.evh-formular-container .evh-richtext-block,
.evh-formular-container .evh-richtext-block * {
    display: block !important;
}
.evh-formular-container .evh-richtext-block a {
    display: inline !important;
}

/* Radio-Button-Container soll nicht schrumpfen */
.evh-formular-container .flex.items-start > .flex.items-center {
    flex-shrink: 0 !important;
    min-width: auto !important;
    display: inline-flex !important;
}

/* Label-Container kann flexibel sein, aber Radio bleibt oben */
.evh-formular-container .flex.items-start > .ml-3 {
    flex: 1 1 auto;
    min-width: 0; /* Erlaubt Textumbruch im Label-Container */
    display: inline-flex!important;
}

/* Labels in dieser Struktur sollen inline bleiben */
.evh-formular-container .flex.items-start .ml-3 label {
    display: inline-block !important;
    margin-bottom: 0 !important;
    vertical-align: top;
}

/* Spezifisch für Radio-Button-Gruppen mit border rounded-lg */
.evh-formular-container .flex.items-start.p-3.border.rounded-lg {
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
}

/* Radio-Button selbst soll nicht umbrechen */
.evh-formular-container .flex.items-start input[type="radio"],
.evh-formular-container .flex.items-start input[type="checkbox"] {
    flex-shrink: 0 !important;
    margin-right: 0 !important; /* Wird durch ml-3 Container gehandhabt */
}

/* Header Container - Padding für alle Header-Elemente */
.evh-formular-container header {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
}

.evh-formular-container .header-title {
    font-family: var(--evh-formular-font-stack) !important;
    font-weight: 800;
    color: #65a30d;
    padding-top: 1.5rem;
    padding-left: 0;
    padding-right: 0;
}

.evh-formular-container .header-subtitle {
    font-family: var(--evh-formular-font-stack) !important;
    color: #4b5563;
    padding-left: 0;
    padding-right: 0;
}

/* Alle Text-Elemente im Header */
.evh-formular-container header p {
    padding-left: 0;
    padding-right: 0;
}

/* Listen mit space-y-2 - erhöhte Zeilenhöhe */
.evh-formular-container .space-y-2 > div {
    line-height: 1.75;
}

.evh-formular-container .section-title {
    font-family: var(--evh-formular-font-stack) !important;
    font-size: 1.75rem;
    font-weight: 700;
    color: #3f6212;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #a3e635;
}

/* Required Field Indicators */
.evh-formular-container .required-star:after {
    content: " ";
}

.evh-formular-container .required-star .required-asterisk {
    color: #ef4444;
    font-weight: bold;
    margin-left: 2px;
}

/* ================================================
   BUTTONS UND INTERACTIVE ELEMENTS
   ================================================ */

.evh-formular-container .btn-primary {
    padding: 0.75rem 1.5rem;
    border: 1px solid transparent;
    border-radius: 0.375rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    background-color: #84cc16;
    transition: all 0.3s ease;
    cursor: pointer;
}

.evh-formular-container .btn-primary:hover:not(:disabled) {
    background-color: #65a30d;
    transform: translateY(-1px);
}

.evh-formular-container .btn-primary:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.evh-formular-container .btn-submit-full {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.evh-formular-container .btn-secondary {
    padding: 0.75rem 1.5rem;
    border: 1px solid #84cc16;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #84cc16;
    background-color: white;
    transition: all 0.3s ease;
    cursor: pointer;
}

.evh-formular-container .btn-secondary:hover {
    background-color: #f7fee7;
}

/* ================================================
   NOTIFICATIONS UND MESSAGES
   ================================================ */

.evh-formular-container .note {
    background-color: #f7fee7;
    color: #4d7c0f;
    padding: 1rem;
    border-radius: 0.375rem;
    margin-bottom: 1.5rem;
    border-left: 4px solid #84cc16;
}

.evh-formular-container .important-note {
    background-color: #fee2e2;
    color: #991b1b;
    padding: 1rem;
    border-radius: 0.375rem;
    margin-bottom: 1.5rem;
    border-left: 4px solid #ef4444;
    font-weight: 600;
}

.evh-formular-container .client-feedback-note {
    background-color: #ede9fe;
    color: #6d28d9;
    padding: 0.75rem;
    border-radius: 0.375rem;
    margin-bottom: 1rem;
    border-left: 4px solid #8b5cf6;
    font-size: 0.875rem;
    font-weight: 500;
}

.evh-formular-container .payment-warning {
    background-color: #fef3c7;
    color: #92400e;
    padding: 1.5rem;
    border-radius: 0.5rem;
    margin-bottom: 2rem;
    border: 2px solid #f59e0b;
    font-weight: 600;
}

/* Success/Error Messages */
.evh-formular-container .evh-success-message {
    background-color: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
    padding: 15px;
    margin: 20px 0;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
}

.evh-formular-container .evh-error-message {
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
    padding: 15px;
    margin: 20px 0;
    border-radius: 4px;
    text-align: center;
    font-weight: bold;
}

.evh-formular-container .error-message {
    color: #ef4444;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: none;
}

.evh-formular-container .success-message {
    color: #10b981;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

/* ================================================
   LAYOUT UND STRUCTURE
   ================================================ */

.evh-formular-container .input-group {
    margin-bottom: 1.5rem;
    position: relative;
}

.evh-formular-container fieldset {
    border: 1px solid #d1d5db;
    padding: 15px;
    border-radius: 0.375rem;
    margin-bottom: 1.5rem;
}

.evh-formular-container fieldset.input-group {
    padding: 15px;
}

.evh-formular-container legend {
    font-family: var(--evh-formular-font-stack) !important;
    font-weight: 700;
    color: #4d7c0f;
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
}

.evh-formular-container .sub-fieldset {
    border: 1px dashed #a3e635;
    padding: 1rem;
    margin-top: 1rem;
    border-radius: 0.25rem;
}

.evh-formular-container .sub-legend {
    font-family: var(--evh-formular-font-stack) !important;
    font-weight: 600;
    color: #65a30d;
    font-size: 1rem;
    margin-bottom: 0.5rem;
}

/* Grid System */
.evh-formular-container .grid {
    display: grid;
}

.evh-formular-container .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.evh-formular-container .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.evh-formular-container .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.evh-formular-container .gap-2 { gap: 0.5rem; }
.evh-formular-container .gap-4 { gap: 1rem; }
.evh-formular-container .gap-6 { gap: 1.5rem; }

/* ================================================
   PRICING DISPLAY
   ================================================ */

.evh-formular-container .price-display {
    font-weight: 600;
    color: #3f6212;
}

.evh-formular-container .total-price-display {
    background-color: #ecfccb;
    color: #365314;
    font-weight: 700;
    padding: 1rem;
    border-radius: 0.5rem;
    border: 2px solid #84cc16;
}

.evh-formular-container .hr-accent {
    border-color: #a3e635;
}

/* ================================================
   TOOLTIPS UND HELPERS
   ================================================ */

.evh-formular-container .tooltip {
    position: relative;
    display: inline-block;
}

.evh-formular-container .tooltip .tooltiptext {
    visibility: hidden;
    width: 200px;
    background-color: #374151;
    color: white;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -100px;
    opacity: 0;
    transition: opacity 0.3s;
    font-size: 0.75rem;
}

.evh-formular-container .tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.evh-formular-container .smart-suggestion {
    background-color: #eff6ff;
    border: 1px solid #3b82f6;
    border-radius: 0.375rem;
    padding: 0.75rem;
    margin-top: 0.5rem;
    font-size: 0.875rem;
    color: #1e40af;
}

/* ================================================
   PROGRESS BAR UND INDICATORS
   ================================================ */

.evh-formular-container .progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
    background-color: #e5e7eb;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.evh-formular-container .progress-fill {
    height: 100%;
    background-color: #84cc16;
    width: 0%;
    transition: width 0.3s ease;
}

.evh-formular-container .progress-indicator {
    position: fixed;
    top: 8px;
    right: 20px;
    background-color: white;
    border: 2px solid #84cc16;
    border-radius: 20px;
    padding: 4px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #3f6212;
    z-index: 1001;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* ================================================
   FORM NAVIGATION
   ================================================ */

.evh-formular-container .form-navigation {
    position: fixed;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: white;
    border: 2px solid #84cc16;
    border-left: none;
    border-radius: 0 8px 8px 0;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);
    z-index: 998;
    max-height: 80vh;
    overflow-y: auto;
    width: 280px;
    padding: 15px 20px 15px 15px;
    transition: transform 0.3s ease;
}

.evh-formular-container .form-navigation.collapsed {
    transform: translateY(-50%) translateX(-280px);
}

.evh-formular-container .form-navigation h3 {
    font-family: var(--evh-formular-font-stack) !important;
    font-size: 14px;
    font-weight: 700;
    color: #3f6212;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 2px solid #a3e635;
}

.evh-formular-container .form-navigation h3 i {
    display: inline-block;
    margin-right: 0.85rem;
    padding-right: 0.25rem;
    color: #3f6212;
}

.evh-formular-container .nav-item {
    display: flex;
    align-items: center;
    padding: 8px 10px;
    margin: 4px 0;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
    color: #374151;
    font-size: 13px;
    border-left: 3px solid transparent;
}

.evh-formular-container .nav-item:hover {
    background-color: #f7fee7;
    border-left-color: #84cc16;
    transform: translateX(3px);
}

.evh-formular-container .nav-item.active {
    background-color: #ecfccb;
    border-left-color: #65a30d;
    font-weight: 600;
    color: #3f6212;
}

.evh-formular-container .nav-item.complete {
    color: #10b981;
}

.evh-formular-container .nav-item.incomplete {
    color: #ef4444;
}

.evh-formular-container .nav-item.has-errors {
    background-color: #fee2e2;
    border-left-color: #ef4444;
    color: #991b1b;
    font-weight: 600;
}

.evh-formular-container .nav-item .nav-icon {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 12px;
    color: #2563eb;
    margin-right: 10px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.evh-formular-container .nav-toggle {
    position: fixed;
    left: 280px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    background: #84cc16;
    color: white;
    border: none;
    border-radius: 0 8px 8px 0;
    padding: 16px 12px;
    cursor: pointer;
    z-index: 999;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    line-height: 1;
}

.evh-formular-container .nav-toggle:hover {
    background: #65a30d;
}

.evh-formular-container .nav-toggle.collapsed {
    left: 0;
}

.evh-formular-container .nav-toggle i {
    font-size: 16px;
    order: 2;
}

/* Vertikale Beschriftung im grünen Wimpel */
.evh-formular-container .nav-toggle-text {
    order: 1;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
    user-select: none;
    display: inline-block;
}

/* ================================================
   RESPONSIVE DESIGN
   ================================================ */

/* Mobile optimizations */
@media (max-width: 768px) {
    .evh-formular-container {
        padding-top: 80px;
    }
    
    .evh-formular-container .progress-indicator { 
        top: 12px; 
        right: 10px; 
        padding: 3px 8px;
        font-size: 0.7rem;
    }

    .evh-formular-container .form-section { 
        padding: 1.5rem 1rem; 
        margin-bottom: 1.5rem;
    }
    
    .evh-formular-container .section-title { 
        font-size: 1.5rem; 
        margin-bottom: 1rem;
    }
    
    /* Header Container - Padding für alle Header-Elemente (Mobile) */
    .evh-formular-container header {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    
    .evh-formular-container .header-title {
        padding-top: 1rem;
        padding-left: 0;
        padding-right: 0;
    }
    
    .evh-formular-container .header-subtitle {
        padding-left: 0;
        padding-right: 0;
    }
    
    .evh-formular-container header p {
        padding-left: 0;
        padding-right: 0;
    }
    
    .evh-formular-container .grid { 
        grid-template-columns: 1fr !important; 
        gap: 1rem !important;
    }
    
    .evh-formular-container .input-group { 
        margin-bottom: 1rem; 
    }
    
    .evh-formular-container .payment-warning { 
        padding: 1rem; 
        font-size: 0.875rem;
    }
    
    .evh-formular-container .smart-suggestion {
        font-size: 0.8rem;
        padding: 0.5rem;
    }
}

/* Responsive: Navigation als Overlay auf kleinen Bildschirmen */
@media (max-width: 1024px) {
    .evh-formular-container .form-navigation {
        width: 250px;
        background: rgba(255, 255, 255, 0.98);
        border: 1px solid #e5e7eb;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
        z-index: 1000;
    }
    
    .evh-formular-container .form-navigation.collapsed {
        transform: translateY(-50%) translateX(-250px);
    }
    
    .evh-formular-container .nav-toggle {
        display: block;
        z-index: 1001;
    }
    
    .evh-formular-container .nav-toggle.collapsed {
        left: 0;
    }
}

/* Platz für Navigation auf großen Bildschirmen */
@media (min-width: 1025px) {
    .evh-formular-container {
        padding-left: 0;
    }
}
.mt-3.p-4.border.rounded-lg.bg-yellow-50.border-yellow-200.evh-richtext-block * {
    display: block !important;
}

/* ================================================
   ACCESSIBILITY IMPROVEMENTS
   ================================================ */

.evh-formular-container .form-input:focus,
.evh-formular-container .form-textarea:focus,
.evh-formular-container .form-select:focus {
    outline: 2px solid #84cc16;
    outline-offset: 2px;
}

/* Cursor improvements */
.evh-formular-container .form-checkbox,
.evh-formular-container .form-radio,
.evh-formular-container label[for], 
.evh-formular-container .checkbox-item label, 
.evh-formular-container .radio-item label {
    cursor: pointer;
}

/* Enhanced contrast for required fields */
.evh-formular-container .required-asterisk {
    color: #dc2626;
    font-weight: bold;
    font-size: 1.1em;
}

/* ================================================
   PRINT STYLES
   ================================================ */

@media print {
    .evh-formular-container .no-print { 
        display: none !important; 
    }
    
    .evh-formular-container .form-section { 
        box-shadow: none; 
        border: 1px solid #ccc; 
    }
    
    .evh-formular-container { 
        padding-top: 0; 
        padding-left: 0;
    }
}

/* ================================================
   WORDPRESS SPECIFIC OVERRIDES
   ================================================ */

/* Ensure WordPress admin styles don't interfere */
.wp-admin .evh-formular-container .form-navigation {
    display: none;
}

.wp-admin .evh-formular-container .nav-toggle {
    display: none;
}

.wp-admin .evh-formular-container {
    padding-left: 0;
}

/* Override WordPress button styles */
.evh-formular-container .btn-primary,
.evh-formular-container .btn-secondary {
    font-family: var(--evh-formular-font-stack) !important;
    text-decoration: none;
    display: inline-block;
}

/* Override WordPress form styles */
.evh-formular-container input[type="text"],
.evh-formular-container input[type="email"],
.evh-formular-container input[type="tel"],
.evh-formular-container input[type="url"],
.evh-formular-container input[type="number"],
.evh-formular-container input[type="file"],
.evh-formular-container select,
.evh-formular-container textarea {
    width: 100% !important;
    max-width: none !important;
}

#gewerbliche_info .evh-richtext-block {
    min-height: 3rem !important;
    padding-top: 0.875rem !important;
    padding-bottom: 0.875rem !important;
    line-height: 1.5 !important;
  
    display: block!important
}

secti
section#gewerbliche_info {
    border: 1px solid green!important;
     
}

.mt-3.p-4.border.rounded-lg.bg-yellow-50.border-yellow-200.evh-richtext-block *{
    
    
    
    display: block;
}



section#gewerbliche_info .mt-3.p-4.border.rounded-lg.bg-yellow-50.border-yellow-200.evh-richtext-block * {
    display: block !important;
    border: 1px solid green!important;
}

section#gewerbliche_info {
   
    
    display: block!important;
}

section#gewerbliche_info .mt-3.p-4.border.rounded-lg.bg-yellow-50.border-yellow-200.evh-richtext-block *{
   
    border: 0px solid green!important;
    
    padding: 5px!important;
    display: block!important;
}
section#gewerbliche_info .flex {
    padding-right: 15px!important;
}
section#gewerbliche_info 
.grid.grid-cols-3.gap-2.text-xs > .text-center {
    padding-right: 25px!important;
}

label.text-sm.font-medium.text-gray-700.w-16 {
    min-width: 100px;
    align-items: center;
    justify-content: center;
    display: flex;
    vertical-align: middle;
    line-height: 40px;
}

header {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
}