/* ── Variables ── */
:root {
    --color-primary:   #1a1a2e;
    --color-secondary: #e94560;
    --color-accent:    #0f3460;
    --color-text:      #ffffff;
}

/* ── Botones ── */
.btn-primary {
    background-color: var(--color-secondary);
    color: #fff;
    padding: .6rem 1.4rem;
    border-radius: .375rem;
    font-weight: 600;
    transition: opacity .2s;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    cursor: pointer;
    border: none;
    text-decoration: none;
}

.btn-primary:hover { opacity: .85; }

.btn-outline {
    border: 2px solid var(--color-secondary);
    color: var(--color-secondary);
    padding: .5rem 1.2rem;
    border-radius: .375rem;
    font-weight: 600;
    transition: all .2s;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    text-decoration: none;
    background: transparent;
}

.btn-outline:hover {
    background-color: var(--color-secondary);
    color: #fff;
}

/* ── Talles ── */
.talle-btn {
    border: 2px solid #e5e7eb;
    border-radius: .375rem;
    padding: .35rem .7rem;
    font-size: .85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s;
    background: white;
}

.talle-btn:hover { border-color: var(--color-secondary); }

.talle-btn.selected {
    border-color: var(--color-secondary);
    background-color: var(--color-secondary);
    color: white;
}

.talle-btn:disabled {
    opacity: .35;
    cursor: not-allowed;
    text-decoration: line-through;
}

/* ── Header ── */
.header-nav-link {
    color: var(--color-primary);
    opacity: .8;
}
.header-nav-link:hover { color: var(--color-primary); opacity: 1; }

/* ── Menu mobile ── */
#menu-mobile { transition: transform .25s ease; }
#overlay-mobile { transition: opacity .25s ease; }

.menu-mobile-link {
    display: flex;
    align-items: center;
    gap: .5rem;
    color: rgba(255,255,255,.8);
    padding: .5rem .75rem;
    border-radius: .5rem;
    font-size: .875rem;
    transition: all .15s;
    text-decoration: none;
}

.menu-mobile-link:hover {
    color: #fff;
    background: rgba(255,255,255,.1);
}

/* ── Carrito badge ── */
#carrito-count {
    position: absolute;
    top: -.5rem;
    right: -.5rem;
    background: white;
    font-size: .7rem;
    font-weight: 700;
    border-radius: 9999px;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-secondary);
}