﻿:root {
    /*
        App Variables
    */

    --bg: #e4e6e9;
    --primary: #4a74b3;
    --primary-darker: #2f5597;
    --green: #377d2e;
    --success: #28a745;
    --bg-success: #dff0d8;
    --warning: #d16301;
    --bg-warning: #fcf8e3;
    --danger: #dc3545;
    --bg-danger: #fff4f4;
    --input-border-color: #d5d5d5;
    /*
        Bootstrap variables
    */
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary-text-emphasis: #052c65;
    --bs-secondary-text-emphasis: #2b2f32;
    --bs-success-text-emphasis: #0a3622;
    --bs-info-text-emphasis: #055160;
    --bs-warning-text-emphasis: #664d03;
    --bs-danger-text-emphasis: #58151c;
    --bs-light-text-emphasis: #495057;
    --bs-dark-text-emphasis: #495057;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-info-bg-subtle: #cff4fc;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #ced4da;
    --bs-primary-border-subtle: #9ec5fe;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-success-border-subtle: #a3cfbb;
    --bs-info-border-subtle: #9eeaf9;
    --bs-warning-border-subtle: #ffe69c;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-light-border-subtle: #e9ecef;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: roboto, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient( 180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0) );
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #333;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg: #e8e9f1;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(33, 37, 41, 0.75);
    --bs-secondary-color-rgb: 33, 37, 41;
    --bs-secondary-bg: #e9ecef;
    --bs-secondary-bg-rgb: 233, 236, 239;
    --bs-tertiary-color: rgba(33, 37, 41, 0.5);
    --bs-tertiary-color-rgb: 33, 37, 41;
    --bs-tertiary-bg: #f8f9fa;
    --bs-tertiary-bg-rgb: 248, 249, 250;
    --bs-heading-color: #333;
    --bs-link-color: #0d6efd;
    --bs-link-color-rgb: 74, 116, 179;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #0a58ca;
    --bs-link-hover-color-rgb: 10, 88, 202;
    --bs-code-color: #333;
    --bs-highlight-color: #212529;
    --bs-highlight-bg: #fff3cd;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0;
    --bs-border-radius-sm: 0;
    --bs-border-radius-lg: 0;
    --bs-border-radius-xl: 0;
    --bs-border-radius-xxl: 0;
    --bs-border-radius-2xl: 0;
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
    --bs-form-valid-color: #198754;
    --bs-form-valid-border-color: #198754;
    --bs-form-invalid-color: #dc3545;
    --bs-form-invalid-border-color: #dc3545;
}

.btn {
    --bs-btn-padding-x: 10px;
    --bs-btn-padding-y: 5px;
    --bs-btn-font-size: 13px;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: var(--bs-border-radius);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), 0.5);
}

div.row {
    --bs-gutter-x: 10px;
    --bs-gutter-y: 10px;
    /* meia 
    width: calc( var(--bs-gutter-x) + 100%);
    margin-top: calc(-0.5 * var(--bs-gutter-y));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
        */
    width: calc(var(--bs-gutter-x) + 100%);
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-left: calc(-1 * var(--bs-gutter-x));
    margin-right: calc(-1 * var(--bs-gutter-x));
}

    div.row > * {
        padding: 0;
        padding-left: calc(var(--bs-gutter-x) * 1);
        padding-top: calc(var(--bs-gutter-x) * 1);
        margin: 0;
    }

/*
    scrollbars
*/

