/**
 * Bootstrap 5 Internal Layout — CSS Overrides
 *
 * Loaded as the final stylesheet in the responsive/internalv2.php layout.
 * Provides:
 *   1. Bootstrap 3 utility class shims removed in BS5
 *   2. Bootstrap tab pane visibility (local fallback for CDN rule)
 *   3. Glyphicon → Font Awesome 6 Free icon mapping
 *      (17 standard Bootstrap glyphicon classes found across 8 template files)
 *
 * NOTE: The `class="glyphicon flaticon-X"` pattern used throughout the core
 * navigation system (breadcrumbInternal.php, header.php, appDrawer.php, etc.)
 * is NOT affected. Flaticon rules in flaticon.css / flaticon-v2.css set
 * font-family on individual icon classes with higher specificity, overriding
 * the base .glyphicon rule below.
 */

/* =============================================================================
   1. Bootstrap 3 utility shims
   ============================================================================= */

/* BS3: .pull-left / .pull-right — replaced by .float-start / .float-end in BS5 */
.pull-left  { float: left  !important; }
.pull-right { float: right !important; }

/* BS3: .center-block — replaced by .mx-auto in BS5 */
.center-block {
    display: block;
    margin-right: auto;
    margin-left: auto;
}

/* BS3: .show / .hidden helpers */
.hidden { display: none !important; }

/* BS3 contextual backgrounds */
html .bg-primary {
    background-color: #337ab7 !important;
}

html .bg-warning {
    background-color: #fcf8e3 !important;
}

html .bg-danger {
    background-color: #f2dede !important;
}

html .bg-success {
    background-color: #dff0d8 !important;
}

html .bg-info {
    background-color: #d9edf7 !important;
}

html .bg-primary.hoverable:hover {
    background-color: #286090 !important;
}

html .bg-warning.hoverable:hover {
    background-color: #f7ecb5 !important;
}

html .bg-danger.hoverable:hover {
    background-color: #e4b9b9 !important;
}

html .bg-success.hoverable:hover {
    background-color: #c1e2b3 !important;
}

html .bg-info.hoverable:hover {
    background-color: #afd9ee !important;
}

/* BS3: .btn-default — map to BS5 .btn-secondary visual appearance */
.btn-default {
    color: #333 !important;
    background-color: #fff !important;
    border-color: #ccc !important;
}
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.btn-default:not(:disabled):not(.disabled):active,
.btn-default:not(:disabled):not(.disabled).active {
    color: #333 !important;
    background-color: #e6e6e6 !important;
    border-color: #adadad !important;
}

