/* ==========================================================================
   Powermail Custom Styles - Galgenhelden Theme
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Container & Layout (Grid Overrides & Responsive)
   -------------------------------------------------------------------------- */

.tx-powermail {
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
    font-family: inherit;
}

/* Neutralize legacy Bootstrap 3 grid column styling inside Bootstrap 4 wrapper */
.tx-powermail div[class*="col-sm-"],
#c4 .col-sm-10 {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    padding-left: 0;
    padding-right: 0;
    float: none;
    margin-left: 0;
}

@media (max-width: 767px) {
    section .flex-container,
    div.flex-container {
        width: 96%;
        max-width: 100%;
        padding-left: 6px;
        padding-right: 6px;
        margin-top: 1rem;
    }

    .tx-powermail {
        padding-left: 0;
        padding-right: 0;
    }
}

/* --------------------------------------------------------------------------
   2. Step Navigation Bar (Top Tabs generated by Powermail / Tabs.js)
   -------------------------------------------------------------------------- */

#c4 .tx-powermail .btn-group,
.tx-powermail .btn-group,
.tx-powermail ul.powermail_tabmenu,
.tx-powermail .powermail_tabmenu {
    display: flex !important;
    flex-wrap: wrap !important;
    list-style: none !important;
    padding: 0 !important;
    margin-bottom: 0px !important;
    width: 100% !important;
}

#c4 .tx-powermail .btn-group > button.btn,
.tx-powermail .btn-group > button.btn,
.tx-powermail .powermail_tabmenu > li > a,
.tx-powermail .powermail_tabmenu a {
    display: inline-block !important;
    background: #1c1814 !important;
    background-color: #1c1814 !important;
    color: #c0b0a0 !important;
    border: 1px solid #3d352e !important;
    border-bottom: none !important;
    border-radius: 8px 8px 0 0 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    text-decoration: none !important;
    transition: background-color 0.15s ease, color 0.15s ease;
    margin: 0 !important;
    float: none !important;
    box-shadow: none !important;
}

#c4 .tx-powermail .btn-group > button.btn.btn-primary,
.tx-powermail .btn-group > button.btn.btn-primary,
.tx-powermail .powermail_tabmenu > li.act > a,
.tx-powermail .powermail_tabmenu > li.active > a,
.tx-powermail .powermail_tabmenu a.active {
    background: #e29141 !important;
    background-color: #e29141 !important;
    color: #120d09 !important;
    border-color: #e29141 !important;
    font-weight: 700 !important;
}

#c4 .tx-powermail .btn-group > button.btn.btn-danger,
.tx-powermail .btn-group > button.btn.btn-danger,
.tx-powermail .powermail_tabmenu > li.has-error > a,
.tx-powermail .powermail_tabmenu > li.parsley-error > a {
    background: #dc3545 !important;
    background-color: #dc3545 !important;
    color: #ffffff !important;
    border-color: #bd2130 !important;
    font-weight: 700 !important;
}

/* --------------------------------------------------------------------------
   3. Fieldsets & Section Legends
   -------------------------------------------------------------------------- */

.tx-powermail fieldset.powermail_fieldset {
    background: #141210;
    border: 1px solid rgba(226, 145, 65, 0.25);
    border-radius: 0 12px 12px 12px;
    padding: 20px 18px 12px 18px;
    margin-bottom: 24px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
}

@media (max-width: 767px) {
    .tx-powermail fieldset.powermail_fieldset {
        padding: 14px 10px 10px 10px;
    }
}

.tx-powermail legend.powermail_legend {
    width: auto;
    float: none;
    padding: 6px 16px;
    margin-bottom: 16px;
    background: #201b17;
    color: #f3c390;
    border: 1px solid rgba(226, 145, 65, 0.4);
    border-radius: 20px;
    font-size: 1.25rem;
    font-weight: 700;
}

/* --------------------------------------------------------------------------
   4. Form Groups & Field Labels
   -------------------------------------------------------------------------- */

.tx-powermail .form-group,
.tx-powermail .powermail_fieldwrap {
    margin-bottom: 12px;
}