* {
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

body {
    font-size: 13px !important;
    margin: 0;
    padding: 0;
}

    body:has(.overall:not(.hide)) {
        overflow: hidden;
    }

a:not([href]):not([class]),
a:not([href]):not([class]):hover,
a {
    text-decoration: none !important;
    color: var(--primary);
}

h5 {
    font-size: 15px !important;
    font-weight: 600;
}

select {
    /* custom arrow */
    background: #f7f7f7;
    border: 1px solid #b1b1b1;
    box-sizing: border-box;
    border-radius: 8px;
    padding: 16px;
    width: 100%;
    height: 48px;
    -webkit-appearance: none;
    appearance: none;
    -moz-appearance: none;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="842.51" height="478.79" fill="%23858585" viewBox="0 0 347.54 197.5"> <path transform="translate(8.7727 -66.265)" d="m15.002 66.277c-8.2947-0.0489-15.921 4.2378-20.215 11.316-4.679 7.5093-4.7406 16.91-0.21289 24.48 2.5918 4.397 5.7316 6.6863 7.2988 8.3516a7.9036 7.9036 0 0 0 0.16797 0.17188c48.783 48.775 97.555 97.564 146.35 146.33a7.9036 7.9036 0 0 0 0.0156 0.0176c6.3121 6.2698 15.543 8.415 23.977 5.5898 4.5015-1.4307 8.0159-4.1428 10.699-7.0703l-0.23828 0.24805c49.717-49.723 99.448-99.438 149.16-149.17a7.9036 7.9036 0 0 0 0.041-0.041c6.2531-6.3514 8.3112-15.594 5.4648-23.988-2.7846-8.5757-10.16-14.753-19.092-15.988-7.7183-1.1565-15.436 1.5503-20.742 7.2539l0.19727-0.20508c-44.288 44.289-88.577 88.578-132.87 132.87-44.485-44.48-88.96-88.975-133.46-133.45a7.9036 7.9036 0 0 0-0.08008-0.08008c-4.4346-4.307-10.327-6.6496-16.463-6.6387z"/></svg>');
    background-repeat: no-repeat;
    background-size: 11px;
    background-position: center right 10px;
}

.hidden,
.hide {
    display: none;
}

.text-green {
    color: var(--green);
}

html,
body {
    position: relative;
    height: 100%;
}

a[onclick] {
    cursor: pointer;
}

.custom-number {
    text-align: right;
}

[center] {
    text-align: center !important;
}

[left] {
    text-align: left !important;
}

[right] {
    text-align: right !important;
}

* > code {
    font-size: 1em !important;
}

label:has(input[type="checkbox"]),
label:has(input[type="radio"]) {
    cursor: pointer;
}

label.radio,
label.checkbox {
    margin: 4px 0px;
}

    label.radio input[type="radio"] {
        cursor: pointer;
        appearance: none;
        display: inline-block;
        content: " ";
        border: 1px solid #b5b5b5;
        background-color: white;
        border-radius: 50%;
        width: 1em;
        height: 1em;
        vertical-align: middle;
        text-align: center;
        padding: 0;
        margin: 0;
        box-sizing: content-box;
    }

        label.radio input[type="radio"]:checked::before {
            appearance: none;
            display: block;
            margin: 0;
            content: " ";
            background-color: var(--primary);
            border: 2.5px solid white;
            border-radius: 50%;
            width: 100%;
            height: 100%;
            vertical-align: text-bottom;
        }

    label.checkbox input[type="checkbox"] {
        cursor: pointer;
        appearance: none;
        display: inline-block;
        content: " ";
        border: 1px solid #b5b5b5;
        background-color: white;
        border-radius: 0;
        width: 1em;
        height: 1em;
        vertical-align: middle;
        text-align: center;
        padding: 0;
        margin: 0;
        box-sizing: content-box;
    }

        label.checkbox input[type="checkbox"]:checked::before {
            display: block;
            content: " ";
            width: 100%;
            height: 100%;
            vertical-align: middle;
            font-weight: bold;
            fill: var(--primary);
            padding: 1px;
            border: 1px solid transparent;
            background-image: url('data:image/svg+xml,<svg width="80.112mm" height="83.189mm" version="1.1" viewBox="0 0 80.112 83.189" xmlns="http://www.w3.org/2000/svg"><g transform="translate(15.941 19.034)"><path d="m-15.941 34.784 13.792-13.792 13.499 13.499 37.199-53.525 15.622 10.669-50.86 72.52z" fill="%232F5597" /></g></svg>');
            background-size: calc(100%);
            background-position: center;
            background-repeat: no-repeat;
        }

/*
    Validation
*/

input[data-type="currency"] {
    background-image: url('data:image/svg+xml,<svg viewBox="0 0 3.2073946 6.5456843" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><g transform="translate(-140.3861,-96.408094)"><path style="fill:%23858585;stroke-width:0;" d="m 142.95614,100.94529 q 0,-0.31695 -0.22393,-0.53399 -0.22048,-0.21705 -0.74758,-0.39275 -0.73381,-0.223926 -1.07143,-0.582217 -0.33417,-0.361735 -0.33417,-0.916396 0,-0.564996 0.32728,-0.926731 0.33073,-0.361735 0.90606,-0.430637 v -0.754476 h 0.51332 v 0.757921 q 0.57878,0.07924 0.89917,0.485759 0.32384,0.406521 0.32384,1.112766 h -0.6339 q 0,-0.485758 -0.23082,-0.771702 -0.23082,-0.285943 -0.62356,-0.285943 -0.40997,0 -0.62701,0.213596 -0.21704,0.210151 -0.21704,0.589112 0,0.3514 0.22738,0.561551 0.23082,0.206706 0.75447,0.378961 0.5271,0.16881 0.81994,0.375515 0.29627,0.203261 0.43408,0.475421 0.14125,0.27217 0.14125,0.63735 0,0.58222 -0.3514,0.93706 -0.34796,0.35485 -0.97841,0.4203 v 0.65802 h -0.50987 v -0.65802 q -0.64079,-0.0586 -1.00597,-0.45475 -0.36174,-0.39963 -0.36174,-1.08176 h 0.63734 q 0,0.47887 0.2515,0.73725 0.25149,0.25838 0.71313,0.25838 0.45131,0 0.70969,-0.21704 0.25838,-0.21704 0.25838,-0.59255 z" /></g></svg>');
    background-repeat: no-repeat;
    background-position: left 6px center;
    background-size: 8px;
    padding-left: 24px !important;
    text-align: right;
}

    input[data-type="currency"].err {
        color: var(--danger);
        background-image: url('data:image/svg+xml,<svg viewBox="0 0 3.2073946 6.5456843" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><g transform="translate(-140.3861,-96.408094)"><path style="fill:%23dc3545;stroke-width:0;" d="m 142.95614,100.94529 q 0,-0.31695 -0.22393,-0.53399 -0.22048,-0.21705 -0.74758,-0.39275 -0.73381,-0.223926 -1.07143,-0.582217 -0.33417,-0.361735 -0.33417,-0.916396 0,-0.564996 0.32728,-0.926731 0.33073,-0.361735 0.90606,-0.430637 v -0.754476 h 0.51332 v 0.757921 q 0.57878,0.07924 0.89917,0.485759 0.32384,0.406521 0.32384,1.112766 h -0.6339 q 0,-0.485758 -0.23082,-0.771702 -0.23082,-0.285943 -0.62356,-0.285943 -0.40997,0 -0.62701,0.213596 -0.21704,0.210151 -0.21704,0.589112 0,0.3514 0.22738,0.561551 0.23082,0.206706 0.75447,0.378961 0.5271,0.16881 0.81994,0.375515 0.29627,0.203261 0.43408,0.475421 0.14125,0.27217 0.14125,0.63735 0,0.58222 -0.3514,0.93706 -0.34796,0.35485 -0.97841,0.4203 v 0.65802 h -0.50987 v -0.65802 q -0.64079,-0.0586 -1.00597,-0.45475 -0.36174,-0.39963 -0.36174,-1.08176 h 0.63734 q 0,0.47887 0.2515,0.73725 0.25149,0.25838 0.71313,0.25838 0.45131,0 0.70969,-0.21704 0.25838,-0.21704 0.25838,-0.59255 z" /></g></svg>'), linear-gradient(45deg, transparent 0% 95%, var(--danger) 96%);
        background-position: left 6px center, center right 0;
        background-size: 8px, 150px;
    }

input[data-type="percent"] {
    background-image: url('data:image/svg+xml,<svg viewBox="0 0 4.4992971 5.160748" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><g transform="translate(-123.90636,-102.23721)"><path style="fill:%23858585;stroke-width:0;" d="m 123.90637,103.27417 q 0,-0.45131 0.28594,-0.74414 0.28939,-0.29283 0.7407,-0.29283 0.45819,0 0.74069,0.29628 0.28595,0.29283 0.28595,0.76136 v 0.2446 q 0,0.45476 -0.28939,0.74415 -0.28595,0.28594 -0.73036,0.28594 -0.44787,0 -0.7407,-0.28594 -0.29283,-0.28939 -0.29283,-0.76826 z m 0.47542,0.26527 q 0,0.26872 0.15159,0.44442 0.15158,0.17226 0.40652,0.17226 0.2446,0 0.39274,-0.16881 0.15158,-0.16881 0.15158,-0.46165 v -0.25149 q 0,-0.26872 -0.14814,-0.44442 -0.14814,-0.1757 -0.40307,-0.1757 -0.25494,0 -0.40308,0.1757 -0.14814,0.1757 -0.14814,0.4582 z m 1.96715,2.55627 q 0,-0.45131 0.28594,-0.7407 0.28939,-0.29283 0.7407,-0.29283 0.45131,0 0.7407,0.28939 0.28938,0.28938 0.28938,0.76825 v 0.24461 q 0,0.4513 -0.28938,0.74414 -0.28595,0.28938 -0.73381,0.28938 -0.44786,0 -0.7407,-0.28594 -0.29283,-0.28939 -0.29283,-0.76826 z m 0.47542,0.26872 q 0,0.27216 0.15159,0.44786 0.15158,0.17225 0.40652,0.17225 0.24805,0 0.39619,-0.16881 0.14814,-0.17225 0.14814,-0.46509 v -0.25493 q 0,-0.27217 -0.15159,-0.44442 -0.14814,-0.17226 -0.39963,-0.17226 -0.2446,0 -0.39963,0.17226 -0.15159,0.16881 -0.15159,0.4582 z m -1.73977,0.58222 -0.36173,-0.22738 2.44946,-3.92052 0.36174,0.22738 z" /></g></svg>');
    background-repeat: no-repeat;
    background-position: right 6px center;
    background-size: 12px;
    padding-right: 24px !important;
    text-align: right;
}

    input[data-type="percent"].err {
        color: var(--danger);
        background-image: url('data:image/svg+xml,<svg width="4.4992971mm" height="5.160748mm" viewBox="0 0 4.4992971 5.160748" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><g transform="translate(-123.90636,-102.23721)"><path style="fill:%23dc3545;stroke-width:0;" d="m 123.90637,103.27417 q 0,-0.45131 0.28594,-0.74414 0.28939,-0.29283 0.7407,-0.29283 0.45819,0 0.74069,0.29628 0.28595,0.29283 0.28595,0.76136 v 0.2446 q 0,0.45476 -0.28939,0.74415 -0.28595,0.28594 -0.73036,0.28594 -0.44787,0 -0.7407,-0.28594 -0.29283,-0.28939 -0.29283,-0.76826 z m 0.47542,0.26527 q 0,0.26872 0.15159,0.44442 0.15158,0.17226 0.40652,0.17226 0.2446,0 0.39274,-0.16881 0.15158,-0.16881 0.15158,-0.46165 v -0.25149 q 0,-0.26872 -0.14814,-0.44442 -0.14814,-0.1757 -0.40307,-0.1757 -0.25494,0 -0.40308,0.1757 -0.14814,0.1757 -0.14814,0.4582 z m 1.96715,2.55627 q 0,-0.45131 0.28594,-0.7407 0.28939,-0.29283 0.7407,-0.29283 0.45131,0 0.7407,0.28939 0.28938,0.28938 0.28938,0.76825 v 0.24461 q 0,0.4513 -0.28938,0.74414 -0.28595,0.28938 -0.73381,0.28938 -0.44786,0 -0.7407,-0.28594 -0.29283,-0.28939 -0.29283,-0.76826 z m 0.47542,0.26872 q 0,0.27216 0.15159,0.44786 0.15158,0.17225 0.40652,0.17225 0.24805,0 0.39619,-0.16881 0.14814,-0.17225 0.14814,-0.46509 v -0.25493 q 0,-0.27217 -0.15159,-0.44442 -0.14814,-0.17226 -0.39963,-0.17226 -0.2446,0 -0.39963,0.17226 -0.15159,0.16881 -0.15159,0.4582 z m -1.73977,0.58222 -0.36173,-0.22738 2.44946,-3.92052 0.36174,0.22738 z" /></g></svg>'), linear-gradient(45deg, transparent 0% 95%, var(--danger) 96%);
        background-position: right 6px center, center right 0;
        background-size: 12px, 150px;
    }

        input[data-type="percent"].err svg {
            fill: red;
        }

input[data-type="decimal"].err {
    color: var(--danger);
    background: transparent linear-gradient(45deg, transparent 0% 95%, var(--danger) 96%);
    background-repeat: no-repeat;
    background-size: 150px;
    background-position: center right;
}

/*
    Site Map
*/

div.site-map {
    display: inline-block;
    font-size: 20px;
}

    div.site-map a {
        display: inline-block;
        font-weight: bold;
    }

    div.site-map span.sep {
        padding: 0 10px;
        display: inline-block;
        color: #999;
    }

/*
    Loader
*/
body > div.loader-placeholder {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    height: 100vh;
    width: 100vw;
    z-index: 99999;
    background-color: rgba(255, 255, 255, 0.9);
    opacity: 0;
    visibility: hidden;
    transition-property: opacity;
    /*    transition-duration: 0.3s;*/
    background-image: url(/img/icon-input-loading.gif);
    background-size: 100px;
    background-position: center;
    background-repeat: no-repeat;
}

body.loading > div.loader-placeholder {
    display: block;
    opacity: 0.5;
    visibility: visible;
}

/*
    Alert
*/
body > div.alert-placeholder {
    position: fixed;
    right: 10px;
    top: 20px;
    z-index: 9999;
}

    body > div.alert-placeholder .alert {
        padding: 6px 20px;
        filter: drop-shadow(-3px 3px 3px #aaa);
        text-align: left;
        font-weight: bold;
        animation-name: flash-background-white;
        animation-iteration-count: 1;
        animation-timing-function: ease;
        animation-duration: 0.2s;
        border-width: 4px !important;
    }

        body > div.alert-placeholder .alert.bg-success {
            border-color: var(--success);
            color: var(--success);
            background-color: var(--bg-success) !important;
        }

        body > div.alert-placeholder .alert.bg-danger {
            border-color: var(--danger);
            color: var(--danger);
            background-color: var(--bg-danger) !important;
        }

        body > div.alert-placeholder .alert.bg-warning {
            border-color: var(--warning);
            color: var(--warning);
            background-color: var(--bg-warning) !important;
        }


@keyframes flash-background-white {
    50% {
        background-color: white;
    }
}

/* page */

.page-content {
    margin: 0;
    padding: 10px;
}

@media (max-width: 767px) {
    .page-content {
        padding: 0;
    }
}

.page-title {
    font-size: 30px;
    margin-bottom: 10px;
}

    .page-title > i {
        float: right;
        padding-top: 6px;
        color: var(--primary-darker);
    }

.page-subtitle {
    font-size: 20px;
    margin-bottom: 10px;
}

.project-name,
.site-map {
    font-size: 20px;
    margin-bottom: 5px;
}

    .project-name .icon-project-rename {
        display: inline-block;
        padding-bottom: 3px;
        margin-left: 10px;
        font-size: 16px;
        line-height: 1;
        vertical-align: middle;
        color: var(--primary-darker);
    }

    .project-name .icon-project-share {
        display: inline-block;
        vertical-align: middle;
        padding-top: 4px;
        color: var(--primary-darker);
    }

    .project-name .icon-project-rename {
        content: "_";
    }

/* 
    white-panel 
*/

.white-panel {
    background-color: white;
    min-height: 20px;
    box-sizing: border-box;
    margin-bottom: 10px;
}

.row div .white-panel,
.col .white-panel {
    height: 100%;
    margin-bottom: 0;
}

.white-panel-title {
    color: var(--primary-darker);
    font-weight: 600;
    font-size: 18px;
    text-align: left;
    padding: 5px 12px;
    border-bottom: 1px solid var(--bs-body-bg);
}

.white-panel-content {
    padding: 10px;
    width: 100%;
}

/*
    footer-buttons
*/

div.footer-buttons {
    clear: both;
    margin: 0px 0px 0 0;
}

    div.footer-buttons::after {
        clear: both;
        display: block;
        height: 0;
        content: " ";
    }

@media (max-width: 600px) {
    div.footer-buttons {
        margin: 10px 10px;
    }
}

div.footer-buttons::after {
    clear: both;
}

div.footer-buttons .btn,
div.footer-buttons button,
div.footer-buttons input {
    min-width: 200px;
}

div.footer-buttons .btn-primary {
    float: right;
}

div.footer-buttons .btn-secondary {
    float: left;
}

/* overall */

div.overall {
    position: fixed;
    background-color: #00000022;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    overflow: auto;
}

    div.overall .modal-panel {
        background-color: white;
        margin-left: auto;
        margin-right: auto;
        margin-top: 20px;
        margin-bottom: 20px;
        box-shadow: 0px 4px 8px #00000088;
    }

@media (max-width: 600px) {
    div.overall .modal-panel {
        min-width: max(100vw, 420px) !important;
        max-width: max(100vw, 420px) !important;
        height: 100vh;
        margin: 0;
        margin-top: 0px;
    }
}

div.overall .modal-panel-header {
    padding: 10px 15px;
    background-color: var(--primary);
    color: white;
}

div.overall.minimized .modal-panel-header {
    cursor: pointer;
}

div.overall:not(.minimized) .modal-panel.draggable .modal-panel-header {
    cursor: grab;
}

    div.overall:not(.minimized) .modal-panel.draggable .modal-panel-header:active {
        cursor: grabbing;
    }

div.overall.minimized .modal-panel {
    position: absolute;
    top: calc(100vh - 100px) !important;
    left: calc(100vw - 300px) !important;
    width: 200px !important;
    max-width: 200px !important;
}

div.overall .modal-panel .modal-footer {
    justify-content: space-between !important;
}

div .overall.minimized .modal-panel-controls {
    display: none;
}

div.overall.minimized .modal-panel-content {
    display: none;
}

div.overall .modal-panel-title {
    font-size: 20px;
    font-weight: bold;
}

div.overall .modal-panel-controls {
    display: inline-block;
    float: right;
    cursor: default;
}

div.overall .minimizable .modal-panel-minimize {
    display: inline-block;
}

    div.overall .minimizable .modal-panel-minimize::after {
        display: inline-block;
        content: " ";
        border-bottom: 3px solid white;
        width: 18px;
        height: 21px;
        cursor: pointer;
        margin-right: 15px;
    }

div.overall .modal-panel-close {
    display: inline-block;
    cursor: pointer;
    font-size: 20px;
    padding: 0;
}

div.overall .modal-panel-content {
    clear: both;
    padding: 10px;
}

div.overall .modal-panel-footer {
    padding-top: 10px;
    text-align: right;
}

@media (max-width: 600px) {
    div.overall .modal-panel-footer {
        position: absolute;
        bottom: 15px;
        left: 0;
        right: 0;
    }
}

div.overall .modal-panel-footer button {
    margin: 15px 0px 0px 15px;
}

@media (max-width: 600px) {
    div.overall .modal-panel-footer button {
        width: 100%;
        margin: 15px 15px 0 15px;
        max-width: calc(100vw - 30px);
    }
}

.modal-subtitle {
    padding: 5px 0;
    margin: 5px 0;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    font-weight: 600;
    text-align: center;
}

/* 
    TABLE 
*/

.tb {
    width: 100%;
    margin-bottom: 10px;
}

    .tb > thead > tr:first-child {
        border-bottom: 1px solid #aaa;
    }

    .tb td[ellipsis] {
        text-overflow: ellipsis;
        overflow: hidden;
    }

    .tb > thead > tr > th,
    .tb > tbody > tr > th,
    .tb > tr > th {
        color: var(--primary);
    }

    .tb > thead > tr > td,
    .tb > thead > tr > th,
    .tb > tbody > tr > td,
    .tb > tbody > tr > th,
    .tb > tfoot > tr > td,
    .tb > tfoot > tr > th,
    .tb > tr > td,
    .tb > tr > th {
        padding: 5px 10px;
    }

    .tb > tbody > tr {
        border-bottom: 1px solid #eee;
    }

        .tb > tbody > tr[onclick] > td,
        .tb > tr[onclick] > td {
            cursor: pointer;
        }

        .tb > tbody > tr:hover > td,
        .tb > tbody > tr:hover > th,
        .tb > tr:hover > td {
            background-color: #eeeef8;
        }

    .tb .grid-actions {
        cursor: default !important;
        font-size: 17px;
    }

    .tb th.date {
        min-width: 100px;
    }

    .tb th[sortable] {
        cursor: pointer;
    }

        .tb th[sortable]:hover {
            text-decoration: underline;
        }

        .tb th[sortable]:active {
            filter: brightness(1.5);
        }

    .tb th.sorted0::after,
    .tb th.sorted1::after {
        content: " ";
        line-height: 1;
        display: inline-block;
        width: 20px;
        height: 20px;
        position: absolute;
        background-repeat: no-repeat;
    }

    .tb th.sorted0::after {
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" fill="%23AAB"><path d="m296-224-56-56 240-240 240 240-56 56-184-183-184 183Zm0-240-56-56 240-240 240 240-56 56-184-183-184 183Z"/></svg>');
    }

    .tb th.sorted1::after {
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 -960 960 960" fill="%23AAB"><path d="M480-200 240-440l56-56 184 183 184-183 56 56-240 240Zm0-240L240-680l56-56 184 183 184-183 56 56-240 240Z"/></svg>');
    }

/*
    inputs
*/

input[type="number"] {
    padding-right: 0px !important;
}

input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
textarea,
select {
    border-radius: 0 !important;
    color: #858585;
    background-color: #fff;
    border: 1px solid var(--input-border-color);
    padding: 6px 12px;
    font-size: 14px;
    font-family: inherit;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    -webkit-transition-duration: 0.1s;
    transition-duration: 0.1s;
}

input[type="color"] {
    padding: 2px !important;
}

::-webkit-color-swatch {
    border: none;
}

::-moz-color-swatch {
    border: none;
}

input[type="email"]:hover,
input[type="url"]:hover,
input[type="search"]:hover,
input[type="tel"]:hover,
input[type="color"]:hover,
input[type="text"]:hover,
input[type="password"]:hover,
input[type="datetime"]:hover,
input[type="datetime-local"]:hover,
input[type="date"]:hover,
input[type="month"]:hover,
input[type="time"]:hover,
input[type="week"]:hover,
input[type="number"]:hover,
textarea:hover,
select:hover {
    border-color: #b5b5b5;
}

input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #696969;
    border-color: var(--primary);
    background-color: #fff;
    outline: 0;
}

input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="search"]::placeholder,
input[type="tel"]::placeholder,
input[type="color"]::placeholder,
input[type="text"]::placeholder,
input[type="password"]::placeholder,
input[type="datetime"]::placeholder,
input[type="datetime-local"]::placeholder,
input[type="date"]::placeholder,
input[type="month"]::placeholder,
input[type="time"]::placeholder,
input[type="week"]::placeholder,
input[type="number"]::placeholder,
textarea::placeholder,
select::placeholder {
    color: #ccc;
}

