/* 0. LOGIN */
/* 1. TYPOGRAPHY */
/* 2. ICONS */
/* 3. FORM AND BUTTONS */
/* 4. TABLE */
/* 5. SIDEBAR */
/* 6. HEADER & FOOTER */
/* 7. SUBMENU */
/* 8. MODAL */
/* 9. MEDIA QUERIES */
/* 10. CUSTOM STYLES */

@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap");

:root {
    --color-text-primary: #160052;
    --color-text-white: #ffffff;
    --color-text-black: #000000;
    --color-text-blue: #26a1fb;
    --color-text-pale-blue: #d3e9f5;
    --color-text-light-blue: #40e4ff;
    --color-text-dimmed: #655d7a;
    --color-text-purple: #ece6fa;

    --color-background-primary: #160052;
    --color-background-secondary: #ebf2f5;
    --color-background-white: #ffffff;
    --color-background-black: #000000;
    --color-background-blue: #26a1fb;
    --color-background-pale-blue: #d3e9f5;
    --color-background-light-blue: #40e4ff;
    --color-background-dimmed: #655d7a;

    --color-utility-red: #bf1332;
    --color-utility-green: #25b87d;
    --color-utility-yellow: #d6b71c;
    --color-utility-border: #d8e4eb;

    --color-border-primary: #160052;

    --fontsize8xl: 5rem;
    --fontsize6xl: 4rem;
    --fontsize5xl: 3.5rem;
    --fontsize4xl: 3rem;
    --fontsize3xl: 2.5rem;
    --fontsize2xl: 2rem;
    --fontsizexl: 1.5rem;
    --fontsizelg: 1.25rem;
    --fontsizemd: 1.125rem;
    --fontsizesm: 1rem;
    --fontsizexs: 0.875rem;

    --fontline-height9xl: 88px;
    --fontline-height7xl: 72px;
    --fontline-height6xl: 60px;
    --fontline-height5xl: 56px;
    --fontline-height4xl: 48px;
    --fontline-height3xl: 40px;
    --fontline-height2xl: 36px;
    --fontline-heightxl: 32px;
    --fontline-heightlg: 28px;
    --fontline-heightmd: 24px;

    --fontletter-spacingminus-md: -1px;
    --fontfamilybody: "Manrope";
    --fontfamilyheading: "Manrope";

    font-size: 16px;
}

body {
    font-family: var(--fontfamilybody) !important;
    background-color: var(--color-background-secondary) !important;
    overflow-x: hidden;
}

body.body-public {
    min-height: 100vh;
    background-color: var(--color-background-pale-blue) !important;
}

body.body-addfirstcompany {
    min-height: 100vh;
    background: linear-gradient(
        to right,
        var(--color-background-primary) 33%,
        var(--color-background-light-blue)
    );
}

body.disable-scroll {
    max-height: 100vh;
    overflow-y: hidden;
}

.color-text-primary {
    color: var(--color-text-primary) !important;
}

.color-text-white {
    color: var(--color-text-white) !important;
}

.color-text-black {
    color: var(--color-text-black) !important;
}

.color-text-blue {
    color: var(--color-text-blue) !important;
}

.color-text-light-blue {
    color: var(--color-text-light-blue) !important;
}

.color-text-pale-blue {
    color: var(--color-text-pale-blue) !important;
}

.color-text-dimmed {
    color: var(--color-text-dimmed) !important;
}

.color-text-red {
    color: var(--color-utility-red) !important;
}

.color-text-green {
    color: var(--color-utility-green) !important;
}

.color-text-yellow {
    color: var(--color-utility-yellow) !important;
}

.color-bg-secondary {
    background-color: var(--color-background-secondary) !important;
}

/* -------------------------------------------------------- */
/* 0. LOGIN */

.section-signin {
    min-height: 100vh;
    display: flex;
    align-items: center;
    background: linear-gradient(
        to right,
        var(--color-background-primary) 33%,
        var(--color-background-light-blue)
    );
}

.signin-hr {
    border: 1px solid var(--color-utility-border);
    margin: 20px 0px;
}

.register-link {
    font-size: 1rem;
    font-weight: 700;
    line-height: 24px;
    text-decoration: none;
    color: var(--color-text-primary);
    display: flex;
    align-items: center;
}

.social-media-button-wrapper {
    width: 100%;
    max-width: 400px;
    flex-grow: 1;
}

.login-links {
    display: flex;
}

.login-links a:not(:last-child) {
    margin-right: 10px;
}

.custom-login-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 14px 48px 14px 20px;
    border: 2px solid var(--color-border-primary);
    border-radius: 3.2px;
    font-weight: 700;
    font-size: 1.125rem !important;
    line-height: 24px;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
}

.custom-login-button:hover {
    background-color: var(--color-background-white) !important;
    color: var(--color-text-primary) !important;
    border-color: var(--color-background-white) !important;
    transition: all 0.3s ease !important;
}

.custom-login-button:has(.custom-icon):hover .custom-icon.lock {
    background-image: url("../icons/lock-open.svg");
}

.custom-login-button:has(.custom-icon):hover .custom-icon.pen {
    left: calc(100% - (20px + 21px));
    filter: none;
}

/* END LOGIN */
/* -------------------------------------------------------- */
/* 1. TYPOGRAPHY */

.headings-h1-app {
    font-family: var(--fontfamilyheading);
    font-size: var(--fontsize2xl);
    font-weight: 700;
    line-height: var(--fontline-height4xl);
}

.headings-h1-hero {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsize8xl);
    font-weight: 700;
    line-height: var(--fontline-height9xl);
    letter-spacing: var(--fontletter-spacingminus-md);
}

.headings-h2 {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsize5xl);
    font-weight: 700;
    line-height: var(--fontline-height7xl);
}

.headings-h4 {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsize3xl);
    font-weight: 700;
    line-height: var(--fontline-height4xl);
}

.headings-izstop {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizexl);
    font-weight: 700;
    line-height: var(--fontline-height3xl);
}

.headings-h6 {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizexl);
    font-weight: 700;
    line-height: var(--fontline-heightxl);
}

.headings-h5 {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsize2xl);
    font-weight: 700;
    line-height: var(--fontline-height3xl);
}

.paragraphs-feature {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizexl);
    font-weight: 400;
    line-height: var(--fontline-height3xl);
}

.paragraph-main {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizelg);
    font-weight: 500;
    line-height: var(--fontline-heightxl);
}

.paragraphs-upper-large {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizesm);
    font-weight: 700;
}

.paragraphs-upper-small {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizexs);
    font-weight: 700;
}

.paragraphs-content {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizelg);
    font-weight: 400;
    line-height: var(--fontline-height2xl);
}

.paragraphs-content-bold {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizelg);
    font-weight: 600;
    line-height: var(--fontline-height2xl);
}

.paragraphs-description {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizemd);
    font-weight: 400;
    line-height: var(--fontline-heightxl);
}

.paragraphs-small {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizesm);
    font-weight: 400;
    line-height: var(--fontline-heightlg);
}

.paragraphs-tiny {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizexs);
    font-weight: 400;
    line-height: var(--fontline-heightmd);
}

.custom-card-title {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsize4xl);
    font-weight: 700;
    line-height: var(--fontline-height7xl);
    letter-spacing: -1px;
}

.card-list-title {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizemd);
    font-weight: 700;
    line-height: var(--fontline-heightxl);
}

.input-label {
    font-family: var(--fontfamilybody);
    font-size: var(--fontsizemd);
    font-weight: 600;
    line-height: var(--fontline-heightxl);
    margin-bottom: 10px;
    color: var(--color-text-primary);
}

/* END TYPOGRAPHY */
/* -------------------------------------------------------- */
/* 2. ICONS */

.custom-icon {
    display: block;
    width: 20px;
    height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: all 0.3s cubic-bezier(0.23, 1.1, 0.61, 1.19);
}

.custom-icon.white {
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(115deg)
        brightness(105%) contrast(104%);
}

.custom-icon.size-12 {
    width: 12px !important;
    height: 12px !important;
}

.custom-icon.size-16 {
    width: 16px;
    height: 16px;
}

.custom-icon.size-30 {
    width: 30px;
    height: 30px;
}

.custom-icon.size-38 {
    width: 38px;
    height: 38px;
}

/* primary */
.custom-icon.dropdown {
    background-image: url("../icons/dropdown.svg");
}

.custom-icon.magic-wand {
    background-image: url("../icons/magic-wand.svg");
}

.custom-icon.duplicate-invoice {
    background-image: url("../icons/invoice-duplicate.svg");
}

.custom-icon.invoice {
    background-image: url("../icons/invoice.svg");
}

.custom-icon.empty-doc {
    background-image: url("../icons/empty-doc.svg");
}

