/* ==========================================================
 * COUCOUY · FAVORITE ADDRESSES
 *
 * Organización:
 * 1. Helpers
 * 2. Estado GET/POST
 * 3. Prefill
 * 4. Preview
 * 5. Render
 * 6. Guardado
 * 7. Hooks
 *
 * Mantener este orden en futuras modificaciones.
 * ========================================================== */

/* ==========================================================
 * VARIABLES GLOBALES
 * ========================================================== */

.woocommerce-account {
    /* Colores */
    --coucouy-button-bg: #ffd4a3;
    --coucouy-button-border: #ff9a16;
    --coucouy-button-text: #1f1f1f;
    --coucouy-button-hover-bg: rgba(203,108,230,.12);
    --coucouy-button-hover-border: #cb6ce6;
    --coucouy-button-hover-text: #cb6ce6;
    --coucouy-field-bg: #050505;
    --coucouy-field-border: rgba(255,255,255,.32);
    --coucouy-field-text: #f2f2f2;
    --coucouy-text: #f2f2f2;
    --coucouy-field-focus: #3D63C9;
    --coucouy-title-color: #cb6ce6;
    --coucouy-accent: #ff9a16;
    --coucouy-soft-accent: #ffd4a3;

    /* TipografÃ­a */
    --coucouy-text-base: 18px;
    --coucouy-text-large: 28px;
    --coucouy-text-small: 16px;
    --coucouy-help-size: .92rem;
    --coucouy-font: var(--coucouy-text-base);
    --coucouy-h1-size: 42px;
    --coucouy-h2-size: 36px;
    --coucouy-h3-size: 25px;
    --coucouy-line: 1.5;

    /* Espaciados */
    --coucouy-column-gap: 42px;
    --coucouy-row-gap: 18px;
    --coucouy-small-gap: 12px;
    --coucouy-section-gap: 18px;
    --coucouy-field-gap: 24px;
    --coucouy-button-top-gap: 32px;
    --coucouy-title-gap: 18px;
    --coucouy-label-gap: 10px;
    --coucouy-control-gap: 10px;
    --coucouy-option-gap: 12px;
    --coucouy-action-gap: 32px;
    --coucouy-large-gap: 48px;
    --coucouy-addresses-save-gap: 50px;

    /* Campos */
    --coucouy-field-radius: 12px;
    --coucouy-button-radius: 4px;
    --coucouy-field-padding: 10px 12px;
    --coucouy-select-height: 48px;
    --coucouy-input-height: 42px;

    /* Bloques */
    --coucouy-block-padding: 22px;
}
/* ==========================================================
 * BOTONES
 * ========================================================== */

.woocommerce-account .coucouy-button,
.woocommerce-account .woocommerce-info .wc-forward.button,
.woocommerce-account .woocommerce-EditAccountForm button.button,
.woocommerce-account .woocommerce-address-fields button.button,
.woocommerce-account .woocommerce-ResetPassword button.button,
.woocommerce-account button.coucouy-address-save-button,
.woocommerce-account button.coucouy-addresses-save-button {
    background: var(--coucouy-button-bg) !important;
    border: 4px solid var(--coucouy-button-border) !important;
    border-radius: var(--coucouy-button-radius) !important;
    color: var(--coucouy-button-text) !important;
    padding: 8px 18px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: background-color .25s ease, border-color .25s ease, color .25s ease !important;
}

.woocommerce-account .coucouy-button:hover,
.woocommerce-account .coucouy-button:focus,
.woocommerce-account .coucouy-button:active,
.woocommerce-account .woocommerce-info .wc-forward.button:hover,
.woocommerce-account .woocommerce-info .wc-forward.button:focus,
.woocommerce-account .woocommerce-info .wc-forward.button:active,
.woocommerce-account .woocommerce-EditAccountForm button.button:hover,
.woocommerce-account .woocommerce-EditAccountForm button.button:focus,
.woocommerce-account .woocommerce-EditAccountForm button.button:active,
.woocommerce-account .woocommerce-address-fields button.button:hover,
.woocommerce-account .woocommerce-address-fields button.button:focus,
.woocommerce-account .woocommerce-address-fields button.button:active,
.woocommerce-account .woocommerce-ResetPassword button.button:hover,
.woocommerce-account .woocommerce-ResetPassword button.button:focus,
.woocommerce-account .woocommerce-ResetPassword button.button:active,
.woocommerce-account button.coucouy-address-save-button:hover,
.woocommerce-account button.coucouy-address-save-button:focus,
.woocommerce-account button.coucouy-address-save-button:active,
.woocommerce-account button.coucouy-addresses-save-button:hover,
.woocommerce-account button.coucouy-addresses-save-button:focus,
.woocommerce-account button.coucouy-addresses-save-button:active {
    background: var(--coucouy-button-hover-bg) !important;
    border-color: var(--coucouy-button-hover-border) !important;
    color: var(--coucouy-button-hover-text) !important;
}
/* ==========================================================
 * MI CUENTA · NAVEGACIÓN LATERAL
 * ========================================================== */

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: inline-block !important;
    width: 210px !important;
    min-width: 210px !important;
    padding: 6px 12px !important;
    border-radius: var(--coucouy-button-radius) !important;
    border: 1px solid var(--coucouy-field-focus) !important;
    color: var(--coucouy-field-focus) !important;
    background: transparent !important;
    text-decoration: none !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.2px !important;
    line-height: 1.3 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: rgba(61, 99, 201, 0.08) !important;
    color: var(--coucouy-field-focus) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    border-color: var(--coucouy-title-color) !important;
    background: rgba(203, 108, 230, 0.12) !important;
    color: var(--coucouy-title-color) !important;
}

