/* Formular-Styling für alle Formulare der Website */

.input-field {
    position: relative;
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.input-field label {
    color: #455a64;
    position: static !important;
    font-size: 0.9rem !important;
    transform: none !important;
    -webkit-transform: none !important;
    margin-bottom: 0.2rem !important;
}

/* Input-Felder Styling */
.input-field input[type=text],
.input-field input[type=email],
.input-field textarea.materialize-textarea {
    background-color: #fff;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    padding: 8px 12px !important;
    margin: 4px 0 !important;
    box-sizing: border-box;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    height: auto !important;
    box-shadow: none !important;
}

.input-field textarea.materialize-textarea {
    min-height: 120px;
    resize: vertical !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-y: auto !important;
}

textarea {
    resize: vertical !important;
    min-height: 120px !important;
    height: auto !important;
}

/* Fokus-Styling */
.input-field input[type=text]:focus,
.input-field input[type=email]:focus,
.input-field textarea:focus {
    border-color: #C47464 !important;
    box-shadow: 0 0 0 0.2rem rgba(196, 116, 100, 0.25) !important;
    outline: 0;
}

/* Validierung */
.input-field input[type=text].valid,
.input-field input[type=email].valid,
.input-field textarea.valid {
    border-color: #4CAF50 !important;
    box-shadow: none !important;
}

.input-field input[type=text].invalid,
.input-field input[type=email].invalid,
.input-field textarea.invalid {
    border-color: #F44336 !important;
    box-shadow: none !important;
}

.helper-text {
    min-height: 20px;
    font-size: 0.85rem;
    margin-top: -5px;
    color: #666;
}

/* Button-Styling (bereits in button-styles.css, hier für Vollständigkeit) */
.btn {
    background-color: #C47464;
    border-radius: 4px;
    text-transform: none;
    font-weight: 500;
    padding: 0.5rem 1rem;
    height: auto;
    line-height: 1.5;
}

.btn:hover {
    background-color: #b36456;
}

/* Honeypot für Spamschutz */
.user-details {
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    pointer-events: none !important;
}

/* Checkbox-Styling */
[type="checkbox"]+span:not(.lever) {
    padding-left: 30px;
    line-height: 1.5;
}

[type="checkbox"]:checked+span:not(.lever):before {
    border-right-color: #C47464;
    border-bottom-color: #C47464;
}

/* Responsive Anpassungen */
@media only screen and (max-width: 600px) {
    .input-field {
        margin-top: 0.8rem !important;
        margin-bottom: 0.8rem !important;
    }
}