.tx-powermail label.control-label {
    display: block;
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    float: none;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 6px;
    color: #f5efe7;
    font-size: 1.15rem;
    font-weight: 700;
    text-align: left;
}

.tx-powermail label.control-label .mandatory {
    color: #e74c3c;
    margin-left: 4px;
}

/* --------------------------------------------------------------------------
   5. Form Controls (Inputs, Textareas, Selects, File Uploads)
   -------------------------------------------------------------------------- */

.tx-powermail .powermail_input,
.tx-powermail .powermail_textarea,
.tx-powermail .powermail_select,
.tx-powermail select.form-control,
.tx-powermail input.form-control,
.tx-powermail textarea.form-control {
    width: 100%;
    min-height: 48px;
    padding: 10px 14px;
    background-color: #0d0c0a;
    color: #f0e6d8;
    border: 1px solid #3d352e;
    border-radius: 8px;
    font-size: 1.05rem;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

@media (max-width: 767px) {
    .tx-powermail .powermail_input,
    .tx-powermail .powermail_textarea,
    .tx-powermail .powermail_select,
    .tx-powermail select.form-control,
    .tx-powermail input.form-control {
        font-size: 16px; /* Prevents iOS auto-zoom on focus */
    }
}

.tx-powermail textarea.powermail_textarea,
.tx-powermail textarea.form-control {
    min-height: 120px;
    resize: vertical;
}

.tx-powermail .powermail_input:focus,
.tx-powermail .powermail_textarea:focus,
.tx-powermail .powermail_select:focus,
.tx-powermail select.form-control:focus,
.tx-powermail input.form-control:focus,
.tx-powermail textarea.form-control:focus {
    border-color: #e29141;
    box-shadow: 0 0 0 2px rgba(226, 145, 65, 0.3);
    outline: none;
}

/* File Upload Field ('Charakterbild') */
.tx-powermail .powermail_fieldwrap_type_file,
.tx-powermail .powermail_fieldwrap_charakterbild,
.tx-powermail .powermail_file,
.tx-powermail input[type="file"] {
    display: block;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    float: none;
    text-align: left;
}

.tx-powermail .powermail_fieldwrap_type_file input[type="file"] {
    padding: 8px 12px;
    background: #181512;
    color: #c0b0a0;
    border: 1px dashed #4a3f37;
    border-radius: 8px;
}

/* --------------------------------------------------------------------------
   6. Checkboxes & Radio Buttons
   -------------------------------------------------------------------------- */

.tx-powermail .powermail_checkbox_outer,
.tx-powermail .powermail_radio_outer,
.tx-powermail .checkbox,
.tx-powermail .radio {
    width: 100%;
    margin-top: 8px;
    margin-bottom: 8px;
}

.tx-powermail .checkbox label,
.tx-powermail .radio label,
#c4 .powermail_fieldwrap_bilder label,
#c4 .powermail_fieldwrap_datenschutz label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    float: none;
    line-height: 1.45;
    text-align: left;
    cursor: pointer;
}

.tx-powermail input[type="checkbox"],
.tx-powermail input[type="radio"] {
    position: static;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    min-height: 20px;
    margin: 3px 0 0 0;
    accent-color: #e29141;
    cursor: pointer;
}

/* --------------------------------------------------------------------------
   7. Action Buttons (Submit, Step Previous/Next)
   -------------------------------------------------------------------------- */

/* Step Footer Navigation Buttons ("<" / ">" round icons) */
#c4 .tx-powermail .powermail_tab_navigation a.btn-warning,
#c4 .tx-powermail .powermail_tab_navigation a.btn-primary,
.tx-powermail .powermail_tab_navigation a.btn-warning,
.tx-powermail .powermail_tab_navigation a.btn-primary,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_next,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_previous,
.tx-powermail .powermail_tab_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-width: 44px !important;
    padding: 0 !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    margin-right: 8px !important;
    background-color: #e29141 !important;
    background: #e29141 !important;
    color: #120d09 !important;
    border: 1px solid #d08030 !important;
    border-radius: 50% !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: background-color 0.15s ease, border-color 0.15s ease, transform 0.15s ease !important;
}

