/* work around https://github.com/twbs/bootstrap/issues/38480 */
:root,
[data-bs-theme="light"] {
    --bs-border-color: var(--bs-gray-400);
}
[data-bs-theme="dark"] {
    --bs-border-color: var(--bs-gray-700);
}

.container {
    max-width: var(--bs-breakpoint-md, 768px);
}

.full-width {
    overflow-x: auto;
}

@media (min-width: 768px) {
    .full-width {
        width: 100vw;
        position: relative;
        left: 50%;
        right: 50%;
        margin-left: -50vw;
        margin-right: -50vw;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
    .full-width > * {
        width: auto;
        min-width: 738px;  /* 768px - 2 * 15px (padding) */
        margin: 0 auto;
    }
}

/* work around https://github.com/twbs/bootstrap/issues/25394 */
.form-select {
    background-image: url("bootstrap/caret.7471b9c5b4c9.svg");
}

[data-animation="success"] {
    position: relative;
}

[data-animation="success"]::after {
    content: "\f00c";  /* fa-check */
    font-family: FontAwesome;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 1.2em;
    line-height: 1.2em;
    box-sizing: content-box;
    margin-right: -0.6em;
    margin-top: -0.6em;
    border-radius: 50%;
    text-align: center;
    color: var(--bs-white);
    background-color: var(--bs-success);
    opacity: 0;
    transition: opacity 300ms ease;
}

[data-animation="success"].animation-active::after {
    opacity: 1;
}

.pointer-events-none {
    pointer-events: none !important;
}
