/* -------------------------------------------------------------------------- */
/*                                Falcon Button                               */
/* -------------------------------------------------------------------------- */
/* prettier-ignore */

/* Danger Modal (Red) */
.modal-danger .modal-header {
    background-color: #F25961;
    color: white;
}

/* Warning Modal (Yellow) */
.modal-warning .modal-header {
    background-color: #FFAD46;
    color: black;
}

/* Info Modal (Blue) */
.modal-information .modal-header {
    background-color: #1572E8;
    color: white;
}

.custom-icon {
    width: 14px;
    height: 14px;
    background-color: var(--falcon-light);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center left;
    vertical-align: -0.125em;
    display: inline-block;
}

.cash-icon {
    -webkit-mask-image: url('svg/cash.svg');
    mask-image: url('svg/cash.svg');
}

.bank-transfer-icon {
    -webkit-mask-image: url('svg/bank-transfer.svg');
    mask-image: url('svg/bank-transfer.svg');
}

.credit-card-icon {
    -webkit-mask-image: url('svg/credit-card.svg');
    mask-image: url('svg/credit-card.svg');
}

.scanner-icon {

    -webkit-mask-image: url('svg/scanner.svg');
    mask-image: url('svg/scanner.svg');
}


.gift-icon {
    -webkit-mask-image: url('svg/gift.svg');
    mask-image: url('svg/gift.svg');
}

.receive-icon {
    -webkit-mask-image: url('svg/receive.svg');
    mask-image: url('svg/receive.svg');
}


.pen-icon {
    -webkit-mask-image: url('svg/pen.svg');
    mask-image: url('svg/pen.svg');
}

.clipboard-add-icon {
    -webkit-mask-image: url('svg/clipboard-add.svg');
    mask-image: url('svg/clipboard-add.svg');
}

.eye-open-icon {
    -webkit-mask-image: url('svg/eye-open.svg');
    mask-image: url('svg/eye-open.svg');
}

.diskette-icon {
    -webkit-mask-image: url('svg/diskette.svg');
    mask-image: url('svg/diskette.svg');
}

.restart-icon {
    -webkit-mask-image: url('svg/restart.svg');
    mask-image: url('svg/restart.svg');
}

.share-icon {
    -webkit-mask-image: url('svg/share.svg');
    mask-image: url('svg/share.svg');
}

.cart-icon {
    -webkit-mask-image: url('svg/cart.svg');
    mask-image: url('svg/cart.svg');
}

.layer-icon {
    -webkit-mask-image: url('svg/layer.svg');
    mask-image: url('svg/layer.svg');
}

.plus-circle-icon {
    -webkit-mask-image: url('svg/plus-circle.svg');
    mask-image: url('svg/plus-circle.svg');
}

.document-icon {
    -webkit-mask-image: url('svg/document.svg');
    mask-image: url('svg/document.svg');
}

.calendar-icon {
    -webkit-mask-image: url('svg/calendar.svg');
    mask-image: url('svg/calendar.svg');
}
html[data-bs-theme="dark"] .custom-icon {
    background-color: var(--falcon-gray-900);
}

.navbar-vertical .navbar-nav .nav-item .nav-link.active .custom-icon {
    background-color: var(--falcon-navbar-vertical-default-link-active-color)
}

.nested-confirm-overlay {
    position: absolute; /* Position relative to its parent .modal-content */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Semi-transparent overlay */
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1056; /* Higher than Bootstrap modal content (1055) */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
    border-radius: 12px; /* Match parent modal border-radius */
}
.nested-confirm-overlay.show {
    opacity: 1;
    visibility: visible;
}
.nested-confirm-dialog {

    padding: 25px;
    border-radius: var(--falcon-border-radius);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
    max-width: 400px;
    width: 90%;
    text-align: center;
    transform: translateY(-20px); /* Slight animation on show */
    transition: transform 0.2s ease-in-out;
}

.nested-confirm-dialog.primary {
    background-color: var(--falcon-primary-bg-subtle);
}

.nested-confirm-dialog.warning {
    background-color: var(--falcon-warning-bg-subtle);
}

.nested-confirm-dialog.danger {
    background-color: var(--falcon-danger-bg-subtle);
}

.nested-confirm-overlay.show .nested-confirm-dialog {
    transform: translateY(0);
}


.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: var(--falcon-danger);
}

.was-validated .form-control:invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-feedback {
    display: block;
}
