/* Minification failed. Returning unminified contents.
(49,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(50,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(51,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(52,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(55,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(56,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(57,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(58,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(61,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(62,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(63,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(64,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(65,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(66,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(67,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(68,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(69,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(72,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(73,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(74,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(75,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(78,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(79,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(80,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(81,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(82,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(83,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(86,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(87,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(90,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(91,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(92,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(93,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(94,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(95,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(96,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(99,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(106,28): run-time error CSS1039: Token not allowed after unary operator: '-color-page-bg'
(139,22): run-time error CSS1039: Token not allowed after unary operator: '-color-surface'
(141,35): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(148,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-500'
(170,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(171,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(172,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(173,22): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-bg'
(174,17): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-text'
(180,17): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-width'
(192,25): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-hover'
(195,25): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-active'
(221,33): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(229,29): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-active'
(234,34): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(240,34): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-icon-width'
(248,34): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-width'
(248,57): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-icon-width'
(248,85): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-arrow-width'
(251,35): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(251,50): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(251,65): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(267,26): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(271,26): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-arrow-width'
(287,23): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(292,25): run-time error CSS1039: Token not allowed after unary operator: '-color-sidebar-active'
(315,25): run-time error CSS1039: Token not allowed after unary operator: '-sidebar-icon-width'
(341,30): run-time error CSS1039: Token not allowed after unary operator: '-color-surface'
(342,25): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-500'
(343,36): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(344,27): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(344,42): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(367,17): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(368,18): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(378,25): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(382,25): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(396,17): run-time error CSS1039: Token not allowed after unary operator: '-color-link'
(400,21): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(407,28): run-time error CSS1039: Token not allowed after unary operator: '-color-danger'
(415,28): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-50'
(419,28): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-100'
(460,15): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(466,15): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(475,17): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(476,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(477,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(480,21): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(481,32): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-hover'
(482,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-hover'
(486,21): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(487,32): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-hover'
(488,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-hover'
(492,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-400'
(493,32): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-disabled'
(494,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary-disabled'
(499,21): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(500,32): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(501,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(506,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-600'
(507,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(508,24): run-time error CSS1039: Token not allowed after unary operator: '-color-border-strong'
(511,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-600'
(512,32): run-time error CSS1039: Token not allowed after unary operator: '-color-surface-hover'
(513,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-strong'
(517,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-600'
(518,32): run-time error CSS1039: Token not allowed after unary operator: '-color-surface-active'
(519,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-strong'
(523,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-400'
(524,32): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(525,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-strong'
(530,21): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-600'
(531,32): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(532,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border-strong'
(538,17): run-time error CSS1039: Token not allowed after unary operator: '-color-link'
(547,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-900'
(548,28): run-time error CSS1039: Token not allowed after unary operator: '-color-surface'
(551,28): run-time error CSS1039: Token not allowed after unary operator: '-color-border'
(564,28): run-time error CSS1039: Token not allowed after unary operator: '-color-surface-hover'
(571,33): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(586,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-500'
(587,26): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(591,26): run-time error CSS1039: Token not allowed after unary operator: '-space-1'
(596,21): run-time error CSS1030: Expected identifier, found ':'
(596,27): run-time error CSS1031: Expected selector, found ')'
(596,27): run-time error CSS1025: Expected comma or open brace, found ')'
(626,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-400'
(642,28): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-200'
(648,24): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-200'
(649,33): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-200'
(677,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-500'
(682,19): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(682,34): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(689,19): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(689,34): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(695,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-900'
(696,19): run-time error CSS1039: Token not allowed after unary operator: '-space-2'
(696,34): run-time error CSS1039: Token not allowed after unary operator: '-space-3'
(697,32): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-300'
(712,17): run-time error CSS1039: Token not allowed after unary operator: '-color-link'
(715,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-400'
(718,17): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-400'
(732,22): run-time error CSS1039: Token not allowed after unary operator: '-space-5'
(733,35): run-time error CSS1039: Token not allowed after unary operator: '-color-gray-100'
(752,17): run-time error CSS1039: Token not allowed after unary operator: '-color-link'
(753,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(760,17): run-time error CSS1039: Token not allowed after unary operator: '-color-link'
(761,28): run-time error CSS1039: Token not allowed after unary operator: '-color-surface-hover'
(765,28): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
(766,24): run-time error CSS1039: Token not allowed after unary operator: '-color-primary'
 */
.select2-container--bootstrap4 .select2-selection--single {
    border-color: #ccc;
}

