.ecz-nlaaf-message {
    display: block;
    margin: 8px 0;
    font-size: 0.95em;
}

.ecz-nlaaf-message.is-success {
    color: #167a35;
}

.ecz-nlaaf-message.is-error {
    color: #b00020;
}

.ecz-nlaaf-message.is-loading {
    color: #555;
}

.ecz-nlaaf-readonly {
    background: #f7f7f7;
}

.ecz-nlaaf-widget {
    max-width: 520px;
    padding: 16px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.ecz-nlaaf-widget input {
    width: 100%;
    max-width: 100%;
}

.ecz-nlaaf-message.is-loading::after {
    content: "";
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    margin-left: 6px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    vertical-align: -0.12em;
    animation: ecz-nlaaf-spin 0.8s linear infinite;
}

@keyframes ecz-nlaaf-spin {
    to { transform: rotate(360deg); }
}


/* WooCommerce managed address fields */
.woocommerce-checkout .ecz-nlaaf-hidden {
    display: none !important;
}

.woocommerce-checkout .ecz-nlaaf-visible {
    display: block;
}

.woocommerce-checkout .ecz-nlaaf-found input.ecz-nlaaf-readonly {
    background: #f6f7f7;
    cursor: not-allowed;
}

.woocommerce-checkout .ecz-nlaaf-manual input {
    background: #fff;
}

.woocommerce-checkout .ecz-nlaaf-message {
    display: block;
    margin: .35rem 0 .75rem;
    font-size: .92em;
}


/* WooCommerce address result shown as text, while real checkout fields stay hidden on a successful lookup. */
.woocommerce-checkout .ecz-nlaaf-woo-summary {
    display: block;
    margin: .45rem 0 1rem;
    padding: .7rem .85rem;
    border: 1px solid #dcdcde;
    border-radius: 6px;
    background: #f6f7f7;
    color: #1d2327;
    line-height: 1.45;
}

.woocommerce-checkout .ecz-nlaaf-woo-summary.ecz-nlaaf-summary-found {
    border-color: #8ed1a5;
    background: #f0fff4;
}

.woocommerce-checkout .ecz-nlaaf-woo-summary.ecz-nlaaf-summary-manual {
    border-color: #dba617;
    background: #fff8e5;
}