/* BS3: .form-horizontal layout helper */
.form-horizontal .form-group {
    align-items: flex-start !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

.form-horizontal .form-group::before,
.form-horizontal .form-group::after {
    content: none !important;
    display: none !important;
}

.form-horizontal .control-label {
    padding-top: 7px;
}

/* bs5-bs3-compat.css sets .btn { display: inline-block !important } which overrides
 * ui.css's .ui-crud .ui-crud-show-view { display: none }. Re-declare with !important here. */
.ui-crud .ui-crud-show-view {
    display: none !important;
}
.ui-crud-editing .ui-crud-show-view {
    display: inline-block !important;
}

/* bs5-bs3-compat.css .btn-group .btn { height: 34px !important } overrides
 * .btn-xs { height: 24px !important } due to higher specificity. */
.btn-group .btn-xs {
    height: 24px !important;
    min-height: 24px !important;
    padding: 1px 5px !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

/* bs5-bs3-compat.css .btn-group .btn also overrides .btn-sm in grouped controls. */
.btn-group .btn-sm {
    height: 30px !important;
    min-height: 30px !important;
    padding: 5px 10px !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

/* bs5-bs3-compat.css forces .form-control to 34px; keep textareas multi-line. */
textarea.form-control {
    min-height: 34px !important;
    resize: vertical;
    overflow: auto;
}
textarea.form-control[style*="height:75px"],
textarea.form-control[style*="height: 75px"] {
    min-height: 75px !important;
}
textarea.form-control[style*="height:150px"],
textarea.form-control[style*="height: 150px"] {
    min-height: 150px !important;
}

/* Legacy internal forms use .container as a form wrapper, not a centered fixed-width
   page container. Avoid BS5 breakpoint jumps like 540px/960px on these forms. */
.ui-page-content form > .container {
    max-width: none !important;
    width: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Restore Bootstrap 3's always-on col-xs-* grid classes for legacy templates. */
.col-xs-1 { flex: 0 0 auto; width: 8.33333333%; }
.col-xs-2 { flex: 0 0 auto; width: 16.66666667%; }
.col-xs-3 { flex: 0 0 auto; width: 25%; }
.col-xs-4 { flex: 0 0 auto; width: 33.33333333%; }
.col-xs-5 { flex: 0 0 auto; width: 41.66666667%; }
.col-xs-6 { flex: 0 0 auto; width: 50%; }
.col-xs-7 { flex: 0 0 auto; width: 58.33333333%; }
.col-xs-8 { flex: 0 0 auto; width: 66.66666667%; }
.col-xs-9 { flex: 0 0 auto; width: 75%; }
.col-xs-10 { flex: 0 0 auto; width: 83.33333333%; }
.col-xs-11 { flex: 0 0 auto; width: 91.66666667%; }
.col-xs-12 { flex: 0 0 auto; width: 100%; }

[class^="col-xs-"],
[class*=" col-xs-"] {
    padding-left: 15px;
    padding-right: 15px;
}

.rec1-splash-form .list-group {
    margin-bottom: 20px;
}

.cart-quickpay .form-horizontal .form-group {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

.cart-quickpay .form-horizontal .form-group > [class^="col-xs-"],
.cart-quickpay .form-horizontal .form-group > [class*=" col-xs-"] {
    float: none;
}

#rec1-reservation-adjustment-modal .modal-dialog,
#rec1-transaction-refund-modal .modal-dialog {
    width: min(1140px, calc(100vw - 60px)) !important;
    max-width: calc(100vw - 60px) !important;
}

#rec1-reservation-adjustment-modal .modal-footer {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

#rec1-reservation-adjustment-modal .modal-footer .refund-balance-container {
    display: flex;
    float: none !important;
    gap: 8px;
    margin-right: auto;
}

#rec1-reservation-adjustment-modal .modal-footer .control-container {
    align-items: center;
    display: flex;
    float: none !important;
    gap: 8px;
    margin-left: auto;
}

#rec1-reservation-adjustment-modal .modal-footer > .rental-adjustment-error {
    float: none !important;
}

#rec1-rental-item-reservation-adjustment-modal .modal-footer {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

#rec1-rental-item-reservation-adjustment-modal .modal-footer .refund-balance-container {
    display: flex;
    float: none !important;
    gap: 8px;
    margin-right: auto;
}

#rec1-rental-item-reservation-adjustment-modal .modal-footer .control-container {
    align-items: center;
    display: flex;
    float: none !important;
    gap: 8px;
    margin-left: auto;
}

#rec1-rental-item-reservation-adjustment-modal .modal-footer > .rental-item-reservation-adjustment-error {
    float: none !important;
}

#rec1-reservation-adjustment-modal .tab-content .col-8 > .datepicker,
#rec1-reservation-adjustment-modal .tab-content .col-xs-8 > .datepicker,
#rec1-reservation-adjustment-modal .tab-content .col-8 > .timepicker,
#rec1-reservation-adjustment-modal .tab-content .col-xs-8 > .timepicker,
#rec1-reservation-adjustment-modal .tab-content .col-8 > .ui-cash,
#rec1-reservation-adjustment-modal .tab-content .col-xs-8 > .ui-cash {
    display: inline-block;
    width: auto;
}

#rec1-reservation-adjustment-modal .tab-content .col-8 > .datepicker,
#rec1-reservation-adjustment-modal .tab-content .col-xs-8 > .datepicker {
    max-width: 115px;
}

