﻿.validation-summary-errors
{
    color:red;
}
.form-check .form-check-input {
    margin-left: -1.25rem !important;
}
.form-check .form-check-label {
    padding-left: 0.50rem !important;
}
select[multiple] {
    display: none !important;
}
.brand-text-color {
    color: #2E2E2E !important;
}
/*.btn-gradient {
    background: linear-gradient(to right, #243B55, #141E30) !important;
    opacity: 75% !important;
}*/
.btn-gradient {
    background: linear-gradient(to right, #3F8E8A, #336562) !important;
    opacity: 75% !important;
}
.badge.badge-lg {
    min-width:unset !important;
}
.aside-menu .menu-item .menu-link {
    color: #fff;
}

    .aside-menu .menu-item .menu-link .menu-title {
        color: #fff;
    }

    .aside-menu .menu-item .menu-link .menu-icon,
    .aside-menu .menu-item .menu-link .menu-icon .svg-icon,
    .aside-menu .menu-item .menu-link .menu-icon i {
        color: #fff;
    }

    .aside-menu .menu-item .menu-link .menu-bullet .bullet {
        background-color: #fff;
    }
.aside .aside-toggle i, .aside .aside-toggle .svg-icon{
    color:#fff !important;
}
.menu-heading {
    color: #fff;
}
.topbar .topbar-item i, .topbar .topbar-item .svg-icon{
    color:#fff;
}
table.dataTable > thead .sorting:after, table.dataTable > thead .sorting:before, table.dataTable > thead .sorting_asc:after, table.dataTable > thead .sorting_asc:before, table.dataTable > thead .sorting_asc_disabled:after, table.dataTable > thead .sorting_asc_disabled:before, table.dataTable > thead .sorting_desc:after, table.dataTable > thead .sorting_desc:before, table.dataTable > thead .sorting_desc_disabled:after, table.dataTable > thead .sorting_desc_disabled:before {
    bottom: 0.5em !important;
}
.table > thead {
    vertical-align: middle;
    height: 25px !important;
}


/* ================================
   THEME VARIABLES
   ================================ */

/* LIGHT THEME (default) */
:root {
    --jade-mist: #C0E8DF;
    --misty-jade: #A8E4D3;
    --jade-opal: #8EE5DA;
    --light-jade: #77D9B8;
    --jade-frost: #95C4BB;
    --pale-jade: #77C3B7;
    --jade-smoke: #669999;
}

/* DARK THEME */
/* DARK THEME - NIGHT BLUE (from #202948) */
[data-bs-theme=dark] {
    --jade-mist: #161d33; /* darkest - background base */
    --misty-jade: #1b2340; /* deep surface */
    --jade-opal: #202948; /* base color */
    --light-jade: #2a3560; /* elevated surface */
    --jade-frost: #34407a; /* soft contrast */
    --pale-jade: #4a5aa0; /* lighter UI elements */
    --jade-smoke: #6b7bc0; /* highlight / hover */
   
}
[data-bs-theme="dark"] {
    --bs-page-bg: #161d33;
    --bs-app-blank-bg: #161d33;
    --bs-header-default-bg-color: #1b2340;
    --bs-header-fixed-bg-color: #1b2340;
    --bs-header-fixed-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
    --bs-aside-bg-color: #0f172a;
 
}
   
    [data-bs-theme="dark"] .table {
        --bs-table-color: #e5e7eb;
        --bs-table-bg: #1b2340;
        --bs-table-border-color: #2a3560;
        --bs-table-striped-bg: #202948;
        --bs-table-striped-color: #e5e7eb;
        --bs-table-active-bg: #2a3560;
        --bs-table-active-color: #ffffff;
        --bs-table-hover-bg: #34407a;
        --bs-table-hover-color: #ffffff;
        color: var(--bs-table-color);
        border-color: var(--bs-table-border-color);
    }

    [data-bs-theme="dark"] .nav-pills {
        --bs-nav-pills-border-radius: var(--bs-border-radius);
        --bs-nav-pills-link-active-color: #ffffff;
        --bs-nav-pills-link-active-bg: #1b2340;
    }

    [data-bs-theme="dark"] .nav-link {
        --bs-nav-link-color: #ffffff;
    }
    /* ================================
   JADE COLOR UTILITIES
   ================================ */
    /* === JADE MIST === */
    .bg-jade-mist {
        background-color: var(--jade-mist) !important;
    }

    .bg-jade-mist-hover:hover {
        background-color: var(--jade-mist) !important;
    }

    .border-jade-mist {
        border: 1px solid var(--jade-mist) !important;
    }
    /* === MISTY JADE === */
    .bg-misty-jade {
        background-color: var(--misty-jade) !important;
    }

    .bg-misty-jade-hover:hover {
        background-color: var(--misty-jade) !important;
    }

    .border-misty-jade {
        border: 1px solid var(--misty-jade) !important;
    }
    /* === JADE OPAL === */
    .bg-jade-opal {
        background-color: var(--jade-opal) !important;
    }

    .bg-jade-opal-hover:hover {
        background-color: var(--jade-opal) !important;
    }

    .border-jade-opal {
        border: 1px solid var(--jade-opal) !important;
    }
    /* === LIGHT JADE === */
    .bg-light-jade {
        background-color: var(--light-jade) !important;
    }

    .bg-light-jade-hover:hover {
        background-color: var(--light-jade) !important;
    }

    .border-light-jade {
        border: 1px solid var(--light-jade) !important;
    }
    /* === JADE FROST === */
    .bg-jade-frost {
        background-color: var(--jade-frost) !important;
    }

    .bg-jade-frost-hover:hover {
        background-color: var(--jade-frost) !important;
    }

    .border-jade-frost {
        border: 1px solid var(--jade-frost) !important;
    }
    /* === PALE JADE === */
    .bg-pale-jade {
        background-color: var(--pale-jade) !important;
    }

    .bg-pale-jade-hover:hover {
        background-color: var(--pale-jade) !important;
    }

    .border-pale-jade {
        border: 1px solid var(--pale-jade) !important;
    }
    /* === JADE SMOKE === */
    .bg-jade-smoke {
        background-color: var(--jade-smoke) !important;
    }

    .bg-jade-smoke-hover:hover {
        background-color: var(--jade-smoke) !important;
    }

    .border-jade-smoke {
        border: 1px solid var(--jade-smoke) !important;
    }
    /*#kt_toolbar_container {
    background: linear-gradient(90deg,rgba(92, 141, 122, 1) 0%, rgba(167, 200, 186, 1) 50%);
}*/

    #kt_toolbar_container {
        background: linear-gradient( 90deg, var(--jade-mist) 0%, var(--jade-opal) 50%, var(--light-jade) 100% );
    }

    .header {
        background: linear-gradient( 90deg, var(--jade-mist) 0%, var(--jade-opal) 50%, var(--jade-frost) 85% );
    }

    .kt_datatable .badge {
        border-radius: 0.5rem !important;
    }

    .btn {
        border-radius: 0.5rem !important;
    }

    .round-1 {
        border-radius: 0.5rem !important;
    }

    .card.card-bordered-3 {
        box-shadow: none;
        border: 3px solid #F1F1F4;
    }

    .card.card-bordered-light-sky-3 {
        box-shadow: none;
        border: 3px solid #82CAFA !important;
    }

    .card-dark-green-border {
        border: 1px solid #234e4b !important;
    }

    .card-dark-orange-border {
        border: 1px solid #d86641 !important;
    }

    .card-light-green-border {
        border: 1px solid #487f66 !important;
    }

    .card-dark-lilac-border {
        border: 1px solid #6d5f91 !important;
    }

    .embed-responsive {
        position: relative;
        display: block;
        width: 100%;
        padding: 0;
        overflow: hidden
    }

        .embed-responsive::before {
            display: block;
            content: ""
        }

        .embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100%;
            border: 0
        }

    .embed-responsive-21by9::before {
        padding-top: 42.85714%
    }

    .embed-responsive-16by9::before {
        padding-top: 56.25%
    }

    .embed-responsive-4by3::before {
        padding-top: 75%
    }

    .embed-responsive-1by1::before {
        padding-top: 100%
    }

    .form-control-light-success {
        background-color: #dfffea !important;
        border-color: #17c653 !important;
    }

        .form-control-light-success span {
            color: #17c653 !important;
        }

    .form-control-light-primary {
        background-color: #e9f3ff !important;
        border-color: #1b84ff !important;
    }

        .form-control-light-primary span {
            color: #1b84ff !important;
        }
    /*@media print {*/
    /* Hide everything */
    /*body * {
        visibility: hidden;
    }*/
    /* Show only the print area */
    /*#printArea, #printArea * {
        visibility: visible;
    }*/
    /* Position the print area at the top left */
    /*#printArea {
        position: relative !important;
        left: 0;
        top: 0;
        width: 100%;
        margin: 0;
        padding: 0;
    }
}*/
    /* A3 Page Setup */
    @page {
        size: A4 portrait; /* or 'landscape' */
        margin-top: 0cm;
        margin-bottom: 1cm;
        margin-left: 0.5cm;
        margin-right: 0.5cm;
    }

    @media print {
        /* Hide everything except the print area */
        body * {
            visibility: hidden;
        }

        #printArea, #printArea * {
            visibility: visible;
        }
        /* Ensure the print area stays properly positioned */
        #printArea {
            position: static !important;
            margin: 0;
            padding: 0;
            overflow: visible !important;
            page-break-after: avoid;
            page-break-before: avoid;
            page-break-inside: avoid;
            width: 100%;
            /* ✅ Scale down to 95% */
            transform: scale(0.98);
            transform-origin: top left;
        }
        /* Page break before the second div (blank page) */
        .page-break {
            page-break-before: always;
        }
        /* Hide print buttons or other elements */
        .no-print {
            display: none !important;
        }
        /* Optional: Force background colors and images to print */
        body {
            -webkit-print-color-adjust: exact !important;
            color-adjust: exact !important;
            background: white;
        }
    }
    /* Optional: Preview styles (non-print view) */
    #printArea {
        background-color: #fff;
        /*box-shadow: 0 0 10px rgba(0,0,0,0.1);*/
    }

