/* Estilos del módulo Store */

/* Overlay de carga mientras se procesa el submit (export o import) */
.epricing-store-loading-overlay {
    display: none;
    position: fixed;
    inset: 0;
    align-items: center;
    justify-content: center;
    background-color: color-mix(in srgb, var(--color-base-900) 40%, transparent);
    z-index: 100;
}

.epricing-store-card.is-loading .epricing-store-loading-overlay {
    display: flex;
}

.epricing-store-spinner {
    width: 2rem;
    height: 2rem;
    border: 3px solid var(--color-base-200);
    border-top-color: var(--color-primary-600);
    border-radius: 9999px;
    animation: epricing-store-spin 0.7s linear infinite;
}

@keyframes epricing-store-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Componente: dropzone de "Importar tiendas" */
.epricing-store-dropzone {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 8rem;
    text-align: center;
    cursor: pointer;
    border: 1px dashed var(--color-base-200);
    border-radius: 8px;
    background-color: var(--color-base-50);
    transition: border-color 0.18s ease, background-color 0.18s ease;

    /* Sons (icons, text) must not receive events from drag */
    * {
        pointer-events: none;
    }

    &:hover,
    &.is-dragover {
        border-color: var(--color-primary-600);
        background-color: var(--color-primary-50);

        .epricing-store-dropzone__icon {
            color: var(--color-primary-600);
        }
    }

    .epricing-store-dropzone__icon {
        color: var(--color-base-500);
    }
}

/* Generic table/filters/inline-edit styles moved to admin-changelist.css -- only Store's own styles stay here. */

/* Tabs: module-level layout, not table styling, so they stay here instead of the shared bundle. */
.epricing-tabs {
    display: flex;
    gap: 0.25rem;
    border-bottom: 1px solid var(--color-base-200);
}

.epricing-tab {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--color-base-500);
    border-bottom: 2px solid transparent;
}

.epricing-tab:hover {
    color: var(--color-base-700);
}

.epricing-tab.is-active {
    color: var(--color-primary-600);
    border-bottom-color: var(--color-primary-600);
}

/* Dark mode: every override in this file, in one block. */
html.dark {
    .epricing-store-dropzone {
        border-color: var(--color-base-700);
        background-color: var(--color-base-800);

        &:hover,
        &.is-dragover {
            border-color: var(--color-primary-400);
            background-color: color-mix(in srgb, var(--color-primary-500) 35%, var(--color-base-800));

            .epricing-store-dropzone__icon {
                color: var(--color-primary-400);
            }
        }

        .epricing-store-dropzone__icon {
            color: var(--color-base-400);
        }
    }

    .epricing-tabs {
        border-color: var(--color-base-700);
    }

    .epricing-tab:hover {
        color: var(--color-base-300);
    }

    .epricing-tab.is-active {
        color: var(--color-primary-500);
        border-bottom-color: var(--color-primary-500);
    }
}