.custom-icon.invoice-out {
    background-image: url("/media/icons/invoice-out.svg");
}

.custom-icon.add-doc {
    background-image: url("/media/icons/add-doc.svg");
}

.custom-icon.storno-doc {
    background-image: url("/media/icons/storno-doc.svg");
}

.custom-icon.invoice-in {
    background-image: url("/media/icons/invoice-in.svg");
}

.custom-icon.add-vendor {
    background-image: url("/media/icons/add-vendor.svg");
}

.custom-icon.new-draft {
    background-image: url("/media/icons/new-draft.svg");
}

.custom-icon.codes {
    background-image: url("/media/icons/code.svg");
}

.custom-icon.new-repeat {
    background-image: url("/media/icons/repeat.svg");
}

.custom-icon.add-client {
    background-image: url("/media/icons/add-client.svg");
}

.custom-icon.file-icon-zip {
    background-image: url("/media/icons/file-icon-zip.svg");
}

.custom-icon.file-icon-excel {
    background-image: url("/media/icons/file-icon-excel.svg");
}

.custom-icon.file-icon-txt {
    background-image: url("/media/icons/file-icon-txt.svg");
}

.custom-icon.file-icon-pdf {
    background-image: url("/media/icons/file-icon-pdf.svg");
}

.custom-icon.file-icon-pdf2 {
    background-image: url("/media/icons/file-icon-pdf2.svg");
}

.custom-icon.file-icon-xml {
    background-image: url("/media/icons/file-icon-xml.svg");
}

.custom-icon.file-icon-xml2 {
    background-image: url("/media/icons/file-icon-xml2.svg");
}

.custom-icon.search {
    background-image: url("/media/icons/search.svg");
}

.custom-icon.back-icon {
    background-image: url("/media/icons/back-icon.svg");
}

.custom-icon.trash {
    background-image: url("../icons/trash.svg");
}

.custom-icon.pen {
    background-image: url("../icons/pen.svg");
}

.custom-icon.drafts {
    background-image: url("../icons/drafts.svg");
}

.custom-icon.close {
    background-image: url("../icons/close.svg");
}

.custom-icon.left {
    background-image: url("../icons/left.svg");
}

.custom-icon.right {
    background-image: url("../icons/right.svg");
}

.custom-icon.arrow-right {
    background-image: url("../icons/arrow-right.svg");
}

.custom-icon.help {
    background-image: url("../icons/help.svg");
}

.custom-icon.tax {
    background-image: url("../icons/tax.svg");
}

.custom-icon.download {
    background-image: url("../icons/download.svg");
}

.custom-icon.events {
    background-image: url("../icons/events.svg");
}

.custom-icon.lock {
    background-image: url("../icons/lock.svg");
}

.custom-icon.email {
    background-image: url("../icons/email.svg");
}

.custom-icon.attach {
    background-image: url("../icons/attach.svg");
}

.custom-icon.filter {
    background-image: url("../icons/filter.svg");
}

.custom-icon.eye {
    background-image: url("../icons/eye.svg");
}

.custom-icon.eye-slash {
    background-image: url("../icons/eye-slash.svg");
}

.custom-icon.user {
    background-image: url("../icons/user.svg");
}

.custom-icon.company {
    background-image: url("../icons/company.svg");
}

.custom-icon.universal-access {
    background-image: url("../icons/universal-access.svg");
}

.custom-icon.reload {
    background-image: url("../icons/reload.svg");
}

/* pale-blue */
.custom-icon.invoice-pale-blue {
    background-image: url("../icons/invoice-pale-blue.svg");
}

.custom-icon.duplicate-invoice-pale-blue {
    background-image: url("../icons/invoice-duplicate-pale-blue.svg");
}

.custom-icon.events-pale-blue {
    background-image: url("../icons/events-pale-blue.svg");
}

.custom-icon.public-orders-pale-blue {
    background-image: url("../icons/public-orders-pale-blue.svg");
}

.custom-icon.drafts-pale-blue {
    background-image: url("../icons/drafts-pale-blue.svg");
}

.custom-icon.user-list-pale-blue {
    background-image: url("../icons/user-list-pale-blue.svg");
}

.custom-icon.tax-pale-blue {
    background-image: url("../icons/tax-pale-blue.svg");
}

.custom-icon.code-pale-blue {
    background-image: url("../icons/code-pale-blue.svg");
}

.custom-icon.invoice-in-pale-blue {
    background-image: url("../icons/invoice-in-pale-blue.svg");
}

.custom-icon.invoice-out-pale-blue {
    background-image: url("../icons/invoice-out-pale-blue.svg");
}

.custom-icon.dashboard-pale-blue {
    background-image: url("../icons/dashboard-pale-blue.svg");
}

.custom-icon.dots-pale-blue {
    background-image: url("../icons/dots-pale-blue.svg");
}

.custom-icon.lock-pale-blue {
    background-image: url("../icons/lock-pale-blue.svg");
}

.custom-icon.email-pale-blue {
    background-image: url("../icons/email-pale-blue.svg");
}

/* white */
.custom-icon.dots-white {
    background-image: url("../icons/dots-white.svg");
}

/* red */
.custom-icon.close-red {
    background-image: url("../icons/close-red.svg");
}

/* black */
.cookie {
    background-image: url("../icons/cookie.svg");
}

.custom-icon-bg {
    padding: 12px;
    border-radius: 4px;
}

.attachment-list {
    list-style: none;
    padding-left: 0;
}

.attachment-list li {
    margin-bottom: 8px;
}

.attachment-list a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-text-primary);
    text-decoration: none;
}

.attachment-list a:hover {
    text-decoration: underline;
}

.attachments-cell {
    position: relative;
}

.attachments-toggle {
    cursor: pointer;
}

.attachments-popover {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 100;
    min-width: 220px;
    max-width: 360px;
    background-color: #fff;
    border: 1px solid var(--color-border-primary, #d0d5dd);
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    padding: 8px 12px;
}

.attachments-popover.open {
    display: block;
}

.attachments-popover .attachment-list {
    margin-bottom: 0;
}

.attachments-popover .attachment-list li:last-child {
    margin-bottom: 0;
}

input[type="file"]::file-selector-button {
    display: inline-block;
    font-family: "Manrope", sans-serif;
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
    border: 2px solid var(--color-border-primary) !important;
    margin-top: 3px;
    margin-right: 10px;
    border-radius: 4px !important;
    transition: all 0.3s ease;
    text-decoration: none;
    width: auto !important;
}

input[type="file"]::file-selector-button:hover {
    background-color: var(--color-background-white);
    color: var(--color-text-primary);
    border-color: var(--color-background-white) !important;
    transition: all 0.3s ease;
    text-decoration: none;
}

.social-media-skeleton-wrapper {
    display: flex;
    justify-content: center;
}

#fb-login-button {
    display: none;
}

.mh250 {
    min-height: 250px !important;
}

.social-media-skeleton {
    height: 40px;
    width: 100%;
    max-width: 400px;
    background: var(--color-background-secondary);
    border-radius: 3px;
    position: relative;
    overflow: hidden;
}

.social-media-skeleton::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    height: 100%;
    width: 100%;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(204, 204, 204, 0.2) 50%,
        rgba(255, 255, 255, 0) 100%
    );
    animation: skele-loading 1.5s cubic-bezier(0.57, -0.01, 0.21, 0.89) infinite;
}

@keyframes skele-loading {
    0% {
        left: -100%;
    }

    50% {
        left: 100%;
    }

    100% {
        left: 100%;
    }
}

/* END ICONS */
/* -------------------------------------------------------- */
/* 3. FORM AND BUTTONS */

.form-title {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--color-text-primary);
    margin-bottom: 20px;
}

.form-control {
    color: var(--color-text-black) !important;
}

.custom-href,
.custom-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-family: "Manrope", sans-serif;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    /* line-height: 24px !important; */
    padding: 14px 16px 14px 16px !important;
    border: 2px solid var(--color-border-primary) !important;
    border-radius: 4px !important;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
    width: auto !important;
}

.custom-login-button.primary,
.custom-href.primary,
.custom-button.primary {
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
}

.custom-login-button.white,
.custom-button.white,
.custom-href.white {
    background-color: var(--color-background-white);
    color: var(--color-text-primary);
    border-color: var(--color-background-white);
}

.custom-login-button.transparent,
.custom-button.transparent {
    background-color: transparent;
    color: var(--color-text-primary);
}

.custom-button.danger {
    background-color: transparent;
    color: var(--color-utility-red);
    border: 2px solid var(--color-utility-red) !important;
}

.custom-button:has(.custom-icon) {
    padding-right: 48px !important;
    /* 12px + 20px + 16px */
}

