﻿.app-header {
  
    background-color: #fff;
    border-bottom: 1px solid #f6f6f6;
}
.rm-font-cursive {
    font-family: "Brush Script MT";
    font-size: 24px !important;
}
.no-shadow {box-shadow:none!important;
}
.rm-modal-fullscreen-minus-60 {
    width: calc(100vw - 60px);
    max-width: calc(100vw - 60px);
    height: calc(100vh - 60px);
    max-height: calc(100vh - 60px);
    margin: 30px auto;
}
.dropdown-toggle.rm-dropdown::after {
    margin-left: 1em;
}
.min-h-0 {
    min-height: 0 !important;
}
.flex-1-0 {
    flex: 1 1 0 !important;
    min-height: 0 !important; 
}
.w-80 {
    width: 80% !important;
}
.w-187px {
    width: 187px !important;
}
.w-1080px {
    width: 1080px !important;
}
.h-1080px {
    height: 1080px !important;
}
.w-1275px {
    width: 1275px !important;
}

.h-1650px {
    height: 1650px !important;
}
.w-1200px {
    width: 1200px!important;
}

.h-1584px {
    height: 1584px!important;
}
.w-816px {
    width: 816px !important;
}
.h-1056px {
    height: 1056px !important;
} 

.w-max-content {
    width: max-content !important;
}

.w-fit-content {
    width: fit-content !important;
}
.dt-buttons {
    display: none !important;
}
.max-w-90 { max-width:90%;
}
.max-w-85 {
    max-width: 85%;
}
.opacity-85 {
    opacity: .85 !important;
}
.opacity-95 {
    opacity: .95 !important;
}
.text-ellipsis {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.badge.badge-sm {
    line-height: 0.9;
}
    #calendar_event_wrapper .fc-event, #calendar_event_wrapper .fc-event-main, #calendar_event_wrapper .fc-event-main-frame, #calendar_event_wrapper .fc-event-title-container, #calendar_event_wrapper .fc-event-title {
    pointer-events: auto !important;
    cursor: pointer !important;
}

    /* Also ensure any nested spans/anchors don’t block clicks */
    #calendar_event_wrapper .fc-event * {
        pointer-events: auto !important;
    }
#calendar_event_wrapper .fc-daygrid-event {
    width: 100%;
}

    #calendar_event_wrapper .fc-daygrid-event .fc-event-main {
        width: 100%;
    }
#calendar_event_wrapper .fc-daygrid-day-frame {
    cursor: pointer;
}
.dropzone.dz-upload-multi {text-align:left;
}
.dropzone.dz-upload-multi .dropzone-item {
    display: flex;
    align-items: center;
    margin-top: 0.75rem;
    border-radius: 0.475rem;
    padding: 0.5rem 1rem;
    background-color: var(--bs-gray-100);
}
    .dropzone.dz-upload-multi .dropzone-item .dropzone-file {
        flex-grow: 1;
    }
        .dropzone.dz-upload-multi .dropzone-item .dropzone-file .dropzone-filename {
            font-size: 0.9rem;
            font-weight: 500;
            color: var(--bs-gray-600);
            text-overflow: ellipsis;
            margin-right: 0.5rem;
        }
        .dropzone.dz-upload-multi .dropzone-item .dropzone-file .dropzone-error {
            margin-top: 0.25rem;
            font-size: 0.9rem;
            font-weight: 400;
            color: var(--bs-danger);
            text-overflow: ellipsis;
        }
    .dropzone.dz-upload-multi .dropzone-item .dropzone-progress {
        width: 15%;
    }
        .dropzone.dz-upload-multi .dropzone-item .dropzone-progress .progress {
            height: 5px;
            transition: all 0.2s ease-in-out;
        }
    .dropzone.dz-upload-multi .dropzone-item .dropzone-toolbar {
        margin-left: 1rem;
        display: flex;
        flex-wrap: nowrap;
    }
.dropzone.dz-upload-multi .dropzone-item .dropzone-toolbar .dropzone-start, .dropzone.dz-upload-multi .dropzone-item .dropzone-toolbar .dropzone-cancel, .dropzone.dz-upload-multi .dropzone-item .dropzone-toolbar .dropzone-delete
{
    height: 25px;
    width: 25px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: color 0.2s ease;
}
.dropzone.dz-upload-multi .dropzone-item .dropzone-toolbar .dropzone-start
{
    transition: color 0.2s ease;
}