/*
    input search
*/

input[type="search"] {
    width: 100%;
    max-width: 500px;
    fill: blue;
    background-image: url('data:image/svg+xml,<svg fill="%234A74B3" xmlns="http://www.w3.org/2000/svg" height="18" viewBox="0 -960 960 960" width="18px"><path d="M784-120 532-372q-30 24-69 38t-83 14q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l252 252-56 56ZM380-400q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z"/></svg>');
    background-position: right 5px center;
    background-repeat: no-repeat;
    padding-right: 28px;
    -webkit-mask: var(--svg);
    /* Firefox and Safari */
    mask: var(--svg);
}

/*
    custom inputs
*/

input.decimal {
    text-align: right;
}

/*
    btn
*/

.btn {
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    background-image: none !important;
    border: 5px solid #fff;
    border-radius: 0;
    box-shadow: none !important;
    -webkit-transition: background-color 0.15s, border-color 0.15s, opacity 0.15s;
    -o-transition: background-color 0.15s, border-color 0.15s, opacity 0.15s;
    transition: background-color 0.15s, border-color 0.15s, opacity 0.15s;
    vertical-align: middle;
    margin: 0;
    position: relative;
}

.btn-primary,
.btn-primary:focus {
    background-color: #4a74b3 !important;
    border-color: #4a74b3;
    min-width: 100px;
}