.custom-button:hover {
    background-color: var(--color-background-white) !important;
    color: var(--color-text-primary);
    border-color: var(--color-background-white) !important;
    transition: all 0.3s ease;
    text-decoration: none;
}

.custom-button.filled {
    background-color: var(--color-background-secondary) !important;
    color: var(--color-text-primary);
    border-color: var(--color-background-white) !important;
    transition: all 0.3s ease;
    text-decoration: none;
}

.custom-button:has(.custom-icon):hover {
    padding-right: 16px !important;
    padding-left: 48px !important;
}

.custom-button:has(.custom-icon):hover .custom-icon {
    left: 12px !important;
    filter: none !important;
}

.custom-login-button .custom-icon,
.custom-button .custom-icon {
    width: 20px;
    height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute !important;
    left: calc(100% - (20px + 16px));
    transition: all 0.3s cubic-bezier(0.23, 1.1, 0.61, 1.19);
}

.custom-login-button .custom-icon {
    transition: all 0.3s ease-in-out !important;
}

.custom-button:disabled {
    background-color: var(--color-background-secondary);
    color: var(--color-text-dimmed);
    border-color: var(--color-background-secondary) !important;
    cursor: not-allowed;
}

.custom-button:disabled .custom-icon {
    filter: opacity(0.5) !important;
}

.custom-button:has(.custom-icon):hover:disabled {
    padding-right: 48px !important;
    padding-left: 16px !important;
}

.custom-button:has(.custom-icon):hover:disabled .custom-icon {
    left: calc(100% - (20px + 16px)) !important;
    filter: opacity(0.5) !important;
}

.custom-href {
    border: none !important;
    font-family: "Manrope", sans-serif;
    line-height: 24px;
    color: var(--color-text-primary);
}

.custom-href:hover {
    color: blue;
    text-decoration: none;
}

.custom-href:has(.custom-icon):hover .custom-icon svg path {
    stroke: blue;
}

/* Same as custom-button, but it does not animate */
.fakturca-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-family: "Manrope", sans-serif;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 24px;
    padding: 10px;
    border: 2px solid var(--color-border-primary);
    border-radius: 4px;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
    /* background-color: var(--color-background-primary);
    color: var(--color-text-white); */
    cursor: pointer;
}

.fakturca-button.primary {
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
}

.fakturca-button.white {
    background-color: var(--color-background-white);
    color: var(--color-text-primary);
}

.fakturca-button.transparent {
    background-color: transparent;
    color: var(--color-text-primary);
}

.fakturca-button.danger {
    background-color: var(--color-utility-red);
    border: 2px solid var(--color-utility-red);
    color: var(--color-text-white);
}

.select-wrap {
    position: relative;
}

select {
    height: 52px !important;
    width: 100% !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    padding: 10px 31px 10px 16px !important;
    border: none !important;
    border-radius: 4px;
    color: var(--color-text-black);
    background-color: var(--color-background-white);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: normal;
}

.filter select {
    border-radius: 4px;
}

.date-label,
.custom-label {
    color: var(--color-text-primary);
    font-size: 0.875rem;
    font-weight: 700;
    margin-top: 9px;
    margin-bottom: 9px;
}

.date-label {
    padding-left: 52px;
}

.select-wrap .custom-icon.dropdown {
    position: absolute;
    top: 14px;
    right: 12px;
    z-index: 100;
    pointer-events: none;
}

input {
    height: 52px !important;
    width: 100% !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    padding: 10px 16px !important;
    border: none !important;
    border-radius: 4px !important;
    color: var(--color-text-black);
    background-color: var(--color-background-white);
}

.instructions-modal-body {
    max-height: 50vh;
    overflow-y: scroll;
}

.select_code_overlay {
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background: rgb(0, 0, 0, 0.2);
    z-index: 1000;
}

.select-search-dropdown-button {
    background-color: var(--color-background-white);
    color: var(--bs-body-color);
    width: 100%;
    height: 52px !important;
    border: none;
    border-radius: 4px;
    padding: 14px 31px 14px 16px;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 24px;
    text-align: start;
    overflow-x: hidden;
}

.bg-white .select-search-dropdown-button {
    background-color: var(--color-background-secondary);
}

.select-search-dropdown-button:disabled {
    background-color: var(--bs-secondary-bg) !important;
    color: var(--color-text-dimmed) !important;
    cursor: not-allowed;
}

.select-search-value {
    display: block;
    overflow: hidden;
    color: var(--color-text-black);
    white-space: nowrap;
}

.select-search-dropdown-menu {
    padding: 0px !important;
    width: 100%;
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.2);
}

.select-search-dropdown-input {
    width: 100%;
    height: 48px;
    font-size: 0.875rem;
    font-weight: 400;
    padding: 10px 16px;
    border: none;
    border-radius: 4px;
    background-color: var(--color-background-secondary);
}

.select-search-dropdown-list {
    list-style: none !important;
    padding: 0px !important;
    margin: 0px !important;
    max-height: 300px;
    overflow-y: auto;
}

.select-search-dropdown-item {
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    cursor: pointer;
}

.select-search-dropdown-item.selected {
    color: var(--color-text-primary) !important;
    font-weight: 600 !important;
    background-color: var(--color-background-pale-blue);
}

.swal2-input {
    width: auto !important;
}

input:focus,
input:active,
select:focus,
select:active {
    outline: none !important;
}

input.error_input,
select.error_input,
textarea.error_input {
    border: 1px solid var(--color-utility-red) !important;
    color: var(--color-utility-red) !important;
}

input[type="checkbox"].error_input + .checkmark {
    outline: 1px solid var(--color-utility-red) !important;
}

label:has(+ input.error_input),
label:has(+ textarea.error_input),
label:has(+ div input.error_input) {
    color: var(--color-utility-red) !important;
}

input[type="checkbox"].error_input ~ .custom-check-label span,
input[type="checkbox"].error_input ~ .custom-check-label span a {
    color: var(--color-utility-red) !important;
}

.bg-white input,
.bg-white select {
    background-color: var(--color-background-secondary);
}

.bg-white .item-badge {
    background-color: var(--color-background-secondary);
    border: 0px;
}

.form-checkbox-group {
    position: relative;
    display: flex;
    height: 30px;
}

.form-checkbox-group.h52 {
    height: 52px;
}

/* Hide the browser's default checkbox */
.form-checkbox-group input {
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.form-checkbox-group .custom-check-label {
    display: inline-block;
    padding-left: 32px;
    font-family: var(--fontfamilybody);
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--color-text-black);
}

.form-checkbox-group input.edit-user-perm-checkbox ~ .checkmark {
    background-color: var(--color-background-white);
    border-color: #dee2e6;
}

/*.form-checkbox-group input.edit-user-perm-checkbox:checked ~ .checkmark {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}*/

/* Radiomark CSS */
.radiomark {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 24px;
    width: 24px;
    border-radius: 24px;
    background-color: var(--color-background-secondary);
    cursor: pointer;
}

.radiomark.white {
    background-color: var(--color-background-white);
}

/* When the checkbox is checked, add a primary background */
.form-checkbox-group input:checked ~ .radiomark {
    background-color: var(--color-background-primary);
}

/* Show the checkmark when checked */
.form-checkbox-group input:disabled ~ .radiomark {
    opacity: 0.5;
}

/* Create the checkmark/indicator (hidden when not checked) */
.radiomark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.form-checkbox-group input:checked ~ .radiomark:after {
    display: block;
}

/* Style the checkmark/indicator */
.form-checkbox-group .radiomark:after {
    height: 8px;
    width: 8px;
    background-color: white;
    border-radius: 24px;
    left: 8px;
    top: 8px;
}

/* Checkmark CSS */
/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 24px;
    width: 24px;
    border-radius: 2px;
    background-color: var(--color-background-secondary);
    cursor: pointer;
}

.checkmark.white {
    background-color: var(--color-background-white);
}

/* When the checkbox is checked, add a primary background */
.form-checkbox-group input:checked ~ .checkmark {
    background-color: var(--color-background-primary);
}

