/**
 * Contact Form Styles
 * Styling for the WPForms contact form on /kontakt/ page
 */

@import './variables.css';

/* === CONTACT FORM CONTAINER === */
.wpforms-container {
    max-width: 600px;
    margin: 0 auto 0 0 ; /* Align to the right */
}

.wpforms-field-label {
    display: block;
    margin-bottom: var(--spacing-2);
    font-weight: var(--font-weight-medium);
    color: var(--color-primary);
    font-size: var(--font-size-base);
}
.wpforms-container .wpforms-field {
    padding: var(--spacing-1) 0;
}

/* Text inputs, email inputs, and textareas */
.wpforms-field-large,
.wpforms-field input[type="text"],
.wpforms-field input[type="email"],
.wpforms-field textarea {
    width: 100%;
    padding: var(--spacing-3);
    border: 2px solid var(--color-border);
    border-radius: 0; /* No rounded corners as requested */
    font-size: var(--font-size-base);
    font-family: var(--font-tertiary);
    background-color: var(--color-white);
    color: var(--color-primary);
    box-sizing: border-box;
    transition: border-color 0.3s ease;
}

.wpforms-field-large:focus,
.wpforms-field input[type="text"]:focus,
.wpforms-field input[type="email"]:focus,
.wpforms-field textarea:focus {
    outline: none;
    border-color: var(--color-primary-alt);
}

/* Textarea specific styling */
.wpforms-field textarea {
    min-height: 120px;
    resize: vertical;
}

/* Placeholder styling */
.wpforms-field-large::placeholder,
.wpforms-field input[type="text"]::placeholder,
.wpforms-field input[type="email"]::placeholder,
.wpforms-field textarea::placeholder {
    color: #999;
    opacity: 1;
}

/* === SUBMIT BUTTON === */
.wpforms-submit {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-medium);
    background-color: var(--color-primary-alt);
    color: var(--color-white);
    line-height: 1;
    border: none;
    border-radius: 0; /* No rounded corners as requested */
    padding: var(--spacing-3) var(--spacing-4);
    cursor: pointer;
    text-align: center;
    white-space: nowrap;
    user-select: none;
    box-sizing: border-box;
    text-decoration: none;
    transition: background-color 0.3s ease;
    margin-top: var(--spacing-3);
}

.wpforms-submit:hover {
    background-color: var(--color-primary-alt-dark);
}

.wpforms-submit:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* === FORM VALIDATION === */
.wpforms-error {
    color: var(--color-primary-alt);
    font-size: var(--font-size-sm);
    margin-top: var(--spacing-1);
}

.wpforms-field.wpforms-has-error input,
.wpforms-field.wpforms-has-error textarea {
    border-color: var(--color-primary-alt);
}

/* === REQUIRED FIELD INDICATOR === */
.wpforms-required {
    color: var(--color-primary-alt);
}

/* === RESPONSIVE DESIGN === */
@media (max-width: 768px) {
    .wpforms-container {
        margin: 0; /* Center on mobile */
    }

    .wpforms-field {
        margin-bottom: var(--spacing-3);
    }

    .wpforms-submit {
        padding: var(--spacing-2) var(--spacing-3);
    }
}