input.btn-primary:is(:disabled) {
    color: #eee;
}

.grid-project {
    background-color: #f4f4f8;
}

.grid-project-header {
    background-color: #f4f4f8;
    padding: 20px 20px;
}

    .grid-project-header button {
        border: none !important;
    }

.grid-project-content {
    background-color: white;
    padding: 20px 20px;
    overflow-x: auto;
}

.grid-project-footer {
    background-color: #f4f4f8;
    padding: 20px 20px;
}

/*

*/

input[disabled],
input[readonly] {
    background-color: #eee !important;
}

[disabled],
[disabled] * {
    color: #888;
    pointer-events: none;
}

/*
    col
*/

.col-right {
    text-align: right;
}

.share-cell {
    vertical-align: middle;
}

.icon-sharing-incoming {
    height: 20px;
    width: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('data:image/svg+xml,<svg width="20px" height="20px" fill="%23AAA" version="1.1" viewBox="0 -960 960 960" xmlns="http://www.w3.org/2000/svg"><path d="m264-302.4v134.4h432v-456h-168v-168h-264v292.8h-72v-292.8c0-19.8 7.05-36.75 21.15-50.85s31.05-21.15 50.85-21.15h312l192 192v504c0 19.8-7.0533 36.75-21.16 50.85s-31.067 21.15-50.88 21.15h-432.24c-19.813 0-36.72-7.05-50.72-21.15s-21-31.05-21-50.85v-134.4zm0-489.6c-264-168-264-168 0 0z"/><path fill="%234A74B3" d="m336.37-257.09-51-51 57-57h-198v-72h198l-57-57 51-51 144 144z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

.icon-sharing-outgoing {
    height: 20px;
    width: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('data:image/svg+xml,<svg width="20px" height="20px" fill="%23AAA" version="1.1" viewBox="0 -960 960 960" xmlns="http://www.w3.org/2000/svg"><path d="m768-223.24v55.242c0 19.8-7.0533 36.75-21.16 50.85s-31.067 21.15-50.88 21.15h-432.24c-19.813 0-36.72-7.05-50.72-21.15s-21-31.05-21-50.85v-624c0-19.8 7.05-36.75 21.15-50.85s31.05-21.15 50.85-21.15h312l192 192v92.8h-72v-44.8h-168v-168h-264v624h432v-55.242zm-504-568.76c-264-168-264-168 0 0z"/><path fill="%23fcb424" d="m720.37-257.09-51-51 57-57h-198v-72h198l-57-57 51-51 144 144z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

.icon-sharing-none {
    height: 20px;
    width: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('data:image/svg+xml,<svg width="20px" height="20px" fill="%23AAA" version="1.1" viewBox="0 -960 960 960" xmlns="http://www.w3.org/2000/svg"><path d="m696-624h-168v-168h-264v624h432zm72 456c0 19.8-7.0533 36.75-21.16 50.85s-31.067 21.15-50.88 21.15h-432.24c-19.813 0-36.72-7.05-50.72-21.15s-21-31.05-21-50.85v-624c0-19.8 7.05-36.75 21.15-50.85s31.05-21.15 50.85-21.15h312l192 192zm-504-624c-264-168-264-168 0 0z"/></svg>');
    background-position: center;
    background-repeat: no-repeat;
}

.icon-button {
    display: inline-block;
    cursor: pointer;
    color: var(--primary-darker);
}

i.icon-button:hover,
icon-button:hover i {
    filter: brightness(1.4) drop-shadow(0 0 1px white) drop-shadow(0 0 1px white) drop-shadow(0 0 1px white) drop-shadow(0 0 1px white);
}

.tb .icon-button {
    width: 25px;
    font-size: 17px;
}

.tb span.icon-button[disabled] i {
    color: #ddd !important;
}

.paging-link {
    color: var(--primary);
    cursor: pointer;
}

    .paging-link[disabled] {
        font-weight: bold;
    }

/*
    navbar
*/

#navbar {
    background-color: var(--primary-darker);
    color: white;
    height: 54px;
}

.navbar-submenu {
    display: inline-block;
    position: relative;
    float: right;
    height: 54px;
    padding: 17px 10px;
    cursor: pointer;
}

    .navbar-submenu,
    .navbar-submenu * {
        vertical-align: middle;
    }

        .navbar-submenu i,
        .navbar-submenu img {
            font-size: 20px;
            vertical-align: middle;
            padding-right: 5px;
        }

        .navbar-submenu .lst-navbar-submenu i {
            font-size: 15px;
            padding-right: 12px;
        }

        .navbar-submenu .fa-caret-down {
            font-size: 12px;
            padding-bottom: 2px;
            padding-left: 5px;
        }

.lst-navbar-submenu {
    background-color: var(--primary-darker);
    color: white;
    position: absolute;
    right: 0;
    top: 54px;
    z-index: 1000;
    padding: 0px 5px 5px 5px;
}

.navbar-submenu a {
    display: block;
    padding: 5px 10px;
    color: white;
    text-decoration: none;
    width: 200px;
    border-right: 4px solid var(--primary);
    margin-top: 5px;
}

    .navbar-submenu a.selected {
        font-weight: 1000;
        cursor: default;
    }

    .navbar-submenu a:hover {
        background-color: var(--primary);
        border-right: 4px solid white;
    }

#btn-toggle-sidebar {
    background-color: var(--primary-darker);
    border: none;
    color: white;
}

    #btn-toggle-sidebar .fa-solid {
        font-size: 26px;
        margin: 13px;
    }

/*
        sidebar
    */

#sidebar {
    background-color: var(--sb-background-color);
    position: absolute;
    top: 54px;
    left: 0;
    width: 300px;
    height: calc(100% - 54px);
    z-index: 999;
    display: none;
    color: white;
}

