:root {
    --bs-body-font-family: "Manrope", sans-serif;
}


* {
    font-family: "Manrope", sans-serif;
    font-optical-sizing: auto;
}

html {
    scroll-behavior: auto;
}

body {
    font-size: 14px;
}

.comment-float {
    position: fixed;
    bottom: 20px;
    right: 10px;
    z-index: 5000;
    background-color: #198754;
    padding: 15px;
    transition: all 0.3s;
    text-decoration: none;
    color: #FFFFFF;
    border-radius: 999999px;


    @media (min-width: 992px) {
        display: none;
    }
}

.countdown, .preview-countdown {
    height: 100dvh;
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    padding: 1rem;
    overflow: hidden;

    @media (min-width: 992px) {
        background-attachment: fixed;
    }

    .countdown__nav-button {
        width: 50px;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0.3;
        transition: opacity 0.3s, transform 0.3s;
        z-index: 10;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);

        &:hover {
            opacity: 1;
            transform: scale(1.1);
        }

        i {
            font-size: 1.5rem;
        }

        @media (max-width: 768px) {
            width: 40px;
            height: 40px;

            i {
                font-size: 1.2rem;
            }
        }
    }

    @media (max-width: 992px) {
        .countdown__nav-button--prev,
        .countdown__nav-button--next {
            position: static !important;
            transform: none !important;
            margin: 0 0.5rem !important;
        }

        .nav-buttons-container {
            display: flex;
            justify-content: center;
            width: 100%;
            order: 1;
            margin-bottom: 1rem;
        }

        .countdown__text {
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .countdown__text a.btn {
            order: 2;
        }
    }

    .countdown__text {
        color: white;
        font-weight: lighter;
        width: 100%;
        max-width: 1200px;
        padding: 0 1rem;

        h1 {
            font-size: clamp(35px, 5vw, 50px);
            font-weight: bold;
            text-shadow: 0 0 10px black;
            padding: 0;
            text-align: center;
            transition: opacity 0.3s;
            margin-bottom: 20px;

        }
    }

    .countdown__timer {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        font-weight: bold;
        color: white;
        width: 100%;
        max-width: 700px;
    }

    .countdown__time-block {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        line-height: 1;
        margin: 0;

    }

    .countdown__number {
        font-size: clamp(30px, 11vw, 130px);
        line-height: 1;
        font-weight: bold;
        width: 100%;
        min-height: 1.2em;
        display: flex;
        justify-content: center;
        align-items: center;
        font-variant-numeric: tabular-nums;
        font-feature-settings: "tnum";
        text-align: center;

        color: white;
        text-shadow: 0 0 40px #000000;
    }

    .countdown__label {
        font-size: clamp(12px, 2vw, 16px);
        font-weight: lighter;
        text-transform: uppercase;
    }

    .countdown__separator {
        font-size: clamp(30px, 11vw, 130px);
        line-height: 1;
        margin-bottom: 25px;
        width: 40px;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        font-weight: 200;
        opacity: 0.7;
        padding: 0;

        @media (min-width: 768px) {
            padding: 0 10px;
        }
    }

    .countdown__description {
        width: 100%;
        max-width: 800px;
        text-align: center;
        text-shadow: 0 0 10px black;
        font-size: clamp(16px, 2vw, 18px);
        margin: 0.5rem auto;
    }
}

.preview {
    height: 250px;

    h1 {
        margin-bottom: 0 !important;

    }

    .countdown__description {
        width: 100% !important;
        @media (min-width: 992px) {
            width: 400px;
        }

    }

    @media (min-width: 992px) {
        height: initial;
        aspect-ratio: 16/9;
    }
}

.preview-countdown {
    height: 100%;
    width: 100%;
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;

    .countdown__number {
        font-size: clamp(20px, 11vw, 50px);
        line-height: 1;
        font-weight: bold;
        width: 100%;
        min-height: 1.2em;
        display: flex;
        justify-content: center;
        align-items: center;
        font-variant-numeric: tabular-nums;
        font-feature-settings: "tnum";
        text-align: center;
    }

    .countdown__label {
        font-size: clamp(9px, 2vw, 9px);
        font-weight: lighter;
        text-transform: uppercase;
    }

    .countdown__separator {
        font-size: clamp(20px, 11vw, 50px);
        width: 10px;

        @media (min-width: 768px) {
            padding: 0 10px;
        }
    }

    .countdown__time-block {
        min-width: clamp(40px, 13vw, 60px);
    }

    .countdown__description {
        width: 400px;
        font-size: clamp(11px, 2vw, 12px);
    }

}

.info-countdowns__description {
    font-size: 18px;
}

.watermark {
    opacity: .4;
    padding: 10px;
}

.comment {
    font-size: 16px;

    small {
        font-size: 12px;
    }
}

.quote {
    font-style: italic;
    background-color: #ffffff;
    font-size: 14px;
    border: 1px solid #f4f4f4;
    border-radius: 5px;
}
.border-comment {
    border: 1px solid #edededb3;

}

.sticky-top {
    top: 20px;
}

.bg-light {
    background-color: rgba(248,249,250,0.5) !important
}

/* Contenedor de Select2 */
.select2-container .select2-selection {
    height: calc(2.25rem + 2px); /* altura del form-select */
    padding: 0.375rem 0.75rem;   /* padding del form-select */
    border-radius: 0.375rem;     /* borde redondeado */
    border: 1px solid #ced4da;   /* borde igual a form-select */
    background-color: #fff;
    color: #212529;
}

/* Texto seleccionado */
.select2-container .select2-selection__rendered {
    line-height: 1.5; /* igual que Bootstrap */
    padding-left: 0;  /* opcional, ajusta si quieres */
}

/* Flecha desplegable */
.select2-container .select2-selection__arrow {
    height: calc(2.25rem + 2px);
    right: 0.5rem; /* ajusta posición */
}

/* Dropdown de opciones */
.select2-container .select2-dropdown {
    border-radius: 0.375rem;
    border: 1px solid #ced4da;
}


.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 5px;
    right: 9px;
    width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    margin-top: -2px;
}

.select2-search--dropdown {
    display: none !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;

}

.select2-selection__placeholder {
    color: #6c757d !important;
    font-size: 1rem !important;
}