#c4 .tx-powermail .powermail_tab_navigation a.btn-primary,
.tx-powermail .powermail_tab_navigation a.btn-primary,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_next {
    float: right !important;
}

#c4 .tx-powermail .powermail_tab_navigation a.btn-warning,
.tx-powermail .powermail_tab_navigation a.btn-warning,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_previous {
    float: left !important;
}

#c4 .tx-powermail .powermail_tab_navigation a.btn-warning:hover,
#c4 .tx-powermail .powermail_tab_navigation a.btn-primary:hover,
#c4 .tx-powermail .powermail_tab_navigation a.btn-warning:focus,
#c4 .tx-powermail .powermail_tab_navigation a.btn-primary:focus,
.tx-powermail .powermail_tab_navigation a.btn-warning:hover,
.tx-powermail .powermail_tab_navigation a.btn-primary:hover,
.tx-powermail .powermail_tab_navigation a.btn-warning:focus,
.tx-powermail .powermail_tab_navigation a.btn-primary:focus,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_next:hover,
.tx-powermail .powermail_fieldset .powermail_tab_navigation .powermail_tab_navigation_previous:hover,
.tx-powermail .powermail_tab_button:hover,
.tx-powermail .powermail_tab_button:focus {
    background-color: #f09f4e !important;
    background: #f09f4e !important;
    color: #120d09 !important;
    border-color: #e29141 !important;
    transform: scale(1.08) !important;
}

.tx-powermail .powermail_tab_button.btn-danger {
    background: #dc3545 !important;
    color: #ffffff !important;
    border-color: #bd2130 !important;
}

/* Primary Submit Buttons */
.tx-powermail .powermail_submit,
.tx-powermail button[type="submit"],
.tx-powermail input[type="submit"],
#c4 .btn-warning {
    display: inline-block;
    width: 100%;
    min-height: 48px;
    margin-top: 10px;
    padding: 10px 16px;
    background: #e29141;
    color: #120d09;
    border: 1px solid #d08030;
    border-radius: 8px;
    font-size: 1.05rem;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    box-shadow: none;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.tx-powermail .powermail_submit:hover,
.tx-powermail button[type="submit"]:hover,
.tx-powermail input[type="submit"]:hover,
#c4 .btn-warning:hover {
    background: #f09f4e;
    color: #120d09;
    border-color: #e29141;
}

/* --------------------------------------------------------------------------
   8. Validation & Error Messages (Parsley)
   -------------------------------------------------------------------------- */

.tx-powermail .parsley-errors-list,
.tx-powermail .powermail_field_error_container,
.tx-powermail .powermail_field_error {
    width: 100%;
    background-color: rgba(220, 53, 69, 0.15);
    border-left: 4px solid #dc3545;
    border-radius: 6px;
    box-sizing: border-box;
    list-style: none;
}

.tx-powermail .parsley-errors-list li,
.tx-powermail .parsley-custom-error-message,
.tx-powermail .powermail_field_error {
    margin: 0;
    padding: 0;
    color: #ff8585;
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.4;
    list-style: none;
}

/* Checkbox & Field Parsley Error State */
.tx-powermail .checkbox.parsley-error,
.tx-powermail .checkbox.parsley-error label,
.tx-powermail .radio.parsley-error,
.tx-powermail .radio.parsley-error label,
.tx-powermail .powermail_fieldwrap.parsley-error label,
.tx-powermail .has-error label {
    background: transparent;
    background-color: transparent;
    color: #d0c0b0;
}

.tx-powermail input[type="checkbox"].parsley-error,
.tx-powermail input[type="radio"].parsley-error {
    outline: 2px solid #dc3545;
    border-color: #dc3545;
}

/* Input/Select/Textarea Fehlerzustand: Kein roter Hintergrund, nur roter Rahmen */
.tx-powermail .powermail_fieldset .powermail_field_error,
.tx-powermail .powermail_fieldset .parsley-error,
.tx-powermail .powermail_fieldset .powermail_form .parsley-error:focus,
.tx-powermail .powermail_fieldset div.error {
    background: #0d0c0a !important; /* oder transparent */
    background-color: #0d0c0a !important;
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.3) !important;
}