#sidebar {
    --sb-vertical-padding: 10px;
    --sb-border-left-width: 5px;
    --sb-background-color: #172b4d;
}

    #sidebar div.menu-group,
    #sidebar div.menu-item {
        cursor: pointer;
        display: block;
        font-size: 13px;
        font-weight: 400;
        border-left: var(--sb-border-left-width) solid transparent;
    }

    #sidebar div.menu-group {
        padding: var(--sb-vertical-padding) 15px var(--sb-vertical-padding) 15px;
        background-position: center right 15px;
        background-repeat: no-repeat;
        background-size: 16px;
        font-weight: 700;
    }

    #sidebar div.menu-group {
        background-image: url('data:image/svg+xml,<svg width="20" viewBox="0 -960 480 20" fill="%23FFF" height="20" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><path d="m 424,-1098 56,56 -240,240 -240,-240 56,-56 184,183 z" /></svg>');
    }

        #sidebar div.menu-group.expanded {
            background-image: url('data:image/svg+xml,<svg width="20" viewBox="0 -960 480 20" fill="%23FFF" height="20" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><path d="m 56,-802 -56,-56 240,-240 240,240 -56,56 -184,-183 z" /></svg>');
        }

    #sidebar div.menu-item {
        padding: 0px 0px 0px 20px;
    }

        #sidebar div.menu-group:hover,
        #sidebar div.menu-item:hover {
            border-left: var(--sb-border-left-width) solid white;
        }

    #sidebar div.menu-group + div.menu-items {
        display: none;
    }

    #sidebar div.menu-group.expanded + div.menu-items {
        display: block;
    }

    #sidebar a {
        display: block;
        color: white;
        text-decoration: none;
        padding: var(--sb-vertical-padding) 15px;
    }

/*
    .tooltip
*/

div.tooltip {
    --bs-tooltip-zindex: 999;
    --bs-tooltip-max-width: 400px;
    --bs-tooltip-padding-x: 10px;
    --bs-tooltip-padding-y: 5px;
    --bs-tooltip-margin: 0;
    --bs-tooltip-color: #111;
    --bs-tooltip-bg: #f0f4ff;
    --bs-tooltip-border-radius: 3px;
    --bs-tooltip-opacity: 0.99;
    --bs-tooltip-arrow-width: 0px;
    --bs-tooltip-arrow-height: 0px;
}

    div.tooltip.warning-tooltip {
        --bs-tooltip-bg: var(--bg-danger);
        --bs-tooltip-color: var(--danger);
    }

    div.tooltip .tooltip-inner {
        text-align: left !important;
        filter: drop-shadow(-3px 3px 3px rgba(0, 0, 0, 0.5));
        font-size: 12px;
        border: 1px solid #7a91b3;
    }

    div.tooltip.warning-tooltip .tooltip-inner {
        border: 1px solid var(--danger);
    }


/*
    Analysis form
*/
.analysis-form-right {
    width: 330px;
}

/*
    Form item inline
*/

.form-item-inline {
    display: table-row;
}

    .form-item-inline .form-item-title {
        display: table-cell;
        vertical-align: top;
        padding-top: 6px;
        padding-bottom: 15px;
    }

    .form-item-inline .form-item-control {
        display: table-cell;
        width: 150px;
        padding: 0 0 0 10px;
    }

/*
    Form Item
*/

.form-item {
    padding-bottom: 10px;
}

.form-item-title {
    font-weight: bold;
    padding-bottom: 3px;
}

    .form-item-title.required::after {
        content: "*";
        display: inline;
        color: var(--danger);
    }

.form-item-control {
    padding-left: 20px;
}

    .form-item-control select {
        height: 32px;
        vertical-align: bottom;
        width: 100%;
    }

    .form-item-control input {
        height: 32px;
        vertical-align: bottom;
        width: 100%;
    }

.form-item-control-overlay-plot-items {
    border: 1px solid #d5d5d5;
    color: #858585;
    position: relative;
    padding: 0px 5px;
    min-height: 60px;
    max-height: 120px;
    overflow-y: auto;
    overflow-x: hidden;
}

    .form-item-control-overlay-plot-items label {
        white-space: nowrap;
        position: relative;
        overflow: hidden;
        text-overflow: ellipsis;
        width: 280px;
    }

        .form-item-control-overlay-plot-items label .analysis-info-icon {
            display: none;
        }

        .form-item-control-overlay-plot-items label:hover .analysis-info-icon {
            display: block;
            position: absolute;
            right: 0;
            top: 3px;
            color: var(--primary);
            width: 28px;
            height: 20px;
            font-size: 12px;
            padding-top: 4px;
            padding-bottom: 4px;
            padding-left: 10px;
            background-color: rgba(255, 255, 255, 0.8);
        }

.form-item-control-popup {
    border: 1px solid #d5d5d5;
    padding: 5px 9px;
    cursor: pointer;
    color: #858585;
    position: relative;
    height: 32px;
    white-space: nowrap;
}

    .form-item-control-popup::after {
        display: inline-block;
        position: absolute;
        content: " ";
        right: 0;
        top: 0;
        height: 100%;
        width: 30px;
        background-size: 10px;
        background-position: center;
        background-image: url('data:image/svg+xml,<svg fill="%23858585" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M438.6 150.6c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.7 96 32 96C14.3 96 0 110.3 0 128s14.3 32 32 32l306.7 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96zm-333.3 352c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 416 416 416c17.7 0 32-14.3 32-32s-14.3-32-32-32l-306.7 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96z"/></svg>');
        background-repeat: no-repeat;
        background-color: white;
        background-size: 12px;
    }

#divOverlayPlotItems label,
#divOverlayPlotItems label * {
    vertical-align: middle;
    line-height: 1;
}

#divOverlayPlotItems label {
    padding: 5px;
}

    #divOverlayPlotItems label i {
        padding-top: 3px;
        vertical-align: middle;
    }

    #divOverlayPlotItems label:hover,
    #divOverlayPlotItems label:hover i {
        background-color: #e8f1ff;
    }

    #divOverlayPlotItems label.notCalculatedOverlayPlotItem:hover,
    #divOverlayPlotItems label.notCalculatedOverlayPlotItem:hover i {
        background-color: var(--bg-danger) !important;
        color: var(--danger);
    }

.notCalculatedOverlayPlotItem {
    color: var(--danger);
    cursor: default !important;
}

    .notCalculatedOverlayPlotItem input {
        cursor: default !important;
    }

div.tooltip.overlay-plot-item-tooltip span {
    display: inline-block;
    width: 100px;
}

/* 
    Drop down
*/
.fa-chevron-down.animated {
    transition: transform linear 0.4s;
    transform-origin: center;
}

.invert-chevron .fa-chevron-down {
    transform: rotate(180deg);
}

.fa-fake {
    display: inline-block;
}

i.info {
    font-size: 0.9em;
    opacity: 0.9;
}

/*
    Validation Error
*/
span.error {
    display: block;
    color: var(--danger);
}

/*
    Project Tools
*/

.analysis-tools-icon {
    color: var(--primary-darker);
    font-size: 20px;
    padding: 10px;
    cursor: pointer;
}

    .analysis-tools-icon:hover {
        background-color: #eee;
    }

.analysis-tools-items {
    position: absolute;
    right: 0;
    width: 200px;
    background-color: rgba(255, 255, 255, 1);
    box-shadow: -1px 1px 3px #ccc;
    z-index: 3;
}

    .analysis-tools-items ul {
        list-style-type: none;
        margin: 0;
    }

    .analysis-tools-items li {
        padding: 5px;
    }

        .analysis-tools-items li:hover {
            background-color: #eee;
            cursor: pointer;
        }

    .analysis-tools-items i {
        width: 20px;
        text-align: center;
        font-weight: 900;
        color: var(--primary-darker);
    }