.glass-card {
    position: relative;
    overflow: hidden;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    backdrop-filter: blur(8px) saturate(120%);
    -webkit-backdrop-filter: blur(8px) saturate(120%);
}

    /* glossy strip (top fade only) */
    .glass-card::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 40%; /* only top portion */
        background: linear-gradient( 180deg, rgba(255,255,255,0.35) 0%, rgba(255,255,255,0.1) 50%, rgba(255,255,255,0) 100% );
        pointer-events: none;
    }

    /* inner shine */
    .glass-card::after {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.06);
        pointer-events: none;
    }

    .glass-inner {
        position: relative;
        z-index: 2;
        color: #fff;
    }

    .glass-card {
        box-shadow: 0 6px 18px rgba(0,0,0,0.06);
        transition: transform 180ms cubic-bezier(.2,.8,.2,1), box-shadow 180ms;
        will-change: transform;
        /* ensure keyboard focusable */
        outline: none;
    }

        .glass-card:hover,
        .glass-card:focus,
        .glass-card:focus-visible {
            transform: translateY(-2px); /* rise 2px */
            box-shadow: 0 10px 24px rgba(0,0,0,0.09);
        }
    /* Respect users who prefer reduced motion */
    @media (prefers-reduced-motion: reduce) {
        .glass-card {
            transition: none;
        }

            .glass-card:hover,
            .glass-card:focus,
            .glass-card:focus-visible {
                transform: none;
                box-shadow: 0 6px 18px rgba(0,0,0,0.06);
            }
    }

    .dash-icon {
        display: inline-block; /* allow transforms */
        transition: transform 180ms ease; /* smooth rotation */
        transform-origin: center center; /* rotate around center */
    }
        /* rotate 4 degrees on hover or keyboard focus */
        .dash-icon:hover,
        .dash-icon:focus,
        .dash-icon:focus-visible {
            transform: rotate(4deg);
        }
    /* 4) Respect reduced motion preferences */
    @media (prefers-reduced-motion: reduce) {
        .dash-icon {
            transition: none;
        }
    }
    /**/
    /* Base utility for any icon element (font icon, SVG, <img>, etc.) */
    .icon-slide {
        --slide: 6px; /* how far to slide */
        --dur: 180ms; /* animation duration */
        --timing: cubic-bezier(.2,.9,.3,1);
        display: inline-block; /* needed so transform doesn't affect flow */
        transform: translateZ(0); /* promote to its own layer for smoother rendering */
        transition: transform var(--dur) var(--timing), opacity var(--dur) var(--timing);
        will-change: transform, opacity;
        cursor: pointer;
        /* keep alignment nice when using icons inside buttons/links */
        vertical-align: middle;
    }
        /* Hover/focus active state (slide right by default) */
        .icon-slide:hover,
        .icon-slide:focus,
        .icon-slide:active {
            transform: translateX(var(--slide));
            outline: none; /* don't remove outlines if you don't provide a visible focus style */
        }
    /* Variants */
    .icon-slide-left:hover,
    .icon-slide-left:focus,
    .icon-slide-left:active {
        transform: translateX(calc(var(--slide) * -1));
    }

    .icon-slide-up:hover,
    .icon-slide-up:focus,
    .icon-slide-up:active {
        transform: translateY(calc(var(--slide) * -1));
    }

    .icon-slide-down:hover,
    .icon-slide-down:focus,
    .icon-slide-down:active {
        transform: translateY(var(--slide));
    }
    /* Stronger slide (use when you want more noticeable motion) */
    .icon-slide-strong {
        --slide: 12px;
        --dur: 220ms;
    }
    /* Slight rotation + slide for a playful effect */
    .icon-slide-tilt:hover,
    .icon-slide-tilt:focus {
        transform: translateX(var(--slide)) rotate(6deg);
    }
    /* If the icon is an inline SVG, ensure the transform origin is centered */
    .icon-slide svg {
        display: block; /* prevents extra gaps for SVGs inside inline-block */
        transform-origin: center center;
    }
    /* Respect users who prefer reduced motion */
    @media (prefers-reduced-motion: reduce) {
        .icon-slide,
        .icon-slide:hover,
        .icon-slide:focus,
        .icon-slide:active {
            transition: none !important;
            transform: none !important;
        }
    }