.form {

    background-color: var(--color-3);
    border-radius: .5rem;
    padding: 1rem;

    .fieldset {

        background-color: white;
        border-bottom: 1px solid var(--color-2);
        margin-bottom: 2rem;
        padding-bottom: 1.5rem;
        position: sticky;
        top: 0;
        z-index: 1;

        fieldset {
            color: var(--color-4);
            font-size: 2rem;
            font-weight: 600;
            margin-bottom: 1rem;
            padding: 1rem 0;
            text-align: center;
            text-transform: uppercase;
        }
        
        .etiquetas {
            text-align: center;
        }
    }

    .campos {

        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
        margin-bottom: .6rem;
        justify-content: space-between;

        .campo {

            flex-grow: 1;
            margin-bottom: .5rem;
            min-width: 35rem;

            .titulo-campo {
                color: var(--color-4);
                padding: 2rem 0 1rem 0;
                text-transform: uppercase;
            }
            
            .label {
                color: var(--color-2);
                margin-bottom: .5rem;
            }

            .label img {
                filter: invert(.8);
            }
            
            .contenido {

                a {
                    color: var(--color-4);
                    text-align: center;
                }

                input, select, textarea {
                    border: 1px solid var(--color-2);
                    border-radius: .5rem;
                    color: var(--color-4);
                    padding: .6rem;
                    text-align: center;
                    width: 100%;
                }

                input[type=color] {
                    border: none;
                    padding: 0;
                }

                input:read-only {
                    color: var(--color-2);
                }
            
                .inputs-etiquetas {
                    display: flex;
                    align-items: center;
                    flex-wrap: wrap;
                    gap: .5rem;
                    justify-content: center;
                    margin-top: .5rem;

                    .input-etiqueta {
                        background-color: var(--color-4);
                        border-radius: .5rem;
                        color: white;
                        cursor: pointer;
                        font-size: 1.4rem;
                        height: 2.2rem;
                        opacity: .5;
                        padding: .5rem;
                        field-sizing: content;
                        width: fit-content;
                    }

                    .input-etiqueta:hover {
                        opacity: .8;
                    }
                }
                
                .ct-imagenes {
                    display: flex;
                    flex-wrap: wrap;
                    gap: 1rem;
                    justify-content: center;
                    
                    .ct-input-img, .img {
                        border: 1px solid var(--color-2);
                        border-radius: .5rem;
                        height: 22rem;
                        padding: 1rem;
                        width: 16rem;
                    }

                    .ct-input-img {
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        
                        label {
                            background-color: var(--color-4);
                            border-radius: .5rem;
                            color: white;
                            cursor: pointer;
                            font-size: 2rem;
                            opacity: .6;
                            padding: 1rem;
                        }

                        label:hover { opacity: 1; }

                        input[type="file"] {
                            display: none;
                        }
                    }

                    .img {
                        display: flex;
                        align-items: center;
                        flex-direction: column;
                        justify-content: center;
                        padding: 0;

                        img {
                            object-fit: contain;
                            height: 100%;
                            width: 100%;
                        }

                        .acciones-img {
                            display: flex;
                            justify-content: space-between;
                            border-top: .1rem solid var(--color-2);
                            padding: .4rem .8rem;
                            width: 100%;

                            .btn-defecto,
                            .btn-seleccionar {
                                display: flex;
                                align-items: center;
                                gap: .8rem;

                                label, input {
                                    opacity: .2;
                                }

                                label {
                                    font-size: 1.2rem;
                                }
                                input[type="radio"]:checked,
                                input[type="checkbox"]:checked {
                                    opacity: 1;
                                }
                            }

                            .btn-eliminar {
                                cursor: pointer;
                                opacity: .4;
                                padding: 0;
                                img {
                                    filter: invert();
                                    padding: 0;
                                    pointer-events: none;
                                    width: 2rem;
                                }
                            }

                            .btn-defecto:hover,
                            .btn-eliminar:hover,
                            .btn-seleccionar:hover {
                                opacity: 1;
                            }
                        }
                    }
                    
                }
            }

            .contenido.center { text-align: center; }
        }

        .campo.center {
            text-align: center;
        }
        .campo.minw-15rem {
            min-width: 15rem;
        }
        .campo.mw-15rem {
            min-width: 0;
            max-width: 15rem;
        }
        .campo.w-100 { width: 100%; }
    }

    .botones {
        display: flex;
        background-color: white;
        /*border-top: 1px solid var(--color-2);*/
        bottom: 0;
        gap: 1.5rem;
        justify-content: end;
        padding: 1rem 0;
        position: sticky;
        .btn {
            border-radius: .5rem;
            color: var(--color-3);
            cursor: pointer;
            opacity: .6;
            padding: .8rem;
        }
        .btn.success {
            background-color: var(--color-4);
            border: 1px solid var(--color-4);
        }
        .btn.cancel {
            border: 1px solid var(--rojo-2);
            color: var(--rojo-2);
        }
        .btn:hover {
            opacity: 1;
        }
    }
}

.form.max-w-40rem { max-width: 40rem; };

.form.max-w-80rem { max-width: 80rem; }