.form-check-text-switch .form-check-input {
    width: 45px;
    height: 22px;
    min-width: 45px;
    min-height: 22px;
    cursor: pointer;
    position: relative;
}

    .form-check-text-switch .form-check-input::before {
        content: attr(data-off-text);
        position: absolute;
        right: 8px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 9px;
        font-weight: 600;
        color: #252F4A;
        line-height: 1;
        pointer-events: none;
    }

    .form-check-text-switch .form-check-input:checked::before {
        content: attr(data-on-text);
        right: unset;
        left: 8px;
        color: #ffffff;
    }
.form-switch .form-check-input.form-check-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg%3E%3Cpath opacity='0.3' fill='%23010101' d='M12.5,2.5L12.5,2.5c5.523,0,10,4.477,10,10c0,5.523-4.477,10-10,10c-5.523,0-10-4.477-10-10C2.5,6.977,6.977,2.5,12.5,2.5z'/%3E%3Cpath opacity='0.5' fill='%2358595B' d='M12.934,12.934L11.25,11.25c-0.414-0.414-1.086-0.414-1.5,0s-0.414,1.086,0,1.5l3.043,3.043c0.391,0.391,1.023,0.391,1.414,0l5.543-5.543c0.414-0.414,0.414-1.086,0-1.5s-1.086-0.414-1.5,0l-4.184,4.184C13.754,13.246,13.246,13.246,12.934,12.934z'/%3E%3Cpath fill='%23E6E7E8' d='M8.934,12.934L7.25,11.25c-0.414-0.414-1.086-0.414-1.5,0s-0.414,1.086,0,1.5l3.043,3.043c0.391,0.391,1.023,0.391,1.414,0l5.543-5.543c0.414-0.414,0.414-1.086,0-1.5s-1.086-0.414-1.5,0l-4.184,4.184C9.753,13.246,9.247,13.246,8.934,12.934z'/%3E%3C/g%3E%3C/svg%3E");
}
.CodeMirror {
   
    border: 1px solid var(--bs-border-color);
    border-radius: .475rem;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    font-size: .95rem;
}

/* padding similar to form-control */
.CodeMirror-scroll {
    padding: .75rem;
}

/* focus ring similar to BS5 */
.CodeMirror-focused {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}
.image-input.image-input-outline .image-input-wrapper {
    border: 3px solid #f1f1f4;
    box-shadow: none;
    background-color: #f9f9f9;
}

.leaflet-container .leaflet-popup-content-wrapper {
    text-align: left;
}

.market-heat-track {
    background: linear-gradient( 90deg, #22c55e 0%, #a3e635 25%, #facc15 50%, #fb923c 75%, #ef4444 100% );
}

.market-heat-marker {
    top: -10px;
    transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
    pointer-events: none;
    transform: translateX(0px);
}

/* triangle itself */
.market-heat-tri {
    display: block;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 12px solid #333; 
}
@media print {
    /* hard page break element */
    .pdf-page-break {
        break-before: page;
        page-break-before: always;
    }

    /* don’t break inside these (when possible) */
    .pdf-avoid-break {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* make table headers repeat on new pages */
    thead {
        display: table-header-group;
    }

    tfoot {
        display: table-footer-group;
    }

    /* avoid splitting a row */
    tr, td, th {
        break-inside: avoid;
        page-break-inside: avoid;
    }
    
    /* a card should not split (if it fits) */
    .card {
        box-shadow: none !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* avoid shadows/bad rendering in PDF (optional) */
    .shadow, .shadow-sm, .shadow-lg {
        box-shadow: none !important;
    }
}
.menu-state-bg-secondary .menu-item.hover:not(.here) > .menu-link:not(.disabled):not(.active):not(.here), 
.menu-state-bg-secondary .menu-item:not(.here) .menu-link:hover:not(.disabled):not(.active):not(.here) {
    transition: color .2s ease;
    background-color: #f1f1f4;
    color: #071437;
}
.disabled-tool {
    opacity: 0.4;
    pointer-events: none; 
    cursor: not-allowed !important;
}
/*
.tag-selector + .select2,
.select2-container {
    flex: 1 1 auto;
    min-width: 0;
}

.tag-selector + .select2 .select2-selection {
    width: 100%;
}*/