/* ==========================================================
 * AVISOS WOOCOMMERCE
 * ========================================================== */

.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-error::before {
    display: none !important;
    content: none !important;
}

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    padding: 1.2em 2em !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Éxito */

.woocommerce-account .woocommerce-message {
    border: 2px solid #16a34a !important;
    background: rgba(22, 163, 74, 0.12) !important;
    color: #dcfce7 !important;
}

.woocommerce-account .woocommerce-message li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    color: #dcfce7 !important;
}

/* Información */

.woocommerce-account .woocommerce-message.coucouy-notice-info,
.woocommerce-account .woocommerce-info {
    border: 2px solid var(--coucouy-field-focus) !important;
    background: rgba(61, 99, 201, 0.12) !important;
    color: #dce8ff !important;
}

.woocommerce-account .woocommerce-info li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    color: #dce8ff !important;
}

/* Error */

.woocommerce-account .woocommerce-error {
    border: 2px solid #ff1616 !important;
    background: rgba(255, 22, 22, 0.12) !important;
    color: #ffd2d2 !important;
}

.woocommerce-account .woocommerce-error li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    color: #ffd2d2 !important;
}

/* ==========================================================
 * CAMPOS Y FORMULARIOS
 * ========================================================== */

.woocommerce-account .coucouy-my-profile input.coucouy-input,
.woocommerce-account .coucouy-my-profile textarea.coucouy-input,
.woocommerce-account .coucouy-my-profile select.coucouy-input,
.woocommerce-account .woocommerce-address-fields input.input-text,
.woocommerce-account .woocommerce-address-fields select,
.woocommerce-account .woocommerce-address-fields textarea,
.woocommerce-account .woocommerce-EditAccountForm input.input-text,
.woocommerce-account .woocommerce-EditAccountForm input[type="email"],
.woocommerce-account .woocommerce-EditAccountForm input[type="password"],
.woocommerce-account .woocommerce-ResetPassword input.input-text {
    width: 100% !important;
    background-color: var(--coucouy-field-bg) !important;
    border: 1px solid var(--coucouy-field-border) !important;
    border-radius: var(--coucouy-field-radius) !important;
    color: var(--coucouy-field-text) !important;
    padding: var(--coucouy-field-padding) !important;
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
    min-height: var(--coucouy-select-height) !important;
    box-shadow: none !important;
}

.woocommerce-account .coucouy-my-profile input.coucouy-input:focus,
.woocommerce-account .coucouy-my-profile textarea.coucouy-input:focus,
.woocommerce-account .coucouy-my-profile select.coucouy-input:focus,
.woocommerce-account .woocommerce-address-fields input.input-text:focus,
.woocommerce-account .woocommerce-address-fields select:focus,
.woocommerce-account .woocommerce-address-fields textarea:focus,
.woocommerce-account .woocommerce-EditAccountForm input.input-text:focus,
.woocommerce-account .woocommerce-EditAccountForm input[type="email"]:focus,
.woocommerce-account .woocommerce-EditAccountForm input[type="password"]:focus,
.woocommerce-account .woocommerce-ResetPassword input.input-text:focus {
    outline: none !important;
    border-color: var(--coucouy-field-focus) !important;
    box-shadow: 0 0 0 2px rgba(61,99,201,.35) !important;
}
/* ==========================================================
 * SELECTORES COUCOUY
 * ========================================================== */

.woocommerce-account .coucouy-my-profile select.coucouy-input,
.woocommerce-account .woocommerce-address-fields select,
.woocommerce-account .woocommerce-address-fields select.select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: none !important;
}