#rec1-reservation-adjustment-modal .tab-content .col-8 > .timepicker,
#rec1-reservation-adjustment-modal .tab-content .col-xs-8 > .timepicker {
    max-width: 95px;
}

#rec1-transaction-refund-modal table tbody tr.refund-line-item-row > td,
#rec1-transaction-refund-modal table tbody tr.refund-line-item-row > th {
    border-bottom: none !important;
}

#rec1-transaction-refund-modal table thead th,
#rec1-transaction-refund-modal table tfoot th {
    background-color: transparent;
    border-bottom: 1px solid #d8dee4 !important;
    color: #555;
    font-size: 14px;
    line-height: 1.25;
    padding: 8px 6px;
    vertical-align: bottom;
}

#rec1-transaction-refund-modal table tfoot th {
    vertical-align: middle;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-mock-addon-inline {
    align-items: center;
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 6px;
    justify-content: center;
    vertical-align: middle;
    white-space: nowrap;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-mock-addon-inline > input,
#rec1-reservation-adjustment-modal .reservation-adjustment-mock-addon-inline > span {
    vertical-align: middle;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-mock-addon-inline > input[type="checkbox"] {
    align-self: center;
    margin-top: 0 !important;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-addon-table > tbody > tr > td,
#rec1-reservation-adjustment-modal .reservation-adjustment-discount-table > tbody > tr > td {
    padding: 6px 4px;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-addon-table > tbody > tr > td:first-child,
#rec1-reservation-adjustment-modal .reservation-adjustment-discount-table > tbody > tr > td:first-child {
    padding-left: 0;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-addon-table > tbody > tr > td:last-child,
#rec1-reservation-adjustment-modal .reservation-adjustment-discount-table > tbody > tr > td:last-child {
    padding-right: 0;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-addon-controls {
    gap: 2px;
}

#rec1-reservation-adjustment-modal .reservation-adjustment-addon-after input.input-size-4,
#rec1-reservation-adjustment-modal .reservation-adjustment-addon-after input.numeric {
    margin-left: 0;
    margin-right: 0;
}

#balances-filter div.row.ui-hoffset-sm {
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-start;
    gap: 10px;
}

#balances-filter > .row > .ui-col-12 > .row {
    flex-wrap: nowrap !important;
}

#balances-filter > .row > .ui-col-12 > .row > .ui-col-3:not(:last-child) {
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

#balances-filter > .row > .ui-col-12 > .row > .ui-col-3 > div {
    flex-wrap: nowrap !important;
    min-width: 0;
}

#balances-filter > .row > .ui-col-12 > .row > .ui-col-3 > div > label {
    min-width: 120px !important;
}

#balances-filter > .row > .ui-col-12 > .row > .ui-col-3 > div > .form-control {
    flex: 1 1 80px !important;
    min-width: 80px;
    max-width: 100%;
    width: auto !important;
}

/* BS3 .col-sm-* started at 768px; BS5 starts at 576px. Keep legacy forms stacked
   in the old xs range so fields don't collapse into tiny side-by-side columns. */
@media (min-width: 576px) and (max-width: 767.98px) {
    .ui-page-content form > .container .form-group.row > [class^="col-sm-"],
    .ui-page-content form > .container .form-group.row > [class*=" col-sm-"] {
        flex: 0 0 auto !important;
        width: 100% !important;
    }

    .ui-page-content form > .container .form-group.row > [class^="col-sm-"]:not(:last-child),
    .ui-page-content form > .container .form-group.row > [class*=" col-sm-"]:not(:last-child) {
        margin-bottom: 5px;
    }
}

/* =============================================================================
   2. Bootstrap tab pane visibility
   =============================================================================
   Bootstrap 3 CSS (which bundled tab-hiding rules) was intentionally excluded
   from rec1-internalv2-bs5.min.css; the Bootstrap 5 CDN provides equivalent
 * rules. !important is required to override any inline display styles set by
 * JavaScript on tab pane elements during CRUD widget initialization. */
