/**
 * UAWPF Address Field Frontend Styles
 *
 * @package UAWPF_Address_Field
 * @since 1.0.0
 */

/* Address Field Container */
.wpforms-field-uawpf-address {
    width: 100%;
}

.wpforms-field-uawpf-address .wpforms-field-address {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -5px;
}

.wpforms-field-uawpf-address .wpforms-field-row {
    width: 100%;
    margin-bottom: 10px;
}

.wpforms-field-uawpf-address .wpforms-field-row-block {
    padding: 0 5px;
    box-sizing: border-box;
}

/* Half width inputs */
.wpforms-field-uawpf-address .wpforms-one-half {
    width: 50%;
    float: left;
}

/* Full width inputs */
.wpforms-field-uawpf-address .wpforms-one-full {
    width: 100%;
    float: none;
    clear: both;
}

/* First element in row */
.wpforms-field-uawpf-address .wpforms-first {
    clear: left;
}

/* Inner rows for city/state and postal/country */
.wpforms-field-uawpf-address .wpforms-field-row-inner {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}

.wpforms-field-uawpf-address .wpforms-field-row-inner .wpforms-field-row-block {
    margin-bottom: 10px;
}

/* Input and Select Styling */
.wpforms-field-uawpf-address input[type="text"],
.wpforms-field-uawpf-address select {
    width: 100%;
    box-sizing: border-box;
}

/* Sublabels */
.wpforms-field-uawpf-address .wpforms-field-sublabel {
    display: block;
    font-size: 13px;
    color: #666;
    margin-top: 5px;
}

/* Clear floats */
.wpforms-field-uawpf-address .wpforms-clear::after {
    content: "";
    display: table;
    clear: both;
}

/* Responsive Styles */
@media (max-width: 600px) {
    .wpforms-field-uawpf-address .wpforms-one-half {
        width: 100%;
        float: none;
    }
    
    .wpforms-field-uawpf-address .wpforms-first {
        clear: none;
    }
    
    .wpforms-field-uawpf-address .wpforms-field-row-inner {
        flex-direction: column;
    }
    
    .wpforms-field-uawpf-address .wpforms-field-row-inner .wpforms-field-row-block {
        width: 100%;
    }
}

/* Size Variants */
.wpforms-field-uawpf-address.wpforms-field-small input[type="text"],
.wpforms-field-uawpf-address.wpforms-field-small select {
    max-width: 300px;
}

.wpforms-field-uawpf-address.wpforms-field-medium input[type="text"],
.wpforms-field-uawpf-address.wpforms-field-medium select {
    max-width: 450px;
}

.wpforms-field-uawpf-address.wpforms-field-large input[type="text"],
.wpforms-field-uawpf-address.wpforms-field-large select {
    max-width: 100%;
}

/* Required Field Indicator */
.wpforms-field-uawpf-address .wpforms-field-required {
    color: #cc0000;
    margin-left: 3px;
}

/* Validation Error State */
.wpforms-field-uawpf-address.wpforms-has-error input[type="text"],
.wpforms-field-uawpf-address.wpforms-has-error select {
    border-color: #cc0000;
}

.wpforms-field-uawpf-address .wpforms-error {
    color: #cc0000;
    font-size: 13px;
    margin-top: 5px;
}

/* Focus States */
.wpforms-field-uawpf-address input[type="text"]:focus,
.wpforms-field-uawpf-address select:focus {
    outline: none;
    border-color: #1e90ff;
    box-shadow: 0 0 0 1px #1e90ff;
}

/* Disabled States */
.wpforms-field-uawpf-address input[type="text"]:disabled,
.wpforms-field-uawpf-address select:disabled {
    background-color: #f5f5f5;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Hidden sublabels */
.wpforms-field-uawpf-address .wpforms-sublabel-hide {
    display: none;
}

/* Modern Layout Mode */
.wpforms-field-uawpf-address.wpforms-field-layout-modern {
    background: #f9f9f9;
    padding: 20px;
    border-radius: 8px;
}

.wpforms-field-uawpf-address.wpforms-field-layout-modern input[type="text"],
.wpforms-field-uawpf-address.wpforms-field-layout-modern select {
    border: 1px solid #ddd;
    padding: 12px 15px;
    border-radius: 4px;
    font-size: 15px;
}

.wpforms-field-uawpf-address.wpforms-field-layout-modern input[type="text"]:focus,
.wpforms-field-uawpf-address.wpforms-field-layout-modern select:focus {
    border-color: #0073aa;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.2);
}

/* Print Styles */
@media print {
    .wpforms-field-uawpf-address input[type="text"],
    .wpforms-field-uawpf-address select {
        border: 1px solid #ccc;
        background: white;
    }
}
