/* Blue Ocean — avvisi WooCommerce (errore, successo, info) con un unico stile
 * su tutto il sito. Le pagine possono ridefinire solo larghezza e margini. */
body .woocommerce-error,
body .woocommerce-message,
body .woocommerce-info {
    position: relative;
    width: auto;
    margin: 0 0 20px;
    padding: 14px 16px 14px 48px;
    border: 1px solid rgba(65, 137, 194, 0.24);
    border-radius: 14px;
    list-style: none;
    color: #184163;
    font-family: "Noto Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    text-align: left;
    word-wrap: break-word;
    background: linear-gradient(135deg, #f7fbff 0%, #eaf5fd 100%);
    box-shadow: 0 4px 12px rgba(24, 65, 99, 0.08);
    box-sizing: border-box;
}

/* WooCommerce porta il focus sull'avviso (tabindex -1) per i lettori di
   schermo: non è un elemento interattivo, quindi niente contorno di focus. */
body .woocommerce-error:focus,
body .woocommerce-message:focus,
body .woocommerce-info:focus {
    outline: none;
}

body .woocommerce-error::before,
body .woocommerce-message::before,
body .woocommerce-info::before {
    content: "i";
    position: absolute;
    top: 50%;
    left: 16px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    color: #fff;
    font-family: "Noto Sans", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 800;
    line-height: 22px;
    text-align: center;
    background: #4189c2;
    transform: translateY(-50%);
}

body .woocommerce-error {
    border-color: rgba(197, 55, 55, 0.2);
    color: #8d2929;
    background: linear-gradient(135deg, #fff8f7 0%, #fff0ee 100%);
    box-shadow: 0 4px 12px rgba(197, 55, 55, 0.08);
}

body .woocommerce-error::before {
    content: "!";
    background: #df534b;
}

body .woocommerce-message {
    border-color: rgba(42, 133, 82, 0.22);
    color: #246c45;
    background: linear-gradient(135deg, #f6fff9 0%, #eaf8ef 100%);
    box-shadow: 0 4px 12px rgba(42, 133, 82, 0.09);
}

body .woocommerce-message::before {
    content: "\2713";
    background: #319563;
}

body .woocommerce-error li,
body .woocommerce-message li,
body .woocommerce-info li {
    margin: 0;
    padding: 0;
}

body .woocommerce-error li + li,
body .woocommerce-message li + li,
body .woocommerce-info li + li {
    margin-top: 6px;
}

body .woocommerce-error a:not(.button),
body .woocommerce-message a:not(.button),
body .woocommerce-info a:not(.button) {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body .woocommerce-error .button,
body .woocommerce-message .button,
body .woocommerce-info .button {
    float: right;
    margin: -3px 0 -3px 16px;
    padding: 4px 14px;
    border: 1px solid currentColor;
    border-radius: 45px;
    color: inherit;
    font-family: "Noto Sans", sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 20px;
    text-decoration: none;
    background: transparent;
    box-shadow: none;
}

body .woocommerce-error .button:hover,
body .woocommerce-message .button:hover,
body .woocommerce-info .button:hover,
body .woocommerce-error .button:focus-visible,
body .woocommerce-message .button:focus-visible,
body .woocommerce-info .button:focus-visible {
    color: #fff;
}

body .woocommerce-error .button:hover,
body .woocommerce-error .button:focus-visible {
    background: #df534b;
    border-color: #df534b;
}

body .woocommerce-message .button:hover,
body .woocommerce-message .button:focus-visible {
    background: #319563;
    border-color: #319563;
}

body .woocommerce-info .button:hover,
body .woocommerce-info .button:focus-visible {
    background: #4189c2;
    border-color: #4189c2;
}