/* Show the checkmark when checked */
.form-checkbox-group input:disabled ~ .checkmark {
    opacity: 0.5;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.form-checkbox-group input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.form-checkbox-group .checkmark:after {
    left: 8px;
    top: 4px;
    width: 7px;
    height: 13px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

table input.paydate_input {
    background-color: var(--color-background-secondary) !important;
    border-radius: 3px !important;
    height: 36px !important;
    position: relative;
}

.mobile-table-element:has(.accordion-collapse.show) input.paydate_input {
    background-color: var(--color-background-secondary) !important;
}

.mobile-table-element .delete_pay_date,
table .delete_pay_date {
    display: flex;
    justify-content: center;
    align-items: center;
}

.multicheckbox {
    list-style: none;
    max-height: 300px;
    overflow: hidden;
    overflow-y: scroll;
    padding: 0px;
}

/* width */
.multicheckbox::-webkit-scrollbar {
    width: 8px;
}

/* Track */
.multicheckbox::-webkit-scrollbar-track {
    background: var(--color-background-primary);
    border-radius: 2px;
}

/* Handle */
.multicheckbox::-webkit-scrollbar-thumb {
    background: var(--color-background-light-blue);
    border-radius: 2px;
}

.multicheckbox .form-checkbox-group {
    height: auto !important;
    margin-bottom: 12px !important;
}

textarea {
    width: 100% !important;
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    padding: 10px 16px !important;
    border: none !important;
    border-radius: 4px !important;
    background-color: var(--color-background-secondary) !important;
}

.mobile-filter-button {
    display: flex;
    align-items: center;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--color-text-black);
    background-color: transparent;
    border: none;
}

.mobile-filter-content {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100%;
    background-color: var(--color-background-secondary);
    z-index: 120;
    overflow-y: scroll;
    transition: all 350ms ease-in-out;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.mobile-filter-content::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.mobile-filter-content {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
}

.mobile-filter-content.active {
    left: 0;
}

.mobile-filter-content button {
    background-color: transparent;
    border: none;
}

.mobile-filter-content ul {
    list-style: none;
    margin-bottom: 0px;
    padding: 0px;
}

.mobile-filter-content ul li {
    border-top: 1px solid #cedae0;
    padding: 15px;
}

.mobile-filter-content ul li:last-child {
    border-bottom: 1px solid #cedae0;
}

/* Datepicker */
.datepicker {
    border-radius: 12px !important;
    background-color: var(--color-background-secondary) !important;
}

.datepicker--pointer {
    background: var(--color-background-secondary) !important;
    border-top: 1px solid var(--color-background-secondary) !important;
    border-right: 1px solid var(--color-background-secondary) !important;
}

.datepicker--nav-title,
.datepicker--nav-title i {
    color: var(--color-text-primary) !important;
    font-family: var(--fontfamilybody);
    font-weight: 600;
    font-size: 0.875rem;
}

.datepicker--nav-title:hover,
.datepicker--nav-action:hover,
.datepicker--cell-month:hover {
    background-color: transparent !important;
}

.datepicker--day-name {
    color: var(--color-text-primary) !important;
}

.datepicker--cell.-current- {
    color: var(--color-text-primary) !important;
    border: 1px solid var(--color-border-primary) !important;
    background-color: transparent !important;
}

.datepicker--cell-day,
.datepicker--cell-month {
    color: var(--color-text-primary) !important;
    font-family: var(--fontfamilybody);
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 20px;
}

.datepicker--cell-day.-other-month-,
.datepicker--cell-year.-other-decade- {
    color: #dedede !important;
}

.datepicker--cell-day:hover {
    border: 1px solid var(--color-border-primary) !important;
    background-color: transparent !important;
}

.datepicker--cell.-selected- {
    background-color: var(--color-background-primary) !important;
    color: var(--color-text-white) !important;
}

.datepicker--nav-action path {
    stroke: var(--color-text-primary) !important;
}

.password-toggle {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

/* END FORM */
/* -------------------------------------------------------- */
/* 4. TABLE */

.table {
    vertical-align: middle !important;
}

.table.border-spacing {
    border-spacing: 0px 2px;
    border-collapse: separate;
}

.table thead tr th {
    background-color: transparent !important;
    color: var(--color-text-primary);
    font-family: var(--fontfamilyheading);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 24px;
    border-bottom: none !important;
    padding: 10px;
}

.table tbody tr td {
    background-color: var(--color-background-white) !important;
    border-bottom: none !important;
    font-family: var(--fontfamilybody);
    font-size: 0.875rem;
    font-weight: 500;
    height: 56px;
    padding: 0px 10px;
    color: var(--color-text-black);
}

.bg-white .table tbody tr td {
    background-color: var(--color-background-secondary) !important;
}

.bg-white .table > :not(caption) > * > * {
    border-bottom: none !important;
}

.table tbody tr:first-child td:first-child {
    border-top-left-radius: 4px;
}

.table tbody tr:first-child td:last-child {
    border-top-right-radius: 4px;
}

.table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 4px;
}

.table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 4px;
}

.pagination-next,
.pagination-previous {
    font-size: 1rem;
    font-weight: 700;
    line-height: 24px;
    color: var(--color-text-primary);
    text-decoration: none;
}

.pagination-button {
    height: 40px;
    width: 40px;
    background-color: var(--color-background-white);
    color: var(--color-text-primary);
    font-size: 0.875rem;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3px;
    text-decoration: none;
    border-radius: 4px;
}

.pagination-dots {
    height: 40px;
    width: 40px;
    color: var(--color-text-primary);
    font-size: 0.875rem;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3px;
    border-radius: 4px;
}

.pagination-button.current {
    color: var(--color-text-white);
    background-color: var(--color-text-primary);
}

.table-checkbox {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 24px !important;
    width: 24px !important;
    min-height: 24px !important;
    min-width: 24px !important;
    border: 1px solid var(--color-background-secondary) !important;
    background-color: var(--color-background-white) !important;
    border-radius: 2px !important;
    cursor: pointer;
    position: relative;
    padding: 0 !important;
    margin: 0 !important;
    vertical-align: middle;
}

.table-checkbox:checked {
    background-color: var(--color-background-primary) !important;
}

.table-checkbox:checked::after {
    content: "";
    position: absolute;
    left: 8px;
    top: 4px;
    width: 7px;
    height: 13px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.table-checkbox:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.mobile-table-element {
    padding: 1rem;
    border-top: 1px solid #cedae0;
}

.mobile-table-element.visited {
    background-color: #cfcccc !important;
}

.mobile-table-element.highlight {
    background-color: #fff !important;
}

.mobile-table-element.status-yellow {
    background-color: rgb(247, 247, 132) !important;
}

.mobile-table-element.status-green {
    background-color: lightgreen !important;
}

.mobile-table-element.status-light-red {
    background-color: lightcoral !important;
}

.mobile-table-element:has(.accordion-collapse.show) {
    background-color: var(--color-background-white);
}

.mobile-table-element .accordion-button {
    background-color: transparent !important;
    box-shadow: none !important;
}

.mobile-table-element:last-child {
    border-bottom: 1px solid #cedae0;
}

.mobile-table-element a {
    text-decoration: none;
}

.mobile-table-element-title {
    font-size: 1rem;
    font-weight: 700;
}

.mobile-table-element-subtitle {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--color-text-dimmed);
}

.mobile-table-element input {
    height: 30px !important;
}

.mobile-table-element input[type="button"] {
    height: auto !important;
}

.mobile-table-element-wrap {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #cedae0;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.mobile-table-element-wrap:last-child {
    border-bottom: none;
}

.mobile-table-element .custom-href {
    background-color: var(--color-background-secondary);
    padding: 14px !important;
}

.mobile-table-element .custom-href.primary {
    background-color: var(--color-background-primary);
}

.mobile-table-element .fakturca-button {
    padding: 14px !important;
    border: none !important;
}

/* END TABLE */
/* -------------------------------------------------------- */
/* 5. SIDEBAR */

.sidebar-left {
    height: 100%;
    position: relative;
}

@property --p {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 66%;
}

@property --a {
    syntax: "<angle>";
    inherits: false;
    initial-value: 180deg;
}

.sidebar-left-content {
    --p: 66%;
    --a: 180deg;
    position: sticky;
    z-index: 100;
    top: 0;
    width: 225px;
    min-height: 100vh;
    height: 100vh;
    background: linear-gradient(
        var(--a),
        var(--color-background-primary) var(--p),
        var(--color-background-light-blue)
    );
    overflow-y: auto;
    overflow-x: hidden;
    transition:
        --p 0.5s,
        --a 0.5s,
        width 350ms ease;
    animation: sidebar-background 4s linear infinite alternate;
}

@keyframes sidebar-background {
    0% {
        --p: 66%;
        --a: 180deg;
    }

    100% {
        --p: 80%;
        --a: 170deg;
    }
}

/* width */
.sidebar-left-content::-webkit-scrollbar {
    width: 4px;
}

/* Track */
.sidebar-left-content::-webkit-scrollbar-track {
    background: linear-gradient(
        to bottom,
        var(--color-background-primary) 66%,
        var(--color-background-light-blue)
    );
    border-radius: 2px;
}

/* Handle */
.sidebar-left-content::-webkit-scrollbar-thumb {
    background: var(--color-background-light-blue);
    border-radius: 2px;
}

.sidebar-left-content .sidebar-brand {
    display: block;
    padding: 35px 15px;
    margin-bottom: 40px;
    text-align: center;
    overflow: hidden;
}

.sidebar-left-content .sidebar-brand svg {
    height: 20px;
}

.sidebar-left-content .sidebar-brand .logo-big {
    display: block;
}

.sidebar-left-content .sidebar-brand .logo-small {
    display: none;
}

.sidebar-left-content ul.sidebar-menu {
    display: flex;
    flex-direction: column;
}

.sidebar-left-content ul.sidebar-menu li {
    padding: 18px 20px;
    border-top: 1px solid #ffffff1f;
}

.sidebar-left-content ul.sidebar-menu li:last-child {
    border-bottom: 1px solid #ffffff1f;
}

.sidebar-left-content ul.sidebar-menu li a {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 28px;
    color: var(--color-text-pale-blue);
    text-decoration: none;
    height: 28px;
}

.sidebar-left-content ul.sidebar-menu li a.active,
.sidebar-left-content ul.sidebar-menu li a:hover {
    color: var(--color-text-white);
}

.sidebar-left-content ul.sidebar-menu li a .sidebar-title {
    margin-left: 6px;
    transform: scale(1);
    transform-origin: left;
    white-space: nowrap;
    transition: all 200ms ease;
}

.sidebar-left-content ul.sidebar-menu li a svg {
    min-width: 20px !important;
}

.sidebar-left-content ul.sidebar-menu li a:hover svg g,
.sidebar-left-content ul.sidebar-menu li a.active svg g {
    opacity: 1;
}

.sidebar-left-content ul.sidebar-menu li a:hover svg path,
.sidebar-left-content ul.sidebar-menu li a:hover svg rect,
.sidebar-left-content ul.sidebar-menu li a.active svg path,
.sidebar-left-content ul.sidebar-menu li a.active svg rect {
    stroke: var(--color-background-light-blue);
}

.sidebar-left-content .sidebar-content-bottom {
    padding: 16px 20px;
    transition: all 200ms ease;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.sidebar-left-content .sidebar-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ffffff7a;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

/* Sidebar small */
.sidebar-small .sidebar-left-content {
    width: 56px;
}

.sidebar-small .sidebar-left-content .sidebar-brand .logo-big {
    display: none;
}

.sidebar-small .sidebar-left-content .sidebar-brand .logo-small {
    display: block;
}

.sidebar-small .sidebar-left-content ul.sidebar-menu li a .sidebar-title {
    margin-left: 0px;
    font-size: 0px;
    transform: scale(0);
}

.sidebar-small .sidebar-left-content #sidebar-toggle span {
    transform: rotate(180deg);
}

.sidebar-small .sidebar-left-content .sidebar-content-bottom {
    padding: 16px 8px;
}

/* Sidebar for mobile */
.menu-bottom-mobile {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 60px;
    background-color: var(--color-background-primary);
    z-index: 101;
}

.menu-bottom-mobile::before {
    content: "";
    position: absolute;
    background-color: transparent;
    top: -40px;
    left: 0px;
    height: 40px;
    width: 20px;
    border-bottom-left-radius: 20px;
    box-shadow: 0 20px 0 0 var(--color-background-primary);
}

.menu-bottom-mobile::after {
    content: "";
    position: absolute;
    background-color: transparent;
    top: -40px;
    right: 0px;
    height: 40px;
    width: 20px;
    border-bottom-right-radius: 20px;
    box-shadow: 0 20px 0 0 var(--color-background-primary);
}

.menu-bottom-mobile button,
.menu-bottom-mobile a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--color-text-pale-blue);
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 24px;
    text-decoration: none;
    padding: 12px;
    border: none;
    background-color: transparent;
}