.tab-content > .tab-pane          { display: none   !important; }
.tab-content > .tab-pane.active   { display: block  !important; }

/* =============================================================================
   3. Glyphicon → Font Awesome 6 Free mapping
   ============================================================================= */

/**
 * Base rule: redirect the Bootstrap glyphicon font-family to Font Awesome 6 Free.
 * This only affects .glyphicon elements that do NOT also carry a flaticon-* class
 * because the flaticon CSS sets font-family again at a higher specificity level
 * for each individual .flaticon-X class, overriding this base rule.
 */
.glyphicon {
    font-family: "Font Awesome 6 Free", sans-serif;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* fa-clock — regular weight (outlined clock face) */
.glyphicon-time {
    font-weight: 400;
}
.glyphicon-time::before {
    content: "\f017"; /* fa-clock */
}

/* fa-triangle-exclamation */
.glyphicon-warning-sign::before {
    content: "\f071";
}

/* fa-circle-exclamation */
.glyphicon-exclamation-sign::before {
    content: "\f06a";
}

/* fa-file */
.glyphicon-file::before {
    content: "\f15b";
}

/* fa-plus */
.glyphicon-plus::before {
    content: "\2b";
}

/* fa-circle-plus */
.glyphicon-plus-sign::before {
    content: "\f055";
}

/* fa-circle-minus */
.glyphicon-minus-sign::before {
    content: "\f056";
}

/* fa-rotate */
.glyphicon-refresh::before {
    content: "\f2f1";
}

/* fa-circle-play — regular weight */
.glyphicon-play {
    font-weight: 400;
}
.glyphicon-play::before {
    content: "\f144";
}

/* fa-table-list */
.glyphicon-th-list::before {
    content: "\f00b";
}

/* fa-check */
.glyphicon-check::before {
    content: "\f00c";
}

/* fa-trash */
.glyphicon-trash::before {
    content: "\f1f8";
}

/* fa-search (used by some inline toolbar templates) */
.glyphicon-search::before {
    content: "\f002";
}

/* fa-remove / fa-times */
.glyphicon-remove::before {
    content: "\f00d";
}

/* fa-ok / fa-check (alias) */
.glyphicon-ok::before {
    content: "\f00c";
}

/* fa-arrow-left */
.glyphicon-arrow-left::before {
    content: "\f060";
}

/* fa-arrow-right */
.glyphicon-arrow-right::before {
    content: "\f061";
}

/* fa-chevron-left */
.glyphicon-chevron-left::before {
    content: "\f053";
}

/* fa-chevron-right */
.glyphicon-chevron-right::before {
    content: "\f054";
}

/* fa-chevron-up */
.glyphicon-chevron-up::before {
    content: "\f077";
}

/* fa-chevron-down */
.glyphicon-chevron-down::before {
    content: "\f078";
}

/* fa-star */
.glyphicon-star::before {
    content: "\f005";
}

/* fa-star (empty / regular) */
.glyphicon-star-empty {
    font-weight: 400;
}
.glyphicon-star-empty::before {
    content: "\f005";
}

/* fa-pencil */
.glyphicon-pencil::before {
    content: "\f303";
}

/* fa-edit */
.glyphicon-edit::before {
    content: "\f044";
}

/* fa-envelope */
.glyphicon-envelope::before {
    content: "\f0e0";
}

/* fa-print */
.glyphicon-print::before {
    content: "\f02f";
}

/* fa-download */
.glyphicon-download-alt::before,
.glyphicon-download::before {
    content: "\f019";
}

/* fa-upload */
.glyphicon-upload::before {
    content: "\f093";
}

/* fa-calendar */
.glyphicon-calendar::before {
    content: "\f073";
}

/* fa-circle-info */
.glyphicon-info-sign::before {
    content: "\f05a";
}

/* fa-circle-question */
.glyphicon-question-sign::before {
    content: "\f059";
}

/* fa-list */
.glyphicon-list::before {
    content: "\f03a";
}

/* fa-tag */
.glyphicon-tag::before {
    content: "\f02b";
}

/* fa-tags */
.glyphicon-tags::before {
    content: "\f02c";
}

/* fa-lock */
.glyphicon-lock::before {
    content: "\f023";
}

/* fa-lock-open */
.glyphicon-lock-open::before {
    content: "\f3c1";
}

/* fa-user */
.glyphicon-user::before {
    content: "\f007";
}

/* fa-cog */
.glyphicon-cog::before,
.glyphicon-wrench::before {
    content: "\f013";
}

/* fa-ban */
.glyphicon-ban-circle::before {
    content: "\f05e";
}

/* fa-circle-check */
.glyphicon-ok-circle::before {
    content: "\f058";
}

/* fa-circle-xmark */
.glyphicon-remove-circle::before {
    content: "\f057";
}

/* fa-home */
.glyphicon-home::before {
    content: "\f015";
}

/* fa-share */
.glyphicon-share::before,
.glyphicon-share-alt::before {
    content: "\f064";
}

/* fa-link */
.glyphicon-link::before {
    content: "\f0c1";
}

/* fa-zoom-in / fa-magnifying-glass-plus */
.glyphicon-zoom-in::before {
    content: "\f00e";
}

/* fa-zoom-out / fa-magnifying-glass-minus */
.glyphicon-zoom-out::before {
    content: "\f010";
}

/* fa-eye */
.glyphicon-eye-open::before {
    content: "\f06e";
}

/* fa-eye-slash */
.glyphicon-eye-close::before {
    content: "\f070";
}

/* fa-copy */
.glyphicon-copy::before,
.glyphicon-duplicate::before {
    content: "\f0c5";
}

/* fa-scissors */
.glyphicon-scissors::before {
    content: "\f0c4";
}

/* fa-paste */
.glyphicon-paste::before {
    content: "\f0ea";
}

/* fa-font */
.glyphicon-font::before {
    content: "\f031";
}

/* fa-bold */
.glyphicon-bold::before {
    content: "\f032";
}

/* fa-italic */
.glyphicon-italic::before {
    content: "\f033";
}

/* fa-align-left */
.glyphicon-align-left::before {
    content: "\f036";
}

/* fa-align-center */
.glyphicon-align-center::before {
    content: "\f037";
}

/* fa-align-right */
.glyphicon-align-right::before {
    content: "\f038";
}

/* fa-align-justify */
.glyphicon-align-justify::before {
    content: "\f039";
}

/* fa-bars (hamburger) */
.glyphicon-menu-hamburger::before,
.glyphicon-th-large::before {
    content: "\f0c9";
}

/* fa-grip-horizontal */
.glyphicon-th::before {
    content: "\f00a";
}

/* fa-minus */
.glyphicon-minus::before {
    content: "\f068";
}

/* fa-expand */
.glyphicon-fullscreen::before {
    content: "\f065";
}

/* fa-compress */
.glyphicon-resize-small::before {
    content: "\f066";
}

/* fa-sort */
.glyphicon-sort::before {
    content: "\f0dc";
}

/* fa-sort-up */
.glyphicon-sort-by-attributes::before {
    content: "\f0de";
}

/* fa-sort-down */
.glyphicon-sort-by-attributes-alt::before {
    content: "\f0dd";
}

/* fa-globe */
.glyphicon-globe::before {
    content: "\f0ac";
}

/* fa-road */
.glyphicon-road::before {
    content: "\f018";
}

/* fa-map-marker / fa-location-dot */
.glyphicon-map-marker::before {
    content: "\f3c5";
}

/* fa-flag */
.glyphicon-flag::before {
    content: "\f024";
}

/* fa-bookmark */
.glyphicon-bookmark::before {
    content: "\f02e";
}

/* fa-heart */
.glyphicon-heart::before {
    content: "\f004";
}

/* fa-camera */
.glyphicon-camera::before {
    content: "\f030";
}

/* fa-film */
.glyphicon-film::before {
    content: "\f008";
}

/* fa-image */
.glyphicon-picture::before {
    content: "\f03e";
}

/* fa-music */
.glyphicon-music::before {
    content: "\f001";
}

/* fa-headphones */
.glyphicon-headphones::before {
    content: "\f025";
}

/* fa-volume-off */
.glyphicon-volume-off::before {
    content: "\f026";
}

/* fa-volume-down */
.glyphicon-volume-down::before {
    content: "\f027";
}

/* fa-volume-up */
.glyphicon-volume-up::before {
    content: "\f028";
}

/* fa-qrcode */
.glyphicon-qrcode::before {
    content: "\f029";
}

/* fa-barcode */
.glyphicon-barcode::before {
    content: "\f02a";
}

/* fa-retweet */
.glyphicon-retweet::before {
    content: "\f079";
}

/* fa-shopping-cart */
.glyphicon-shopping-cart::before {
    content: "\f07a";
}

/* fa-signal */
.glyphicon-signal::before {
    content: "\f012";
}

/* fa-phone */
.glyphicon-earphone::before {
    content: "\f095";
}

/* fa-inbox */
.glyphicon-inbox::before {
    content: "\f01c";
}

/* fa-folder */
.glyphicon-folder-close::before {
    content: "\f07b";
}

/* fa-folder-open */
.glyphicon-folder-open::before {
    content: "\f07c";
}

/* fa-resize-vertical */
.glyphicon-resize-vertical::before {
    content: "\f07d";
}

/* fa-resize-horizontal */
.glyphicon-resize-horizontal::before {
    content: "\f07e";
}

/* fa-hdd */
.glyphicon-hdd::before {
    content: "\f0a0";
}

/* fa-bell */
.glyphicon-bell::before {
    content: "\f0f3";
}

/* fa-certificate */
.glyphicon-certificate::before {
    content: "\f0a3";
}

/* fa-hand-point-right */
.glyphicon-hand-right::before,
.glyphicon-hand-point-right::before {
    content: "\f0a4";
}

/* fa-hand-point-left */
.glyphicon-hand-left::before,
.glyphicon-hand-point-left::before {
    content: "\f0a5";
}

/* fa-hand-point-up */
.glyphicon-hand-up::before {
    content: "\f0a6";
}

/* fa-hand-point-down */
.glyphicon-hand-down::before {
    content: "\f0a7";
}

/* fa-circle-arrow-left */
.glyphicon-circle-arrow-left::before {
    content: "\f359";
}

/* fa-circle-arrow-right */
.glyphicon-circle-arrow-right::before {
    content: "\f35a";
}

/* fa-circle-arrow-up */
.glyphicon-circle-arrow-up::before {
    content: "\f35b";
}

/* fa-circle-arrow-down */
.glyphicon-circle-arrow-down::before {
    content: "\f358";
}

/* fa-globe (language) */
.glyphicon-language::before {
    content: "\f0ac";
}

/* fa-spinner */
.glyphicon-asterisk::before {
    content: "\f069";
}

/* fa-exclamation */
.glyphicon-exclamation::before {
    content: "\21";
}

/* fa-gift */
.glyphicon-gift::before {
    content: "\f06b";
}

/* fa-leaf */
.glyphicon-leaf::before {
    content: "\f06c";
}

/* fa-fire */
.glyphicon-fire::before {
    content: "\f06d";
}

/* fa-eye (open) */
.glyphicon-eye::before {
    content: "\f06e";
}

/* fa-plane */
.glyphicon-plane::before {
    content: "\f072";
}

/* fa-magic */
.glyphicon-flash::before {
    content: "\f0d0";
}

/* fa-dashboard / fa-gauge */
.glyphicon-dashboard::before {
    content: "\f625";
}

/* fa-paperclip */
.glyphicon-paperclip::before {
    content: "\f0c6";
}

/* fa-saved / fa-floppy-disk */
.glyphicon-saved::before,
.glyphicon-floppy-disk::before {
    content: "\f0c7";
}

.interactive-map-heading .input-group.interactive-map-date-group {
    align-items: stretch !important;
    border-collapse: separate !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    justify-content: center !important;
    margin: 0 auto !important;
    width: max-content !important;
}

.interactive-map-heading > .mt-3 {
    align-items: center !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    margin-top: 1rem !important;
}

.interactive-map-heading > .mt-3 > .text-center {
    margin-bottom: 0 !important;
}

.interactive-map-heading > .mt-3 .interactive-map-date-group {
    margin-right: 10px !important;
}

.interactive-map-heading .input-group.interactive-map-date-group > .btn,
.interactive-map-heading .input-group.interactive-map-date-group > .form-control {
    border: 1px solid #ccc !important;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075) !important;
    display: inline-flex !important;
    float: none !important;
    height: 34px !important;
    margin: 0 !important;
    position: static !important;
}

.interactive-map-heading .input-group.interactive-map-date-group > .btn {
    align-items: center !important;
    flex: 0 0 34px !important;
    justify-content: center !important;
    min-width: 34px !important;
    padding: 0 !important;
    width: 34px !important;
}

.interactive-map-heading .input-group.interactive-map-date-group > .interactive-map-date {
    border-radius: 0 !important;
    flex: 0 0 120px !important;
    margin-left: -1px !important;
    margin-right: -1px !important;
    text-align: center !important;
    width: 120px !important;
}

.interactive-map-heading .input-group.interactive-map-date-group > .interactive-map-date-prev {
    border-bottom-right-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

.interactive-map-heading .input-group.interactive-map-date-group > .interactive-map-date-next {
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
}

.interactive-map-heading .interactive-map-legend {
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
}

.interactive-map-heading .interactive-map-time-controls {
    align-items: stretch !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    justify-content: center !important;
    margin: 0 !important;
}

.interactive-map-heading .interactive-map-time-controls > .input-group {
    align-items: stretch !important;
    border-collapse: separate !important;
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
}

.interactive-map-heading .interactive-map-time-controls .input-group-text,
.interactive-map-heading .interactive-map-time-controls .form-control,
.interactive-map-heading .interactive-map-time-controls .interactive-map-refresh {
    border: 1px solid #ccc !important;
    display: inline-flex !important;
    float: none !important;
    border-radius: 0 !important;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075) !important;
    height: 34px !important;
    margin: 0 !important;
    position: static !important;
}

.interactive-map-heading .interactive-map-time-controls .input-group-text {
    align-items: center !important;
    flex: 0 0 78px !important;
    justify-content: center !important;
    min-width: 78px !important;
    width: 78px !important;
}

.interactive-map-heading .interactive-map-time-controls .timepicker {
    flex: 0 0 100px !important;
    margin-left: -1px !important;
    text-align: center !important;
    width: 100px !important;
}

.interactive-map-heading .interactive-map-time-controls > .input-group + .input-group,
.interactive-map-heading .interactive-map-time-controls > .interactive-map-refresh {
    margin-left: -1px !important;
}

.interactive-map-heading .interactive-map-time-controls > .input-group:first-child > .input-group-text {
    border-bottom-left-radius: 4px !important;
    border-top-left-radius: 4px !important;
}

.interactive-map-heading .interactive-map-time-controls .interactive-map-refresh {
    align-items: center !important;
    border-bottom-right-radius: 4px !important;
    border-top-right-radius: 4px !important;
    flex: 0 0 34px !important;
    justify-content: center !important;
    min-width: 34px !important;
    padding: 0 !important;
    width: 34px !important;
}

.btn-dollar-percent-picker {
    align-items: stretch !important;
    flex-wrap: nowrap !important;
    vertical-align: top !important;
}

.btn-dollar-percent-picker .btn {
    align-items: center !important;
    display: inline-flex !important;
    height: 27px !important;
    justify-content: center !important;
    line-height: 20px !important;
    padding: 2px 5px 1px !important;
    min-width: 28px !important;
}

.ui-dollar-percent-amount-picker-container .ui-dollar-percent-amount {
    box-sizing: border-box !important;
    height: 27px !important;
    line-height: 20px !important;
    padding-bottom: 1px !important;
    padding-top: 2px !important;
    vertical-align: top !important;
}

.popover.rec1-remote-popover {
    max-width: 276px;
    padding: 1px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    text-align: left;
    background-color: #fff;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

.popover.rec1-remote-popover .popover-title,
.popover.rec1-remote-popover .popover-header {
    display: none;
}

.popover.rec1-remote-popover .popover-content,
.popover.rec1-remote-popover .popover-body {
    padding: 9px 14px;
    color: #333;
}

.modal .modal-header {
    min-height: 16.43px;
    padding: 15px !important;
    border-bottom: 1px solid #e5e5e5;
}

.modal .modal-header .btn-close {
    align-self: center !important;
    margin: 0 0 0 auto !important;
}

.modal .modal-header .modal-title,
.modal .modal-header h4.modal-title,
.modal .modal-header h4 {
    font-size: 18px !important;
    font-weight: 500;
    line-height: 1em!important;
    margin: 10px 0 !important;
    padding: 0 !important;
}

.modal .alert.bg-success {
    color: #fff !important;
    background-color: #5cb85c !important;
    border-color: #4cae4c !important;
}

.checkout-date-dropdown-menu {
    min-width: 280px;
}

.checkout-date-dropdown-label {
    color: #555;
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
    white-space: nowrap;
}

.checkout-date-dropdown-input {
    box-sizing: border-box;
    display: block;
    width: 100%;
}

@media (min-width: 768px) {
    .d-flex.flex-column.flex-md-row:has(> .checkout-sidebar) > .receipt-content-wrapper {
        flex: 1 1 auto !important;
        max-width: none !important;
        min-width: 0 !important;
        width: auto !important;
    }

    .rec1-checkout-minicart-container {
        flex: 0 0 220px !important;
        min-width: 220px !important;
        width: 220px !important;
    }

    .rec1-checkout-minicart-container .rec1-catalog-minicart {
        max-width: none !important;
        width: 100% !important;
    }
}

#rec1-permit-view-modal .modal-dialog {
    max-width: 900px !important;
    width: 900px !important;
}

#rec1-permit-view-modal .modal-footer .rec1-permit-editor-email {
    width: 100% !important;
}