.select2-container--bootstrap4 .select2-results__option--highlighted[aria-selected] {
    background-color: #01638f;
    color: white;
}

.select2-container--bootstrap4 .select2-results__option--highlighted,
.select2-container--bootstrap4 .select2-results__option--highlighted.select2-results__option[aria-selected=true] {
    background-color: #01638f;
    color: white;
}

.select2-container--bootstrap4 .select2-selection--multiple {
    border-color: #ccc;
}

.select2-search--bootstrap4 .select2-search__field {
    border-color: #ccc;
}
.modal-content-empty{
    min-height: 200px;
}

.block-ui-container {
    background: rgba(255,255,255, 0.5);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.5);
}

.block-ui-spinner {
    background-image: url(/Content/images/ring-alt-64.gif);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center center;
    width: 100%;
    height: 100%;
    z-index: 1001;
}
:root {
    /* ─── Brand ─── */
    --color-primary:          #1766a0;
    --color-primary-hover:    #125a8e;
    --color-primary-disabled: #6a9ab8;
    --color-link:             #1766a0;

    /* ─── Sidebar ─── */
    --color-sidebar-bg:       #13293D;
    --color-sidebar-text:     #8391a2;
    --color-sidebar-hover:    #bccee4;
    --color-sidebar-active:   #ffffff;

    /* ─── Neutrals ─── */
    --color-white:            #ffffff;
    --color-gray-50:          #f8f9fa;
    --color-gray-100:         #f3f4f6;
    --color-gray-200:         #e5e7eb;
    --color-gray-300:         #d1d5db;
    --color-gray-400:         #9ca3af;
    --color-gray-500:         #6b7280;
    --color-gray-600:         #374151;
    --color-gray-900:         #212121;

    /* ─── Semantic ─── */
    --color-danger:           #dc3545;
    --color-warning:          #f59e0b;
    --color-success:          #28a745;
    --color-info:             #17a2b8;

    /* ─── Surfaces ─── */
    --color-surface:          #ffffff;
    --color-surface-hover:    #f3f4f6;
    --color-surface-active:   #e5e7eb;
    --color-page-bg:          #f8f9fa;
    --color-border:           #e5e7eb;
    --color-border-strong:    #d1d5db;

    /* ─── Overlay ─── */
    --color-overlay-light:    rgba(255, 255, 255, 0.7);
    --color-overlay-dark:     rgba(0, 0, 0, 0.5);

    /* ─── Spacing Scale ─── */
    --space-0:  0;
    --space-1:  0.25rem;
    --space-2:  0.5rem;
    --space-3:  1rem;
    --space-4:  1.5rem;
    --space-5:  2rem;
    --space-6:  3rem;

    /* Legacy alias — referenced by Vue components, will migrate later */
    --application-link-color: var(--color-link);
}
html, body {
    height: 100%;
    font-size: 14px;
}
body {
    background-color: var(--color-page-bg);
    font-family: "Segoe UI Web (East European)", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #111827;
}

