/**
 * Native cursor cues — clear affordances sitewide (storefront).
 */

.luxury-body,
.maison-body {
    cursor: default;
}

/* Text entry */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="url"],
textarea {
    cursor: text;
}

/* Clickable controls */
a[href],
button:not(:disabled),
label[for],
select,
summary,
[role="button"]:not([aria-disabled="true"]),
[role="link"],
.btn-luxury,
.btn-admin,
.nav-icon-btn,
.navbar-toggle,
.filter-toggle,
.filter-sheet-close,
.mobile-menu-close,
.card-action-btn,
.quick-view-btn,
.wishlist-btn,
.home-card-wish,
.carousel-arrow,
.hero-dot,
.hero-cinematic__scroll,
.pd-gallery-thumb,
.pd-gallery-expand,
.maison-product-visual,
.maison-product-link,
.home-product-card a,
.home-category-card,
.lux-category-card,
.lux-card-compact__media,
.lux-card-compact__name a,
.maison-text-link,
.filter-backdrop.active,
.ticker-icon-option,
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="checkbox"],
input[type="radio"],
input[type="file"]::file-selector-button {
    cursor: pointer;
}

/* Gallery zoom (product detail) */
.pd-gallery-main:not(.is-video) {
    cursor: zoom-in;
}

.pd-gallery-main.is-video.can-expand {
    cursor: pointer;
}

/* Inert / disabled */
button:disabled,
.btn-luxury:disabled,
input:disabled,
select:disabled,
textarea:disabled,
[disabled],
[aria-disabled="true"] {
    cursor: not-allowed !important;
}

/* Non-clickable badges / labels */
.footer-payments span,
.maison-label,
.products-count,
.badge:not(a) {
    cursor: default;
}

/* Custom dot cursor disabled — use system pointer ring */
.luxury-cursor {
    display: none !important;
}

@media (hover: hover) and (pointer: fine) {
    .luxury-body,
    .luxury-body a,
    .luxury-body button,
    .luxury-body input,
    .luxury-body select,
    .luxury-body textarea,
    .luxury-body label {
        cursor: inherit;
    }

    a[href],
    button:not(:disabled),
    .btn-luxury,
    .nav-icon-btn,
    select {
        cursor: pointer;
    }

    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"],
    input[type="search"],
    input[type="number"],
    textarea {
        cursor: text;
    }
}

/* Admin panel */
.admin-body {
    cursor: default;
}

.admin-body a[href],
.admin-body button:not(:disabled),
.admin-body .btn-admin,
.admin-body label[for],
.admin-body select,
.admin-body .sidebar-toggle,
.admin-body input[type="submit"],
.admin-body input[type="button"] {
    cursor: pointer;
}

.admin-body input[type="text"],
.admin-body input[type="email"],
.admin-body input[type="password"],
.admin-body input[type="number"],
.admin-body textarea {
    cursor: text;
}

.admin-body button:disabled,
.admin-body input:disabled,
.admin-body select:disabled,
.admin-body [disabled] {
    cursor: not-allowed !important;
}