.menu-bottom-mobile a:hover,
.menu-bottom-mobile button:hover,
.menu-bottom-mobile a.active {
    color: var(--color-text-white);
}

.menu-bottom-mobile a:hover svg g,
.menu-bottom-mobile a.active svg g {
    opacity: 1;
}

.menu-bottom-mobile a:hover svg path,
.menu-bottom-mobile a:hover svg rect,
.menu-bottom-mobile button:hover svg path,
.menu-bottom-mobile button:hover svg rect,
.menu-bottom-mobile a.active svg path,
.menu-bottom-mobile a.active svg rect {
    stroke: var(--color-background-light-blue);
}

.menu-bottom-mobile .new-invoice-wrap {
    background-color: var(--color-background-primary);
    padding: 15px;
    transform: translateY(-20px);
    border-radius: 50%;
    position: relative;
}

.menu-bottom-mobile .new-invoice-wrap::before {
    content: "";
    position: absolute;
    top: 5px;
    left: -6px;
    background-color: transparent;
    width: 20px;
    height: 15px;
    border-bottom-right-radius: 20px;
    box-shadow: 0 10px 0 0 var(--color-background-primary);
}

.menu-bottom-mobile .new-invoice-wrap::after {
    content: "";
    position: absolute;
    top: 5px;
    right: -6px;
    background-color: transparent;
    width: 20px;
    height: 15px;
    border-bottom-left-radius: 20px;
    box-shadow: 0 10px 0 0 var(--color-background-primary);
}

.menu-bottom-mobile a.new-invoice {
    background: linear-gradient(219.28deg, #ffffff 14.2%, #26a1fb 288.8%);
    color: var(--color-text-primary);
    border-radius: 50%;
    height: 56px;
    width: 56px;
    box-shadow: 0px 40px 60px 10px var(--color-background-light-blue);
}

.sidebar-left-mobile {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100%;
    background: linear-gradient(
        to bottom,
        var(--color-background-primary) 66%,
        var(--color-background-light-blue)
    );
    z-index: 103;
    transition: all 0.3s ease-in-out;
    min-height: 100vh;
    overflow-y: scroll;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.sidebar-left-mobile::-webkit-scrollbar {
    display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.sidebar-left-mobile {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
}

.sidebar-left-mobile.active {
    left: 0%;
}

#sidebar-left-mobile-close {
    border: none !important;
    background-color: transparent !important;
}

.sidebar-left-mobile ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
}

.sidebar-left-mobile ul li {
    padding: 18px 20px;
    border-top: 1px solid #ffffff1f;
}

.sidebar-left-mobile ul li:last-child {
    border-bottom: 1px solid #ffffff1f;
}

.sidebar-left-mobile ul li a {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 28px;
    color: var(--color-text-pale-blue);
    text-decoration: none;
    height: 28px;
}

.sidebar-left-mobile ul li a.active,
.sidebar-left-mobile ul li a:hover {
    color: var(--color-text-white);
}

.sidebar-left-mobile ul li a .sidebar-title {
    margin-left: 6px;
    transform: scale(1);
    transform-origin: left;
    white-space: nowrap;
    transition: all 200ms ease;
}

.sidebar-left-mobile ul li a svg {
    min-width: 20px !important;
}

.sidebar-left-mobile ul li a:hover svg g,
.sidebar-left-mobile ul li a.active svg g {
    opacity: 1;
}

.sidebar-left-mobile ul li a:hover svg path,
.sidebar-left-mobile ul li a:hover svg rect,
.sidebar-left-mobile ul li a.active svg path,
.sidebar-left-mobile ul li a.active svg rect {
    stroke: var(--color-background-light-blue);
}

.sidebar-left-mobile .sidebar-content-bottom {
    padding: 16px 20px;
    transition: all 200ms ease;
}

.sidebar-left-mobile .sidebar-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ffffff7a;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

/* END SIDEBAR */
/* -------------------------------------------------------- */
/* 6. HEADER & FOOTER */

.navbar {
    height: 95px;
    padding-left: 3rem !important;
    padding-right: 3rem !important;
    display: flex !important;
    justify-content: space-between !important;
}

.navbar .dropdown .dropdown-toggle {
    display: flex !important;
    align-items: center;
    color: var(--color-text-primary);
    background-color: transparent !important;
    border: none !important;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    line-height: 32px !important;
    padding: 0px !important;
}

.navbar .dropdown .dropdown-toggle .custom-icon {
    width: 12px !important;
    height: 12px !important;
}

.navbar .dropdown .dropdown-toggle::after {
    display: none !important;
}

.navbar .user-circle {
    width: 40px;
    height: 40px;
    display: flex;
    background: var(--color-background-primary);
    color: var(--color-text-white);
    font-family: Manrope, sans-serif;
    align-items: center;
    justify-content: center;
}

footer {
    display: flex;
    flex-wrap: wrap;
    font-size: 0.75rem;
    line-height: 24px;
    align-items: center;
    border-top: 1px solid var(--color-utility-border);
    justify-content: space-between;
    margin-top: auto;
    margin-left: 3rem !important;
    margin-right: 3rem !important;
    padding: 25px 0px;
}

footer .footer-rights {
    color: var(--color-text-primary);
}

footer a {
    color: var(--color-text-primary);
    text-decoration: none;
    padding-right: 20px;
}

footer a:first-child {
    padding-left: 0px;
}

footer a:last-child {
    padding-right: 0px;
}

.mobile-menu-user {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 100%;
    background-color: var(--color-background-secondary);
    z-index: 102;
    transition: all 0.3s ease-in-out;
}

.mobile-menu-user.active {
    left: 0%;
}

.mobile-menu-user-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-text-black);
}