/* ==========================================================
 * SELECT2
 * ========================================================== */

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow {
    width: 32px !important;
    height: var(--coucouy-select-height) !important;
    top: 0 !important;
    right: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: none !important;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow::before {
    content: "⌄";
    color: var(--coucouy-field-text);
    font-size: 24px;
    line-height: 1;
    transform: translateY(-10px);
}

.woocommerce-account .select2-container--default .select2-selection--single {
    background: var(--coucouy-field-bg) !important;
    border: 1px solid var(--coucouy-field-border) !important;
    border-radius: var(--coucouy-field-radius) !important;
    height: var(--coucouy-select-height) !important;
    color: var(--coucouy-field-text) !important;
    box-shadow: none !important;
    outline: none !important;
}

.woocommerce-account .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-account .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--coucouy-field-focus) !important;
    box-shadow: 0 0 0 2px rgba(61,99,201,.35) !important;
}

.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--coucouy-field-text) !important;
    height: var(--coucouy-select-height) !important;
    line-height: var(--coucouy-select-height) !important;
    padding: 0 34px 0 12px !important;
}

.woocommerce-account .select2-search--dropdown .select2-search__field,
.woocommerce-account .select2-dropdown,
.woocommerce-account .select2-container--default .select2-results__option {
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .select2-search--dropdown .select2-search__field {
    border: 1px solid var(--coucouy-field-focus) !important;
    outline: none !important;
    box-shadow: none !important;
}

.woocommerce-account .select2-dropdown {
    border: 1px solid var(--coucouy-field-border) !important;
}

.woocommerce-account .select2-container--default .select2-results__option--highlighted[aria-selected],
.woocommerce-account .select2-container--default .select2-results__option--highlighted[data-selected] {
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-soft-accent) !important;
}

.woocommerce-account .select2-container--default .select2-results__option[aria-selected="true"],
.woocommerce-account .select2-container--default .select2-results__option[data-selected="true"] {
    background: rgba(61,99,201,.18) !important;
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_country_field *,
.woocommerce-account .woocommerce-address-fields #billing_country_field * {
    font-weight: 400 !important;
}

.woocommerce-account .woocommerce-address-fields label,
.woocommerce-account .woocommerce-address-fields input,
.woocommerce-account .woocommerce-address-fields select,
.woocommerce-account .woocommerce-address-fields textarea,
.woocommerce-account .woocommerce-address-fields .select2-selection__rendered,
.woocommerce-account .woocommerce-address-fields .woocommerce-input-wrapper,
.woocommerce-account .woocommerce-address-fields p,
.woocommerce-account .woocommerce-address-fields span {
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
}

.woocommerce-account .woocommerce-MyAccount-content form legend,
.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields__title {
    font-weight: 700 !important;
}

/* ==========================================================
 * MI PERFIL · ESTRUCTURA GENERAL
 * ========================================================== */