.analysis-panels.expanded .right-panel-expand-button i {
    transform: rotate(180deg);
}

.analysis-panels:not(.expanded) .right-panel-expand-button i {
}
/*
    loading
*/
input.loading {
    transition: none;
    background-image: url(/img/icon-input-loading.gif);
    background-size: 16px;
    background-repeat: no-repeat;
    background-position: right 6px center;
}

/*
    Project Share
*/

#divSharingList i.fa-solid,
#divProjectShareUserSearch i.fa-solid {
    color: var(--primary);
    filter: opacity(0.8);
    font-size: 16px;
}

td.project-share-permissions {
    white-space: nowrap;
}

span.project-share-permission {
    display: inline-block;
    background-color: #eeeef2;
    font-size: 12px;
    text-align: center;
    padding: 1px 4px;
    color: #888;
    cursor: pointer;
    border: 1px solid #ccc;
    width: 50px;
}

span.project-share-permission-View {
    border-radius: 8px 0 0 8px;
    border-right: none;
    padding-left: 6px;
}

span.project-share-permission-Edit {
    border-radius: 0 8px 8px 0;
    padding-right: 6px;
}

span.project-share-permission.share-permission-selected {
    background-color: var(--primary);
    color: white;
    cursor: default;
    opacity: 1;
}

/*
    Vertical tabs
*/

div.vertical-tabs {
}

div.vertical-tab {
    display: block;
    width: 40px;
    text-align: center;
    padding: 0;
    margin-bottom: 5px;
    color: #888;
    cursor: pointer;
    border-bottom: 4px solid transparent;
    margin-bottom: 10px;
}

    div.vertical-tab:not(.selected):hover {
        color: #555;
    }

    div .vertical-tab:not(.selected) {
    }

    div .vertical-tab.selected {
        border-bottom: 4px solid var(--primary);
    }

    div.vertical-tab img {
        width: 40px;
        height: 40px;
    }

    div.vertical-tab i {
        font-size: 26px;
    }

    div.vertical-tab span {
        display: none;
    }

    div.vertical-tab:hover span {
        display: none;
    }

/*
    Tools
*/

.analysis-right-panel-tools {
    width: 40px;
}

    .analysis-right-panel-tools button {
        width: 40px;
        height: 40px;
        border: none;
        background-color: #fafafa;
        color: var(--primary);
        font-size: 20px;
        position: relative;
        margin-bottom: 10px;
        padding: 0;
    }

        .analysis-right-panel-tools button.white img {
            aspect-ratio: 1/1;
            padding: 0;
            margin: 0;
            width: 40px;
            height: 40px;
        }

        .analysis-right-panel-tools button.white,
        .analysis-right-panel-tools button.white i,
        .analysis-right-panel-tools button.white span {
            background-color: #fafafa;
            color: var(--primary);
        }

        .analysis-right-panel-tools button i {
            font-size: 20px;
        }

        .analysis-right-panel-tools button span {
            position: absolute;
            display: none;
            top: 0;
            font-size: 12px;
            color: var(--primary);
            background-color: #fafafa;
            overflow: hidden;
            padding: 10px;
            text-align: left;
            font-weight: bold;
            filter: drop-shadow(0px 0px 4px #0005);
        }

        .analysis-right-panel-tools button:hover span {
            display: inline-block;
            white-space: nowrap;
            width: auto;
            height: 40px;
            right: 40px;
            z-index: 99;
        }
/*
    Project Panels
*/
.analysis-panels {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
}

.analysis-left-panel {
    display: flex;
    flex-direction: row;
    width: 60px;
    gap: 10px;
    flex-grow: 0;
    min-height: calc(100vh - 160px);
}

.analysis-left-panel-data {
    display: flex;
    flex-direction: row;
    gap: 10px;
    flex-grow: 1;
    height: 100%;
}

/*.analysis-left-panel-separator {
    display:block;
    border-top: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
    text-align:center;
    color:#aaa;
    margin-bottom:12px;
    position:relative;
}
*/

.analysis-left-panel-separator {
    display: block;
    border-top: 2px solid #aaa;
    border-bottom: 2px solid #aaa;
    background-color: #fafafa;
    text-align: center;
    color: #777;
    font-weight: bold;
    margin-bottom: 12px;
    position: relative;
    cursor: default;
}

.analysis-content-panel {
    display: flex;
    flex-direction: row;
    width: 500px;
    gap: 10px;
    flex-grow: 1;
    min-height: calc(100vh - 160px);
}

.analysis-content-panel-data {
    display: flex;
    flex-direction: row;
    gap: 10px;
    flex-grow: 1;
    height: 100%;
}

.analysis-left-panel-data {
    display: flex;
    flex-direction: row;
    gap: 10px;
    flex-grow: 1;
    height: 100%;
}

.tab-grid {
    width: 100%;
    position: relative;
}

.tabLda {
    width: 100%;
}

.analysis-panels.expanded .analysis-right-panel {
    display: flex;
    flex-direction: row;
    width: 350px;
    gap: 10px;
}

.analysis-panels:not(.expanded) .analysis-right-panel {
    display: none;
    width: 0;
}

.analysis-right-panel-content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
}

#divAnalysisTabs,
#divItemTabs {
    background-color: white;
    margin-bottom: 10px;
    position: relative;
    user-select: none;
}

.analysis-tabs-scroll,
.item-tabs-scroll {
    margin: 5px 0px;
    height: 28px;
    overflow-x: hidden;
    overflow-y: hidden;
    display: inline-block;
    width: calc(100vw - 135px);
    vertical-align: middle;
    white-space: nowrap;
    padding-right: 3px;
}

.analysis-tab:not(.selected),
.system-item-tab:not(.selected) {
    display: inline-block;
    color: #aaa;
    cursor: pointer;
}

    .analysis-tab:not(.selected) i,
    .system-item-tab:not(.selected) i {
        display: none;
    }

.analysis-tab:hover,
.system-item-tab:hover {
    color: #777;
}

.analysis-tab i,
.system-item-tab i{
    vertical-align: bottom;
    padding: 4px;
    border-radius: 5px;
    cursor: pointer;
    margin-bottom: 5px;
}

.analysis-tab i,
.system-item-tab i {
    font-size: 11px;
    color: var(--primary-darker);
    padding: 5px;
}

.analysis-tab .analysis-delete,
.system-item-tab .item-delete {
    color: var(--danger);
    font-size: 15px;
}

.analysis-tab i:hover,
.system-item-tab i:hover {
    background-color: #eee;
}

.analysis-tab.selected,
.system-item-tab.selected {
    display: inline-block;
    color: #000;
    cursor: default;
}

    .analysis-tab.selected span,
    .system-item-tab.selected span {
        border-bottom: 3px solid var(--primary);
        margin-right: 0;
    }

.analysis-tab:not(.selected):hover span,
.system-item-tab:not(.selected):hover span {
    border-bottom: 3px solid #ddd;
}

.analysis-tab span,
.system-item-tab span {
    display: inline-block;
    margin: 0px 5px;
    padding: 0px 5px;
}

.analysis-tab::after,
.system-item-tab::after {
    content: "";
    vertical-align: middle;
    border-right: 1px solid #ddd;
    height: 30px;
    display: inline-block;
}

#divAnalysisTabs .analysis-add,
#divItemTabs .item-add {
    color: var(--green);
    font-size: 20px;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}

    #divAnalysisTabs .analysis-add i,
    #divItemTabs .item-add i {
        padding: 0 6px;
        margin: 0 6px;
        display: inline-block;
    }

    #divAnalysisTabs .analysis-add:hover i,
    #divItemTabs .item-add:hover i {
        border-bottom: 3px solid #ddd;
    }

    #divAnalysisTabs .analysis-add::after,
    #divItemTabs .item-add::after {
        content: "";
        vertical-align: middle;
        border-right: 1px solid #ddd;
        height: 30px;
        display: inline-block;
    }

#divAnalysisTabs .analysis-left,
#divAnalysisTabs .analysis-right,
#divItemTabs .item-left,
#divItemTabs .item-right {
    color: var(--primary);
    font-size: 20px;
    padding: 5px;
    display: inline-block;
    cursor: pointer;
    vertical-align: middle;
}

/*
    Analysis Results
*/

div.analysis-results {
    border: 1px solid #ddd;
    margin-top: 40px;
}

div.analysis-results-title {
    border-bottom: 1px solid #ddd;
    text-align: center;
    font-weight: bold;
    padding: 5px;
    color: var(--primary-darker);
}