.logo-mobile {
    width: 200px;
}

#mobile-menu-user-close {
    border: none !important;
    background-color: transparent !important;
}

.mobile-menu-user ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.mobile-menu-user ul li {
    padding: 20px 16px;
    border-bottom: 1px solid var(--color-utility-border);
}

.mobile-menu-user ul li:first-child {
    border-top: 1px solid var(--color-utility-border);
}

.mobile-menu-user ul li a {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text-primary);
}

/* END HEADER & FOOTER */
/* -------------------------------------------------------- */
/* 7. SUBMENU */

.submenu-top {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
}

.submenu-title,
.submenu-buttons {
    margin-bottom: 2rem;
}

.submenu-title h1 {
    font-family: "Manrope", sans-serif;
    font-size: var(--fontsize2xl);
    font-weight: 700;
    margin-bottom: 15px;
    color: var(--color-text-primary);
}

.submenu-title h2 {
    font-family: "Manrope", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 0px;
    margin-top: 0px;
    color: var(--color-text-black);
}

.submenu-buttons {
    display: flex;
    justify-content: start;
}

.submenu-bottom ul {
    padding: 0;
    margin-bottom: 2rem;
    list-style-type: none;
    border-bottom: 2px solid var(--color-utility-border);
}

.submenu-bottom ul li {
    display: inline-block;
    padding-bottom: 15px;
    margin-right: 20px;
    position: relative;
}

.submenu-bottom ul li.active::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--color-background-primary);
}

.submenu-bottom ul li a {
    text-decoration: none;
    display: inline-block;
    font-family: "Manrope", sans-serif;
    font-size: 1rem;
    line-height: 32px;
    font-weight: 700;
    color: var(--color-text-dimmed);
}

.submenu-bottom ul li a.active,
.submenu-bottom ul li a:hover {
    color: var(--color-text-primary);
}

.container-submenu {
    margin-bottom: 1rem;
}

/* END SUBMENU */
/* -------------------------------------------------------- */
/* 8. MODAL */

.fakturca-modal-wrap {
    padding: 16px;
    background-color: var(--color-background-secondary);
}

.fakturca-modal-title {
    font-size: 1.75rem;
    font-weight: 700;
}

.fakturca-modal-subtitle {
    font-size: 1rem;
    font-weight: 400;
}

.fakturca-modal-body {
    border-radius: 4px;
}

.fakturca-modal-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--color-background-white);
    padding: 16px;
}

.custom-modal-header {
    display: flex;
    align-items: center;
    padding: 2rem;
    padding-bottom: 0px;
}

.custom-modal-body {
    padding: 1rem 2rem;
}

.custom-modal-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 2rem;
}

.custom-modal-title {
    font-size: 1.375rem;
    font-weight: 700;
    margin-bottom: 0px;
    color: var(--color-text-primary);
}

.custom-modal-body label {
    font-size: 1rem;
    font-weight: 700;
    line-height: 32px;
    color: var(--color-text-primary);
}

/* END MODAL */
/* -------------------------------------------------------- */
/* 9. MEDIA QUERIES */

/* XL */
/* @media (max-width: 1199px) {
} */

/* LG */
@media (max-width: 991px) {
    #main {
        padding-bottom: 60px;
    }

    .navbar {
        background-color: var(--color-background-primary);
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .navbar .fakturca-button {
        border: none !important;
    }

    .navbar .dropdown .dropdown-toggle {
        color: var(--color-text-white);
    }

    .navbar .user-circle {
        color: var(--color-text-primary);
        background: var(--color-background-white);
    }

    footer {
        margin-left: 12px !important;
        margin-right: 12px !important;
    }

    .container-submenu {
        padding-top: 50px;
        position: relative;
        background: linear-gradient(
            to bottom,
            var(--color-background-primary),
            var(--color-background-light-blue) 86%
        );
        margin-left: -12px !important;
        margin-right: -12px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .container-submenu::before {
        content: "";
        position: absolute;
        background-color: transparent;
        bottom: -40px;
        left: 0px;
        height: 40px;
        width: 20px;
        border-top-left-radius: 20px;
        box-shadow: 0 -20px 0 0 var(--color-background-light-blue);
    }

    .container-submenu::after {
        content: "";
        position: absolute;
        background-color: transparent;
        bottom: -40px;
        right: 0px;
        height: 40px;
        width: 20px;
        border-top-right-radius: 20px;
        box-shadow: 0 -20px 0 0 var(--color-background-light-blue);
    }

    .container-submenu .custom-label {
        color: var(--color-text-white);
    }

    .container-submenu .submenu-title h1,
    .container-submenu .submenu-title h2 {
        color: var(--color-text-white);
    }

    .submenu-buttons.mobile .custom-href,
    .submenu-buttons.mobile .custom-button {
        border-color: var(--color-background-white) !important;
    }

    .submenu-buttons.mobile .custom-button.transparent {
        color: var(--color-text-white);
    }

    .submenu-buttons .custom-button.transparent:hover {
        color: var(--color-text-primary);
    }

    .submenu-buttons a.custom-href {
        color: var(--color-text-white);
    }

    .submenu-buttons a.custom-href .custom-icon {
        filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(115deg)
            brightness(105%) contrast(104%);
    }

    .submenu-bottom ul {
        margin-bottom: 1rem;
        border-bottom: none;
    }

    .submenu-bottom ul li {
        margin-right: 0px;
        padding: 0px;
    }

    .submenu-bottom ul li:last-child {
        margin-right: 0px;
    }

    .submenu-bottom ul li.active::after {
        display: none;
    }

    .submenu-bottom ul li a {
        padding: 5px 10px;
        font-size: 0.875rem;
    }

    .submenu-bottom ul li a.active {
        background-color: var(--color-background-white);
        color: var(--color-text-primary);
    }

    /* Mobile styles */
    .mobile-container {
        padding-left: 0.8rem;
        padding-right: 0.8rem;
    }

    .mobile-bg-light {
        background-color: var(--color-background-secondary);
    }

    .mobile-border-top-radius {
        border-top-left-radius: 12px;
        border-top-right-radius: 12px;
    }
}

/* MD */
@media (min-width: 768px) {
    .submenu-buttons {
        justify-content: end;
    }
}

@media (max-width: 768px) {
    .filters .custom-label,
    .filters .date-label {
        display: none;
    }

    .table tbody tr td {
        padding: 5px;
    }

    footer {
        border-top: none !important;
        flex-direction: column;
    }

    footer .footer-rights {
        order: 2;
    }

    footer .footer-links {
        order: 1;
    }
}

/* SM */
@media (max-width: 576px) {
    :root {
        --fontsize8xl: 70px;
        --fontsize6xl: 76px;
        --fontsize5xl: 50px;
        --fontsize4xl: 42px;
        --fontsize3xl: 36px;
        --fontsize2xl: 28px;
        --fontsizexl: 22px;
        --fontsizelg: 18px;
        --fontsizemd: 16px;
        --fontsizesm: 14px;
        --fontsizexs: 12px;

        --fontline-height9xl: 80px;
        --fontline-height7xl: 62px;
        --fontline-height6xl: 52px;
        --fontline-height5xl: 48px;
        --fontline-height4xl: 40px;
        --fontline-height3xl: 36px;
        --fontline-height2xl: 30px;
        --fontline-heightxl: 28px;
        --fontline-heightlg: 24px;
        --fontline-heightmd: 20px;
    }

    .modal-dialog {
        margin: 0px !important;
    }
}

/* END MEDIA QUERIES */
/* -------------------------------------------------------- */
/* 10. CUSTOM STYLES */

.container-custom {
    overflow: hidden;
}

.table-label {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 24px;
}

.fakturca-card {
    background-color: var(--color-background-white);
    border-radius: 4px;
    border: none;
    display: flex;
    flex-direction: column;
    word-wrap: break-word;
    padding: 1rem;
    height: 100%;
}

.fakturca-card-small-text {
    font-size: 0.75rem;
    font-weight: 500;
}

.fakturca-card-tiny-text {
    font-size: 0.625rem;
    font-weight: 500;
}

.payDate_holder {
    display: flex;
    align-items: center;
}

.postingdate_holder {
    display: flex;
    align-items: center;
}

.badge-new {
    background-color: #000000;
    display: inline-block;
    text-transform: uppercase;
    padding: 0 8px;
    gap: 8px;
    border-radius: 4px;
    font-family: Manrope, sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 24px;
    text-align: left;
    color: white;
}

.badge-new.status-green {
    /* prijavljamo */
    background: var(--color-utility-green);
}

.badge-new.status-blue {
    /* čakamo odgovor */
    background: var(--color-background-blue);
}

.badge-new.status-light-red {
    /* ne izpolnjujemo */
    background: var(--color-utility-red);
}

.badge-new.status-yellow {
    /* spremljamo */
    background: var(--color-utility-yellow);
}

.badge-new.status-black {
    background: var(--color-background-black);
}

.bill_create_company_logo {
    max-width: 240px;
    width: 100%;
}

.dropdown-menu {
    min-width: 9rem !important;
}

.dropdown-menu a.dropdown-item {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--color-text-primary);
    padding: 10px 20px;
}