#rec1-permit-view-modal .modal-footer .form-group {
    align-items: center !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    justify-content: flex-end !important;
    margin: 0 !important;
}

#rec1-permit-view-modal .modal-footer .pull-left {
    align-items: center !important;
    display: flex !important;
    flex: 1 1 auto !important;
    float: none !important;
    gap: 5px !important;
    min-width: 0 !important;
    margin-right: auto !important;
}

#rec1-permit-view-modal .modal-footer .form-group > .btn,
#rec1-permit-view-modal .modal-footer .form-group > a.btn {
    flex: 0 0 auto !important;
}

#rec1-permit-view-modal .modal-footer .permit-email {
    align-items: center !important;
    display: inline-flex !important;
    gap: 4px !important;
    justify-content: center !important;
}

#rec1-permit-view-modal .modal-footer .permit-email .glyphicon {
    line-height: 1 !important;
}

#rec1-permit-view-modal .modal-footer .permit-email-field {
    align-items: center !important;
    display: inline-flex !important;
    margin: 0 !important;
}

#rec1-permit-view-modal .modal-footer label {
    margin: 0 !important;
    white-space: nowrap !important;
}

#rec1-permit-view-modal .modal-footer .input-group {
    flex: 1 1 220px !important;
    min-width: 220px !important;
}

.user-avatar-large-modal .modal-dialog {
    max-width: calc(100% - 20px) !important;
}

.user-avatar-large-modal .modal-dialog img {
    display: block;
    height: auto !important;
    max-width: 100% !important;
}

.selectmenu-item {
    height: 25.57px !important;
}

.selectmenu-item>input[type=checkbox] {
    margin: 4px 0 0 !important;
    margin-right: .3em !important;
}