.woocommerce-account .coucouy-my-profile {
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
    color: var(--coucouy-text) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-info-text {
    margin-bottom: var(--coucouy-large-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-info-text p {
    margin-bottom: var(--coucouy-field-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-info-text p:first-child {
    font-size: var(--coucouy-text-large) !important;
    line-height: 1.25 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-info-text p:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-block {
    margin-bottom: var(--coucouy-large-gap) !important;
    padding: 0 var(--coucouy-block-padding) var(--coucouy-block-padding) 0 !important;
    box-sizing: border-box !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-block-note,
.woocommerce-account .coucouy-my-profile .coucouy-field-help,
.woocommerce-account .coucouy-my-profile p,
.woocommerce-account .coucouy-my-profile label,
.woocommerce-account .coucouy-my-profile span {
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
    color: var(--coucouy-text) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-block-note {
    margin-bottom: var(--coucouy-field-gap) !important;
    color: var(--coucouy-soft-accent) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-fields {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: var(--coucouy-column-gap) !important;
    row-gap: var(--coucouy-field-gap) !important;
    align-items: start !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-field-row {
    margin: 0 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-field-row[data-error="1"] {
    border: 2px solid #d63638 !important;
    border-radius: 8px !important;
    padding: 12px !important;
    background: rgba(214,54,56,0.06) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-label {
    display: block !important;
    margin-bottom: var(--coucouy-label-gap) !important;
    font-weight: 400 !important;
    color: var(--coucouy-field-text) !important;
}

/* Títulos principales */
.woocommerce-account .coucouy-my-profile h2,
.woocommerce-account .woocommerce-MyAccount-content > h2,
.coucouy-account-details-header h2,
.woocommerce-MyAccount-content form h2 {
    color: var(--coucouy-title-color) !important;
    font-size: var(--coucouy-h2-size) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    margin-bottom: var(--coucouy-title-gap) !important;
}

/* Subtítulos de bloque */
.woocommerce-account .coucouy-my-profile h3,
.woocommerce-address-fields > h3,
.woocommerce-account .woocommerce-address-fields h3,
.woocommerce-MyAccount-content form h3 {
    font-size: var(--coucouy-h3-size) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
	margin-top: 0 !important;
    margin-bottom: var(--coucouy-title-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-checkbox-group {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: var(--coucouy-column-gap) !important;
    row-gap: var(--coucouy-option-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-radio-group {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--coucouy-option-gap) !important;
}
/* ==========================================================
 * MI PERFIL · SOBRE TI
 * ========================================================== */

.woocommerce-account .coucouy-my-profile [data-field-key="coucouy_family_moment"] {
    margin-top: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-my-profile
.coucouy-profile-block-about_you
[data-field-key="coucouy_family_moment"] .coucouy-checkbox-group {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--coucouy-small-gap) !important;
}

.woocommerce-account .coucouy-profile-block-about-you-layout {
    top: 0 !important;
    margin-top: var(--coucouy-title-gap) !important;
    margin-bottom: 0 !important;
}

.woocommerce-account .coucouy-profile-block-inspiration
[data-field-key="coucouy_free_text_wishlist"] {
    transform: translateY(0) !important;
}

.woocommerce-account .coucouy-my-profile
[data-field-key="coucouy_children_birth_years"] {
    margin-top: var(--coucouy-field-gap) !important;
}

.woocommerce-account .coucouy-my-profile
[data-field-key="coucouy_children_birthday_months"] {
    margin-top: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-my-profile
[data-field-key="coucouy_children_age_ranges"] {
    margin-top: var(--coucouy-title-gap) !important;
}

.woocommerce-account input[type="checkbox"],
.woocommerce-account input[type="radio"] {
    accent-color: var(--coucouy-field-focus) !important;
    margin-right: var(--coucouy-control-gap) !important;
    vertical-align: middle;
}

/* ==========================================================
 * MI PERFIL · DIRECCIÓN DE ENVÍO
 * ========================================================== */

.woocommerce-account .coucouy-profile-block-shipping [data-field-key="shipping_address_1"],
.woocommerce-account .coucouy-profile-block-shipping [data-field-key="shipping_address_2"] {
    grid-column: 1 / -1 !important;
}

.woocommerce-account .coucouy-profile-block-shipping [data-field-key="shipping_address_2"] .coucouy-label {
    display: none !important;
}

/* ==========================================================
 * MI PERFIL · INSPIRACIÓN
 * ========================================================== */

.woocommerce-account .coucouy-profile-block-inspiration{
    padding-top: 0 !important;
}

.woocommerce-account .coucouy-profile-block-inspiration [data-field-key="coucouy_interests"] {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
}

.woocommerce-account .coucouy-profile-block-inspiration [data-field-key="coucouy_marketing_optin"] {
    grid-column: 1 !important;
    grid-row: 2 !important;
	align-self: start;
	transform: translateY(18px);
}

.woocommerce-account .coucouy-profile-block-inspiration
[data-field-key="coucouy_free_text_wishlist"] {
    grid-column: 2 !important;
    grid-row: 2 !important;
	margin-top: var(--coucouy-title-gap) !important;
}

.woocommerce-account .coucouy-profile-block-inspiration
[data-field-key="coucouy_free_text_wishlist"][style*="display: none"] {
    grid-column: auto !important;
    grid-row: auto !important;
    margin-top: 0 !important;
}

.woocommerce-account .coucouy-profile-block-inspiration
[data-field-key="coucouy_free_text_wishlist"] textarea {
    height: 70px !important;
    min-height: 70px !important;
    max-height: 70px !important;
}

.woocommerce-account .coucouy-profile-block-inspiration [data-field-key="coucouy_contact_frequency"] {
    grid-column: 1 !important;
    grid-row: 3 !important;
    margin-top: var(--coucouy-label-gap) !important;
}
		
.woocommerce-account .coucouy-my-profile .coucouy-profile-save-row {
    margin-top: var(--coucouy-button-top-gap) !important;
    text-align: left !important;
}
		
.woocommerce-account .coucouy-my-profile .coucouy-profile-fields-two-columns-fixed {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: var(--coucouy-column-gap) !important;
    row-gap: var(--coucouy-field-gap) !important;
    align-items: start !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-column {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--coucouy-field-gap) !important;
}

/* ==========================================================
 * MI PERFIL · IDEAS PARA TUS HIJ@S
 * ========================================================== */
	
.coucouy-children-names-form {
    margin: 0 0 var(--coucouy-field-gap) 0;
}

.coucouy-children-names-fields {
    margin-top: var(--coucouy-option-gap);
}

.coucouy-children-names-help {
    white-space: nowrap;
    margin-bottom: var(--coucouy-label-gap);
}

.coucouy-children-names-input {
    max-width: 320px;
    height: var(--coucouy-input-height);
}

.woocommerce-account .coucouy-my-profile .coucouy-children-names-submit-row {
    margin: var(--coucouy-button-top-gap) 0 0 0 !important;
}
	
.coucouy-children-ideas-notice {
    margin: 0 0 var(--coucouy-action-gap) 0;
}

.woocommerce-account .coucouy-my-profile .coucouy-children-ideas-notice a {
    color: var(--coucouy-soft-accent) !important;
    text-decoration: none !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-children-ideas-notice a:hover,
.woocommerce-account .coucouy-my-profile .coucouy-children-ideas-notice a:focus {
    color: var(--coucouy-accent) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-children-ideas-title {
    color: var(--coucouy-accent) !important;
    margin-bottom: var(--coucouy-option-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-children-names-form .coucouy-button {
    width: 160px !important;
    padding: 8px 0 !important;
}

.woocommerce-account .coucouy-my-profile details summary {
    color: var(--coucouy-soft-accent) !important;
    cursor: pointer !important;
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
    font-weight: 500 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-block-behavior-interests {
    margin-top: calc(var(--coucouy-large-gap) * -1) !important;
}

/* ==========================================================
 * MI PERFIL · RECOMENDACIONES
 * ========================================================== */

.woocommerce-account .coucouy-my-profile .coucouy-recommended-posts-list {
    margin: 0 !important;
    padding-left: 0 !important;
    list-style: none !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-recommended-post-item {
    margin-bottom: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-recommended-post-item a {
    color: var(--coucouy-accent) !important;
    text-decoration: none !important;
    font-size: var(--coucouy-font) !important;
    line-height: var(--coucouy-line) !important;
    font-weight: 500 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-recommended-post-item a:hover {
    color: var(--coucouy-soft-accent) !important;
    text-decoration: none !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-inline-link {
    color: var(--coucouy-accent) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-inline-link:hover {
    color: var(--coucouy-soft-accent) !important;
}

.woocommerce-account .woocommerce-info .wc-forward {
    float: none !important;
    display: table !important;
    margin-top: var(--coucouy-field-gap) !important;
    margin-left: 0 !important;
}

/* ==========================================================
 * MI CUENTA Â· DIRECCIONES
 * ========================================================== */

.woocommerce-account .coucouy-orders-intro {
    margin-bottom: var(--coucouy-field-gap) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
    margin-top: calc(var(--coucouy-label-gap) - 2px) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
    margin-bottom: var(--coucouy-option-gap) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a {
    float: none !important;
    display: block !important;
    margin-top: var(--coucouy-option-gap) !important;
}

.woocommerce-account
.woocommerce-MyAccount-content
.u-columns.woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: var(--coucouy-column-gap) !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.woocommerce-account
.woocommerce-MyAccount-content
.u-column1.woocommerce-Address {
    order: 2 !important;
}

.woocommerce-account
.woocommerce-MyAccount-content
.u-column2.woocommerce-Address {
    order: 1 !important;
}

.woocommerce-account
.woocommerce-MyAccount-content
.u-columns.woocommerce-Addresses.col2-set.addresses
.u-column1.woocommerce-Address.col-1,

.woocommerce-account
.woocommerce-MyAccount-content
.u-columns.woocommerce-Addresses.col2-set.addresses
.u-column2.woocommerce-Address.col-2 {
    width: auto !important;
    max-width: none !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content .coucouy-addresses-summary ~ p,
.woocommerce-account .woocommerce-MyAccount-content .coucouy-addresses-summary ~ .u-columns.woocommerce-Addresses {
    display: none !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-section-title {
    color: var(--coucouy-accent) !important;
    font-weight: 700 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-edit-link {
    display: inline-flex !important;
    align-items: center !important;
    margin-right: var(--coucouy-small-gap) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--coucouy-soft-accent) !important;
    font-size: var(--coucouy-text-small) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    transition: color .25s ease !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-new-link {
    padding: 6px 12px !important;
    border: 1px solid rgba(255, 212, 163, 0.35) !important;
    border-radius: var(--coucouy-button-radius) !important;
    background: rgba(255, 212, 163, 0.03) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-edit-link:hover,
.woocommerce-account .coucouy-my-profile .coucouy-address-edit-link:focus {
    color: var(--coucouy-accent) !important;
    text-decoration: none !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-billing-block {
    margin-top: var(--coucouy-large-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-same-address-form {
    margin-top: var(--coucouy-label-gap) !important;
    margin-bottom: var(--coucouy-field-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-favorite-address-form {
    margin: var(--coucouy-field-gap) 0 var(--coucouy-action-gap) 0 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select-label {
    display: block !important;
    margin-bottom: var(--coucouy-label-gap) !important;
    color: var(--coucouy-soft-accent) !important;
    font-size: var(--coucouy-font) !important;
    font-weight: 700 !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select + .select2-container {
    width: 340px !important;
    max-width: 340px !important;
	margin-bottom: var(--coucouy-title-gap) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select + .select2-container .select2-selection--single {
    min-height: 42px !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select + .select2-container .select2-selection__rendered {
    line-height: 1.2 !important;
    height: auto !important;
    padding-left: 10px !important;
    padding-right: 28px !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select option {
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-address-select:focus {
    outline: none !important;
    border-color: var(--coucouy-field-focus) !important;
    box-shadow: 0 0 0 2px rgba(61, 99, 201, 0.35) !important;
}

.woocommerce-account .coucouy-edit-address-favorite-box {
    margin: var(--coucouy-field-gap) 0 var(--coucouy-field-gap) 0 !important;
    padding: var(--coucouy-block-padding) 20px !important;
    border: 1px solid rgba(255, 154, 22, 0.45) !important;
    border-radius: 10px !important;
    background: rgba(255, 154, 22, 0.04) !important;
}

.woocommerce-account .coucouy-favorite-address-label-row {
    margin-top: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-favorite-address-label-row input {
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-field-text) !important;
    border: 1px solid #444 !important;
    border-radius: 8px !important;
    min-height: 42px !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_save_current_address_as_favorite_field {
    grid-column: 1 !important;
    grid-row: 8 !important;
    display: flex !important;
    align-items: flex-start !important;
    width: auto !important;
    min-height: 0 !important;
    margin: var(--coucouy-small-gap) 0 var(--coucouy-label-gap) 0 !important;
}

.woocommerce-account .coucouy-delete-favorite-address-row {
    margin: 0 0 var(--coucouy-field-gap) 0 !important;
}

.woocommerce-account .coucouy-address-delete-link,
.woocommerce-account button.coucouy-address-delete-link,
.woocommerce-account button.button.coucouy-address-delete-link {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    margin-right: var(--coucouy-small-gap) !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--coucouy-soft-accent) !important;
    font-size: var(--coucouy-text-small) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: color .25s ease !important;
}

.woocommerce-account .coucouy-address-delete-link:hover,
.woocommerce-account .coucouy-address-delete-link:focus,
.woocommerce-account button.coucouy-address-delete-link:hover,
.woocommerce-account button.coucouy-address-delete-link:focus,
.woocommerce-account button.button.coucouy-address-delete-link:hover,
.woocommerce-account button.button.coucouy-address-delete-link:focus {
    color: var(--coucouy-accent) !important;
    background: transparent !important;
    border: 0 !important;
}

.woocommerce-account .woocommerce-address-fields p:last-of-type {
    margin-top: var(--coucouy-label-gap) !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_current_address_favorite_label_field .woocommerce-input-wrapper {
    display: block !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_current_address_favorite_label_field label {
    display: block !important;
    margin: var(--coucouy-label-gap) 0 0 0 !important;
    white-space: normal !important;
}

.woocommerce-address-fields .coucouy-edit-address-favorite-label-row .woocommerce-input-wrapper {
    width: 100% !important;
    display: block !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_current_address_favorite_label_field input {
    width: 100% !important;
    min-width: 0 !important;
}

.woocommerce-account .coucouy-address-select {
    margin-bottom: var(--coucouy-field-gap) !important;
}

.coucouy-edit-address-favorite-checkbox-row .optional,
.coucouy-edit-address-favorite-label-row .optional {
    display: none;
}

.coucouy-favorite-preview {
    margin-top: var(--coucouy-title-gap);
    margin-bottom: var(--coucouy-field-gap);
}

/* ==========================================================
 * MI CUENTA Â· EDITAR DIRECCIÃ“N
 * ========================================================== */

.woocommerce-account .woocommerce-address-fields__field-wrapper {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: var(--coucouy-column-gap) !important;
    row-gap: var(--coucouy-row-gap) !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row {
    width: auto !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide {
    grid-column: 1 / -1 !important;
}

.woocommerce-account .woocommerce-address-fields button[name="save_address"] {
    margin-top: var(--coucouy-title-gap) !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_first_name_field,
.woocommerce-account .woocommerce-address-fields #billing_first_name_field {
    grid-column: 1 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_last_name_field,
.woocommerce-account .woocommerce-address-fields #billing_last_name_field {
    grid-column: 2 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_address_1_field,
.woocommerce-account .woocommerce-address-fields #billing_address_1_field,
.woocommerce-account .woocommerce-address-fields #shipping_address_2_field,
.woocommerce-account .woocommerce-address-fields #billing_address_2_field {
    grid-column: 1 / -1 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_city_field,
.woocommerce-account .woocommerce-address-fields #billing_city_field {
    grid-column: 1 !important;
    grid-row: 4 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_postcode_field,
.woocommerce-account .woocommerce-address-fields #billing_postcode_field {
    grid-column: 2 !important;
    grid-row: 4 !important;
    margin-top: 0 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_state_field,
.woocommerce-account .woocommerce-address-fields #billing_state_field {
    grid-column: 1 !important;
    grid-row: 5 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_country_field,
.woocommerce-account .woocommerce-address-fields #billing_country_field {
    grid-column: 2 !important;
    grid-row: 5 !important;
}

.woocommerce-account .woocommerce-address-fields #shipping_phone_field,
.woocommerce-account .woocommerce-address-fields #billing_phone_field {
    grid-column: 1 !important;
    grid-row: 6 !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_current_address_favorite_label_field {
    grid-column: 2 !important;
    grid-row: 6 !important;
    align-self: start !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    transform: translateY(-10px) !important;
}

.woocommerce-account .woocommerce-address-fields #coucouy_delete_current_favorite_address_field {
    grid-column: 2 !important;
    grid-row: 7 !important;
    margin-top: -12px !important;
    margin-bottom: 0 !important;
}

.woocommerce-account .woocommerce-address-fields label {
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .woocommerce-address-fields .required {
    color: var(--coucouy-field-text) !important;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-address-fields abbr.required {
    display: none !important;
}
/* ==========================================================
 * MI PERFIL · AJUSTES DE LAYOUT
 * ========================================================== */

.coucouy-addresses-save-row {
    margin-top: var(--coucouy-button-top-gap) !important;
}

/* ==========================================================
 * MI CUENTA · TÍTULO PRINCIPAL
 * ========================================================== */

.woocommerce-account h1.entry-title {
    font-size: 0 !important;
}

.woocommerce-account h1.entry-title::after {
    content: "Mi Cuenta";
    font-size: var(--coucouy-h1-size) !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    color: var(--coucouy-field-text) !important;
}
/* ==========================================================
 * MI CUENTA · DETALLES DE LA CUENTA
 * ========================================================== */

.coucouy-account-details-header {
    margin-bottom: var(--coucouy-field-gap) !important;
}

.coucouy-account-details-header p {
    color: var(--coucouy-field-text) !important;
    font-size: var(--coucouy-text-large) !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    margin: 0 !important;
    transform: none !important;
}

.woocommerce-account .woocommerce-EditAccountForm em {
    color: var(--coucouy-soft-accent) !important;
    font-size: var(--coucouy-help-size) !important;
    line-height: 1.45 !important;
    font-style: normal !important;
    display: block !important;
    margin-top: .35rem !important;
}

.woocommerce-account .woocommerce-EditAccountForm label {
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .woocommerce-EditAccountForm .required {
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .woocommerce-ResetPassword .required,
.woocommerce-account .lost_reset_password .required {
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
    margin-top: var(--coucouy-field-gap) !important;
    margin-bottom: var(--coucouy-title-gap) !important;
}

.woocommerce-account .woocommerce-EditAccountForm {
    margin-top: 0 !important;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset {
    margin-top: var(--coucouy-large-gap) !important;
}

.coucouy-lost-password-link {
    display: block;
    margin-top: .35rem !important;
    color: var(--coucouy-soft-accent) !important;
    font-size: var(--coucouy-help-size) !important;
    line-height: 1.45 !important;
    font-style: normal !important;
    text-decoration: none !important;
}

.coucouy-lost-password-link:hover {
    color: var(--coucouy-accent) !important;
}

.woocommerce-account .woocommerce-ResetPassword {
    max-width: 890px !important;
}

.woocommerce-account .woocommerce-EditAccountForm button[type="submit"] {
    margin-top: var(--coucouy-button-top-gap) !important;
}

/* ==========================================================
 * MI CUENTA · RECUPERAR CONTRASEÑA
 * ========================================================== */

.woocommerce-lost-password h1.entry-title::after {
    color: var(--coucouy-title-color) !important;
    font-weight: 700 !important;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend,
.woocommerce-account .woocommerce-EditAccountForm fieldset legend a {
    color: var(--coucouy-accent) !important;
    font-size: var(--coucouy-h3-size) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    pointer-events: none !important;
    cursor: default !important;
}
        
.woocommerce-account .coucouy-my-profile
.coucouy-field-row[data-field-key="coucouy_user_birthday_month"] {
    margin-top: var(--coucouy-field-gap) !important;
}
		
.woocommerce-account .coucouy-my-profile section.coucouy-profile-block > h3 {
    color: var(--coucouy-accent) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-input::placeholder,
.woocommerce-account .coucouy-my-profile .coucouy-textarea::placeholder {
    color: #777778 !important;
}

.woocommerce-account .coucouy-my-profile select.coucouy-input option {
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .coucouy-my-profile .coucouy-profile-block-inspiration .coucouy-label,
.woocommerce-account .coucouy-my-profile .coucouy-profile-block-about_you .coucouy-label {
    color: var(--coucouy-soft-accent) !important;
}

/* ==========================================================
 * MI CUENTA · AVATAR
 * ========================================================== */

.woocommerce-account .coucouy-avatar,
.woocommerce-account img.coucouy-avatar {
    border-radius: 50% !important;
    object-fit: cover !important;
    background: var(--coucouy-field-bg) !important;
}

.woocommerce-account .coucouy-profile-avatar {
    margin-bottom: var(--coucouy-field-gap) !important;
}

.woocommerce-account .coucouy-account-details-header .coucouy-profile-avatar {
    margin-top: var(--coucouy-large-gap) !important;
}

.woocommerce-account .coucouy-profile-avatar .coucouy-profile-block {
    margin-bottom: var(--coucouy-large-gap) !important;
    padding: 0 !important;
}

.woocommerce-account .coucouy-profile-avatar .coucouy-profile-block:last-child {
    margin-bottom: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-profile-avatar .coucouy-profile-block-note {
    margin-bottom: var(--coucouy-field-gap) !important;
    color: var(--coucouy-field-text) !important;
}

.woocommerce-account .coucouy-profile-avatar__preview {
    width: 120px !important;
    height: 120px !important;
    border: 1px solid var(--coucouy-field-border) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--coucouy-field-bg) !important;
    color: var(--coucouy-field-text) !important;
    margin-bottom: var(--coucouy-field-gap) !important;
}

.woocommerce-account .coucouy-profile-avatar__preview > img.coucouy-avatar-real {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.woocommerce-account .coucouy-profile-avatar__preview > img.coucouy-avatar-default {
    width: 72% !important;
    height: 72% !important;
    object-fit: contain !important;
    display: block !important;
}

.woocommerce-account .coucouy-profile-avatar__actions {
    margin-top: var(--coucouy-label-gap) !important;
}

.woocommerce-account .coucouy-profile-avatar input[type="file"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.woocommerce-account .coucouy-avatar-editor[hidden] {
    display: none !important;
}

.woocommerce-account .coucouy-avatar-editor {
    position: fixed !important;
    inset: 0 !important;
    z-index: 9999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: var(--coucouy-field-gap) !important;
    background: rgba(0, 0, 0, 0.78) !important;
}

.woocommerce-account .coucouy-avatar-editor__panel {
    width: min(92vw, 520px) !important;
    max-height: 86vh !important;
    padding: var(--coucouy-field-gap) !important;
    border: 1px solid var(--coucouy-field-border) !important;
    border-radius: var(--coucouy-field-radius) !important;
    background: var(--coucouy-field-bg) !important;
    overflow-y: auto !important;
    display: flex !important;
    flex-direction: column !important;
}

.woocommerce-account .coucouy-avatar-editor__crop-area {
    width: 100% !important;
    height: 360px !important;
    overflow: hidden !important;
    background: #000 !important;
}

.woocommerce-account .coucouy-avatar-editor__crop-area .cropper-container {
    width: 100% !important;
    height: 360px !important;
}

.woocommerce-account .coucouy-avatar-editor .cropper-crop-box,
.woocommerce-account .coucouy-avatar-editor .cropper-view-box,
.woocommerce-account .coucouy-avatar-editor .cropper-face,
.woocommerce-account .coucouy-avatar-editor .cropper-line,
.woocommerce-account .coucouy-avatar-editor .cropper-point {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}

.woocommerce-account .coucouy-avatar-editor .cropper-view-box {
    outline: 2px solid var(--coucouy-accent) !important;
}

.woocommerce-account .coucouy-avatar-editor .cropper-face {
    background-color: transparent !important;
}

.woocommerce-account .coucouy-avatar-editor .cropper-line,
.woocommerce-account .coucouy-avatar-editor .cropper-point {
    background-color: var(--coucouy-accent) !important;
}

.woocommerce-account .coucouy-avatar-editor__actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: var(--coucouy-small-gap) !important;
    margin-top: var(--coucouy-field-gap) !important;
    flex: 0 0 auto !important;
}

/* ==========================================================
 * RESPONSIVE
 * ========================================================== */
	
@media (max-width: 768px) {
    .woocommerce-account .coucouy-my-profile .coucouy-profile-fields,
    .woocommerce-account .coucouy-my-profile .coucouy-profile-fields-two-columns-fixed,
    .woocommerce-account .coucouy-my-profile .coucouy-checkbox-group {
        display: block !important;
    }

    .woocommerce-account .coucouy-my-profile .coucouy-field-row {
        margin-bottom: var(--coucouy-field-gap) !important;
    }
}