.dropdown-item:focus,
.dropdown-item:hover {
    background-color: var(--color-background-pale-blue) !important;
}

.dropdown-menu a.dropdown-item span {
    margin-right: 7px;
}

.clr-picker {
    width: 320px !important;
}

.color-picker .clr-field {
    width: 100% !important;
}

.color-picker .clr-field button {
    width: 45px !important;
}

.normal-text-link {
    color: var(--bs-body-color);
    text-decoration: none;
}

.inline-list-icons {
    display: inline-block;
}

.inline-list-icons:not(:first-child) {
    margin-left: 5px;
}

.panel-footer-text {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 24px;
    color: #4b5057;
}

/* Swal */
.swal2-icon.swal2-success {
    color: var(--color-utility-green) !important;
    border-color: var(--color-utility-green) !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: var(--color-utility-green) !important;
}

.swal2-icon.swal2-success [class^="swal2-success-line"] {
    background-color: var(--color-utility-green) !important;
}

.swal2-actions button.swal2-styled {
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    padding: 14px 16px 14px 16px !important;
    border: none !important;
    border-radius: 4px !important;
}

.swal2-actions button.swal2-styled:focus {
    box-shadow: none !important;
}

.swal2-styled.swal2-confirm {
    background-color: var(--color-background-primary) !important;
}

.swal2-styled.swal2-cancel {
    background-color: var(--color-utility-red) !important;
}

.swal2-styled.swal2-confirm:active:active,
.swal2-styled.swal2-confirm:active:focus {
    box-shadow: none !important;
}

.swal2-title {
    color: var(--color-text-primary) !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
}

.swal2-html-container {
    font-size: 1rem !important;
    font-weight: 400 !important;
}

.swal2-html-container ul {
    list-style: none;
    padding-left: 0px;
}

/* Loader */
.loader {
    width: fit-content;
    font-size: 2.5rem;
    font-family: system-ui, sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    text-align: center;
    color: #0000;
    -webkit-text-stroke: 1px var(--color-background-primary);
    --g: conic-gradient(var(--color-background-primary) 0 0) no-repeat text;
    background:
        var(--g) 0,
        var(--g) 100%,
        var(--g) 0 0,
        var(--g) 0 100%;
    animation: l5 2s linear infinite;
}

.loader:before {
    content: "Prosimo počakajte...";
}

@keyframes l5 {
    0%,
    100% {
        background-size:
            0 100%,
            0 100%,
            100% 0,
            100% 0;
    }

    50% {
        background-size:
            55% 100%,
            55% 100%,
            100% 0,
            100% 0;
    }

    50.01% {
        background-size:
            0 100%,
            0 100%,
            100% 55%,
            100% 55%;
    }
}

.loader-wrapper {
    display: none;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(243, 243, 243, 0.8);
}

.loader-body {
    display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
}

.canvasjs-chart-credit {
    display: none !important;
}

.displaygraph {
    overflow: hidden;
}

footer {
    display: flex;
    font-size: 0.75rem;
    line-height: 24px;
    align-items: center;
    border-top: 1px solid var(--color-utility-border);
    justify-content: space-between;
}

footer a {
    color: var(--color-text-primary);
    text-decoration: none;
    padding-left: 20px;
}

/* File upload */
#drop-area {
    border: 2px dashed #aaa;
    padding: 20px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ecf2f5;
    border-radius: 8px;
    min-height: 2in;
    flex-direction: column;
    gap: 10px;
    cursor: pointer;
}

.drop-text {
    font-size: 1.125rem;
    color: #888;
}

.progress,
.progress-stacked {
    height: 10px !important;
}

.file_upload_progress {
    display: none;
}

/* File upload block */
.file-upload-block {
    max-width: 400px;
    margin: 20px auto;
    padding: 15px;
    border-radius: 8px;
    background-color: #f9f9f9;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.files_list {
    display: inline-block;
}

.file-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 15px;
    margin-bottom: 10px;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    text-decoration: none;
    color: var(--bs-body-color);
}

a.file-item:hover {
    background-color: #ececec;
}

.file-item .file-info {
    display: flex;
    align-items: center;
    gap: 10px;
}

.file-item .file-info .file-icon {
    font-size: 1.25rem;
    color: var(--bs-body-color);
}

.remove-file-button {
    cursor: pointer;
}

.file-actions {
    margin-left: 10px;
}

.text-to-ellipsis {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.cookie-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
    padding: 20px;
    text-align: center;
    z-index: 9999;
}

.cookie-wrapper a {
    color: var(--color-text-white);
    text-decoration: none;
}

.cookie-wrapper a:hover {
    color: var(--color-text-light-blue);
}

.dropdown-menu {
    padding: 0px !important;
}

.list-group-item {
    background-color: var(--color-background-white) !important;
}

/* Universal access */
.universal-access-content {
    position: fixed;
    bottom: 0%;
    right: 0%;
    left: 0%;
    width: 225px;
    transition: all 300ms ease;
    background-color: #00000099;
    padding: 20px;
    z-index: 1;
}

.sidebar-left.sidebar-small .universal-access-content {
    left: calc(-255px + 56px);
}

.universal-access-content.active {
    left: 225px;
}

.sidebar-left.sidebar-small .universal-access-content.active {
    left: 56px;
}

