/* Tanuki Disponibilidad — sellos, aviso de ficha, formulario de espera y filtro. */

/* --- Sello sobre la tarjeta (shop, home, relacionados, blog) --- */
.tanuki-availability-badge {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 2;
    display: inline-block;
    padding: 0.25rem 0.65rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    border-radius: 999px;
    color: #fff;
    background-color: var(--accent, #52196f);
}
.tanuki-availability-badge--agotado {
    background-color: #6b6b6b;
}
.tanuki-availability-badge--preventa {
    background-color: #63c8d8;
    color: #10333a;
}
.tanuki-availability-badge--reimpresion {
    background-color: #febf00;
    color: #3a2c00;
}

/* Las tarjetas ya usan position relative en .card-img-box / equivalentes;
   por si acaso, garantizamos un ancestro posicionado. */
.tanuki-card,
.tanuki-article-card,
.item-related {
    position: relative;
}

/* --- Aviso en la ficha de producto --- */
.tanuki-availability-notice {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    margin: 1.25rem 0;
    padding: 1rem 1.1rem;
    border-radius: 10px;
    background: #fff8e6;
    border: 1px solid #f3dfa0;
}
.tanuki-availability-notice--agotado {
    background: #f2f2f2;
    border-color: #d8d8d8;
}
.tanuki-availability-notice--preventa {
    background: #eaf8fb;
    border-color: #bfe6ee;
}
.tanuki-availability-notice__icon {
    font-size: 1.3rem;
    line-height: 1;
}
.tanuki-availability-notice__text {
    margin: 0 0 0.6rem;
    font-size: 0.92rem;
    line-height: 1.5;
}
.tanuki-availability-notice__body {
    flex: 1;
}

/* --- Formulario "Avísame" --- */
.tanuki-waitlist-form__row {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}
.tanuki-waitlist-email {
    flex: 1;
    min-width: 200px;
    padding: 0.6rem 0.8rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 0.9rem;
}
.tanuki-waitlist-submit {
    padding: 0.6rem 1.1rem;
    border: none;
    border-radius: 6px;
    background: #333;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}
.tanuki-waitlist-submit:disabled {
    opacity: 0.6;
    cursor: default;
}
.tanuki-waitlist-consent {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin-top: 0.7rem;
    font-size: 0.78rem;
    line-height: 1.45;
    color: #444;
    cursor: pointer;
}
.tanuki-waitlist-consent-input {
    flex-shrink: 0;
    margin-top: 0.15rem;
}
.tanuki-waitlist-consent a {
    text-decoration: underline;
    white-space: nowrap;
}
.tanuki-waitlist-disclaimer {
    margin: 0.4rem 0 0;
    font-size: 0.75rem;
    color: #666;
}

.tanuki-waitlist-form__message {
    margin: 0.6rem 0 0;
    font-size: 0.85rem;
}
.tanuki-waitlist-form__message.is-success {
    color: #2e7d32;
}
.tanuki-waitlist-form__message.is-error {
    color: #d32f2f;
}

/* --- Píldoras de filtro del catálogo --- */
.tanuki-availability-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0.75rem 0 0;
}
.tanuki-filter-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.4rem 0.9rem;
    border-radius: 999px;
    border: 1px solid #ddd;
    font-size: 0.85rem;
    text-decoration: none;
    color: #333;
    background: #fff;
    transition: background-color 0.15s ease, color 0.15s ease;
}
.tanuki-filter-pill:hover {
    background: #f5f5f5;
}
.tanuki-filter-pill.is-active {
    background: #333;
    border-color: #333;
    color: #fff;
}
.tanuki-filter-pill__count {
    opacity: 0.7;
    font-size: 0.8em;
}

/* --- Columna del admin (lista de productos) --- */
.tanuki-admin-badge {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #fff;
    background: #888;
}
.tanuki-admin-badge--disponible {
    background: #4caf50;
}
.tanuki-admin-badge--agotado {
    background: #6b6b6b;
}
.tanuki-admin-badge--preventa {
    background: #2196c9;
}
.tanuki-admin-badge--reimpresion {
    background: #b8860b;
}
.tanuki-admin-waitlist-count {
    font-size: 0.8rem;
    color: #666;
}

/* --- Barras sticky (tema y plugin) cuando la compra está bloqueada --- */
.tanuki-sticky-add-to-cart--blocked {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    opacity: 0.75;
    text-align: center;
}

/* --- Nota bajo el nombre del producto en carrito/checkout --- */
.tanuki-cart-availability-note {
    display: inline-block;
    margin-top: 0.2rem;
    font-size: 0.78rem;
    font-weight: 600;
    color: #6b6b6b;
}
.tanuki-cart-availability-note--preventa {
    color: #1a7c8c;
}
.tanuki-cart-availability-note--reimpresion {
    color: #8a6600;
}

@media (max-width: 600px) {
    .tanuki-availability-badge {
        font-size: 0.62rem;
        padding: 0.2rem 0.5rem;
    }
}