/*
    Application layout
*/
.application {
    height: 100vh;
    overflow: hidden;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas:
        "sidebar header"
        "sidebar content"
}
.application-header {
    grid-area: header;
}
.application-sidebar {
    grid-area: sidebar;
    height: 100%;
}
.application-content {
    grid-area: content;
    overflow: auto;
}
.application-header > .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--color-surface);
    height: 4rem;
    border-bottom: 1px solid var(--color-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
    .application-header > .header a {
        display: flex;
        align-items: center;
        height: 100%;
        color: var(--color-gray-500);
        text-decoration: none;
    }
        .application-header > .header a:hover,
        .application-header > .header a:focus,
        .application-header > .header a:active {
            color: inherit;
            background-color: inherit;
        }

@media print{
    /*
        Do not enforce height while printing. If you do so,
        part of the printout may be hidden behind the scroll bar,
        which you cannot scroll on a paper.
    */
    .application{
        height: auto;
    }
}

.sidebar {
    --sidebar-width: 18rem;
    --sidebar-icon-width: 4rem;
    --sidebar-arrow-width: 2rem;
    background: var(--color-sidebar-bg);
    color: var(--color-sidebar-text);
    height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    width: var(--sidebar-width);
}
/* Styles of <a> elements inside sidebar. */
.sidebar a {
    color: inherit;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
        .sidebar a:hover,
        .sidebar a:focus {
            color: var(--color-sidebar-hover);
        }
        .sidebar a.active {
            color: var(--color-sidebar-active);
        }

    /* Sidebar logo */
    .sidebar > .logo-container {
        height: 4rem;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #ddd;
        font-weight: 600;
        flex-shrink: 0;
        flex-grow: 0;
        white-space: nowrap;
    }

    /* Sidebar menu */
    .sidebar .menu {
        display: flex;
        flex-direction: column;
        overflow: hidden auto;
        flex: 1;
    }
        .sidebar .menu .menu-item {
            display: flex;
            flex-direction: row;
            margin-bottom: var(--space-2);
            flex-grow: 0;
            flex-shrink: 0;
            flex-basis: auto;
        }
            .sidebar .menu .menu-item.active .icon,
            .sidebar .menu .menu-item.active .label,
            .sidebar .menu .menu-item.active .arrow {
                color: var(--color-sidebar-active);
            }

            /* Icon of menu item. */
            .sidebar .menu .menu-item .icon {
                margin-top: var(--space-1);
                display: inline-block;
                font-size: 1.25rem;
                text-align: center;
                flex-shrink: 0;
                flex-grow: 0;
                flex-basis: var(--sidebar-icon-width);
            }

            /* Links of menu item. */
            .sidebar .menu .menu-item .links {
                flex-grow: 1;
                flex-shrink: 0;
                display: block;
                width: calc(var(--sidebar-width) - var(--sidebar-icon-width) - var(--sidebar-arrow-width));
            }
                .sidebar .menu .menu-item .links a {
                    padding: var(--space-2) var(--space-3) var(--space-2) 0;
                    display: block;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                }

            /* Sub items */
            .sidebar .menu .menu-item .links .sub-items {
                display: none;
            }
            .sidebar .menu .menu-item.expanded .links .sub-items{
                display: block;
            }

    .sidebar .menu-item .arrow {
        margin-top: var(--space-2);
        text-align: center;
        flex-shrink: 0;
        flex-grow: 0;
        flex-basis: var(--sidebar-arrow-width);
    }
        .sidebar .menu-item .arrow .icon-expanded,
        .sidebar .menu-item .arrow .icon-collapsed {
            display: none;
        }
        .sidebar .menu-item.expandable.expanded .arrow .icon-expanded {
            display: initial;
        }
        .sidebar .menu-item.expandable:not(.expanded) .arrow .icon-collapsed {
            display: initial;
        }

    /* Toggle button */
    .sidebar .toggle-button {
        display: flex;
        padding: var(--space-3);
        font-size: 1.5rem;
        flex-direction: row-reverse;
    }
        .sidebar .toggle-button:hover {
            color: var(--color-sidebar-active);
        }
        .sidebar .toggle-button .icon-expand,
        .sidebar .toggle-button .icon-collapse {
            display: none;
        }
    .sidebar:not(.collapsed) .toggle-button .icon-collapse {
        display: initial;
    }
    .sidebar.collapsed .toggle-button .icon-expand {
        display: initial;
    }

    /*
        Collapsed sidebar
        - for devices < 768, collapsed sidebar is not visible at all.
        - for devices >=768, collapsed sidebar presents icons.
    */
    .sidebar.collapsed {
        width: 0;
    }
    @media (min-width: 768px){
        .sidebar.collapsed {
            width: var(--sidebar-icon-width);
        }
    }
        /* Hide logo. */
        .sidebar.collapsed .logo-container .logo {
            display: none;
        }
        /* Reset white color of label of active element. */
        .sidebar.collapsed .menu .menu-item.active .label {
            color: inherit;
        }

        .sidebar.collapsed a.active {
            color: inherit;
            font-weight: bold;
        }

        /* Hide links and arrows when sidebar is collapsed. Present icons only. */
        .sidebar.collapsed .menu .menu-item .links,
        .sidebar.collapsed .menu .menu-item .arrow{
            display: none;
        }
        .sidebar.collapsed .menu .menu-item:hover .links {
            position: fixed;
            display: block;
            margin-left: 4rem;
            background: var(--color-surface);
            color: var(--color-gray-500);
            border: 1px solid var(--color-border);
            padding: var(--space-2) var(--space-3);
            z-index: 100;
            overflow: auto;
        }
            .sidebar.collapsed .menu .menu-item:hover .links .sub-items {
                display: block;
            }
            /*
                Do not present links withou href attributes.
                When the sidebar is expanded those links works as headers of modules.
                They doesn't redirect to a page, but expand or collapse submenu.
            */
            .sidebar.collapsed .menu .menu-item:hover .links a[href=""]{
                display: none;
            }

/*
    Sidebar scrollbar.
    The scrollbar is not presented, when sidebar is collapsed. Presenting it causes
    issue with opening menu item. The scrollbar gets hover when user try to move cursor
    from icon to the link (text on the right).
*/
.sidebar:not(.collapsed) .menu::-webkit-scrollbar {
    width: var(--space-2);
    height: var(--space-2);
}
.sidebar.collapsed .menu::-webkit-scrollbar {
    width: 0;
}
.sidebar.collapsed .menu {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE 10+ */
}
.sidebar .menu::-webkit-scrollbar-track {
    border-radius: var(--space-3);
    background: rgba(255,255,255,0.1);
}
.sidebar .menu::-webkit-scrollbar-thumb {
    border-radius: var(--space-3);
    background: rgba(255,255,255,0.2);
}
    .sidebar .menu::-webkit-scrollbar-thumb:hover {
        background: rgba(0,0,0,0.4);
    }
    .sidebar .menu::-webkit-scrollbar-thumb:active {
        background: rgba(0,0,0,0.9);
    }

/* Links */
a,
a:hover,
a:focus {
    color: var(--color-link);
}
    a:not(.btn).disabled{
        pointer-events: none;
        color: var(--gray) !important;
    }
    a.color-inherit {
        color: inherit;
    }

.input-validation-error{
    border: 1px solid var(--color-danger);
}

div.text-pre-wrap{
    white-space: pre-wrap
}

tr.even-works-group {
    background-color: var(--color-gray-50);
}

.bg-light-gray{
    background-color: var(--color-gray-100);
}

.bold{
    font-weight: bold;
}

@media (min-width: 992px) {
    .sticky-top-md {
        position: sticky;
        top: 0;
    }
}

.text-light-gray{
    color: #ddd;
}

.text-gray {
    color: #bbb;
}

.text-x-small{
    font-size: x-small;
}

.text-decoration-line-through {
    text-decoration: line-through;
}

/*description lists*/
dl dd {
    margin-bottom: 0;
}

/*buttons*/
.btn {
    border-radius: 0.375rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-1);
}
.button-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-1);
}
.button-toolbar.text-right {
    justify-content: flex-end;
}
.btn-sm {
    padding: 0.3rem 0.5rem;
}
.btn-primary {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}
    .btn-primary:hover {
        color: var(--color-white);
        background-color: var(--color-primary-hover);
        border-color: var(--color-primary-hover);
    }
    .btn-primary:focus,
    .btn-primary.focus {
        color: var(--color-white);
        background-color: var(--color-primary-hover);
        border-color: var(--color-primary-hover);
    }
    .btn-primary.disabled,
    .btn-primary:disabled {
        color: var(--color-gray-400);
        background-color: var(--color-primary-disabled);
        border-color: var(--color-primary-disabled);
    }
    .btn-primary:not(:disabled):not(.disabled):active,
    .btn-primary:not(:disabled):not(.disabled).active,
    .show > .btn-primary.dropdown-toggle {
        color: var(--color-white);
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        box-shadow: none;
    }