div.analysis-results table {
    width: 100%;
}

    div.analysis-results table tr {
        border-bottom: 1px solid #eee;
    }

    div.analysis-results table th,
    div.analysis-results table td {
        padding: 5px;
    }

.analysis-results-content {
    padding: 10px;
}

.analysis-results-content-lda {
    padding: 10px;
}

div.analysis-results table tr th {
    text-align: left;
}

    div.analysis-results table tr th::after {
        display: inline;
        content: ":";
    }

div.analysis-results table tr td {
    text-align: right;
}

/*
    JExcel
*/
#my {
    width: 100%;
    height: 100%;
}

    #my table.jexcel {
        width: 100%;
        height: 100%;
    }

        #my table.jexcel tbody {
            max-height: 100% !important;
            height: 100% !important;
        }

        #my table.jexcel thead tr td {
            border-bottom: 1px solid #ccc !important;
            white-space: normal;
        }

        #my table.jexcel thead tr::after {
            display: table-cell;
            content: " ";
            width: 10px !important;
            background-color: #f3f3f3;
            border-top: 1px solid #ccc;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

#ldaGrid {
    width: 100%;
    height: 100%;
}

    #ldaGrid table.jexcel {
        width: 100%;
        height: 100%;
    }

        #ldaGrid table.jexcel tbody {
            max-height: 100% !important;
            height: 100% !important;
        }

        #ldaGrid table.jexcel thead tr td {
            border-bottom: 1px solid #ccc !important;
            white-space: normal;
        }

        #ldaGrid table.jexcel thead tr::after {
            display: table-cell;
            content: " ";
            width: 10px !important;
            background-color: #f3f3f3;
            border-top: 1px solid #ccc;
            border-right: 1px solid #ccc;
            border-bottom: 1px solid #ccc;
        }

#jexcel_contextmenu hr {
    margin: 3px;
    padding: 0;
    color: blue;
    border-color: #888;
}

.jexcel td.err {
    background: transparent linear-gradient(45deg, transparent 0% 95%, var(--danger) 96%);
    background-repeat: no-repeat;
    color: var(--danger);
    background-size: 150px;
    background-position: center right;
}

/*
    Options
*/
/*
    Best-Fit
*/
.best-fit-options {
}

    .best-fit-options label {
        font-size: 13px;
        margin: 0;
        vertical-align: middle;
        padding: 5px 10px;
        cursor: pointer;
    }

        .best-fit-options label input[type="checkbox"] {
            margin: 0;
            padding: 0;
        }

#tbBestFitResults tbody tr:first-child {
    background-color: #eeffee;
    color: #2d872d;
    font-weight: 500;
}

/*
    Reliability Calculator
*/

.calculator-modal-content {
}

.calculator-functions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 5px;
    background-color: white;
    width: 100%;
    padding: 10px;
}

label.calculator-function {
    border: 3px solid #ccc;
    text-align: center;
    padding: 3px;
    font-weight: bold;
    background-color: white;
    color: #333;
    cursor: pointer;
}

    label.calculator-function.double-width {
        grid-column: 1 / span 2;
    }

.calculator-function input {
    display: none;
}

.calculator-function:has(input:checked) {
    border: 3px solid var(--primary);
    color: var(--primary-darker);
    background: white linear-gradient(90deg, var(--primary) 0%, white 5% 95%, var(--primary) 100%);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
}

.calculator-parameters {
    background-color: white;
    display: table;
}

    .calculator-parameters .form-item {
        display: table-row;
        width: 100%;
    }

        .calculator-parameters .form-item .form-item-title {
            text-align: right;
        }

        .calculator-parameters .form-item .form-item-title,
        .calculator-parameters .form-item .form-item-control {
            display: table-cell;
            padding-bottom: 10px;
            vertical-align: middle;
        }

#btnCalculatorSolve {
    width: 120px;
    position: absolute;
    bottom: 10px;
    right: 10px;
}

.calculator-history {
    min-height: 200px;
    position: relative;
}

    .calculator-history:hover .calculator-history-buttons {
        display: inline-block;
    }

.calculator-history-buttons {
    position: absolute;
    display: none;
    bottom: 12px;
    right: 30px;
    filter: drop-shadow(-1px 1px 2px rgba(16, 16, 16, 0.5));
}

.calculator-history input[type="button"] {
    padding: 3px 10px;
    border: 0px solid var(--primary);
    line-height: 1;
    background-color: #fff;
}

    .calculator-history input[type="button"]:hover {
        text-decoration: underline;
    }

    .calculator-history input[type="button"]:active {
        background-color: #eee;
        filter: none;
    }

.calculator-history .btnHistoryCopyText {
    color: var(--primary);
}

.calculator-history .btnHistoryCopyAsTable {
    color: var(--primary);
}

.calculator-history .btnHistoryClear {
    color: red;
}

/* Plot scale */

.tbPlotScale {
}

    .tbPlotScale th,
    .tbPlotScale td {
        text-align: center;
    }

    .tbPlotScale input[type="text"] {
        display: block;
        height: 27px;
    }

    .tbPlotScale tr > .colMin input,
    .tbPlotScale tr > .colMax input {
    }

    .tbPlotScale:has(input[type="checkbox"]:not(:checked)) tr > .colMin input,
    .tbPlotScale:has(input[type="checkbox"]:not(:checked)) tr > .colMax input {
    }

    .tbPlotScale tr:has(input[type="checkbox"]:checked) input[type="text"] {
        background-color: #eee;
        color: #888;
        pointer-events: none;
    }

    .tbPlotScale th.colXY {
        padding-left: 20px;
    }

    .tbPlotScale td label {
        padding: 0 5px;
        color: #888;
    }

        .tbPlotScale td label:has(input:checked) {
            font-weight: bold;
            color: var(--primary);
        }

            .tbPlotScale td label:has(input:checked):has(input:disabled) {
                cursor: default;
                color: var(--bs-body-color);
            }

        .tbPlotScale td label.checkbox {
            display: block;
        }

            .tbPlotScale td label.checkbox input {
                
            }

/*
    Plots
*/
.tab-lda-plot .plot-container,
.tab-plot .plot-container,
.tab-overlay-plot .plot-container {
    min-height: calc(100vh - 180px);
    max-height: calc(100vh - 180px);
}

.plot-max-size-area {
    overflow: hidden;
    display: inline-block;
    max-width: 100%;
    aspect-ratio: 4/3;
}

.tab-plot .plot,
.tab-overlay-plot .plot {
    text-align: center;
    min-height: calc(100vh - 180px);
    margin: 0 auto;
}

.plot-max-size-area {
    max-height: calc(100vh - 180px);
}

#plot-context-menu {
    position: absolute;
    display: none;
    z-index: 1000;
    width: 200px;
}

    #plot-context-menu table {
        width: 100%;
        border: 3px solid var(--primary);
        background-color: #fff;
    }

        #plot-context-menu table tr {
            background-color: #f0f4ff;
            border-bottom: 2px solid transparent;
        }

            #plot-context-menu table tr:hover {
                background-color: white;
            }

        #plot-context-menu table td {
            cursor: default;
            text-align: center;
        }

    #plot-context-menu i {
        padding: 5px;
        color: var(--primary-darker);
        cursor: pointer;
    }

    #plot-context-menu .btn-copy {
        display: none;
        position: absolute;
        right: 0;
        bottom: 30px;
        width: 110px;
    }

.plot-caption {
    text-align: left;
    padding: 10px;
}

    .plot-caption div {
        min-height: 1em;
    }

/*
    Plot Settings
*/
.plot-settings-style-group {
    margin-bottom: 4px;
    border-radius: 5px;
    border: 1px solid var(--primary);
    background-color: white;
}

.plot-settings-style-group-title {
    background-color: var(--primary);
    padding: 5px 10px;
    font-weight: 1000;
    color: white;
    cursor: pointer;
}

.plot-settings-style-group.expanded .plot-settings-style-group-title {
    cursor: default;
}

.plot-settings-style-group-content {
    display: none;
}

.plot-settings-style-group.expanded .plot-settings-style-group-content {
    display: block;
    border-top: 1px solid var(--primary);
    padding: 5px 10px;
    background-color: white;
    border-radius: 0 0 5px 5px;
}

.plot-settings-content-scroll {
    overflow-y: auto;
    max-height: calc(100vh - 258px);
    min-height: 450px;
}

.plot-settings-style-group-content .form-item {
    padding-left: 20px;
}