.universal-access-content ul {
    list-style: none;
    padding-left: 0px;
    margin-bottom: 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.universal-access-content ul li {
    width: 100%;
}

.universal-access-content button {
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
    font-family: "Manrope", sans-serif;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    padding: 14px 16px 14px 16px !important;
    border: none !important;
    border-radius: 4px !important;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
    width: 100%;
    cursor: pointer;
    margin-bottom: 10px;
}

.universal-access-content button:hover {
    background-color: var(--color-background-black);
    color: var(--color-text-white);
}

.universal-access-content button.active {
    background-color: var(--color-background-black);
}

.demo-padding {
    padding-top: 64px;
    padding-bottom: 64px;
}

.demo-mode {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
    padding: 20px;
    text-align: center;
    z-index: 100;
}

.demo-mode.demo-bottom {
    top: auto;
    bottom: 0;
}

.token-data {
    word-break: break-all;
}

.filter-white {
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(296deg)
        brightness(104%) contrast(101%);
}

.custom-button-radius {
    border-radius: 0px var(--bs-btn-border-radius) var(--bs-btn-border-radius)
        0px !important;
}

.link-break a {
    word-break: break-all;
}

.pdf-link {
    display: flex;
    align-items: center;
    text-decoration: none;
}

textarea.blago {
    min-height: 52px !important;
    height: 52px;
}

/* company_issuer panel */
.company_issuer .panel-footer .user_tax_error {
    background: var(--color-utility-utility-red, #bf1332);
    color: #fff;
    border-radius: 4px;
    padding: 12px;
    text-align: justify;
    display: none;
}

.m-smtp-show-password {
    margin-bottom: 25px;
}

/* END CUSTOM STYLES */
/* -------------------------------------------------------- */

/* Chat Styles */
.chat-loader {
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 8px solid #160052;
    animation:
        l20-1 0.8s infinite linear alternate,
        l20-2 1.6s infinite linear;
}

@keyframes l20-1 {
    0% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            50% 0%,
            50% 0%,
            50% 0%,
            50% 0%
        );
    }
    12.5% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 0%,
            100% 0%,
            100% 0%
        );
    }
    25% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 100%,
            100% 100%,
            100% 100%
        );
    }
    50% {
        clip-path: polygon(
            50% 50%,
            0 0,
            50% 0%,
            100% 0%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    62.5% {
        clip-path: polygon(
            50% 50%,
            100% 0,
            100% 0%,
            100% 0%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    75% {
        clip-path: polygon(
            50% 50%,
            100% 100%,
            100% 100%,
            100% 100%,
            100% 100%,
            50% 100%,
            0% 100%
        );
    }
    100% {
        clip-path: polygon(
            50% 50%,
            50% 100%,
            50% 100%,
            50% 100%,
            50% 100%,
            50% 100%,
            0% 100%
        );
    }
}
@keyframes l20-2 {
    0% {
        transform: scaleY(1) rotate(0deg);
    }
    49.99% {
        transform: scaleY(1) rotate(135deg);
    }
    50% {
        transform: scaleY(-1) rotate(0deg);
    }
    100% {
        transform: scaleY(-1) rotate(-135deg);
    }
}

.chat-main-wrapper {
    position: relative;
}

.chat-loader-wrapper {
    position: absolute;
    background: rgba(255, 255, 255, 0.459);
    backdrop-filter: blur(2px);
    inset: 0;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.message-row {
    align-items: center;
}

.chat-messages {
    overflow-y: scroll;
    flex-grow: 1;
}

.chat-box {
    height: 75vh;
    display: flex;
    flex-direction: column;
}

.message-box {
    height: 120px;
    max-height: 160px;
    resize: none;
}

.chat-wrapper {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px 0;
    font-family: "Inter", sans-serif;
}

.chat-row {
    display: flex;
    flex-direction: column;
    margin: 18px 0;
    max-width: 70%;
}

.chat-row.left {
    align-items: flex-start;
}

.chat-row.right {
    margin-left: auto;
    align-items: flex-end;
}

.chat-meta {
    font-size: 13px;
    margin-bottom: 4px;
    display: flex;
    gap: 8px;
    opacity: 0.7;
}

.chat-name {
    font-weight: 600;
}

.chat-time {
    font-weight: 400;
}

.chat-bubble {
    padding: 14px 18px;
    border-radius: 4px;
    font-size: 15px;
    line-height: 1.45;
    position: relative;
    /*box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);*/
}

.chat-bubble.other {
    background: #ffffff;
    border: 1px solid rgba(80, 80, 140, 0.12);
    color: #1e1e2d;
}

.chat-bubble.me {
    background: linear-gradient(135deg, #160052, #21387d);
    color: #ffffff;
    border: 1px solid rgba(140, 120, 255, 0.35);
    /*box-shadow: 0 0 16px rgba(110, 80, 255, 0.25);*/
}

.chat-bubble:hover {
    transform: translateY(-1px);
    transition: 0.15s ease;
}

.chat-sidebar {
    background: #fff;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.chat-sidebar-header {
    padding: 18px;
    font-size: 18px;
    font-weight: 700;
}

.chat-user-list {
    overflow-y: auto;
    padding: 5px;
    flex: 1;
}

.chat-user {
    display: flex;
    align-items: center;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
    cursor: pointer;
    border: 1px solid transparent;
    transition: 0.18s ease;
}

.chat-user:hover {
    background: rgba(100, 80, 230, 0.08);
    transform: translateX(4px);
}

.chat-user.active {
    background: linear-gradient(135deg, #160052, #160052);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.chat-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #d9d9ff;
    margin-right: 12px;
    overflow: hidden;
    color: #160052;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 400;
}

.chat-user-info {
    flex: 1;
}

.cu-name {
    font-weight: 600;
    font-size: 15px;
}

.cu-last {
    font-size: 13px;
    opacity: 0.75;
}

.cu-badge {
    background: #ff3b6b;
    color: #fff;
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 10px;
    margin-left: auto;
}

.cu-menu-badge {
    background: #ff3b6b;
    color: #fff;
    font-size: 12px;
    padding: 0px 11px;
    border-radius: 10px;
    margin-left: auto;
}

.chat-input-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #ffffff;
    border-top: 1px solid rgba(0, 0, 40, 0.08);
    border-radius: 0 0 16px 16px;
    box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.04);
}

.input-icon-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    cursor: pointer;
    background: #f6f4ff;
    border: 1px solid rgba(66, 52, 255, 0.25);
    color: #160052;
    transition: 0.2s ease;
}

.input-icon-btn:hover {
    background: #ede9ff;
}

.message-input {
    flex: 1;
    resize: none;
    min-height: 46px;
    max-height: 140px;
    padding: 12px 14px;
    background: #f7f8fc;
    border: 1px solid rgba(8, 8, 192, 0.35);
    border-radius: 14px;
    outline: none;
    font-size: 15px;
    line-height: 1.45;
    box-shadow: inset 0 0 8px rgba(0, 0, 0, 0.06);
    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.message-input:focus {
    border-color: #160052;
    box-shadow: 0 0 0 3px rgba(17, 0, 99, 0.25);
    background: #fff;
}

.send-btn {
    width: 52px;
    height: 46px;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    background: #160052;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s ease;
}

.send-btn:hover {
    background: #220080;
}

.chat-bubble-file {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    background: #eff1f7;
    border-radius: 4px;
    padding: 20px;
    cursor: pointer;
}

.chat-bubble-file-name {
    margin-left: 15px;
}

.chat-bubble-file-icon {
    font-size: 80px;
    color: #2d2d2d;
}

.chat-bubble-file-name {
    color: #2d2d2d;
}

.qr_missing_fields_warning {
    padding: 20px;
    margin: 15px 0px;
    color: var(--color-utility-red);
    background-color: rgba(255, 230, 0, 0.3);
    border: 2px solid rgba(255, 230, 0, 0.7);
    border-radius: 8px;
    /*font-weight: bold;*/
}

.modal-full {
    width: 95% !important;
    max-width: 95% !important;
}

.activity-block {
    margin-bottom: 10px;
    padding: 15px;
    background: var(--color-background-secondary);
    border-radius: 4px;
    transition: all 0.2s ease;
}

.activity-block.selected {
    background: #c6ced1;
}

.activity-timestamp {
    padding-bottom: 5px;
    padding-left: 5px;
    font-weight: 500;
}

.activity-endpoint {
    font-weight: 500;
}

.activity-status {
    padding: 1px 15px;
    margin-right: 10px;
    border-radius: 5px;
    font-weight: 600;
}

.a-stat-success {
    background: #013614;
    color: #53d28c;
}

.a-stat-error {
    background: #6b0808;
    color: #f49279;
}

.a-stat-redirect {
    background: #002d70;
    color: #96d3ff;
}

.activity-detail-table td:first-child {
    width: 180px;
    white-space: nowrap;
}

.activity-row {
    max-height: 80vh !important;
    height: 80vh !important;
    overflow: hidden;
}

.activity-detail-wrapper {
    overflow-y: auto;
    height: 100%;
}

.custom-sm-button {
    display: flex;
    flex-direction: row;
    align-items: center;
    font-family: "Manrope", sans-serif;
    font-size: 0.875rem !important;
    font-weight: 700 !important;
    padding: 10px 14px !important;
    border: 0px solid var(--color-border-primary) !important;
    border-radius: 4px !important;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
    width: auto !important;
}

.custom-sm-button.active {
    background-color: var(--color-background-primary);
    color: var(--color-text-white);
}

.btn-custom {
    --bs-btn-color: var(--color-background-white) !important;
    --bs-btn-bg: var(--color-text-primary) !important;
    --bs-btn-border-color: var(--color-text-primary) !important;
    --bs-btn-hover-color: var(--color-text-primary) !important;
    --bs-btn-hover-bg: var(--color-background-white) !important;
    --bs-btn-hover-border-color: var(--color-background-white) !important;
    --bs-btn-focus-shadow-rgb: 0, 0, 0;
    --bs-btn-active-color: var(--color-background-white) !important;
    --bs-btn-active-bg: var(--color-text-primary) !important;
    --bs-btn-active-border-color: ar(--color-text-primary) !important;
    --bs-btn-active-shadow: inset 0 0px 0px rgba(0, 0, 0, 0);
    --bs-btn-disabled-color: var(--color-background-white) !important;
    --bs-btn-disabled-bg: var(--color-text-primary) !important;
    --bs-btn-disabled-border-color: var(--color-text-primary) !important;
}

#token_activity_pagination {
    display: flex !important;
    justify-content: center !important;
}

.thunderbird-plugin-input {
    display: flex;
    width: 100%;
}

.thunderbird-plugin-input input {
    flex: 1;
    min-width: 0;
}

.thunderbird-plugin-input button {
    flex-shrink: 0;
    white-space: nowrap;
}

@media (max-width: 992px) {
    .activity-row {
        overflow-y: scroll !important;
    }

    .activity-detail-wrapper {
        overflow-y: unset !important;
        height: auto !important;
    }
}

.datepicker--time-row {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

.custom-icon.help {
    margin: 10px;
}