.btn-secondary {
    color: var(--color-gray-600);
    background-color: var(--color-white);
    border-color: var(--color-border-strong);
}
    .btn-secondary:hover {
        color: var(--color-gray-600);
        background-color: var(--color-surface-hover);
        border-color: var(--color-border-strong);
    }
    .btn-secondary:focus,
    .btn-secondary.focus {
        color: var(--color-gray-600);
        background-color: var(--color-surface-active);
        border-color: var(--color-border-strong);
    }
    .btn-secondary.disabled,
    .btn-secondary:disabled {
        color: var(--color-gray-400);
        background-color: var(--color-white);
        border-color: var(--color-border-strong);
    }
    .btn-secondary:not(:disabled):not(.disabled):active,
    .btn-secondary:not(:disabled):not(.disabled).active,
    .show > .btn-secondary.dropdown-toggle {
        color: var(--color-gray-600);
        background-color: var(--color-white);
        border-color: var(--color-border-strong);
        box-shadow: none;
    }

.btn-link,
.btn-link:hover {
    color: var(--color-link);
}

.btn-link.color-inherit{
    color: inherit;
}

/*cards*/
.card {
    color: var(--color-gray-900);
    background-color: var(--color-surface);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border-radius: 0.5rem;
    border: 1px solid var(--color-border);
}
.card > .card-header {
    color: inherit;
    background-color: inherit;
    border: none;
    border-radius: 0.5rem 0.5rem 0 0;
}
.card > .card-footer {
    color: inherit;
    background-color: inherit;
}
.card li.list-group-item:hover {
    background-color: var(--color-surface-hover);
}
.card li.list-group-item.active {
    color: inherit;
    background-color: inherit;
    border-color: rgba(0,0,0,.125);
    border-width: 0 0 1px;
    border-left: 5px solid var(--color-primary);
}
.card li.list-group-item a,
.card li.list-group-item a:hover,
.card li.list-group-item.active a,
.card li.list-group-item.active a:hover {
    text-decoration: none
}

