@import url("../libs/fastbootstrap-2-2-0/dist/css/fastbootstrap.min-0AQUDI_.css");
@import url("../vendor/air-datepicker/air-datepicker-hN-fIeQ.css");
@import url("../vendor/intl-tel-input/build/css/intlTelInput.min-ENjFmvn.css");
@import url("../vendor/aos/dist/aos-5Oc4Zvh.css");
@import url("../vendor/highlight.js/styles/atom-one-dark.min-9dcrLyM.css");

thead th {
    font-weight: 900;
    opacity: 70%;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    background-color: var(--bs-primary-bg-subtle) !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

tr:last-child td, tr:last-child th {
    border: none;
}

label.required:after {
    content: " *";
}

/**** Sweetalert2  */
/** Toast */
.colored-toast.swal2-icon-success {
    background-color: var(--bs-success) !important;
}

.colored-toast.swal2-icon-error {
    background-color: var(--bs-danger) !important;
}

.colored-toast.swal2-icon-warning {
    background-color: var(--bs-warning) !important;
}

.colored-toast.swal2-icon-info {
    background-color: var(--bs-info) !important;
}

.colored-toast.swal2-icon-question {
    background-color: var(--bs-info) !important;
}

.colored-toast .swal2-title {
    color: white;
}

.colored-toast .swal2-close {
    color: white;
}

.colored-toast .swal2-html-container {
    color: white;
}

/**** AirDatepicker  */
.air-datepicker-global-container {
    z-index: 2000;
}

.air-datepicker.-inline- {
    width: auto;
}

/****  */
.pagination {
    flex-wrap: wrap;
}

#form-contact .btn-check:checked+.btn {
    color: var(--ds-text-inverse);
    background-color: var(--ds-background-brand-bold);
}

.table-actions .table-action {
    display: none;
    transition: display 0.5s;
}

/**** HTMX */
.htmx-indicator{
    display:none;
}
.htmx-request .htmx-indicator{
    display:inline-block;
}
.htmx-request.htmx-indicator{
    display:inline-block;
}

#page-loading {
    display: none;
    transition: display 0.5s;
    height: 3px;
}

/**** Price switching */
.custom-switch-wrapper {
    width: fit-content;
    cursor: pointer;
}

.custom-switch-wrapper input {
    display: none;
}

/* Labels with hardcoded dark text */
.switch-btn {
    position: relative;
    z-index: 2;
    width: 150px;
    padding: 12px 0;
    text-align: center;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 0;
    cursor: pointer;
    transition: color 0.3s ease;
}

/* The white sliding pill */
.pill-highlighter {
    position: absolute;
    top: 5px;
    left: 5px;
    width: 150px;
    height: calc(100% - 10px);
    background-color: var(--bs-body-bg);
    border-radius: 40px;
    z-index: 1;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Switch logic: Slide the pill to the right */
#semi-annual:checked ~ .pill-highlighter {
    transform: translateX(150px);
}


/**** TRACKING PAGE ***/

.tracking-timeline {
    list-style: none;
    margin-bottom: 0;
}

.timeline-step {
    position: relative;
    margin-bottom: 1.5rem;
}

.timeline-step:last-child {
    margin-bottom: 0;
}

.timeline-indicator-container {
    position: absolute;
    left: -2.55rem;
}

.timeline-indicator {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: var(--bs-secondary-bg);
    border: 2px solid #dee2e6;
    transition: all 0.3s ease;
    left: 0;
    top: 0;
}

.timeline-indicator-v-line {
    width: 0.3rem;
    background-color: var(--bs-success-bg-subtle);
    min-height: 60px;
    left: 0.3rem;
}

.timeline-step.completed .timeline-indicator {
    background-color: #198754;
    border-color: #198754;
}

.timeline-step.active .timeline-indicator {
    background-color: #0d6efd;
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.timeline-step.pending {
    opacity: 0.4;
}