.plot-settings-style-group-content .form-item-title {
    font-weight: 400;
}

.plot-settings-style-group-content .form-item-control {
    padding-bottom: 10px;
}

    .plot-settings-style-group-content .form-item-control input[type="color"] {
        width: 60px;
    }

    .plot-settings-style-group-content .form-item-control input[type="number"] {
        width: 70px;
    }

.plot-settings-separator {
    text-align: center;
    position: relative;
    height: 20px;
    padding: 14px 0;
    margin-top: 0px;
    color: var(--primary);
}

    .plot-settings-separator::before {
        content: " ";
        display: block;
        position: absolute;
        top: 9px;
        width: 100%;
        height: 1px;
        border-top: 1px solid var(--primary);
        z-index: 1;
    }

    .plot-settings-separator::after {
        position: absolute;
        top: 0;
        left: 0px;
        content: attr(data-title);
        display: inline-block;
        background-color: #fff;
        z-index: 2;
        padding-right: 10px;
        font-weight: bold;
    }

.plot-settings-tab {
    display: block;
    padding: 5px 10px;
    cursor: pointer;
    color: #aaa;
    margin-bottom: 3px;
}

    .plot-settings-tab.selected {
        border-bottom-color: var(--primary);
        cursor: default;
        background-color: #fff;
        color: inherit;
    }

.plot-settings-style-group-content,
.plot-settings-tabs,
.plot-settings-tab-contents {
    vertical-align: top;
}

.plot-settings-tab-content {
    display: none;
}

    .plot-settings-tab-content.selected {
        display: block;
    }

.plot-settings-tabs {
    width: 100px;
    display: inline-block;
}

.plot-settings-contents {
    width: calc(100% - 115px);
    display: inline-block;
    padding-left: 10px;
    margin-left: 3px;
    border-left: 1px solid #eee;
}

.plot-container-settings-button {
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
    font-size: 24px;
    padding: 5px;
    line-height: 1;
    cursor: pointer;
    z-index: 1;
    color: #aaa;
}

    .plot-container-settings-button:hover {
        color: var(--primary);
    }

/*
    Report
*/

.report-layout-form-item label {
    display: inline-block;
    border: 2px solid #eee;
    padding: 10px;
    width: 70px;
    text-align: center;
    margin-right: 10px;
}

    .report-layout-form-item label:not(:has(input:checked)) img {
        filter: grayscale() brightness(1.8);
    }

    .report-layout-form-item label:has(input:checked) {
        border-color: var(--primary);
    }

    .report-layout-form-item label input[type="radio"] {
        display: none !important;
    }

.report-layout-form-item img {
    height: 50px;
}

#tab-report-grid.grid_1c {
    grid-template-columns: auto;
}

#tab-report-grid.grid_2c_1h #report-analysis-da-data {
    grid-column: span 2;
}

.grid_2c_1h #report-analysis-data {
    width: 100%;
}
/*
    Report
*/
.report-data th,
.report-data td {
}

.report-data th {
    padding: 5px 5px 5px 5px;
    text-align: left;
}

.report-data td {
    padding: 5px 20px 5px 5px;
    text-align: left;
    white-space: nowrap;
}

.report-data th::after {
    content: ":";
    display: inline;
}

td.report-data-title {
    text-align: center;
    /*background-color: #fafafa;*/
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    color: var(--primary-darker);
    font-weight: bold;
    padding: 10px;
}

.report-data2 th {
    padding: 3px 10px;
    text-align: center;
}

.report-data2 td {
    padding: 3px 10px;
    text-align: center;
}

.grid_1c .col-6 {
    width: 100%;
}

.grid_2c_1h .col#report-analysis-data {
    width: 100%;
}
/*
    Report Box
*/
div.report-box {
    border: 1px solid #ddd;
    background-color: white;
    height: 100%;
    max-width: 100%;
}

div.report-box-title {
    border-bottom: 1px solid #ddd;
    text-align: center;
    font-weight: bold;
    padding: 5px;
    color: var(--primary-darker);
}

div.report-box-content {
    padding: 10px;
    text-align: left;
}

    div.report-box-content table.tb th {
        color: var(--primary-darker);
    }

    div.report-box-content.plot-container {
        border: none !important;
    }

div.report-box svg {
    width: auto;
    max-width: 100%;
    height: auto;
}

.report-box .plot {
    overflow: hidden;
    max-width: 100%;
}

.report-box .plot-max-size-area,
.report-box .plot-area,
.report-box .plot-container {
    aspect-ratio: 4/3;
}

div.report-box .plot .plot-caption div {
    display: none;
}

    div.report-box .plot .plot-caption div:last-child {
        display: block;
    }

div.report-box table {
}

.report-data-col {
    display: none !important;
}

.grid_1c .report-data-col,
.grid_2c_1h .report-data-col {
    display: inline-block;
    width: 100%;
}

.grid_1c .col-6:has(#report-analysis-data),
.grid_2c_1h .col-6:has(#report-analysis-data) {
    width: 100% !important;
    min-width: 100% !important;
}

.report-data-col2 {
    display: inline-block;
    min-width: 49%;
    float: left;
}

    .report-data-col2 table {
        margin-bottom: 10px;
    }

        .report-data-col2 table th {
            content: ":";
            padding-right: 10px;
            padding-left: 30px;
            text-align: right;
        }

            .report-data-col2 table th::after {
                content: ":";
            }

.grid_1c .report-data-col2,
.grid_2c_1h .report-data-col2 {
}

div.report-data-title {
    padding: 0px 10px 4px 10px;
    font-weight: 900;
    color: var(--primary-darker);
    text-align: left;
}

.report-data-name {
    display: inline-block;
    font-weight: bold;
    padding-left: 30px;
}

    .report-data-name::after {
        content: ":";
        display: inline;
    }

.report-data-value {
    font-weight: normal;
    display: inline-block;
}

.report-box,
.report-box * {
    break-inside: avoid-page;
}

/*
    print mode
*/

@media print {
    body {
        background-color: white !important;
    }

    :not(.printable *) {
        visibility: hidden;
        margin: 0;
        padding: 0;
        height: 0;
    }

    .printable {
        width: 100% !important;
        position: absolute;
        margin: 0;
        top: 0;
        left: 0;
    }

        .printable,
        .printable * {
            visibility: visible !important;
        }

    .plot,
    .plot div,
    .plot svg {
        transform: none !important;
        max-width: 100%;
    }
}

/*
    Grid-tools
*/

.grid-tools {
    display: inline-block;
    position: absolute;
    left: 0px;
    top: 0;
    text-align: center;
    width: 58px;
}

.grid-tools-icon {
    color: #555;
    width: 58px;
    text-align: center;
    padding: 3px;
    font-size: 17px;
}

.grid-tools:hover .grid-tools-icon {
    color: var(--primary-darker);
}

.grid-tools:hover > .grid-tools-list {
    display: block;
    text-align: left;
}

.grid-tools-list {
    position: absolute;
    top: 25px;
    display: none;
    width: 250px;
    margin-left: 10px;
    background-color: #eee;
    padding: 2px;
    filter: drop-shadow(0px 0px 4px #0005);
}

.grid-tools-list-item {
    position: relative;
    width: 100%;
    display: block;
    padding: 2px;
    cursor: pointer;
    background-color: #fff;
    color: var(--primary-darker);
    margin-bottom: 2px;
}

    .grid-tools-list-item:hover {
        background-color: #e8f0fb
    }

    .grid-tools-list-item:last-child {
        margin-bottom: 0;
    }

    .grid-tools-list-item i {
        margin-right: 10px;
    }

.grid-tools-list-item {
    padding: 3px 8px
}

    .grid-tools-list-item:hover > .grid-tools-list {
        display: block;
        top: 2px;
        left: calc(100% - 20px);
    }

    .grid-tools-list-item:has(.grid-tools-list)::after {
        content: " ";
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"> <path fill="%232F5597" d="M471.1 297.4C483.6 309.9 483.6 330.2 471.1 342.7L279.1 534.7C266.6 547.2 246.3 547.2 233.8 534.7C221.3 522.2 221.3 501.9 233.8 489.4L403.2 320L233.9 150.6C221.4 138.1 221.4 117.8 233.9 105.3C246.4 92.8 266.7 92.8 279.2 105.3L471.2 297.3z"/></svg>');
        background-size: 13px;
        margin-top: 3px;
        width: 10px;
        height: 16px;
        display: inline-block;
        background-repeat: no-repeat;
        float: right;
    }