.card .list-group{
    border-top: none;
}

dl.row > dt {
    font-weight: 600;
    color: var(--color-gray-500);
    padding-bottom: var(--space-1);
}

dl.row > dd {
    padding-bottom: var(--space-1);
}

dl.row > dt:hover,
dl.row > dt:hover + dd,
dl.row > dt:has(+ dd:hover),
dl.row > dd:hover {
    background-color: var(--color-surface-hover);
}

.highlight-icons-on-hover:not(:hover) svg.icon
{
    color: #ddd !important;
}

/* SVG icon base styles (Lucide outline icons) */
svg.icon {
    width: 1em;
    height: 1em;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    vertical-align: -0.125em;
    display: inline-block;
}

/* Larger icons inside tables for better visibility */
.table svg.icon {
    font-size: 1.05rem;
}

/* Gray icons in table rows, colored on hover */
.table tbody tr:not(:hover) svg.icon {
    color: var(--color-gray-400) !important;
}

@keyframes icon-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.icon-spin {
    animation: icon-spin 2s linear infinite;
}

/*tables*/
.table {
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--color-gray-200);
    border-radius: 0.5rem;
}

.table td,
.table th {
    border-color: var(--color-gray-200);
    border-left: 1px solid var(--color-gray-200);
}

.table td:first-child,
.table th:first-child {
    border-left: none;
}

.table td:last-child,
.table th:last-child {
    border-right: none;
}

.table thead tr:first-child th {
    border-top: none;
}

.table tbody tr:last-child td {
    border-bottom: none;
}

.table tfoot tr:last-child th,
.table tfoot tr:last-child td {
    border-bottom: none;
}

.table thead th {
    font-weight: 600;
    color: var(--color-gray-500);
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom-width: 1px;
    padding: var(--space-2) var(--space-3);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.table tbody td {
    padding: var(--space-2) var(--space-3);
}

.table tfoot th,
.table tfoot td {
    font-weight: 600;
    color: var(--color-gray-900);
    padding: var(--space-2) var(--space-3);
    border-top: 2px solid var(--color-gray-300);
}

div.contains-money, td.contains-money, th.contains-money {
    text-align: right;
    white-space: nowrap;
}
div.contains-number, td.contains-number, th.contains-number {
    text-align: right;
    white-space: nowrap;
}
div.contains-date, td.contains-date, th.contains-date {
    white-space: nowrap;
}
div a {
    color: var(--color-link);
}
div span.glyphicon.glyphicon-sort {
    color: var(--color-gray-400);
}
div span.glyphicon-sort-by-attributes, div span.glyphicon-sort-by-attributes-alt {
    color: var(--color-gray-400);
}
div.contains-percentages {
    white-space: nowrap;
    text-align: right;
}

/*modals*/
.modal-content .modal-body-height-600 {
    max-height: 600px;
    overflow-y: auto;
}
.modal-body p.section-separator {
    font-size: larger;
    margin-top: var(--space-5);
    border-bottom: 1px solid var(--color-gray-100);
}

/* Size of small modal has been changed, now it handles two date picker (from - to) without trimming dates.*/
@media (min-width: 768px) {
    .modal-sm {
        width: 350px;
    }
}

/*breadcrumbs*/
.breadcrumb {
    background-color: transparent;
    margin-bottom: 0;
}

/*pagination*/
.pagination > li > a,
.pagination > li > span {
    color: var(--color-link);
    background-color: var(--color-white);
}

.pagination > li > a:hover,
.pagination > li > a:focus,
.pagination > li > span:hover,
.pagination > li > span:focus {
    color: var(--color-link);
    background-color: var(--color-surface-hover);
}

.pagination .page-item.active .page-link {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

/*printing*/
@media print {
    a[href]:after {
        content: none
    }
    a[href] {
        color: inherit;
        text-decoration: none;
    }
}

